[AceHart] Save/Load abilities

Lmfaocj

Active Member
Reaction score
1
The AceHart Load abilities won't load for some reason... I think I know what it is but don't know how to fix it.

Trigger:
  • SaveLoad Load All
    • Events
      • Player - Player 1 (Red) types a chat message containing -load as A substring
      • Player - Player 2 (Blue) types a chat message containing -load as A substring
      • Player - Player 3 (Teal) types a chat message containing -load as A substring
      • Player - Player 4 (Purple) types a chat message containing -load as A substring
    • Conditions
      • (Substring((Entered chat string), 1, 6)) Equal to (==) (Matched chat string)
      • (Length of (Entered chat string)) Greater than (>) 6
    • Actions
      • -------- Try to decode what was typed --------
      • Set Code = (Substring((Entered chat string), 7, (Length of (Entered chat string))))
      • Custom script: set udg_Validate = SaveLoad_Decode( udg_Code )
        • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • Validate Equal to (==) False
          • Then - Actions
            • -------- Invalid code --------
            • Game - Display to (Player group((Triggering player))) the text: There's some error ...
            • Skip remaining actions
          • Else - Actions
      • -------- It worked, let's do something with it --------
      • Set AATempInteger = SaveCount
      • Set SaveCount = 1
      • For each (Integer SaveCount) from (SaveCount + 1) to AATempInteger, do (Actions)
        • Loop - Actions
          • For each (Integer A) from 1 to Save[(SaveCount + 1)], do (Actions)
            • Loop - Actions
              • Custom script: call SelectHeroSkill( GetLastCreatedUnit(), udg_SaveLoad_Abilities[ udg_Save[ udg_SaveCount ] ] )
          • Set SaveCount = (SaveCount + 1)


It something to do with the
Trigger:
  • Set AATempInteger = SaveCount
If i am not mistaken.

This is the full code
Trigger:
  • SaveLoad Load All
    • Events
      • Player - Player 1 (Red) types a chat message containing -load as A substring
      • Player - Player 2 (Blue) types a chat message containing -load as A substring
      • Player - Player 3 (Teal) types a chat message containing -load as A substring
      • Player - Player 4 (Purple) types a chat message containing -load as A substring
    • Conditions
      • (Substring((Entered chat string), 1, 6)) Equal to (==) (Matched chat string)
      • (Length of (Entered chat string)) Greater than (>) 6
    • Actions
      • -------- Try to decode what was typed --------
      • Set Code = (Substring((Entered chat string), 7, (Length of (Entered chat string))))
      • Custom script: set udg_Validate = SaveLoad_Decode( udg_Code )
        • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
          • If - Conditions
            • Validate Equal to (==) False
          • Then - Actions
            • -------- Invalid code --------
            • Game - Display to (Player group((Triggering player))) the text: There's some error ...
            • Skip remaining actions
          • Else - Actions
      • -------- It worked, let's do something with it --------
      • Unit Group - Pick every unit in (Units owned by (Triggering player)) and do (Actions)
        • Loop - Actions
          • Unit - Remove (Picked unit) from the game
      • Set AATempInteger = SaveCount
      • Set SaveCount = 1
      • -------- Restore Gold --------
      • Player - Set (Triggering player) Current gold to Save[SaveCount]
      • -------- Restore Lumber --------
      • Set SaveCount = (SaveCount + 1)
      • Player - Set (Triggering player) Current lumber to Save[SaveCount]
      • -------- Rebirths --------
      • Set SaveCount = (SaveCount + 1)
      • Set RebirthCount[(Player number of (Triggering player))] = Save[SaveCount]
      • -------- Restore Hero --------
      • Set SaveCount = (SaveCount + 1)
      • Custom script: set udg_TempUnitType = SaveLoad_Integer2Unit(udg_Save[udg_SaveCount])
      • Unit - Create 1 TempUnitType for (Triggering player) at ((Triggering player) start location) facing Default building facing (270.0) degrees
      • Set Yourunit[(Player number of (Triggering player))] = (Last created unit)
      • -------- Set Experience --------
      • Set SaveCount = (SaveCount + 1)
      • Hero - Set Yourunit[(Player number of (Triggering player))] experience to Save[SaveCount], Hide level-up graphics
      • -------- Move to saved position --------
      • Set SaveCount = (SaveCount + 1)
      • Unit - Move Yourunit[(Player number of (Triggering player))] instantly to (Point((Real(Save[SaveCount])), (Real(Save[(SaveCount + 1)]))))
      • Set SaveCount = (SaveCount + 1)
      • -------- Recreate all items --------
      • Set SaveCount = (SaveCount + 1)
        • Do Multiple ActionsFor each (Integer A) from 1 to Save[SaveCount], do (Actions)
          • Loop - Actions
            • -------- The actual item --------
            • Set SaveCount = (SaveCount + 1)
            • Custom script: set udg_TempItemType = SaveLoad_Integer2Item(udg_Save[udg_SaveCount])
            • Hero - Create TempItemType and give it to Yourunit[(Player number of (Triggering player))]
            • -------- Number of charges --------
            • Set SaveCount = (SaveCount + 1)
            • Item - Set charges remaining in (Last created item) to Save[SaveCount]
        • Do Multiple ActionsFor each (Integer SaveCount) from (SaveCount + 1) to AATempInteger, do (Actions)
          • Loop - Actions
            • Do Multiple ActionsFor each (Integer A) from 1 to Save[(SaveCount + 1)], do (Actions)
              • Loop - Actions
                • Custom script: call SelectHeroSkill( GetLastCreatedUnit(), udg_SaveLoad_Abilities[ udg_Save[ udg_SaveCount ] ] )
            • Set SaveCount = (SaveCount + 1)
      • Hero - Modify unspent skill points of (Triggering unit): Set to 0 points
      • If ((Noob Start <gen> is on) Equal to (==) True) then do (Trigger - Run Noob Start <gen> (checking conditions)) else do (Do nothing)
        • Do ActionFor each (Integer A) from 1 to SaveLoad_Heroes_LastIndex, do (Player - Make Heros[(Integer A)] Available for training/construction by (Triggering player))
 

Tyman2007

Ya Rly >.
Reaction score
74
Is it just me or are spoiler tags broken.

uuuuhggg.. S/L systems..

Have you tried debugging it? As in checking if it fires at all?

if it doesn't the problem lies in your conditions.

* (Substring((Entered chat string), 1, 6)) Equal to (==) "-load" maybe?
* (Length of (Entered chat string)) Greater than (>) 6
 

Lmfaocj

Active Member
Reaction score
1
Did you store the abilities in Variables?

Trigger:
  • Game int
    • Events
      • Map initialization
    • Conditions
    • Actions
      • -------- List of Heroes --------
      • Set SaveLoad_Heroes[1] = Mountain King
      • Set SaveLoad_Heroes[2] = Blademaster
      • Set SaveLoad_Heroes[3] = Lich
      • Set SaveLoad_Heroes[4] = Demon Hunter
      • Set SaveLoad_Heroes[4] = Footman
      • Set SaveLoad_Heroes[4] = Archer
      • -------- Number of Heroes --------
      • Set SaveLoad_Heroes_LastIndex = 6
      • -------- List of Items --------
      • Set SaveLoad_Items[1] = |cff7fffd4Mask of Death|r
      • Set SaveLoad_Items[2] = |cff7fffd4Crown of Kings|r +|cffffcc005|r
      • Set SaveLoad_Items[3] = |cff7fffd4Claws of Attack|r +|cffffcc0015|r
      • Set SaveLoad_Items[4] = |cff808080Claws of Attack |r+|cffffcc001|r
      • Set SaveLoad_Items[5] = |cff808080Claws of Attack|r +|cffffcc006|r
      • Set SaveLoad_Items[6] = Claws of Attack +|cffffcc009|r
      • Set SaveLoad_Items[7] = Claws of Attack +|cffffcc0012|r
      • Set SaveLoad_Items[8] = |cff3399ffRing of Regeneration|r - [|cffffcc00Level 1|r]
      • Set SaveLoad_Items[9] = |cff3399ffRing of Regeneration|r - [|cffffcc00Level 2|r]
      • Set SaveLoad_Items[10] = |cff3399ffRing of Regeneration|r - [|cffffcc00Level 3|r]
      • Set SaveLoad_Items[11] = |cff3399ffRing of Regeneration|r - [|cffffcc00Level 4|r]
      • Set SaveLoad_Items[12] = |cff3399ffRing of Regeneration|r - [|cffffcc00Level 5|r]
      • Set SaveLoad_Items[13] = |cff3399ffRing of Regeneration|r - [|cffffcc00Level 6|r]
      • Set SaveLoad_Items[14] = |cff3399ffRing of Regeneration|r - [|cffffcc00Level 2|r]
      • Set SaveLoad_Items[15] = |cff3399ffRing of Regeneration |r- [|cffffcc00Level 3|r]
      • Set SaveLoad_Items[16] = |cff3399ffRing of Regeneration |r- [|cffffcc00Level 4|r]
      • Set SaveLoad_Items[17] = |cff3399ffRing of Regeneration |r- [|cffffcc00Level 5|r]
      • Set SaveLoad_Items[18] = |cff3399ffRing of Regeneration |r- [|cffffcc00Level 6|r]
      • Set SaveLoad_Items[19] = |cff0066ccClaws of Death|r
      • Set SaveLoad_Items[20] = |cff0066ccClaws of Kings|r
      • Set SaveLoad_Items[21] = Thunderbloom Bulb
      • -------- Number of Items --------
      • Set SaveLoad_Items_LastIndex = 21
      • -------- List of Abilities --------
      • Set SaveLoad_Abilities[1] = Storm Bolt
      • Set SaveLoad_Abilities[2] = Thunder Clap
      • Set SaveLoad_Abilities[3] = Bash
      • Set SaveLoad_Abilities[4] = Avatar
      • Set SaveLoad_Abilities[5] = Endurance Aura
      • Set SaveLoad_Abilities[6] = Mirror Image
      • Set SaveLoad_Abilities[7] = Critical Strike
      • Set SaveLoad_Abilities[8] = Bladestorm
      • Set SaveLoad_Abilities[9] = Blink
      • Set SaveLoad_Abilities[10] = Immolation
      • Set SaveLoad_Abilities[11] = Evasion
      • Set SaveLoad_Abilities[12] = Metamorphosis
      • Set SaveLoad_Abilities[13] = Frost Nova
      • Set SaveLoad_Abilities[14] = Frost Armor (Autocast)
      • Set SaveLoad_Abilities[15] = Cold Wave
      • Set SaveLoad_Abilities[16] = Brilliance Aura
      • Set SaveLoad_Abilities[17] = Barrage
      • Set SaveLoad_Abilities[18] = Defend
      • Set SaveLoad_Abilities[19] = Devotion Aura
      • Set SaveLoad_Abilities[20] = Attribute Bonus (STNoob)
      • Set SaveLoad_Abilities[21] = First aid (Noob)
      • Set SaveLoad_Abilities[22] = Searing Arrows (Noob)
      • Set SaveLoad_Abilities[23] = Trueshot Aura (Noob)
      • Set SaveLoad_Abilities[24] = Attribute Bonus (AGNoob)
      • -------- Number of Abilities --------
      • Set SaveLoad_Abilities_LastIndex = 24
      • -------- These three lines may be changed if needed --------
      • Set SaveLoad_Alphabet = ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789
      • Set SaveLoad_CaseSensitive = False
      • Set SaveLoad_UsePlayername = True
      • -------- Required: false --------
      • Set SaveLoad_Initialized = False
      • -------- Leave as is. Used to autocreate variables when copy & pasting to a new map --------
      • Set Code = AceHart
      • Set Save[1] = 0
      • Set SaveCount = 1
      • Set Validate = False
      • Set SaveLoad_Compress[1] = 0
      • Set SaveLoad_Uncompress[1] = 0
      • -------- Player colors --------
      • Set Color[1] = |CFFFF0303
      • Set Color[2] = |CFF0042FF
      • Set Color[3] = |CFF1CB619
      • Set Color[4] = |CFF540081
      • Set Color[5] = |CFFFFFF01
      • Set Color[6] = |CFFFE8A0E
      • Set Color[7] = |CFF20C000
      • Set Color[8] = |CFFE55BB0
      • Set Color[9] = |CFF959697
      • Set Color[10] = |CFF7EBFF1
      • Set Color[11] = |CFF106246
      • Set Color[12] = |CFF4E2A04
      • Set Color[13] = |cff000000

Trigger:
  • SaveLoad Save All
    • Events
    • Conditions
    • Actions
      • -------- Prepare the save array with this player's Hero --------
      • Set SaveCount = 0
      • -------- Player's Gold --------
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = ((Triggering player) Current gold)
      • -------- Player's Lumber --------
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = ((Triggering player) Current lumber)
      • -------- Rebirths --------
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = RebirthCount[(Player number of (Triggering player))]
      • -------- Save the Hero --------
      • Set SaveCount = (SaveCount + 1)
      • Set TempUnit = Yourunit[(Player number of (Triggering player))]
      • Custom script: set udg_Save[udg_SaveCount] = SaveLoad_Unit2Integer( udg_TempUnit )
      • -------- Hero Experience --------
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = (Hero experience of Yourunit[(Player number of (Triggering player))])
      • -------- Hero Position X --------
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = (Integer((X of RespawnPoint[(Player number of (Triggering player))])))
      • -------- Hero Position Y --------
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = (Integer((Y of RespawnPoint[(Player number of (Triggering player))])))
      • -------- How many items does he carry --------
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = (Number of items carried by Yourunit[(Player number of (Triggering player))])
      • -------- Add all items --------
        • Do Multiple ActionsFor each (Integer A) from 1 to 6, do (Actions)
          • Loop - Actions
            • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
              • If - Conditions
                • ((Item carried by Yourunit[(Player number of (Triggering player))] in slot (Integer A)) is owned) Equal to (==) True
              • Then - Actions
                • -------- The actual item --------
                • Set SaveCount = (SaveCount + 1)
                • Set TempItem = (Item carried by Yourunit[(Player number of (Triggering player))] in slot (Integer A))
                • Custom script: set udg_Save[udg_SaveCount] = SaveLoad_Item2Integer( udg_TempItem )
                • -------- The number of charges it has --------
                • Set SaveCount = (SaveCount + 1)
                • Set Save[SaveCount] = (Charges remaining in (Item carried by Yourunit[(Player number of (Triggering player))] in slot (Integer A)))
              • Else - Actions
      • -------- Add all abillitys --------
        • Do Multiple ActionsFor each (Integer A) from 1 to SaveLoad_Abilities_LastIndex, do (Actions)
          • Loop - Actions
            • Multiple FunctionsIf (All Conditions are True) then do (Then Actions) else do (Else Actions)
              • If - Conditions
                • (Level of SaveLoad_Abilities[(Integer A)] for Yourunit[(Player number of (Triggering player))]) Greater than (>) 0
              • Then - Actions
                • -------- The actual ability --------
                • Set SaveCount = (SaveCount + 1)
                • Set Save[SaveCount] = (Integer A)
                • -------- Its level --------
                • Set SaveCount = (SaveCount + 1)
                • Set Save[SaveCount] = (Level of SaveLoad_Abilities[(Integer A)] for Yourunit[(Player number of (Triggering player))])
              • Else - Actions
      • -------- Turn values into code --------
      • Custom script: set udg_Code = SaveLoad_Encode()
      • -------- Show code to player --------
      • Cinematic - Clear the screen of text messages for (Player group((Triggering player)))
      • Quest - Display to (Player group((Triggering player))) the Secret message: ((Player + Color[(Player number of (Triggering player))]) + ((String((Player number of (Triggering player)))) + (|r- + (Color[(Player number of (Triggering player))] + ((Name of (Triggering player)) + (|r: Your hero + (Color[(Player number of (Triggering p
      • Game - Display to (Player group((Triggering player))) for 120.00 seconds the text: (Your code: + Code)
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top