1. g00dman

    OP g00dman Member
    Newcomer

    Joined:
    Feb 22, 2017
    Messages:
    13
    Country:
    Hiya, two simple questions that probably don't have simple answers...

    Firstly, how would I disable the rubberbanding routine for the CPUs in Mario Kart DS? I'm not sure where it is in the memory or the ROM. I'd like the CPUs to all drive at their kart's normal speed at all times.

    Also, how do I get it so that a race only ends once 8th place crosses the line? Any help appreciated. Thanks very much
     
    Mr. Looigi likes this.
  2. FAST6191

    FAST6191 Techromancer
    Reporter

    Joined:
    Nov 21, 2005
    Messages:
    29,950
    Country:
    United Kingdom
    There was someone looking to do something similar on romhacking.net the other day that had a bit more, though no nice addresses I can give you to look at.
    http://www.romhacking.net/forum/index.php?topic=3282.msg391415#msg391415

    Neither are the sort of thing I would particularly suggest someone coming in brand new to hacking to attempt*, however they are both within the scope of what a game does, reasonable for an earlier stage assembly project and if it is the thing that sees you learn hacking then so be it.

    *you can mess with game functions but generally you would be pointed towards text, graphics and the like to get a feel for how formats work. Making cheats can also be a way in, especially for manipulating a game's functions, and while I would not bet against a simple cheat being possible for some of this I would also not bet on it.

    8th place not being needed to finish was likely added more to prevent trolls and disconnects from messing things up for people. It could be a simple enough thing where you change a number but it could also be much deeper

    Speed wise. If there is a mode that has everybody race as they would then see if you can fake that. Sometimes 150CC or mirror mode has this and it might not just be that but a flag the game sets differently. The link above mentions that the first two CPU characters will always race at full speed, and that . If I was programming it would either set a handicap to those later in the grid (they way C coding works means that would be fairly easy to pull off) or it would be in the coding itself to always have things. If it is just a handicap you can possibly do it with cheats, if it is in the code then try to find the CPU locations/information and speeds and see what is manipulating that number in a debugging editor.
     
  3. g00dman

    OP g00dman Member
    Newcomer

    Joined:
    Feb 22, 2017
    Messages:
    13
    Country:
    Actually, that was me :D

    I did find where player information was stored in memory - there are a few values I tinkered with (such as the one that assigns a CPU as a frontrunner - two of them will always have that set to 1) but none of them seemed to change anything about the rubberbanding. The CPU will drive at normal speed when in a solo time trial because it has no opponents to rubberband against. And the race finishing as soon as 1st place finishes is just a thing for VS races so that you don't have to wait for the CPUs to finish.

    I'll keep digging, but as you said it's not easy for a novice :P
     
    yuyuyup likes this.
  4. banjo2

    banjo2 little man
    Member

    Joined:
    May 31, 2016
    Messages:
    1,122
    Country:
    United States
    Doesn't it only go up to 4 players online?
     
  5. supergamecube

    supergamecube Advanced Member
    Newcomer

    Joined:
    Feb 24, 2015
    Messages:
    56
    Country:
    United States
    I'm from the MKDS Modding server, we already have editors, and such for the file that controls CPUs rubber banding in each course, if you're interested?

    Also, it's been known where player information is stored for a long time now.
    We used it for the speed-o-meters in the hacks that have them (GCGP, and EKDS).
    https://discordapp.com/invite/CAktUYP
     
Draft saved Draft deleted
Loading...

Hide similar threads Similar threads with keywords - Rubberbanding, Mario,