I spotted another issue, when the CARBOX.bmp is written with capital letters, game decides to allow to change to that "skin".
That's another reason to create a new folder, in which the car skins would be placed.
I also came up with a different idea on how the skins could be remembered by the game; they don't have to be numbered through a skins.txt file (which would bring some problems), but instead the game would load, display and remember the skin file names
, so the player doesn't have to pick the skin all the time after changing the car for a second or loading the game again, and players would be able to differentiate one skin from another by their names, which would be determined by their file name. Of course the skins would have to be appropetiately named beforehand. The custom skins sitting in the "skins" folder could be named either "toyecatxblack" or just "black", "caryellow" or "yellow". The game would display it as just "BLACK" or "YELLOW" below the selected car skin. Something like that (ofc with a proper font):
On the other hand, I think that the AI should always drive with the stock skins, no matter of the player's skin of choice.