Warcraft III resources & community, 2003–2006 · archived

Save/Load Integer Code III

not rated
Submitted by MrMaestroSystems914 downloads72 KB
Screenshot
Screenshot
Open the world editor to view save/load code script. The game executes the code. Your object is to kill as many enemies as possible. With each kill you get an additional point. Good Luck!
File Name
Save Load Integer Code III.w3x
Author
MrMaestro
Download

Comments

20
This sounds very useful as I am working on a DD type map. I want the score to go to 10,000 though, so this sounds like it is perfect. 9999 will do. :D

So is there a way to change the code a little so that someone can't take the code from another map and load a score on my map? I mean it would be silly if they could get 9999 kills from your map and have that score for mine too! Haha!

Well I'm going to d/l it now and see if I can alter it a little.

Edit: That's a lot of variables. I guess some are only needed for your particular map?
It's been a while since I replied to this thread, let alone been on these forums (although I do pop on occasionally). This code is not for saving heroes, it is for saving Data. I intended this to be used not so much for RPGs, although it is a nice addition to a save/load hero code. It can save gold, lumber, or any other variable you have set (which sets you up to have specific points you can earn each games, much to the idea of Dark Deeds). Don't confuse this with a hero loading code because it isn't, but don't say it is useless, because if you know how to use it, it can actually be MORE useful, since it can be incorperated in nearly every genre of game.

Doctor-Pepper, I am glad that I was able to help you learn what you know now. All of the stuff and tutorials I loaded onto the site was pretty much results of what I had taught myself or experimented with. I'm glad you were able to put this to use!

P.S. The in-game scenario is just a very quick game I put together in about 10 minutes just to show how the code is executed. In the future, I may make a gold version with a shorter code, but not now, because I have a lot of outside work to do (writing music and stuff for a cd, www.davidorr.net if you are at all interested).

- MrMaestro
Just waned to let you know that i'm using this code in my map.
BTW, i studied ur codes from the day u submited Save/Load Integer Code 1. Without ur maps i wouldnt ever be able to trigger those things i do now. Make sure u check out my map named Corupt City. I should release it at end of this month - middle october. It has realy awesome features. Anyway, tnx for everything, Pepper.
how to save 5 or more variables?
Wait... It don't save the hero level?
It only save the number of kill you got in game right?
Should have added an Exp, Gold, Lumber and Item/Item placement, Number of charges in item to make this extremely easy to use. As it stands, it (in my opinion) is below Directors Choice worthy... It's extremely well made though, but without those, this is just an uncrackable code that no one will need... :(
just tested it.
works really good and code is short too.
Why don't you download it and find out? :).

Save Player's Name: It saves two letters of the name to help create it non-sharable.
Length: I believe it is 17 letters to save 2 variables from 1-9999. Currently working to lower it down a bit.
Characters: Saves uppercase, lowercase, and numbers into the code.[/code]
does it also save the player's name?
how long is the saved code?
does it use letters or only numbers?
Well I'll check that out.

What would be the point of me making this long extensive code to save nothing? Play the game and you will understand. Every Kill you get you will get a point added to a variable. Every time you die you get another point added to a different variable. Type save and it will save these numbers in the form of a code. Write the code down (case sensitive) and then re-load the game. Your score will be reset, but if you type "-load" and then the code, it will load both variables that were saved. If you read the text located in the triggers, it will explain how to use this, and I believe it will also explain what is being saved.
wat do u mean "2 variables" its just some random numbers and letters that if u guess u get right and it doesnt look like it saves a hero or nething and i read the trigger 3 times i cudnt find the thing where it saves the hero at all

EDIT: o and i think ur reason for being broken is u forgot to fill in some blanks like for If, Then, Else Multi. Func. u left some else's blank but im not sure if that's y or not
I don't know what your talking about, try re-downloading the file.

It saves variables, 2 of them, from 0-9999 in value. It works fine in-game, you don't need to change a thing to get it to work. I am using regular WE, although that should make little difference. I suggest before playing around with the triggers, you test them out first.

DO NOT disable any loading triggers, only turn them on and off (if you must). You will get that error message that you wrote. I'm not sure why, I have searched the trigger and did not find any explaination.
just one TINY little question......what the hell does it save? it looks like its just a code that does nothing

and OMFG i wanted to test it but the Load Trigger is not working bcuz "The trigger cannot be enabled because all of the parameters do not have values" and i fuking looked for the thing that is usually grayish-reddish when something isn't working but it's not there, why?
thanks :). I look forward to seeing that checksum.
well, maybe some things i sayed sounded rude, if so, sorry for that
all you do is divide that number by 100, and then multiply it by 100, and you can get a pretty acurate amount of gold the user had when loading.

yeah, good idea, i can't even find words to describe it ^^ (no joke, no ironism, i just can't speak english thaaaat good ;))
17 digits.. could make a lot with that.. just with converting with my jass script i create an integer with 31 digits, starting with a 5. if i subtract 5 digits from the 17, and use those for a checksum of the part with the saved integer, i still have 12 digits for saveable integers (btw: the biggest integer that can be saved using 64 different symbols, like letters, and with x digits of code, is 64^x-1; you have 12 for x in this case) and the checksum would make every but one of 1.073.741.823 savecodes unloadable. (edit: of course i meen unloadable, not loadealbe ^^ sry)
i don't tell you how good it could be, without help you make it better. well, i will submit the code for creating the checksum immidiately after this post.

mfg Backe
PS: i wrote mfg in the first post too, right? well it's german ;)
thanks :).
This Version is Very Nice. and Works Better too 8)
First off having 2.7 Quintillion different combinations does mean that 1 out of 2.7 quintillion users who type a random string will get the correct combination. However, the numbers are quite a bit less, because each portion of the code has several variations that work, so the numbers are much less than 1 out of 2.7 quintillion will crack it. You have to divide that number multiple times over to get the accurate ratio like that. The code includes parts of the username unique to each user, so the combinations are even fewer. Here is a rough estimate of the typing random integers would look like: 1,726,051,000. Also, if a user is able to crack any part of the code, that number is a lot less. If I was to put the possible combinations of 1,000,000 if any part of the code was cracked... it would make the rest of the code easier to crack. Im not sure if that made any sense, but thats how it would work :P.

In addition, this doesn't add at all to the length of the code (what seems to be one of your biggest complaints). I don't see how this is a complaint of my trigger.

0-9999, you can do a lot with that. Saving gold and wood I see what your saying. However, all you do is divide that number by 100, and then multiply it by 100, and you can get a pretty acurate amount of gold the user had when loading.

E.G: Gold = 839,616. 839,616/100= 8396 (the game auto rounds down). When loading, multiply it by 100. you get 839600. Yes, you lost 16 gold, but when you are dealing with that much, does 16 really make much of a difference? Same Goes with Hero Experience. Your argument is a valid one, though, and I will try to increase the numbers.

All you have to do is mix up the variables combinations and values a bit to make it unique. If someone did use this code have, they just need to change a some values around (not even all of them, just 1/2 of Z or so), and possibly re-arrange part of the code. Having access to this code doesn't do anything if people jumble up this code a bit. So, you know how it works... good luck trying to crack it.

Safer, Safer, Safer... I rather have a code that is 17 Digits long and nearly un-crackable than a 10 digit code that is less un-crackable. Again, you make a very valid argument, but I don't think people are really going to care about an extra few characters (although some would). I will absolutly look at your JASS script, I have a basic knowledge about JASS, so It won't be too scary looking. Thanks for all your comments; it's nice to get criticism here and there... thats how you make things better :).

There are a few things i have to complane about..
1.: 2.7 Quintillion saving combinations, don't you thing something about 100.000 would be enough? 1 of 2.7 Quintillion players, who just type a random string with the right length will get a result. congratulation. WHO NEEDS THAT?? even if u have a million, it would be ok.. who spends the time to type a million codes at random to get ONE random result?
2.: 2 variables from 0 to 9999. well, thats nothing. what if u need to save the gold or lumber of the players? it reaches from 0 to 1 million. or hero experience?
btw, how many letters/numbers in the code are for 1 of the 9999-numbers? i need 3 for a number from 0 to 250.000. 262.144 if you're interisted in.
3.: everyone who wants the system not be the same as yours, has to change more than 100 variables. And that's important, because everyone has acces to the sourcecode... (btw, the reason y nobody makes such code opensource -.-)

when your savesystem is alredy save, you doesn't spend time on make the code shorter (as me) to make the player have less to write, but you make it even safer, and safer, and safer... u should concentrate on making the code shorter. a good idea would be to learn jass. then, check the jasssection, and look for my integer/string converter, it can save a LOT of space in your code.

constructive enough? i think so.. *submit*

mfg Backe
If you have the Oringinal Save/Load Integer Code, I strongly urge you to replace it with this one (if you need integer values above 99).

(Excerpt From Readme)

This Save/Load Code takes the original Save/load Integer Code I, and builds off of it, considerably. And unlike Save/Load Integer Code II, it's multiplayer Compatable! Here are a few features of it:
- Can save 2 variables!
- Each varaible can be saved up to 9999 in value!
- Increased anti-cracked protection
- In-depth Tutorial
- Includes codes for both a 1 variable and 2 variable code (1 variable code is slightly shorter)
- Features a possible 2,720,740,147,000,000,000 different saving possiblities (2.7 Quintillion saving combinations )

Compare this to the information you will find in the Readme of Save/Load Integer Code I, and you will see why this is much more advanced.