Each chunk is characterized by: a position in the world; a total-quantity of producible food (between 0 and 100); a food-growth coefficient; a temperature, between -100 (cold) and + 100 (hot), that doesn’t change over time.
When the program starts, each chunk is assigned an initial quantity of food and a temper- ature using the Perlin Noise function, which generates similar values for nearby chunks and unrelated values for chunks which are far away (the result is a more credible randomization, as can be seen in the Figure 1 in the Appendix).
Figure 2 shows two images representing the world without creatures: the first one from a climatic point of view (red zones are hotter, blue zones are cooler); the second one from the point of view of the land fertility (in dark green chunks there is more food, in the lighter ones there is less food). We can observe that the temperature changes gradually from chunk to chunk, as well as the quantity of food, thanks to the Perlin Noise function quasi continuity. However, when creatures reach a given chunk, its quantity of food starts reducing, as a consequence of their feeding. If all the creatures die, the food starts growing again, going back to the situation in Figure 2.