My project to clone Civ1

I have temporarily removed the download from the first post, but the project isn't dead yet.
Just few days back I looked my old code and wondered if I could hack tcp/ip multiplayer in it. And I (at least almost) successfully did.:cool: So this project might end up as more like CivNet clone. But still have lot of work to do before it's truly playable game.

I've only been looking at civ.exe, slowly trying to figure out how it is put together. So it's all just ideas in my head, which is why I wanted to look at the work hannurabi and humbe had made.

The problem with my code is that it's quite buggy and very disorganized (spaghetti code)...
When I showed my code to humbe, he ended up to start rewriting whole game.You might be interested of his code, but unfortunately he has disappeared or something. I still have his code somewhere, but I'm unsure whether to share it without his permission.

---

But I've been thinking... since quite many of the few civ1fanatics seem to have some programming experience, or at least I have got that impression, why not to start a collective civ1 clone project?

Ok, I know that having enough time is one obstacle for people to participate, but these type of projects tend to take years anyway. But if there was more than one or two developers doing the programming maybe the project might get finished some day. And even if it wouldn't, at least personally I find working on this kind of stuff quite fun:)

First we would have to decide which programming language and which libraries/frameworks to use. We could set the project for example on sourceforge.
Maybe we should create some kind of design document too.

Well, if anyone is interested let's discuss some more.

Spoiler :
And no need to tell me about Freeciv and Civ2/3/4/5, I know that they exists... but they just aren't what I'm looking for, and you propably understand why;)
 
I have temporarily removed the download from the first post, but the project isn't dead yet.
Just few days back I looked my old code and wondered if I could hack tcp/ip multiplayer in it. And I (at least almost) successfully did.:cool: So this project might end up as more like CivNet clone. But still have lot of work to do before it's truly playable game.

Congrats :) It's always good to see people implementing stuff for the challenge, the fun, and making it work.


But I've been thinking... since quite many of the few civ1fanatics seem to have some programming experience, or at least I have got that impression, why not to start a collective civ1 clone project?

...

Well, if anyone is interested let's discuss some more.

And no need to tell me about Freeciv and Civ2/3/4/5, I know that they exists... but they just aren't what I'm looking for, and you propably understand why;)

Well :D To some extent, there's still some discussion to have about Freeciv, Civ2/3/4/5, and you forgot C-evo...

For me, increasing the chance of "success" for such a project requires to ask some right questions in the beginning:
  1. like it or not, there have been similar efforts in the past (FreeCiv, C-evo, FreeCol, ...), so why would this effort be necessary? how would it be different?
  2. what do we want in there? what do we not want?
  3. how to make it manageable? then, how to effectively manage it?
  4. ... (add your own)

I've never taken part in any major collaborative open-source project, but from what I've seen, they are fragile - very dependent on the people working on them - and require lots of discipline (clarity, concision, documentation, coding standards) to make them any valuable.

Anyhow, I am really interested.
Although as I expressed before, I have some preferences:
- game design: answering to my first question above, I know I would like a CivDOS clone to be graphically very close to the original; but then, why not just make a graphical mod to FreeCiv or C-evo? my idea would really be that original CivDOS players would start the clone without even realizing it's a clone (until the new features appear) so that would require sticking to the original UI/UX as a guideline (that said, I would love to be able to switch to a 3D "Google Earth"-like view of the world, in-game, at times... ;))
- language: Java coding (in Eclipse) is so much faster (for me), that it would be a significant demotivator to follow the C/C++ route - just thinking about writing destructors and memory management code makes me want to sleep :cry:... But then I also know that C/C++ baggage is always valuable, and it is sort of the de facto industry standard

Besides, currently I am still focused on revealing precisely the internal game mechanics of CIV (city process resolution, AI, etc.).
 
Congrats :)

Well :D To some extent, there's still some discussion to have about Freeciv, Civ2/3/4/5, and you forgot C-evo...

For me, increasing the chance of "success" for such a project requires to ask some right questions in the beginning:
  1. like it or not, there have been similar efforts in the past (FreeCiv, C-evo, FreeCol, ...), so why would this effort be necessary? how would it be different?
  2. what do we want in there? what do we not want?
  3. how to make it manageable? then, how to effectively manage it?
  4. ... (add your own)

---

Besides, currently I am still focused on revealing precisely the internal game mechanics of CIV (city process resolution, AI, etc.).

Even if you mod freeciv or c-evo looks ike civ1, it still feels and plays very different. You know it if you have tried those games.

But you have made valid points - a good quality open source project isn't easy to achieve. Especially since every one wants to have slightly different game I suppose.Maybe I just stick to developing my own little project, which I find prsonally entertaining, although it has some short comes.
 
Even if you mod freeciv or c-evo looks ike civ1, it still feels and plays very different. You know it if you have tried those games.

I must admit I never really played those, nor looked at their code at all... But they probably met challenges and made choices that any new clone would have to make too. So looking at them could be a valuable lessons learned.

But you have made valid points - a good quality open source project isn't easy to achieve. Especially since every one wants to have slightly different game I suppose.Maybe I just stick to developing my own little project, which I find prsonally entertaining, although it has some short comes.


I didn't intend to discourage you :) quite the contrary actually, I'm still on board with this.
Maybe we should start with a general "mission statement" as a base for discussion - at least we seem to agree on the general idea of keeping close to Civ1.
And to call for other participants, creating a new thread would be good too, I think.
 
Top Bottom