CMigs

How TSB decides strength of CPU opponent?

43 posts in this topic

Something I've always wondered:

As someone who usually plays the CPU, I loathe the early season games in which the CPU plays at the level of a brain dead rat and a MAN can run off 60-0 without trying. Two questions regarding ways to avoid this:

1) Is there a way to edit the rom up the level of CPU crack?

2) What happens if you sim a season to the middle and take a team with an undefeated record?

I know that the rom gets harder as the season goes on. It also seems that the quality of the CPU is in part based on the MAN team's record. However, is that based on the team's record, or the player's record? If you pick up a team that is 8-0 at midseason, will the CPU be hard, reading an 8-0 team, or easy, reading a 0-0 player?

Share this post


Link to post
Share on other sites

I'm pretty sure there's a way to level up the CPU coming out of the gates.

Someone has posted the crack code locations on here before, but I'm not sure there was a detailed explanation of what does what.

Would be interesting to mess with though.

Share this post


Link to post
Share on other sites

If anyone knows where that is let me know, as it would be awesome for CIA. It's a coaching league where we have both MAN and CPU controlled teams. Because the Week 1 CPU isn't as hard to beat as playing the same team in pre-season, all of our games played against CPU-controlled teams are played in pre-season.

The problem with this is that there are no injuries when playing in pre-season, which I would like to be a possibility in every game that is played, not just the MANvMAN ones.

Share this post


Link to post
Share on other sites
If anyone knows where that is let me know, as it would be awesome for CIA. It's a coaching league where we have both MAN and CPU controlled teams. Because the Week 1 CPU isn't as hard to beat as playing the same team in pre-season, all of our games played against CPU-controlled teams are played in pre-season.

Computer Juice: x1DF10 to x1DF65

Hex Boost Order: Defensive Speed, Offensive Speed, Interception, Pass Control, Reception

Each level is decided by the team's Win/Loss Record with each win raising the level of juice. A team with 0 wins and 0 losses is the first set of numbers (also the preseason juice). A team with 1 win and 0 losses plays against the same juice as a team with 6 wins and 5 losses (the second set of numbers). Any team with 16 or more wins will play vs the final set of computer juice.

From what I could tell, the first set of numbers also affects some things like return speed for the MAN players and the like.

Share this post


Link to post
Share on other sites

so if you change all sets to the same as the last set, then every week will be like you have a 16-0 record, starting from week 1? Does this include the Pro Bowl?

Share this post


Link to post
Share on other sites

so if we have this in the ROM:

0001df10h: 00 01 00 00 00 01 02 01 01 01 01 02 01 02 02 01

0001df20h: 02 01 03 02 02 02 02 03 03 02 02 02 04 03 02 02

0001df30h: 02 04 04 02 02 02 05 04 02 02 03 05 05 02 02 03

0001df40h: 06 05 02 02 04 06 06 03 02 04 07 06 03 03 04 07

0001df50h: 07 03 03 05 08 07 03 03 05 08 08 03 03 05 09 08

0001df60h: 03 04 06 09 09

You're saying that the data in Red is what the teams use for Pre-Season data? I'm wondering if that's correct. The data in Red seems to be the lowest set of values, and I swear that Week 1 teams don't play as well as they do in pre-season. Is it possible that the green or blue collections are what are used in pre-season?

Share this post


Link to post
Share on other sites
so if we have this in the ROM:

0001df10h: 00 01 00 00 00 01 02 01 01 01 01 02 01 02 02 01

0001df20h: 02 01 03 02 02 02 02 03 03 02 02 02 04 03 02 02

0001df30h: 02 04 04 02 02 02 05 04 02 02 03 05 05 02 02 03

0001df40h: 06 05 02 02 04 06 06 03 02 04 07 06 03 03 04 07

0001df50h: 07 03 03 05 08 07 03 03 05 08 08 03 03 05 09 08

0001df60h: 03 04 06 09 09

The ones in red are definitely Preseason, Pro-Bowl, and Week 1. The ones in green are 1 win and the ones in blue 2 wins.

If you change all the values to 03 04 06 09 09 the computer will play like you are 16-0 every time that you play.

Share this post


Link to post
Share on other sites

I'm really going to have to do some testing to prove this to myself. I doubt one could really tell the difference if they are playing MAN against SF CPU in Week 1 or pre-season. Either way, you'll torch them.

But play those games in COA mode and I think you will see a difference, or at least that's what I'd like to prove.

No disrespect jstout, I'm just hung-up on this. How do you KNOW that the same values are used for both pre-season and week 1? Are you using a program that sniffs which values are loaded at gametime?

This brings up another question: Does the CPU go back and adjust these values during the game to enforce the "comeback" rule if you are crushing the computer? Is it just more likely that this occurs if playing in pre-season, making it seem more difficult to beat the CPU if the comeback rule just isn't applied during week 1 match-ups?

Share this post


Link to post
Share on other sites

Glad to see this got picked up.

For people who play the CPU, it'd be awesome to have the CPU at top juice all the time - the first weeks of the season are fairly boring for someone good at the game. It might also mean that I wouldn't be required to play with shitty teams for a challenge.

This might actually inspire me to learn some hex to do this for myself if no one releases a juiced rom.

Share this post


Link to post
Share on other sites

Wow, this is great info Jstout.

Especially with the way the juice data is broken up into different categories. This means that I can change my rom so that the CPU doesn't become almost impossible to intercept in the later weeks -- one of the things I was trying to address through player ratings.

Share this post


Link to post
Share on other sites

Just wanted to post my conversation with jstout just in case anyone else was following this. jstout, post your results when you get a chance!

(5:19:50 PM) snatches1: thanks for that cpu juice info, that is going to be very helpful for my league

(5:20:08 PM) Jlstout123: No problem. I've had that info for a long time

(5:21:29 PM) snatches1: i'm not convinced that preseason = week 1 values though

(5:22:41 PM) Jlstout123: I was getting ready to answer your question at the board. The FCEUXD emulator that came out a while back has saved me a lot of time for testing stuff. The emulator can be set to highlight and show which bytes are used. So I do know exactly which ones are get loaded.

(5:23:46 PM) snatches1: i figured you would say that, which just confuses me. I just have this gut feeling that it is more difficult to defeat the cpu in pre-season than in week 1

(5:24:34 PM) Jlstout123: I don't think so. I've never had a problem with destroying the CPU during preseason

(5:25:01 PM) snatches1: I would hope not :D

(5:25:17 PM) snatches1: remember, my comments all come from a COA perspective

(5:25:53 PM) Jlstout123: Ok, you want me to load up a COA in preseason and week 1 and see what loads?

(5:26:17 PM) snatches1: I'd love for you to, actually

(5:26:35 PM) Jlstout123: Ok. I'll load up a game and do a few plays then test the next one

(5:26:49 PM) snatches1: i probably need to get my hands on FCEUXD as well

(5:27:31 PM) Jlstout123: Yeah, 2 versions are out there at the moment. The original and the SP version which added some features to the debugger

(5:31:54 PM) snatches1: hey, I gotta run. if you would, just IM me your results or post them on the forum. I'm sure everyone would be interested in the results.

Share this post


Link to post
Share on other sites
Glad to see this got picked up.

For people who play the CPU, it'd be awesome to have the CPU at top juice all the time - the first weeks of the season are fairly boring for someone good at the game. It might also mean that I wouldn't be required to play with shitty teams for a challenge.

This might actually inspire me to learn some hex to do this for myself if no one releases a juiced rom.

If that is the only change you make to the original rom it would take about 2 minutes to do. I'll upload it when I get home later if no one else does by then.

A better idea would be for someone to create an IPS patch. Then you can easily juice any rom that you want. I'm not sure how to do that yet. Anyone want to do this?

Share this post


Link to post
Share on other sites

I'll be adding a 'Juice' option in the next version of TSBTool, along with playbook support, offensive formation support, support for cxrom's 30 team ROM and a much better GUI.

Share this post


Link to post
Share on other sites

Yeah, this is very good stuff for season players. It is nice that the AI juice is broken into categories.

OT - Do you think that the original TSB programmers had in mind that we would be breaking down this (greatest) game to such depths? I think it's strange that the best players in original TSB aren't even "maxed out" according to the internal rating system - like it was left open for...

peace

Share this post


Link to post
Share on other sites

Has anybody expieremented with values other than what's already in the ROM ?

Like anyone tried something like 03 05 06 09 0B ?

In order to see if you could make it even more difficult.

Share this post


Link to post
Share on other sites

Oh NO! Not more BS receptions!!! So with 0B as receptions can the CPU catch the ball with 5 people covering the WR?

But yes, higher values will work - I didn't go above 0F - but anyways, the CPU is fuxxing crazy fast. It's pretty funny to see.

BAD_AL wrote:

Like anyone tried something like 03 05 06 09 0B ?

Share this post


Link to post
Share on other sites
But yes, higher values will work - I didn't go above 0F - but anyways, the CPU is fuxxing crazy fast. It's pretty funny to see.

I also did some testing and can confirm that all 0F's makes the CPU impossible to beat. They tackled me in the endzone on a kickoff for a safety, if that paints the picture for you.

Unfortunately, I was disappointed to find out that the same effect does not occur when you play as COA vs. CPU. I played quite a few games in both Preseason and Season to see if there was a difference in the difficulty. I won some and lost some in both modes, leaving me wondering if there is any difference at all b/w the two play modes. More importantly, the way the CPU played was identical to the way they played before I set the initial "juice" variables to all 0F's.

I was really hoping there was a global way of juicing the CPU while playing as COA, but no dice.

I also downloaded that FCEXU emulator and tried to use the trace logger to see if any data from the addresses listed above was accessed in any way during COA mode. I'm not sure if I had it working properly, but after searching the trace log file that was created I did not see that those CPU "juice" values were accessed in any way.

Share this post


Link to post
Share on other sites
But yes, higher values will work - I didn't go above 0F - but anyways, the CPU is fuxxing crazy fast. It's pretty funny to see.

I also did some testing and can confirm that all 0F's makes the CPU impossible to beat. They tackled me in the endzone on a kickoff for a safety, if that paints the picture for you.

Unfortunately, I was disappointed to find out that the same effect does not occur when you play as COA vs. CPU. I played quite a few games in both Preseason and Season to see if there was a difference in the difficulty. I won some and lost some in both modes, leaving me wondering if there is any difference at all b/w the two play modes. More importantly, the way the CPU played was identical to the way they played before I set the initial "juice" variables to all 0F's.

I was really hoping there was a global way of juicing the CPU while playing as COA, but no dice.

I also downloaded that FCEXU emulator and tried to use the trace logger to see if any data from the addresses listed above was accessed in any way during COA mode. I'm not sure if I had it working properly, but after searching the trace log file that was created I did not see that those CPU "juice" values were accessed in any way.

just wondering snatches, you said you tested it out in preseason, would it maybe only take effect in season mode only? i havent really read the thread, just a thought

Share this post


Link to post
Share on other sites
I also downloaded that FCEXU emulator and tried to use the trace logger to see if any data from the addresses listed above was accessed in any way during COA mode.

use the debugger and set a break point on reads, rather then sifting through a trace log.

Share this post


Link to post
Share on other sites
use the debugger and set a break point on reads, rather then sifting through a trace log.

I tried that, but the "to" and "from" address fields will only allow 4-chars, and the juice data is located from x1df10 to x1df64.

Am I missing something here? Can you use the condition field somehow to stop when accessing these locations?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.