diff --git a/binaries/data/mods/public/simulation/components/AnimalAI.js b/binaries/data/mods/public/simulation/components/AnimalAI.js
index 64ffa3884d..d469f9e68a 100644
--- a/binaries/data/mods/public/simulation/components/AnimalAI.js
+++ b/binaries/data/mods/public/simulation/components/AnimalAI.js
@@ -16,6 +16,18 @@ AnimalAI.prototype.Schema =
"" +
"" +
"" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
+ "" +
"";
var AnimalFsmSpec = {
@@ -35,7 +47,7 @@ var AnimalFsmSpec = {
this.SelectAnimation("walk", false, this.GetWalkSpeed());
this.MoveRandomly(+this.template.RoamDistance);
// Set a random timer to switch to feeding state
- this.StartTimer(RandomInt(2000, 8000));
+ this.StartTimer(RandomInt(+this.template.RoamTimeMin, +this.template.RoamTimeMax));
},
"leave": function() {
@@ -56,7 +68,7 @@ var AnimalFsmSpec = {
// Stop and eat for a while
this.SelectAnimation("feeding");
this.StopMoving();
- this.StartTimer(RandomInt(1000, 4000));
+ this.StartTimer(RandomInt(+this.template.FeedTimeMin, +this.template.FeedTimeMax));
},
"leave": function() {
@@ -123,9 +135,12 @@ AnimalAI.prototype.PushMessage = function(msg)
AnimalAI.prototype.OnUpdate = function()
{
var mq = this.messageQueue;
- this.messageQueue = [];
- for each (var msg in mq)
- AnimalFsm.ProcessMessage(this, msg);
+ if (mq.length)
+ {
+ this.messageQueue = [];
+ for each (var msg in mq)
+ AnimalFsm.ProcessMessage(this, msg);
+ }
};
AnimalAI.prototype.OnMotionChanged = function(msg)
diff --git a/binaries/data/mods/public/simulation/templates/gaia/fauna_chicken.xml b/binaries/data/mods/public/simulation/templates/gaia/fauna_chicken.xml
index a6a34f5060..6908761c61 100644
--- a/binaries/data/mods/public/simulation/templates/gaia/fauna_chicken.xml
+++ b/binaries/data/mods/public/simulation/templates/gaia/fauna_chicken.xml
@@ -18,6 +18,10 @@
4.0
12.0
+ 2000
+ 8000
+ 1000
+ 4000
1.0
diff --git a/binaries/data/mods/public/simulation/templates/gaia/fauna_deer.xml b/binaries/data/mods/public/simulation/templates/gaia/fauna_deer.xml
index b76f69e6f1..81c80f4015 100644
--- a/binaries/data/mods/public/simulation/templates/gaia/fauna_deer.xml
+++ b/binaries/data/mods/public/simulation/templates/gaia/fauna_deer.xml
@@ -15,8 +15,4 @@
fauna/deer.xml
-
- 8.0
- 32.0
-
diff --git a/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml b/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml
index dd2ab9a678..8f37e090c4 100644
--- a/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml
+++ b/binaries/data/mods/public/simulation/templates/template_structure_resource_field.xml
@@ -31,9 +31,12 @@
structures/plot_field_found.xml
-
+
8.0
+
+
+
7
diff --git a/binaries/data/mods/public/simulation/templates/template_unit_fauna.xml b/binaries/data/mods/public/simulation/templates/template_unit_fauna.xml
index 3454dd588d..308203820c 100644
--- a/binaries/data/mods/public/simulation/templates/template_unit_fauna.xml
+++ b/binaries/data/mods/public/simulation/templates/template_unit_fauna.xml
@@ -24,7 +24,11 @@
- 4.0
- 12.0
+ 8.0
+ 32.0
+ 2000
+ 8000
+ 5000
+ 30000