Download link and version info

Would it be possible to make a rebellion spawn a minor civ, instead of a full civ (preferably through ini) in just the Revolution part of this modpack?

Edit: just to make clear, I am not talking about BarbarianCiv. I have it turned off in my scenario.
 
A % based system like you were suggesting just seems artificial to me ... it'd certainly be possible to say that, if less than 10% of world cities are barb cities, then none will form minors. Similarly, if less than 20% of all cities are in the hands of minors, don't settle. It just seems like you'd want those percentages to drop over time, and that's effectively what you'd get by slowing down the transitions.

Well, what I was suggesting was that say you set the variable to .9 -- that means when a barbarian city is created, it rolls a random number between 1 and 100, if it's anywhere between 1 and 89 the city will be allowed to form a barbarian civ if the conditions are met, but if it rolls between a 90 and 100 then there is no chance it will ever form a barbarian civ; that way there may be one or two permanent barbarian cities scattered throughout.
 
Would it be possible to make a rebellion spawn a minor civ, instead of a full civ (preferably through ini) in just the Revolution part of this modpack?

Edit: just to make clear, I am not talking about BarbarianCiv. I have it turned off in my scenario.

Yes, it would be possible. Currently BarbarianCiv handles all settling down for minor civs, but I can move the parts that aren't BarbarianCiv specific into RevUtils. That said, there would need to be some new conditions where the rebel would settle down into a full civ, which would otherwise be automatic for any minor civ (not on the always minor list) who discovers writing. I guess those conditions could be the same as the current ones for turning off the isRebel tag. That said, having rebels be minor civs in all circumstances removes what I consider to be a very interesting part of gameplay: as a 3rd party you can choose sides or remain out of a rebellion entirely (at least until the opportune moment). This is an aspect I intend to increase in the future. Beyond that, if rebels are at war with everyone, they may decide to strike a weaker neighbor instead of the civ they rebelled against ...
 
Well, what I was suggesting was that say you set the variable to .9 -- that means when a barbarian city is created, it rolls a random number between 1 and 100, if it's anywhere between 1 and 89 the city will be allowed to form a barbarian civ if the conditions are met, but if it rolls between a 90 and 100 then there is no chance it will ever form a barbarian civ; that way there may be one or two permanent barbarian cities scattered throughout.

This could be done by storing a "can settle" boolean with each barb city, but it still seems artificial to me ... this city might grow to size 8, build cultural buildings, etc (happens, though rarely, on Terra maps), why cut it off arbitrarily? If you still want to implement this mechanism then PM me if you'd like my input on how it might be done in Python, I just feel you'll get more sensible gameplay results and still have barb/minor cities hanging around by making transitions harder.
 
I agree that you should keep it the way it is, but I was just wondering if it could be an option, mostly for historical scenario purposes. I'll post my scenario soon in the scenario thread, so you can get a better idea of what I am going for.
 
New version 1.35 will be posted once the EasyUpload system comes back on line ... To whet your appetite, the cool new features expand the use of minor civs:

- Option in RevConfig section of Revolution.ini to have all civs start as minor civs and settle down into full civs when they discover writing (defaults to off). This really changes the Ancient era in interesting ways, no real diplomacy is possible before Writing is discovered anyway. I definitely recommend trying it out.
- Revolutions will now also occur in minor civs (previously was disabled while I figured out how to make it work well). Works well in conjunction with above setting, plus now civs in the new world are not immune to revolts before settling down.

Full change list:

Change Log

Version 1.35bts

Added RevInstances.py to hold instances to mod classes for later use in other modules

SDK
- Commented all code changes (a lot!) in the WOC style in preparation for merge
- Minor civs now name cities in the same order as full civs
- setIsMinorCiv( False ) no longer bumps units when making peace to allow for continued war under the right circumstances
- exposed CvMap::verifyUnitValidPlot to Python in CyMap, use to bump units after making peace
- Fixed issue causing "Regenerate Map" option not to show up at beginning of game
- Fixed bug causing new minor civs to start with inappropriate contact to vassals under certain conditions

BarbarianCiv
- New method of settling minor barbciv: if they lose a city to another player, they will settle militaristically and seek revenge (settling subject to New World Policy and tech prereq ...)
- When minor civs settle into full civs they can now automatically contact any full civs they met as a minor
- When barb civs settle into full civs, their name now changes at the right time
- Updated to support changes to RevolutionInit
- Added function to allow other modules to declare a new (rebel) civ is descended from a barbciv
- Fixed rare bug in declaring war on foreign civs
- When civ settles in a barb city, they now rename the city to one of their names
- When civ settles in a barb city, they now gain control of the barb units near the city as well
- Two new options for limiting minor settling based on the minimum number of contacts the civ has, default to 0
- Raising the MinPopulation option now also raises the bar for turning into a full civ based on population
- Fixed minor bug with announcements having an extra ", " at the end
- Now supports the any leader for any civ option
- Fixed rare bug when a minor civ could have lost all their cities but not been declared dead yet since the check for whether they should settle happens right before their turn.
- NewWorldPolicy setting #2 is now the default, new world won't settle until contact with old world civs
- Improved new world scenario detection, settling into full civs in the face of weak/intermittent explorers

Revolution
- Fixed bug where a civ type that failed a revolt and then respawned as minor barb civ could then have the cities revolt for them again, even though their new incarnation had never met the motherland civ.
- Improved support for minor civs in a couple small cases
- Messages declaring violent revolutions in other nations now accompanied by d.o.w. horns
- Minor civs now supported by Revolution, will suffer revolts like other players
- Rebels spawning from minor civs will carry the minor tag, plus be added to the alwaysMinorList if their parent civ is on it
- Rebels spawning from BarbCivs will also inherit that tag. Fixes potential bug with NewWorldPolicy after revolts.
- Fixed rare bug where, while waiting for the player to respond to a revolution popup, the slot that the rebel was going to use is claimed by a barb civ and then the rebels join them.
- Now supports the any leader for any civ option
- Temporary solution to barbarian revolts when civ has Great Wall: will spawn as non-barbs whenever possible, no chance of slave type revolt. Long term I'll create a "rebel" civ which will use the same unit art as barbs in a predefined slot.

RevUtils
- Added new option in RevConfig (defaults to off) to start all civs as minor civs and only transition to full civs when they discover writing. Leads to far more early fighting, you will "meet" other leaders once you're both full civs. (suggested by BobTheTerrible)
- Added checkMinorCivs function to implement above

DynamicCivNames
- Updated to support starting all civs as minors feature
- Updated to support changes to RevolutionInit

RevolutionInit
- Changes to support "Custom Game" screen configuration of running mod components (not in yet ...)
- Changes to support RevInstances

CvMainInterface
- Updated to use RevInstances

RevDefs
- Added alwaysMinorList which can be used to keep minor civs in scenarios as always minor (otherwise they may be promoted)

CvCustomEventManger
- Changed addEventManager so that it will never add duplicate functions

RevolutionText.xml
- Tiny fix to text spacing

BarbarianCiv.xml
- Added TXT_KEY_BARBCIV_DISCOVER_WRITING
 
The 48civ .dll link still doesn't work for me, I can't get it to work in either Opera or Firefox, even IE has no luck. Here's what the error says:

Code:
The requested URL /uploads/38534/48_civ_dll_for_Rev_1.31bts.zip was not found on this server.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
 
The site was hacked, and anything uploaded within the last 7 months has been lost.

Wow :eek: didn't see the news ... thought this was just a temporary problem. I'll upload the mod another way then. The EasyUpload system was so ... easy. Oh well.

It'll take a little while for all the different extras (DLLs, maps, sub-parts of the mod) to be updated, I'll have the main mod up soon.
 
Wow :eek: didn't see the news ... thought this was just a temporary problem. I'll upload the mod another way then. The EasyUpload system was so ... easy. Oh well.

It'll take a little while for all the different extras (DLLs, maps, sub-parts of the mod) to be updated, I'll have the main mod up soon.

If you are looking for good file hosts, www.megaupload.com is a good free filehost.
 
Why not add it to the downloads database? That's not using the Easy Upload system, is it?
 
Version 1.35 posted!

Still hosted here at CFC, official downloads pages have another upload mechanism that's different from the disabled EasyUpload ... I guess I'll create new downloads for some of the extras (sources, other DLLs, maps) that used to just come from the EasyUpload system.

Anyway, as mentioned up thread there's a really interesting new option (MinorUntilWriting) to start all players as minor civs until they discover Writing. It defaults to off because it's new and I didn't want to catch too many people by surprise, but definitely try it out and post your thoughts.

Soon that setting and the enable/disable of different components will be done through the Custom Game config screen in game, which will be nice ...
 
Version 1.36 posted ... perhaps the smallest update I've ever released, but it fixed a bug multiple people were running into using the new MinorUntilWriting feature with their relationships later in the game inappropriately showing effects from declarations of war when they were minor civs. The DLL pack and sources were also updated.

Definitely save game compatible, but won't fix any such relationship issues that already exist in the game ...
 
Version 1.4 has been posted. Major change is the inclusion of the Civ4lerts component which will warn you of pending issues in your cities. Also included several improvements to screens by glider1 and the BUG mod team which should make playing with Revolution easier. Only a couple of bug fixes to the Revolution part of the code.

Definitely save game compatible back to 1.35.
 
Top Bottom