Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AI Improvements possible? #15

Open
EliasHeydrich opened this issue Mar 3, 2024 · 1 comment
Open

AI Improvements possible? #15

EliasHeydrich opened this issue Mar 3, 2024 · 1 comment

Comments

@EliasHeydrich
Copy link

EliasHeydrich commented Mar 3, 2024

I have not looked at the source regarding how the AI works exactly, but after replaying this and finishing the cup on hard in about 2h without ever loosing, I am a bit shocked about how weak the AI is. In all tracks, but some tracks particular, like the "Ice Age"-Level or the "Great Wall", the AI drivers can and often will be utterly stuck on an obstacle for what feels like a minute.

My question is: Can something be done to improve AI awareness of the track or mitigate issues of the existing implementation?

I envision a sort of an enable advanded AI routines-checkbox in the settings, keeping the original behavior intact and as default, so that people like me can have the same moment of gosh, that AI is shit-revelation 20 years later 😉 .

@jorio
Copy link
Owner

jorio commented Mar 5, 2024

DoCPUControl_Car() basically follows a path baked in the map. If it detects that it’s heading for an obstacle, it’ll try to swerve around it and get back on the path. If its position has barely moved within a second, it decides that it’s stuck, goes into reverse for 4 seconds, then it hits the gas again.

Then there’s the difficulty level, which affects some of the car physics and whether or not the CPU cars will use their powerups.

Perhaps the obstacle detection could use some work. For instance, in Crete, one of the CPU cars pretty consistently hits one of the pillars at the start.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants