Here's an example. For a custom character "koopatroopa" that uses baseID 1, if player 1 is koopatroopa and player 2 is mario this happens:

Mario's hitboxes have been unintentionally changed because the character ID "1" has been changed when koopatroopa was loaded.
I've combed through the "playermanager" and "character" scripts (note I'm using SMBX2, not PAL), but it looks like there isn't any way of altering an individual character's hitbox without altering the hitbox of the base character. I'm guessing that creating new baseIDs is impossible because they aren't in the original game, correct? Ideally, I'd be able to have custom characters still use those 5 bases for their physics, etc., but have their .ini files only apply to themselves. I also thought that I could just manually change the height/width of custom characters in their scripts using player.height/player.width, but this wouldn't fix the offsets and it glitches when I try that anyway (changing the height causing the character to skyrocket upwards).
Any ideas on a solution for this? Help is appreciated but not expected. Thanks