News:

RIP GoReds

Main Menu

Existence of the "groundball" attribute ?

Started by nightwulf, 12/15/02, 02:04:35 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

nightwulf

With all due respect to the creators of RBI Manager, I don't think there is a "groundball" attribute.

Based on the changes RBI Manager made to my ROM, their idea is that a one-byte (0-255 decimal) number is used to represent a hitter's power, and a second byte stores the presence of the "groundball" attribute. If that byte is 02, they have the attribute. The byte is 03 if not.

For example, the following (hexadecimal) values are found within the data for Coleman and Clark of the Cardinals:
Coleman- FA 02
Clark- 7B 03

RBI Manager's idea is that Coleman has a power of 250 (FA), but has the groundball attribute (02). Clark has a power of 123 (7B), but does not have the attribute (03).

This doesn't make much sense to me. Why they'd waste an entire byte for something that could be determined with one bit is beyond me. The use of "02" and "03" to represent the status of the attribute also seems strange.

My idea is that the two bytes together represent the hitter's power. Using this theory, power is represented as a 2-byte (0-65535 decimal) number. With the above data, Coleman's power would be 762, and Clark's 891. It's definitely possible to hit homers with a player with the attribute set (I hit one with Coleman earlier today in fact, heh). This would also explain why "groundball" players have ridiculously high power ratings in comparison to non-GB players under RBI Manager's theory.

I tried playing with each hitter of my team's power set to 255 with groundball, and then with everyone's power set to 0 and no groundball. There was no noticable difference. Using my theory, this would give each player first a power of 767 (power 255, GB), and then 768 (power 0, no GB), which would explain the similarity.

Any comments? I'd be happy to post "groundball theory vs. my theory" stats for any other players as well if anyone's interested in the numbers.

Nightwulf

SmokedUBad13

The RBI Baseball Championship of the Universe Tournament @ www.rbibaseballcotut.com

Gantry

What you say makes sense, but why would the first byte of the power field be stored as the second byte?  

I still think what you are saying is correct, but can you test this out by going beyond the RBI Manager?  What if you made the second stored byte a 04 instead of 03?  If they are jacking homers left and right, what you said has to be true...

Another curious question - what's the whole point of this second byte?  Why didn't they just use a one-byte field if there was no GBA?  High power hitters don't use the upper ranges of the byte, so why just do everyone on a 0-255 scale?  Very odd...

nightwulf

Actually, storing 2-byte values in "reverse" order like that is very common in assembler. I couldn't tell you the exact mechanical reason why, but it's something I run into everywhere. Who said learning 65C02 assembler on my Apple //c wouldn't ever come in handy rofl~.

I haven't specifically used 04 as the high byte, but I did try "00 FF". Using RBI Manager's method this would give a power of zero, and an undefined value for the groundball attribute. My theory would give this batter a power of 65280. I actually reset the CPU 'cause I was tired of waiting for one of my fly balls to drop. ;D

My only idea for the use of the second byte is as the high byte of a 2-byte "power" field. You're 100% correct tho, I don't see why they wouldn't simply use a 1-byte field and scale it differently. It's possible that this number is a part of some mathematical formula that determines the ball's velocity, and maybe the desired results were easier to attain with a broader range of power ratings. I have no idea. Then again, a 1-byte field is used to represent whether a batter is RH or LH, which is a waste of 7 bits per player too. /shrug

Nightwulf

Gantry

QuoteI haven't specifically used 04 as the high byte, but I did try "00 FF". Using RBI Manager's method this would give a power of zero, and an undefined value for the groundball attribute. My theory would give this batter a power of 65280. I actually reset the CPU 'cause I was tired of waiting for one of my fly balls to drop.

Bingo...  It has to be a 2-byte power field then.  As to why they decided to go this route, I guess we'll never know.  But the groundball attribute is a fallacy, that's for sure.  Will update the FAQ soon...

sucka free