-
Wiring
06/26/2022 at 19:42 • 1 commentIt's terrible, but it works!
-
Coding stuff
03/03/2022 at 20:36 • 0 commentsThe interface work has been completed so far, just a detail shot of what it looks like up close.
-
Everything seems to work well so far
03/03/2022 at 20:34 • 1 commentI'm quite happy with the result! The backlighting effect looks nice, everything fits well. The next step is to work on the wooden enclosure.
I might try adding a layer of clearcoat. Maybe it helps to hide the scorch marks from the engraving, since the don't wash off completely.
-
Engraving
03/03/2022 at 20:30 • 0 commentsI engraved the outlines of the modules on a board and carefully aligned the modules to match before engraving the text layer. Some of the engraving is a bit off, I don't know why. I think it's good enough for me though.
I had to make a jig for the small buttons since they got blown away by the laser cutter's compressor. -
Painting
03/03/2022 at 20:25 • 0 commentsI sanded the white acrylic parts with 600 grit sandpaper and painted them twice with black acrylic spraypaint. I also prepared some circuit boards for mounting buttons later.
-
Lasercutting the panels
03/03/2022 at 20:19 • 0 commentsJust like the Warthog project, I use 3 mm black acrylic as a base for modules that holds LEDs, switches and buttons in place. a sandwich from one 2 mm and one 3 mm white translucent acrylic sheet is used on top of that to diffuse the LEDs and will be painted and engraved later. Everything is held together with M3 standoffs.
A couple shallow holes have to be drilled into the 3 mm white acrylic to make the LEDs fit flush into their mounting holes.
-
Cockpit Panel Mockup
02/03/2022 at 00:53 • 0 commentsA quick Photoshop mockup of what it will roughly look like. I already spotted some stuff that I changed in the meantime.
-
Making the UI
01/30/2022 at 02:02 • 0 commentsI didn't find an easy way of extracting the data that I needed for the interface from the game. It's not like there is a nice software interface like some flightsims have and apparently Mechwarrior 4 is a nightmare to mod. The crew that made the MekPaks seem to have had access to some tools that are not publically available. So I bit the bullet and used Cheatengine to find the memory addresses where the game's variables are stored. It took weeks. Parameters like "Speed" or "Engine heat" were relatively easy to find but other stuff was a nightmare. I extracted dozens of parameters and some are still missing.
I have no idea how to get the firing groups and the radar content due to the way Cheatengine works. Especially the latter is really sad since it is such an important UI element. So if anyone has an idea, please hit me up. I'm continuing with the build anyway.
With all the memory addresses available, I was able to write an OpenFrameworks sketch that accesses them and displays their content on a custom graphic interface.
-
Reasons
01/30/2022 at 01:53 • 0 commentsMW4: Mercenaries is a game I loved to play in my youth and has aged really well in my opinion, especially the modded MekTek MekPak version that used to be available for free - and should still be available after a quick search.
I became obsessed with building a custom UI for the game and don't really know why. I thought that a nice-looking panel with some buttons connected to an arduino would be some work but trivial in the end. So I decided to include an LCD display with a custom interface to give feedback from the game. I prepared a pixel-accurate mockup of what the interface will look like. Instead of the regular green seen in the game, I wanted an amber/yellow color scheme inspired by the turret interfaces in the Alien movie sequel. Since I couldn't find a font that matches the inspiration, I made my own. I will probably make it available as part of the project.
The layout should be flexible enough for other Mechwarrior games. Since I don't like competetive online games and don't want to support games that seem to rely on the modding community to make them work, I never upgraded to MWO or MW5 - but I might change my mind.