|
Bill307
Canada9103 Posts
On April 30 2003 22:01 [CS]Pablo wrote: Show nested quote +On April 30 2003 16:37 jca wrote: Casper, what i'd like to do is mostly chart the economic development and display the various events in a graphical way, just the way they do in AOM. Might be interesting don't you think?
If i can start from wherever those guys stopped, that is with the source code to read a .rep and produce that list of replay events in a nice textual format, it would take me something like a few days to write the rest. Now, if I had to start from scratch, I just wouldn't have the spare time to do it.
A few days!? It would involve rewriting the whole BW logic. Suppose, for instance, that a player drops a reaver behind the mineral line, and the other one moves his probes away. You would need to calculate wheter the scarab did hit the intended probe or has been blocked in its way, how many probes have been killed by splash damage, and take into account things like the scarab being blocked by a mineral patch that maybe isn't there anymore because it's been mined out, or blocked by a rhynadon.
Agreed. In short, yes, you would essentially have to re-write the SC:BW game engine. Really simple and trivial stuff could be done (e.g. calculating the player's clicks+keystrokes per second), but you'd never be able to calculate something like how much money a person has. You wouldn't even be able to calculate how much they spent, or how many units they built because dud (i.e. impossible) commands are also recorded.
Almost -- if not -- anything remarkable would require three things: - SC:BW engine source code - SuperView source code (unnecessary if you have all the SC:BW source code, however) - one or more people with lots of time and enthusiasm
Unfortunately, no one person seems to posses even two of these requirements at the moment .
Even a program to simply follow around the player's clicks would have to access and decipher the RAM used by SC:BW to learn stuff like which building is ID ####, which units are hotkeyed to #, etc. Even then, I wouldn't call something like that "remarkable", just nice.
|
On April 30 2003 16:37 jca wrote: Casper, what i'd like to do is mostly chart the economic development and display the various events in a graphical way, just the way they do in AOM. Might be interesting don't you think? If i can start from wherever those guys stopped, that is with the source code to read a .rep and produce that list of replay events in a nice textual format, it would take me something like a few days to write the rest. Now, if I had to start from scratch, I just wouldn't have the spare time to do it. Of course, if those guys are planning to continue working on their program, then I understand they won't want to give away their source code. Maybe they could then simply add a feature to export the list of events in a text file. But from what amat said, it seemed they were not thinking about doing any more work on it, so why not share the source code, or at least part of it? As to your idea of "reverse engineering" the code using a "debugger", please be my guest And while you're at it, please reverse engineer BW 1.10 as well and try fix the latest bugs.
#1.
it doesn't take long to write a replay analyzer if you are competent. i'm talking maybe 48 hours of work.
#2.
it is illegal, and by making the source available he opens himself up to legal possibilities. blizzard has shown they will go after everyone from gamei to websites.
#3.
if you wanted to do it and were competent, you'd already know the steps involved and be halfway done by now instead of posting about it on some forum.
|
48 hours not long
wtf
|
whats illegal about a replay analyzer?
|
On May 01 2003 01:45 imRadu wrote: whats illegal about a replay analyzer?
hacking into the blizzard product.
|
show me where a replay analizyer infringes the license agreemenet
|
how do you make a replay analizer?
|
It may be a violation of the DMCA, but if it is not prohibited by the license agreement you could argue an implied right to reverse engineer... Kind of a gray area.
An analizer on the other hand violates... hmm, best not get into that
|
On May 01 2003 00:25 Casper... wrote: Show nested quote +On April 30 2003 16:37 jca wrote: Casper, what i'd like to do is mostly chart the economic development and display the various events in a graphical way, just the way they do in AOM. Might be interesting don't you think? If i can start from wherever those guys stopped, that is with the source code to read a .rep and produce that list of replay events in a nice textual format, it would take me something like a few days to write the rest. Now, if I had to start from scratch, I just wouldn't have the spare time to do it. Of course, if those guys are planning to continue working on their program, then I understand they won't want to give away their source code. Maybe they could then simply add a feature to export the list of events in a text file. But from what amat said, it seemed they were not thinking about doing any more work on it, so why not share the source code, or at least part of it? As to your idea of "reverse engineering" the code using a "debugger", please be my guest And while you're at it, please reverse engineer BW 1.10 as well and try fix the latest bugs. #1. it doesn't take long to write a replay analyzer if you are competent. i'm talking maybe 48 hours of work. #2. it is illegal, and by making the source available he opens himself up to legal possibilities. blizzard has shown they will go after everyone from gamei to websites. #3. if you wanted to do it and were competent, you'd already know the steps involved and be halfway done by now instead of posting about it on some forum.
why did u just write all that? and why would u spend 48hours doing that shit..
|
answer me before my curiousity kills me=/
|
|
Action, not words.
http://mapage.noos.fr/spyderman/bwchart.htm
As Casper implied, I'm not smart enough to uncompress and cut a .rep to pieces myself, therefore I decided to use SuperView to do it instead and then write a little standalone tool that will grab the data from SuperView. So basically, you start SuperView, load a replay with it and then start bwchart.exe and click "load replay". That will read the action list from the SuperView window and display some charts.
Works on Windows 2000/XP, but not on 98.
It's still a very early prototype, started yesterday, but It'll give an idea.
|
Cool. though jca is the mineral/gas count given by replay file or bw engine analizes it itself, counting all the workers/distance etc...
|
very nice, would be cool if it could also show the total number of actions from a player. would not be too hard i think.
|
|
page doesnt work for me T_T
|
|
|
NoNameLoser, to answer your question, the data that I get from SuperView, which I presume is what's available in the replay file (.rep), only comprise of "user actions", that is the actions that the human players performed during the game by clicking on things or pressing keys. Actions like: select a unit, move it, attack, train an SCV, train a marine, build barracks, upgrade a creep colony to sunken, lift CC, etc. The real BW engine can figure out all the rest, unlike my little tool.
So for example, an SCV bringing 8 minerals to a CC is not recorded. A unit dying under ennemy fire is not recorded. A building being destroyed: not recorded. Therefore, you can't even compute how much mineral each player has at any one time.
But you what you can compute (or at least estimate) is how much a player spent, because every time he builds something or trains a unit, you get an action for it in the replay file, and you know how much mineral/gas/supply it cost. So all in all I think you get an interesting information on the player's "economy" throughout the game. Same thing for units. You can't tell how many a player has at any one time, but how many he built since the beginning of the game.
Meat, I will display the total number of actions per player, plus some filtering so you can choose what kind of actions you want to count. I was also thinking of displaying some histograms to show how many of each unit was built by each player.
Any other suggestion is welcome.
|
jca thank you so much.
|
|
|
|