Hello, I wanted to share something on discord, but there is no discord, so I wanted to post it in game discussion, but I can't, for some reason. Only place I can seem to be able to post is here.
Anyway I patched Lego LOCO to run in 32 bit color mode so we don't have to use compatibility patches anymore! I did this in about an hour and barely tested it, it runs but seems to have some glitches.
It's a start I suppose.
Here's the EXE I patched : https://www.mediafire.com/file/ej631ovkkyy3s01/loco.exe/file
It's taken straight from the installation provided from this ISO here: https://www.myabandonware.com/game/lego-loco-bc2
Here are the exact patches I did:
The function 0x406680 handles checking for video capability and exiting early with an error if video requirements are not met. I named it 'CheckVideoCaps'
At 0x4066BD it exits early if the color count is -1, which on 32 bit color systems, it is. So I nopped this part to prevent the jump out in case of incompatibility (wrote 0x90, 6 times, from 0x4066BD to 0x4066C2)
Next around 0x4066F0 it exits early again if the window/Screen is too big. It expects it to be under 1280 pixels and then 900 pixels I think. So I changed those two checks to jump directly to the success condition and bypass the checks entirely. I turned the JGE at 0x4066F4 into a JMP (0xEB) and the JNZ at 0x40671F into a JMP (0xEB), both relative 8-bit.
This effectively makes the game ignore those video limitations and run. hooray!
The main menu is glitchy and all black, but if you navigate your mouse around you will manage to find the "play" button (bottom right corner) and get ingame, at which point the game looks pretty much normal.
We could probably do more patches like this until the game run smoothly
Have a nice day and hit me up if the discord comes back up