XASECO (TMN/TMF) v1.13

Discuss everything about Xymph's Aseco flavoured server control scripts for TM Forever / classic TMN and for TM² Canyon.

Moderators: Xymph, TM-Patrol

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

Re: XASECO (TMN/TMF) v1.13

Post by Xymph » 09 May 2011 21:54

rapy wrote:I have the same problem, not with TMX, but with remotecp4.
When I add a new map, is not displayed in the /list , but when I restart the map, the list is updated.
I replaced rasp.funcs.php, but the problem remains.
There's no way XAseco can detect any external controller changing the server's track list midway through a track. That's why the cache is also refreshed at the start of every track.
Sometimes a problem isn't technical, but lack of patience. :wink:
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

User avatar
rapy
wheelbarrow operator
wheelbarrow operator
Posts: 17
Joined: 03 Sep 2009 16:57
Owned TM-games: TMU

Re: XASECO (TMN/TMF) v1.13

Post by rapy » 10 May 2011 07:33

I'm grateful for what you do in this community, but, you have some patience in this matter, instead of giving an evasive answer, try to understand the problem.
With previous versions of the script(Xaseco), this problem does not exist.
When you add a map, with remotecp4, instantly appears in / list, but since I did update to vers. 1.13, there is this problem.
I remain at vers.1.12, where this problem does not exist.
I apologize if I'm misunderstood, I just wanted to report an error.
Thanks
Image

Assembler Maniac
Pit Crew
Pit Crew
Posts: 1493
Joined: 03 Jun 2006 13:24
Owned TM-games: TMU
Contact:

Re: XASECO (TMN/TMF) v1.13

Post by Assembler Maniac » 10 May 2011 12:49

It's not an error, really.

Xymph has created a caching system for the tracks so it doesn't have to query the server with every /list. This means that the XAseco list only gets updated at the beginning of each track.

I did think xbx had added some events so that changes to the track list could be detected by other programs though. Xymph: Know anything about this?
rapy wrote:I'm grateful for what you do in this community, but, you have some patience in this matter, instead of giving an evasive answer, try to understand the problem.
With previous versions of the script(Xaseco), this problem does not exist.
When you add a map, with remotecp4, instantly appears in / list, but since I did update to vers. 1.13, there is this problem.
I remain at vers.1.12, where this problem does not exist.
I apologize if I'm misunderstood, I just wanted to report an error.
Thanks

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

Re: XASECO (TMN/TMF) v1.13

Post by Xymph » 10 May 2011 21:02

rapy wrote:I'm grateful for what you do in this community, but, you have some patience in this matter, instead of giving an evasive answer, try to understand the problem.
I did understand the problem, my answer was explanatory (albeit too brief, as you may not be familiar with the concept of caching), rather than evasive. The very nature of a cache is that it preserves the state of something for a while, unless it expires after some time or is explicitly refreshed.
rapy wrote:With previous versions of the script(Xaseco), this problem does not exist.
It's not a problem but a feature of caches, and that feature was indeed added with this version, as described in the release notes.
Assembler Maniac wrote:This means that the XAseco list only gets updated at the beginning of each track.
It's also updated after making track list changes via the built-in XAseco commands (/add, /admin remove, etc).
Assembler Maniac wrote:I did think xbx had added some events so that changes to the track list could be detected by other programs though. Xymph: Know anything about this?
If you're thinking of recent additions, that was the VoteUpdated callback in the latest dedicated. But in looking over the callbacks list it turns out I completely forgot about the ChallengeListModified callback that has been in the dedicated since TMF, which you may also be referring to.

So, my assertion that there's no way to detect any external controller changing the server's track list midway through a track was false, and for that I apologize. :oops:

I have added a handler for that event to the cache refreshing mechanism, and it should now display a fresh /list after adding a track via RCP or somesuch. As before, the full distribution zip is updated, but you can also just download this replacement rasp.funcs.php (which also includes aseco.php, as that contained a tiny typo in the pertaining event name). Note that on classic TMN this addition is not in use, as that game doesn't have the necessary callback.
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

User avatar
rapy
wheelbarrow operator
wheelbarrow operator
Posts: 17
Joined: 03 Sep 2009 16:57
Owned TM-games: TMU

Re: XASECO (TMN/TMF) v1.13

Post by rapy » 10 May 2011 22:09

Xymph, you have my respect, is more than perfect. Now it updates the list instantly.
Thanks :1
Image

Assembler Maniac
Pit Crew
Pit Crew
Posts: 1493
Joined: 03 Jun 2006 13:24
Owned TM-games: TMU
Contact:

Re: XASECO (TMN/TMF) v1.13

Post by Assembler Maniac » 11 May 2011 05:11

Xymph wrote:
Assembler Maniac wrote:I did think xbx had added some events so that changes to the track list could be detected by other programs though. Xymph: Know anything about this?
If you're thinking of recent additions, that was the VoteUpdated callback in the latest dedicated. But in looking over the callbacks list it turns out I completely forgot about the ChallengeListModified callback that has been in the dedicated since TMF, which you may also be referring to.

So, my assertion that there's no way to detect any external controller changing the server's track list midway through a track was false, and for that I apologize. :oops:

I have added a handler for that event to the cache refreshing mechanism, and it should now display a fresh /list after adding a track via RCP or somesuch. As before, the full distribution zip is updated, but you can also just download this replacement rasp.funcs.php (which also includes aseco.php, as that contained a tiny typo in the pertaining event name). Note that on classic TMN this addition is not in use, as that game doesn't have the necessary callback.
Well done.

ChallengeListModified is indeed the event I was talking about. Didn't realize it had been around since TMF was released though, seemed more recent. Either way, good going.

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

Re: XASECO (TMN/TMF) v1.13

Post by Xymph » 11 May 2011 05:57

rapy wrote:Xymph, you have my respect, is more than perfect. Now it updates the list instantly.
You're welcome.
Assembler Maniac wrote:ChallengeListModified is indeed the event I was talking about. Didn't realize it had been around since TMF was released though, seemed more recent. Either way, good going.
Thanks. And thank you for refreshing my cache... err... memory about that callback. :) It's nice to finally put that one to good use.
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

User avatar
soehest
happy cruiser
happy cruiser
Posts: 161
Joined: 07 Jun 2007 13:52
Owned TM-games: TMU
Contact:

Re: XASECO (TMN/TMF) v1.13

Post by soehest » 18 May 2011 23:31

Hello Xymph :) My fist public post in +2 years on this forum. Must say i love what you have done with Xaseco. The last version used was 1.04, so there has been a lot of stuff happening since then. I guess we will be seeing a xmanialive release real soon ;-) Anyway i have a single odd bug, and a few requests some which may have been requested and rejected already, but there really are a lots of threads to catch up on so i'll try my luck.

/admin mergegbl does not quite work out for me. I have added the dedimania url to rasp_setting.php: $globalbl_url = 'http://www.gamers.org/tmf/dedimania_blacklist.txt';

There are no blacklist files specified in the server dedicated.cfg so i would think that the /admin mergegbl would use the default (blacklist.txt) which it uses if i blacklist a online player, which works fine.

Image

As seen not much is happening. The commands issued are: /admin listblacks - /admin mergegbl - /admin listblacks. It reads the blacklist file from dedimania, even types the count but it does not rewrite it back to blacklist.txt. Am i using the system in a not thought of way or is this some kind of bug?

One request which are cheat related. I would like to see an /admin delplayer command. On a busy server with many tracks it can be a real pain locating all the records of a cheated player. Imo if a player has cheated once it should be possible to remove the player (with records) in a single command.

One request regarding the <player_client_version></player_client_version>. I would like a notify only option so users are aware that they are using an old version (perhaps with a global announce as well) but to still enable them to play :-)

Regards
Daniel

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

Re: XASECO (TMN/TMF) v1.13

Post by Xymph » 21 May 2011 17:33

soehest wrote:Must say i love what you have done with Xaseco. The last version used was 1.04, so there has been a lot of stuff happening since then.
Thanks, and welcome back. What took you so long? :P
soehest wrote:I guess we will be seeing a xmanialive release real soon ;-)
I don't think so. And besides lack of time (as also evidenced in the delay of this reply), ManiaLive is actively maintained by its developers, so it would be kind of stupid to create a spin-off and thus cause confusion in the admin community. I only picked up Aseco/Rasp way back because it had been abandoned for TMN ESWC, and initially never planned to take XAseco where it is now, that just grew along the way. Yes, you were joking, but I want to avoid any misconceptions about my possible (non)involvement with ManiaLive anyway. :)
soehest wrote:/admin mergegbl does not quite work out for me. I have added the dedimania url to rasp_setting.php: $globalbl_url = 'http://www.gamers.org/tmf/dedimania_blacklist.txt';

There are no blacklist files specified in the server dedicated.cfg so i would think that the /admin mergegbl would use the default (blacklist.txt) which it uses if i blacklist a online player, which works fine.

As seen not much is happening. The commands issued are: /admin listblacks - /admin mergegbl - /admin listblacks. It reads the blacklist file from dedimania, even types the count but it does not rewrite it back to blacklist.txt. Am i using the system in a not thought of way or is this some kind of bug?
I had to dig quite a bit before discovering the cause of this problem. It's not so much a bug as an unforeseen consequence (hi G-man :D ) of how big the global blacklist has become. Basically, when a server's blacklist is (nearly) empty, the BlackList methods for all the logins in the global list are all queued in a very big low-level multiquery to the dedicated. That becomes bigger than 512 KB and thus the dedicated chokes on it.

The low-level GbxRemote.{inc,bem}.php modules that handle this have a mechanism to split up such big multiqueries, but that isn't used in this case. There are two possible solutions, which I'll need to think through.
soehest wrote:One request which are cheat related. I would like to see an /admin delplayer command. On a busy server with many tracks it can be a real pain locating all the records of a cheated player. Imo if a player has cheated once it should be possible to remove the player (with records) in a single command.
That is intentionally not built into XAseco, because (1) such extensive database management doesn't really belong in the system, and (2) deleting a player who has lots of records would stall all other processing XAseco does during races, which is not desirable for an interactive management system.

You can use an external program such as the Nouse web tools for this.
soehest wrote:One request regarding the <player_client_version></player_client_version>. I would like a notify only option so users are aware that they are using an old version (perhaps with a global announce as well) but to still enable them to play
I'm afraid I don't see the need for this. If you don't want version checks, don't use the option.
Alternatively, set it to a really old version larger than 2.11.11, then it shouldn't affect anyone except those that really need to upgrade, as that version is commonly used for cheating. And there's no excuse for players not to upgrade, the many patches have been available for ages and even Steam is just one revision behind the curve.
XAseco has a lot of configuration options, but IMO this would be one option too many. :)
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

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

Re: XASECO (TMN/TMF) v1.13

Post by Xymph » 21 May 2011 21:49

Xymph wrote:
soehest wrote:/admin mergegbl does not quite work out for me. I have added the dedimania url to rasp_setting.php: $globalbl_url = 'http://www.gamers.org/tmf/dedimania_blacklist.txt';

There are no blacklist files specified in the server dedicated.cfg so i would think that the /admin mergegbl would use the default (blacklist.txt) which it uses if i blacklist a online player, which works fine.

As seen not much is happening. The commands issued are: /admin listblacks - /admin mergegbl - /admin listblacks. It reads the blacklist file from dedimania, even types the count but it does not rewrite it back to blacklist.txt. Am i using the system in a not thought of way or is this some kind of bug?
I had to dig quite a bit before discovering the cause of this problem. It's not so much a bug as an unforeseen consequence (hi G-man :D ) of how big the global blacklist has become. Basically, when a server's blacklist is (nearly) empty, the BlackList methods for all the logins in the global list are all queued in a very big low-level multiquery to the dedicated. That becomes bigger than 512 KB and thus the dedicated chokes on it.

The low-level GbxRemote.{inc,bem}.php modules that handle this have a mechanism to split up such big multiqueries, but that isn't used in this case. There are two possible solutions, which I'll need to think through.
Ok, I've figured out a solution for XAseco, which will be in the next release.

Meanwhile, to get a freshly installed TMF dedicated/XAseco loaded correctly with the global blacklist, specify the URL also in <blacklist_url> in dedicated_cfg.txt and restart it. Then the dedicated will load the initial bulk list, and as before XAseco will handle the incremental updates every time you login as MasterAdmin.
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

spyke
cyclist
cyclist
Posts: 48
Joined: 11 Mar 2011 16:41
Owned TM-games: TMU

Re: XASECO (TMN/TMF) v1.13

Post by spyke » 24 May 2011 18:48

hi,
I do not know if it's normal, but the plugin donate indicates that it's the server that is made a donation and not the player.
line 150 :

Code: Select all

if ($coppers >= $publicappr) {
					$message = formatText($aseco->getChatMessage('THANKS_ALL'),
					                      $aseco->server->name, $coppers, $nickname);
may be it could be :

Code: Select all

if ($coppers >= $publicappr) {
					$message = formatText($aseco->getChatMessage('THANKS_ALL'), 
											$nickname, $coppers);
i don't know....

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

Re: XASECO (TMN/TMF) v1.13

Post by Xymph » 24 May 2011 18:52

spyke wrote:I do not know if it's normal, but the plugin donate indicates that it's the server that is made a donation and not the player.
[...]
i don't know....
Nope, you have to look at the message (<thanks_all> in config.xml) to see which parameter goes where. The code is correct.
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

spyke
cyclist
cyclist
Posts: 48
Joined: 11 Mar 2011 16:41
Owned TM-games: TMU

Re: XASECO (TMN/TMF) v1.13

Post by spyke » 24 May 2011 20:54

you are right. this was the wrong version of config.xml.

thanks

Mario92
pedestrian
pedestrian
Posts: 9
Joined: 10 Jul 2009 16:03
Owned TM-games: TMNF

Re: XASECO (TMN/TMF) v1.13

Post by Mario92 » 25 May 2011 11:41

Hi!

I'm having trouble establishing xaseco.

My plugins load and it's fine but next line says this:

Code: Select all

[XASECO Fatal Error] Connection could not be established ! on line 711 in file C:\Program Files\xampp\xaseco\xaseco\aseco.php
How to solve this? Thank you in advance.

User avatar
L3cKy
smooth traffic navigator
smooth traffic navigator
Posts: 219
Joined: 05 Sep 2007 13:55
Owned TM-games: TMUF
Location: Berlin
Contact:

Re: XASECO (TMN/TMF) v1.13

Post by L3cKy » 25 May 2011 13:07

This means that xaseco cannot establish the connection to the Dedicated Server.
Try to look in the config.xml if you set all right.

Post Reply