diff --git a/src/main/java/ui/GTURTLEModeling.java b/src/main/java/ui/GTURTLEModeling.java
index c4a5307bf1b0b783dc5655b65e2240cc1cbd0a68..3f91f804a973a14e20e7015fd3e6acdb31e276e3 100644
--- a/src/main/java/ui/GTURTLEModeling.java
+++ b/src/main/java/ui/GTURTLEModeling.java
@@ -139,6 +139,7 @@ import java.util.List;
 // AVATAR
 // AVATAR
 
+//Communication Pattern javaCC parser
 //Communication Pattern javaCC parser
 //import compiler.tmlCPparser.*;
 
@@ -299,8 +300,24 @@ public class GTURTLEModeling {
     }
 
     public void addSimulationTrace(SimulationTrace newTrace) {
-        TraceManager.addDev("Adding new simulation trace " + newTrace);
+        //TraceManager.addDev("Adding new simulation trace " + newTrace);
+        if (newTrace.hasFile()) {
+            // We have to remove identical traces
+            LinkedList<SimulationTrace> ll = new LinkedList<>();
+            for(SimulationTrace trace: simulationTraces) {
+                if (trace.hasFile()) {
+                    if (trace.getFullPath().compareTo(newTrace.getFullPath()) == 0) {
+                        ll.add(trace);
+                    }
+                }
+            }
+            for(SimulationTrace trace: ll) {
+                simulationTraces.remove(trace);
+            }
+        }
+
         simulationTraces.add(newTrace);
+
     }
 
     public void removeSimulationTrace(SimulationTrace oldTrace) {
diff --git a/src/main/java/ui/SimulationTrace.java b/src/main/java/ui/SimulationTrace.java
index 07c46b87bfdf82d41c98543d4a10f4238b17104d..1ec22620d2271efaabdc6fb2b9229b86983fd74a 100644
--- a/src/main/java/ui/SimulationTrace.java
+++ b/src/main/java/ui/SimulationTrace.java
@@ -47,7 +47,11 @@ public class SimulationTrace {
     public static final int TXT_DIPLO = 1;
     public static final int HTML_DIPLO = 2;
 
-	private static String[] TYPES = {"VCD DIPLO", "TXT DIPLO", "HTML DIPLO"};
+    public static final int PNG_AVATAR = 3;
+    public static final int TXT_AVATAR = 4;
+    public static final int SVG_AVATAR = 5;
+
+	private static String[] TYPES = {"VCD DIPLO", "TXT DIPLO", "HTML DIPLO", "PNG AVATAR", "TXT AVATAR", "SVG AVATAR"};
 
     public SimulationTrace(String name, int type) {
         this(name, type, null);
diff --git a/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java b/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java
index 7e38b4192f9f4ff384f876a89ed090321687bed4..3095b7498f41cd4f4b80d91b1e550cdba80acd6f 100755
--- a/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java
+++ b/src/main/java/ui/avatarinteractivesimulation/JFrameAvatarInteractiveSimulation.java
@@ -1803,10 +1803,16 @@ public class JFrameAvatarInteractiveSimulation extends JFrame implements AvatarS
             return;
         }
 
-        JOptionPane.showMessageDialog(this,
+        /*JOptionPane.showMessageDialog(this,
                 "Simulation trace was saved in " + fileName,
                 "Error",
-                JOptionPane.INFORMATION_MESSAGE);
+                JOptionPane.INFORMATION_MESSAGE);*/
+
+        String shortFileName;
+        File f = new File(fileName);
+        shortFileName = f.getName();
+        SimulationTrace st = new SimulationTrace(shortFileName, SimulationTrace.TXT_AVATAR, fileName);
+        mgui.addSimulationTrace(st);
 
         //ass.printExecutedTransactions();
     }
@@ -1853,6 +1859,12 @@ public class JFrameAvatarInteractiveSimulation extends JFrame implements AvatarS
         gen.saveInSVG(sdpanel, fileName);
         //newSVGSave(fileName);
 
+        String shortFileName;
+        File f = new File(fileName);
+        shortFileName = f.getName();
+        SimulationTrace st = new SimulationTrace(shortFileName, SimulationTrace.SVG_AVATAR, fileName);
+        mgui.addSimulationTrace(st);
+
 
         /*StringBuffer sb = new StringBuffer("<?xml version=\"1.0\" standalone=\"no\"?>\n");
         sb.append("<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n");
@@ -1950,7 +1962,10 @@ public class JFrameAvatarInteractiveSimulation extends JFrame implements AvatarS
 
         file = new File(filePath);
 
-        mgui.writeImageCapture(bi, file, true);
+        mgui.writeImageCapture(bi, file, false);
+
+        SimulationTrace st = new SimulationTrace(file.getName(), SimulationTrace.PNG_AVATAR, file.getAbsolutePath());
+        mgui.addSimulationTrace(st);
     }
 
     public void deleteAsyncMsg() {