I was looking through the RBI 3 ROM using a hex editor (thanks for the tip on Hexpose, Nightwulf, although it crashed in Win2k and XP, so I had to run it using DOSBox), and I found something interesting. Somewhere in the great void between 1990 and division winning rosters, I found the text string "HITTING EDITOR", with nearby entries "Next Hit", "Last Hit", "Trajectory", "Direction", and "Force". My guess is that this was a development tool that didn't get pulled out of the ROM, originally used to help calibrate hitting results (they could enter a possible hit result, and it would show them where the ball went, to give them a better idea of what the levels should be). I don't know of any way to get to it, though; RBI 3 has a menu, but "Hitting Editor" isn't on it. It may be accessible by password, but I don't know where in the ROM to find that password
Also, I found some of the strings that I believe are used for the end-of-game paper - most of them are "PLAY <GAME>", but there is also "EARTHQUAKE SHAKES CANDLESTICK" and "MAY THE LORD BE WITH YOU".
Depending on my free time and level of ambition, I'm hoping to write a tool to extract the player values from the ROM in the near future, now that I've found all the player data offsets. I've been meaning to create an RBI 3 web page for awhile, but I've been waiting until I can get the actual player data first. It could be the first step to an RBI 3 editor, but I'm not about to make any promises.
May the Lord be with you, Beefmaster.
Well done Beef, keep plugging away and keep us updated. You can have webspace here and feel free to copy the dee-nee team tables for listing all the stats. Of course it would still be quicker with Dreamweaver or something...
Quote from: BeefMaster on 06/30/04, 08:39:37 AM
I was looking through the RBI 3 ROM using a hex editor (thanks for the tip on Hexpose, Nightwulf, although it crashed in Win2k and XP, so I had to run it using DOSBox), and I found something interesting.
Ah, that sucks. Hexpose is just too great of a tool to pass up though, glad to hear you found a way to get it running.
Quote from: BeefMaster on 06/30/04, 08:39:37 AM
Somewhere in the great void between 1990 and division winning rosters, I found the text string "HITTING EDITOR", with nearby entries "Next Hit", "Last Hit", "Trajectory", "Direction", and "Force". My guess is that this was a development tool that didn't get pulled out of the ROM, originally used to help calibrate hitting results (they could enter a possible hit result, and it would show them where the ball went, to give them a better idea of what the levels should be). I don't know of any way to get to it, though; RBI 3 has a menu, but "Hitting Editor" isn't on it. It may be accessible by password, but I don't know where in the ROM to find that password
That's fantastic. That's definitely something I want to play around with.
Quote from: BeefMaster on 06/30/04, 08:39:37 AM
Depending on my free time and level of ambition, I'm hoping to write a tool to extract the player values from the ROM in the near future, now that I've found all the player data offsets. I've been meaning to create an RBI 3 web page for awhile, but I've been waiting until I can get the actual player data first. It could be the first step to an RBI 3 editor, but I'm not about to make any promises.
I'd be happy to crank out player stats; it couldn't be terribly difficult after doing the same for our RBI and three different Japanese versions.
Nightwulf
QuoteI'd be happy to crank out player stats
You're too late, at least for the batters - I just finished up exporting them to a text file, in tab-delimited format, even. I'm attaching the files to this post (one each for 1990 and pre-1990 teams).
Some things I noticed:
1) As I'd suspected, power values are down from the original. A team would be lucky to have more than two or three players with 800 power, and the max for 1990 players is 945, with 1988 Canseco's 963 being the highest value in the game, apart from the Tengen team (see next item). 1990 St. Louis has no one with 800 power - their most powerful player is Todd Ziele, with 795.
2) The Tengen team. For those of you who haven't played much RBI 2 or 3, if you play through an entire "season" (defeat all the teams in your league), you're rewarded with a game against the Tengen Team. The names appears to be programmers from the game, and they're ridiculously good - all of them have over 900 power, and most have over 150 speed (speed values are up a bit in RBI 3, but that's still awesome). The strange thing I found - there are 2 Tengen teams. The first one (second-to-last team in the ROM) is the one I played when I finished the game, and I believe it's the same as the one in RBI 2, just with better speed. I have no idea how to access the second Tengen team.
3) I figured out why 1987 Alan Trammell screws things up - his power rating is 59497. I'm not sure whether this is a glitch in the original game or the ROM dump; I don't believe I've ever used the '87 Tigers with the original cartridge.
4) There appears to be a bit more method to the programmers' madness. Players with similar homeruns in similar years will have very similar power ratings. The '84 Cubs have extremely high ratings for some reason, but other than that, the number of homers appears to have been the main factor ('87 Brookens is no longer a powerhouse, and now Nokes is nearly as powerful as Evans). Average/contact correlations are similar. In addition, the game book gave speed values, and from what I remember, it looks like a book value of 10 is an actual speed value of 132, with changes being 2 real points for every book point (1990 Sandberg's 13 is really 138).
That about sums it up for the moment. I'll try to get the pitcher data pulled together soon, but I'm not as familiar with (or interested in) the pitcher data, so it may be a couple days. Nightwulf (or anyone else), feel free to chime in if you find something interesting in the data.
Apparently, there's a one-attachment limit per post. 1990 batter data is attached to this one.
Quote from: BeefMaster on 06/30/04, 08:39:37 AM
"MAY THE LORD BE WITH YOU".
a blessing from the Lord, God be praised!
Well, you got me interested in it, so I'm also trying to get a good player statistics dump from RBI 3. :P At the moment pitcher ERAs are not behaving, but I'm getting there.
Are you pondering what I'm pondering? The '85 Cardinals are indeed in RBI 3 ...
Nightwulf
Quote from: nightwulf on 07/01/04, 09:22:47 AM
Well, you got me interested in it, so I'm also trying to get a good player statistics dump from RBI 3. :P At the moment pitcher ERAs are not behaving, but I'm getting there.
Are you pondering what I'm pondering? The '85 Cardinals are indeed in RBI 3 ...
Nightwulf
I noticed the '85 Cards, too - something apparently was missed when they put together the team selection screen. Weird; I can't believe that made it out of testing.
ERAs were the big stumbling block for me when trying to decipher the pitcher data - I know that the lowest in the game is 0.62 (Eck in 1990), and I don't think any go as high as 7, but I don't know how they'd go about storing it. 2 bytes makes sense, I guess, but that messes with the other data they store, unless they fold some more stuff together (unknowns?).
Ok, it took a while, but I finally came to a conclusion. The pitcher ERAs in RBI 3 make NO FUCKING SENSE AT ALL. I had to load the game in the debugger and trace ERA "conversion" step-by-step. Eventually two different lookup tables are used, and I can't find any mathematical reasoning behind either one. That'll make an interesting stumbling block if anyone decides to write an editor for the game. Converting from the value stored in the ROM to the displayed ERA is simple enough once you see how it's done; going back from an arbitrary ERA value will be ... interesting at best.
Edit: nevermind; ERAs are still fubared. Working on it ...
Edit again: ERAs should be correct now. The '90s teams use a separate lookup table. Ugh.
That said, I did get everything working. I had that bizarre Alan Trammell power figure in my ROM also. The '85 Cardinals, while not included as a playable team, are listed as ROM information exists for them. There are a total of four teams which don't correspond to any selectable team (or MLB team at all that I could tell). These are listed as "Unknown," followed by the ROM offset at which their data appears. One (or more?) has to be the "Tengen Team," but I've no idea what the others are for.
Nightwulf
The third unknown team (offset 00017BA0) is the Tengen team that you play when you finish the game - I remember "MeMikeMe" specifically. He was in RBI 2's Tengen Team as well, which I think consisted of the same players (they were generally slower in RBI 2, if I recall correctly). The Tengen team's icon on the scoreboard is TE (the reason I assume they're the Tengen team), but if you lose, it says "Chicago loses" instead of "XXX wins", so I don't know the full, official name.
I hadn't noticed the other two teams before - I only set my program up to extract 28 old teams, and while I saw those names and thought "Fujihara" didn't sound like a member of an '83 team, I didn't think that it would be another extra team. Maybe there was some reason they had to have an even number of teams, and both historical and 1990 sets had to have the same number of teams, so they added stuff. That's pretty random, though.
BTW, the highest ERA is "Holton" (Brian Holton) of the '85 Dodgers.
The lowest is Jamie Moyer, who's listed at 0.00, although looking him up on www.baseball-reference.com (http://www.baseball-reference.com) he had an ERA of 4.66. Guess the programmers were too lazy to plug it in. ::)
The highest BA is some guy named "Woodroe" on the '86 Angels, whom I couldn't find anyone named anything close to that on that squad.
The lowest is a three-way tie: .111 for "GH Left" on the '83 Dodgers, "Hatcher" (Billy Hatcher) for the '84 Cubs, and "Kremers" (Jimmy Kremers, he actually hit .110 (8 for 73)) on the '90 Braves.
Feel free to call me a stupid idiot and all, but how would I, say, insert a hack of myself (name, contact, power) on the 90 NL All-Star team? I can't find any readable strings of text for the names or anything.
You stupid idiot! :D
Quote from: Craig341 on 07/05/04, 09:33:37 PM
Feel free to call me a stupid idiot and all, but how would I, say, insert a hack of myself (name, contact, power) on the 90 NL All-Star team? I can't find any readable strings of text for the names or anything.
The batter information for the NL All-Star team starts at offset 000179A8. You can find information about "making" the strings readable in this thread (http://forums.dee-nee.com/index.php?board=3;action=display;threadid=2322), and information about the format in which batter data is stored in this post (http://forums.dee-nee.com/index.php?board=3;action=display;threadid=619;start=msg6175#msg6175).
Nightwulf
Thanks, nightwulf. I got it started by putting myself on the All-Stars. Hopefully, soon, RBI 3 will be as easily hackable as the original. :)
Guess who's back .. back again ...
RBI Baseball 3-85 Cards hack.zip (http://nightwulf.rbicentral.com/RBI%20Baseball%203-85%20Cards%20hack.zip)
The above is the original RBI 3 ROM, with the 85 Cardinals (finally) selectable from the team select screen. If you're technically inclined, you can also simply open the original ROM in a hex editor, and change the byte at offset 147A1 from 09 to 29.
Nightwulf