diff --git a/js/cells/DMACell.js b/js/cells/DMACell.js
index be05c6dfc59abd64db87146e21dde0e347c4d846..070de4858506198f913be2ed56715377b526bb15 100644
--- a/js/cells/DMACell.js
+++ b/js/cells/DMACell.js
@@ -223,7 +223,7 @@ define(['underscore', 'three', 'threeModel', 'lattice', 'appState', 'globals', '
     };
 
     DMACell.prototype.getMaterialID = function(){
-        return this.material.id;
+        return this.material.getID();
     };
 
     DMACell.prototype.setMaterial = function(material){
diff --git a/js/cells/supercells/GIKSuperCell.js b/js/cells/supercells/GIKSuperCell.js
index 7bb1b16003dc209f8557daae72da7f1c122fc8b1..dfda8f2845c5bf40a0c5ae3f2b9888fdfda6c3b6 100644
--- a/js/cells/supercells/GIKSuperCell.js
+++ b/js/cells/supercells/GIKSuperCell.js
@@ -29,7 +29,7 @@ define(['underscore', 'three', 'threeModel', 'lattice', 'appState', 'superCell',
     };
 
     GIKSuperCell.prototype._makeSubCellForIndex = function(json, callback){
-        json.materialID = this.material.id;
+        json.materialID = this.material.getID();
         if (lattice.get("latticeType") == "dnaBricks"){
             callback(new DNABrickCell(json, this));
             return;
diff --git a/js/materials/DMAMaterial.js b/js/materials/DMAMaterial.js
index 218bb17acb8772dc4c673c56c212ce162abbf57a..ffccacfbee621e5fab5e01510c70d33c295cf305 100644
--- a/js/materials/DMAMaterial.js
+++ b/js/materials/DMAMaterial.js
@@ -5,14 +5,14 @@
 
 define(['underscore', 'appState'], function(_, appState){
 
-    var materialNum = 0;
+    var materialNum = 1;
 
     function getNextMaterialNum(){
         return materialNum++;
     }
 
 
-    function DMAMaterial(json, id){//todo defaults
+    function DMAMaterial(json, id){
         this.id = id;
 
         var defaults = {
diff --git a/js/menus/MaterialEditorMenuView.js b/js/menus/MaterialEditorMenuView.js
index 7b08914c9ce31bf2dce20b5ba5cbdb2f97c4789a..ca635fd44749d7752eaf08a5790d793eb7bd3c2d 100644
--- a/js/menus/MaterialEditorMenuView.js
+++ b/js/menus/MaterialEditorMenuView.js
@@ -31,7 +31,7 @@ define(['jquery', 'underscore', 'menuParent', 'plist', 'materials', 'text!materi
 
         getPropertyOwner: function($target){
             if ($target.hasClass("materialEditor")) return this.material;
-            else if ($target.hasClass("materialProperties")) return this.material.properties;
+            else if ($target.hasClass("materialProperties")) return this.material.getProperties();
             return null;
         },
 
diff --git a/js/simulation/electronics/cells/eSimCell.js b/js/simulation/electronics/cells/eSimCell.js
index 18ee456332171c27c500637f1063d63a51ebe67e..1f0eef5d3055f9388d50d8b225a12f8529619d2b 100644
--- a/js/simulation/electronics/cells/eSimCell.js
+++ b/js/simulation/electronics/cells/eSimCell.js
@@ -6,7 +6,7 @@
 define(['cell', 'lattice'], function(DMACell, lattice){
 
     DMACell.prototype.isConductive = function(){
-        return this.getMaterial().properties.conductive;
+        return this.getMaterial().getProperties().conductive;
     };
 
     DMACell.prototype.setConductorGroupNum = function(num, force){