Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
4a3e80a
Implementation of Special Buff Fields (Buff Level, Positive vs Negati…
Glasislundr Dec 31, 2024
47bbaa7
Quick Refactor of And and Or conditions to use lists
Glasislundr Feb 7, 2025
617221e
Quick refactor to combine ABCondition and ABBooleanCallback
Glasislundr Feb 11, 2025
a638f77
Refactor of damage methods to pass in flags
Glasislundr Feb 13, 2025
fc91b08
Refactored Abilities to split isMagic/isPhysical and refactored attac…
Glasislundr Feb 19, 2025
fb49b6c
Add flags to buffs for Hero and Aura buffs. Prepare for implementing …
Glasislundr Feb 19, 2025
bec857a
Merge branch 'main' of https://github.com/Retera/WarsmashModEngine in…
Glasislundr Feb 20, 2025
d950d6f
Followup Merge Fixes
Glasislundr Feb 21, 2025
c4feb8f
Update Invisibility to allow non-transparent invis
Glasislundr Feb 21, 2025
1195c8b
Remove armor calculation for buildings under construction
Glasislundr Feb 21, 2025
5742933
Refactor Ethereal Damage Table to load all values
Glasislundr Feb 24, 2025
e8d6f7c
Ability Builder Inheritance!
Glasislundr Feb 25, 2025
7c20bb6
Major Transformation Improvements!
Glasislundr Feb 28, 2025
45ca30d
Internal Improvements
Glasislundr Mar 4, 2025
c2ee943
Adding simple buff/debuff abilities
Glasislundr Mar 7, 2025
d446cc4
!Fixed issue that broke unit creation!
Glasislundr Mar 7, 2025
2213b8d
Merge pull request #14 from Glasislundr/abilitybuilder
Glasislundr Mar 8, 2025
8cd35aa
Attack Modification Abilities!
Glasislundr Apr 8, 2025
bd8889b
Merge pull request #15 from Glasislundr/abilitybuilder
Glasislundr Apr 8, 2025
59f30e0
Cast Time Overhaul!
Glasislundr Apr 16, 2025
92d5d94
Quick fix for TextTags, getting the velocity to properly match War3
Glasislundr Apr 18, 2025
3844d5d
Added Terrain Deformations! UberSplat Creation! And improvements to A…
Glasislundr May 14, 2025
e88ba82
Refactor of AB buffs to simplify state and stat buffs. Another fix to…
Glasislundr May 14, 2025
d7c4608
Addition of War Stomp and Thunder Clap implementations with terrain d…
Glasislundr May 16, 2025
d6f6c22
Partial commit of working changes
Glasislundr Jun 19, 2025
0e1c943
Test items to remove later
Glasislundr Jun 19, 2025
cbfdc39
Minor gradle change to allow gradle builds from inside Eclipse
Glasislundr Jun 20, 2025
b2c504f
Revert unneeded change
Glasislundr Jun 20, 2025
5047415
Summons, Chain Spells, and Polymorph!
Glasislundr Jul 7, 2025
4376710
Merge branch 'abilitybuilder' of github.com:Glasislundr/WarsmashModEn…
Glasislundr Jul 7, 2025
d7510fe
Remove testing functions
Glasislundr Jul 8, 2025
0c5a691
Merge pull request #16 from Glasislundr/abilitybuilder
Glasislundr Jul 8, 2025
570cfc3
Quick update to make RandomItem work like War3 (added targeting restr…
Glasislundr Jul 13, 2025
307dbb5
WIP Commit of Damage Refactor.
Glasislundr Nov 28, 2025
71d57ac
Conclude Damage Refactor
Glasislundr Nov 30, 2025
6ebf03e
Added missing ability file update
Glasislundr Dec 1, 2025
e0f76c7
Major AB Refactor: Part 1 - Stores
Glasislundr Dec 10, 2025
1878bfc
Major AB Refactor: Part 2 - CSimulation
Glasislundr Dec 12, 2025
6547f5e
Major AB Refactor: Part 3 - Behavior Naming
Glasislundr Dec 13, 2025
ece9a22
Minor missed items and moved Visitors
Glasislundr Dec 13, 2025
795a445
Major AB Refactor: Part 4 - Class Prefix
Glasislundr Dec 13, 2025
d6d123c
Major AB Refactor: Part 5 - ABBooleanCallback and ABCondition Unifica…
Glasislundr Dec 13, 2025
c40e94b
Minor Refactor: Moved ABLocalStoreKeys
Glasislundr Dec 13, 2025
08c935f
Major AB Refactor: Part 6 - AB is now AdjustableBehaviors
Glasislundr Dec 13, 2025
8fde9c6
Major AB Refactor: Part 7 - Origin Info in the LocalStore
Glasislundr Dec 13, 2025
dbeb546
Missed file from last push
Glasislundr Dec 13, 2025
19441dc
Major AB Refactor: Part 8 - CastId
Glasislundr Dec 17, 2025
eb53238
Minor fix to DamageCalculation where misses were not accounted for in…
Glasislundr Dec 17, 2025
d212d99
Major AB Refactor: Part 9 - LocalStore Gets
Glasislundr Dec 17, 2025
b581bb2
Merge branch 'main' of https://github.com/Retera/WarsmashModEngine in…
Glasislundr Dec 17, 2025
ecff558
Merge pull request #17 from Glasislundr/adjustablebehaviors
Glasislundr Dec 17, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1,144 changes: 1,144 additions & 0 deletions core/assets/abilityBehaviors/AttackReplacementActives.json

Large diffs are not rendered by default.

1,659 changes: 1,659 additions & 0 deletions core/assets/abilityBehaviors/AttackReplacementPassivesItems.json

Large diffs are not rendered by default.

590 changes: 590 additions & 0 deletions core/assets/abilityBehaviors/AttackReplacementPassivesNonItem.json

Large diffs are not rendered by default.

2,227 changes: 2,227 additions & 0 deletions core/assets/abilityBehaviors/AttackReplacementPassivesNonItemLowPriority.json

Large diffs are not rendered by default.

Large diffs are not rendered by default.

315 changes: 315 additions & 0 deletions core/assets/abilityBehaviors/AttackReplacementPassivesPostDamage.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,315 @@
{
"abilityList": [{
"ids": [{"id":"Awar"}],
"type": "PASSIVE",
"onAddDisabledAbility": [{
"type": "createAttackPostDamageListener",
"priority": {
"type": "rawInteger",
"value": 0
},
"actions": [{
"type": "createSoundEffectOnUnit",
"unit": {
"type": "getCastingUnit"
},
"id": {
"type": "getAlias"
}
},{
"type": "damageBurst",
"source": {
"type": "getAttackingUnit"
},
"target": {
"type": "getUnitLocation",
"unit": {
"type": "getAttackingUnit"
}
},
"validTarget": {
"type": "isUnitValidTarget",
"target": {
"type": "getEnumUnit"
}
},
"damageType": {
"type": "getDamageTypeFromString",
"id": {
"type": "rawString",
"value": "SONIC"
}
},
"damage": {
"type": "getAbilityDataAsFloat",
"dataField": "B"
},
"fullDamageRadius": {
"type": "getAbilityDataAsFloat",
"dataField": "C"
},
"partialDamage": {
"type": "f/",
"value1": {
"type": "getAbilityDataAsFloat",
"dataField": "B"
},
"value2": {
"type": "rawFloat",
"value": 2.0
}
},
"partialDamageRadius": {
"type": "getAbilityDataAsFloat",
"dataField": "D"
},
"extraActions": [{
"type": "createTemporarySpellEffectOnUnit",
"target": {
"type": "getEnumUnit"
},
"id": {
"type": "getAlias"
},
"effectType": "SPECIAL"
}]
}]
},{
"type": "createAttackModifier",
"priority": {
"type": "rawInteger",
"value": 1
},
"preLaunchCondition": {
"type": "isUnitValidTarget",
"target": {
"type": "getAttackedUnit"
}
},
"preLaunchModification": [{
"type": "if",
"condition": {
"type": "f<",
"value1": {
"type": "randomBoundedFloat",
"bound": {
"type": "rawFloat",
"value": 100
}
},
"value2": {
"type": "getAbilityDataAsFloat",
"dataField": "A"
}
},
"thenActions": [{
"type": "attackModifierAddAnimationTag",
"tag": {
"type": "rawString",
"value": "SLAM"
}
},{
"type": "storeValueLocally",
"key": {
"type": "rawString",
"value": "pulving"
},
"valueToStore": {
"type": "rawBoolean",
"value": "true"
}
}],
"elseActions": [{
"type": "storeValueLocally",
"key": {
"type": "rawString",
"value": "pulving"
},
"valueToStore": {
"type": "rawBoolean",
"value": "false"
}
}]
}],
"condition": {
"type": "isUnitValidTarget",
"target": {
"type": "getAttackedUnit"
}
},
"modification": [{
"type": "if",
"condition": {
"type": "getStoredBooleanByKey",
"key": {
"type": "rawString",
"value": "pulving"
}
},
"thenActions": [{
"type": "attackModifierAddPostDamageListener",
"listener": {
"type": "getLastCreatedAttackPostDamageListener"
}
}]
}]
}],
"onAddAbility": [{
"type": "addAttackModifier",
"unit": {
"type": "getCastingUnit"
},
"modifier": {
"type": "getLastCreatedAttackModifier"
}
}],
"onRemoveAbility": [{
"type": "removeAttackModifier",
"unit": {
"type": "getCastingUnit"
},
"modifier": {
"type": "getLastCreatedAttackModifier"
}
}]
},{
"ids": [{"id":"ANca"}],
"type": "PASSIVE",
"onAddDisabledAbility": [{
"type": "createAttackPostDamageListener",
"priority": {
"type": "rawInteger",
"value": 0
},
"actions": [{
"type": "damageArea",
"source": {
"type": "getAttackingUnit"
},
"target": {
"type": "createLocationFromOffset",
"origin": {
"type": "getUnitLocation",
"unit": {
"type": "getAttackingUnit"
}
},
"dist": {
"type": "getAbilityArea"
},
"angle": {
"type": "getUnitFacing",
"unit": {
"type": "getAttackingUnit"
}
},
"angleInDegrees": {
"type": "rawBoolean",
"value": "true"
}
},
"validTarget": {
"type": "and",
"conditions": [{
"type": "isUnitValidTarget",
"target": {
"type": "getEnumUnit"
}
},{
"type": "not",
"condition": {
"type": "isUnitEqual",
"unit1": {
"type": "getAttackedUnit"
},
"unit2": {
"type": "getEnumUnit"
}
}
}]
},
"damageType": {
"type": "getDamageTypeFromString",
"id": {
"type": "rawString",
"value": "ENHANCED"
}
},
"damage": {
"type": "f*",
"value1": {
"type": "getFinalTotalDamageDealt"
},
"value2": {
"type": "getAbilityDataAsFloat",
"dataField": "A"
}
},
"radius": {
"type": "getAbilityArea"
},
"extraActions": [{
"type": "createTemporarySpellEffectOnUnit",
"target": {
"type": "getEnumUnit"
},
"id": {
"type": "getAlias"
},
"effectType": "SPECIAL"
}]
}]
},{
"type": "createAttackModifier",
"priority": {
"type": "rawInteger",
"value": 1
},
"preLaunchCondition": {
"type": "isUnitValidTarget",
"target": {
"type": "getAttackedUnit"
}
},
"preLaunchModification": [{
"type": "attackModifierAddAnimationTag",
"tag": {
"type": "rawString",
"value": "SLAM"
}
}],
"condition": {
"type": "isUnitValidTarget",
"target": {
"type": "getAttackedUnit"
}
},
"modification": [{
"type": "attackModifierAddPostDamageListener",
"listener": {
"type": "getLastCreatedAttackPostDamageListener"
}
},{
"type": "attackModifierApplyArt"
}]
}],
"onAddAbility": [{
"type": "addAttackModifier",
"unit": {
"type": "getCastingUnit"
},
"modifier": {
"type": "getLastCreatedAttackModifier"
}
}],
"onRemoveAbility": [{
"type": "removeAttackModifier",
"unit": {
"type": "getCastingUnit"
},
"modifier": {
"type": "getLastCreatedAttackModifier"
}
}]
}]
}
Loading