Steph's crazy (?) idea to expand the game without the source code.

What do you think of the idea?


  • Total voters
    62

Steph

Multi Many Tasks man
Retired Moderator
Joined
Sep 1, 2002
Messages
18,162
Location
Pont de l'Arn, FRANCE
OK... Firaxis / 2k game will not release the source code.

I tried to go beyond some limitations with my editor, adding eras, or buildings beyond 256.

It works in my editor.... but the game will not load it correctly because it's hardcoded in a way.

Are all hopes lost?

Not necessarilly.

I have an idea that may be interesting. However, this would require a LOT of work, and there's not guarantee I'll really try it.

First, I would need some support. Perhaps other programmers. Testers for sure. Perhaps some other kind of support (hint: if I could upgrade my computer it would make things much easier ;)).

Second, if I start this it means I will not be able to devote a lot of time on my game for a few more months... So should I spend time on a workaround for Civilization III, that will not be perfect but has potential, and could be done in a "short" time (a few months I think), or should I focus on my game, which as probably more potential, won't be so frustrating (no "workaround", but real nice solution), but is still a lot of time ahead?

Anyway, before I reach a decision I'd like to present the idea and see what you think of it.

Expanded editor 2. And I mean, really expanded.
The editor needs to be changed. It will for instance allow more eras. New options for units, civilizations, etc.

For example, for the civilization, instead of a name and leader name valid for the whole game, I'd add an option to make it dependant on the era.
So the leader for France could be Vercingetorix in the ancient time, Charlemagne in the Middle Ages, Napoleon in industrial, and De Gaulle for modern time.
It's also possible to have changes in the civilization traits, or agressivity level, etc.

The changes would be saved in a new file format. This format cannot be used directly in Civilization III, but you could load and edit with the expanded editor 2.
From this editor, you could generate a normal biq, the "start" of your game.

When doing this, the editor would "extrat" a part of main mod. It will take only the first 4 eras. All the techs, buildings, units, etc. that should appear later will NOT be included (to save loading time). The "era specific options", such as the leader name, would be set to the first era one.

Save game monitor
Then, you load your game normally in Civilization III, and each turn you save.

In the background, you would have a new tool, the "save game monitor", that will analyse your saved game.

If it detects a change of era, it will prompt you for a "change of rule". So it will take your saved game, and modify the embedded rule to match the change. You would have to exit your current saved game, and load it again to take the change into account.

For example, you were playing in the ancient era. You move to the middle ages. You save. The game monitor detects in the saved file that the era has changed. And so it creates a new saved game, where the name of the French leader is no longer "Vercingetorix", but "Charlemagne", as defined in the expanded editor.
You exit your current game... Load the saved game... Et voila! Your civilization leader, traits, etc, have changed!

Going a little further
Now, you have only 4 eras to start with... But when the game monitor detects that all the civilization have moved to era 2, ie the era 1 become useless, it will prompt again for a change.
What will it do?
- Remove all the technologies from era 1
- Move all the technologies from era 2 to era 1, from era 3 to era 2, and from era 4 to era 3.
- From the rules in the expanded editor, add all the new techologies, ie the era 5 techologies (in the expanded editor), as era 4 technologies (in the saved game).
- Update everything properly.
-- If a unit required an era 1 technology, it will now have a "no technology" required.
-- If an improvement is obsolete (the technology that makes it obsolete was an era 1 tech), remove it from the list of building, as no one can built it.
-- If a unit is obsolete (it upgrades to a unit that requires a era 1 technology, and doesn't need resource), remove it from the list of units, as no one can built it.

So to sum up, you can ahve only 4 eras in game at the same time, but when advancing in the game, you will "forget" the old eras, and get the new eras.

This would theoretically allow an unlimited number of eras.

We could also have more buildings, if we accept some buildings "disappear" with time.
Now, imagine you have 50 units in each era and 10 eras. You want each unit to be autoproduced by a building. In normal game it's not possible, as you would need 500 buildings.
But with this system, you could have "only" 200 buildings at the same time, and it becomes possible.

And the graphics
Do you want more city graphics, one for each era expanded era?
Do you want more unit graphics than 4 supported (for instance for armies?). Not a problem... the expanded editor could allow a setting where you tell, for each "era 1", which file to use.
So when era 1 is deleted, and era 2 becomes era 1, the game monitor could tale the city graphics from a "resource folder", and copy it in the "main folder".

To infinity, and beyond!
All the above would happen only one a change of era is detected. So it would probably not be too frequent, and the annoying part of having to exit, load may not be to cumbersome.

If you are ready to load every turn... We could go farther.

Imagine a city is occupied. The "resistance" status is known... The save game monitor checks for resisting cities, then find a unit belonging to the civ with the "resistance" flag, and creates new units in an empty tile near the city.

You have a unit with the "healer" flag. The save game monitor checks all the other units in the same tile, and restore their hitpoints.

As you can see, it opens a whole new can of worms.

So now, the big question... Should we try it? Would you support it? Should I focus on my game?

Note that it's not sure we can make it worl, as the save file format is not yet completly known, so a large part of the work would be to finish understanding it.
 
The problem is it takes ages to load when you are playing large maps with lots of units. And I guess it would be cumbersome in MP. The idea is fascinating, though.
 
This is ingenious but I think it would be far too complex for most users to work out, merely to have extra eras and city styles (which are just decoration anyway). Adding genuinely extra features by having the game save and reload every single turn is even more ingenious but even less practical, I think.

So I would say that rather than spend much time on Heath Robinson-style workarounds for Civ it would be better to focus on making your new game. It would be more efficient and more interesting, and have a wider market.
 
I'd have to echo the above. It's a brilliant idea, but I feel that the effort which would be involved compared to the actual gain doesn't make it worth it. In my opinion, you should focus on your game!

:)
 
I hope I've already supported it somewhat ;) and would happily test.

I do see the merits in Plotinus' et. al. arguments, and would certainly opt for a reload every era as opposed to every turn. Yet an epic game genuinely having a fifth era to support plausible further 21st century units etc. would be wonderful.

A question: As you've proven both your technological skills and your ability to think outside the "Firaxis Box" could you not be developing the editor for both your game (which is another of your projects I'm enthusiastic about) and C3?

Best,

Oz
 
I do see the merits in Plotinus' et. al. arguments, and would certainly opt for a reload every era as opposed to every turn. Yet an epic game genuinely having a fifth era to support plausible further 21st century units etc. would be wonderful.
In fact, the project could be done with "3 levels".
1) Just make it possible to change some parameters when you change era (name of leader and civilization, traits, agressivitiy level), keeping 4 era. This is a small change, shouldn't be to hard to develop, and would require loading only when one civilization changes era.

2) Add new eras, with the possibility to move from one to another. Here again, with two levels
a) Just add new stuffs when a new era is available, but do not delete "old" items. So a unit available at era 1 would remain there, but with "no requirement". It's probably not to difficult either, as it won't be necessary to update everything
b) Use "sliding" eras, and remove unecessary object. The advantage is the rules would main light. With the example of my mod, instead of one era with 100 techs (and 8 sub periods), and 400 units, there would be 4 eras at the same time, each with 15 techs, and "only" 200 units in the mod at the same time. Even when I'll move to the next ara.
Option 2 also requires to load again the game when you change era.

3) Add new options too change things everyturn, like the resistance fighter idea. This is probably too much, a lot more to program, and a lot of loading.

So I think we could perhaps start with 1, and perhaps 2, but forget about 3... For the moment :p

A question: As you've proven both your technological skills and your ability to think outside the "Firaxis Box" could you not be developing the editor for both your game (which is another of your projects I'm enthusiastic about) and C3?

what do you mean?

Do both at the same time in parallel, or make a single editor that would work for Civ3 and for my game?
 
I think it's a great idea, but before taking it too far, you should do it on a small scale to test the practicality. If it doesn't work out easily enough, don't bother.
 
I think an era with 113 techs is enough times 4. But I also think there should be a sub era function to make things clearer... Anyways what you want is paramount to the decision.
 
A #1 with actual meaty changes like change of traits and aggressive level sounds a lot more tantalizing. That along with sliding the eras but only having to update every era could definitely be an interesting twist.
 
First off, that you could even concieve of such a great idea is a testament to how hard you try to make Civ a better game, but with that said, I think your awesome looking quasi-Civ game grabs my interest more than the workaround. As georgestow mentioned, I think you should try small scale and then see how that goes. If the loading times are even slightly longish, I personally would get tired. I already get tired of epic mod's loading times. As a modder, not as a player, I would rather see Civ III's pitiful AI improved, more options for combat, combat modifiers for specific units and specific terrains, and an improved terrain display system. It is those things that make me want to switch to Civ IV, not the limit on ages.

That said, I think you could find a lot of neat ideas for this workaround. The 'healer' idea is pure gold, and I'm sure you or us could come up with much more ideas like that.
 
what do you mean?

Do both at the same time in parallel, or make a single editor that would work for Civ3 and for my game?

The latter, understanding that functionally duplicate modules might be required where the two drastically digress (apologies, I've not been following your development thread :( , so perhaps the approach is moot).

Best,

Oz
 
The latter, understanding that functionally duplicate modules might be required where the two drastically digress (apologies, I've not been following your development thread :( , so perhaps the approach is moot).
Oz
It would be unwise to start a new game with the burden of CivIII stupid way to manage and store things, wouldn't it?
 
It would be unwise to start a new game with the burden of CivIII stupid way to manage and store things, wouldn't it?

Entirely, unless a rigorously modular approach could be applied, and the desired end result closer to, rather than farther from, a Civ3-as-it-could-of-should-have-been.

Best,

Oz
 
My two biggest issues are culture groups and civ limit. If you could change those, I would be happy.

I agree. If you could have a function whereby the initial set-up screen exceeds the current 31 civ/5 culture group limitations, that would be great - even if the actual civs selected for an individual game have to fall within those limitations. I hope you understand what I mean, but I'd be happy to give an example if you don't.
 
I agree. If you could have a function whereby the initial set-up screen exceeds the current 31 civ/5 culture group limitations, that would be great - even if the actual civs selected for an individual game have to fall within those limitations. I hope you understand what I mean, but I'd be happy to give an example if you don't.
This is not possible ingame.

But it would be possible, in the expanded² editor, to have more than 31 civs, and then when creating the "starting biq", to select 31 civ max among them, and the starting era.

Then you'd start the game, go to the setup screen, to finish selection among this 31 civs.

It may also be possible to have more culture groups, but you could have only 5 at the same time.

The number of buildings can also be increased, providing you don't have more than 256 at the same time. So you must have some obsolete buildings, that will be replaced by new ones when you advance in era.

And BTW the "obsolete" system could also be added to units, resources, etc.

For instance, you could have a "slave" resource, and make it disappear when you research "Emancipation".

Or instead of having all the units upgrade to something, make them obsolete.

Why can you "upgrade" a wooden ship to a battleship? It makes more sense to make the wooden ship unbuildable at some points.

Not also that the system could allow events. The "save game monitor" could check some constraints, and then change something.

For isntance, if number of French units < 20, then Britain declare war!

To make it clear I'd prefer focusing all my efforts on my own game. But it's very long, and it will be a long time before we can actually play it.

CivIII is flawed, but it's there, we can play it. With this new idea, we could expand it a bit, and make it more fun, and in a relatively short time. Of course, if we had the source code, I could make CivIII "as it should have been" much easier and much faster. But it's not possible...
 
I agree. If you could have a function whereby the initial set-up screen exceeds the current 31 civ/5 culture group limitations, that would be great - even if the actual civs selected for an individual game have to fall within those limitations. I hope you understand what I mean, but I'd be happy to give an example if you don't.

It also would be possible if you had a custom game setup program. This program would load a BIQ, allow you to choose the startup options just like regular Civ3 does, and then save the starting 4000 BC (or whenever) SAV. Since the BIQ format itself allows for more than 31 civs or 5 culture groups, this program could accept those and just limit you to 31 at a time when you set up the game. Then you start Civ3 and load the SAV it created.

It would be a lot of work - there'd probably have to be some sacrifices. For example, I don't think you'd want to allow random maps - then you'd have to include a custom map generator, which would be a lot of work and is something Civ3 is already pretty good at. Even with preset maps, you'd have to do a good amount of work to delete all the extra civilizations that you didn't select. And if you wanted to be able to view the Civilopedia in the game setup like you can in Civ now, that'd add a whole nother layer of complexity. Not to mention the fact that we don't currently have an editor that can support both custom maps and more than 31 civilizations. So there's a lot of hurdles to jump over. But it would be possible to allow for more than 31 civs in the distributed BIQ and still have the BIQ work with Civ3, with this intermediary step.

The "starting BIQ" Steph mentioned would be much easier to implement of course, but if you wanted to have one "starting BIQ" for each combination of civilizations a player could choose, and you had any more than 32 civilizations, you'd have a nightmare. Even with just 40 civilizations you'd have more than 273 million unique combinations of civilizations that could be played with - assuming you always enabled 31. You obviously couldn't have 273 million "starting BIQ's" available for download - you'd have to hand-pick five or ten to make available. Certainly it would be better than what's available now, but to really open up the doors you'd have to create an intermediary program that accepted BIQ's with > 31 civs and did the work of narrowing it down to what Civ accepts on its own.
 
The "starting BIQ" Steph mentioned would be much easier to implement of course, but if you wanted to have one "starting BIQ" for each combination of civilizations a player could choose, and you had any more than 32 civilizations, you'd have a nightmare. Even with just 40 civilizations you'd have more than 273 million unique combinations of civilizations that could be played with - assuming you always enabled 31. You obviously couldn't have 273 million "starting BIQ's" available for download - you'd have to hand-pick five or ten to make available. Certainly it would be better than what's available now, but to really open up the doors you'd have to create an intermediary program that accepted BIQ's with > 31 civs and did the work of narrowing it down to what Civ accepts on its own.
I think you missed the point (well almost, you nailed it at the end). The modder could createa a mod with 40 civilizations, and instead of biq, he would have a "biq2", not usuable with Civ directly.
Instead, before starting civ, he would use a small exe, "ExpandedGameSettings". where he selects 31 (or less) civilizations among the 40 and possibly the starting era, and then click on "generate".
The exe would then generate a new biq, with only the selected civ and eras, and deleting everything that become useless (so a unit that no one can get would not be included).
Then, you start Civ3, select the new biq, and start the game. You can even have random map this way, as we change the biq, not the save.

And you just have to provide one "biq2" files, not millions of biq with all the combination.

And this is something I already started to do with my editor. The goal was to allow a modder to work on a large epic mod, but to propose playable test version restricted to some civ/era, if the epic mod is not finished.

I will probably add this option to my editor at some point.

The difference here would be to expand the concept, with more than 31 civ and 4 eras, and turn it into an easy to use exe, where you just select a biq2 file, some civ, and start era, and go!
 
Could you make it so that there is a civil war. Say, if a city is in civil disorder for 5 turns, that and all other cities in civil disorder turn into a new country that is at war with the original, and then you would have to decide how units in the new cities would be added. You don't want it to to easy to take them back over.
 
Back
Top Bottom