How do i make save/load? I'm not sure

gwcadu942

New Member
Reaction score
0
My save is error :'(

Trigger:
  • Multibioard Kills Creeps
    • Events
      • Unit - A unit owned by Player 11 (Dark Green) Dies
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 1 (Red)
        • Then - Actions
          • Set Multibioard_KillsCreeps[1] = (Multibioard_KillsCreeps[1] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 2 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 2 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[1])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 2 (Blue)
        • Then - Actions
          • Set Multibioard_KillsCreeps[2] = (Multibioard_KillsCreeps[2] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 3 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 3 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[2])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 3 (Teal)
        • Then - Actions
          • Set Multibioard_KillsCreeps[3] = (Multibioard_KillsCreeps[3] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 4 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 4 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[3])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 4 (Purple)
        • Then - Actions
          • Set Multibioard_KillsCreeps[4] = (Multibioard_KillsCreeps[4] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 5 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 5 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[4])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 5 (Yellow)
        • Then - Actions
          • Set Multibioard_KillsCreeps[5] = (Multibioard_KillsCreeps[5] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 6 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 6 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[5])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 6 (Orange)
        • Then - Actions
          • Set Multibioard_KillsCreeps[6] = (Multibioard_KillsCreeps[5] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 7 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 7 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[6])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 7 (Green)
        • Then - Actions
          • Set Multibioard_KillsCreeps[7] = (Multibioard_KillsCreeps[7] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 8 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 8 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[7])) + |r))
        • Else - Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Owner of (Killing unit)) Equal to Player 8 (Pink)
        • Then - Actions
          • Set Multibioard_KillsCreeps[8] = (Multibioard_KillsCreeps[8] + 1)
          • Multiboard - Set the width for (Last created multiboard) item in column 4, row 9 to 8.00% of the total screen width
          • Multiboard - Set the text for (Last created multiboard) item in column 4, row 9 to (|cffFFD600 + ((String(Multibioard_KillsCreeps[8])) + |r))
        • Else - Actions


Trigger:
  • SaveLoad Save All
    • Events
      • Player - Player 1 (Red) types a chat message containing -save as An exact match
      • Player - Player 2 (Blue) types a chat message containing -save as An exact match
      • Player - Player 3 (Teal) types a chat message containing -save as An exact match
      • Player - Player 4 (Purple) types a chat message containing -save as An exact match
    • 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)
      • -------- Take all Heroes --------
      • Set UnitGroup = (Units owned by (Triggering player) matching (((Matching unit) is A Hero) Equal to True))
      • Set SaveCount = (SaveCount + 1)
      • Set Save[SaveCount] = (Number of units in UnitGroup)
      • Unit Group - Pick every unit in UnitGroup and do (Actions)
        • Loop - Actions
          • Set SaveCount = (SaveCount + 1)
          • Set Multibioard_KillsCreeps[1] = Save[SaveCount]
          • -------- Save the Hero --------
          • Set SaveCount = (SaveCount + 1)
          • Set TempUnit = (Picked unit)
          • Custom script: set udg_Save[udg_SaveCount] = SaveLoad_Unit2Integer( udg_TempUnit )
          • -------- Hero Experience --------
          • Set SaveCount = (SaveCount + 1)
          • Set Save[SaveCount] = (Hero experience of (Picked unit))
          • -------- Hero Position X --------
          • Set SaveCount = (SaveCount + 1)
          • Set Save[SaveCount] = (Integer((X of (Position of (Picked unit)))))
          • -------- Hero Position Y --------
          • Set SaveCount = (SaveCount + 1)
          • Set Save[SaveCount] = (Integer((Y of (Position of (Picked unit)))))
          • -------- How many items does he carry --------
          • Set SaveCount = (SaveCount + 1)
          • Set Save[SaveCount] = (Number of items carried by (Picked unit))
          • -------- Add all items --------
          • For each (Integer A) from 1 to 6, do (Actions)
            • Loop - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • ((Item carried by (Picked unit) in slot (Integer A)) is owned) Equal to True
                • Then - Actions
                  • -------- The actual item --------
                  • Set SaveCount = (SaveCount + 1)
                  • Set TempItem = (Item carried by (Picked unit) 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 (Picked unit) in slot (Integer A)))
                • Else - Actions
      • -------- Turn values into code --------
      • Custom script: set udg_Code = SaveLoad_Encode()
      • -------- Show code to player --------
      • Quest - Display to (Player group((Triggering player))) the Secret message: Your code is:
      • Game - Display to (Player group((Triggering player))) for 3600.00 seconds the text: 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 )
      • 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 --------
      • Unit Group - Pick every unit in (Units owned by (Triggering player) matching (((Matching unit) is A Hero) Equal to True)) and do (Actions)
        • Loop - Actions
          • Unit - Remove (Picked unit) from the game
      • Set SaveCount = 1
      • -------- Restore Gold --------
      • Player - Set (Triggering player) Current gold to Save[SaveCount]
      • -------- For "number of Heroes", do --------
      • Set SaveCount = (SaveCount + 1)
      • For each (Integer B) from 1 to Save[SaveCount], do (Actions)
        • Loop - Actions
          • Set SaveCount = (SaveCount + 1)
          • Set Save[SaveCount] = (Multibioard_KillsCreeps[(Player number of (Triggering player))] + 1)
          • -------- 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 degrees
          • -------- Set Experience --------
          • Set SaveCount = (SaveCount + 1)
          • Hero - Set (Last created unit) experience to Save[SaveCount], Hide level-up graphics
          • -------- Move to saved position --------
          • Set SaveCount = (SaveCount + 1)
          • Unit - Move (Last created unit) instantly to (Point((Real(Save[SaveCount])), (Real(Save[(SaveCount + 1)]))))
          • Set SaveCount = (SaveCount + 1)
          • -------- Recreate all items --------
          • Set SaveCount = (SaveCount + 1)
          • For 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 (Last created unit)
              • -------- Number of charges --------
              • Set SaveCount = (SaveCount + 1)
              • Item - Set charges remaining in (Last created item) to Save[SaveCount]
 

millz-

New Member
Reaction score
25
If am not wrong, it's an offense to double-post within 24 hours. But anyway, what's the first trigger for?
 

Joccaren

You can change this now in User CP.
Reaction score
54
I don't have time to look through all the triggers but are you trying to save and then load that data in a new map or a new game on the same map? or are you just trying to save it for future reference during that game?
 

Joccaren

You can change this now in User CP.
Reaction score
54
So your trying to make a save/load system where you can save data from one game e.g, you play by yourself get a good score then save it, and load that score or whatever next time you play the game?
 

UndeadDragon

Super Moderator
Reaction score
447
What is the problem in the code?
 

gwcadu942

New Member
Reaction score
0
So one error "Multibioard_KillsCreeps[1]"

Tigger: SAVE and LOAD

Please help me? now?

I will give +rep for you ( If you do )
 

Joccaren

You can change this now in User CP.
Reaction score
54
I know what your problem is (I think, you haven't answered my previous questions so I can't be sure). You have not saved anything into a game cache to load the next time you play your map. Variables values are not kept once the game ends unless they are saved in a game cache. If you can't figure out how to use game caches, search the forums then ask here if you find nothing. Here is one tip though: You need to save your game cache after storing the data in it and the 'save game cache' action is no longer available in GUI. You will need to use JASS for that.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top