Page Index Toggle Pages: 1
Topic Tools
Hot Topic (More than 10 Replies) block checksum algorithm (Read 9050 times)
dsjoerg
Peon
*
Offline


I love YaBB 1G - SP1!

Posts: 3
Joined: Sep 28th, 2007
block checksum algorithm
Sep 28th, 2007 at 3:58am
Post Tools
Hello, I'm wondering if one of you could share with me the block checksum algorithm.

My goal is to make a training tool that lets you watch your ladder replays, with an annotate info-board showing live stats from the game. For example current resources, total HP of all units.  Eventually it can include graphs, analysis etc so that you can more easily identify points in the game where you need to do better.

This training tool must run within a custom map.  Hence I need to rewrite the replay file to have a different map reference, which I why I need to compute a new checksum.

Best regards,
--David J.
  
Back to top
 
IP Logged
 
esby
Peon
*
Offline


I love YaBB 1G - SP1!

Posts: 23
Joined: May 10th, 2006
Re: block checksum algorithm
Reply #1 - Sep 29th, 2007 at 2:07pm
Post Tools
The block checksum algorithm won't help you for your project,
unless you want to:
* modify replays and inject the missing data?
* check the integrity of replay.

Supposed you want to get the missing data,
you'll need to link directly with the war3 engine during the game, 
which would break the war3 eula . (That's what most maphack do...)

esby
  
Back to top
 
IP Logged
 
dsjoerg
Peon
*
Offline


I love YaBB 1G - SP1!

Posts: 3
Joined: Sep 28th, 2007
Re: block checksum algorithm
Reply #2 - Sep 29th, 2007 at 3:17pm
Post Tools
Here's my plan, and how the block checksum algo is necessary.

1. I play a ladder game, let's say it's on Echo Isles.  I save the replay.
2. I have a custom map, my own version of Echo Isles that includes custom JASS code for displaying an infoboard with useful stats, graphs, etc about the game.
3. I modify the replay file so that it thinks the game was played on my custom map.
4. I watch the replay, and I get to see all the cool stats.

So as you can see, in step 3 I am modifying a replay file.  Without the block checksum algo, the Warcraft engine will refuse to play the replay because the checksum will be wrong.
  
Back to top
 
IP Logged
 
esby
Peon
*
Offline


I love YaBB 1G - SP1!

Posts: 23
Joined: May 10th, 2006
Re: block checksum algorithm
Reply #3 - Sep 29th, 2007 at 7:24pm
Post Tools
How about modying one warcraft III version (the mpq) so the scripts will be loaded when you play the replay no matter the map choosen?

esby
  
Back to top
 
IP Logged
 
dsjoerg
Peon
*
Offline


I love YaBB 1G - SP1!

Posts: 3
Joined: Sep 28th, 2007
Re: block checksum algorithm
Reply #4 - Sep 29th, 2007 at 8:22pm
Post Tools
Ooh, I have no idea how to do that -- can you link me to any relevant info/tutorials?   I know there are mpq editors out there, but I guess I need a guide to the built-in mpqs.
  
Back to top
 
IP Logged
 
esby
Peon
*
Offline


I love YaBB 1G - SP1!

Posts: 23
Joined: May 10th, 2006
Re: block checksum algorithm
Reply #5 - Sep 30th, 2007 at 12:47am
Post Tools
I ain't sure it will work but who know: (I don't know the checksum algorithm anyway...)

1- get an mpq editor.

2- Localize the .js file in the war3 mpq.

3- Make a copy of your war3 folder.

4- Try appending your jass stuff to one of .js that will be loaded by the game?

5- Play on bnet with your original war3, watch replay with the modified one?
  
Back to top
 
IP Logged
 
d07.RiV
Peon
*
Offline


1148154945 1097624691
1952543347

Posts: 4
Location: Russia
Joined: Jan 13th, 2008
Re: block checksum algorithm
Reply #6 - Jun 18th, 2008 at 1:52am
Post Tools
Boom I finally got the algorithm by debugging WC3 (it took several hours, and it was the first time I ever tried disassembling anything).
But I suppose there are people who don't think its a good idea for such information to be open to public.
  
Back to top
WWWICQ  
IP Logged
 
Ojan
Peon
*
Offline


Gimmie my 20 (or was it
40?) posts back! :p

Posts: 27
Location: Sweden, of course
Joined: Apr 16th, 2004
Re: block checksum algorithm
Reply #7 - Jun 24th, 2008 at 11:08am
Post Tools
Most of blizzards works have been pretty dissected and disassembled so I doubt it's any problem at all to post it. 

I for one would very much like to see it. Perhaps you could mail it in any case? ojan.pojan *-AT-* gmail *-dot-* com
  

Hi! I'm a .signature *virus*! Copy me into your ~/.signature to help me spread!
Back to top
IP Logged
 
Blue
Grunt
**
Offline


Think first.

Posts: 54
Location: Berlin, Germany
Joined: May 12th, 2003
Re: block checksum algorithm
Reply #8 - Jun 24th, 2008 at 8:08pm
Post Tools
Well, its one thing to disassemble stuff (violating the EULA), its another to post it to a public website. This can especially become a problem for the owner of the website. The BNETD server development was stopped by blizzard by filing a law suite against the website owner - but thats an old story.

I would still vote against making the checksum algorithm public for the same old reason: right now replays are quite unmodifiable and such a good proof for any kind of player dissensions. Making them modifyable makes you loose this proof...
  
Back to top
 
IP Logged
 
esby
Peon
*
Offline


I love YaBB 1G - SP1!

Posts: 23
Joined: May 10th, 2006
Re: block checksum algorithm
Reply #9 - Jun 26th, 2008 at 12:59am
Post Tools
I agree on what Blue said.

Now we might have other ways to check if a replay has been altered.
(especially if we have the other versions of the replays...)

esby
  
Back to top
 
IP Logged
 
MrJag
Peon
*
Offline



Posts: 1
Joined: Jul 9th, 2008
Re: block checksum algorithm
Reply #10 - Jul 9th, 2008 at 5:10pm
Post Tools
I'd be interested in seeing the algorithm so that I could automate the map hashing functionality in wc3 game hosting applications.
  
Back to top
 
IP Logged
 
CryptWizard
Peon
*
Offline



Posts: 1
Joined: Jul 21st, 2008
Re: block checksum algorithm
Reply #11 - Jul 28th, 2008 at 7:05am
Post Tools
Please do explain more about the algorithm.
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Topic Tools