Posts by lethal_guitar@mastodon.social
 (DIR) Post #AaLCQC73wWwolweksq by lethal_guitar@mastodon.social
       2023-10-01T19:25:48Z
       
       0 likes, 3 repeats
       
       Source code for the original DOS version of Raptor: Call of the Shadows has been released:https://github.com/skynettx/dosraptor
       
 (DIR) Post #AckEWh57eSZBPL496O by lethal_guitar@mastodon.social
       2023-12-12T19:31:00Z
       
       0 likes, 1 repeats
       
       Our dissection of Duke Nukem 1's internals continues! Looking at collision detection this time:https://lethalguitar.wordpress.com/2023/12/12/duke-nukem-1s-collision-detection/
       
 (DIR) Post #AjuT00G7lyvPHC22NM by lethal_guitar@mastodon.social
       2024-07-13T14:43:47Z
       
       0 likes, 1 repeats
       
       New blog post! This time we're examining how the reflective floors in Duke Nukem 1 were implemented:https://lethalguitar.wordpress.com/2024/07/13/graphical-effects-in-duke-nukem-1-2-part-1/
       
 (DIR) Post #Ak7H8YQ3ybap90TF8S by lethal_guitar@mastodon.social
       2024-07-20T08:14:57Z
       
       0 likes, 0 repeats
       
       Next blog post about DOS games graphical effects is out! We're looking at the underwater "filter" in Duke Nukem 2 this time:https://lethalguitar.wordpress.com/2024/07/19/graphical-effects-in-duke-nukem-1-2-part-2/Featuring more Assembly and EGA shenanigans 😎
       
 (DIR) Post #AkVwoj3RaJfuCo9lcu by lethal_guitar@mastodon.social
       2024-08-01T06:13:14Z
       
       0 likes, 0 repeats
       
       @foone does it need to have native Windows UI elements? If not, maybe PyImGui: https://github.com/pyimgui/pyimguiI haven't used the Python bindings myself but I love using Dear ImGui for C++ GUIs, and it's a lot quicker to get something going compared to most other UI toolkits
       
 (DIR) Post #AlvDDQxQVaCdKxevxY by lethal_guitar@mastodon.social
       2024-09-12T08:36:57Z
       
       0 likes, 0 repeats
       
       @foone must be some very fancy tech in there to detect the user's native language
       
 (DIR) Post #AmBkkyiqOkuQd5nfzk by lethal_guitar@mastodon.social
       2024-09-19T10:01:54Z
       
       0 likes, 1 repeats
       
       Been doing a fun new reverse engineering project: Figuring out the file formats of the 1999 Windows/PS1 game Attack of the Saucerman. It's the first time I'm doing this on a 3D game. I'm now at a point where I can partially display the levels, and extract most of the assets:https://github.com/lethal-guitar/SaucerMapViewerI already made an attempt many many years ago, but was only armed with a hex editor at the time and couldn't make any sense of the data. (cont.)
       
 (DIR) Post #AmBkkzV3VVTR2cMB8q by lethal_guitar@mastodon.social
       2024-09-19T10:04:59Z
       
       0 likes, 0 repeats
       
       This time, I started by disassembling the EXE using Ida, and was able to identify the overall structure of the files. Once I knew how the level files are laid out, I was then able to make targeted changes and observe the result when running the game, which helped fill in most of the gaps, alongside more disassembly. What also helped a ton was a good number of debug log strings left in the code by the devs. (cont.)
       
 (DIR) Post #AmBkl04VNhpWoYwUOe by lethal_guitar@mastodon.social
       2024-09-19T10:10:44Z
       
       0 likes, 0 repeats
       
       It even still calls the OutputDebugString API, so when you run the game with a debugger attached, you can see all these log messages!Here's a selection of some funny messages:"You madman! You're running a 24-bit desktop! It'll be slow..""Created Too Many Models! TALK TOO [sic] TIM NOW!!!"I'll probably put this on pause for a little bit, but intend to continue at some point - I'd like to at least get 3D models displaying in the level viewer, and ideally figure out the lighting system.
       
 (DIR) Post #Aq0h4XD6MCOcEUeRwe by lethal_guitar@mastodon.social
       2025-01-12T15:34:13Z
       
       0 likes, 0 repeats
       
       @foone wow incredible.. That's a lot of engineering just to avoid implementing some simple mouse click hit tests.. Maybe they initially prototyped the menu using MFC and then didn't want to throw it away?
       
 (DIR) Post #Awus0vt1wjjOfMAOLQ by lethal_guitar@mastodon.social
       2025-08-07T05:13:08Z
       
       0 likes, 0 repeats
       
       @foone getting >64k file reading/writing wrong seems fairly common. I guess it was often a case of "Oh I need to support >64k files just in case" but never actually testing it
       
 (DIR) Post #AxL7qWWW2cZsU5eUoS by lethal_guitar@mastodon.social
       2025-08-19T21:13:03Z
       
       0 likes, 0 repeats
       
       @foone 🤯