No idea where the urge to figure this out came from, but here's how a pitcher's stamina works.
Say, for example, your pitcher starts with a stamina of 64. Think of this like his "hit points" if he were an RPG character. Every time you throw a fastball or sinker, this number is lowered by two. Throwing a curve (anything non-fastball or non-sinker) lowers the number by one. Stamina does not change between innings; if you end an inning with 40 remaining stamina, it'll be 40 when you take the mound again.
Once your stamina hits zero, all hell breaks loose. From then on, every pitch you throw (until you "bottom out") lowers your pitching ability as follows:
Fastball/Sinker: sinker speed -4, curve speed -4, fastball speed -4, curve ability -17, sinker ability -1
Curve: sinker speed -2, curve speed -2, fastball speed -2, curve ability -17, sinker ability -1 every other pitch
It isn't quite that simple tho. Once a pitcher's curve ability hits 80, it then drops by 16 each pitch. And sometimes, it didn't drop at all for a pitch. I'm not entirely sure how it works. It's probably related to the pitch count, which I didn't even know the game kept track of, but throwing curves consistently lowered sinker ability by one every other pitch, so it must.
Stats will continue to drop until you "bottom out." Sinker ability, curve ability, and stamina all bottom at zero. Sinker speed bottoms at 88 points lower than the original number, and curve and fastball speed bottom at 90 points below the original.
This isn't a perfect explanation of pitcher stamina, but it's pretty close. I still need to play more games with different pitchers and watch the data, but this should give you a pretty good idea of how it works.
Nightwulf
well its good someone finally figured it out, but different pitchers have different staminas, right? so you still wouldnt be able to figure every pitcher out unless you had a sheet of staminas ready.
Aye, each pitcher has their own starting stamina value. Most starting pitchers are around 64, and relievers around 16.
Nightwulf
Well done nightwulf... I'll experiment with this shortly as well...
Check my team pages for individual pitcher stamina...
I have a question . . . When I throw a curve, does the greater the degree of curve I use affect the stamina more?
From what you are saying, if I just press A to throw a BP fastball (or a "curve" that doesn't curve), it will take off one point from my stamina, and if I throw a curve on the next pitch and hold the right arrow on the D-pad down to make the pitch break as far as it can it still only takes off one point. Is that correct?
Yep. As far as the game is concerned, if you're not throwing a fastball (with down) or a sinker (with up) then you're throwing a curve. Whether you just push "A" and let it float, or curve it as much as you can, it's still the same pitch stamina-wise.
Nightwulf
Just like in real baseball.
HA
brilliant wolf!!!
It seems to me that pitchers seem to tire a lot after giving up a home run. Is there any evidence to support or dismiss this theory?
Just tried it; no change made to stamina after a home run. Good question tho.
Nightwulf
i dont know where you found all this information nightwolf but it is as if you've uncovered the rbi rosetta stone.
I was reading the FAQ & noticed Gantry hadn't updated the pitcher's endurance. So I did a search here for Nightwulf's excellent post. And upon reading it I came across:
Fastball/Sinker: sinker speed -4, curve speed -4, fastball speed -4, curve ability -17, sinker ability -1
Curve: sinker speed -2, curve speed -2, fastball speed -2, curve ability -17, sinker ability -1 every other pitch
It isn't quite that simple tho. Once a pitcher's curve ability hits 80, it then drops by 16 each pitch. And sometimes, it didn't drop at all for a pitch. I'm not entirely sure how it works.
I'm wondering why curve values get reduced by 17? But then I remembered back then we didn't know that the Curve ability was really two numbers - curve left & curve right (I'm going to call them C1 & C2, since we haven't figured it what left & right mean). The curve stat, for those that aren't named me or Nightwulf, is made by taking C1*16+C2. It's range is 0 to 255, so C1 and C2 are inbetween 0 and 15. So when he says the curve ability is subtracted by 17 - it's really subtracting 1 from C1 and 1 from C2. That's why sometimes the curve ability sometimes drops by 16, and sometimes drops by only 1. Dropping the entire curve value by 16 is reducing C1 by 1, and dropping it by one reduces C2 by 1.
Now maybe we can figure out EXACTLY when these values get reduced by one, and maybe why? But that may be for another day.
Mike
Another question, a pitcher listed with 40 stamina has 64 "hit points", right?
Uhh, no. 40 stamina = 40 "hit points".
Nightwulf had said in a previous post:
"Aye, each pitcher has their own starting stamina value. Most starting pitchers are around 64, and relievers around 16."
When I saw that most NES pitchers had stamina's of 40, I thought maybe there was some sort of Hex conversion 40*1.6=64, I don't have much computer knowledge though, I guess this was a bad assumption
Actually, since Nightwulf is actually the Matrix, his internal math is all done in binary, which is converted to hex or decimal as needed. Sometimes, due to occasional glitches, he forgets which he's currently using and makes a conversion when none is called for. Usually the glitches manifest themselves as deja vu, but this happened to be a different type of error.
So can I also assume that giving up a long foul ball does not change a pitcher's stamina any more than a weak foul ball?
We always kinda thought it did.
Yeah, sometimes after I've been working in hex I forget to "talk" in decimal. My bad. :)
This post was made before we discovered that pitchers have separate stats for curves. That's something I ought to look at ...
Nightwulf
Here we go. Pitcher stamina explained, by reading the disassembled source code of the ROM.
Following is the routine that decreases a pitcher's stats once his stamina has hit zero. Every time a pitch is thrown (at stamina 0) the following routine is run ONCE if a curveball is thrown, or TWICE if a sinker or fastball is thrown.
1- Look at the pitcher's sinker speed. If it's less than 64, jump to step 7.
(This gives sinker speed a "floor" of 64, and once it stops dropping, fastball / curve speed do too).
2- Subtract 2 from the sinker speed.
3- If sinker speed is an odd number, subtract 1 more.
(Basically, if the pitcher's initial sinker speed is an odd number, the first time this code runs it will be decreased by 3. The sinker speed must be an even number. You'll see why on step 6.)
4- Subtract 2 from the curve speed.
5- Subtract 2 from the fastball speed.
6- Look at the "new" sinker speed. If it's not evenly divisible by 4, jump to step 10.
(This is why curve/sinker abilities drop every other curve ball. Sinker speed is an even number and reduced by 2 each time this code runs. Therefore it will be evenly divisible by 4 every other time this code runs.
7- Subtract 1 from "curve left" ability if it is greater than zero.
8- Subtract 1 from "curve right" ability if it is greater than zero.
9- Subtract 1 from sinker ability if it is greater than zero.
10- end
I think that's about as "plain english" as I can get it. Binary math doesn't translate well to english. Remember that that whole block of code runs twice for sinker/fastballs, and once for curveballs. This is why the curve/sinker abilities drop by 1 on every sinker/fastball, or drop by 1 on every other curveball.
Nightwulf
Interesting potential side effect of this: if you were to create a pitcher with a HUGE sinker/fastball split (64/216, which would translate to about a 30 mph sinker and a 103 mph fastball), no matter how tired he gets, he would never throw slower. 103 mph gas in the 18th inning, just dead straight with no sink.
Might be fun to play around with...
along those lines, I thought about putting together a ROM with a whole bunch of crazy attributes--just to see how the game plays out. Unfortunately, I never did.
All did ya! 8)
wupst
Hi Dryden,
Is that really you in that picture? Anyway Doc has the stamina to last about 9 good innings .If you play him correct.
you must be a damn code master... now thats all we need are those 2 unknowns ???