<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [ <!ENTITY copyrightDates '1999,2000,2001'> <!ENTITY % METACOSM SYSTEM "../en.metacosm.ent"> %METACOSM; ]> <article lang="EN"> <articleinfo> <title>RFC - Populations of Creatures</title> <corpauthor>&author;</corpauthor> <revhistory> <revision> <revnumber>0.5</revnumber> <date>April 15th 2000</date> <authorinitials>Ruffy</authorinitials> <revremark>Conversion to metacosm-DTD, Vegetal Populations added, large change in all sections to answer first comments, and partial fusion with Misc-RFC version 0.3</revremark> </revision> <revision> <revnumber>0.4</revnumber> <date>November 23th 1999 </date> <authorinitials>Ruffy</authorinitials> <revremark>Partial fusion with Misc-RFC version 0.2</revremark> </revision> <revision> <revnumber>0.3</revnumber> <date>October 11th 1999</date> <authorinitials>Janselmeer</authorinitials> <revremark>First SGML version</revremark> </revision> <revision> <revnumber>0.2</revnumber> <date>1999</date> <authorinitials>Janselmeer</authorinitials> <revremark>Unpublished version</revremark> </revision> <revision> <revnumber>0.1</revnumber> <date>1999</date> <authorinitials>Janselmeer</authorinitials> <revremark>First draft</revremark> </revision> </revhistory> <abstract> <simpara> This document defines how animal and vegetal populations will be handled.</simpara> </abstract> </articleinfo> &license; &project; <sect1> <title>Notations</title> <simpara> Important concepts names are capitalized. In order to keep comprehension and translation easy, authors have tried to avoid long and brain damaged sentences. Translators should do the same and always keep things simple. </simpara> </sect1> <sect1> <title>Definitions </title> <glosslist> <glossentry id="territory"> <glossterm>Territory</glossterm> <glossdef> <para>The Territory of a Population is the geographical place (ie continuous area) where this one find its vital resources. Populations can have overlapping Territories. A Territory has a maximal area: no species can control a very large zone.</para> </glossdef> </glossentry> </glosslist> <simpara> Sometimes some individuals from a Population will leave the Territory to settle somewhere else (emigration phenomenon) or to pursuit a personal objective (curiosity, aggressiveness toward an enemy, etc; These are supposed to come back to their home Territory in this case.) </simpara> <glosslist> <glossentry id="population"> <glossterm>Population</glossterm> <glossdef> <para>A population of Creatures (respectively plants) is a Creatures (plants) group living in the same Territory, belonging to the same specie and sharing almost all of their characteristics. All Creatures (plants) do not belong to a Population. Some Creatures (plants) are unique for example. A Population is a type of Community.</para> </glossdef> </glossentry> </glosslist> </sect1> <sect1> <title>Different types of Populations</title> <simpara> First we distinguish Vegetal from Animal Populations. <xref linkend="sec-vegetal"/> </simpara> <simpara> Inside Animal Populations, we make the difference between two category of individuals: in two words, larger and smaller ones. </simpara> <simpara> The first category contains humanoids with their predators (like wolf, bear, dragon, etc) and their victims (rabbit, sheep, trout). More generally this category is the one of all smarter animals and of all possible characters. We will qualify this animals of "Major'.<xref linkend="sec-animaj"/> </simpara> <simpara> All other animals will belong to the second category (insects, plankton, bacteria, etc). These animals will be qualified of 'Minor'. <xref linkend="sec-animin"/> </simpara> <simpara> The reason of this separation is an issue of processing power and memory use... It is difficult in present time to envision simulating one billion ants or one billion bacteria. And moreover, the impact on the game would be minimal. For these reasons, a fraction of the fauna will be globally simulated: All individuals of the second category will be considered as part of the local fauna. <xref linkend="sec-rem"/> </simpara> </sect1> <sect1 id="sec-animaj"> <title>Populations of major animals</title> <simpara> We distinguish immediately many kinds of Populations: </simpara> <itemizedlist> <listitem><para>intelligent creatures: humans, elves, dwarfs, orcs, etc...</para></listitem> <listitem><para>animals: rabbits, wolves, bears, eagles, sharks, etc.</para></listitem> <listitem><para>undeads</para></listitem> </itemizedlist> <simpara> Some difference appear between them. For example, undeads do not reproduce themselves in the same way as other do. And human population are more complex because individuals can have different social functions (guards, hunters, farmers, etc.). Anyway, for the sake of simplicity, we will make the management of these populations uniform. </simpara> <simpara> Another distinction exist between rural and urban Populations. <xref linkend="sec-animaj-urb"/> </simpara> </sect1 <sect1 id="sec-animaj-carac"> <title>Characteristics</title> <itemizedlist> <listitem><para>a set of individualized creatures</para></listitem> <listitem><para>a Territory</para></listitem> <listitem><para>a collective memory</para></listitem> <listitem><para>a creature generator</para></listitem> </itemizedlist> <sect2 id="sec-animaj-collmem"> <title>The Collective Memory</title> <simpara> A Population maintain a collective memory seems to model the exchanges of informations between individuals. This memory contains informations shared among the individuals, including the reputation of external Creatures and rumours. </simpara> </sect2> <sect2 id="sec-animaj-evolpop"> <title>Population evolution</title> <simpara> Creatures of a Population (as most creatures anyway) do not spontaneously reappear (repop), they reproduce themselves. Evolutions of a Population can be consequences of: </simpara> <itemizedlist> <listitem><simpara>Growth</simpara> <itemizedlist> <listitem><para>Natural development (with sufficient resources)</para></listitem> <listitem><para>Weather effect</para></listitem> <listitem><para>Populations fusion</para></listitem> <listitem><para>External effect (breeding, magical effect)</para></listitem> </itemizedlist> </listitem> <listitem><simpara>Diminution</simpara> <itemizedlist> <listitem><para>Death of individuals (predators, natural disasters, etc)</para></listitem> <listitem><para>Weather effect</para></listitem> <listitem><para>Pollution, unadapted environment</para></listitem> <listitem><para>Competition with other Populations</para></listitem> <listitem><para>Insufficient resources, territory too small</para></listitem> <listitem><para>Population split</para></listitem><listitem><para>Unadaptation to the flora, the fauna, or something else.</para></listitem></itemizedlist> </listitem> </itemizedlist> <simpara> A Population can split up when the resources necessary to its survival are not available any more (too many individuals, too few resources) and the territory cannot be enlarged any more. In this case, only one of the resulting Populations stay on the Territory. In the other case (no division), the Population diminishes by lack of resources. </simpara> <simpara> A nomad Population explores until it finds a convenient territory (with resources sufficient for the all or part of the Population). In the mean-time, the Population has still needs and use the resources of the territories it traverses. </simpara> <simpara> An individual which leaves the Population is not affected by advantages and constraints linked to this Population (collective memory, mutual protection,etc). When it meets another Population of the same kind, it can ask for admission and be accepted or not (an attack from the Population is even possible). When it meets another individual of the same kind (and sexually compatible), they can settle a new Population. </simpara> <simpara> To simulate natural growth, a new Creature is generated after a delay computed by a random variable (dependent of the Population) and only when some conditions are met (example: existence of a reproducer couple). This new Creature is created according to a template which evolves with the recent experience of the Population. A pacifist Population, if it is regularly under attack, will produce more young warriors. (If not, the Population will more likely flee out of this Place). </simpara> <simpara> Creatures of new generation have characteristics transmitted by precedent generations (inheritance concept). </simpara> <simpara> When there is no more individual in a Population, this one is declared extinct. <xref linkend="sec-protection"/> </simpara> </sect2> </sect1> <sect1> <title>Territory Evolution</title> <simpara> The Territory area decreases when the Population splits up, when its demography decreases and when the territory becomes unadapted to the species. </simpara> <simpara> The Territory area increases when the manpower of the Population goes up and the local lands are adapted to the species until the maximal area is reached. </simpara> <simpara> Individuals of a Population move, live, feed themselves on their Territory. They defend it too and as a consequence, they may attack another Population trying to make use of the Territory. The other option is migration if the enemies are too powerful. </simpara> </sect1> <sect1 id="sec-animaj-urb"> <title>Urban Population of intelligent creatures</title> <simpara> This kind of Population needs a model more complex: each creature will have a specific function (guard, shopkeeper, priest, etc.) </simpara> <simpara> In a city, the birth of a new Entity requires to find available space for it in a building. The number of inhabitants depends on the buildings composing the city. </simpara> </sect1> <sect1 id="sec-animaj-implementation"> <title>Implementation</title> <simpara> Summary: a Population = a Community ; a major animal = a Creature </simpara> </sect1> <sect1 id="sec-animin"> <title>Population of minor animals</title> <simpara> Minor animals are managed globally as a part of the fauna in the considered Territory. They are modelled only as statistics: we will only speak of "snow mountains" fauna type, "swamps" fauna type, or "sable desert" fauna type, etc. <xref linkend="sec-rem"/> </simpara> <sect2 id="sec-animin-carac"> <title>Characteristics</title> <itemizedlist> <listitem><para>a Population type (snow mountains, swamps, sable desert, etc.)</para></listitem> <listitem><para>a biomass attribute (which indicates a density of life in association with the Territory size)</para></listitem> <listitem><para>a nutritive value by biomass unit</para></listitem> <listitem><para>a level of health (good, disease, etc)</para></listitem> <listitem><para>a dynamic description, function of previous characteristics</para></listitem> <listitem><para>a Territory</para></listitem> </itemizedlist> </sect2> <sect2 id="sec-animin-evolpop"> <title>Evolution</title> <simpara> The causes of evolution for a minor animal Population are: </simpara> <itemizedlist> <listitem><simpara>Growth</simpara> <itemizedlist> <listitem><para>Natural development (with sufficient resources)</para></listitem> <listitem><para>Weather effect</para></listitem> <listitem><para>Populations fusion</para></listitem> <listitem><para>External effect (breeding, magical effect)</para></listitem> </itemizedlist> </listitem> <listitem><simpara>Diminution</simpara> <itemizedlist> <listitem><para>Disparition of biomass (predators, natural disasters, etc)</para></listitem> <listitem><para>Weather effect</para></listitem> <listitem><para>Pollution, unadapted environment</para></listitem> <listitem><para>Competition with other Populations</para></listitem> <listitem><para>Insufficient resources, territory too small</para></listitem> <listitem><para>Population split</para></listitem><listitem><para>Unadaptation to the laura, the fauna, or something else.</para></listitem></itemizedlist> </listitem> </itemizedlist> <simpara> A Population can split up when the resources necessary to its survival are not available any more (too many individuals, too few resources) and the territory cannot be enlarged any more. In this case, only one of the resulting Population stay on the Territory. In the other case (no division), the Population diminishes by lack of resources. </simpara> <simpara> A nomad Population explores until it finds a convenient territory (with resources sufficient for the all or part of the Population). In the mean-time, the Population has still needs and use the resources of the territories it goes through. </simpara> <simpara> A Population which biomass becomes null is destroyed. <xref linkend="sec-protection"/> </simpara> </sect2> <sect2 id="sec-animin-player"> <title>Minor animals and players</title> <simpara> There is no obvious interest: small influence in the course of the game, difficulty of interpretation, highly limited game of the mud worm, etc. <xref linkend="sec-animin-individual"/> </simpara> </sect2> <sect2 id="sec-animin-individual"> <title>Individualisation</title> <simpara> Minor animals of a Population are not individualized and consequently not named. </simpara> <simpara> Some exceptions will exist in the classification of 'minor animals': clouds of insects are considered for example as a single major animal (which means an object in the implementation). In some cases, we will prefer to consider a minor animal as an individualized (major) one. </simpara> <simpara> More than one Population of minor animals can coexist on the same Territory: two Population of type "savana" for example. </simpara> </sect2> <sect2 id="sec-animin-implementation"> <title>Implantation</title> <simpara> The instance of a minor animal Population is implemented as a single object (a single Creature), which is a statistic vision of this fauna. The evolution will be globally simulated (this implies also that a set of fauna offering the same interface is available). Summary: a Population = a Community; an Instance = a Creature. </simpara> <simpara> A minor animal can exceptionnaly be individualized. </simpara> <example> <title>Chlipouni</title> <simpara> Ex.: Raoul captures an ant which was walking on his sugar breads. He decides to call it Chlipouni and keep it as a domestic animal. </simpara> <simpara> Consequence : Chlipouni is removed from its Population and a new Creature is created. </simpara> </example> </sect2> </sect1> <sect1 id="sec-vegetal"> <title>Vegetal Populations</title> <simpara> Most plants will have a passive role during the game. It is then unuseful to manage them individually. The simulation of a Vegetal Population will be preferred to a set of individualized Plants. </simpara> <sect2 id="sec-vegetal-carac"> <title>Characteristics</title> <itemizedlist> <listitem> <simpara>a type of vegetation (savana, forest of leafy, etc.)</simpara> <simpara>a biomass attribute (which indicates a density of life in association with the Territory size </simpara> <simpara>a nutritive value by biomass unit.</simpara> <simpara>a level of health (good, disease, fire, etc.)</simpara> <simpara>a dynamic description, function of previous characteristics.</simpara> <simpara>a Territory</simpara> </listitem> </itemizedlist> <example> <title>Some vegetal populations</title> <itemizedlist> <listitem> <simpara>A luxuriant tropical forest.</simpara> </listitem> <listitem> <simpara>A wheat field devastated by a storm.</simpara> </listitem> <listitem> <simpara>A vine weakened by disease.</simpara> </listitem> </itemizedlist> </example> </sect2> <sect2 id="sec-vegetal-evolpop"> <title>Evolution</title> <simpara> The causes of evolution for a vegetal Population are: </simpara> <itemizedlist> <listitem><simpara>Growth</simpara> <itemizedlist> <listitem><para>Natural development (with sufficient resources)</para></listitem> <listitem><para>Weather effect</para></listitem> <listitem><para>Populations fusion</para></listitem> <listitem><para>External effect (breeding, magical effect)</para></listitem> </itemizedlist> </listitem> <listitem><simpara>Diminution</simpara> <itemizedlist> <listitem><para>Disparition of biomass (predators, natural disasters, etc)</para></listitem> <listitem><para>Weather effect</para></listitem> <listitem><para>Pollution, unadapted environment</para></listitem> <listitem><para>Competition with other Populations</para></listitem> <listitem><para>Insufficient resources, territory too small</para></listitem> <listitem><para>Population split</para></listitem><listitem><para>Unadaptation to the flora, the fauna, or something else.</para></listitem></itemizedlist> </listitem> </itemizedlist> <simpara> One of the consequences of alterations (plantations, destructions, pollution, weather, natural disaster, etc.) can be a change of vegetation type. The change can be immediate (change from a plain to a field of wheat) or slower (concurrence between a mediterranean vegetation against a vegetation "forest of leafies" and progressive victory of one against the other). </simpara> <simpara> The growth of the Territory is done directly (extension toward contiguous areas). Indirect extensions cases (spores, or grains transmitted through the sea or wind) are considered as colonization and give birth further to a new Population. </simpara> <simpara> A Population which biomass becomes null is destroyed. <xref linkend="sec-protection"/> </simpara> </sect2> <sect2 id="sec-vegetal-player"> <title>Plants and players</title> <simpara> Players can NOT play plants: </simpara> <itemizedlist> <listitem><simpara>Plants hardly move.</simpara></listitem> <listitem><simpara>If it's difficult to play an animal (different of an Human), it is even less conceivable to place yourself under the bark of a tree.</simpara></listitem> <listitem><simpara>At the relational level, one will easily accept that few living beings are able to communicate with a plant.</simpara></listitem> </itemizedlist> </sect2> <sect2 id="sec-vegetal-individual"> <title>Individualisation</title> <simpara> It is possible to have magical plants or 'active' plants (carnivore plants notably). </simpara> <simpara> It is also possible to find individualized plants, like the Kumquat Tree in Day of The Tentacle ™, the justice oak of the king Saint-Louis, a four-leaf clover or a magical ivy with a castle at its top,etc. </simpara> </sect2> <sect2 id="sec-vegetal-implementation"> <title>Implementation</title> <simpara> A vegetal Population will be represented by an object. <simpara> <simpara>Summary: a Population = a Community ; an Instance = a Creature. </simpara><simpara> A special plant will be represented by an object. The different types of Vegetation will be available as classes. </simpara> </sect2> </sect1> <sect1 id="sec-protection"> <title>Species Protection</title> <simpara> Species can be put into danger or even disappear. It belongs to the Players or the bots to ensure that the species are protected (through Quests, forest guards, divinity orders, etc.) It is also possible to recreate a species magically even if it should remain difficult. </simpara> </sect1> <sect1 id="sec-rem"> <title>Remarks on the Game</title> <simpara> The goal is not to model the life inside an ecosystem in which the player would act. </simpara> <simpara> The objective is try to make the behaviour of Creatures, their evolution and the surrounding fauna and flora as realistic to the point of view of the players as possible. </simpara> <simpara> The average player is not interested in the way the Creatures are reproducing. The only things he sees, is that when he kills a large number of rabbits, their number returns slowly to its initial level. </simpara> <simpara> If he decides to exterminate all rabbits of the area, they will not come back. </simpara> <simpara> In the same way, if he kills a creature X, he will not find it again in good health at the other side of the city (and a fortiori at the same place). </simpara> <simpara> As a consequence, we will try to simplify at a maximum the modeling of the fauna and the flora by neglecting a number of parameters. </simpara> </sect1> </article> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-namecase-general:t sgml-general-insert-case:lower sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:2 sgml-indent-data:t sgml-parent-document:nil sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: -->