Page 1 of 1
Problem with Room Variables!!!
Posted: 21 Dec 2006, 13:16
by Billyboy
sfs 1.5. Try to create room with variable:
function doStart(aGameName:String, dataOption:String, aMaxUsers:Number)
{
var roomObj = new Object()
roomObj.name = aGameName
roomObj.maxUsers = aMaxUsers
roomObj.maxSpectators = 100
roomObj.isGame = true
var variables:Array = new Array()
variables.push( {name:"dataOption", val:dataOption} )
roomObj.vars = variables
smartfox.createRoom(roomObj)
}
xmlMsg in SmartFoxClient.as have my variable, but room create with out it!!! No errors in trace.
In version 1.4 and 1.4.5 all work correct!
In what problem?

Posted: 21 Dec 2006, 17:47
by Lapo
can you please copy/paste the XML of the request and response?
Thanks
I have the same problem ... I think using 1.5
Posted: 24 Apr 2007, 10:01
by drpeck
My Code is this:
Code: Select all
public function createGame(gameName:String, gamePassword:String, complexity:Number, gameLength:Number, noOfHours:Number, startHour:Number)
{
trace("EXECUTION: GameMultiPlayer.createGame");
_administrate = true;
_complexity = complexity;
_gameLength = gameLength;
_noOfHours = noOfHours;
if(startHour != undefined)
{ _startHour = startHour; }
else
{ _startHour = Math.floor(Math.random()*24); }
var roomOb:Object = new Object();
roomOb.name = gameName;
roomOb.password = gamePassword;
roomOb.maxUsers = 50;
roomOb.maxSpectators = 1;
roomOb.isGame = true;
roomOb.uCount = false;
//room vars
var variables:Array = new Array();
variables.push({name: "Complexity", val:_complexity, priv:false, persistent:true});
variables.push({name: "GameLength", val:_gameLength, priv:false, persistent:true});
variables.push({name: "NoOfHours", val:_noOfHours, priv:false, persistent:true});
variables.push({name: "StartHour", val:_startHour, priv:false, persistent:true});
roomOb.vars = variables;
//end room vars
//plugins
var ob:Object = new Object();
ob.name = "RoomTimer";
ob.script = "EnergyTrader/RoomTimer.as";
roomOb.extension = ob;
//end plugins
_gameServer.createRoom(roomOb);
}
The output creating the room looks like this:
[Sending]: <msg t='sys'><body action='createRoom' r='1'><room upd='0' tmp='1' gam='1' spec='1' exit='1'><name><![CDATA[game1]]></name><pwd><![CDATA[asdfasdf]]></pwd><max>50</max><uCnt>0</uCnt><xt n='RoomTimer' s='EnergyTrader/RoomTimer.as' /><vars><var n='StartHour' t='n' pr='0' pe='1'><![CDATA[18]]></var><var n='NoOfHours' t='n' pr='0' pe='1'><![CDATA[15]]></var><var n='GameLength' t='n' pr='0' pe='1'><![CDATA[15]]></var><var n='Complexity' t='n' pr='0' pe='1'><![CDATA[3]]></var></vars></room></body></msg>
[Received]: <msg t="sys"><body action="roomAdd" r="0"><rm id="3" priv="1" temp="1" game="1" max="50" spec="1" limbo="0"><name>game1</name><vars /></rm></body></msg>
[Received]: <msg t="sys"><body action="joinOK" r="3"><pid id="1" /><vars /><uLs r="3"><u i="2" m="0" s="0" p="1"><n>admin4403</n><vars /></u></uLs></body></msg>
The variables aren't in the roomAdd response or viewable in the admin tool.
Any thoughts?
v1.5.5 Fix
Posted: 24 Apr 2007, 10:23
by drpeck
I upgraded to v.1.5.5 today which appears to fix this issue.