Open source rewrite of the original Civilization game (1991) - OpenCiv1 Project

rahorvat

Warlord
Joined
Mar 12, 2023
Messages
112
Location
Croatia, EU
OpenCiv1 Project news

  • OpenCiv1 uses Avalonia UI framework and is OS independent. It is currently compatible with desktops: Windows, Linux and MacOS.

  • The game logic is based on original DOS Civilization game version 475.05 disassembly.
  • The project has progressed significantly since first post, for a code and details see Project page at GitHub.
  • The game is in working state.
  • You have to legally own the Original DOS Civilization game (the .txt, .pic and .pal files have to be present), until all of the resources have been replaced with copyright free resources.
  • The Alpha v7 release is available at GitHub.
  • Full release is planned for the end of 2024.

Copyright considerations

The available code is not a full working copy of the game. To run OpenCiv1 you are legally required to own your own copy of the DOS Civilization game.
This is the reason that not a single file from original game is included in the GitHub repository as they are copyrighted.


The part of the game assembly code is emulated with Virtual CPU, and the rest of the code has been rewritten from scratch until all of the code is replaced with new copyright free code.
The other resources (like graphics, music and text) will also be completely replaced with copyright free resources before publishing the complete game.


Screenshots of the OpenCiv1 game





 
Last edited:
I cant answer your question directly but a few thoughts.
  • The copyright for Civ 1 belonged to Microprose.
  • Through a fairly convoluted series of events this wound up with Atari. Atari sold the rights to civilization to Take-Two Interactive Software, Inc who also purchased Firaxis.
  • Its unclear if Take Two actually owns the copyright to Civ 1. They did publish it as part of the Chronicles box set in 2006. However they may only have had temporary publishing rights to the old games.
  • Either way the rights don't belong to Sid
  • You're unlikely to every get an official nod to publish this sort of thing as these giant corps are pretty careful over their copyright and trademarks
  • On the other hand lots of these projects exist and fly under the radar
  • If you hosted it on github probably the worst thing that would happen is a takedown notice
 
Hi everyone,
I have disassembled and parsed the Windows version of the Civilization 1 to a human readable code. Also I have done some translations to C# code, parsed the resources etc.
The plan is to get the source code that works exactly as the original code. I know that there are independent implementations, but this "start from the original" approach seems most appealing to me.
Welcome to site! Wow!!! This is amazing. Thank you so much for letting us know!! :)

Getting the 16bit Windows version of Civ1 converted and working perfectly on modern 64bit operating systems without needing a Virtual Machine or WineVDM would be a dream come true for many. Especially as it already supports modern HD resolutions and there are cool fan mods that can also make the game look like the DOS version as I demonstrated here:
https://forums.civfanatics.com/thre...ization-1-hd-tour-with-mods-scenarios.673292/

Before I continue I will try to ask Sid Meier for a permission. I think that asking if it's ok with him would be the right way to go. Did anyone from this forum contacted Sid Meier directly at all?
No one here has a direct line to Sid Meier and he's not on social media sadly although I think he's on LinkedIn. However speaking with him or Firaxis probably wouldn't do much as it's 2K who mostly likely controls the rights to the Civ series (if Atari don't still have the older Civ games) and they are proving difficult to get on contact with. I've been working on trying to get Firaxis and 2K to put Civ1 back in stores again here:
https://forums.civfanatics.com/thre...i-mge-test-of-time-to-be-added-to-gog.675300/

They'll probably ignore you like they've been ignoring me lol, or worse, 2K's legal department sends you a cease and desist which I'm sure you wouldn't like very much. So personally I'd suggest you just go for it and not waste time and energy trying to get permission that probably won't come sadly (very happy to be wrong though). Sid is powerless legally but if you do find a way to speak with him let me know as his public voice in interviews would be very useful in my efforts to get Civ1 back in stores.

Also if anyone is interested in this project the additional help will be invaluable.
I plan to port the code to platform independent C# .NET core, possibly with MAUI graphical interface.
Your thoughts about this idea will be most appreciated, also, we could finish this project with additional help more quickly.
There have been some on going efforts at creating a Civ1 clone that may interest you especially as there's a few coders posting in there that might be interested in your work since they won't have to write things from scratch if the original code is successfully translated. The big thread is here:
https://forums.civfanatics.com/threads/civone-an-open-source-remake-of-civilization-1.535036/
Some of the projects talked about in there are:
https://github.com/SWY1985/CivOne
https://github.com/fire-eggs/CivOne
https://github.com/HonkiTonk/Civ-Klon
Another new project has popped up here too:
https://forums.civfanatics.com/threads/yet-anther-clone.680494/

Hope this information helps and I hope you stick around and keep us updated. :) Oh and please keep your updates to this one project thread though instead of creating duplicates threads again. New member posts sometimes go into a admin approval queue, so if you post something and it's not visible please be patient and wait.
.
 
Last edited:
Welcome to site! Wow!!! This is amazing. Thank you so much for letting us know!! :)

Getting the 16bit Windows version of Civ1 converted and working perfectly on modern 64bit operating systems without needing a Virtual Machine or WineVDM would be a dream come true for many. Especially as it already supports modern HD resolutions and there are cool fan mods that can also make the game look like the DOS version as I demonstrated here:
https://forums.civfanatics.com/thre...ization-1-hd-tour-with-mods-scenarios.673292/
Yes, I'm aware of those, but they are closed source, and It's difficult to say if everything is kosher. Also some sort of visual plugins would be very interesting to implement. Also the language translations so people can play in their own language.

No one here has a direct line to Sid Meier and he's not on social media sadly although I think he's on LinkedIn. However speaking with him or Firaxis probably wouldn't do much as it's 2K who mostly likely controls the rights to the Civ series (if Atari don't still have the older Civ games) and they are proving difficult to get on contact with. I've been working on trying to get Firaxis and 2K to put Civ1 back in stores again here:
https://forums.civfanatics.com/thre...i-mge-test-of-time-to-be-added-to-gog.675300/
They probably abandoned the old versions, but Civ I was most fun for me to play. Even to this day. So, it's a shame to not be able to get a legal copy.
Also, enthusiasts as you and me are possibly the only ones interested in legal copies. There are so many games available today online, even for free, that it's not worth to fuss with such an old software. Also later versions have been developed which puts Civ I as an relict of the past (sadly) :(

I would really appreciate a comment from Sid, as he is the principal developer of Civ I.

They'll probably ignore you like they've been ignoring me lol, or worse, 2K's legal department sends you a cease and desist which I'm sure you wouldn't like very much. So personally I'd suggest you just go for it and not waste time and energy trying to get permission that probably won't come sadly (very happy to be wrong though). Sid is powerless legally but if you do find a way to speak with him let me know as his public voice in interviews would be very useful in my efforts to get Civ1 back in stores.
Well, to tell you the truth I'm not interested to get some large company to do something about it. I guess it's up to the community to do something about it ;)

There have been some on going efforts at creating a Civ1 clone that may interest you especially as there's a few coders posting in there that might be interested in your work since they won't have to write things from scratch if the original code is successfully translated. The big thread is here:
https://forums.civfanatics.com/threads/civone-an-open-source-remake-of-civilization-1.535036/
Some of the projects talked about in there are:
https://github.com/SWY1985/CivOne
https://github.com/fire-eggs/CivOne
https://github.com/HonkiTonk/Civ-Klon
Another new project has popped up here too:
https://forums.civfanatics.com/threads/yet-anther-clone.680494/
Yes, I'm aware of those, but direct approach seems as best to me. As I'm not interested in later versions, but the original version is what interests me the most.

Hope this information helps and I hope you stick around and keep us updated. :) Oh and please keep your updates to this one project thread though instead of creating duplicates threads again. New member posts sometimes go into a admin approval queue, so if you post something and it's not visible please be patient and wait.
.
Sorry, I was not aware of this, I thought that some spam filter prevented me from posting ;)

The project will be an indirect implementation. As the first step is to see what the source code does and then recreate the same thing.
Something like, I show you the diagram of what has to happen and then you implement it with your own code.
There have been numerous examples of this process, as it can't be regarded as the direct source code copying (or stealing), but as a creative process that is not a direct copy of Original work.
 
Last edited:
Indeed, a modern update of the windows version with bugs fixed and some of the DOS features restored could easily end up becoming the best way to play civ 1. Looking forward to whatever you come up with
Thanks, that's exactly what I had planned to do ;)
Except, I had planned an OS independent version so everyone can play :)
 
I'd like to be able to play II again. I can't get past the startup menus on WINE.

Of course, I'd also like to add wonders and be able to go to 15 civs, have borders so the AI doesn't stick a size 1 city in the middle of your territory, and finally I'd like there to be a chance for a Barb controlled city to turn into a civ.

Civ 2 was the best overall in terms of balance and playability without needing to micromanage.
 
Sounds good @rahorvat ! Very happy to have you here and I look forward to your project updates. Also I help out on sharing the CFC front page news items across Civ social media groups with thousands members in them so once you're at the 'teaser screenshot' stage of your project @The_J & I can share your work out there which will likely attract more fans and possible contributors.

I'd like to be able to play II again. I can't get past the startup menus on WINE.

Of course, I'd also like to add wonders and be able to go to 15 civs, have borders so the AI doesn't stick a size 1 city in the middle of your territory, and finally I'd like there to be a chance for a Barb controlled city to turn into a civ.

Civ 2 was the best overall in terms of balance and playability without needing to micromanage.
Not quite the right thread for that but I've got good news for you mate, similar to the big Civ1 clone thread we have here, there is a similar thread over on the Civ2 forum where a number of people are contributing to a Civ2 clone project and ooooh yes you better believe raising the Civ limit past 7 is repeatedly mentioned in that thread. Would especially useful in some of those Test of Time scenarios where the 7 civs get split across 4 different worlds and everything is a bit sparse and too quiet lol. So yeah I recommend you post your thoughts and wishes over there so the guys working on it can see the positive support and consider your ideas! :)

https://forums.civfanatics.com/threads/making-a-clone-of-civ-ii.649543/post-15983617

https://github.com/axx0/Civ2-clone

Screenshot from the clone project, not original civ2!

 
I'm glad to hear that there is interest.
As I'm very busy these days on my job, the project will take some time. Also it's a very tedious job to translate quasi assembler to a high level language.
But I plan to be persistent and not abandon this project ;)

Off course I will be glad to increase limits and fix bugs once we pass the stage of code porting and playability tests.

Also, it's now clear to me that Sid doesn't have the rights to the source and that there is no point in contacting him.
Even if he has a copy of an original work he would not share it with me over the internet, that's for sure.
I guess perhaps in person I could talk to him and ask him about the original source (would be a lot easier and faster not to start with asm), perhaps work with him, but since I'm in Europe, there's not a chance of that :(
 
Last edited:
Indeed, a modern update of the windows version with bugs fixed and some of the DOS features restored could easily end up becoming the best way to play civ 1. Looking forward to whatever you come up with
Could you please elaborate on 'DOS features' that are not available on windows version?
I'm just curious, because I always played the DOS version and the Windows version is interesting because it's easier to port.
 
As far as we're aware, the actual in-game mechanics are very close, if not identical (although I'm sure our resident expert reverse engineers @darkpanda , @tupi and others would enjoy comparing the details of the source to their own reversed DOS code), it's mostly presentation that lets it down

-There's a bad bug in the save logic which means that if you save whilst some units still have moves left in your turn, all units will have all their moves back on the same turn when you resume (DOS actually had this bug too, but it only effected autosaves, so to trigger it, you had to manually shift a save to the autosave slot then load it). Windows does this every time you save.
-Alot of functionality in the city menu has been shifted to the windows menu bar, I think most would prefer to do all their work in the city screen like in DOS.
-Windows uses the same shared music for the title screen and intro, and cuts off most of the intro music meaning you watch most of the intro in silence (see this post for details https://forums.civfanatics.com/thre...dows-complete-soundtrack-overhaul-mod.633237/)
-The civ specific music played during diplomacy is instantly cut off as soon as actual diplomacy begins, in DOS it continues playing (also, as with the title screen, the tracks are very short unless you mod them)
-The windows version of the save file does not save unit names for some reason. This means you can't have scenarios with custom unit names, you can with DOS.
-No animations for aquaduct, hanging gardens, other city screen water features. Animated shoreline and rivers are present in 256 colour mode only.

The graphics are obviously subjective, but alot of people prefer the terrain and unit graphics/colour scheme from the DOS version. This could be an optional choice of course. Particularly the choice of burgundy and yellow for the city screen is a bit of a shocker in my opinion!

EDIT - one more, the windows version uses the happiness model of the version 3 patch which introduces 'very unhappy citizens', in DOS they are coloured red on the city menu, in Windows there's no visual clue to differentiate them from 'normal' citizens (see this thread for discussion https://forums.civfanatics.com/threads/civil-disorder-why.638921/post-16425928)
 
As far as we're aware, the actual in-game mechanics are very close, if not identical (although I'm sure our resident expert reverse engineers @darkpanda , @tupi and others would enjoy comparing the details of the source to their own reversed DOS code), it's mostly presentation that lets it down

-There's a bad bug in the save logic which means that if you save whilst some units still have moves left in your turn, all units will have all their moves back on the same turn when you resume (DOS actually had this bug too, but it only effected autosaves, so to trigger it, you had to manually shift a save to the autosave slot then load it). Windows does this every time you save.
-Alot of functionality in the city menu has been shifted to the windows menu bar, I think most would prefer to do all their work in the city screen like in DOS.
-Windows uses the same shared music for the title screen and intro, and cuts off most of the intro music meaning you watch most of the intro in silence (see this post for details https://forums.civfanatics.com/thre...dows-complete-soundtrack-overhaul-mod.633237/)
-The civ specific music played during diplomacy is instantly cut off as soon as actual diplomacy begins, in DOS it continues playing (also, as with the title screen, the tracks are very short unless you mod them)
-The windows version of the save file does not save unit names for some reason. This means you can't have scenarios with custom unit names, you can with DOS.
-No animations for aquaduct, hanging gardens, other city screen water features. Animated shoreline and rivers are present in 256 colour mode only.

The graphics are obviously subjective, but alot of people prefer the terrain and unit graphics/colour scheme from the DOS version. This could be an optional choice of course. Particularly the choice of burgundy and yellow for the city screen is a bit of a shocker in my opinion!

EDIT - one more, the windows version uses the happiness model of the version 3 patch which introduces 'very unhappy citizens', in DOS they are coloured red on the city menu, in Windows there's no visual clue to differentiate them from 'normal' citizens (see this thread for discussion https://forums.civfanatics.com/threads/civil-disorder-why.638921/post-16425928)
Ok, to summarize:
1) music differences
2) graphical differences, animations

Bugs:
1) save logic, unit moves are disrupted and unit names are not saved
2) no difference between 'happy' and 'very unhappy' citizens

Have I listed all?

I see no problem in sharing the encountered differences in gameplay between DOS/Win versions, if any...
 
UI differences as well (city screen functionality all moved to the menu bar), but yes, very well summarised :) .

It'd be interesting to hear from some of the veterans as to whether there were any subtle gameplay differences spotted, but most people wouldn't have played the windows version due to the 16 bit issue or personal preference. I'm not aware of any, but my games tend not to be particularly high level!
 
Dos version is better, the true one and only ! =D

The thing I would be interested in is converting the 2D dos graphics into some kind of vectorized graphics, mostly done with distance field rendering, that would be very cool.
 
Dos version is better, the true one and only ! =D

The thing I would be interested in is converting the 2D dos graphics into some kind of vectorized graphics, mostly done with distance field rendering, that would be very cool.
Ok,
But, why? Because of subjective graphic/sound differences or something else?
Did you mean isometric projection, like CIV 2?
Vectorized mostly means scalable (composed of vectors).
 
Vectorized graphics might(?) be a bit much for a 1991 game, but scaling in general is something to keep in mind. The DOS version obviously doesn't scale, you always see the same amount of the map at any one time. The windows version will scale to any arbitrary size, if you play it on a 1920x1080 screen and maximize it, you can see as much of the map as will fit in that space.

What it doesn't have is any kind of zoom function to go with this scaling. This was first introduced in CivNet, but might be something to consider introducing if you get that far.
 
Vectorized graphics might(?) be a bit much for a 1991 game, but scaling in general is something to keep in mind. The DOS version obviously doesn't scale, you always see the same amount of the map at any one time. The windows version will scale to any arbitrary size, if you play it on a 1920x1080 screen and maximize it, you can see as much of the map as will fit in that space.

What it doesn't have is any kind of zoom function to go with this scaling. This was first introduced in CivNet, but might be something to consider introducing if you get that far.
I also thought of that ;)

Well, not really, as we will have access to some kind of 3D engine for sure that will be available on modern OSes (including Windows, MacOS, Android, Linux...)
With zoom functionality the vectors would be the best.

But for now I will focus primarily on getting the things done.

Thanks for your input.
 
-No animations for aquaduct, hanging gardens, other city screen water features. Animated shoreline and rivers are present in 256 colour mode only.
I don't think there's any animation in the intro and world building sequences either.

But, why? Because of subjective graphic/sound differences or something else?
I had a guy on reddit a few days ago saying he hates the Windows version of Civ1 (and civ2 as well) due to their very boring bright grey retro Windows GUIs. Personally I don't mind them, but I can understand why a lot of Dos players didn't like it as the dos version had the nice black top bar with grey text. A simple similar 'dark CivDOS like GUI' mod for your rebuild would probably make most of those people happy!

But yes as Lord Hill points out the bigger gripe Dos players have with the windows version is the terrain, units & and world graphics. CivWin had higher res terrain & units but the colours and designs weren't as nice and yeah oh boy was that city screen colour horrible. Thankfully Honzas Dos graphics for CivWin mod included a nice blue dos like city screen for CivWin too (although CivWin wouldn't let him replicate the nice pattern the dos city screen background has).

 
I don't think there's any animation in the intro and world building sequences either.


I had a guy on reddit a few days ago saying he hates the Windows version of Civ1 (and civ2 as well) due to their very boring bright grey retro Windows GUIs. Personally I don't mind them, but I can understand why a lot of Dos players didn't like it as the dos version had the nice black top bar with grey text. A simple similar 'dark CivDOS like GUI' mod for your rebuild would probably make most of those people happy!

But yes as Lord Hill points out the bigger gripe Dos players have with the windows version is the terrain, units & and world graphics. CivWin had higher res terrain & units but the colours and designs weren't as nice and yeah oh boy was that city screen colour horrible. Thankfully Honzas Dos graphics for CivWin mod included a nice blue dos like city screen for CivWin too (although CivWin wouldn't let him replicate the nice pattern the dos city screen background has).

That is some serious old school windows interface.
I remember turning my Windows(??) back into that at work because I would customize the windows bars when I was bored.
 
Hi everyone,
I created the EXE Unpacker for a DOS version of Civilization 1 (as suggested by you as the best version to play Civilization game). The code for the Unpacker and binary release are located at my GitHub page. All versions of civ.exe should work. The Unpacker restores the EXE to original compiled version IDA (and other disassemblers) can open and analyze. Note that DOS EXE overlays are present. The C compiler used to create EXE is Microsoft C 5.1 Optimizing Compiler.

I'm currently working on EXE overlays to be able to completely reconstitute original code.

Cheers
 
Last edited:
Top Bottom