Problem with Room Variables!!!

You think you've found a bug? Please report it here.

Moderators: Lapo, Bax

Post Reply
Billyboy
Posts: 8
Joined: 19 Aug 2006, 08:30

Problem with Room Variables!!!

Post 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? :evil:
User avatar
Lapo
Site Admin
Posts: 23438
Joined: 21 Mar 2005, 09:50
Location: Italy

Post by Lapo »

can you please copy/paste the XML of the request and response?
Thanks
Lapo
--
gotoAndPlay()
...addicted to flash games
drpeck
Posts: 11
Joined: 18 Apr 2007, 14:14

I have the same problem ... I think using 1.5

Post 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?
drpeck
Posts: 11
Joined: 18 Apr 2007, 14:14

v1.5.5 Fix

Post by drpeck »

I upgraded to v.1.5.5 today which appears to fix this issue.
Post Reply