Index: /experiments/frams/foraminifera/data/scripts/foraminifera.expdef
===================================================================
--- /experiments/frams/foraminifera/data/scripts/foraminifera.expdef	(revision 485)
+++ /experiments/frams/foraminifera/data/scripts/foraminifera.expdef	(revision 486)
@@ -79,24 +79,24 @@
 	World.wrldsiz = micronsToFrams(40000);
 	World.wrldbnd = 1;
-	ExpParams.stress = 1;
-	ExpParams.creath = -0.99; //just above the bottom
-	ExpParams.autorestart = 0;
+	ExpProperties.stress = 1;
+	ExpProperties.creath = -0.99; //just above the bottom
+	ExpProperties.autorestart = 0;
 
 	//time
-	ExpParams.secPerStep = 480;
-	ExpParams.foramSpeedMmPerMin = 0.05;
+	ExpProperties.secPerStep = 480;
+	ExpProperties.foramSpeedMmPerMin = 0.05;
 	movePerStep = getMovePerStep();
 
-	//ExpParams.visualize = 1; //uncomment to visualize reticulopodia and indicate nutrients positions
-
-	//ExpParams.logging = 1; //uncomment to enable logging simulation parameters to log files
+	//ExpProperties.visualize = 1; //uncomment to visualize reticulopodia and indicate nutrients positions
+
+	//ExpProperties.logging = 1; //uncomment to enable logging simulation parameters to log files
 
 	//reproduction
-	ExpParams.foramPop = 20;	
-	ExpParams.crossprob = 0;
-	ExpParams.mutationprob = 0;
-	ExpParams.repro_time = 720;
-	ExpParams.gametoPeriod = 43200;
-	ExpParams.divisionCost = 15.6;
+	ExpProperties.foramPop = 20;	
+	ExpProperties.crossprob = 0;
+	ExpProperties.mutationprob = 0;
+	ExpProperties.repro_time = 720;
+	ExpProperties.gametoPeriod = 43200;
+	ExpProperties.divisionCost = 15.6;
 	reprocounter = 0;
 
@@ -105,12 +105,12 @@
 	//morphology
 	dir_change = 30000;
-	ExpParams.zone1_range = micronsToFrams(1000);
-	ExpParams.zone2_range = micronsToFrams(3000);
-	ExpParams.chamber_growth_time = 720;
-	ExpParams.chamberCostPerSec = 0.000001;
-	ExpParams.chamber_proculus_haplo = micronsToFrams(50);
-	ExpParams.chamber_difference_haplo = 0.0;
-	ExpParams.chamber_proculus_diplo = micronsToFrams(20);
-	ExpParams.chamber_difference_diplo = micronsToFrams(8);
+	ExpProperties.zone1_range = micronsToFrams(1000);
+	ExpProperties.zone2_range = micronsToFrams(3000);
+	ExpProperties.chamber_growth_time = 720;
+	ExpProperties.chamberCostPerSec = 0.000001;
+	ExpProperties.chamber_proculus_haplo = micronsToFrams(50);
+	ExpProperties.chamber_difference_haplo = 0.0;
+	ExpProperties.chamber_proculus_diplo = micronsToFrams(20);
+	ExpProperties.chamber_difference_diplo = micronsToFrams(8);
 
 	max_chamber_volume = [Vector.new(), Vector.new()];
@@ -124,29 +124,29 @@
 
 	//energetics
-	ExpParams.min_repro_energ_haplo = 4;
-	ExpParams.min_repro_energ_diplo = 6;
-
-	ExpParams.e_meta = 0.0000005; 
-	ExpParams.energy_hib = 0.0000001;
-	ExpParams.energy_move = 0.0000005;
-
-	ExpParams.energies0_haplo = energyFromVolume(micronsToFrams(20),1);
-	ExpParams.energies0_diplo = energyFromVolume(micronsToFrams(1.25),1);
-	ExpParams.feedtrans = 0.001;
-	ExpParams.e_repro_cost_haplo = 0.3; 
-	ExpParams.e_repro_cost_diplo = 0.2;
-
-	ExpParams.e_death_level_haplo = 0.5;
-	ExpParams.e_death_level_diplo = 0.5;
+	ExpProperties.min_repro_energ_haplo = 4;
+	ExpProperties.min_repro_energ_diplo = 6;
+
+	ExpProperties.e_meta = 0.0000005; 
+	ExpProperties.energy_hib = 0.0000001;
+	ExpProperties.energy_move = 0.0000005;
+
+	ExpProperties.energies0_haplo = energyFromVolume(micronsToFrams(20),1);
+	ExpProperties.energies0_diplo = energyFromVolume(micronsToFrams(1.25),1);
+	ExpProperties.feedtrans = 0.001;
+	ExpProperties.e_repro_cost_haplo = 0.3; 
+	ExpProperties.e_repro_cost_diplo = 0.2;
+
+	ExpProperties.e_death_level_haplo = 0.5;
+	ExpProperties.e_death_level_diplo = 0.5;
 
 	//nutrients
 	changePeriod = 0;
 	phase = "high";
-	ExpParams.foodperiod = 21600;
-	ExpParams.foodPeriodChange = 0;
-	ExpParams.nutrientradius = micronsToFrams(10);
-	ExpParams.energy_nut = energyFromVolume(ExpParams.nutrientradius,1);
-	ExpParams.feedrate = 1;
-	ExpParams.ingestion = 0.25;
+	ExpProperties.foodperiod = 21600;
+	ExpProperties.foodPeriodChange = 0;
+	ExpProperties.nutrientradius = micronsToFrams(10);
+	ExpProperties.energy_nut = energyFromVolume(ExpProperties.nutrientradius,1);
+	ExpProperties.feedrate = 1;
+	ExpProperties.ingestion = 0.25;
 	nutrientenergywaiting = 0;
 	ExpState.totaltestedcr = 0;
@@ -165,9 +165,9 @@
 	if (isRadiusInFrams == 1) //radius in frams
 	{
-		return ExpParams.picoCarbonPerMikro*volumeInMicrons(base);
+		return ExpProperties.picoCarbonPerMikro*volumeInMicrons(base);
 	}
 	else //volume in microns
 	{
-		return ExpParams.picoCarbonPerMikro * base;
+		return ExpProperties.picoCarbonPerMikro * base;
 	}
 }
@@ -175,5 +175,5 @@
 function getMovePerStep()
 {
-	return micronsToFrams((ExpParams.foramSpeedMmPerMin/60)*1000)*ExpParams.secPerStep;
+	return micronsToFrams((ExpProperties.foramSpeedMmPerMin/60)*1000)*ExpProperties.secPerStep;
 }
 
@@ -192,5 +192,5 @@
 	var ploid = "haplo";
 	if (gen == 1) ploid = "diplo";
-	return ExpParams.[prop_id + "_" + ploid];
+	return ExpProperties.[prop_id + "_" + ploid];
 }
 
@@ -228,5 +228,5 @@
 	Populations[2].clear(); //reticulopodia and nutrients
 
-	for (var i = 0; i < ExpParams.foramPop; i++)
+	for (var i = 0; i < ExpProperties.foramPop; i++)
 	{
 		addInitialForam(0, i);	
@@ -235,5 +235,5 @@
 	o = Populations[0][0].getMechPart(0).orient.clone();
 	ExpState.totaltestedcr = 0;
-	nutrientenergywaiting = ExpParams.energy_nut;
+	nutrientenergywaiting = ExpProperties.energy_nut;
 }
 
@@ -306,5 +306,5 @@
 {
 	//percent of current energy
-	cr.idleen = (ExpParams.e_meta * cr.energy)*ExpParams.secPerStep;
+	cr.idleen = (ExpProperties.e_meta * cr.energy)*ExpProperties.secPerStep;
 }
 
@@ -316,5 +316,5 @@
 function getZoneRange(cr, zone_num)
 {
-	return ExpParams.["zone"+zone_num+"_range"];
+	return ExpProperties.["zone"+zone_num+"_range"];
 }
 
@@ -322,5 +322,5 @@
 {
 	setForamMeta(cr);
-	if (ExpParams.visualize == 1)
+	if (ExpProperties.visualize == 1)
 	{
 		var ret = Populations[2].add("//0\np:sh=3,sx=0.01,sy="+getZoneRange(cr,1)+",sz="+getZoneRange(cr,1)+",ry=1.57,vr=1.0,1.0,1.0");
@@ -438,5 +438,5 @@
 	{
 		//percent of maximal energy
-		cr.energy_m += (ExpParams.energy_move * cr.data->lifeparams->max_energy_level)*ExpParams.secPerStep;
+		cr.energy_m += (ExpProperties.energy_move * cr.data->lifeparams->max_energy_level)*ExpProperties.secPerStep;
 	}
 }
@@ -469,5 +469,5 @@
 	}
 	//random move
-	else if (cr.lifespan%int(dir_change/ExpParams.secPerStep) == 0)
+	else if (cr.lifespan%int(dir_change/ExpProperties.secPerStep) == 0)
 	{
 		cr.data->lifeparams->dir = randomDir();
@@ -483,5 +483,5 @@
 function randomDir()
 {
-	var dir = (Math.rndUni(-ExpParams.zone2_range, ExpParams.zone2_range), Math.rndUni(-ExpParams.zone2_range, ExpParams.zone2_range), 0);	
+	var dir = (Math.rndUni(-ExpProperties.zone2_range, ExpProperties.zone2_range), Math.rndUni(-ExpProperties.zone2_range, ExpProperties.zone2_range), 0);	
 	dir.normalize();
 	dir.scale(-1*movePerStep);
@@ -492,10 +492,10 @@
 {
 	cr1.localDrive = XYZ.new(0,0,0);
-	var e =  ExpParams.feedtrans*cr1.energy;//ExpParams.feedtrans*cr1.energy*ExpParams.ingestion*ExpParams.secPerStep; //TODO efficiency dependent on age
+	var e =  ExpProperties.feedtrans*cr1.energy;//ExpProperties.feedtrans*cr1.energy*ExpProperties.ingestion*ExpProperties.secPerStep; //TODO efficiency dependent on age
 	e = Math.min(cr2.energy, e);
-	e *= ExpParams.secPerStep;
-	//Simulator.print("transferring "+e +"("+e*ExpParams.ingestion+")"+" to "+cr1.name +" ("+ cr1.energy+") " +" from "+cr2.name+" ("+cr2.energy+") "+ e/ExpParams.secPerStep+ " per sec");
+	e *= ExpProperties.secPerStep;
+	//Simulator.print("transferring "+e +"("+e*ExpProperties.ingestion+")"+" to "+cr1.name +" ("+ cr1.energy+") " +" from "+cr2.name+" ("+cr2.energy+") "+ e/ExpProperties.secPerStep+ " per sec");
 	cr2.energy_m = cr2.energy_m + e + 0.0000001;
-	cr1.energy_p = cr1.energy_p + e*ExpParams.ingestion;
+	cr1.energy_p = cr1.energy_p + e*ExpProperties.ingestion;
 	if (cr1.data->lifeparams->hibernated == 1)
 	{
@@ -512,5 +512,5 @@
 	else
 	{
-		cr.idleen = (ExpParams.energy_hib * cr.energy)*ExpParams.secPerStep; //hibernate
+		cr.idleen = (ExpProperties.energy_hib * cr.energy)*ExpProperties.secPerStep; //hibernate
 	}
 	cr.data->lifeparams->hibernated = 1 - cr.data->lifeparams->hibernated;
@@ -534,6 +534,6 @@
 	{
 		cr.data->lifeparams->chamber_growth = Math.max(cr.data->lifeparams->chamber_growth-1,0);
-		//Simulator.print("chamber growing, time left = " + cr.data->lifeparams->chamber_growth*ExpParams.secPerStep);
-		cr.energy_m += ExpParams.chamberCostPerSec * cr.energy * ExpParams.secPerStep;
+		//Simulator.print("chamber growing, time left = " + cr.data->lifeparams->chamber_growth*ExpProperties.secPerStep);
+		cr.energy_m += ExpProperties.chamberCostPerSec * cr.energy * ExpProperties.secPerStep;
 
 	 	//Simulator.print("energy " + cr2.energy + " subtracting " + growth_cost);
@@ -581,5 +581,5 @@
 			if ((cr.data->lifeparams->max_energy_level >= energyFromVolume(max_chamber_volume[cr.data->lifeparams->gen][lastChamberNum(cr)],0))) 	
 			{
-				cr.data->lifeparams->chamber_growth = int(ExpParams.chamber_growth_time/ExpParams.secPerStep);
+				cr.data->lifeparams->chamber_growth = int(ExpProperties.chamber_growth_time/ExpProperties.secPerStep);
 			}	
 		}
@@ -589,5 +589,5 @@
 function deathConditions(cr)
 {
-	if ((cr.energy <= getProperty(cr.data->lifeparams->gen,"e_death_level")*cr.data->lifeparams->max_energy_level) || (Math.rnd01 < ExpParams.hunted_prob))
+	if ((cr.energy <= getProperty(cr.data->lifeparams->gen,"e_death_level")*cr.data->lifeparams->max_energy_level) || (Math.rnd01 < ExpProperties.hunted_prob))
 	{
 		return 1;
@@ -607,5 +607,5 @@
 	geno.data->genes = cr.data->genes;
 	geno.data->lifeparams = cr.data->lifeparams;
-	if (ExpParams.logging == 1) Simulator.print("\"" + cr.name + "\" died...");
+	if (ExpProperties.logging == 1) Simulator.print("\"" + cr.name + "\" died...");
 	ExpState.totaltestedcr++;
 }
@@ -627,9 +627,9 @@
 function addNutrient()
 {
-	var cr = Populations[1].add(createNutrientGenotype(ExpParams.nutrientradius));
+	var cr = Populations[1].add(createNutrientGenotype(ExpProperties.nutrientradius));
 
 	cr.name = "Nutrients";
 	cr.idleen = 0;
-	cr.energy0 = ExpParams.energy_nut;
+	cr.energy0 = ExpProperties.energy_nut;
 	cr.energy = cr.energy0;
 	cr.signals.add("nutrient");
@@ -638,7 +638,7 @@
 
 	placeCreatureRandomly(cr, 0, 0);
-	if (ExpParams.visualize == 1)
-	{
-		var nutsize = ExpParams.nutrientradius*10;
+	if (ExpProperties.visualize == 1)
+	{
+		var nutsize = ExpProperties.nutrientradius*10;
 		var nut = Populations[2].add("//0\np:sh=2,sx="+nutsize+",sy="+nutsize+",sz="+nutsize+",ry=1.5,vr=0.0,1.0,0.0");
 		cr.data->reticulopodiacreature = nut;
@@ -657,17 +657,17 @@
 function nutrientGrowth()
 {
-	if (ExpParams.foodPeriodChange > 0)
+	if (ExpProperties.foodPeriodChange > 0)
 	{
 			changePeriod += 1;
-			if (phase=="low" && (changePeriod*ExpParams.secPerStep) >= 23328000) //9 months
+			if (phase=="low" && (changePeriod*ExpProperties.secPerStep) >= 23328000) //9 months
 			{
-				ExpParams.foodperiod = ExpParams.foodperiod/ExpParams.foodPeriodChange;
+				ExpProperties.foodperiod = ExpProperties.foodperiod/ExpProperties.foodPeriodChange;
 				phase = "high";
 				changePeriod = 0;
 			}
 		
-			else if (phase == "high" && (changePeriod*ExpParams.secPerStep) >= 7776000) //3 months
+			else if (phase == "high" && (changePeriod*ExpProperties.secPerStep) >= 7776000) //3 months
 			{
-				ExpParams.foodperiod = ExpParams.foodperiod*ExpParams.foodPeriodChange;
+				ExpProperties.foodperiod = ExpProperties.foodperiod*ExpProperties.foodPeriodChange;
 				phase = "low";
 				changePeriod = 0;
@@ -675,7 +675,7 @@
 	}
 	nutrientenergywaiting = nutrientenergywaiting + 1;
-	if (nutrientenergywaiting*ExpParams.secPerStep >= ExpParams.foodperiod)
-	{
-		for (var i = 0; i < ExpParams.feedrate; i++)
+	if (nutrientenergywaiting*ExpProperties.secPerStep >= ExpProperties.foodperiod)
+	{
+		for (var i = 0; i < ExpProperties.feedrate; i++)
 		{    
 			addNutrient();
@@ -695,5 +695,5 @@
 
 	nutrientGrowth();
-	if (ExpParams.logging == 1)
+	if (ExpProperties.logging == 1)
 	{
 		createStatistics();
@@ -702,5 +702,5 @@
 	//reproduction --------------------------------------------
 	reprocounter += 1;
-	if (reprocounter*ExpParams.secPerStep > ExpParams.repro_time)
+	if (reprocounter*ExpProperties.secPerStep > ExpProperties.repro_time)
 	{
 		reprocounter = 0;
@@ -712,5 +712,5 @@
 	if (Populations[0].size == 0)
 	{
-		if (ExpParams.autorestart)
+		if (ExpProperties.autorestart)
 		{
 			Simulator.print("no more creatures, restarting...");
@@ -723,7 +723,7 @@
 		}
 	}
-	if (ExpParams.maxSteps > 0)
-	{
-		if (Simulator.stepNumber >= ExpParams.maxSteps)
+	if (ExpProperties.maxSteps > 0)
+	{
+		if (Simulator.stepNumber >= ExpProperties.maxSteps)
 			Simulator.stop();
 	}
@@ -778,5 +778,5 @@
 ~
 
-prop:
+property:
 id:visualize
 name:Show reticulopodia and nutrients
@@ -784,10 +784,10 @@
 group:Foraminifera
 
-prop:
+property:
 id:maxSteps
 name:Stop after the given number of simulation steps
 type:d 0 1000000 0
 
-prop:
+property:
 id:foramSpeedMmPerMin
 name:Speed of foraminfera in mm/min
@@ -796,5 +796,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:gametSuccessRate
 name:Ratio of successful gamets
@@ -802,5 +802,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:gametoPeriod
 name:Time of gametogenesis
@@ -808,5 +808,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:picoCarbonPerMikro
 name:Picograms of carbon in cubed micrometer
@@ -814,5 +814,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:secPerStep
 name:Seconds per simulation step
@@ -821,5 +821,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:e_repro_cost_haplo
 name:Cost of reproduction
@@ -827,5 +827,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:divisionCost
 name:Cost of division in pG
@@ -833,5 +833,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:e_repro_cost_diplo
 name:Cost of reproduction
@@ -839,5 +839,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:chamber_growth_time
 name:Time of the chamber growth in seconds
@@ -845,5 +845,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:chamberCostPerSec
 name:Cost of growning chamber per second
@@ -851,5 +851,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:chamber_proculus_haplo
 name:Size of proculus
@@ -857,5 +857,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:chamber_proculus_diplo
 name:Size of proculus
@@ -863,5 +863,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:chamber_difference_haplo
 name:Difference in size between subsequent chambers
@@ -869,5 +869,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:chamber_difference_diplo
 name:Difference in size between subsequent chambers
@@ -875,5 +875,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:hunted_prob
 name:Probability of being hunted
@@ -881,5 +881,5 @@
 group:Forminifera
 
-prop:
+property:
 id:zone1_range
 name:Zone 1 range 
@@ -887,5 +887,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:zone2_range
 name:Zone 2 range
@@ -893,5 +893,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:colors
 name:Haploid and diploid colors
@@ -899,5 +899,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:min_repro_energ_haplo
 name:Min reproduction energy of forams
@@ -905,5 +905,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:min_repro_energ_diplo
 name:Min reproduction energy of forams
@@ -911,5 +911,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:repro_prob
 name:Probability of reproduction
@@ -917,5 +917,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:energies0_haplo
 name:Energy of offspring from diploid forams
@@ -923,5 +923,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:energies0_diplo
 name:Energy of offspring from diploid forams
@@ -929,5 +929,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:e_death_level_haplo
 name:Minimal level of energy to sustain life of haploid
@@ -935,5 +935,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:e_death_level_diplo
 name:Minimal level of energy to sustain life of diploid
@@ -941,5 +941,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:energy_hib
 name:Energy used for hibernation during one step
@@ -947,5 +947,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:energy_move
 name:Energy used for movement during one step
@@ -953,5 +953,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:min_vol
 name:Minimal volume for reproduction
@@ -959,5 +959,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:max_size
 name:Maximal size
@@ -965,5 +965,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:foramPop
 name:Initial forams population size
@@ -971,5 +971,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:crossprob
 name:Crossover probability
@@ -977,5 +977,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:mutationprob
 name:Mutation probability
@@ -983,5 +983,5 @@
 group:Foraminifera
 
-prop:
+property:
 id:e_meta
 name:Idle metabolism
@@ -990,5 +990,5 @@
 help:Each stick consumes this amount of energy in one time step
 
-prop:
+property:
 id:feedrate
 name:Feeding rate
@@ -997,5 +997,5 @@
 help:How fast energy is created in the world
 
-prop:
+property:
 id:foodPeriodChange
 name:Set variable feed rate
@@ -1003,5 +1003,5 @@
 group:Energy
 
-prop:
+property:
 id:ingestion
 name:Ingestion rate
@@ -1009,5 +1009,5 @@
 group:Energy
 
-prop:
+property:
 id:energy_nut
 name:Nutrient energy
@@ -1015,5 +1015,5 @@
 group:Energy
 
-prop:
+property:
 id:feedtrans
 name:Energy transfer per second
@@ -1021,5 +1021,5 @@
 group:Energy
 
-prop:
+property:
 id:foodperiod
 name:Time between food occurrences
@@ -1027,5 +1027,5 @@
 group:Energy
 
-prop:
+property:
 id:nutrientradius
 name:Nutrient size
@@ -1033,5 +1033,5 @@
 group:Energy
 
-prop:
+property:
 id:stress
 name:Environmental stress
@@ -1039,5 +1039,5 @@
 group:World
 
-prop:
+property:
 id:repro_trigger
 name:Reproduction trigger
@@ -1045,10 +1045,10 @@
 group:World
 
-prop:
+property:
 id:repro_time
 name:Time before reproduction
 type:d 0 10000
 
-prop:
+property:
 id:creath
 name:Creation height
@@ -1068,5 +1068,5 @@
 flags:32
 
-prop:
+property:
 id:autorestart
 name:Restart after extinction
@@ -1089,5 +1089,5 @@
 flags:16
 
-prop:
+property:
 id:logging
 name:Log statistics to file
Index: /experiments/frams/foraminifera/data/scripts/foraminifera.inc
===================================================================
--- /experiments/frams/foraminifera/data/scripts/foraminifera.inc	(revision 485)
+++ /experiments/frams/foraminifera/data/scripts/foraminifera.inc	(revision 486)
@@ -74,7 +74,7 @@
 	var number = 1;
 	var result = parent_energy;
-	while ((result-ExpParams.divisionCost) >= energy0)
-	{
-		result = (result-ExpParams.divisionCost)/2;
+	while ((result-ExpProperties.divisionCost) >= energy0)
+	{
+		result = (result-ExpProperties.divisionCost)/2;
 		number *= 2; 
 	}
@@ -100,5 +100,5 @@
 		var offspring2 = gametsDivision(parent2.energy,getProperty(1,"energies0"));
 		energy0 = (offspring1->energy+offspring2->energy); 
-		number = ExpParams.gametSuccessRate*(offspring1->number+offspring2->number)/2;
+		number = ExpProperties.gametSuccessRate*(offspring1->number+offspring2->number)/2;
 		new_genes = [parent.data->genes, parent2.data->genes];
 		gen = 1 - parent.data->lifeparams->gen;
@@ -124,5 +124,5 @@
 		var crossed = 0;
 		//crossover
-		if (Math.rnd01 < ExpParams.crossprob)
+		if (Math.rnd01 < ExpProperties.crossprob)
 		{
 			crossover(parent, "min_repro_energies");
@@ -154,5 +154,5 @@
    			if (pop[i].data->lifeparams->reproduce == 1 && pop[i].data->lifeparams->species == species) 
    			{ 
-				if ((pop[i].data->lifeparams->gen==1) || ((pop[i].data->lifeparams->gen==0) && ExpParams.stress == 0))
+				if ((pop[i].data->lifeparams->gen==1) || ((pop[i].data->lifeparams->gen==0) && ExpProperties.stress == 0))
 				{
 					continue;
@@ -171,5 +171,5 @@
 					if (parent1.data->lifeparams->division_time == -1 && parent2.data->lifeparams->division_time == -1)
 					{
-						var time = int(ExpParams.gametoPeriod/ExpParams.secPerStep);
+						var time = int(ExpProperties.gametoPeriod/ExpProperties.secPerStep);
 						parent1.data->lifeparams->division_time = time;
 						parent2.data->lifeparams->division_time = time;
@@ -206,5 +206,5 @@
 	}
 
-	else if (ExpParams.stress == 0)
+	else if (ExpProperties.stress == 0)
 	{
 		reproduce_haploid(cr, null, 1);
@@ -256,5 +256,5 @@
 	{
 		//reproduce with probability repro_prob
-		if (Math.rnd01 <= ExpParams.repro_prob) //TODO env trigger
+		if (Math.rnd01 <= ExpProperties.repro_prob) //TODO env trigger
 		{
 			reproduced = readyToRepro(cr);
Index: /experiments/frams/foraminifera/data/scripts/foraminifera.show
===================================================================
--- /experiments/frams/foraminifera/data/scripts/foraminifera.show	(revision 485)
+++ /experiments/frams/foraminifera/data/scripts/foraminifera.show	(revision 486)
@@ -24,5 +24,5 @@
 	TrackingCam.cam_h = 15; //more side view
 	Params = { "feedrate" : [200,100,50], "feedtrans" : [0.05,0.125,0.25],"energy_nut" :[0.5,1.5,3.0], "stress" : [0,1], "visualize" : [0,1]};
-	ShowParams.visualize=1;
+	ShowProperties.visualize=1;
 }
 
@@ -31,5 +31,5 @@
 	//just a draft, this function and all constants in expdef need serious review
 	var localDriveMicronsPerStep=framsToMicrons(getMovePerStep());
-	var foramSpeedMmPerSec=ExpParams.foramSpeedMmPerMin/60;
+	var foramSpeedMmPerSec=ExpProperties.foramSpeedMmPerMin/60;
 	var localDriveMmPerStep=localDriveMicronsPerStep/1000;
 	var localDriveMmPerSec=localDriveMmPerStep*Simulator.simspeed;
@@ -54,28 +54,28 @@
 function setShowParam(param_id)
 {
-	ExpParams.[param_id] = Params[param_id][ShowParams.[param_id]];
+	ExpProperties.[param_id] = Params[param_id][ShowProperties.[param_id]];
 }
 
-function ShowParams_feedrate_set()
+function ShowProperties_feedrate_set()
 {
 	setShowParam("feedrate");
 }
 
-function ShowParams_feedtrans_set()
+function ShowProperties_feedtrans_set()
 {
 	setShowParam("feedtrans");
 }
 
-function ShowParams_energy_nut_set()
+function ShowProperties_energy_nut_set()
 {
 	setShowParam("energy_nut");
 }
 
-function ShowParams_stress_set()
+function ShowProperties_stress_set()
 {
 	setShowParam("stress");
 }
 
-function ShowParams_visualize_set()
+function ShowProperties_visualize_set()
 {
 	setShowParam("visualize");
@@ -84,25 +84,25 @@
 ~
 
-prop:
+property:
 id:feedrate
 name:Feeding rate
 type:d 0 2 1 ~Low~Medium~High
 
-prop:
+property:
 id:feedtrans
 name:Energy transfer
 type:d 0 2 1 ~0.05~0.125~0.25
 
-prop:
+property:
 id:energy_nut
 name:Nutrient energy
 type:d 0 2 1 ~0.5~1.5~3
 
-prop:
+property:
 id:stress
 name:Stress 
 type:d 0 1 1
 
-prop:
+property:
 id:visualize
 name:Enhance visualization
