dhzEnslavement

Joined
Jul 5, 2004
Messages
23,562
Location
Canberra, Australia
Based on Zebra9's zUnit Enslavement

Designed for Bts 3.19. Using BUG.

This is a beta release since I will be without internet for most of the next 6 weeks.

This mod is based on Zebra9's zEnslavement mod. When I figure out how to do HTML as well as he has I will get the documentation done properly. In the meantime there is a readme with some basic documentation in it.

The purpose of this mod:

1. To extend zEnslavement so that you can specify what is captured for nay given winning and losing unit combination with technology limits.

2. To expand piracy.
Ships captured by barbarian pirates wil become a pirate of the same type as the capturer.
All barbarian ships act like pirates.

3. To make simple specifying rules for the capture of animal units.
Note. These can be overwritten by using the general specification methods.

The first was the main reason I wrote this mod. I wanted a unit eg archer to capture a different unit depending on what they beat. Eg a lion if they defeated a lion and a slave if they defeated a warrior.

Edit: 4th Aug - non BUG version now also available
Edit: 6th Aug - removed because has major error
 
@The J

The code that does the work is fairly straight forward. The bit that gets the data into the rules is a bit more complex because it has to deal with humans. In fact most of the code is to do with data entry or rule definition.

At the basic level there are three objects:-
1. a rule - this describes which unit can capture which unit, the probability of success, technology limits and what the captured unit will be. For example an archer can capture a warrior 25% of the time resulting in a slave if the winning team has tech slavery but does not have tech emancipation.

2. a list of rules - just a list containing many rules. I needed one for the generic rules and one for the override rules.

3. enslavement process - needed to handle the fact that override rules over ride the generic rules :) plus handles all the data entry.

Data entry - you can simply define one rule at a time using addUnitTypeRule to define each enslavement rule you want. The others are entry methods are there to speed this up, for example when you want rules to apply to unit classes instead of unit types.

@strategyonly,

They should know better and use BUG :)

Nah, I am working on a non- BUG version but have had a couple of bad days. I will try and finish testing today and get one up tomorrow or the next day.
 
They should know better and use BUG :)

Nah, I am working on a non- BUG version but have had a couple of bad days. I will try and finish testing today and get one up tomorrow or the next day.

Yeah i have tried each time a new version comes out to get it to work, with NO results, just does not work with my mod for some reason??

And great thx for trying to get two versions up and running.
 
New non-BUG version has been posted in the first post.

Looked at it, looks ok, but one thing, when an animal is captured, you should be able to bring "it" back to your cities, it really doesnt take much to do that, just change:

<bAnimal>1</bAnimal> to
<bAnimal>0</bAnimal> in the Civ4UnitsInfo.

I took it alot further and made them that were captured and put them in a Zoo, plus when you do that you get a bonus of money etc.
 
Looked at it, looks ok, but one thing, when an animal is captured, you should be able to bring "it" back to your cities, it really doesnt take much to do that, just change:

<bAnimal>1</bAnimal> to
<bAnimal>0</bAnimal> in the Civ4UnitsInfo.

I took it alot further and made them that were captured and put them in a Zoo, plus when you do that you get a bonus of money etc.

I looked for graphics for a zoo but could not find any so did not go down that route. Ie I left that as "a task for the student" :) Where did you get yours? Do I need to make that XML change for each animal?
 
Besides I am a generalist and I saw a need for a generic capture routine that could be used by moders in almost any way they saw fit. I am thinking I need to look at adding civics limits and allowing some units to capture "out of their domain".
 
Back
Top Bottom