New DLL limit for Number of allowed Civs in C2C

JosEPh_II

TBS WarLord
Joined
Jun 20, 2007
Messages
16,935
Location
Western IL. cornfields
@ C2C Team,

It's become very apparent that ppl playing with 50 Civs and maps that support them can not finish them. Even starting a Gigantic Map with 20 Civ But with having REV and/or Barb Civ by the time you reach AD time frame the 50 Civ limit is just about hit. Yes I know REV will not allow more than 50 Civ, But....

I propose that a new DLL Civ Limit be enforced. That limit would be 28, the same limit that Afforess used for sometime in AND.

As computationally heavy as this mod is, having this 50 Civ limit only causes more bug reports that are not really bugs but personal computer limitations.

While viewports mitigate this problem somewhat it will still get pushed to the breaking point with a 50 Civ dll. It's just ppl's nature to push the limits. But if this Mod is going to get players into the "future" Eras something along this line of Civ DLL limiting will need to be enforced.

And it's very clear that Civ BtS engine at 32 bit is under this mod will only increase turn time later in the game. Complaints of 2+ minute EoT have been surfacing for many versions now. Even though 2+ minute of EoT in the 1000+AD timeframe is not really that bad. But why exacerbate this growing problem by leaving the DLL limit at 50.

Do this Mod and yourselves a favor and drop the # of Civs in the DLL limit.

JosEPh
 
Make it optional with the default at 28. I have no trouble with turn times at 50 but then I a old and quite willing to read a book between turns.
 
I agree that it should be an optional setting, as I also don't mind longish turn times. Perhaps even have several options for those with varying power of computers. For example: 28, 36, 43, 50.

While I can understand wanting to help people with their long turn times, penalizing those who like having lots of Civs and either don't mind having longer turn times or have computers that can handle it seems like a bad idea.
 
It's not about penalizing anyone. It's about realistic expectations from a game play stand point. And even an i7 with 32GB of ram and 2 crossfire HD 7600's will Not make it into the 20th Century with a game that still has 30+ CIVs and REV ON or Barb Civ ON. Much less have EoT's under 5 min.

Even vanilla Civ IV when it came out did not have a 50 Civ dll. That was made later.

The point is even with an Option (which is reasonable, but is it easily done from a coding stand point?) there will be players who will use the options that will generate Civs and then they will come complain when it get's "broke". It happens all the time now. Too many of the new players think this is a new game engine that can run like a FPS. And when even a turn in the Early eras hit's 1 min they come complaining, much less a turn taking 3+ min. in the mid Eras. And God forbid a late Era should take 5+ minutes to process.

Multi-threading of this mod is not going to be a near term project. Just look at Multi-maps and how long it's been wanted, worked on, and wanted some more, same for the late Future Era work.

This mod is only 2/3 in place now. And it's gonna get heavier still. Nip this erroneous perception that this mod can handle 50 Civs on a Gigantic PW or PM map and still function into the late teens AD, much less into the 20th century and beyond. That's madness with blinders on.

JosEPh
 
I would not think this would be necessary for all systems. But usually we play map sizes based on our system ability to handle it so perhaps we should base 'the maximum amt of civs' on map size selection?
 
I understand what you are saying... to a point. If someone comes into the mod with improper expectations, that doesn't mean that the mod is broken. What it means, to me anyway, is that there aught to be more notices that the game will get slow if the player uses certain options. Perhaps something to that effect in the mouse-over text on the game options screen when creating the game. Perhaps notices in the first post of the main thread. Perhaps in the FAQ.

On the other hand, from my perspective anyway, if someone activates all of the options that lead to longer turn times, then complains about long turn times, that's their own fault. They should learn from their 'mistake', and try different options next time. So they complain, let them. They have to make mistakes in order to learn from them.

My first game of C2C was on the GEM map with 7 preset Civs. I did have Barb Civs and REV on, and the game DID make it into the 20'th century. Of course, I had a habit of conquering new Civs shortly after they emerged / after I found them, so I doubt that there were ever 30+ Civs at a time, but I honestly don't know for sure. It was also version 21.7 or so, so perhaps not quite as heavy as the current.
 
I can understand what you are seeing here Joe, but IMO the issue is really an understanding and hardware one for most people. Enforcing a 'low' limit for everyone, even those of us who can handle 50, just seems like a bad idea.

It couldn't be a dynamic number either, as the way the limit is set is a #define, which can't be changed during runtime. The engine needs that define to work and handle the civs.

So I'd say instead how about I add something to the FAQ warning people that if they use the largest map sizes they need to have quite good hardware (and use Viewports) to succeed.
 
I support this, as long as there is an option for it. Sometimes I want to play earth 50 civs, other times I want a random map. When I play random maps, I usually have to turn off the Barbarian Civs option to keep the map from getting so cluttered and unwieldy with random civs.
 
I can understand what you are seeing here Joe, but IMO the issue is really an understanding and hardware one for most people. Enforcing a 'low' limit for everyone, even those of us who can handle 50, just seems like a bad idea.

It couldn't be a dynamic number either, as the way the limit is set is a #define, which can't be changed during runtime. The engine needs that define to work and handle the civs.

So I'd say instead how about I add something to the FAQ warning people that if they use the largest map sizes they need to have quite good hardware (and use Viewports) to succeed.

Making it dynamic should be fairly easy. Just redefine MAX_PLAYERS as the name of a static int, and tweak the Load and save routines to expect a variable number.
 
Making it dynamic should be fairly easy. Just redefine MAX_PLAYERS as the name of a static int, and tweak the Load and save routines to expect a variable number.

I thought that the engine expected that as a define, which was why there hasn't been a dynamic max DLL.
 
I thought that the engine expected that as a define, which was why there hasn't been a dynamic max DLL.

A C++ #define is just a compile time lexical substitution, so the #define can itself be the name of a variable - that is exactly equivalent to replacing all uses of the #define by the variable name.
 
A C++ #define is just a compile time lexical substitution, so the #define can itself be the name of a variable - that is exactly equivalent to replacing all uses of the #define by the variable name.

Well I learn something every day. In that case why not make it a BUG option. The only limit is that the engine complains if there is more than 64 civs.
 
Well at least I got some of you all's attention. And got a discussion started over this subject.

As for "enforced limits" it's done on a regular basis if you don't play the perceived right way. And 28 civs is not Low, it's more rational. Make it 35, but you'll still have ppl that complain their turns are taking too long even with that. And as I stated above an Option would be acceptable.

I personally will probably never play with even 20 Civs in a game any more. And I have an i7 win 7 64 Pro with all the bells and whistles, tons of Ram and a good vid card with 2GB of DDR5 ram on it.

But every player that ever used or heard of RoM's Mega Civ pack thinks this mod does the same thing (and it really does do it with all the Civs in it now), and yes, they should be more aware of their hardware and the factors for supporting a Huge Boatload of active Civs in a game. Sad truth is, no they don't. Then they complain and post threads and bug reports that the mod's broke. And you all need to fix it asap.

Yes ls612 a big sign in the FAQ is a starting place, but it's more than large Maps. NOw if you can only get new players to Read the FAQ! ;)

JosEPh
 
Just because something is done on a "regular basis", doesn't make it right. What is considered "rational" should be a personal decision. Preferably an informed one, but what can you do? Heck, we could make the limit 8 Civs and people would still complain about long turn times. You can't stop people from making bad decisions, you just have to help them learn from it.
 
All I can say is viewports have been a godsend for this mod. I never was able to get the big maps but I can at least get a map a size larger than I normally would without it.

All i can say to that is (Hulk Hogan sayin') Amen Brother!;)
 
Though viewports don't help at all with turn times...

I support the addition of such a limiting option, which will also be the perfect place for a fair warning that increasing the limit will directly affect the game's performance. It doesn't really have to be dynamic in runtime, and it doesn't even need to be visible in the BUG option screen, an XML or ini parameter would be fine.

I would really love to see the computer comfigurations, game settings and turn times for those people that can play giant/GEM maps with 50 civs into the later eras without much problem. Perhaps I can improve some things for my future games.


And by the way, of course people come here complaining about the turn times, where else would they go? There's no prominent or even noticeable warning anywhere about that and what options affect the performance, so the only way they are going to find out is by playing.
And if they do that, and they notice something they didn't expect, under which category exceptionally long turn times certainly fall, they're going to look for solutions here or if they're feeling like they want to help are going to post a bug report about this exact issue.
You can't really complain about that, it's just the way things are, and it's not going to change unless something on this side of the table changes. And by that I don't mean growing a more elitist habit...
 
Well, I'm mostly against this because My comp is good (but not extrordinary) and can handle Gigantic maps (random, not GEM) with 30 civs now due to rev and Low sea levels (so more stuff for the AI to do) quite well.

My specs are:

  • Intel i7-3610 (ivy bridge). That is probably the most important part, as C2C is entirely limited by CPU in most machines.
  • 8 GB DDR3 RAM, and I'm never using much more than 2 of those for C2C.
  • Intel Integrated 4000 graphics. Which goes to show that this game does NOT need a good GPU to run well. (I use max graphics settings with no lag)
  • 750 GB HDD (SATA). And the game loads in about a minute if it has been cached.
  • Windows 8. It ran just as fast though on win7, so I don't think that makes a difference.

For performance comparison, this save that I've attached takes about 105 seconds on my machine to end turn, with Minimize AI turns and a 75 by 50 Viewport. I find that quite reasonable given that Koshling says that there is a good deal more performance gain to be had, and we haven't really multi-threaded anything yet.
 
For performance comparison, this save that I've attached takes about 105 seconds on my machine to end turn, with Minimize AI turns and a 75 by 50 Viewport. I find that quite reasonable given that Koshling says that there is a good deal more performance gain to be had, and we haven't really multi-threaded anything yet.

Interesting, that takes only 73 seconds for me. Although admittedly that was with the latest SVN (rev 4756), as I couldn't get it to work with vanilla v28 due to a missing class declaration (or somthing similar like that). So it may already include some of the optimizations Koshling included recently.

// Edit
My specs, also for comparision sake. Maybe we can compile a list to give other users a short overview.
- i5 3570k, currently overclocked to 4100MHz
- 16GB DDR3-1866 RAM (the game seems to use just barely over 2GB for this test)
- Geforce 8800 GT with 512MB RAM
- Windows 7 x64
- Samsung 830 SSD 120GB (though HDDs are utterly irrelevant for turn times and game start times)

Minimize AI turns enabled and viewport 70x50 (although viewports shouldn't make any difference for turn times).
 
Interesting, that takes only 73 seconds for me. Although admittedly that was with the latest SVN (rev 4756), as I couldn't get it to work with vanilla v28 due to a missing class declaration (or somthing similar like that). So it may already include some of the optimizations Koshling included recently.

// Edit
My specs, also for comparision sake. Maybe we can compile a list to give other users a short overview.
- i5 3570k, currently overclocked to 4100MHz
- 16GB DDR3-1866 RAM (the game seems to use just barely over 2GB for this test)
- Geforce 8800 GT with 512MB RAM
- Windows 7 x64
- Samsung 830 SSD 120GB (though HDDs are utterly irrelevant for turn times and game start times)

Minimize AI turns enabled and viewport 70x50 (although viewports shouldn't make any difference for turn times).

The overclock is what explains that performance, mine is a laptop and so will only Turbo to 3.1 GHz on a single core. Those times though were without Koshling's changes today.
 
Back
Top Bottom