Announcement

Collapse
No announcement yet.

New social model. Feedback wanted

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • New social model. Feedback wanted

    Clash Social Model.


    I. Abstract :

    The Clash social model is designed to represent the behaviour of the people in the Clash world. It embeds the racial, nationalist, religious and political characteristics of the people.
    This model provides :
    - some informations for the other models ;
    - People's behaviour in response to the events.

    II. General architecture :

    The social model architecture is based on the provinces ; each province province holds people, who are grouped into agents. The agents have unique characteristics which define their behaviours.
    An agent groups people in the same province who have the same religion, race and nationality. The characteristics of an agent are based on its primary characteristics, which are chosen by the player at the beginning of the game or generated (for non player civs) by the computer. Then, these characteristics may be modified by the events, the religion of the agent, its behaviours … And by various elements of the game such as migrations.
    Each agent in each province is an independant entity, which means that it may evolve independently from the other agents. However, many interactions between agents are possible, which may alter the characteristics of the interacting agents.

    The agents may take actions in response to events. An event is a kind of message, which is used to tell the agents what happens in the world ; if an agent is concerned by an event, he may take an action.
    There are two kinds of events : global events and local events.
    Local events are localized in a province, so only agents from this province may take an action in response to it ;
    Global agent concern the whole civ (eventually the whole world) and any agent in the civ may be concerned and take an action.

    Each event has a category, which may be race, nationality, religion or class. Each time agents answer to an event in a given province or at the global level, agents are grouped in " meta agents ", by race, nationality, class or religion depending on the category of the event.

    The classes are those defined by H in its government model, they dont need to be doubled in this model. Each agent has a repartition table that gives the number of people of this agent in each class.

    The main problem with this model is the CPU load, which may be very high. That's why many mechanics have been introduced in this model to simplify the computings.

    III. Elements of the model :

    The main elements of this model are the agents. As has been said before, an agent groups people who share the same nationality, race and religion.

    III.1. Nationality :

    The nationality is a very simple object, that gives the name of the civilization an agent belongs to.

    III.2. Physical characteristics :

    physical characteristics are represented by two figures.
    These characteristics are used to compute a " distance " between two races.

    III.3. Religion :

    The religions are mainly used to alter the attributes of the agents in a way such as it can represent the influence of religions on the people's background culture. Also, like the races and nationalities, it is a political element of the game. There are many kinds of religions, ranging from the most primitive to the most modern. Religions in Clash are designed to represent any kind of religion. Religion's attributes are these :
    - familial shape;
    - individualism;
    - sectarism/tolerance;
    - superstition;
    - Importance of Books;
    - Law tables;
    - sky awareness;
    - nature awareness;
    - Human sacrifices ;
    - God's Evilness.

    A primitive religion would have a high superstition level and low Books level.
    Sky and nature awareness are mainly linked to primitive religions, so their effect becomes neutral with religions having high Books level and low superstition levels.
    These attributes will be used to make the agent's attributes evolve with time, they will also be used to modify the outputs of other models (for example : high Importance of Books means cultures with this religion are spirit oriented, so they have intersest in cultural techs such as philosophy ; a culture with a religion with high human sacrifice level would be very agressive with its neighbours …)
    Religions are geographically based (they are born in a localized place), and they spred through the world via the mechanism of conversions (more on this later).

    III.4. Agents :

    Agents are defined as having a religion, a race and a nationality. Moreover, agents have attributes which represent their " culture " :
    - nationalism;
    - provincialism;
    - agressivness;
    - authority acceptance;
    - social rigidity;
    - traditionnalism;
    - technical education;
    - philosophical education.

    These attributes are directly used to compute behaviours ; they are also used to modify other models of the game (example : high agressivness would modify how people fight in a war).
    The attributes of an agent depend on the beginning settings of the player as well as the religion he chose.
    Then these attributes will evolve in time through the effect of religions, through mixing of people and cultures, through the effects of the events and the actions the agent takes in response to them …

    III.5. Events :

    Events are used to carry informations to the agents on what's happening in their province, their civ or even the world.
    Events have a category, which may be race, nationality, religion or class. The category of an event indicates which agents are concerned, and how they will be grouped to respond to it. For example, in the case of an event of race category (for example racist war), all the agents having one of the races involved will try to respond to the event. Actually, every agent of one of the race will be grouped in a " metaagent ", their characteristics will be rounded using the demographic size of the agents, then the action will be computized for the metaagent. This mechanism is intended to lower CPU usage for these calculations.
    Each event describes how agents may react to it through a decision tree. When an event arrives, the agents that may respond to it go through the decision tree, every node being an equation which gives the direction of the next node or leaf. Each leaf is a decision, so when an agent has gone through the whole tree, the leaf it has reached gives the action it will take (which may be no action).
    Global events have another method, which is used to decide which province will treat this event as global, and which province will treat it as local : for certain kind of global messages, some province will be more involved than others, so their reaction may differ from the others. Lets take the example of a war event. For most of the provinces, this event will be treated as global because their effect are very similar ; but for some provinces, mainly the provinces which are on the front line, this event will have stronger effects (the people will feel more uinsafe than in the provinces that are awau from the front line). So in the case of a war event, the event will be treated as local by the provinces that are on the front line, and it will be treated as local by the other provinces.
    When an event is treated as global, the behaviour are computed at the civ level, using rounded characteristics of the agents in the provinces that treat this event as local. The actions are eventually taken in each province, and genereted in each province, but they are computed only once. This is also intended to release some CPU usage.

    III.6. Sub models :

    There are currently three sub-models in the social model :
    - demographic submodel, which gives the natural evolution of population through reproduction ;
    - migration sub-model, which generates the " natural " (non-forced) migration flows in the Clash world ;
    - mixing sub-model, which defines how races mix and fusion ;
    - religious conversion sub-model.

    III.6.1. Demographics

    The demographic sub-model is based on equations using many parameters, such as the familial shape, the life expectancy, the death-at-birth rate … to give the evolution of the population each turn (which may be positive or negative).
    (I have already given some equations for this model, I will include them in this document as soon as I retrieve them)

    III.6.2. Migrations

    The migration sub-model gives figures concerning the non-forced migration in the World of Clash. Non-forced migration is the migration flows that are not the result of an event (for exemple, a war between civ A and civ B event may result in the migration of people with the A nationality living in the B civ, or some orders coming from the ruler may result in massiv, forced displacement of people …)
    This natural migration has mainly economic causes : the difference of life confort between province A and province B may push some citizens in province B to leave for province A. Also, some provinces may look safier, which may also push people to migrate. Other factors may come into account, like the distance between the original province and the new one given the comm/transport tech level, also the " fame " of a province may come into account (the capital province has a great fame, like some provinces with special structure, " wonders ", see below) …
    All this combined in an equation will give each province a rating. By comparing the ratings of a province with others, this model will give a migration ratio each turn.
    When a new group of people arrives in a province after a migration, there may be several cases :
    1. the migration occurs inside the same civ :
    - there is a matching agent for the arriving group (same religion, nationality and race) : the arriving group is integrated to this agent, and the attributes of both groups are meaned, using weights reflecting the size of each agent. This system will allow the convergence of the agents inside neighbouring provinces within time, through the mechanism of natural migration only. There may be another mechanism for helping provinces convergence, through the trade exchanges.
    - There is no matching agent in the province : a new agent is created for holding the arriving group. It is then treated as any other agent in this province.
    2. the migration occurs between two different civs :
    In this case, the arriving group does have a differing nationality. Two cases may occur :
    - there are already people from this nationality in the new province : the arriving group is integrated to a matching agent (if there is none, a new agent is created);
    - there is no one with the nationality of the arriving group, a new agent is created.
    In both cases, there are special rules for handling nationalities.
    - There may be laws/decrees concerning the nationalities ; for example, every new arrivant immediatly acquires the nationality ; or no foreigner may acquire the nationality, never.
    - If there is no law, there is a natural integration of the arriving foreigners, which takes time. Every turn a given amount (in %) of a nationality is given the hosting nationality. This % may vary depending on the people in the province of the hosting nationality, depending on the relations between the nationalities, depending on the nationalism of the agent that will be integrated … When an agent is given the host nationality, it is becomes a standard agent and may be integrated into a matching agent following the same rules as for inside-civ migration.

    The case of the migration with agents of different races is covered in the mixing sub-model.
    The religious conversion sub-model deals with the cohabitation of different religions inside a province.


    III.6.3. Mixing

    The mixing submodel deals with the mixing between people of different races.
    One problem with mixing races, is that if we dont care we could build a system where the number of sub-races would become quickly unhandlable.
    That's why we must have special rules to prevent an explsosion of the number of races (and then agents) when different races begin to meet each other.
    Mixing will occur as soon as groups of population belonging to different races live in the same province (side note : an army looting a province is considered as " living " in this province for the purpose of mixing). When mixing occurs, there are two cases :
    - the two races are not very different ;
    - the two races are very different.
    The " difference " between races is the distance defined in III.2.
    - In the first case, no new race will be created to hold the subrace resulting in the mixing of race A and B. Actually, to represent their mixing, races A and B will converge through the time until their attributes are the same. At this point, all matching agents will fusion. This mechanics allows to represent the mixing of resembling races without crezating any sub-race. The convergence rate will depend on the relation of both races and on the size of the smallest race.
    - In the second case, a sub-race will be created ; which will be the " mean " race between races A and B. Each turn this race will increase in size, while the sizes of races A and B will equally decrease (not inculding natural demographic evolution covered by the sub-model). The rate of size evolution will depend on the relation between A and B, and on the size of the smallest race. As soon as the sub-race AB exists, it will be considered as a " not so different race " for races A and B, and thus A and B will concerge towards AB, so at a long term A and B will converge. The rules for concergence between A and AB and between B and AB are the same as in the first case. Race AB is only allowed to mix with A and B. There is no mixing between AB and a C race, or between AB and a DC subrace, also there may be mixing between A and C, B and D, A and D…

    III.6.4. Religious conversions :

    The religious conversion sub-model deals with conversions that are not ordered directly by the ruler, be it through its own conversion (like Clovis) or through forced conversion (like conquistadors).
    This natural conversion comes from evangeslists activists, volontarist conversion …
    Natural conversion may occur in a province when two groups of different religion are present. In this case, a conversion rate is calculated, based on the political strength and demographic size of the RCs, based on the sectarism of the given religions …
    Through the mechanism of migration and through trade exchanges, religions may spread from province to province, then from civ to civ.
    Note : religions are always born in a given province.
    Note 2 : it is more easy for a modern religion (high Books) to achieve conversions over a primitive religion for agents having at least a moderate level of philo education. The higher the philo education, the easier the conversion.


    IV. Events and actions :

    As has been said before, any action taken by an agent is the result of an event. Each event object holds all the data and all the methods necessary to process it.
    In many cases, events will be triggered by player actions. For example, taking a Law or a Decree will trigger an event, so that the agents may react to this political decision.
    In other cases, events will be triggered by the AI : an opposing civ declaring war to you will trigger a war event.
    At last, in some cases events will be triggered by the models of the game. For example, the government model may trigger an event to indicate that discontent level has reached an unsustainable point in a given province.

    Events can be local or global.
    Each global event has a method to which provinces will treat the event as global, and which ones will treat it as local. For example, when the player takes a decree prohibiting a given religion, each province with agents with this religion will treat the event as local, and he others, which dont hold any agent with this religion, will treat it as global.
    When an event is treated as global, the model uses attributes that a wheighed mean of every agents in every province in the civilization, even those that treat the event as local. This allows to calculate the mean only once evry turn.

    As I've described it before, each event has a decision tree, which allows an agent to choose the action it takes to respond to this event.
    Each tree consists of nodes, which link the branches of the tree between them, and of leafs, which are the end of the branches. When an agent goes through a decision tree, it resolves an equation or an algorithm at every node, which will tell him what is the next brach to go. When the agent has gone though every node it reaches a leaf. This leaf will tell what action the agent takes.
    The equations - or algorithms - at the nodes use some attributes of the agent, and some elements of the context.
    The context is a set of datas that describe the environment of the agent. Each province has a context. Context datas for a province are :
    - some economical datas coming from the economic model ;
    - some political datas coming from the government model ;
    - a mood indicator (are the people happy or not) for every race, nationality and religion;
    - a security feeling indicator (do the people feel safe in this province) for every race, nationality and religion;
    - some datas concerning the health and hygiena in the province ;
    - the race, religion, and nationality of the governor of the province (this is a new element I propose to add, which will allow to assess the political power of every race, nationality and religion throughout the civ. This data may be very interesting to use in some decision trees).
    For global events, a civ-wide context is created.

    Here is an example of an event, with all the datas associated :
    This is a war event between two different nationalities with similar races.
    The category of the event is nationalities, since this is not a religion nor a race war.
    The algorithm for deciding which province will treat the event as local is : every province that is adjacent to the enemy civ treats the event as local.
    The decision tree is the following for the nationality A (the nationality of this civ) :
    Node root : Three branches may be taken from this node :
    - nationalistic action branch ;
    - migration action branch ;
    - no action branch.
    The first branch is taken if there are bad relations between A and B nationalities and if A is not in minority vs. B ;
    The second branch is taken if there is a low security indicator, which may result from the province being on the front line, or the nationality A is in minority ;
    The no action branch (which is a leaf) is taken if no other branch is taken.
    Node nationalistic : Two branches may be taken from this node :
    - violent actions
    - non-violent actions
    the branch taken here mainly depends on the relations between A and B, the relative demographic power of A and B, the agressivness of A, the nationality of the ruler of the governor. Each of these branches are leaves.
    Migration leaf : this branch is a leaf.
    After a leaf has been reached, a intensity is calcultated for the action. In the case of migrations, the intensity would give the proportion of people who leave ; in the case of violent actions, it gives the number of people killed, etc …
    Then we would have a quite similar tree for the B nationality agents (those of the enely civ). This tree of course is a bit different. I wont detail it, you got the idea.

    When decisions are taken in the provinces that are on the front line, they are directly created. When action are taken in provinces that treat the event as global, they are then implemented in each civ (in this example, if the action taken at the global level is migration of citizens of civ B, with a given rate, then this rate is applied in each province that hosts citizens of civ B).

    When such an event occurs, that concerns two adverse groups of agents, one of the groups acts first (in this case nationality A) and the other group reacts after this, taking into account the actions of the first group (in this case, if group A takes nationalistic, violent actions, then group B will be more prone to migrate).

    Beside triggering actions from the agents, events tend to mdify the context in the provinces they occur. For example, in case of a war event, the safe feeling indicator in the provinces on the front line will be lowered to reflect the fact that the war may endanger the people who are near the future battles.

    When an action is taken, it is implemented, which means that the concerned models calculate the results of the events. Back to our war example ; if the action taken is nationalistic violences, then a part of the people with nationality B may die, which is handled by the demographic sub-model ; then if B citizens migrate, the social model takes care of implementing this migration.

    In some cases, action taken may trigger an event. If, in our last example, a group of citizens A migrate in a province where no agent has the same religion, then it may trigger an event in the province they arrive that signals that people in this province are discovering a new religion. Thi event will be proceced next turn in this province.
    However, in many cases, the reaction to an action will be immediatly processed by the adverse group of agents (like our example on the nationalistic, violent actions taken by group A, to which group A responded by migrating). This prevents an explosion of the number of events generated and processed each turn.

    In terms of implementation, the events are treated between two turns.

    There is one last point to solve, regarding actions and events : the governor AI charged with micro-managing the province for the player/ruler. IMO they must have some high-level orders regarding how they will treat troubles in their province. For example, there may be a slider indicating the level of violence they are allowed to use, or in the contrary the amount of financial efforts they may make to quiet the people. Then, there may be another decision tree, embedded in the event, allowing the governor to take appropriate decisions when events/actions occur in its province. Or there may be another system …

    As I said before, each time an event arrives, it has a category which may be race, religion, nationality or class. In the first three cases, we group the agents in the province (or at the global level) by race, religion or nationality, we build a " metaagent " with attributes that are a wheigted mean of the attributes of the agents of that category, then we calculate the reaction. When the category is class, we use a table in the province giving the demographic repariton of the population in classes, then we create the metaagents and calculate their reactions. In this case, the decision of an event of class category must integer in its node equations some parameters concerning the political power of that class as well as the pro/anti status.

    V. Evolution of the attributes :

    The attributes of the agents do evolvle in time, through two mechanisms :
    - the religion of an agent will modify its attributes slowly, making them tend to the " values " of this religion. For example, a high Books level will help the philo education attribute to increase ; a high human sacrifice value will mean a high agressivness level ,etc…
    - each time an action is taken by an agent, some of its attributes will move, with a very simple rule : when an attribute is used to take a decision in a decision tree, it may wether help the action to be taken, or prevent it to be taken. For each action that is taken, every parameter that favored it is increased, and every parameter that prevented it is lowered. This particular mechanism allows to, in a way, record the history of a people. For example, when a population becomes used to revolt successively when it dislikes actions of its ruler, it will tend to revolt more easily each time. Inversely, when a population becomes used to see its revolts punished in the blood, it will learn to avoid revolting and thus become more obeying to its ruler (its authority acceptance and socila rigidity attributes would increase, preventing it to take other actions versus the ruler. Of course, in such a case their discontent and anti status would increase, probably meaning that they will reach a point where they will indeaed revolt, but in a very very violent manner).

    Mark had a remark on this point : he stated that this could lead to uncontrolled rise of a given attribute (the more an agent takes an action, the more the linked attribute will increase, and the more the agent will take this action again, increasing again this attribute …. )
    My answer was :
    - what I have written lacks precision : the way an attribute evolves does not only depend on the action taken, but also on the respinse that was given. For example, when an agent revolts, if the revolt is accepted by the authority then its authority and social rigidity attributes will be lowered, increasing the probability that a revolt action will be taken the next time. If, to the contrary, the revolt is punished in the blood, those attributes will be enhanced, lowering the probability that the same action will be taken next time.
    - Thanks to this system, the evolution of the attributes actually depend on the ruler/player. If u're a bad ruler, and actually let the people do what they want and get what they want each time they reclaim it, there is no reason they dont keep on reclaiming things. U're the ruler, all that is up to you…

    VI. Link with the other models :

    The social model has many links with the other models, in input and in output.
    In input, the social model uses some parameters of other models to create the context of the provinces. It uses the economic model to build the economic context of a province ; it may use the military model to calculate the safe feeling indicator …
    Also, in some cases other models will trigger events to be processed by the social model (for example the government model that maytrigger an event to indicate that the anti-satus of a class is so high that an action may be taken …).
    In the other way, the social model outputs datas for other models.
    - Military model : when a war is declared, the social model will give some paramters concerning how the war is seen by the people. This parameter may be used to modify the attributes of the army. For example, in a war with the heir enemy who is hated, the people may be really willing to crush the enemy, so they will be both very motivated and very violent. In the contrary, in a war that is not understood nor accepted by the people, there may be a high desertion rate, and the army may be undermotivated, meaning more troubles for the general on the battlefield.
    - Tech model : some parameters may be used to alter the output of the tech model. For example ; a high value in religious superstition would mean that tech researches concerning natural sciences would be more difficult, or slower ; a civ with a religion with high Book level would more easily research technologies linked to culture, philosophy, literacy … A civ with a high agressivness would tend to focus on weapons, etc …
    - Economic model : some actions taken by the agents have huge effects on the economic model. For example, when people take an action of revolt in a province, then a part of the production of the province is halted cause people cease working ; also, some economic infrastructures may be looted … Moreover, the attributes of the agents of a province may have effects on the economic model output. One intersting effect concernes the tech education level. When, for example, a civ acquires a modern technology, like for example some kind of industrialization, through diplomacy or natural spreading of the techs, its agents may not be ready to implmenent this tech effectively if they are not technically educated enough. Thus, the tech eduation level must be high enough for the plants to produce their nominal output. In our example, if a relatively primitiv civ acquires indutrialization, then it wont be able to produce high outputs from its plants as long as the tech education level is not high enough.
    - Diplomatic model : the relations between the people of two civs may have an effect on the high level, diplomatic relations of those civs. Lets admit that u have some foreign immigrants in your civ, and that your citizens are both violent and nationalist. Then there is a great chance that the relations between your people and the immigrants are quite bad, meaning for example that there are some nationalistic exactions in your civ versus those imigrants. Then, when you will conduct diplomatic negociations with the ruler of the civ these immigrants come from, there is a huge chance that the ruler of the other civ will be anger with the fact that his citizens are badly treated in your civ. The negociation will then be harder.

    (I have to divide the post into two because its too long ...)
    [This message has been edited by manurein (edited September 11, 1999).]

  • #2
    (suite of the last post)


    VII. Interface :

    Most of this social model is hidden mechanics that will allow clash to simulate the population of a civ in Clash ; many of the interactions between the player and this model will occur through other models (for example, if an agent atkes an action which is civil war or something like that, then the military model will handle the resolution of the battles and the war).
    However, if the player ahd no interactions at all with the social model itself, this model would be quite useless.
    Interactions between the player and this model have two ways :
    - how the player is notified of what happens in his civ regarding the social events : this means that when an action is taken by an agent, or when special conditions arise, the ruler must be notified. There may be two kinds of notification : a simple information, telling the player that something happens but that he may just let his governor handle the case, or that there is quite nothing to do. These kind of notifications will be listed in a " newspaper " that will appear at the beginning of each turn. IMO, this newspaper should present tiltes, that the ruler reads. If he finds a title relating something, he may " read " the article by clicking on the title ; he then would be given more detailed informations on this particular event. At this point, there should be a hot-key allowing him to access directly the interface allowing to take actions in response to this event if he wants to. IMO this newspaper should be used for everything, not only the social model. There may be several parts, or themes in he newspaper, for example " International ", " Our country ", " Politics ", " Economics ", " Science " … That would allow the player to focus itsattention on what he's most intersted in. There is another kind of notification, when the event is important enough for the player to focus its attention on it if he dont want to be in bad trouble. In these cases, I propose that a window pops up, showing an advisor (in our case, that would the advisor for internal affairs or some thing like that), which would give very detailed informations on the event, including why it happened and what were its results, and invinting the ruler to take a decision to solve the problem. If we achieve a good AI enough, there may also be an advice from the advisor, or eventually a propositon of action that the ruler may accept by just clicking on an " OK " button, or override by accessing the corresponding interface and taking another decision.

    More genrally, I think that we could achieve a system which is able to present to the player exactly the bit of interface he needs to take a decision regarding a given event. This may mean that we build a system able to generate dynamically the interface. This may be a bit difficult, but if we can achieve it, I'm sure it would be a great tool, and moreover an intersting step in interface design for this kind of games.

    - In the other way, the player must have means to act on its people and the social model. IMO, he must not be able to directly manipulate figures . With this, I mean the player will never change the value of an attribute of an agent. Rater than that, he may take decisions that may have an effect on the way its people behave ; if the ruler knows its paople, and is wise, he may achieve what he wants. If he doesn't know its people, he may achieve an effect inverse of what he intended to do. The ruler has many tools to act on the social model. First if them is the set of laws/decrees he can take. Among them are the laws that give a legal status to groups of population. For example, there may be some rules making a religion the official religions ; some rules tolerating or prohibiting some or all of its religion … Same for races, nationalities … Also, I think the ruler may be able to choose race, religion and nationality of the governors of the provinces, which would have a direct effect on how the people see the ruler and their governor in this province, and then how they react to different events. More over, there may be a " propaganda " system of some sort, allowing for example the ruler to push its people in a nationalist mood to prepare a war. Also, we can admit that the level of philo education has huge effets on many parameters. For example, a population with high philo education will tend to see its agressivness level lower, as well as its provincialism/nationalism level ; moreover, it will make transition between primitiv and modern religion easier, the modern religions having some intersting efects (like a high Books level that helps tech research in some important fields) … The ruler has direct control on this by deciding what he will spend on education, and how this education will be oriented (towards tech or towards philo).
    However, any decision taken by the ruler will have an impact on the social model, and a wise ruler will be aware of that, which will give him hige advantages (if your are not supported by your people, it will be very difficult to achieve the strategic decisions you take, then winning the game will be a nightmare …)

    Settings and initialization :
    There are several points here. First is, how does a player chosse the characteristics of its people before the game ? Second is, how do we achieve to build a realistic repartition of the people in the world ?

    The second point is quite important. IMO, two groups of people that are geographically nera from each other, should also haves similar races. This is realsit, but this also will prevent the number of races to become too huge and unhandleable. Ther may also be the salme raesonning concerning the attributes if the agents, the religions etc.
    So we must have a sytem that is able to put the people in the world in a coherezt manner, just like we have a quite realsitic model for building the physical world.

    On the settings of the player, I once again think that the figures should be hidden from the player. Rather than choosing a civ with attribute Agressivness with value 75 fe, I propose another system : the player reads, then chooses the " founding myth " of its civ. This founding myth would tell how that civ has been created, and maybe some of its early myths. Through reading this, the player would have clued on how his people is oriented etc… Through this choice, the game system would set the attributes of the primitive religion that civ begins with, and set the attributes of the agents in its original, capital province. If the stories are told correctly, we could set the values for provincialism, agressivness, athoriy acceptance etc .. as well as the values of the attributes of the religion (in the beginning, there is one and only one religion for each civ. Since they are primitive religions, they are unique to a civ. The modern religions will be a lot less numerous and exist in different civs, but they will appear later in the game.
    I propose another choice for the player, which is the age of its civ. It would give the values of paramters like social rigidity and traditionalism, and eventually some initial settings for the government model, like the compostion of the classes, their political power, the anti/pro statuses …

    Then, the model would use this information (and the same information for the other players in a MP game) to place the populations on the world, respecting some rules I quoted before.

    VIII. Side ideas :

    There are some side ideas, that are not directly a part of the social model, but that are linked to it and have not been evoked previoulsy.
    - I propose a kind of " wonders " system. This is not a system comparible to the Wonders of Civ2 ; actually, it is an idea I've seen on the Civ3 suggestion forum, that I have adapated to Clash. The idea is to allow the ruler to build " special " structures, that are mainly real buildings (no " Cure for Cancer " wonder), that are not forecasted by the game but rather shaped by the player, and that effects on different models of Clash depending on the type of structure that is built ; in no way, a wonder is unique.
    Actually, a wonder is an architectural structure that building is decided by the ruler (and the the economic model), and that is a really sepcial construction. It takes extra esources to be built, but one it is built it apperas on the map, and it gives advantages to its owner. There may be many kinds of wonders. For example, it may be a great temple. The size of the temple is decided by the ruler (and thus the extra resources it recquires, eventuallly the time it takes to be built). Once it is built, the people will enjoy it, giving more power to the RC, giving more faith to the people. Also, the province that holds it will see its rate for ppurpose of migration increase. Over time, the effect of a wonder may lower (when the people are less influenced by religion, the great temple will be of less importance) ; also, a wonder may have economic effects, such as favoring tourism in this province. There may also be another effect : if there is a tech called " archeology ", then an ancient wonder that has no more effect could be rediscovered and generate trade in modern times, through tourism.
    The wonders may be of many kind : military, for example there maybe a great wall, but this time a " real " one, which is drawn on the map by the player, and then acts as a wall for the armies trying to going through. This wall would have effect as long as powerful bombardment weapons (like cannons and later artillery) are not used. There may be purely decorativ wonders, like fe an Eiffel Tower, that would mainly enhance the pride of the people (and thus their nationalism). There maybe political wonders, like a fabulous palace for the ruler, which may have effects both on the people (nationalism) and on the foreign kings who visit the palace … There maybe economical wonders, like a giant middle-age market, that would appeal marchants from allover the known world, and gretly enhance the economy in this province …
    So, to sum-up, each wonder would have its own effect, depending on what it is ; and each wonder, whatever it is, would have an effect on the immigration sub-model and on the economic model. Each wonder would see its effect disappear when some conditions are reached. Then, through the archeology tech, it may be rediscovered and become an economic bonus. This may be very intersting, cause it could produce some effects like a country with many archeology sites that sees its economy boost thanks to tourism from a certain point (like is the case for Italy, fe).


    Ok, let's stop this for now. What i have built is a kind of framework, which IMO expandable enough for us to put what we need in it. Particularly, what I have to do now is to design some events and the associated decision trrees and actions ; also, it would be very intersting that the people who are in charge of another model tell me what events their model may generate (for example, unrest event in the government model ; similarly, the economic model could trigger a famine event …), and how they see the link between their model and the social model (for example, what kind of inputs from this model does the military model recquire, concerning fe the motivation of the troops etc …)

    Lets just add a short listing of what I need from other model dukes :
    - a list of events taht may be generated by their model. For a first step, I dont need detailed events with the whole decision tree etc. All I need is the name of the event with a short description, eventually its category, and eventually the actions that it may triggered ;
    - a list of the datas from their model that may be used as a part of an agent's context, at the province level ;
    - a list of datas coming from the social model that may be used by their model to modify its behaviour according to the people's culture.

    An example of that is the economic model :
    - events : starvation, economic crisis or economic boom. These events IMO should have class category, since it's always the lower classes that suffer the most from bad economic conditions ;
    - datas for context : Mark proposed to use food per capita and income per capita at the province level to complete the economic part of the agent's context ; he also proposed to use a ratio between UC and LC income as an important part of the context (I agree fully on this point).
    - Datas that may be used by the economic model as input are, for example : tech education (for high tech production centers output) ; traditionalism (for low tech and food production output) ; social rigidity and authority acceptance (for general response to ruler's orders in the economic field) … Any other ideas ?

    Comment


    • #3
      Here are the details of the demographic sub-model :

      Demographic submodel :

      RA = mean Reproduction Age (its the length of a generation
      BR = Birth Rate (number of children over a generation, continuous until death or age 50)
      DR = Death at birth Rate
      LE = Life expectancy
      P = total Population

      Dy = Number of death in a year = 1/LE

      Bg = number of birth in a generation = (P/2) * BR * (1 - DR)
      By = number of birth in a year = BR /G

      Then :
      PGy = Population Growth in a year = By - Dy (may be negative)

      Just multiply that by the length of a turn in years and you have the population growth or decrease.
      Add the effects of the military model (when an army is hired, I assume that the people are added to the army (and to the MC) and are deleted from the agents they come from. This allows to simulate the effects on economy of their absence, and the effects of demographics when they are outsude the province).
      Add the effects of the migration sub model.

      RA depends on family shape, on philo education, on traditionalism, on Books (religions), on economic datas.
      BR depends on availability of contraception, on familial shape, on traditionalism, on economic datas.
      DR depends on hygiena and on health level (which depends on available techs and on foundings in this field).
      LE the same.


      And some other precisions :

      Comupting repartition :

      The social model recquires quite heavy computings each turn, because in every province, the state of every agent is updated each turn, and the demographic, religious conversion, migration and mixing subb-models also recquire many computings each turn.
      Beside this, some computings must be achieved each turn to treat the events. Those compuitings have to be made between the turns, because most of the events will be generated at the end of a turn when the player validates its orders, and because the reations of the agents have to be presented to the player at the beginning of the next turn.
      Anyway, there will be many other computings from other models that will occur at this time, and the overall computing time between the turns has to be as short as possible.
      This is why I propose to make all the computings that are not reactions to events during the turn of the player, in background. Usually, when a player is giving orders, taking informations, reading news … the CPU will not really have a lot of work, so it should be available to conduct some background computings.

      Comment


      • #4
        One other remark :
        to stremline the computings, we may add rules about the rate of computins for attribute evolution. For example, we may decide that the influence exerced by religion on an agent's attributes is calculated eveery 5 turns.

        This will have to be play tested, as many other things.

        Comment


        • #5
          Manu:

          I've given your model proposal a thorough read-through and think you have made significiant progress in streamlining it. It makes a Huge number of things possible, and hopefully we can cope with the complexity! I like what you have done working
          on the scalability of the model, and think the calculations are probably now reasonably within the scope of what we can do. Probably we need some further calculational simplifications as I note below. Of course, only real testing will tell for sure....

          What do Others Think? Speak Up!

          Here are some further thoughts...

          III.4. Agents : I don't see insularity, or a number that says a culture is averse to merging with another. Some cultures appear to me to be malleable and willing to accept behavioral patterns from outside cultures, while others don't. Is this supposed to be in traditionalism? Since I don't think they're the same thing.

          III.6. Sub models : You say "- mixing sub-model, which defines how races mix and fusion". In my opinion the mixing of cultures is even more important than that of races for modeling the world. Are you using race as a shorthand for physical appearance plus culture? If not, I think you need explicit cultural hybridization in the model.

          In fact the whole model is race this, race that, which obscures the more important IMO cultural similarities or differences. Two people can be of an identical physical race, and because of their cultures, react completely differently to virtually all circumstances. Personally, I think that culture is Much more important than race, and would like to see that registered in the model. What do Others think?

          III.6.2. Migrations: IMO Another big factor in whether people want to migrate to province X is whether there are Already people of the same type as those who are considering migrating.

          VII. Interface : The newspaper idea is quite good, by think it needs to be handled carefully or it will require too much management by the player. I think the player needs a set of filters to apply to the newspaper stating whether they want to see particular headings, see whole articles on particular subjects, or not see anything at all in a particular area. Having to click on 14 little headings in the newspaper every turn to see what is going on would drive me insane.

          Computational Load is somewhat troubling. I am especially concered about things that have to take place at turn end. There simply Can't be much of a delay here or players (esp. multiplayers) will get ticked off.

          Do you have any ideas for trimming it down to give an alpha-1 implementation? That will also help in telling if the full model would be a cpu hog or not. Also were you planning on coding it, or do we need to look for someone?

          Good Job

          Mark
          Project Lead for The Clash of Civilizations
          A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
          Check it out at the Clash Web Site and Forum right here at Apolyton!

          Comment


          • #6
            Mark, a very quick answer, on the culture point only.

            I recognise there may be a confusion, because of my former models.
            We dont have any more a culture category in this model. Now, I assume that each agent represents a culture. This means that a culture i sunique to province/race/nationality/religion combo.
            The mixing/fusion of cultures is then achieved when agents merge, because they share the same race/nationality/religion and are in the same province.
            Like I outlined it, through the migration sub-model, provinces that are near each other will tend to see their agents converging with time : this will simulate culture convergence; we may add trade to this mechanics to help provinces that trade with each other to converge more quickly.
            In fact, this new model is based around the culture, since agents ARE the culture.
            Is that more clear?

            Comment


            • #7
              I've just recently visited this site and find Clash to be quite intersting....I'd like to go ahead and put in some input though.

              On religions how are u dealing with new religions that emerge such as Christinanity and Buddhism from older religions? Also I've read as far as I can tell you have two types, monotheism and polytheism...I'm just wondering what about religions that don't have nessarily a "god" or more than one such as Buddhism, Confuscianism and Taoism for example. Many of these have spiritual matters, but not nessasily any devine personification.
              Which Love Hina Girl Are You?
              Mitsumi Otohime
              Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

              Comment


              • #8
                Ok, lets try to build a simple exemple :

                Lets call the province Arvern.
                Lets put the following agents in Arvern :
                Agent 1 : nationality N1; race Ra1; religion Re1; Pop P1 : 1000.
                Agent 2 : N1, Ra2, Re1; P2 : 250;
                Agent 3 : N2, Ra2, Re1; P3 : 150.
                Agent 4 : N1, Ra1, Re2, P4 : 100.

                Arvern is a province with a major group a population of nationality N1 and race Ra1. NN1 and Ra1 re the main race and nationality of the civ (the natural, or original race and the official nationality). This group is splitted into 2 agents by religion : Re1 is the dominant, lets put official religion of the civ. Re2 is anther religion. It may have come from a previous migration coming from antoher place. The agents bringing this religion were probably from a different race, which has probably been absorved in the dominant Ra1 through the mixing submodel (long duration).
                The low population of agent 4 indicates that it is probably being absorbed by the dominant religion through religious conversions.
                Together, agents 1 and 4 represent about 70% of the population of Arvern.

                The rest of the population is composed with two agents of race Ra2. They are split by nationality. Both agents arrived together, they are progressively given nationality N1, so they are split between those that already have the nationality, and those that are still waiting.

                Distance between race Ra1 and Ra2 is small. Relationship between both are generally good, since they share the same religion and their races are very near each other. Also, there must not have been previous trouble between N1 and N2 cause it would have worse the relationship.
                Relationship between each nationality, race, religion and class is marked by a number between 1 and 100. It may be province or civ level based.

                Besides this, each agent has its own culture, which the set of attributes defined in the model (we may add some others like Mark suggested) : agressivness, social rigidity, traditionalism, insularism, nationalism, provincialism, tech education, philo education, authority acceptance. They have values based on the original agent, their history, their religion, and the fusions of culture that may occur when two agents are mixed after :
                - a migration (agents coming from neighbouring provinces may have migrated in arvern. They have their own culture, even if they have the same race, nationality and religion as agent 1. They have been absorbed by agent 1, and the resulting agent had attributes that were :
                - for each attribute :
                (P1 pop of agent 1, Pm pop of migrating agent)
                ((P1 * attribute) + (Pm * attribute)) / (P1 + )Pm
                - an agent from antoher nationality taken an agents nationality. It is absorbed the same way.
                - two races merging. Attributes of the resulting agent works the same way.

                So, how does all this work?
                Each time there is an event, it may have one of the following category :
                (each time agents are grouped to take actions, the attributes of the resulting agent are calculated with the above formula)
                - nationality : this time, agents 1 ,2 and 4 of nationality N1 will be grouped and act together. Lets say that the event is : military incident between the two nations.
                The relationship between the N1 and N2 is quite good, so there may be few reactions, especially if nationalism and agressivness are not two high. If both groups have few reactions, relationship will remauin quite good, and in reaction to their action, the agents' attributes involved in this action will be very slightly modified (by 0.5 over 100, maybe) in a way or another. Since agents of both nationalities will have taken similar actions, these attributes (nationality, agressivness) will be modified the same way.
                - religion : agents 1, 2, 3 are grouped. Agent 4 is alone. It works the same way. Even if the religions fight each other, as they willdo the same thing, the attributes involved in this will be modified the same way.
                - race : agents 1 and 4 will ve grouped; agents 2 and 3 will be grouped.
                - class : all agents are grouped into 6 agents; each of these agent represent a class of the gov model; the pop for each class is given by a table at the province level. Since agent from all nationalities, races and religions are grouped and act together, their attributes evolve the same way.

                As you see, actually each time agents are in a same place, their attributes tend to converge through processes of migration, mixing and change of nationality. Also, when they react to actions, there attributes also tend to evovle the same way. Then, because agents attributes represent the agents' culture, cultures mix and fusion and converge quite every turn.

                I'm afraid its not very clear, its very late ...

                Comment


                • #9
                  Manu:

                  Great! Thanks for the example. It helps a lot, and fortunately it is close to what I thought you were doing . Now we're back to my original question...

                  In III.6. Sub models : In the mixing sub-models then, I think you should explicitly state culture as one of the things that mix. That's what threw me off, seeing just demographics, race and religion listed.

                  Project Lead for The Clash of Civilizations
                  A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                  Check it out at the Clash Web Site and Forum right here at Apolyton!

                  Comment


                  • #10
                    Manu:

                    I think I see what you're saying. But I have before on this topic, only to find out I was wrong . Can you work out an example of a province with several agents. The prov should have different racial, national, and religious types so people can see exactly what a province's agents could look like. I think an example would be an immense help.

                    Thanks,

                    Mark
                    Project Lead for The Clash of Civilizations
                    A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                    Check it out at the Clash Web Site and Forum right here at Apolyton!

                    Comment


                    • #11
                      I think it might be interesting to impliment advisors who purposefully tell false information if they want to try and overthow the ruler. There'd be a way to tell they were lying such as the way they tell it or having the possibility of a talking with a local citizen in an area of the kingdom or having the use of the internal spy implementation to also check up on your advisors.

                      The first one shouldn't be too difficult to do since there could be a loyalty base (0-100) for example and based on that they'll be more willing to give you correct information and advice as well as more detailed (those with 100 will be more willing to go out of their way to help you and the kingdom than someone with 70). What they say should have some randomness to it. I played a game called Darklands and its sometimes boring in the fact that i know based on what they say what the outcome will be since statement a is always outcome a and statement b and c are always outcome b...There should be more ways of saying it like 5 ot 6 and maybe 1 or 2 that are general statements that u really can't tell since they'd overlap some other statement areas.

                      The second would be similar to an advisor except he'd never tell you a lie (although he may be vague since he'd not want his head chopped off!) Also he'd know a lot about his province or city but not of the civ. Since he'd not be trying for the throne (most likely) he'd be more willing to tell you if the people are upset and ready to revolt unless u take some actions to correct the situation.

                      As far the last one is concerned, u could have your network of spys operate and check up on your advisors as well as your population in general...the problem with this is what if your intelligence advisor is the one who's corrupt? Well I do have somewhat of an answer for this. You could have 1 person who acts as a secrect operative to spy on your advisors alone to check them out...he'd be loyal (you can figure out why money, debt of honor, special privlages, a secret order of those who've sworn fealty to you, etc...) the point is you CAN count on him to tell you the truth.

                      I'd not think all these would need to be implimented, just one.
                      Which Love Hina Girl Are You?
                      Mitsumi Otohime
                      Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

                      Comment


                      • #12
                        LGJ:

                        Its a good idea, but I think it conflicts directly with one of our main objectives... to reduce micromanagement. If you can't trust underlings to do something, or tell you the truth then you always need to check up on them. Sounds like it could Possibly be an option the player could use with the characters model. We already do have some of this stuff in there. Check out the Characters II thread.
                        Project Lead for The Clash of Civilizations
                        A Unique civ-like game that will feature low micromanagement, great AI, and a Detailed Government model including internal power struggles. Demo 8 available Now! (go to D8 thread at top of forum).
                        Check it out at the Clash Web Site and Forum right here at Apolyton!

                        Comment


                        • #13
                          The players could choose whether or not to use the option when starting up. those that want more challenging and/or more realisic game would choose to, while the others wouldn't.
                          Which Love Hina Girl Are You?
                          Mitsumi Otohime
                          Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

                          Comment


                          • #14
                            I've written a paper giving details on the vents used by the social model.

                            You can consult it at this adress :

                            http://people.mw.mediaone.net/markeverson/events.htm

                            Please comment.
                            [This message has been edited by manurein (edited September 24, 1999).]

                            Comment


                            • #15
                              Finnaly got a chance to take more than a passing glance at your event listing.

                              First off it is really good and covers most of the ground as far as I can tell.

                              There are some things I could see improv or atleast you could clarrify for me:

                              1> An economic boom would also affect migration, although oppsosite of a crisis.
                              2> In the battles what about a stalemate...Often many battles ending like this, or atleast with no immediatly clear victor.
                              3> What is diffused techs? Is that techs already learned and being attempting to be incorperated?
                              4> Also what about an event for the loss of tech?
                              5> I also notice you have a lot of unrest do to religion, race and political situation...what about cultural whwre none of the former situations may be a major factor.
                              Which Love Hina Girl Are You?
                              Mitsumi Otohime
                              Oh dear! Are you even sure you answered the questions correctly?) Underneath your confused exterior, you hold fast to your certainties and seek to find the truth about the things you don't know. While you may not be brimming with confidence and energy, you are content with who you are and accepting of both your faults and the faults of others. But while those around you love you deep down, they may find your nonchalance somewhat infuriating. Try to put a bit more thought into what you are doing, and be more aware of your surroundings.

                              Comment

                              Working...
                              X