diff --git a/Arctic_Nigthmare/src/arctic_nightmare/Field.java b/Arctic_Nigthmare/src/arctic_nightmare/Field.java
index a4cc068f28d71ea9200c2e957bf5c761871e9786..2475533f35a1f31d450b9683d46f3fb86ed7dcd9 100644
--- a/Arctic_Nigthmare/src/arctic_nightmare/Field.java
+++ b/Arctic_Nigthmare/src/arctic_nightmare/Field.java
@@ -29,7 +29,7 @@ public abstract class Field {
         neighbors = new ArrayList<Field>();       
     }
 
-    //Teszthez
+    //Teszthez: a Field minden szomszédját a kapott Field-re állítja az egyszerűség kedvéért. Nem valós funkció.
     public void setAllNeighbor(Field field)
     {
         Direction dirs[] = Direction.values();
@@ -38,6 +38,7 @@ public abstract class Field {
         }
     }
     
+    //Adott irányban lévő szomszédnak állítja be a kapott Fieldet
     public void setNeighbor(Field field, Direction direction)
     {
     	int idx = direction.ordinal();
@@ -46,16 +47,18 @@ public abstract class Field {
     
     public abstract void accept(Person p);
     
+    //A Fieldet érő hóvihar hatását közvetíti a rajta állók felé
     public void blizzard(int quant){
     	Logger.LogAndIncreaseTabs("Field blizzard");
     	this.snow += quant;
     	Logger.Log("Van iglu a mezőn?(0 = N, 1 = I)", false);
-    	if(Logger.getNumericInput(0, 1) == 0) {
+    	hasIgloo = Logger.getNumericInput(0, 1) == 1 ? true : false;
+    	if(!hasIgloo) {
     		for(Person p : persons)
     			p.hitByBlizzard();
     	}
     	else
-    		Logger.Log("Az iglu megvédte a karaktereket a vihartól", false);
+    		Logger.Log(">>Az iglu megvédte a karaktereket a vihartól.", false);
     	Logger.decreaseTabs();
     }
     
@@ -66,7 +69,7 @@ public abstract class Field {
         {
             snow -= layers;
             if (0 > snow) snow = 0;
-            Logger.Log("Letakarítva " + layers + " réteg hó. Még " + snow + " réteg van.", Logger.colors.GREEN);
+            Logger.Log(">>Letakarítva " + layers + " réteg hó. Még " + snow + " réteg van.", Logger.colors.GREEN);
             Logger.decreaseTabs();
             return true;
         }
@@ -78,8 +81,8 @@ public abstract class Field {
     	Logger.LogAndIncreaseTabs("Field emitItem");
     	if(snow ==0)
     		{
-    			this.itemPickable= true;	// ha nincs a mezőn már hó akkor "kiszabadítható" az item a jégből és láthatóvá válik
-    			Logger.Log(" item láthatóvá válik a pályán a kiásást követően");
+    			this.itemPickable= true;	// ha nincs már a mezőn hó, az item láthatóvá válik
+    			Logger.Log(">>Az item láthatóvá válik a pályán a kiásást követően");
     			Logger.decreaseTabs();
     			return true;
     		}
@@ -94,10 +97,10 @@ public abstract class Field {
         Logger.LogAndIncreaseTabs("Field getItem");
         if (snow > 0 || item == null)
         {
-            Logger.Log("Túl sok hó, vagy nincs tárgy", Logger.colors.RED);
+            Logger.Log(">>Túl sok hó, vagy nincs tárgy", Logger.colors.RED);
             return null;
         }
-        Logger.Log("Item removed", Logger.colors.GREEN);
+        Logger.Log(">>Item removed", Logger.colors.GREEN);
         Item item = this.item;
         this.item = null;
         Logger.decreaseTabs();
@@ -119,8 +122,10 @@ public abstract class Field {
     }
     
     public void remove(Person p){
-    	Logger.LogAndIncreaseTabs("Field remove : " + p.getName());
-    	Logger.Log("p el lett távolítva a mezőről", false);
+    	if(persons.remove(p)) {
+    		Logger.LogAndIncreaseTabs("Field remove : " + p.getName());
+    		Logger.Log(">>" + p.getName() + " elhagyta a mezőt.", false);
+    	}
     	Logger.decreaseTabs();
     }
     
@@ -128,19 +133,23 @@ public abstract class Field {
     {
     	Logger.LogAndIncreaseTabs("Field  revealCapacity");
     	Logger.Log("Mennyi a mező kapacitása?(0 - 100 közötti érték)", false);
-    	int cap = Logger.getNumericInput(-1, 100);
-    	Logger.Log("A mező kapacitása " + cap);
+    	capacity = Logger.getNumericInput(0, 100);
         visibleCapacity = true;
+    	Logger.Log(">>A mező kapacitása láthatóvá vált: " + capacity);
         Logger.decreaseTabs();
     }
     
-    public void setIgloo(){
-    	Logger.Log("Van iglu a mezõn? (0 = I, 1 = N)", false);
-  	   	if(Logger.getNumericInput(0, 1) == 0)
-  	   		Logger.Log("Már eddig is volt iglu a mezőn: -> return false");
-  	   	else
-  	   		Logger.Log("Sikeres igluépítés! -> return true");
-    	Logger.decreaseTabs();
+    public boolean setIgloo(){
+    	Logger.Log("Van iglu a mezõn? (0 = N, 1 = 1)", false);
+  	   	if(Logger.getNumericInput(0, 1) == 1) {
+  	   		Logger.Log(">>Már eddig is volt iglu a mezőn, nem tud építkezni.");
+  	   	}
+  	   	else {
+  	   		hasIgloo = true;
+  	   		Logger.Log(">>Sikeres igluépítés!");
+  	    }
+  	   	Logger.decreaseTabs();
+  	   	return (!hasIgloo); //ha nincs iglu, engedélyezi az építést és igazzal tér vissza, ellenkező esetben hamissal.
     }
 
     //Teszteléshez szükséges függvény
@@ -149,7 +158,5 @@ public abstract class Field {
     	persons.add(p);
     	p.field = this;
     }
-    
-    public boolean hasIgloo() {return this.hasIgloo;}
 
 }
diff --git a/Arctic_Nigthmare/src/arctic_nightmare/Game.java b/Arctic_Nigthmare/src/arctic_nightmare/Game.java
index 9a396b7acdcf897c03323aabfb1898b718f620a0..cdf37b65a49eecf51fe735255778602f8ebab228 100644
--- a/Arctic_Nigthmare/src/arctic_nightmare/Game.java
+++ b/Arctic_Nigthmare/src/arctic_nightmare/Game.java
@@ -59,7 +59,7 @@ public class Game{
                             + "5: Az eszkimó letakarítja, kiássa és felveszi a kötelet\n"
                             + "6: Az eszkimó iglut épít\n"
                             + "7: A sarkkutató hóviharba kerül\n"
-                            + "8: Az eszkimó összeszereli és elsüti a jelőfényt\n"
+                            + "8: Az eszkimó összeszereli és elsüti a jelzőfényt\n"
                             + "exit");
             in = reader.readLine();
             switch (in)
@@ -122,10 +122,11 @@ public class Game{
         Field stablefield = new StableField(0, Item.nothing);
         unstablefield.setAllNeighbor(stablefield);
         stablefield.setAllNeighbor(unstablefield);
-        Explorer explorer1 = new Explorer("ex1", stablefield);
-        Explorer explorer2 = new Explorer("ex2", unstablefield);
-        unstablefield.addPerson(explorer2); //Az instabil mezőre inicializáljuk ex2-t
-        explorer1.step(Direction.RIGHT);
+        Explorer ex1 = new Explorer("ex1", stablefield);
+        Explorer ex2 = new Explorer("ex2", unstablefield);
+        stablefield.addPerson(ex1); //A stabil mezore inicializaljuk ex1-t
+        unstablefield.addPerson(ex2); //Az instabil mezore inicializaljuk ex2-t
+        ex1.step(Direction.RIGHT);
         Logger.decreaseTabs();
     }
     
@@ -135,7 +136,7 @@ public class Game{
     	Field stablefield = new StableField(0,Item.nothing);
     	unstablefield.setAllNeighbor(stablefield);
         stablefield.setAllNeighbor(unstablefield);
-    	Explorer ex1 = new Explorer("ex1",unstablefield);
+    	Explorer ex1 = new Explorer("ex1", unstablefield);
     	Explorer ex2 = new Explorer("ex2", stablefield);
     	Logger.Log("Van búvárruha a sarkkutatónál? (0 = nem, 1 = igen)", false);
     	if(Logger.getNumericInput(0,1)==1) ex1.addItem(Item.divingSuit);
diff --git a/Arctic_Nigthmare/src/arctic_nightmare/Person.java b/Arctic_Nigthmare/src/arctic_nightmare/Person.java
index 84b429850545fdf46b04aa84f1b51b6bb13e85a3..79a0a0a6deab068ffef0365a0aafd01da6118427 100644
--- a/Arctic_Nigthmare/src/arctic_nightmare/Person.java
+++ b/Arctic_Nigthmare/src/arctic_nightmare/Person.java
@@ -18,6 +18,7 @@ public class Person {
     {
         items = new Vector<>();
         this.field = field;
+        field.addPerson(this);
         this.name = name;
         work = 4;
     }
@@ -51,18 +52,17 @@ public class Person {
     		game.win();
     	}
     	else
-    		Logger.Log("Nincs meg minden darab", false);
+    		Logger.Log(">> Nincs meg minden darab", false);
     	Logger.decreaseTabs();
     }
     
     public void die()
     {
         Logger.LogAndIncreaseTabs("Person(" + name + ") die", Logger.colors.RED);
-        Logger.Log("Person (" + name +") died.", false);
         Logger.decreaseTabs();
     }
     
-public void dig(){
+    public void dig(){
     	Logger.LogAndIncreaseTabs("Person(" + name + ") dig");
     	if(this.field.emitItem()) work--;				
     	Logger.decreaseTabs();
@@ -72,17 +72,23 @@ public void dig(){
     public void fall()
     {
         Logger.LogAndIncreaseTabs("Person(" + name + ") fall"); //teszthez
-        if(this.hasItem(Item.divingSuit)) {
-        	Logger.Log(this.getName() + "-nak van búvárruhája, túléli", false);        
+        if(items.contains(Item.divingSuit)) {
+        	Logger.Log(">>" + this.getName() + "-nek van búvárruhája, túléli", false);        
         	step(Direction.RIGHT);
         }
         else {
-        	Logger.Log(this.getName() + "-nak nincs búvárruhája, segítők keresése", false);
+        	Logger.Log(">>" + this.getName() + "-nek nincs búvárruhája, segítők keresése", false);
         	ArrayList<Person> potentialhelpers = findHelpers();
-            if(!potentialhelpers.isEmpty()) {
-            	for (Person person : potentialhelpers)
-                    if(!person.pullOut(this))
-                    	die();
+            boolean saved = false;
+        	if(!potentialhelpers.isEmpty()) {
+            	for (Person person : potentialhelpers) {
+                    saved = person.pullOut(this);
+                    if(saved) break;
+            	}
+            	if(!saved) {
+            		Logger.Log(">> " + name +"-t egyik szomszédja sem tudta kimenteni.", false);
+            		die();
+            	}
             }
             else die();
         }
@@ -119,10 +125,10 @@ public void dig(){
     	Direction dirs[] = Direction.values(); 
     	for(Direction dir: dirs) {		//iterálás az összes irányt tartalmazó tömbön
     			Field neighbor = field.getNeighbor(dir); //elkérjük a saját fieldtől az adott irányban lévő szomszédot
-    			
     			potentialhelpers.addAll(neighbor.getPersons());
     	}
     	Logger.decreaseTabs();
+    	if(potentialhelpers.isEmpty()) Logger.Log(">>" + name + " nem talált segítőket.", false);
     	return potentialhelpers;
     }
     
@@ -136,20 +142,22 @@ public void dig(){
     		{
     			if(this.bodyTemp < 4) {	
     				this.bodyTemp++; 			// ha élelmet talált a person azt nem tárolja el, hanem megeszi és növeli vele a bodyTempjét
-    				Logger.Log(" élelem efogyasztása és bodTemp növelése");
+    				Logger.Log(">> Élelem efogyasztása és bodyTemp növelése", false);
     				}
-    			else Logger.Log(" A testhő maximális: 4 ");
+    			else Logger.Log(">> A testhő maximális: 4 ", false);
     		}     	
         	else
         	{
-	        	items.add(item);
-	            Logger.Log("Person(" + name + ") felvett " + item + "-t", Logger.colors.GREEN);
+	        	if(!items.contains(item)) {
+        		items.add(item);
+	            Logger.Log(">> Person(" + name + ") felvette:  " + item, false);
 	            work --;
+	        	}
         	}
         }
         else
         {
-            Logger.Log("Person(" + name + ") nem tudta felvenni a tárgyat", Logger.colors.RED);
+            Logger.Log(">> Person(" + name + ") nem tudta felvenni a tárgyat", false);
         }
         Logger.decreaseTabs();
     }
@@ -182,6 +190,7 @@ public void dig(){
         if  (neighbor != null)
         {
         	field.remove(this);
+        	field = neighbor;
             neighbor.accept(this);
             work --;
         }
@@ -196,14 +205,13 @@ public void dig(){
         Logger.decreaseTabs();
     }
 
-public void setBodyTemp(int bodyTemp) {
-    	this.bodyTemp=bodyTemp;
-    }
-
-public void addItem(Item item) {
-	Logger.LogAndIncreaseTabs("Person additem " + item);
-	if(!items.contains(item))
-		items.add(item);
-	Logger.decreaseTabs();
-}
+	public void setBodyTemp(int bodyTemp) {
+	    	this.bodyTemp=bodyTemp;
+	    }
+	
+	//Segédfüggvény a teszthez. Nem a teszteset során, hanem már korábban megszerzett tárgy hozzáadása szereplőhöz
+	public void addItem(Item item) {
+		if(!items.contains(item))
+			items.add(item);
+	}
 }
diff --git a/Arctic_Nigthmare/src/arctic_nightmare/StableField.java b/Arctic_Nigthmare/src/arctic_nightmare/StableField.java
index 5ec6d8719a0167f377b2150fe22884eb9dcc9561..b9b428edd186d8450c2c13ca76c03dde9385c042 100644
--- a/Arctic_Nigthmare/src/arctic_nightmare/StableField.java
+++ b/Arctic_Nigthmare/src/arctic_nightmare/StableField.java
@@ -17,6 +17,7 @@ public class StableField extends Field {
         Logger.LogAndIncreaseTabs("StableField accept : " + person.getName());
         person.field = this;
         persons.add(person); 
+        Logger.Log(">>"+ person.getName() +" sikeresen �tl�pett stablefield-re.", false);
         Logger.decreaseTabs();
     }
 }
diff --git a/Arctic_Nigthmare/src/arctic_nightmare/UnstableField.java b/Arctic_Nigthmare/src/arctic_nightmare/UnstableField.java
index cafa1249279625c455f1f7957e90c613f785aeb7..042a15bc633bd1c73d32aac6c68598ee10db515d 100644
--- a/Arctic_Nigthmare/src/arctic_nightmare/UnstableField.java
+++ b/Arctic_Nigthmare/src/arctic_nightmare/UnstableField.java
@@ -14,23 +14,25 @@ public class UnstableField extends Field{
     {
         Logger.LogAndIncreaseTabs("UnstableField accept : " + person.getName());
         persons.add(person);
-        Logger.Log("Mennyi a jégtábla kapacitása? (1-2)", false);
-        if (persons.size() > Logger.getNumericInput(0, 3))
+        Logger.Log("Mennyi a j�gt�bla kapacit�sa? (1-2)", false);
+        capacity = Logger.getNumericInput(0, 3);
+        if (persons.size() > capacity)
         {
             overturn();
         }
         else
-        	Logger.Log("A jégtábla nem fordult át", false);
+        	Logger.Log(">>"+ person.getName() +" sikeresen �tl�pett unstablefield-re.", false);
         Logger.decreaseTabs();
     }
     
     public void overturn()
     {
-        Logger.LogAndIncreaseTabs("UnstableField overturn.");
-        //2-es teszteset vége. Ha a kapacitást túllépik és a vízbe esnek, akkor
-        //automatikusan a következő teszteset is lefut mindkét Explorer-re segítők nélkül
-        Logger.Log("Itt ér véget a >>2.- A felfedező instabil jégmezőre lép teszteset<<\n "
-        		+ "és vízbe esés esetén kezdődik a >>3.- A felfedező vízbe esik.<<\n",false); 
+        Logger.LogAndIncreaseTabs("UnstableField overturn");
+        //2-es teszteset v�ge. Ha a kapacit�st t�ll�pik �s a v�zbe esnek, akkor
+        //automatikusan a k�vetkez� teszteset is lefut mindk�t Explorer-re seg�t�k �s b�v�rruh�k n�lk�l
+        Logger.Log(">>Ez ut�n �r v�get a >>2.- A felfedez� instabil j�gmez�re l�p teszteset<<\n" + 
+               		"�s v�zbe es�s eset�n kezd�dik a >>3.- A felfedez� v�zbe esik.<<\n" + 
+               		"A szomsz�dos mez�k�n nincs seg�t�, a kutat�knak nincs b�v�rruh�juk.",false); 
         for (Person person : persons)
         {
             person.fall();