Jump to content

Bases Loaded (Original)---Anyone Ever Edit This?


iladelf

Recommended Posts

Hey all,

 

Realize a lot of good folks have done great work on RBI Baseball, Baseball Simulator, etc. on this forum, but wondering if anyone ever tried to hack (mod) the ORIGINAL version of Bases Loaded for NES.  To me (and yes, I am a fossil, age-wise), it was easy to play, plus, more importantly, it was the closest game I ever played to REAL BASEBALL (console or PC-wise).  By that, I mean the starters typically went 5-7 innings, the bullpen pitchers would wear out quick, and the games always seemed to have that "on the edge of your seat" feel as you played it.  Examples?  Started a new season with Kansas (4-1 now), and two games have went extra, the first won on a walk-off homer.  A third was won with a walk-off single RBI scored from third in the bottom of the 9th.

 

The reason I mention this is that, while I have tried RBI and Baseball Simulator, I just can't stand that "arcade-y" gameplay of pitchers lasting 3 innings and every other hit being a home run.  If rosters could be edited in Bases Loaded, and teams added (think 30 MLB teams), I think it would be a GREAT game!  Sure, there are some quirks (double plays from stupid baserunners and a non-existent infield-fly rule), but you've got to pitch smart, manage the game and your players well from game to game, and stay off the crap pitches when batting!   ;)

 

Would love to start trying to edit the ROM, but have no idea where to start.  

PS  For the record, I've tried the other Bases Loaded versions (2 on up), but their gameplay doesn't stack up to the original IMO (ease of play wise).

Edited by iladelf
Link to comment
Share on other sites

I've taken a quick look at the rom and it's a bit perplexing. The first step in these projects (for me anyway) is to make a table file. A table file is an index that, when loaded into a hex editor in conjunction with your game rom, translates some of the hex into plain english. This lets you find the player names in the game data. In other sports games I've worked with, player stats are stored alongside their names, so if you see a player's name, the string of hex directly after is usually batting average, homeruns, etc. Unfortunately, this isn't the case for Bases Loaded. But we can learn to change names simply enough.


 


If you want to try your hand at it, I'd recommend you use the FCEUX emulator as it has a hex editor built into it. Table Manager is a good tool for building table files.


 


So open Bases Loaded in FCEUX. Go to a text-heavy screen like the team select screen. Under the Debug tab at the top of the screen is "PPU Viewer." The PPU (Picture Processing Unit) is the part of the Nintendo hardware which stores all the images used in any given screen of gameplay. In the PPU for Bases Loaded, you'll see a number of English letters on the right-hand side. Open Table Manager and enter the letters as they appear in the PPU (putting the letter "A" in box 8F, "B" in 8E, "C" in 81, all the way down the line. 


 


Once this table file is created, open Debug->Hex Editor in FCEUX. In the Hex editor that pops up, goto View->Rom File. This shows you the entire contents of the game. Then choose File->Load .*TBL File and choose the tbl file we just created for Bases Loaded. With this table loaded, you can search the hex for player names. Goto Edit->Find and type "JONES" (first clicking the "Text" option beneath the search box) to look for Philly's first batter. The hex editor then takes you to Hex Location 12058. Highlight the J in Jones and change it to a B. Then file->Save As and save your changed rom as "Bases Loaded Edit.nes" (for example). PLaying this changed rom will show Philly's first batter as "BONES."


 


Its not a lot, but its a start. I suspect stats are stored similar to the names, in a giant block, probably somewhere near the block of names. If you want to continue, I suggest going to the documents section of romhacking.net and searching for documents on "NES Pointers." Pointers are tiny bits of Hex which point the game engine to data in the rom (such as player stats). If you get that far, and find the hex for player stats, the rest is trial and error. You'll also need to become comfortable changing between Hex values and regular number values (0A=10, FF=255, etc). The calculator built into Microsoft Windows has a simple decimal to hex function which I find quite useful.


 


Remember that as this game was programmed in Japan, pitch speeds are generally stored in Kilometers per Hour rather than mph. Stats which exceed hex value FF (255) such as ERA and Batting average are usually stored in reverse byte order. A .305 batting average is usually stored in hex as 31 01. 


 


This may be crazy overwhelming, but I assure you its not that difficult. Changing names and stats is pretty elementary once you get over that first hill of learning hex and tables. 


Link to comment
Share on other sites

If you play curve pitch, RBI has realistic pitch/inning stats and not a lot of HRs...that said, nice to have more games getting hacked, even if I wasn't a huge fan of BL...maybe I need to give it another shot.  If you get the data, an editor can be easily created for this kind of thing...


Link to comment
Share on other sites

Keithisgood, thanks for the tips! When I get some free time, I am going to take a closer look at the ROM, and see what editing I can do. Goals would be to first change names of teams to current MLB teams, perhaps using the the 10 playoff teams from last year, plus 2 other teams (Bases Loaded only had 12 teams). Then, edit the player names and stats, and finally, properly edit team colors. That would be a great start, IMO.

Later, would work on attempting to add all 30 teams, figure out how to create a schedule with all of those teams, assign different ballpark dimensions for each team (just change the outfield walls' distance?) and go from there. Can't remember if a season was the complete 162, 100 or 144. I'm thinking it was 100. Would be nice to change to 162.

EDIT: From looking at a downloaded manual, the season is 132, with it automatically stopping and declaring you the champ if your team wins 80. I'm sure that could be edited somehow to 162 and no "80 win" automatic champions setting.

Edited by iladelf
Link to comment
Share on other sites

  • 3 months later...
  • 3 weeks later...

Never liked the pitching in Bases Loaded....far to easy to hit.  Strikeouts were rare as my buddies and I would only get a couple per game.


 


Felt that got fixed a bit too much in BL2, as it was much harder to hit.  Biggest pet peeve with BL, was the fact that you couldn't hit a ball down the line, which looked like a homer, but that would eventually tail foul.  RBI got that feature perfect as many balls slide foul at the last moment, or stay just fair by a mega pixel.  


Link to comment
Share on other sites

ok. so heres the data.

 

batter data

bos 1cd7e

ny 1cf5e

philly 1d13e

dc 1d31e

jersey 1d4fe

miami 1d6de

kansas 1d8be

utah 1da9e

hawaii 1dc7e

omaha 1de5e

texas 1e03e

la 1e21e

 

pitcher data

bos 1e3fe

ny 1e476

philly 1e4ee

dc 1e566

jersey 1e5de

miami1e656

kanas1e6ce

utah1e746

hawaii 1e7be

omaha 1e836

texas 1e8ae

la 1e926

 

positions

boston 18fb1

ny18fba

philly18fc3

dc18fcc

jersey18fd5

miami18fde

kansas18fe7

utah18ff0

hawaii18ff9

omaha19002

texas1900b

la 19014

 

1b54e uniforms

18e4c team names

11ef0 player names

18e12 team abbrevs scoreboard

191de team abbrevs team select

 

harris of boston=50030a09002103000028019a0100

50=lh white mustache (see below)

03=hitting/power/whatever
0a=running speed
09=position- doesnt seem to change anything for starters- bench players are 06=outfield 02=infield 01=catcher
00=one thing this changes for sure is the bat placement for slim batters 00=outward 01=up and down 02=behind head
2103=batting avg (321)
00=batting stance 00=croutch 01=bat outward 02=slim
00=charge mound when hbp 00=no 03=yes (one guy is 43 - dont know why)
28=homers
01= dont know
9a= jersey number displayed on scoreboard (hex value 9a=7)
0100 = pointer to name

 

00 RH WHITE
10 RH WHITE MUSTACHE
18 RH WHITE BEARD
04 RH BLACK
14 RH BLACK MUSTACHE
1C RH BLACK BEARD
40 LH WHITE
50 LH WHITE MUSTACHE
58 LH WHITE BEARD
44 LH BLACK
54 LH BLACK MUSTACHE
5C LH BLACK BEARD

 

 

 

fine of bos=01020c01040204010268
0102= (see below)-
0C=max speed
01=curve ability I think
04=curve ability I think
02=curve ability I think
04=stamina I think
01=jersey number
    standard wind up: $03-$29 = x46D07-x46F0C in tile editor
    fox style: $2A-$33 = x42F04-x42F0B
    car/fine stlye: black skin: $00 = x48F08; white skin: $01 and $02 = x48F09 and x48F0A respectively
0268= era


0003= RH WHITE+BROWN HAIR/BEARD
4003= LH WHITE+BROWN HAIR/BEARD

0004= RH WHITE+BLACK HAIR
4004= LH WHITE+BLACK HAIR
0005= RH BLACK+BLACK HAIR/MUSTACHE
4005= LH BLACK+BLACK HAIR/MUSTACHE
0200= RH WHITE "FOX STYLE"
4200= LH WHITE "FOX STYLE"
0600= RH BLACK "FOX STYLE"
4600= LH BLACK "FOX STYLE"

0100= RH CAR STYLE
4100= LH CAR STYLE
0101= RH QUINTA STYLE
4101= LH QUINTA STYLE

0102= RH FINE STYLE
4102= LH FINE STYLE

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...