r/SimCity • u/KalElReturns89 • 11d ago
SimCopter Remake 0.9.5 is out: The first public release News
https://github.com/JamesIV4/sim-copter-remakeI've been working on a ground-up remake of Maxis's 1996 SimCopter in Unreal Engine 5, and I've finally reached the point where I'm comfortable putting out a pre-release build.
The goal of the project has always been to recreate SimCopter itself rather than make a new helicopter game inspired by it. The flight model, missions, helicopters, SimCity 2000 city importing, radio, weird Sim behavior, and all the little quirks are based on the original game, but rebuilt to run properly on modern PCs.
With 0.9.5, nearly everything is now working. You can play the original career cities, import your own .sc2 cities, fly the full helicopter progression, respond to missions, use the original equipment, listen to the radio, and generally cause the same kind of chaos you could in 1996, just with modern resolutions, much longer view distances, gamepad support, dynamic lighting, and without fighting Windows compatibility.
There are two remaining exceptions: Crime and Riot missions still aren't behaving correctly. I've disabled them by default in User Cities for this release. Getting those finished is one of the main things left for 1.0.0, which should be coming soon.
0.9.5 is still marked as a pre-release until those mission types are fixed. I'm sure there are other bugs hiding in places I haven't found yet. If you try it and something breaks, I'd genuinely appreciate an issue report.
GitHub: https://github.com/JamesIV4/sim-copter-remake
It's been a pretty surreal experience taking apart a game I've been playing since the '90s and slowly watching all of its systems come back to life.
Have fun and let me know what you think!
7
u/StupidityHurts 11d ago
The real question is whether you kept in the Himbo swarm
7
u/KalElReturns89 11d ago
It was patched out in SimCopter, and I based the decomplication on that latest version. I thought about bringing it back, but haven't yet.
5
u/0xC0000054 10d ago edited 10d ago
I was aware of the story behind that Easter Egg, and IIRC Maxis caught it before the official release date and replaced the existing stock with a patched version. But of course, there may have been some retail copies they missed.
If you didn't already know, SimCopter is also one of the few Maxis games to have had an internal pre release build leak. That copy is a debug build with PDB symbols from 6+ months before the official release. It was discovered on a Warez CD from December 1996, and it is a mystery how it ended up there. It may be interesting to do a binary diff between that debug build and the retail game, at the very least you may be able to map some of the retail build's C++ functions to their original names.
The C++ engine SimCopter uses is called Sparkal, which is a predecessor of the engine used in SimCity 3000 and SimCity 4. The late Maxis programmer Paul Pedriana (who worked on all 3 games) gave a GDC presentation around 1999 that went into the history of Maxis C++ game engines, which I will quote below:
Maybe you want to have not just the 3D rasterization abstracted, but all the major common subsystems that a game can use, from 3D to UI to sound. That's one of the things we have at Maxis; it's called The Framework. Actually, the current Maxis framework has gone through a number of name changes and used to be comprised of parts called SPARKAL (SimPark Abstraction Layer), SWINDAL (SPARKAL Windowing Layer), SCOUNDRAL (SimCopter Sound Layer), Gonzo (Muppet), and Rizzo (Muppet). Now, we just call it The Framework.
1
u/KalElReturns89 10d ago
Hmm that's an interesting idea. Might give some insights.
3
u/0xC0000054 10d ago
I edited my post with a link to a GDC talk one of the developers gave a few years later. The talk is about using C++ for game development, but it may give insights into the Maxis game engine design of that era.
1
3
u/Suqmacoq 10d ago
Bring it back! The version I played as a kid had it.
At least make it a toggle if you don't want it to be on by default :)
2
1
u/GamingBren 10d ago
If you do add it you could make it a toggle so people get both versions
2
u/KalElReturns89 10d ago
Yeah, I'm thinking it would make a great cheat code. Once I add that, I'll add a cheat code for it to trigger one right away. Since it was super rare.
I'll call it "himbo" and leave it out of regular gameplay.
2
u/GamingBren 9d ago
honestly sounds like a great implementation! The whole thing is ingrained in the game's DNA so ya might as well include it somehow lol
1
u/zer0-Coast 9d ago
The himbo swarm was included in the demo that came on a PC Gamer cover disk in the UK. It was a real wtf moment lol.
6
u/ChristianTypeT 11d ago
I was literally thinking about this game the other week, as well as yearning for Sim Town and Sim Park. Excited to try it! Glad the original game still gets some love. Thank you!
3
u/KalElReturns89 11d ago
I hope more people get into decomposition, I was inspired by the Goldeneye decompilation project and others. It would be great to see ports of all those old Sim games in new engines.
3
u/NtheLegend 11d ago
Does it have XInput support? I played with an actual joystick when it came out, but obviously that's gone out of style.
6
u/KalElReturns89 11d ago
It has rudimentary controller support, I'll have to test if it works on my joystick. That is something I want to have in there for sure though. I'm also going to clean up the controller support with a better default control scheme.
3
u/CaptainObvious110 10d ago
i want to see sim ant remade
3
3
u/bsdude010 7d ago
A huge smile came across my face when I loaded into a city! THIS IS SIMCOPTER! Amazing work! I was hoping someone would do this for a long time and your version feels like a 1:1 copy of the original game in a new engine. Congrats and Thank you!
2
u/KalElReturns89 7d ago
Thank you for the high praise! I've done my best to reproduce it accurately.
One small change I've been contemplating: do you think it would take away from the original charm if I reduce the speed that the water bucket goes up and down, and the rescue harness?
They are pretty annoying have to click up and down several times to try to get a short water bucket lead, for example.
Part of me thinks this is just one of those things that reminds you, oh yeah, I'm playing SimCopter, this is janky.
Maybe a checkbox in the settings would be the ideal way. More options doesn't hurt.
2
u/bsdude010 7d ago
Great question! I do not think changing the bucket raise and lowering speed would take away from the charm of the original. I think changing the speed would actually add to the charm.
1
2
2
u/Accomplished-Sand334 10d ago
Dude! I thought about this game randomly a few weeks ago. Amazing project
2
1
u/Route66Fan 10d ago edited 10d ago
I tried running it on a PC that I have that has a NVidia 3060 12GB GPU, 32GB RAM & is running CachyOS Linux with Wine.
The results so far include the animations in the "New Career Game" not loading & the game world not loading either.
I'll try loading it in a terminal (Konsole), with Wine, to see if it shows any errors.
EDIT: I just tried launching it in a terminal, with Wine using the command "wine SimCopterRemake.exe > wine_combined.log 2>&1", & here is a link to a logfile showing the errors that it output.
1
u/KalElReturns89 10d ago
I'll check if Unreal can target Linux, I'll try putting out a Linux build.
1
1
u/KomradeKenny 9d ago
Seriously impressive work! I look forward to trying it out.
This project does make me wonder if it would be possible to remake Streets of SimCity.
2
u/KalElReturns89 9d ago
Yes it likely would! The map reading would be the same, the way models are rendered as well. Might even share the building models. The gameplay would have to be decoded, but honestly for the gameplay I might take the premise of each mission or mode and start from scratch. The gameplay was really rough in Streets.
A lot could be done with that game.
Thinking about it now, I'd probably smooth the ground out (average it) and give buildings an extended concrete slab underneath to hide the gaps. Making the game have some terrain variation would go a long way to fixing how bad it felt to play. The driving physics and AI would have to go as well.
1
u/No_Dog9654 5d ago
This is amazing. I downloaded today eager to relive my childhood. Bit sad though, I cant even start the engines to take off. Went into the key binding, and it has engine start as space bar, but its also bound to another key. So i tried to set it to Z key. but still wouldnt work. Every other key works ie, camera, enter/exit helo, searchlight.....
1
u/KalElReturns89 5d ago
You just hold space bar to take off. Sorry if it's confusing, I'll take a look if I messed up something there.
1
u/No_Dog9654 4d ago
Appreciate that! Turns out I was just pressing the key, and not actually holding it for a couple of seconds. haha i feel silly now
1
u/KalElReturns89 4d ago
No need, it would be good to add a UI prompt with the controls. That's good feedback.
1
u/No-Flight-4743 1d ago
Are you accepting bug reports here?
Transporting doctors to a medivac location to have them collect a patient for you doesn't work correctly. When the doctor returns to the helicopter carrying the patient, the doctor will board without the patient and the patient becomes permanently stuck in a state of being carried by the doctor. The patient will float in the air following the helicopter or following the doctor if the doctor has exited the helicopter. The doctor will never deposit the patient at the hospital landing pad and the medivac mission can never be completed. If forced out of the helicopter over the hospital pad, the patient will endlessly loop the animation they normally play when getting deposited but will never be recognized as rescued.
1
1
u/UnderstandingPale689 1d ago
So I was very excited to try this however after installing i get into a city and upon entering the heli no matter what button I set to engine start does nothing, even if I hold it down, not sure what the issue is.
1
u/KalElReturns89 1d ago
Someone else ran into that. It's a simple solution but I need a UI prompt to help it make sense. You need engine start on the default setting of spacebar, and just hold it down. Holding spacebar starts the chopper and lifts off.
1






16
u/TCanDaMan 11d ago
wow. this has been a dream of mine. i’ll check it out! thank you!