View Single Post
Old 09-16-2006, 02:38 AM   #1
PipeDream
Moderator
 
PipeDream's Avatar


Code Moderator
 
Join Date: Feb 2006
Posts: 1,405

Submissions (6)

PipeDream is a glorious beacon of light (463)PipeDream is a glorious beacon of light (463)PipeDream is a glorious beacon of light (463)PipeDream is a glorious beacon of light (463)

Default Optimal Save System 0.4

Changelog:
0.4
Added a few unit tests
Various bug fixes including deallocation issue

0.3
Port to vJass. No more location lists.

0.2
fixed broken sample name hashing routine

0.1
initial release

I got tired of hand writing save systems from scratch for aftermath everytime we wanted to change a few values, so I wrote this automated system.
Features:
- Flexible. Can generate codes of any length using integer data from zero to around twenty nine million.
- *Space optimal. Guaranteed to pack your code into as few characters as mathematically possible, assuming all possibilities for saving are equiprobable
- Fast
- *Creates few excess strings
- Simple interface
- *Save code character sets can be any length
- Configurable hash checking: A random code will work with a probability you specify

* items are advantages over Vex's system. The main advantage of Vex's system is that it has been tested far more heavily.

It takes some of the hell out of hand tuning a homegrown save system which can take up a day even if you are familiar with the math involved.

If someone knows all the characters that are valid in a bnet name, please let me know.

Remember, the best you can hope for is helping honest users remain honest.
Attached Images
File Type: jpg savesmall.jpg (17.1 KB, 1552 views)
File Type: jpg savebig.jpg (38.1 KB, 1630 views)
Attached Files
File Type: w3x savecode.w3x (23.1 KB, 1165 views)
File Type: w3x savecodevjass.w3x (27.9 KB, 750 views)
__________________
PipeDream is offline   Reply With Quote
Sponsored Links - Login to hide this ad!