please download soundrts-1.4.1.7

1 view
Skip to first unread message

修君

unread,
Jul 29, 2025, 1:42:55 AMJul 29
to soundRTSChat
Please download again.
I fixed a bug that caused synchronization issues in multiplayer mode, which should improve things somewhat.

1.4.1.7
1. Rewrote the skill module and implemented a universal skill definition system.
You can now define and use buffs directly through skills. For example:
def skill_name
class skill
mana_cost 100
effect buffs buff_name   # or effect debuffs buff_name
effect_target self
If you write it this way, casting the skill will directly apply the buff to yourself.
effect_target ask
effect_range 12
If you write it this way, you need to use Tab to select a target and then press Enter to use the skill, and the buff will be applied to the selected target.
2. The buff module has been enhanced with a new buff_radius parameter, allowing you to define aura-type buffs.
Additionally, buffs can now affect multiple attributes:
Multi-Attribute Buff System Documentation
Overview
New Features
1. Multi-Attribute Support
The stat parameter can now accept multiple attributes.
The v, dv, and percentage parameters can set different values for each attribute.
2. Smart Value Matching
If there are more attributes than values, the last value is reused for the remaining attributes.
If there is only one value, it applies to all attributes.
If there are more values than attributes, the extra values are ignored.
3:
The original single-attribute buff definition remains unchanged and fully compatible.
No changes are necessary for existing buff definitions.
Usage
Definition format in rules files:
Basic Syntax
BuffName 1
    stat attribute1 attribute2 attribute3
    v value1 value2 value3
    duration duration_time
    temporary 1
Example 1: Healing Enhancement Buff (direct value assignment) ⭐
def HealEnhancementBuff
class buff
    stat heal_level heal_cd heal_radius
    v 1 1500 6
    duration 300
    temporary 1
Effect:
heal_level increases healing by 1 point
heal_cd sets a cooldown of 1.5 seconds (1500 ms)
heal_radius increases healing range by 6
Example 2: Using the same value for all
def AllRoundBuff
class buff
    stat hp_max mana_max speed
    v 100
    duration 600
    temporary 1
Effect: All three attributes are increased by 100.
Example 3: Mixing percentage and fixed values
def MixedBuff
class buff
    stat hp mana
    percentage 50 0
    v 0 100
    duration 300
    temporary 1
Effect:
hp is increased by 50% of current value
mana is increased by a fixed 100 points
Example 4: Continuous effect
def RegenerationBuff
class buff
    stat hp mana
    dv 10 5
    dt 1
    duration 600
    temporary 0
Effect:
Restores 10 hp per second
Restores 5 mana per second
Example 5: Backward compatibility (original format)
def OldStyleBuff
class buff
    stat hp
    v 200
    duration 300
    temporary 1
Effect: Increases hp by 200 (the original functionality is unchanged)
Rewrote the effect module, breaking down the harm_level functionality into harm_level, harm_cd, harm_ready, harm_range, and harm_radius. Effects can now also carry buffs/debuffs. For example:
def exorcism
class effect
harm_level 2
harm_cd 7.5
harm_radius 6
harm_target_type undead
debuffs b_slow
You can then define a skill to summon this effect: it will attack undead units within a radius of 6 and apply a debuff.
Healing has also been split into heal_level, heal_cd, heal_ready, heal_range, heal_radius, and heal_target_type.
Additionally, hp_regen and mana_regen now support ready and cooldown states, e.g., hp_regen_cd, mana_regen_ready.
Although mod development now requires more effort, the flexibility and extensibility have greatly increased.

game:


code:

Reply all
Reply to author
Forward
0 new messages