Если вы все таки решили использовать JSON, то ниже, накидал вам код. Здесь представлена цепочка:
Отправка: Инстансы -> JSON -> Строка
Прием: Строка -> JSON -> Инстансы

Код AS3:
package {
import flash.display.Sprite;
public class Main extends Sprite {
private var myArray:Array = new Array();
public function Main() {
//забиваем массив
myArray.push(new MyObject(1, [new Par(1, [0,0]), new Par(2, [0,0]), new Par(3, [0,0])]));
myArray.push(new MyObject(2, [new Par(1, [0,0]), new Par(2, [0,0]), new Par(3, [0,0])]));
var serializer:Serializer = new Serializer();
//получаем строку для отправки
var sendData:String = serializer.serialize(myArray);
//получаем из строки Object
var obj:Object = serializer.unserialize(sendData);
//обнуляем наши объекты
myArray = new Array();
//парсим Object
var i:uint = 1;
var id:uint = 1;
while (true) {
if (obj.hasOwnProperty("object" + id)) {
i = 1;
var list:Array = new Array();
while (true) {
if (obj["object" + id].hasOwnProperty("par" + i)) {
list.push(new Par(i, obj["object" + id]["par" + i].split("")));
i++
} else {
id++;
break;
}
}
myArray.push(new MyObject(id, list));
} else {
break;
}
}
}
}
}
Сериализатор:

Код AS3:
package {
import com.adobe.serialization.json.*;
public class Serializer {
public function Serializer() {
}
public function serialize (list:Array):String {
var obj:Object = new Object();
var json:JSONEncoder;
for (var i:uint = 0; i < list.length; i++) {
var myObject:MyObject = list[i] as MyObject;
obj[myObject.getName()] = myObject.getObject();
}
json = new JSONEncoder(obj);
return json.getString();
}
public function unserialize (str:String):Object {
var obj:JSONDecoder = new JSONDecoder(str, false);
return obj.getValue();
}
}
}

Код AS3:
package {
public class MyObject {
private var id:uint;
private var list:Array;
public function MyObject(id:uint, list:Array) {
this.id = id;
this.list = list;
}
public function getName ():String {
return "object" + id;
}
public function getObject ():Object {
var obj:Object = new Object;
for (var i:uint = 0; i < list.length; i++) {
var par:Par = list[i] as Par;
obj[par.getName()] = par.getObject();
}
return obj;
}
}
}

Код AS3:
package {
public class Par {
private var id:uint;
private var data:Array;
public function Par(id:uint, data:Array) {
this.id = id;
this.data = data;
}
public function getName ():String {
return "par" + id;
}
public function getObject ():String {
return this.data.toString();
}
}
}
В идеале, лучше использовать типизированные массивы (тем более для Serializer). Так же в этом примере, в ф-циях serialize и unserialize можно использовать любой предпочитаемый вами формат обмена данными (например тот же AMF).