Think Tank

Meaning that I suspect that there's more than a bit of a mess to be found in the code
Amen!
I guess we can take that for granted... :D We can deduce that from the type of bugs the game still has today and from the "inconsistent" behavior that can be seen in many places... I'm pretty sure that even the same (or a very similar) algorithm is implemented twice (or even several times), if it is needed in two or more different places...:crazyeye:

Example: buildings with certain prerequisites. Like ivory for Statue of Zeus, 3 Armies for Pentagon, 5 Stock Exchanges for Wall Street, etc.
Let's assume, you have started building such a project and then, before you were able to finish it, the prerequisite is lost. (Ivory got pillaged, a city with a Stock Exchange is captured by an enemy, etc.) What happens?
  • The Wall Street project can not be completed, if the number of Stock Exchanges in your empire falls below 5.
  • The SDI project can be completed, if the number of SAM Batteries in your empire falls below 5.
==> clearly two different people have implemented this check twice in two different locations and in different ways... :thumbsup:
(See https://forums.civfanatics.com/threads/build-projects-with-prerequisites.533669/ )

Another "interesting" example is how airfields work... See https://forums.civfanatics.com/threads/airfield-sharing.430541/#post-13279284

Considering that messy code like this tends to be difficult to understand and still more difficult to extend (once we want to add new features), it may be even less effort to implement it from scratch but in a well-designed, well-modularized & extendable way? :think:


On another topic: The community has already done a lot of reverse engineering of the game mechanics in the past 20 years. We know the .sav file format, the corruption model, AI attitude, war weariness, interturn mechanics, etc. A lot of that wisdom has been condensed into CivAssistII. And CivAssistII has been implemented in C#! Have you already asked Andrew Inwood, whether he would share the CivAssistII code with us?

Coincidentally just over the last Christmas break I toyed with the idea of asking him myself. I had to set up a new Windows 10 Laptop for my mother and thought it could not hurt to install Civ3 on it. Despite all the problems that many people reported with Windows 10, I got it running without any trouble using the usual no-disc executable.

Then I thought I would give Andrew's "new" version of CivAssistII a try. (He had recompiled it with an up-to-date .NET Framework in 2016, as the original version with .NET 1.1 did no longer work for many people.)
But the new version just did not work for me. It did not recognize automatically, when the game was started. When I tried to load a .sav file manually, it errored out immediately with some strange exception, even when trying a simple 4000 BC.sav saved freshly from a newly started C3C game. Loading a 4000 BC.sav from a PtW game worked ok, but it did not display the world map and some other things. (Apparently CivAssistII is no longer able to find the tile graphics.)
Similar things are also reported by many other people, so I thought I could try to debug into these problems and try to fix them. But then I decided against it and rather spent the time with the family... :mischief: (After all, the original CivAssistII still works fine on my Windows 7 desktop...)
 
I am merely interested in knowing what motivates each Member on a more personal level to have a better understanding of the collective motivational strength regarding this endeavor. "Will it Stand the Test of Time" or be abandoned after a "Good Try".

I do tend to lose steam on something after 2-3 weeks, and if I realized nobody else is really using what I'm doing I can quickly lose motivation and move on to the next shiny thing.

I do feel the same largely. My spare time (= the time that is not eaten up by my job and by family - btw don't get me wrong: I really like my job and I love my family, so any time spent on these two categories is well spent, but I only have 24h a day... so need to think carefully about what I do in these 24h) is very limited. At the moment, a big portion of the time devoted on gaming is still spent on the GOTM competition, I'd say around 20h per month. I will probably have to cut that down, if I want to get involved here in any significant way... And I also want to spend time on getting involved in the environmental fight. Nothing would be worse than, if my grandchildren are going to ask me 30 years from now "grandpa, what have you been doing back then, when the planet went down the drain?" and I have to answer "wasting my time with computer games"...

So I like to be sure, that what we do here will be relevant. No use in starting a project that will require years of our volunteer spare time, if only a handful of people will ever use it. Should we perhaps start a poll in a prominent place of the Civ3 forum to find out current "customer demand" for the "product" we will be offering?
I can speak for the GOTM competition: participation here has gone down to a trickle over the last years. We have already increased the time for each game from one month to three months, but nevertheless we are now at approx. 10 submissions per released game, compared to 200-300 submissions per game in the golden days of Civ3.

On the other hand, the release of a Steam version seems to have recruited a couple of new fans for Civ3, even among the younger generation. But still: is it enough to justify a huge effort like the one this project would require? How big is the Civ3 modding community atm?
 
On the other hand, the release of a Steam version seems to have recruited a couple of new fans for Civ3, even among the younger generation. But still: is it enough to justify a huge effort like the one this project would require? How big is the Civ3 modding community atm?

It's definitely (a) project(s) of passion. And spare time and people with lives. I think perhaps this forum is more outdated than Civ3 is, though. Steam in particular seems to have given it new life. I just think those folks don't find their way here to CFC, and if they do, it's an older forum community which is just different from modern gaming communities.

I've had what to me is a surprising amount of attention on YouTube from some Civ3 videos I've put up over the years, and SuedeCivIII has over 4k followers on YouTube for his Civ3 channel! As I went to check that, he's live as I post this with 83 people watching him play Sid difficulty Civ3. So people are still at least paying attention to Civ3 in 2021.

It's pretty clear to me there is a variety of interest in improving/extending/fixing Civ3, but at this point I'm sure there's not one direction everyone will be interested in. Going in multiple directions might seem like a poor strategy, but I don't think there is one single strategy (new game, patch, adapt) that will have most of us actively engaged. Given that, I'm thinking going in two or three different directions may be preferable to picking one direction and losing interest of some. The different projects wouldn't necessarily directly help each other, but every new bit of knowledge and documentation can certainly help the other strategies.


Maybe we could do it in 6502 assembly...zero page #FTW! I want it to work On Apple //e, too.
 
Welcome flintlock and Lanzelot, it´s great that you are here! :goodjob:
 
I did not know that about the building prereqs! That's morbidly fascinating, as both are small wonders with the same type of requirement. So I'm skeptical that it could be a parallel algorithm at least in that case, but perhaps there is some other internal rule that we haven't yet divined, like an exception for buildings that are destroyed in combat..?

Someone had mentioned CivAssistII but we have not inquired, and I didn't realize it was C#. That's a good suggestion. Do you know if ainwood is still around, or how to contact him otherwise?

Regarding community, I've been pleasantly surprised by the amount of activity and interest beyond this forum. SuedecivIII seems to have sparked a small renaissance, and there are a few active subreddits and Discord servers in addition to Steam. They're playing and making their own mods, and decrying the game's limitations and oddities. I've already seen several wistful references to remaking the game... :hmm:
 
Top Bottom