Dedicated server for TMF, version 2008-07-22

This is the place where you can find everything related to the dedicated server, control scripts and community tools.

Moderators: Pit Crew, TM-Patrol

Post Reply
xbx
Developer
Developer
Posts: 452
Joined: 12 Aug 2005 14:42
Contact:

Dedicated server for TMF, version 2008-07-22

Post by xbx » 22 Jul 2008 16:43

You can download it from
http://files2.trackmaniaforever.com/Tra ... -07-22.zip
or
http://files2.trackmaniaforever.com/Tra ... -07-22.tgz

(both contain the same files, and windows and linux executable.)

a pair of little bug fixes later (many thanks to slig!) , this one should be good!

Changes:
  • "Podium -> Synchro" transition fixed.
  • a few issues left with score sorting: the scores are sorted against score, and then bestime, and then if still equal, playerId; and also works for team mode and round arrival.

User avatar
niarfman
road tourist
road tourist
Posts: 83
Joined: 05 Jun 2008 07:57
Owned TM-games: TMUF

Re: Dedicated server for TMF, version 2008-07-22

Post by niarfman » 22 Jul 2008 16:49

Let test it ^^
Image
Admin en second des serveurs SSM° / tripatouilleur de PHP
Tous nos serveurs tournent sous GNU/Linux !

Xymph
Pit Crew
Pit Crew
Posts: 5654
Joined: 19 Aug 2007 12:58
Owned TM-games: TMN, TMU, TMF, TM²
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by Xymph » 22 Jul 2008 19:37

This version still suffers from an old bug which was reportedly fixed in the original TMU servers, but appears to have reared its ugly head (again?). I was just going to report it in the 2007-07-18 thread but you beat me to it with another release. :)
Anyway: adding a track on one path, then removing and re-adding it on another makes the server unable to load it.

Here are the direct RPC commands to reproduce the problem:

Code: Select all

$ sendcmd.php AddChallenge Challenges/TMXtmp/tinyTECH9_305395.Challenge.gbx
AddChallenge = 1
$ sendcmd.php ChooseNextChallenge Challenges/TMXtmp/tinyTECH9_305395.Challenge.gbx
ChooseNextChallenge = 1
$ sendcmd.php NextChallenge
NextChallenge = 1
$ sendcmd.php RemoveChallenge Challenges/TMXtmp/tinyTECH9_305395.Challenge.gbx
RemoveChallenge = 1
$ mv Challenges/TMXtmp/tinyTECH9_305395.Challenge.gbx Challenges/TMX/
$ sendcmd.php AddChallenge Challenges/TMX/tinyTECH9_305395.Challenge.gbx
AddChallenge = 1
$ sendcmd.php ChooseNextChallenge Challenges/TMX/tinyTECH9_305395.Challenge.gbx
ChooseNextChallenge = 1
$ sendcmd.php GetNextChallengeInfo
 *GetNextChallengeInfo :
  UId = nBqBUoeC5h4xEAOeR5clt9vcKp1
  Name = $n$s$444tiny$z$s$i$544T$644E$744C$844H9
  FileName = Challenges/TMX/tinyTECH9_305395.Challenge.gbx
  Author = ronturbo
  Environnement = Stadium
  Mood = Sunset
  BronzeTime = 55000
  SilverTime = 50000
  GoldTime = 44000
  AuthorTime = 42220
  CopperPrice = 894
  LapRace =
$ sendcmd.php NextChallenge
NextChallenge = 1
which shows this in the current ConsoleLog.txt:
[2008/07/22 21:23:40] Loading challenge tinyTECH9_305395.Challenge.gbx (nBqBUoeC5h4xEAOeR5clt9vcKp1)...
[2008/07/22 21:23:40] ...Load succeeds
[2008/07/22 21:23:41] Starting Match...
[2008/07/22 21:23:41] ...Synchronization
[2008/07/22 21:23:58] ...Play
[2008/07/22 21:24:52] ...Finish
[2008/07/22 21:25:11] ...Exit
[2008/07/22 21:25:11] Loading challenge tinyTECH9_305395.Challenge.gbx (nBqBUoeC5h4xEAOeR5clt9vcKp1)...
[2008/07/22 21:25:11] Unable to open '/home/tmf2/TMF/GameData/Tracks/Challenges/TMXtmp/tinyTECH9_305395.Challenge.gbx'
[2008/07/22 21:25:11] ...ERROR: Load failed. File not found.
[2008/07/22 21:25:11] Loading challenge Orange Bub.Challenge.Gbx (jVlPSxJs81cwBCC87PYvJJxl_Vj)...
[2008/07/22 21:25:11] ...Load succeeds
[2008/07/22 21:25:12] Starting Match...
[2008/07/22 21:25:12] ...Synchronization
[2008/07/22 21:25:36] ...Play
So GetNextChallengeInfo clearly shows it in the /TMX/ directory, but when attempting to load it, the server still uses the track's previous /TMXtmp/ directory.

Can this be fixed (again)?
Developer of XASECO for TMF/TMN ESWC & XASECO2 for TM²: see XAseco.org
Find your way around the Mania community from the TMN ESWC hub, TMF hub, TM² hub, and SM hub

Cyrlaur
Pit Crew
Pit Crew
Posts: 889
Joined: 12 Aug 2005 14:49
Owned TM-games: TMO, TMS, TMU
Manialink(s): Cyrlaur
Location: France
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by Cyrlaur » 22 Jul 2008 21:03

I know I'm a bit late as well but here I go.

If there is a warmup phase, when it ends the server send a "EndRace" callback but not the corresponding "BeginRace" one.
Then if you manually restart the warmup and then stop it, the server will send both as it should do the first time.

User avatar
hal|Sascha
Pit Crew
Pit Crew
Posts: 671
Joined: 12 Aug 2005 16:22
Owned TM-games: TMU, TMN, TMS, TMO
Location: Germany Munich
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by hal|Sascha » 23 Jul 2008 11:37

Easy question, whats the limit for sending tunneldata?

edit: something that I'm really missing is a server method like that:
Method: GetRelayLogin()
Result: Returns the server login for the relay server on a gameserver or the server login for the gameserver on a relay server

So some functionality that allows servertools to get the relationship between to servers (gameserver and relayserver). Could be also a optional result @ servermethod IsRelay() (results are: true/false, loginfromotherserver)
CPU: Intel Core 2 Duo E6600
Mainboard: Asus P5W DH Deluxe
RAM: 2 GB
Graphics: ATI Radeon X1950XTX
Audio: Soundblaster Audigy 4
Internet: ADSL 6Mbit
OS: Windows Vista Bussiness

User avatar
Phhere
sunday driver
sunday driver
Posts: 65
Joined: 16 Oct 2006 21:01
Owned TM-games: TMS, TMU
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by Phhere » 23 Jul 2008 13:36

I have a question about TunnelSendDataToXXX:
What can we do with it and how do we use it ?

Code: Select all

$data = new IXR_Base64("a");
$_Client->TunnelSendDataToLogin("Login",$data);
And i always get the error
[-1000] - bandwidth exceeded
It would be nice to get some information about it
*Sorry for my english*
webSPELL Development
Image

User avatar
hal|Sascha
Pit Crew
Pit Crew
Posts: 671
Joined: 12 Aug 2005 16:22
Owned TM-games: TMU, TMN, TMS, TMO
Location: Germany Munich
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by hal|Sascha » 23 Jul 2008 14:09

Phhere wrote:I have a question about TunnelSendDataToXXX:
What can we do with it and how do we use it ?

Code: Select all

$data = new IXR_Base64("a");
$_Client->TunnelSendDataToLogin("Login",$data);
And i always get the error
[-1000] - bandwidth exceeded
It would be nice to get some information about it
If I understand It right you can use it to communicate between the game and relay server.
Send data with TunnelSendDataToLogin('relayserverlogin', $data) and the relay should receive it with the TunnelDataReceived callback. I'm currently trying to send count of spectators and players on both server between them.
CPU: Intel Core 2 Duo E6600
Mainboard: Asus P5W DH Deluxe
RAM: 2 GB
Graphics: ATI Radeon X1950XTX
Audio: Soundblaster Audigy 4
Internet: ADSL 6Mbit
OS: Windows Vista Bussiness

User avatar
Slig
Pit Crew
Pit Crew
Posts: 2124
Joined: 05 Sep 2005 17:51
Owned TM-games: ALL
Location: TraxicoLand (Fr)
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by Slig » 23 Jul 2008 21:29

hal|Sascha wrote:Easy question, whats the limit for sending tunneldata?
really limited, but in last dedicated version it should have been increased between master and relay (but i did not test on 2008-07-22 at the moment)
edit: something that I'm really missing is a server method like that:
Method: GetRelayLogin()
Result: Returns the server login for the relay server on a gameserver or the server login for the gameserver on a relay server
that could be nice, but not the second part.

Actually you can get all servers using GetPlayerList,250,0,2 and look for servers, which have Flags = IsServer * 100000. You know that the current server is GetSystemInfo[ServerLogin], so others are master or relays. If IsRelayServer is false then the current is master and others are relays. Else there should be only one in that list : the master. You can do that at beginning, and after just look for the Flag of new "players" to add new relays in your list.

Things become complicated if the current server is a relay and have sub-relays (so is an intermedite relay), because you don't know which in the list are sub-relays and which one is the master.... btw if you receive a PlayerChat from another server, you are sure that it's the master :P
So some functionality that allows servertools to get the relationship between to servers (gameserver and relayserver). Could be also a optional result @ servermethod IsRelay() (results are: true/false, loginfromotherserver)
I agree that it would be more simple if IsRelayServer was returning the master login, in such case all except known master and current would be sub-relays ;)

xbx
Developer
Developer
Posts: 452
Joined: 12 Aug 2005 14:42
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by xbx » 25 Jul 2008 17:36

Slig wrote: Actually you can get all servers using GetPlayerList,250,0,2 and look for servers, which have Flags = IsServer * 100000. You know that the current server is GetSystemInfo[ServerLogin], so others are master or relays. If IsRelayServer is false then the current is master and others are relays. Else there should be only one in that list : the master. You can do that at beginning, and after just look for the Flag of new "players" to add new relays in your list.
Or simpler, you can get the main server login with GetMainServerPlayerInfo().

fabioscp
pedestrian
pedestrian
Posts: 5
Joined: 10 Apr 2007 20:52
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by fabioscp » 30 Jul 2008 18:18

links dont work and the last xaseco just works with this version

User avatar
lille79
Pit Crew
Pit Crew
Posts: 881
Joined: 09 Dec 2007 15:04
Owned TM-games: TMN, TMNF, TMUF
Location: Norway
Contact:

Re: Dedicated server for TMF, version 2008-07-22

Post by lille79 » 30 Jul 2008 18:39

/lille79
Old man of the Norwegian Trackmania team Super Sheep Racing
To visit my homepage/blog, and download the usbTMFserver, this is the place to go.

Post Reply