- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Save/load System
Thu 23 Feb 2006, 21:27
I know its not as good as the Save/Load System in DotD but it works fine but now im tired of translate everything from german to english because that is much work. The System was to big so i had to post it in more Categorys
Variables
- Code:
boolhasWisp True(12) False
decEncryt Integer 0
decoder1 String -
decoder2 String -
decoder3 String -
decSwap Integer 0
encoder1 String -
encoder2 String -
encoder3 String -
integerCodeLength Integer 0
Random1 Integer(12) 0
Random2 Integer(12) 0
stringASCII String abcdefghijklmnopqrstuvwxyz01
stringDigits String 123456789abcdefghijklmnopqrstuvwxyz
stringEncrytArray String(10) -
stringSaveCodeArray String(12) -
stringSwapArray String(10) -
unitHeroArray Unit(12) -
integerPlayernameArray Integer(12) 0
integerHeroExpArray Integer(12) 0
- Code:
Map Initialization
Event
Map initialization
Condition
Aktionen
Trigger - Run Set Variables <gen> (ignoring conditions)
Trigger - Run Calculate Names <gen> (ignoring conditions)
Set Variables
Event
Condition
Aktionen
Set ingeterCodeLength = 11
Set stringEncrytArray[0] = 2638145097
Set stringEncrytArray[1] = 1493268750
Set stringEncrytArray[2] = 6970325148
Set stringEncrytArray[3] = 7081495236
Set stringEncrytArray[4] = 4125670983
Set stringEncrytArray[5] = 3869715402
Set stringEncrytArray[6] = 9207836514
Set stringEncrytArray[7] = 8714902365
Set stringEncrytArray[8] = 0342589671
Set stringEncrytArray[9] = 5287403916
Set stringSwapArray[0] = 81a4236597b
Set stringSwapArray[1] = 639541ab278
Set stringSwapArray[2] = a19758b4632
Set stringSwapArray[3] = 72b693854a1
Set stringSwapArray[4] = 53681a7b924
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Thu 23 Feb 2006, 21:29
- Code:
Set stringSwapArray[5] = 4251b9a6738
Set stringSwapArray[6] = 9874b51a263
Set stringSwapArray[7] = 276a3841b59
Set stringSwapArray[8] = 4b38529a176
Set stringSwapArray[9] = 7a5349b2618
For each (Integer A) from 1 to 12, do (Actions)
Schleifen - Aktionen
Set Random1[(Integer A)] = (Random integer number between 0 and 9)
Set Random2[(Integer A)] = (Random integer number between 0 and 9)
Calculate Names
Event
Condition
Aktionen
For each (Integer A) from 1 to (Length of (Name of (Picked player))), do (Actions)
Schleifen - Aktionen
For each (Integer B) from 1 to 39, do (Actions)
Schleifen - Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
(String((Substring((Name of (Picked player)), (Integer A), (Integer A)))) as Kleinschreibung) Gleich (Substring(stringASCII, (Integer B), (Integer B)))
'THEN'-Aktionen
Set integerPlayerNameArray[(Player number of (Picked player))] = (integerPlayerNameArray[(Player number of (Picked player))] + (Integer B))
'ELSE'-Aktionen
Save Command
Ereignisse
Player - Player 1 (Red) types a chat message containing -save as Exakte String
Player - Player 2 (Blue) types a chat message containing -save as Exakte String
Player - Player 3 (Bluegrey) types a chat message containing -save as Exakte String
Player - Player 4 (Purple) types a chat message containing -save as Exakte String
Player - Player 5 (Yellow) types a chat message containing -save as Exakte String
Player - Player 6 (Orange) types a chat message containing -save as Exakte String
Player - Player 7 (Green) types a chat message containing -save as Exakte String
Player - Player 8 (Pink) types a chat message containing -save as Exakte String
Player - Player 9 (Grey) types a chat message containing -save as Exakte String
Player - Player 10 (Lightblue) types a chat message containing -save as Exakte String
Player - Player 11 (Darkgreen) types a chat message containing -save as Exakte String
Player - Player 12 (Brown) types a chat message containing -save as Exakte String
Condition
Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
(unitHeroArray[(Player number of (Triggering player))] is alive) Eqoual to True
'THEN'-Aktionen
Set integerHeroExpArray[(Player number of (Triggering player))] = (Hero experience of unitHeroArray[(Player number of (Triggering player))])
Unit - Remove unitHeroArray[(Player number of (Triggering player))] from the game
Trigger - Run Build part Name <gen> (ignoring conditions)
Trigger - Run Build part Exp <gen> (ignoring conditions)
Trigger - Run Encode Encrypt <gen> (ignoring conditions)
Trigger - Run Encode Swap <gen> (ignoring conditions)
'ELSE'-Aktionen
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Thu 23 Feb 2006, 21:30
- Code:
Build part Name
Event
Condition
Aktionen
Set encoder1 = <Empty String>
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerPlayerNameArray[(Player number of (Triggering player))] Kleiner als 10
'THEN'-Aktionen
Set encoder1 = (00 + (String(integerPlayerNameArray[(Player number of (Triggering player))])))
Skip remaining actions
'ELSE'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerPlayerNameArray[(Player number of (Triggering player))] Kleiner als 100
'THEN'-Aktionen
Set encoder1 = (0 + (String(integerPlayerNameArray[(Player number of (Triggering player))])))
Skip remaining actions
'ELSE'-Aktionen
Set encoder1 = (String(integerPlayerNameArray[(Player number of (Triggering player))]))
Build part Exp
Event
Condition
Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerHeroExpArray[(Player number of (Triggering player))] lesser as 10
'THEN'-Aktionen
Set encoder1 = (encoder1 + (000000 + (String(integerHeroExpArray[(Player number of (Triggering player))]))))
Skip remaining actions
'ELSE'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerHeroExpArray[(Player number of (Triggering player))] lesser as 100
'THEN'-Aktionen
Set encoder1 = (encoder1 + (00000 + (String(integerHeroExpArray[(Player number of (Triggering player))]))))
Skip remaining actions
'ELSE'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerHeroExpArray[(Player number of (Triggering player))] lesser as 1000
'THEN'-Aktionen
Set encoder1 = (encoder1 + (0000 + (String(integerHeroExpArray[(Player number of (Triggering player))]))))
Skip remaining actions
'ELSE'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerHeroExpArray[(Player number of (Triggering player))] lesser as 10000
'THEN'-Aktionen
Set encoder1 = (encoder1 + (000 + (String(integerHeroExpArray[(Player number of (Triggering player))]))))
Skip remaining actions
'ELSE'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerHeroExpArray[(Player number of (Triggering player))] lesser as 100000
'THEN'-Aktionen
Set encoder1 = (encoder1 + (00 + (String(integerHeroExpArray[(Player number of (Triggering player))]))))
Skip remaining actions
'ELSE'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
integerHeroExpArray[(Player number of (Triggering player))] lesser as 1000000
'THEN'-Aktionen
Set encoder1 = (encoder1 + (0 + (String(integerHeroExpArray[(Player number of (Triggering player))]))))
Skip remaining actions
'ELSE'-Aktionen
Set encoder1 = (encoder1 + (String(integerHeroExpArray[(Player number of (Triggering player))])))
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Thu 23 Feb 2006, 21:32
- Code:
Encode Encrypt
Event
Condition
Aktionen
Set encoder2 = <Empty String>
For each (Integer A) from 1 to (ingeterCodeLength - 1), do (Actions)
Schleifen - Aktionen
For each (Integer B) from 1 to 10, do (Actions)
Schleifen - Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
(Substring(encoder1, (Integer A), (Integer A))) Gleich (Substring(stringEncrytArray[Random1[(Player number of (Triggering player))]], (Integer B), (Integer B)))
'THEN'-Aktionen
Set encoder2 = (encoder2 + (String(((Integer B) - 1))))
'ELSE'-Aktionen
Set encoder2 = ((Substring(encoder2, 1, 4)) + ((String(Random1[(Player number of (Triggering player))])) + (Substring(encoder2, 5, 10))))
Encode Swap
Event
Condition
Aktionen
Set encoder3 = <Empty String>
For each (Integer A) from 1 to ingeterCodeLength, do (Actions)
Schleifen - Aktionen
For each (Integer B) from 1 to ingeterCodeLength, do (Actions)
Schleifen - Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
(Substring(stringSwapArray[Random2[(Player number of (Triggering player))]], (Integer A), (Integer A))) Gleich (Substring(stringDigits, (Integer B), (Integer B)))
'THEN'-Aktionen
Set encoder3 = (encoder3 + (Substring(encoder2, (Integer B), (Integer B))))
'ELSE'-Aktionen
Set encoder3 = ((Substring(encoder3, 1, 8)) + ((String(Random2[(Player number of (Triggering player))])) + (Substring(encoder3, 9, 11))))
Set encoder3 = ((Substring(encoder3, 1, 4)) + (- + ((Substring(encoder3, 5, 8)) + (- + (Substring(encoder3, 9, 12))))))
Set stringSaveCodeArray[(Player number of (Triggering player))] = encoder3
Spiel - Display to (All players matching ((Matching player) Gleich (Triggering player))) for 900.00 seconds the text: (Your savecode is: + encoder3)
Spiel - Display to (All players matching ((Matching player) Gleich (Triggering player))) for 900.00 seconds the text: To test out your sa...
Save Command
Ereignisse
Player - Player 1 (Red) types a chat message containing -load as Exakte String
Player - Player 2 (Blue) types a chat message containing -load as Exakte String
Player - Player 3 (Bluegrey) types a chat message containing -load as Exakte String
Player - Player 4 (purple) types a chat message containing -load as Exakte String
Player - Player 5 (Yellow) types a chat message containing -load as Exakte String
Player - Player 6 (Orange) types a chat message containing -load as Exakte String
Player - Player 7 (Green) types a chat message containing -load as Exakte String
Player - Player 8 (Pink) types a chat message containing -load as Exakte String
Player - Player 9 (Grey) types a chat message containing -load as Exakte String
Player - Player 10 (Lightblue) types a chat message containing -load as Exakte String
Player - Player 11 (Darkgreen) types a chat message containing -load as Exakte String
Player - Player 12 (Brown) types a chat message containing -load as Exakte String
Aktionen
Trigger - Run Decode Swap <gen> (ignoring conditions)
Trigger - Run Decode Encrypt <gen> (ignoring conditions)
Trigger - Run Verify <gen> (ignoring conditions)
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Thu 23 Feb 2006, 21:34
- Code:
Decode Swap
Event
Condition
Aktionen
Set decoder1 = (Substring((Entered chat string), 7, 20))
Set decoder1 = ((Substring(decoder1, 1, 4)) + ((Substring(decoder1, 6, 9)) + (Substring(decoder1, 11, 14))))
Set decSwap = (Integer((Substring(decoder1, 9, 9))))
Set decoder1 = ((Substring(decoder1, 1, 8)) + (Substring(decoder1, 10, 12)))
Set decoder2 = <Leerer String>
For each (Integer A) from 1 to ingeterCodeLength, do (Actions)
Schleifen - Aktionen
For each (Integer B) from 1 to ingeterCodeLength, do (Actions)
Schleifen - Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
(Substring(stringDigits, (Integer A), (Integer A))) Gleich (Substring(stringSwapArray[decSwap], (Integer B), (Integer B)))
'THEN'-Aktionen
Set decoder2 = (decoder2 + (Substring(decoder1, (Integer B), (Integer B))))
'ELSE'-Aktionen
Decode Encrypt
Event
Condition
Aktionen
Set decoder3 = <Empty String>
Set decEncryt = (Integer((Substring(decoder2, 5, 5))))
Set decoder2 = ((Substring(decoder2, 1, 4)) + (Substring(decoder2, 6, 11)))
For each (Integer A) from 1 to (ingeterCodeLength - 1), do (Actions)
Schleifen - Aktionen
Set decoder3 = (decoder3 + (Substring(stringEncrytArray[decEncryt], ((Integer((Substring(decoder2, (Integer A), (Integer A))))) + 1), ((Integer((Substring(decoder2, (Integer A), (Integer A))))) + 1))))
Verify
Event
Condition
Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
(Integer((Substring(decoder3, 1, 3)))) Gleich integerPlayerNameArray[(Player number of (Triggering player))]
'THEN'-Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
boolHasWisp[(Player number of (Triggering player))] Equal to False
'THEN'-Aktionen
Unit - Create 1 Wisp for (Triggering player) at (Center of choosed Area <gen>) facing 270.00 degrees
Set boolHasWisp[(Player number of (Triggering player))] = True
Set integerHeroExpArray[(Player number of (Triggering player))] = (Integer((Substring(decoder3, 4, 10))))
Spiel - Display to (All players matching ((Matching player) Equal to (Triggering player))) for 30.00 seconds the text: Good code.
'ELSE'-Aktionen
Spiel - Display to (All players matching ((Matching player) Equal to (Triggering player))) for 30.00 seconds the text: Sorry, only one wisp per game
'ELSE'-Aktionen
Game - Display to (All players matching ((Matching player) Equal to (Triggering player))) for 30.00 seconds the text: Bad code.
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Thu 23 Feb 2006, 21:35
- Code:
New Command
Event
Player - Player 1 (Red) types a chat message containing -new as Exakte String
Player - Player 2 (Blue) types a chat message containing -new as Exakte String
Player - Player 3 (Bluegrey) types a chat message containing -new as Exakte String
Player - Player 4 (Purple) types a chat message containing -new as Exakte String
Player - Player 5 (Yellow) types a chat message containing -new as Exakte String
Player - Player 6 (Orange) types a chat message containing -new as Exakte String
Player - Player 7 (Green) types a chat message containing -new as Exakte String
Player - Player 8 (Pink) types a chat message containing -new as Exakte String
Player - Player 9 (Grey) types a chat message containing -new as Exakte String
Player - Player 10 (Lightblue) types a chat message containing -new as Exakte String
Player - Player 11 (Darkgreen) types a chat message containing -new as Exakte String
Player - Player 12 (Brown) types a chat message containing -new as Exakte String
Condition
Aktionen
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
'IF'-Condition
boolHasWisp[(Player number of (Triggering player))] Gleich False
'THEN'-Aktionen
Unit - Create 1 Wisp for (Triggering player) at (Center of Choosen Area <gen>) facing 270.00 degrees
Set boolHasWisp[(Player number of (Triggering player))] = True
'ELSE'-Aktionen
Game - Display to (All players matching ((Matching player) Equal to(Triggering player))) for 30.00 seconds the text: Sorry, only one wisp per game
Hero choose with Saved Exp.
Event
Unit - A unit enters Choosed Hero <gen>
Condition
Aktionen
Set playerTemp = (Owner of (Triggering unit))
Camera - Set the camera bounds for (Owner of (Triggering unit)) to (Entire map)
Camera - Pan camera for (Owner of (Triggering unit)) to (Center of Region 007 <gen>) over 1.00 seconds
Unit - Create 1 Choosed Hero for (Owner of (Triggering unit)) at (Center of Choosed Area <gen>) facing 90.00 degrees
Set unitHeroArray[(Player number of (Owner of (Triggering unit)))] = (Last created unit)
Hero - Set (Last created unit) experience to integerHeroExpArray[(Player number of (Triggering player))], Hide level-up graphics
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Fri 24 Feb 2006, 13:06
Well Im sry cant do it smaller
- Sunny_DLTG
- Posts : 1653
Réputation : 3
Regist Date : 2006-02-04
Re: Save/load System
Sat 25 Feb 2006, 16:15
really well done, asgard.i have to admit that this one seems more hacker secure than mine, gj.
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Sat 25 Feb 2006, 17:01
Thx but why did you post this 3 times?
- Sunny_DLTG
- Posts : 1653
Réputation : 3
Regist Date : 2006-02-04
Re: Save/load System
Sun 26 Feb 2006, 19:27
posted 3 times ??? what u mean ?
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Mon 27 Feb 2006, 01:23
^^ there is someone who deleted his messages xP
- Sunny_DLTG
- Posts : 1653
Réputation : 3
Regist Date : 2006-02-04
Re: Save/load System
Mon 27 Feb 2006, 16:11
uhm... ok dont know how this happened but sry then for double .... eh triple post
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Fri 10 Mar 2006, 21:34
- Sunny_DLTG
- Posts : 1653
Réputation : 3
Regist Date : 2006-02-04
Re: Save/load System
Wed 15 Mar 2006, 09:12
so? i never saw me triple posting ... anyway... hm.... 26. Feb .... 10. Mar.... good reaction time sath
Re: Save/load System
Sun 09 Sep 2007, 23:18
o.0 you know you can also do it in GUI.
Meh i will need this save/load system in my Survival Hill map.... the one it has currently doesn't work right....... -.-
Meh i will need this save/load system in my Survival Hill map.... the one it has currently doesn't work right....... -.-
- Asgard_RagnaCOL
- Posts : 750
Réputation : 7
Regist Date : 2006-01-20
Re: Save/load System
Tue 11 Sep 2007, 15:58
Yup there is no jass in it.
Re: Save/load System
Tue 11 Sep 2007, 23:05
I'm gonna try and break the protection on dotd some day to make some needed changes.
Permissions in this forum:
You cannot reply to topics in this forum