Population Control and Horse Pastures Updated notes at bottom of post. Updated 3/8/09
Original Post
Spoiler Alert, click show to read:
The idea is simple enough, Recruit a unit in a settlement and that settlement loses the population needed to supply trained men for that unit. Disband a unit and you gain population back into random settlements you own.
Unit Type - Population Required
Siege 16
Cavalry 24
Ship 32
Infantry 64
I would also include a Migration script that would see small population increases every couple of years.
Ive been wanting to get this idea out for some time. The script itself is part of my Recruitment Limitations Mod. It is just a matter of compiling the scripts into one script for ease of installation. I have not uploaded the files yet as would like some feed back on the idea below first...
The other idea i had (and i hope i am able to explain it here with enough detail to get interest in the idea, so bare with me while i try to explain it), is similar to the above except for horses/cavalry and that is to tie farms and stables to the recruitment of cavalry. Each level of farm would allow an increase in the number of horses available to a stable (you must breed the horses), and each level of stable would have a maximum number of available horses to recruit from (the horses must be properly trained).
For example, the very first farm you can build would generate 20 horses per turn (having no farm in the settlement would generate 10), Each tier of farm would generate significantly more (40,60,80). The very first stable you can build would hold a maximum of 50 trained horses (taken from the farms), each tier of stable after that would hold more trained horses (100,150,200,250). You can only recruit cavalry units if you have enough horses for the entire unit. As per the population required (above) to recruit a unit (the population deducted from the settlement when you recruit the population) - a cavalry unit reduces the settlements population by 24. So 24 horses would 'also' be needed in the stable to allow recruitment.
The farms would always provide horses and fill up the stables, never running out. But when you recruit cavalry units the stable horses would empty and need to be replenished, over time. That time would be Dependant on what size farm you had.
There are 2 ways i was thinking of implementing that idea, one is to have the farm and stable in EACH settlement limit only that settlement, or have every farm and every stable add to a kingdom-wide limit. (3 settlements with 3 first tier farms would generate -for the entire kingdom- 60 horses a turn. Having 3 first tier stables would allow for 150 trained horses to recruit from. More farms/stables would increase those numbers and allow for more cavalry units. Disbanding cavalry would add those trained horses back into the stable. I would also include a script that allows the player to check how many horses he is currently breeding and how many horses are ready to be turned into cavalry units in his/her stables. < in the form of a pop-up. Additional ideas i was thinking to include are horse trading between factions and add bandits (of a sort) that steal horses off your farms.
Of course, this is just an idea to add to the population control mod i plan to release. I just want to see if there would be any interest or ideas to help implement it from the SS community.
Otherwise, Without the horse idea, the mod is pretty much ready to be released.
So, any takers...
The following 2 mods will be updated regularly.
Population Control - Released and working- Updated Version in Horse Pastures zip file.
This mod will cause your population in a settlement to decrease whenever you recruit a unit. A migration script is included so you will see population increases as people migrate to your kingdom. The chances of people migrating is only 25% every 5 turns.
Please report on how the mod works for you, any observation is welcome
Compatability
All mods for SS 6.x
Installation
A ReadMe is attached to the zip.
NOTE: This will be merged with the Horse Pastures mod for a more complete mod. Adding a much needed dynamic to the game. (in my opinion)
Screenshots..
Spoiler Alert, click show to read:
This is of low quality as i have the game on low graphics at the moment...
Horse Pastures - In Testing
This mod is released in beta.
Most of the discussion in this thread is based around this horse pasture mod. Its still more of an idea then an actual mod, you're more than welcome to add your 2 cents.
The basic Idea:
This mod will act similar to that of the Population Control mod except for horses. When you recruit a cavary unit your horse pools are decreased. Certain buildings (horse pastures) increase your horse pool.
The player can check how many horses he has available by requesting scroll information in any settlement. (the '?' top right of any settlement scroll). This information is only an estimate to your total horse population. In multiples of 24 (as 24 is needed to recruit one cavalry). It also lets you know the exact number of cavalry you can train in the given turn.
Screenshots...
Spoiler Alert, click show to read:
This is of low quality as i have the game on low graphics at the moment...
Interesting notes on horses in the medieval age
Spoiler Alert, click show to read:
Horses in medieval times were extremely important and took on roles in almost every facet of daily life, from travel and trade to farming and warfare. Horse's were so important that entire communities would gather their moneys together to buy one horse for the community (sometimes as expensive as a house!) and with the hope the horse would reproduce.
During warfare the victors would search through the enemy dead for Armour, weapons and horses. If a regular soldier manage to capture an enemies horse it could be his ticket to promotion within the army!
Horses brought honor and reputation to the rider and during competition, such as the joust, the winner often gaining the others mount as a prize, the loser willing to pay large sums to get his mount back, and thus, his honor!.
Horses were also used to be eaten. This was common during a siege when there was no food and soldiers had nothing to eat. They then ate the horse and drank its blood to survive a little bit longer. Of course this was rare, but nevertheless it did happen.
Horses were used to show wealth and ensure comfort (in 1445, the English royal household contained 60 horses in the king's stable and 186 kept for "chariots" (carriages) and carts).
Horses were used in farming such as ploughing and transporting crops to the market.
Additional Features
3 new buildings (Horse Farmer, Horse Dealer and Horse Trader).
Most cavalry units in the EDB have 24 men, so 24 horses are required to recruit 1 cavalry unit. (some cavalry in the EDB have 32, some only 8. But more then 98% have 24). This includes elephants, camels etc.
Each building grants an increase in the kingdoms horse population (2/4/8 respectfully) each turn (all my scripts are based on 2tpy - every 6 months) - so 12 turns is required for 1 settlement with a horse farmer to provide enough horses for 1 cavalry unit (3 turns if the settlement has a Horse Trader). Keep in mind that all your settlements contribute, so 12 settlements with a horse farmer is 1 cavalry every turn. More settlements with the buildings = more horses.
If your kingdom has less then 24 horses, you can not recruit.
The buildings also provide trade bonuses. More so for the AI then the player.
There is no limit to the number of horses your faction can own
Farms provide 1 horse per 2 turns per tier. So Irrigated farms provide 4 horses every 2 turns.
To Do List
Create new buildings (Horse Farmer, Horse Dealer and Horse Trader). DONE
Create script that increase/decreases the players horse pools (based on buildings and cavalry trained). DONE
Add in game messages to let the player check his horse pasture totals. (How many horses he has). DONE
Add in game messages to allow the player to check his horse production. DONE
Add in game messages to allow the player to check his horse usage. (what buildings are using up his horse pastures). DONE
Add Faction Specific Horse numbers/quality. PARTLY DONE
Add Horse Thieves. NOT DONE
Add trade options for the player to buy and sell his horses. NOT DONE
The above not done portions should not take too long. Except for the trade options and horse thieves. they still require some thought.
Buildings Affected List
Spoiler Alert, click show to read:
This is a list of all buildings that breed and require horses to build and maintain. Updated Mounts Bred and Used is Increased/Decreased every 2 turns! To Build is how many horses are required to construct the building initially.
Building Name-Bred -Used -To Build
HORSEPASTURES These are new with the mod, and are the players main source of increasing his available horses.
Horse Farmer - 4 - 0 - 0
Horse Dealer - 8 - 0 - 0
Horse Trader - 16 - 0 - 0
FARMS Farms require horses to plough or otherwise aid in working the fields. Thus they each have a required number of horses before you can construct a farm. Once built, the horses breed and reproduce.
Land Clearance - 1 - 0 - 10
Communal Farming - 2 - 0 - 20
Crop Rotation - 3 - 0 - 30
Irrigation - 4 - 0 - 40
MARKETS Merchants, farmers and villages from outlying areas require horses to keep the local and regional markets booming.
Corn Exchange - 0 - 1 - 10
Market - 0 - 2 - 20
Fairground - 0 - 4 - 30
Great Market - 0 - 6 - 40
Merchants Quarter - 0 - 8 - 50
CARAVANS Camels are used to ensure these stops are properly maintained, They also aid in training camels.
Caravan Stop - 0 - 1 - 10
Caravanersary - 0 - 2 - 20
JOUSTS Jousting fields require horses for practice and tournaments.
Jousting Lists - 0 - 1 - 10
Tourney Fields - 0 - 2 - 20
GUILDS The Merchants guild require horses to ensure a stable and otherwise booming economy.
Merchants Guild - 0 - 2 - 0
Master Merchant - 0 - 4 - 0
Grand Merchant - 0 - 8 - 0
The horse breeders guild, if attained will give the player a much needed boost to his available horses.
Horse Breeder - 4 - 0 - 0
Master Breeder - 8 - 0 - 0
Grand Breeder - 12 - 0 - 0
Notes on Trade and possible future additions
Spoiler Alert, click show to read:
The horse pastures mod is just a taste of what i really want to do. Ive never been completly satisfied with the trade system in M2TW, there is no trade really. If you open your settlements info and look at the trade the settlement is making you see things like wool, timber etc. But you dont actually stock pile any of it, nor do you use any of it. It is simply converted into money and therefore affects your treasury. Trade agreements are really only used to set up alliances and maybe get thier map info or allow your military forces to roam about thier territory. Nothing that is really 'trade based'. So the horse pastures is my first attempt at trying to make the player earn his keep so to speak. The only issue with any idea like that is turn lag, as this scripting language is very poor and takes a long time for the engine to process. But i do plan to make trade more important to the player.
3/8/08 Update First beta release.
I have merged the Population Control mod with the Horse Pastures. If you wish to try this mod i would recommend using my 2TPY mod. (will be uploading the settlement mechanics mid week to complete that) simply paste this mods files over top.
All feedback is welcome, good or bad, its the only way to improve on it
Compatability
SS 6.2 Only.
After a final release i will update the files for RR/RC, Byg ect...
Installation
Install Graculs 6.2 Patch (as per those instructions)
Unzip the attached Horse Pastures zip file to your Stainless Steel Directory (it will overwrite the data file and add or replace the needed files)
Let me know how it plays out for you...
I'll post and update this page whenever more info is available.
Last edited by Tsarsies; March 08, 2009 at 05:23 PM.
Reason: Uploaded Horse Pastures Beta
...longbows, in skilled hands, could reach further than trebuchets...
Those numbers i suggested are more a reference point to give the idea better explanation. They could be changed depending on the unit scale people use. Although, I think all settlements will stay the same in regards to populaton levels regardless of the unit scale.
The AI could use it just maybe not as effectivly as a human (but thats most AI's in general). Its really just a limiting factor. No horses = no cavalry to train.
In essence, it would be similar to how the EDB works, every few turns units refresh and become available to recruit, except this is adding an additional element, horse breeding for cavalry units. So the AI could use it just as well as it uses any EDB. At times it may force the AI to recruit more infantry or archers.
on a side note...
The idea could also be easily adapted for other unit types. Wood/stone for siege towers/catapults (limiting the AI's and players Siege units), Wood for Ship building. Could also be adapted to limit buildings based on building supplies. I guess it could also be used as a stepping stone for a more indepth trade mod that forces players to acquire materials (through trade and resources on the map) before training/building. No supplies, no building. and should be workable so the AI affected aswell. Lengthy script, but doable.
But umm, yeah, the AI should handle it fine.
...longbows, in skilled hands, could reach further than trebuchets...
this sounds nice, basically having the ability to "colonize" a minor settlement, ie, recruit peasants from high population city, transport, and disband in whatever city/castle you please...
might seem like an exploit at first, but at the end of it all, your paying for these colonists, by, a: recruiting them, b: upkeep during transport, and c: if via a naval vessel, you need to pay for the upkeep for the boats during that turn, instead of doing something else, like blockading a port (like that works xD)
The only thing I can think of with having the AI use the horse availability system is whether or not the AI will be able to make intelligent decisions regarding horses and cavalry. For example say you have a cavalry-heavy faction such as the Mongols...will the Mongols be able to realise that in order to build their best units (i.e. cavalry) they have to construct buildings x,y & z first, or will they just be stuck recruiting their lesser units (i.e. infantry)?
@ Caesar Clivus
Building issues would (for the most part) be no different then they already are. The AI can already build up it's settlements, and i have found tends to out-build me in some cases. So i don't think building specific buildings would cause many issues for the AI. With that said, i do see the issue your speaking of and how that could still cause problems for certain factions, like you said, the Mongols. I guess, for those factions, increasing the number of horses that they breed from farms should suffice in countering a (severe) lack of horses. A lack of horses is not a bad thing, a sever lack IS, especially for horse heavy factions.
It wouldn't just be the stables that supply trained horses, any building that allows the recruitment of a cavalry unit would (and should) supply trained horses. else, why would that unit be available to train from such a building. Each building would just add to the regions trained horse limit (or faction wide limit - which ever is used).
Mercenary cavalry would not be affected, regardless of a factions horse limits.
@ luciferleigh
The population would not be able to be taken advantage of in that way, i have it set up in a way that when you disband, the units will 'migrate' back into the population over a number of turns and across your whole kingdom. You can't choose where the people will go, they will go where they please. It is possible for them to all migrate to the one settlement, though highly unlikely. This will also affect units you disband outside your own borders, They will make their own way back within your borders. So if you are on a crusade and decide to disband some units, they will slowly migrate into your population.
The migration script is a separate matter, and would occur independently from any disbanded units migrating back into your population.
...longbows, in skilled hands, could reach further than trebuchets...
i agree that it would be seen as an exploit, but, the ai seems to have quite a population boost compared to the player, maybe a possible workaround is to change the peasants into colonists, and increase their recruitment cost, and upkeep, and replenish rate, and a min poulation requirement from the "host" settlement, maybe a cost to disband them as well, depending on how stable (unrest) and how far the distance to capital is, although that would probably require a lot of scripting, and the latter might not even be possible :/
I don't plan for the script to change any values in the EDU, which changing the recruitment and upkeep costs would require.
Also, i think you may be getting confused or i am misunderstanding you , the 'Migration' script is different to the 'Population Control' script.
The Migration script simply increases population levels based on an event that the player will recieve. Its nothing more then adding a little flavor to your campaign whereby you are told that people have migrated from another factions borders into your own and have set up home. The event can happen once every 12 turns, but has a chance to occur every 2 turns if it has not fired in 12 turns. (if that makes sense). No more then 300 people will migrate in a 12 turn period. So its effects will only make a difference late in game and only if you are lucky enough to have alot of migration during the course of your campaign.
The Population Control script adjusts a settlements population whenever a unit is recruited. That adjustment is based on the type of unit you recruit. In addition, the script also disperses population back into your settlements (randomly) when you disband. (does not affect mercenary units that are disbanded).
The migration script is already written and works 100% with no issues, as is the script that regulates population when a unit is recruited/disbanded.
I may yet add to the migration script to cause each migration to be completly different and add a different amount of population based on events.
This mod is more or less to add more flavor to the game, not intended to change ones gameplay (although recruiting constantly from one settlement would make it hard for that settlement to upgrade! forcing the player to spread thier recruitment across the realm. Which is why the migration script is added, to help balance it.
The horse idea is just something i am toying with, and may yet turn into a full fledge trade/resource mod that requires the player to need resources/supplies to construct/recruit which will add a new dimension of strategy to the game. (its only an idea at the moment). and am trying to gather the communities input for it in here
Any script i write i try to make it so it is compatable with other mods (to a point at least), add a little flavour or increase the difficulty etc (such as the garrison script).
...longbows, in skilled hands, could reach further than trebuchets...
Damn, my posts are nearly always to damn long... lol
dont worry bout it, a well written explanation is way better than a "no, it wont work just because"
xD
as for the topic, i understand what you mean, it was the same way in vanilla rtw, when you recruit a unit, it gets deducted from a city's total population, and was reintroduced to the local population where you disband the said unit, i used it to boost the populations in mainland greece/europe so i could retrain my super soldiers that came all the way from antioch (was playing as the seluicids, only campaign i finished), the only problem is, there were no castles in rtw, admitedly it seemed like an exploit, although at the time i didnt even know that i was "exploiting"
as for my posts, i had a feeling that it wouldnt work that way, was mostly wishful thinking
as for unit sizes - some of us don't use huge units, many people's systems would struggle with full-stack armies that size. Even my updated on I only have on large unit size by default.
I like the idea of "population" representing total number that can be recruited, rather than the total population. Be interesting to see if the AI can cope with it.
If the population represents the recruitable population rather than the actual population then you could have some oddities with being able to recruit the population down to nil unless you specifically stop that. Would it also follow that a reduction in the recruitable population would reduce the growth of a city? (e.g. it'd grow at 2% of 1900 rather than 2% of 2012 etc) It may do but could be worth thinking about.
How much detail is it possible to pick up from the game about grain imports and exports? I'm sure I've seen them happen at some point as a population growth factor, but can't remember much about it. It'd be interesting to have the availabilty of food from trade as well as farms affect the availability of horses and population growth - modelling the requirement for it could be hard though, e.g. region X recruits more horses than it has fodder for so wants to import grain, which the game probably wouldn't realise without a fancy script (unless there's a few variables in there to track demand for food that you can alter).
Thanks for the link about horses in the middle ages Rozanov.
When you recruit a unit the population loss required to recruit that unit would be taken directly from that settlement when the unit is recruited. Im only using mundane values for now;
Siege 16
Cavalry 24
Ship 32
Infantry 64
Ofcourse, some infantry units have more then 64 soldiers, some less, likewise with siege units having more then 16. So the above values are just a base to work from. Would have to be tweaked dependant on population levels set in the descr_strat and settlement_mechanics. For example, if a castle has a population max of 10,000 (which it does in the 6.2 patch) then how many units should a castle of that size be able to recruit, in reality. Take that value and you have a nice testing value to begin with. Lets say 20 cavalry units in reality could be trained from a population that size, using my base value of 24, thats 480 population of the 10,000 that will be affected (and thus lowering the population by 480 to 9520). Meaning to completly exhaust that castles population you would have to recruit about 416 cavalry units. You might not even recruit that many cavalry from one settlement during the entire game.
I eventually want the values to have some impact, clearly the above values wont make much difference at all in the course of the game. But i dont want the values to be too high.
Would it also follow that a reduction in the recruitable population would reduce the growth of a city? (e.g. it'd grow at 2% of 1900 rather than 2% of 2012 etc) It may do but could be worth thinking about.
You are correct. And thus slowing the growth of a settlement that does alot of recruitment.
How much detail is it possible to pick up from the game about grain imports and exports? I'm sure I've seen them happen at some point as a population growth factor, but can't remember much about it. It'd be interesting to have the availabilty of food from trade as well as farms affect the availability of horses and population growth - modelling the requirement for it could be hard though, e.g. region X recruits more horses than it has fodder for so wants to import grain, which the game probably wouldn't realise without a fancy script (unless there's a few variables in there to track demand for food that you can alter).
this is somthing that would need an entire new script to enable. You cant check the value of say grain imports into a city. It's hardcoded, atleast as far as i know. You can check to see if that settlement has grain as an import (atleast, from what i remember). Regardless, it would be possible to set up a scripted trade network, working off completly new values that we would assign to resources and trade agreements. Take my horse idea thus far, the values for horse breeding based on farming levels are simply invented (but will be more historical once i do more indepth research on it). The entire idea is open to debate on what condition should give what value. A Faction with trade agreements with the mongols might get an increase in horse breeding while the agreement is active. Having a access to the timber resource on the map could simply reduce the cost of building wooden buildings or increase the number of archers you could recruit. X number of building Y could give points aswell to simulate the populace and what they do in that building.
The whole idea is obviously in need of some thought and debate, but im pretty confident i can get it to work. It would initially be a faction wide limit, so recruiting X horses more than that region supplies would not be affected unless it is exhausting the entire kingdoms resources for horses. All regions would add to the kingdom pot so to speak.
...longbows, in skilled hands, could reach further than trebuchets...
One problem i can think of regarding horses and farms -
The steppes were not strictly farmed, animals were grazed but the populations were mainly namdic and so didn't "farm" in the same way as settled populations did. Making the Mongols or Cumans (for example) settle down and farm to get better horses doesn't seem quite right to me.
Equally the highest level of farms is irrigation - doesn't seem strictly relevant to horse breeding. On the other hand 3 field crop rotation seems in part to have been introduced to allow for a year of growing fodder for horses (though more for their farm usages than warfare.)
I doubt the AI will "think" about improving farms to improve it's cavalry - unless we give some sort of bonus associated with it - but as farms already give bonuses the AI will improve them anyway. (That's about the limit of the AI -associate a bonus to any building and it increases the likelihood of it being built.)
Last edited by Gorrrrrn; March 03, 2009 at 05:45 AM.
Reason: rethought reply
I was in the middle of typing this up when you posted the above post rozanov. Regarding the mongols and this post, somthing would have to be implimented as a special case for them... but anyway...
I came up with an idea that may make the whole trade based supply sytem work for both the player and the AI without using any script and therefore, no turn lag. I was thinking of basing it off the guilds system.
So first, let me quickly explain how guilds work (i know most of you already know) so you may skip this...
Spoiler Alert, click show to read:
Every time you construct a particular building or train certain units you are aqcuiring 'guild points' for that settlement. For example, constructing a Large Stone Wall earns 15 points towards the masons guild in that settlement. (you need 100 points to be offered the masons guild, 250 for the master masons and 500 for the grand master mason). Each level of guild has requirements other then the needed guild points. Every settlement can have the first level of guild, the second level of guild is restricted to 1 per faction, the third level is restricted to 1 in the whole world!. The benefits a guild gives is in the EDB, some allow for recruitment of specialized units such as sherwood archers etc.
So thats a basic idea of guilds...
So here is my idea...
Create a few new guild buildings, for now call them 'Trade1' 'Trade2' 'Trade3' (could add more and obviously rename them to somthing more suitable). These 3 new buildings would be guilds (all of the same guild, tier 1, 2 and 3). Every settlement would be able to earn points towards these guild from turn 1 allowing every settlement to earn trading points (or supplies for the settlement) (guild points for that guild) by simply doing trading or other such conditions we deem suitable to earn guild points for the Trade Guild (or horse farm etc ). The AI could handle this sytem and i would only need to add an in-game message for the player so he can keep track of his trade supplies (guild points earned).
The way i imagine it would work is simple. Create a unit of cavalry, lose some guild points towards the Horse Guild, if the settlement has a farm at the beginning of the turn, earn some points towards the horse guild. Thus fluctuating the number of horses available to that settlement alone. This could be done with any resource we desire, Lumber for buildings, Stone for other buildings, grain for food, iron and wood for weapons and armor etc etc. A guild building for each.
Now you may be wondering what are the points going to do?
Well if you are able to earn 100 guild points you will then be offered the first tier of the guild tree for that settlement (Trade1 building - this could be the horse guild for example...). I would use a monitor that keeps track of every guild point you earn, and give the player an option to see how many he has towards that guild.
And how will it affect trade and supplies in the game?
If the settlement drops to 0 guild points for that guild then trading of that item (horses) will freeze, you can no longer recruit cavalry in that settlement until you earn more points. This would be so for both AI and player.
Problems or issues regarding this idea...
We all know how dumb this AI is and can be. Many people have attempted to increase the challenge the AI poses to us in many different ways. The Money Script, Garrison Spawns, BYGs Supply and Command, Revamped AI files etc. The money script is the best comparison for how the AI will handle this system if we decide to impliment it. The AI gets additional money each turn or under certain circumstances to aid it, it doesnt know how to spend its money wisely like a player. So with that said, its likely the AI wont know it needs to earn guild points to be able to recruit more units or trade a certain resource etc. So a script put in place, similar to that of the money script would ensure the AI gets more guild points (and for doing nothing) for this idea then the player does. So it will work for the AI just as well as the AI handles the money script < as best can be expected...
The only other issue is that new buildings would need to be created. As ive never actually created a building, i dont know how easy that would be to do. So any help would be appreciated...
Any suggestions...
...longbows, in skilled hands, could reach further than trebuchets...
Tsarsies I'm assuming that the player will never actually build one of these new guild buildings right and that it's just the guild points that you're interested in? Because otherwise you wouldn't be able to ever accept any other guild buildings in those settlements (which would be a bit sucky). But apart from that I like the sounds of that idea.