Jump to content
Tecmonster

allowing COM RB's to jump off the tracks early

Recommended Posts

So I'd like to give COM RB's the same freedom that MAN RB's have -- to run anywhere you want immediately after taking the handoff.  I think this will help prevent MAN defenders from easily blowing up running plays behind the line of scrimmage because we know exactly where the RB's prescribed path is before that RB gets to "cut loose" and free-form it.  Playing defense is sometimes like ambushing a train -- too easy.


 


I'm just having trouble figuring out exactly where the code takes off the RB's reigns.


 


For instance, the HB's instructions for the T Power Sweep (pointer 4BA4) are at x845B.  There, the code (with my current understanding of the code in parenthesis) is:


F3 (stand)


14 (time standing)


D8 (move)


F0 (x location to move)


C8 (y location to move)


E4 (player takes control) --> this is the point that I'd also like to see the COM RB cut loose


D8 (move)


18 (x location to move)


D0 (y location to move)


C8 (COM jump to) --> this is where I start getting lost


73 A4 (pointer???)


09 (m2m Player???)


C8 (time???)


77


A4


05


C8


7B


A4


. . . I don't know where the current player instructions end and where a new string begins at this point.


 


Can anyone help with this?


 


 


Share this post


Link to post
Share on other sites

I'm feeling generous so I'll point you in the right direction and see if you can figure it out first. 


 


From the command document ...


 


 


C8 needs 3 bytes as its arugment 3 byte command(pointer, random)  so that's your first error.


 


The command for the computer to take control is DF


 


The command to loop back is FE

Share this post


Link to post
Share on other sites

place this AFTER your E4 (MAN takes control) command:


 


FCFFE0DFFEFC


 


(I use this all the time - I extracted it from some of the original TSB RB code)


 


Stay thirsty, my friend.


Edited by buck

Share this post


Link to post
Share on other sites

There is no point to putting the


 


FC FF EO for the com controlled RB that is running. He's not going to block anyone so its just a waste of space. 


 


If you want to give the computer control right after the E4 (man control) command all you need  is


 


DF =(com takes control)


FE =Loop(following byte= amount to loop)


FF = bytes to loop backward or forward = -1 = loop back to DF command


Share this post


Link to post
Share on other sites

I am not convinced, my friend.  The preceding looped bytes tell the COM RB to avoid all defenders, do they not?


 


Anyways, if it is that easy as you say (THREE FUCKING BYTES), why did the GENIUSMOTHERFUCKINGBRUDDOG not just answer OP from the start???


 


and you gave me a negative for trying to help him, DOUCHEDOG?  those bytes I posted are money and are what he's looking for.


 


stay douchebaggy, my friend.


Edited by buck

Share this post


Link to post
Share on other sites

Because im trying to get him to better understand what hes doing rather than spoonfeeding him the answer. And guess what he figured it out with my tips.

The FC command is a set to block commnand. The following two bytes tell what players to block bitwise FF E0 = all players can be blocked. So its pointless for the ball carrier.

Share this post


Link to post
Share on other sites

so you are saying that


 


FC FF E0 DF FE FC


 


will make the COM ball carrier do the exact same thing as:


 


DF FE FF


 


?


 


holy shit I think you're right.


Edited by buck

Share this post


Link to post
Share on other sites

So why is FE FF necessary after the DF?  Originally, I entered the DF directly after E4 and left the rest of the original code in tact and that seemed to work.  Would excluding the FE FF eventually lead to some sort of glitch?


Share this post


Link to post
Share on other sites

so you are saying that

 

FC FF E0 DF FE FC

 

will make the COM ball carrier do the exact same thing as:

 

DF FE FF

 

?

 

holy shit I think you're right.


>https://www.youtube.com/watch?v=07wuZ3EWMAA

Share this post


Link to post
Share on other sites

So why is FE FF necessary after the DF?  Originally, I entered the DF directly after E4 and left the rest of the original code in tact and that seemed to work.  Would excluding the FE FF eventually lead to some sort of glitch?

 

In the original rom play code DF  is always followed by the loop back command FE FF. Looking at the code it's not clear that its needed as there is no way to break out of the DF play code loop. But I think its there for rare edge/glitch conditions as VERY rarely got it to do wacky stuff by putting a bogus jump command after it.  

Share this post


Link to post
Share on other sites

Hm, ok thanks.


 


Another question along similar lines: I've been trying to speed up the COM QB on his rollouts, so I've been experimenting by inserting the E0, E3, and E2 commands (speed boosts) into the QB's command line, but it's not working like I had hoped.  When I try to boost the RP with the E2 command, it seems to increase his MS because he moves much faster on the times that he decided to scramble. Seems to me, that a crazy high RP should just instantly propel him to his MS -- not make his MS higher, right?


 


When I try to boost his RS (and I've been trying to boost it by A LOT because I know RS is on a slower scale than MS), it doesn't seem to do anything substantial.


 


I don't actually WANT to boost his MS because I just want to make his rollout faster, not his scramble, should he decide to take off with it instead of passing.


 


I've been fitting in these two-byte boosts by removing the two bytes "F0 80" further on down the list, since that seems to be a cosmetic command (face-direction).  I'm out of player instruction space, or I'd just write a new command line.  Anyway, that's just an aside.


 


Any insight into this one?


Share this post


Link to post
Share on other sites

Hm, ok thanks.

Another question along similar lines: I've been trying to speed up the COM QB on his rollouts, so I've been experimenting by inserting the E0, E3, and E2 commands (speed boosts) into the QB's command line, but it's not working like I had hoped. When I try to boost the RP with the E2 command, it seems to increase his MS because he moves much faster on the times that he decided to scramble. Seems to me, that a crazy high RP should just instantly propel him to his MS -- not make his MS higher, right?

When I try to boost his RS (and I've been trying to boost it by A LOT because I know RS is on a slower scale than MS), it doesn't seem to do anything substantial.

I don't actually WANT to boost his MS because I just want to make his rollout faster, not his scramble, should he decide to take off with it instead of passing.

I've been fitting in these two-byte boosts by removing the two bytes "F0 80" further on down the list, since that seems to be a cosmetic command (face-direction). I'm out of player instruction space, or I'd just write a new command line. Anyway, that's just an aside.

Any insight into this one?

Can you write out an example of what youre editing, so we can see the whole code?

Share this post


Link to post
Share on other sites

Sure, here's the original QB command line for the Pro T Waggle R:


D4 D8 FE E0 D8 F8 D0 62 E4 D8 00 C0 D8 08 B8 D8 18 B0 D8 28 B0 F0 80 2B . . .


 


Here's how I changed it to add an RP boost:


D4 D8 FE E0 D8 F8 D0 62 E4 E2 36 D8 00 C0 D8 08 B8 D8 18 B0 D8 28 B0 2B . . . (I removed the F0 80 towards the end of the line to make room for the two added bytes in bold)


Edited by Tecmonster

Share this post


Link to post
Share on other sites

Maybe you are using an old version of the command document.....i re-verified in code dissassembly that these are what the following commands do


 


I have


 


E0 = SET RS= This sets the RS to a fixed value. E0 00 = set RS to 6.  E0 0F = Set RS to 100


E1 = SET OR RESET MS + COM JUICE. E1 00 sets the players MS back to their default value plus any juice. E1 01 would set it to 13 MS 


 


E2 = BOOST RS This lets you boost the players MS up to a max of 100.  E2 01 = boost 1 skill notch. 


E3= BOOST MS This lets you boost the players MS up to a max of 100.  E3 01 = boost 1 skill notch.


Share this post


Link to post
Share on other sites

So E2 doesnt boost RP. And E2 36 isn't correctly formed statement either. 


 


You're going to have set the QB's MS faster before the move commands by using a an E3 XX command and then set it back down to his original speed by using a an E1 XX 


Share this post


Link to post
Share on other sites

so, why would the original TSB programmers use the "FC FF E0 DF FE FC" running back code I posted when they just could have used "DF FE FF"  ?


 


there's got to be something else to this.

Share this post


Link to post
Share on other sites

 

FCFFE0DFFEFC

 

(I use this all the time - I extracted it from some of the original TSB RB code)

 

Stay thirsty, my friend.

 

 

 

>https://www.youtube.com/watch?v=JmDheMx_bGA

 

 

 

 

 

They wouldn't because that hex sequence doesn't exist in the original rom...killing me man!! LOL

Every RB sequence where that RB is the final ball carrier  ends with with....JumpTo B838= 4C 38 B8

 

TakeControl; ComputerTakeControl; LoopBack FF//

at 0x9848 since we are looking at offensive commands you have

TakeControl; ComputerTakeControl; LoopBack FF = E4 DF FE FF.

This case is closed.

Share this post


Link to post
Share on other sites

:huh: well fuck me in the goat ass!  I use it all the time to do what OP is asking!   I could have sworn I found it in the original game...sheeeit.  maybe I came up with it one evening of pouring booze?


Edited by buck

Share this post


Link to post
Share on other sites

Maybe you got it confused with one of the common defensive sequences.


 


FC FF EO DA FE FC ( Set can collide with all players , chase ball carrier versoin 1 , loopback) 


 


FC FF EO DD FE FC ( Set can collide with all players,  chase ball carrier versoin 2 , loopback)


Share this post


Link to post
Share on other sites

OK, well, here's what I've found (and I was using an old command list that shows the E2 command was an RP boost): 


Boosting MS with the E3 command doesn't make a noticeable difference.  I used E3 08 (in case every 01 was a one notch increase) and E3 2C (in case every 04 was a one notch increase) and the QB didn't seem to run any faster on his rollout. 


 


When I used the E2 command followed by 2C it definitely increased his rollout speed.  With this boost command, I think every 04 = boost 1 skill notch, because when I used E2 04, I saw no substantial change in the QB's speed from before and after the fake handoff.  Using 2C though . . . definitely.


 


It's difficult for me to tell whether the E2 boost effects his MS once he decides to tuck-and-run though.  At first, it looked like it did but now I'm not so sure.  That's the new issue.


Share this post


Link to post
Share on other sites
On 5/8/2015 at 9:38 PM, bruddog said:

Maybe you are using an old version of the command document.....i re-verified in code dissassembly that these are what the following commands do

 

 

 

I have

...E1 = SET OR RESET MS + COM JUICE. E1 00 sets the players MS back to their default value plus any juice. E1 01 would set it to 13 MS

...E3= BOOST MS This lets you boost the players MS up to a max of 100.  E3 01 = boost 1 skill notch.

 

I have a problem:  I have a comeback route going on my rom.  The player is running to a D8 location (near the sideline, but in order to make things work I hade to enter in a MS boost (e3 09); otherwise the receiver won't be fast enough.  After this though I wanted him to reset.  I even entered e1 00 twice before ff 32 b8; however, the reset command doesn't take (presumably) because the receiver catches the ball before he hits the end of the d8 command (you have to lead the TE, otherwise it doesn't work).  Does anyone know if there's a clean way to fix this?  I'm thinking that I'll just wind up calling for the reset part way through the path to the d8 command and then finish it (so something like: e3 09 d8 yy xx for 2/3 of the way and then e1 00 d8 yy xx to desired spot), but that too might get funny I was wondering if anyone had any insight.

Share this post


Link to post
Share on other sites

As I was reading your problem, the solution I was thinking of in my head is the one you proposed at the end of your message.  I would speed him up for the initial "go" part of his route, but then reset his speed before he starts his comeback route.

Share this post


Link to post
Share on other sites

@Tecmonster:  You gave me an idea.  I was talking about F3 21 timing pause to jive with other routes | D8 27 00 level off from slot position | D8 27 60 continue fwd ("go") | D7 01 01 | D7 00 02 round out (otherwise you decelerate) | E3 09 boost | D7 03 F8 boost-effected burst (made short now; see above) | E1 00 reset boost | D8 3B 28 continue to spot | FF 32 B8 stand forever

 

The problem is that it's REALLY difficult to test to make sure that you won't reasonably hit a boosted WR/TE if you throw it really soon.  Your idea of boosting during the "go" (or into the rounding out) though might really be worth trying though.  It may well make things cleaner looking (a quicker turn) and more certain with respect to the reset (I can stop it sooner because you can't throw during the cut or the ball will sail).  I'll update this if that's what works just to document it.  Thank you.

Edited by quince3800
typos noticed and fixed

Share this post


Link to post
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.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...