Shadow-Mapper lives (sort of)
After 13+ years I got curious to see if Shadow-Mapper would still build and run. Checked out the git repository and it was immediatly clear that it would not build let alone run.
So I decided to take up the challenge and see if I could make it run or at least build after all those years.
Step 1 - Replace build system The old version of Shadow-Mapper was build using netbeans and used the netbeans project files and way of building. I’ve decided to use Gradle as a build/dependency management system. Gradle is supported by many Java IDE’s and has great support in Intellij. After settings up the Gradle build file the project could still not build.
Step 2 - Find missing dependencies The project was still missing a lot of dependencies which where previously added to the classpath by the Netbeans project. Tracking down those missing dependencies was easy; Just search for the package on Google and in most cases the libs where available on MavenCentral.
Step 3 - Actually getting the project to work As the project is really old and was one of my first “big” projects, the code is terrible to say the least. I’ve had a few good laughs at the codebase but most of the time it made me sad (Might be worth a post on it’s own), it’s insane that this actually worked!
Some interesting changes that where required:
- GTA: IV has been updated so fetching the encryption key from the game needed an update.
- A lot of resources could not be loaded due to broken file parsing.
- The OpenGL canvas was only drawn once.
After a lot of minor changes the project is running again, without textures mind you.
This is the current status for now, not sure if I will spend more time on it, but at least everyone checking out the repository should be able to build the project!
Kotlin Multiplatform Chip-8 Emulator
I’ve been wanting to do something with Kotlin Multiplatform for a while now but couldn’t think of a nice project. As I’ve been interested in the world of emulation for a while, I thought it could be a nice challenge to create the “ hello world” of emulators, the ‘Chip-8’, using Kotlin Multiplatform.
The first working version of the emulator is now available on my GitHub https://github.com/KilianSteenman/KEmulation. The emulator works (without sound) on Android, Desktop and Web.
As much as I love Kotlin, writing an emulator was still annoying due to the lack of proper Unsigned types (Thanks Java!) . The experimental unsigned types implementation is just not that great to work with. Besides that it still feels like early days for Multiplatform, the setup is just not as straightforward and documentation is outdated or lacking.
Anyway I don’t expect to spend much more time on the emulator as it’s pretty much finished. On to the next coding challenge!
Sketchup2GTA: III is now available!
SA Support in Sketchup2GTA
San Andreas support is now available in Sketchup2GTA!
Starting from pre-release 0.7.0 it’s possible to export DFF, TXD, COL, IPL and IDE files in the San Andreas format. The COL file is still using the VC format, I’ve added the SA specific format to the projects roadmap. But first it’s GTA III’s turn!
Shadow-MSC and Shadow-MSP project pages