Poking at RAND

Oh, and I also think every civ should spawn. That would eliminate some of the open space, and make it more like RFC.
 
I would tend to agree with that, except that my 1 gig of RAM says maybe not. There's a reason I'm playing RAND instead of RFC beyond simple randomness. :)

In lieu of that, I would think that grouping civ spawns by era might be wise. If the player chooses a classic-era Civ, all five of those spawn. The only exception might be the medieval European civs - of Spain, Portugal, France, England, Vikings, Germany, Russia and Arabia I think maybe only 5 would be necessary.

As much as I like the Khmer and Ethiopians, I think on standard and large maps, they don't do a whole lot except slow the game down. Getting rid of them would also allow the maps to be made a little bit smaller, I think.


What's the easiest way to edit the DLL?
 
I would tend to agree with that, except that my 1 gig of RAM says maybe not. There's a reason I'm playing RAND instead of RFC beyond simple randomness. :)
True, very true. (Although RAM has little to do with it, I see your point. :)

As much as I like the Khmer and Ethiopians, I think on standard and large maps, they don't do a whole lot except slow the game down. Getting rid of them would also allow the maps to be made a little bit smaller, I think.
Or maybe just make it so they collapse very quickly. I don't mind them being in the game, but after a while, you're right, they start to drag the game speed down.

What's the easiest way to edit the DLL?
This thread should get you started. The source code for RAND is here. If you've never programmed, I wouldn't bother, it's not as easy as simply editing an XML file, or even Python. If you have some experience, though, you can dig around in there. I don't know exactly what function in what file controls the distance between cities (my guess would be CvPlot.cpp), but it probably wouldn't be too hard to find.
 
Jungle and desert, respectively. Though in India's case I've seen both. I've almost never seen India survive into the Middle Ages. Not as sure about Persia.

I think in RFC the resources, barbarians, and neutral/flipping cities are carefully balanced, so that desert civs have stone and flood plains, and if any of those things are slightly off in RAND, the whole civ falls apart.

China and Japan survive pretty regularly. As do Greece and Rome.
 
This one, from GlobalDefines?

<Define>
<DefineName>MIN_CITY_RANGE</DefineName>
<!-- Rhye -->
<iDefineIntVal>1</iDefineIntVal>



I'm also curious about this one - is this what determines how far away a new civ spawns from another's capital?

<Define>
<DefineName>STARTING_DISTANCE_PERCENT</DefineName>
<iDefineIntVal>6</iDefineIntVal>
<!-- Rhye - RFCRAND (12) -->
</Define>
 
I've started a game with 2 squares between cities, and so far have noticed no huge differences in game history, with the possible exception that I'm well ahead of where I normally am in terms of tech.

I'm also going to try starting a few games and letting them run to the Turks on both 1 and 2 squares to see if that demonstrates anything notable.
 
Here's a game with two squares between cities that I'm enjoying a lot, except for the wait between turns. I started as Greece, then switched to France. I was pushing for the UHV, but only had 5.5 colonies in the new world. The Americans spawned on three of my colonies, so I gave them away.

Around that point, my stability was collapsing too quickly, so I had a revolution to Emancipation, Free Religion, and Commonwealth. Massive revolution around 1790 sounds vaguely familiar. I had a few cities go independent, but not quite civil war.

Then a world war started. Turkey, to my southeast, had split up the remnants of the Greek cities with me. I got Argos and Sparta, they got Athens and Corinth. Their sudden war blitzed into Sparta, which their cavalry took with ease.

Then a Congress came up, and my side of the war had much larger representation. A major city of theirs was taken my the Dutch, and I managed to swipe Athens. Which I held for a turn, before the Greeks, no doubt inspired by my revolution promising freedom for the masses, decided to reappear, creating a new powerful buffer state between me and Turkey.



So why is this good? Because it feels like the historical forces in RFC/RAND are pushing the game to behave in a generally historical fashion, but not so far that I don't feel like I have any choice in the matter.

Also, take a look at the map, which I'm a fan of. Notice how there's a massive old world island, in the "middle east." It seems to have made the game more interesting.
 

Attachments

  • Louis XIV AD-1805 Turn 356 revolution now!.CivBeyondSwordSave
    712 KB · Views: 50
so, is it too hard compared to RFC classic?

nope. Some UHVs are actually easier to achieve, some harder, and some impossible. Same with other victory conditions. The balance is ok now IMHO, I disagree with Arkaeyn. It was indeed whack when the spawning civs would flip pretty much everything around, now that that's been fixed I don't see any major balance problem except the placement of the initial 4 civs because that influences the placement of all others, if I understood well. Egypt and especially Carthage should start more west, toward the Atlantic, while the first normally starts in the middle east and the second rarely spawns near Egypt. India too many times starts in Africa. Also, I think that some more efforts should be put into creating a better (I mean more realistic) African continent, a Mediterranean sea, and the barbarian pressure in Africa should be lessened or (better) african civs (I mean Mali and Ethiopia) should be given better means to fight Camel Archers hordes.
Balance depends a lot on civ placement, because most of its aspects were thought for the fixed map, where civ placement is always the same.
 
so, is it too hard compared to RFC classic?

When trying to achieve the UHV for the early civs where there is hardly any margin for error, it's definitely harder. I have achieved UHV's for Babylon and Egypt now on Monarch level, but in comparison with classic RFC, I would estimate for these 2:

RFC UHV chance: 20%
RFC RAND UHV chance: 10%

The main reason for the harder difficulty is the starting position. I have played a lot of bad ones (bad due to too much floodplains and lack of food resources for growth and health) and trying different routes to the UHV.

I'm going to try China and India next, but I suspect India to be near impossible...
 
nope. Some UHVs are actually easier to achieve, some harder, and some impossible. Same with other victory conditions. The balance is ok now IMHO, I disagree with Arkaeyn. It was indeed whack when the spawning civs would flip pretty much everything around, now that that's been fixed I don't see any major balance problem except the placement of the initial 4 civs because that influences the placement of all others, if I understood well. Egypt and especially Carthage should start more west, toward the Atlantic, while the first normally starts in the middle east and the second rarely spawns near Egypt. India too many times starts in Africa. Also, I think that some more efforts should be put into creating a better (I mean more realistic) African continent, a Mediterranean sea, and the barbarian pressure in Africa should be lessened or (better) african civs (I mean Mali and Ethiopia) should be given better means to fight Camel Archers hordes.
Balance depends a lot on civ placement, because most of its aspects were thought for the fixed map, where civ placement is always the same.
I disagree with this. RFC RAND is, at the moment, just RFC with a random map (and a few slight tweaks). I personally think things like expansion stability need to be calculated in a completely different way than in RFC, because RFC is completely based on a fixed map, which RAND does not have, and I just think it doesn't make any sense. The point of RAND, as I see it, is to play a relatively normal game of Civ4 with historically accurate elements, not to play a historically accurate game with a random map.

The balance is suffering in RAND simply because the game was created with a fixed map in mind, but the map is not fixed, so that's a problem (obviously). For example, a lot of the UHVs depend on each civ's starting location being similar to those in RFC, but this is very rarely the case, so those UHVs become extremely difficult, if not impossible. In the same way, it doesn't make sense to use the same stability system for expansion because no one knows exactly which spots hurt your stability, and which ones don't. You can't create a stability map for a random map.
 
It's obvious that stability isn't based on RFC fixed stability maps. It has its own system, which is indeed harder to finetune, but can be improved with your feedback.

Thank you onedreamer for the info, that's what I needed to know in order to improve the map generator.
 
Rhye, any chance you will change the water level? If I'm not mistaken currently it is fixed on a rather low level, which seems to influence the map generation on exactly those points onedreamer mentioned: big africa, small Mediterranean sea, etc. (using Huge/High Likeliness). Or does a higher water level make it harder to fit in all the spawns (not enough land)?

Just out of curiosity: did you consider other map scripts like Earth.py instead of Terra.py to base your map script on? In my experience Earth.py resembles the Earth map better.

If any, RAND will benefit the most from improving the map script I think. Personally I would prefer that over any other changes too get more balance.
 
I disagree with this. RFC RAND is, at the moment, just RFC with a random map (and a few slight tweaks). I personally think things like expansion stability need to be calculated in a completely different way than in RFC, because RFC is completely based on a fixed map, which RAND does not have, and I just think it doesn't make any sense. The point of RAND, as I see it, is to play a relatively normal game of Civ4 with historically accurate elements, not to play a historically accurate game with a random map.

The balance is suffering in RAND simply because the game was created with a fixed map in mind, but the map is not fixed, so that's a problem (obviously). For example, a lot of the UHVs depend on each civ's starting location being similar to those in RFC, but this is very rarely the case, so those UHVs become extremely difficult, if not impossible. In the same way, it doesn't make sense to use the same stability system for expansion because no one knows exactly which spots hurt your stability, and which ones don't. You can't create a stability map for a random map.


This leads to an interesting question, which I haven't seen an answer to directly - what makes for a "good" and "balanced" game of RAND? There are several potential answers or combinations of answers, such as:

1. All civs being able to win with UHVs
2. Relative historical accuracy
3. All civs having a chance to win via normal victory methods
4. Game being fun and challenging throughout
5. Being as close to RFC as possible
6. Speed of play

Now, I don't really like the UHVs, so I look at relative success for different civs as being #3. I'm also keen on making sure that 2 and 4 work. I'm entirely willing to sacrifice #5 for the reasons I quoted from AnotherPacifist. The last is also crucially important for me, because I'm not on a great computer here.

If we know what our goals are, we can work towards them more easily. #1 and #3 are perhaps the most problematic in conjunction, but they all interact in ways that may make things difficult.
 
Here's a slightly more coherent attempt at what I was trying to say:

Vanilla Civilization attempts to create a rough model of the progression of recorded human history in a fun, challenging fashion, notable for having a flavor (or style) based around different civilizations having different leaders/music/colors/cities/personalities.

RFC is based on Vanilla Civ with several important goals/assumptions/differences:

1. Very few major alterations to the basic structure of Civilization - no new civs/techs/units/graphics (except for RFC Warlords Babylonians)
2. Fast playing and loading times
3. Increased historical accuracy by:
a. Dynamic civ spawning
b. UHVs, and AI pushes towards those goals
c. A highly customized earth map and 1 square between cities
d. New civilization traits
e. Stability
 
So what is RAND? RAND initially appears as a progression of RFC with a random map. But RFC is so tweaked for its map, its AI spawning and behavior, and its stability - all in the name of historical accuracy - that at a certain point, it's losing one of the key aspects of Civilization: remaining fun and challenging.

One of the keys to having a game be fun and challenging is that the player should have the necessary information to do what they need to do. (I've actually written about this! http://www.escapistmagazine.com/articles/view/issues/issue_95/533-Mid-Level-Exceptions) Random stability maps, poor spawning locations, and chaotic flipping can get in the way of that.

I would argue that, instead of viewing RAND as a progression of RFC which was a progression of Civ4 and Rhye's of Civilization, RAND might be better viewed as a midpoint between vanilla Civ4 and RFC. I consider the two most interesting and beneficial aspects of RFC to Civ4 to be dynamic spawning and stability, and I consider speed to always be critically important.

So, in general, my vision of what would make a "good and balanced" game of RAND would be one which includes the best aspects of stability and dynamic spawns, and I'm willing to sacrifice other parts before then. It's better, in my mind, to have a China which may be a superpower in the endgame than to have a China which can achieve its (insane) UHV.

A different viewpoint, which sees RAND as an extension of RFC, might call for China's UHV to be rebalanced to the point where its stability collapse by 1700 isn't as important.
 
I dont think this possible but the best solution to create a buton/key combo that overlays the players stability map on the current map ?

If not surely it would be possible to create key combo that just gives a text message about the stability in the currently moused over square.

Would this be an unfair advantage how much does the AI know about the stability maps ?

I dont think this would make the game too much easier.
 
Top Bottom