 |
|  |
 |
|
BigRich
|
 |
of the Trentan
May 2001 time: 05:20
|
|
quote: Originally posted by Velociryx
As it turns out, I did ultimately collapse men and women together....experimented with the random pairings idea, but I think ultimately, I found a "cleaner" methodology for implementing demographic archetypal drift in provinces (allowing peasants who become burghers to shift into a new archetype upon their ascension into a better social class). In that way, we simplify the population growth formula (new pop units are simply plugged into the existing demographic framework of the province), while keeping alive the coolest aspect of that notion, which is the idea of a dynamic demographic in the province. And, specifically for great leader generation, if we wanna provide a bio that includes parental heritage, we could always randomly generate one at that point.
*snip*
-=Vel=- |
Vel,
Not to flog a dead horse here, but I've been thinking over the 'random pairings' idea and I think I have a way to do it. I found it confusing to try and condense down into a couple of formulae, but OK to write down as a procedure. See what you think. For all the programmers out there I apologise for the horrible pseudo-code 
Population growth v1.1
Some definitions first.
suffixes (1) to (8) denote the eight archetypes
n(1) to n(8) - current archetype numbers
nf(1) to nf(8) - newly generated archetype numbers.
N - current total population.
r(1) - r(8) - probability range for generating parent.
np - number of new pop. to be generated.
p1 - parent 1
p2 - parent 2
np = [1+(growth%/100)] x N
start loop 1 to np
REM: generate parent 1.
start loop a = 1 to 8
r(a) = n(a)/N + n(a-1)/N : if a-1 = 0 then r(a) = n(a)/N
end loop
generate random number x=0-1
"if 0
"if r(7)
edit: these bits don't come out in the finished post for some reason. I think the notes below say it all though.
N=N-1
REM: the idea here is to give each archetype a probability range. Say we have three archetypes 10%, 30% and 60% of the population. The range for the first is 0-0.1, the range for the second is 0.11-0.4 and the range for the third is 0.41-1. A random number can then be used to select an archetype.
REM: generate parent 2.
start loop a = 1 to 8
r(a) = n(a)/N + n(a-1)/N : if a-1 = 0 then r(a) = n(a)/N
end loop
generate random number x=0-1
"if 0
"if r(7)
edit: these bits don't come out in the finished post for some reason. I think the notes above say it all though.
N=N-1
we now have two parents selected. Note that they are both entirely random but the probability range for the second could be weighted to allow for example for nobles having a much higher chance of having children by other nobles. The archetype for the offspring of these parents (assume 1 child per pairing for simplicity) can now be decided according to whatever rules you want eg. 50:50 chance of following either parent archetype.
nf(a) = nf(a) + 1, where a is the child archetype.
end loop.
Implications:
1. There will be a certain lag period in population calculations. The archetype increases calculated this round will be effective eg. 18 turns into the future, to allow these new children to grow up! So 18 turns worth of population growths are stored away somewhere (fairly easy, all we need is an 18 x 8 table storing the numbers added to each archetype each year.) On turn 19, this table comes into effect for calculating population changes for that turn. For simplicity I suggest that the first 18 turns have a constant population birth rate and that the numbers are plugged into the archetypes according to initial percentages - no population evolution.
2. We would need a separate birth and death rate, given the above lag. Population growth each turn has effectively been predetermined 18 turns ago. Population death by contrast is instant for that turn.
3. We are essentially slightly de-abstracting(?) the notion of abstract children and elders in the population by keeping tabs on the children. Population death could be applied to existing population and to these children *before* they get added to the population pool at a later date as working adults. Could allow for Infamous slaughtering of the children type behavior when a Province is captured that has a direct knock on effect on that Province.
Whew - this has been quite a long post. The current model is probably a lot simpler , but I figured I'd post this anyway.
thoughts?
Rich.
Last edited by BigRich on 17-06-2002 at 13:58
|
|
|  |
 |
|  |
 |
|  |
 |
|
Spaced Cowboy
|
 |
Dallas TX
Nov 2001 time: 23:20
|
|
Guys,
Hate to rain on your parade and everything, having code attached to every citizen in the realm is gonna make the min system specs look like cutting edge 2005.
P6 10.2Ghz
4 G Ram
etc...
I suggest that we think in terms of groups, like the org stuff. Normally, during this period, class was determined at birth, with some after birth movement amongst classes allowed. Also prefer the PC terminology for male/female. Instead of noblemen, just nobles. In this manner we do not have to reference sex.
Vel,
You made a mistake on your math in the Nuria example. you have clergy at the top with an org level of 20, but later u use 30. I was thinking that 30 made more sense when I first read it, then to see u use it.
R:PM
|
|
|  |
 |
|  |
 |
|
BigRich
|
 |
of the Trentan
May 2001 time: 05:20
|
|
quote: Originally posted by Ramo

I was under the impression that we were going to keep track of citizens in large groups (think Civ, but not as extreme). So, with 3*10^4 residents of CB, we might have, say, 300 or so groups of people to deal with. |
That's what I thought as well. I think what RPM has in mind is more or less what's in place at the moment??
But assuming for the sake of argument that the slightly more elaborate pairing model is adopted, it's still dealing in relatively large groups ie. the eight (as currently envisaged) groups of citizens per province representing the different archetypes. All the pairing model does is to:
1. Pick one of those groups at random, with the probability that a group is picked being directly proportional to the percentage of province population in that group.
2. Repeat step 1, allowing for the fact that the first group is now effectively 1 short.
3. Add a new citizen to a group according to whatever rules are desired, a simple example being a 50:50 chance of adding that new citizen to one of the above selected groups.
So even with this model, as far as I can see, we are only tracking changes in the sizes of fairly large groups. No bookkeeping at a citizen level is needed. I don't think there is anything in version 1.2 which requires this level of detail either, though I could be missing something.
Rich.
|
|
|  |
 |
|
Ramo
|
 |
Austin, Texas, USA
Oct 1999 time: 23:20
|
|
* What's the coinage in CB? 
________________
First of all, after thinking it over, I have to agree with RPM in that dealing with classes and archetypes would be easier/more realistic than dealing with individuals or even large groups of individualslike Civ.
_______________
First, there is a base rate of population growth. I suggest that it should be proportional to the surplus food production in the province.
base population growth rate = (growth constant)*(surplus food production)
Then we take in micro-parasitic affects. This is not quite straight-forward since rural and urban areas behaved fundamentally different. Since new epidemics get worse as the population density increases, in large cities we'd see huge, huge decreases in population; rural areas would be comparatively well off.
However, In large cities, the major diseases of the time were able continuously stay within the population. This has a couple main effects:
1. The population eventually becomes relatively resistant to the disease. Since we're dealing with a relatively short period of time, this is more or less irrelevant.
2. Since the disease is constantly going around, only young children are affected after the initial contact; it becomes a "childhood disease". This is good for the population in two respects: children have better immune systems than adults and young children don't contribute to society, so there won't be huge problems when they die en masse. On the other hand, in rural areas, the people who do contribute to society get constantly massacred, so society ends up breaking down.
So, to effectively implement this, we'll have to break the population down into urban and rural. We could break these categories down further by class, or we could not to simplify things. Assuming the latter:
disease modifier = -1*(proportion urban)*(urban disease constant) - (proportion rural)*(rural disease constant)*(random number to represent number of outbreaks)
Then the class happiness modifer figures are calculated. Based on the happiness level of each class, their respective base population growth may be modified.
class happiness modifier = (class happiness modifier constant)(happiness of the class - base happiness)
Finally, we have class advancement. There's a possibility that a peasant may become a burgher, or a burgher a noble.
burgher advancement modifier = (peasant advancement constant)*(peasant happiness - peasant happiness)
Same thing with the Nobility and Burghers.
We than calculate the new population for each class:
class population = (initial class population)*exp(net class population growth rate)
________
Now, to assign archetypes.
We could simply use the previous turn's figures as a basis.
archetype total = (initial archtype total)*(Summation over all classes((new number of class)/(initial number of class)*(proportion of archetype this class type)))
___________
Everything else could be static (unless the player intervenes of course).
____________
Also, I suggest we dump training level altogether. It seems sort of extraneous (and a pain) and doesn't really add anything for the player.
|
|
|  |
 |
|
JMarks
|
 |
formerly known as the artist
Mar 2000 time: 05:20
|
|
Ramo,
I would disagree on ridding ourselves of the training. At least if you're talking about raising armies and such. The other stuff can be explained away by game mechanics.]
The only soldiers who don't need training are the nobles/knights. They train all their lives, so they're already armed and dangerous. On the other hand, everyone else does what they do which does not include fighting. Farmers farm, buisness men busy, etc. However, certain orders can partially change that. EI Only sport allowed on Sunday:archery. This allows the majority of the population skill in the bow which can be readily used in the field. That is, no training, just give them the funds, etc, and they're good to go. Otherwise, if they aren't trained in some way, they're cannon fodder. Which might make mercenaries particularly/especially favorable early on when you'd have to train their equivilants for a while to get remotely similar results.
Of course if you meant occupational training, never mind. 
|
|
|  |
 |
|
BigRich
|
 |
of the Trentan
May 2001 time: 05:20
|
|
quote: Originally posted by RPMisCOOL
Rich,
What does the differences in training get you?
I think that Vel's example used a farm type person that got a little training each turn and once 20% was reached he would be able to do mining or something like that. Cool concept I suppose, but not realistic.
Moreover, it is the unemployed and unskilled getting the mining jobs.
I do not think that there was any overall agricultural or mining efficiency increases in the era of interest. (Perhaps via improvements/buildings). |
RPM,
Good points one and all - maybe training *should* increase work efficiency? The main thing with training, seemed to be that certain buildings, especially the more advanced ones, required workers of a certain training level to operate (see original Societal Model thread). Of course this requirement could easily be removed but it was a cool concept - well IMO at least.
Another thought about training (if implemented at all). It could be 'on the job training' for certain work like smithing for example. Workers can be assigned to a particular job and set to *training* mode - building up expertise with time. Meanwhile they are permanently assigned to their building, come famine, plague or war. Gives you a strategic choice between having a relatively flexible but untrained workforce, or a trained workforce that enables advanced buildings but takes time to develop - and is completely inflexible while it develops.
Should be fairly easy to keep track of the relatively small numbers of workers in training, especially as its only basically a time counter - the workers cannot be moved around whilst they are training. The total number of trained workers (could even be different training categories I guess) is a Provincial variable, which is updated every time a worker finishes his training.
On the other hand you could well be right and its easier to ditch the concept entirely, for the sake of a minimal gameplay loss
Rich.
|
|
|  |
 |
|
JMarks
|
 |
formerly known as the artist
Mar 2000 time: 05:20
|
|
quote: Originally posted by RPMisCOOL
Better would be to have the training impact production negatively as opposed to having to lock them in.
When you are "training", you are less productive. You do things slower because you are learning. It is not conceivable to think that a "master" smithy would sit in his building when the baddies were coming to town.
Remember, with training, you are back to the citizen level.
Just remember that productivity due to training is constant. A father, a master smithy, trains his son as an apprentice, and then more than likely retires and his sone takes over the business. Net productivity gain is zero. |
True, when sons apprentice to take over their father's jobs they should be skilled when they come into the actual citizen pot. However, apprenticeships aside (antother reason to have a youth model), what if you need to START the blacksmithy operation? Unless you send youths to neighboring counties to train them there, or if a smithy moves in, a farmer will have to learn, and he'll suck at it for a while. Granted, if you have your society running like a well oiled machine, then you wont have to worry about training adults, since the youth will learn the stuff. But untill then the untrained will probably have take up the art and start at a lower level. Am I making any sense? Of course you could leave training out altogether and just apprentice your youths to areas you'll want 10-20 years later. Otherwise your out of luck. But then the problem of 'what if there is no one of this type currently in the game'? Then you're really out of luck. Better to have training for such situations, than without.
Oh, and there were 'advances' in agriculture in the time period. I think, I forgot which time period we're working with. Anyway, you have the heavy plow which replaced the scratch plow, and you have the horse collars which allowed you to use horses without chocking them. I'm sure later in the game you can have limited breeding for better types of food.
Of course if it isn't the time period I was thinking of, never mind. 
|
|
|  |
 |
|
JMarks
|
 |
formerly known as the artist
Mar 2000 time: 05:20
|
|
quote: Originally posted by RPMisCOOL
JM
Good comments:, |
Thanks. 
quote: However, I suspect that the smithy with two sons would supply the smithy for the next province, but only becuase there was a need for one there.
If there were no smithies anywhere then we'd be in 4000 BC. For any given population level there will always be x smithies based on the demand for smithy material from the general populace. |
Hmmmm, I don't like the x smithies thing. Smithies are people with a skill and that is a semi-finite resource. They can be killed off you know. Plague can strike. Things happen. While it may be difficult to wipe ALL of them out, you can easily be greatly short handed in supply of them. In which case you'd better hope they breed like rabits, or your societal model is liberated enough to allow other's kids to become their apprentices. Either way you have to wait a generation and thats bad when you need stuff done NOW.
quote: I guess that I'm saying that it doesn't make sense. They didn't send out smithies to train. While true that "farmer" doing smithy jobs would happen, but in those areas the demand for smithy goods would be small based on the pop, so they wouldn't have to be as fast as the smithy that served the larger pop. |
Don't forget that its not just the speed of smithing. Other skills come in. Sure, the average farmer smithy won't need to make swords, but that is a skill in itself. Trust me, I've had a small amount of experience here (though not in actual swords, but armor).
Of course if you do want to go simplistic, you could do like they did in Lords of the Realm 1. Smithies, miners, etc, gained experience as long as they stayed in. If you added new guys, the overal experience level drops and slowly regrows. At first you start with no experience but eventually you can work up an elite force of smithies. Simplistic and you don't have to worry about every individual.
quote: Although you are correct about advances in Ag. I do not think that training the farmers had any effect. Most of them were scientific and easy to implement, that is, no training needed. |
Scientific yes, that doesn't make it easy to impliment. Peasants can be jerks. Lets face it. And while there would needs be little training, change is often resisted. Or thats the feeling I'm getting from Tolstoy. Of course this resistance level depends on a. sheer luck of the draw (of peasants) and b. abilty to your way. Hope I'm making sence. 
|
|
|  |
 |
|
Velociryx
|
 |
of Candle'Bre
Apr 1999 time: 05:20
|
|
So...I've been working on the re-write of the societal model, and had some questions to put out there:
First, what kinds of/how many different non-combat specialists are you interested in seeing?
Second, how do you see specialists being generated? Tech pre-requisites? Building pre-requisites or combinations of buildings? Certain Training levels? All of the above?
Training: Should training be sub-divided....general training and job-specific? General training could then be used to track a citizen unit's promotability from one job to another, and job-specific training would be used to modify total outputs by that citizen unit.
Putting the brakes on the rush beast: Primarily, we'll do this by simply saying that for the 8 turns following your conquest of a new province, those citizen units may not be drafted into your army, even if you build a barracks (generally speaking, it's prolly not a good idea to arm and equip the folks whose families you just killed in taking the province....give them some time to settle down, restore order, and find out who might be loyal to your cause tho...). Hand in hand with this though, will be that training will commence from the first turn the province is taken (after all, the citizens will get on with their lives)....this should foster an environment where, in the absence of any ability to build a bigger army, even the most diehard conquerer will stop to build infrastructure).
Governance Points: This ties into the societal model, because it is in the societal model that they'll be defined and possibly doled out.
My latest thinking is that requiring GP's to *do* any and every little thing in the course of the game essentially means that GP's are a punishment, not an incentive (pointed out by JT, earlier). I don't want to use them that way, so the first thing we gotta do is make them a reward, not a punishment.
-=Vel=-
|
|
|  |
 |
|
Spaced Cowboy
|
 |
Dallas TX
Nov 2001 time: 23:20
|
|
quote: Originally posted by Velociryx
So...I've been working on the re-write of the societal model, and had some questions to put out there:
First, what kinds of/how many different non-combat specialists are you interested in seeing? |
If we're goning to have them, lets have a variety.
quote:
Second, how do you see specialists being generated? Tech pre-requisites? Building pre-requisites or combinations of buildings? Certain Training levels? All of the above? |
All of the above.
quote:
Training: Should training be sub-divided....general training and job-specific? General training could then be used to track a citizen unit's promotability from one job to another, and job-specific training would be used to modify total outputs by that citizen unit. |
No sure that I'm following how for instance a janitor can get general training that will make him a scientist. I think that there needs to be a clearly defined progression, like a farmer can become a miller, a brewer, or a miner or something like that.
quote:
Putting the brakes on the rush beast: Primarily, we'll do this by simply saying that for the 8 turns following your conquest of a new province, those citizen units may not be drafted into your army, even if you build a barracks (generally speaking, it's prolly not a good idea to arm and equip the folks whose families you just killed in taking the province....give them some time to settle down, restore order, and find out who might be loyal to your cause tho...). Hand in hand with this though, will be that training will commence from the first turn the province is taken (after all, the citizens will get on with their lives)....this should foster an environment where, in the absence of any ability to build a bigger army, even the most diehard conquerer will stop to build infrastructure). |
Hmm...perhaps a conversion period that varies much like Civ3 or Moo2, some houses convert the pops faster than others?
quote:
Governance Points: This ties into the societal model, because it is in the societal model that they'll be defined and possibly doled out.
My latest thinking is that requiring GP's to *do* any and every little thing in the course of the game essentially means that GP's are a punishment, not an incentive (pointed out by JT, earlier). I don't want to use them that way, so the first thing we gotta do is make them a reward, not a punishment.
-=Vel=- |
I'm thinking that we are not going to solve the GP thing and it might become a distraction to all the other coolio stuff that we are proposing. There is a cardinal rule of design: Never put more than five new things in a new project. I've personally seen the results of not following this....disaster!
R:PM
|
|
|  |
 |
|
BigRich
|
 |
of the Trentan
May 2001 time: 05:20
|
|
quote: Originally posted by Velociryx
So...I've been working on the re-write of the societal model, and had some questions to put out there:
First, what kinds of/how many different non-combat specialists are you interested in seeing?
Second, how do you see specialists being generated? Tech pre-requisites? Building pre-requisites or combinations of buildings? Certain Training levels? All of the above?
Training: Should training be sub-divided....general training and job-specific? General training could then be used to track a citizen unit's promotability from one job to another, and job-specific training would be used to modify total outputs by that citizen unit.
Putting the brakes on the rush beast: Primarily, we'll do this by simply saying that for the 8 turns following your conquest of a new province, those citizen units may not be drafted into your army, even if you build a barracks (generally speaking, it's prolly not a good idea to arm and equip the folks whose families you just killed in taking the province....give them some time to settle down, restore order, and find out who might be loyal to your cause tho...). Hand in hand with this though, will be that training will commence from the first turn the province is taken (after all, the citizens will get on with their lives)....this should foster an environment where, in the absence of any ability to build a bigger army, even the most diehard conquerer will stop to build infrastructure).
Governance Points: This ties into the societal model, because it is in the societal model that they'll be defined and possibly doled out.
My latest thinking is that requiring GP's to *do* any and every little thing in the course of the game essentially means that GP's are a punishment, not an incentive (pointed out by JT, earlier). I don't want to use them that way, so the first thing we gotta do is make them a reward, not a punishment.
-=Vel=- |
I'd pictured trained citizens as being the CB *equivalent* of specialists. Rather than just suddenly deciding that a chunk of your population is now going to be merchants (a la Civ tax collectors), the population becomes better trained with time, eventually migrating to more useful/profitable occupations. Kind of auto-generation of specialists.
On the other hand, modifying the specialists concept may simplify the training model a bit. Have a number of 'training archetypes', say trainee Merchant, trainee Scribe, trainee Smith, for example. Population can be shifted by the player (or by any other mechanism for that matter but direct player intervention is prolly easiest), from the other archetypes into the 'training archetypes'. This is the equivalent of specialist allocation. Citizens assigned to training, serve a ten turn 'apprenticeship' before being returned to the work pool. *edit*: There could easily(?) be rules that prevent certain archtypes from moving to certain training archetypes - avoiding the janitor to scientist problem.
Citizens may be retrained as often as desired, for simplicity its probably best to assume that the 10 year apprenticeship is served for each retraining. Also for simplicity, the amount of work an apprentice does is effectively zero during the apprenticeship. Apprentices give you more hands to *do* the work, but how much of it is actually work grade material is debatable. Meanwhile the guy supervising the apprentices is tied up with supervision, so the amount of useful work he does drops away.
Citizens in the 'training archetypes' are tracked individually for their ten turns. Once that is up they are returned to the available workforce pool and *not* tracked any further. Instead each province has a counter for keeping tabs on the number of trained citizens of each type. I'm thinking that not too many citizens will be in training at any one time, reducing the numbers of individual citizens that have to be tracked.
Training could be required for peasants to move archetype and required to generate 'advanced' citizens to work at the more advanced buildings. In addition the greater percentage of trained citizens there are, the more efficient the province. More trained scribes - more research points, more trained merchants - more income etc. So you could train up the minimum number of citizens needed to run your advanced facilities (untrained citizens are assumed to perfectly competent working at basic facilities), or you could invest the time to train more of your citizenry to boost province producitivity, bearing in mind that trainee citizens are basically contributing nothing to their province during their apprenticeship.
Just my 2 brass coins anyway.
Rich.
|
|
|  |
 |
|
Velociryx
|
 |
of Candle'Bre
Apr 1999 time: 05:20
|
|
Yeah...I'm beginning to feel the same way about Governance Points...cool concept, but it's just not working, implementation-wise. *sigh*
As to the training thing....I don't see too many difficulties arising there. Peasants aren't allowed to move up into Burger dominated jobs till they reach a certain "generic" training level, representing "worldliness" more than anything, really. This though, seems like it should be tracked differently than expertise in one's job.
I think perhaps the simplest way to do the whole training/specialist thing would be this:
"Generic" Training: Applies to peasants only. Basically, it's a counter to delay them from being immediately eligible for Burgher jobs.
Specialist Training: When a worker goes to work in a provincial facility, he starts recieving on the job training at X% per turn, or per X Turns, or something.
Sooner or later, when his expertise level reaches a pre-established threshold, and certain other conditions have also been met (ie - in order to create a master merchant specialist, your market must be fully staffed, and you must have a market employee with at least an 80% expertise level, and have researched Banking). If all these conditions have been met, you can promote the worker in question from a "regular" worker to a Master Merchant, which gives you abilities x and y.
Related question: Should specialists be "units" (moveable from province to province, and therefore killable?), or should they be tied to a specific province? (or, izzat something we ought to handle on a case by case basis?)
I can also see a couple of bizzare "specialists" that might crop up all on their own, as a result from leaving population points unassigned and not working 
-=Vel=-
|
|
|  |
 |
|  |
 |
|
JMarks
|
 |
formerly known as the artist
Mar 2000 time: 05:20
|
|
Too bad about the GPs. Oh well, we can always work with the PGs! Unfortunatly ridding ourselves of it makes the player a demi-god, which is good if thats the point. I'd like to see GP (or PG) implimentation on a later project so that the player ISN'T a god, but an actual person in the game. Technicly not letting you run your opponant's empire is negative, and punishing the player. But enough on that. Vel has spoken! For a later project I hope its in. Please, please, please.
But back to the subject, I like the training proposals set out. Peasants can't become scientists (not in one generation at least) save perhaps through Fate Card. But in general workings no. In fact, MOST peasants shouldn't be able to rise from their class due to the fact that food is needed. Most will have to work the fields if you don't want your populace to starve.
Of course, a 'specialist' peasant could be the day laborers. They aren't farmers, ei, own or work their own land, but travel from place to place working where needed.
Another 'specialist' could be the gypsies. They go around too, but they take money from your populace and don't give it back! They don't help in harvest, just entertain and take. They can have a happiness effect on your pop, but they move from place to place, so its not permanent. The only way to control them is to kill them with your military.
Of course, if you're stupid enough to send the majority of your peasants into an aprenticeship of one kind or another, everyone will starve (unless you have the money to buy from other houses, or enough food in your other provinces). Most of the pop should, at first, work to get food. Even later when ag improves, a good portion should still work the fields. The manner in which they do so can and should change, but most will need to produce food.
|
|
|  |
 |
|  |
All times are GMT. The time now is 05:20. Apolyton Time is 00:20. |
top of page
|
|
|
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is ON
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|