Luigi Auriemma

aluigi.org (ARCHIVE-ONLY FORUM!)
It is currently 19 Jul 2012 13:31

All times are UTC [ DST ]





Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 13 posts ] 
Author Message
 Post subject: gslist GUI
PostPosted: 02 Jul 2008 13:54 

Joined: 02 Jul 2008 13:20
Posts: 6
Hello aluigi and all,

First off, thanks for all your wonderful tools, great research and hard work.

Next up, i would like to announce my plan on creating a gui (frontend) for the gslist commandline tool.

Actually i already started, but the following announcement discouraged me a bit:
/gslist-0-8-4-t242.html
(the part about future development, obviously)

The plan is to implement the frontend in .net/mono and Gtk#, to support multiple platforms, and release the source under whichever opensource license would be appropriate.

A first, very early, screenshot can be seen here:
http://img71.imageshack.us/img71/6720/pre001oh9.png
No real functionality has been implemented as of yet.

Suggestion, criticism and general feedback would be much appreciated.


Top
 Profile  
 
 
 Post subject:
PostPosted: 02 Jul 2008 14:33 

Joined: 13 Aug 2007 21:44
Posts: 4068
Location: http://aluigi.org
a front-end for gslist is an excellent idea, and if I'm not in error you are writing it in GTK, right?

About future development of gslist, naturally I will continue it (the next step I have in mind is implementing the repinging of the servers and the automatic usage of the gsnatneg function) but at the same time the code has becoming a bit too complex for making big changes.
But sincerely I don't see big changes to do to the code since, as far as I know, the tool has already everything so now it's just a matter of bugfixes (like in version 0.8.4e) and micro enhancements


Top
 Profile  
 
 Post subject:
PostPosted: 02 Jul 2008 16:19 

Joined: 02 Jul 2008 13:20
Posts: 6
aluigi wrote:
a front-end for gslist is an excellent idea, and if I'm not in error you are writing it in GTK, right?

Yes, that would be the Gtk bindings for C#
aluigi wrote:
But sincerely I don't see big changes to do to the code since, as far as I know, the tool has already everything so now it's just a matter of bugfixes (like in version 0.8.4e) and micro enhancements

Oh, i'm just glad to hear you aren't abandoning it altogether, that was the impression i got.

Keep in mind that this is my first project using C#, and my first encounter with Gtk, so i am learning as i go :)


Top
 Profile  
 
 Post subject:
PostPosted: 02 Jul 2008 16:42 

Joined: 13 Aug 2007 21:44
Posts: 4068
Location: http://aluigi.org
good, I have worked with GTK in the past so if you have doubts I'm here


Top
 Profile  
 
 Post subject:
PostPosted: 02 Jul 2008 23:03 

Joined: 02 Jul 2008 13:20
Posts: 6
Hmm, having troubles parsing the output of -Q 1 (quake3) for Urban Terror (-f "(gametype = 'q3ut4')" queries:

Player data is visualized as follows (example):
Code:
extra_data\614 50 civil/0 168 CastlesMadeJUMP-J/m//0 69 [LE]HooSYA_DaddY[AF]/0 150 kukRAbAzZa*../70 150 Reflectyca/10 30 N00b|kolton122/


Playernames containing slashes "/" (such as CastlesMadeJUMP-J/m/ above), makes it hard (but not impossible i guess) to extract the data, since that character is also used to separate the players in the list. Singlequotes are also missing from the playernames (as seen when doing -d 1 query, the returned name is actually "CastlesMadeJUMP-J/'m/'")

If i use -d 1 queries on individual servers, the playerlist is presented in a much more parseable way, but i was hoping to avoid that, since the superquery is otherwise... well.. super ;-)


Top
 Profile  
 
 Post subject:
PostPosted: 03 Jul 2008 11:15 

Joined: 13 Aug 2007 21:44
Posts: 4068
Location: http://aluigi.org
try to substituite the following code in multi_query.h at line 270:
Code:
                for(tmp = data; *tmp; tmp++) {
                    if(*tmp == '\n') *tmp = '/';
                }

with:
Code:
                for(tmp = data; *tmp; tmp++) {
                    if(*tmp == '/') *tmp = '|';
                    if(*tmp == '\n') *tmp = '/';
                }

should fix the problem


Top
 Profile  
 
 Post subject:
PostPosted: 03 Jul 2008 16:59 

Joined: 02 Jul 2008 13:20
Posts: 6
I thought about doing something like that, but i see 2 problems:

1. Players with an actual "|" would be misrepresented in my frontend (when "|" will be changed to "/")
2. It would break compatibility with official gslist release, and since i'm only creating a simple frontend, that would probably be bad.

I'll look into the multi_query code, to see if i get some ideas though :-)


Top
 Profile  
 
 Post subject:
PostPosted: 03 Jul 2008 17:19 

Joined: 13 Aug 2007 21:44
Posts: 4068
Location: http://aluigi.org
oh no no don't worry, the fix will be added to the next version of gslist, I'm the first to hate forked projects 8-)

I have used the '|' char in my example since should be enough good, otherwise an alternative could be the '_' char or a dot or any other which could be better.


Top
 Profile  
 
 Post subject:
PostPosted: 03 Jul 2008 18:54 

Joined: 02 Jul 2008 13:20
Posts: 6
I see.
In that case, i'd rather see the delimiter being changed, but that would break backwards compatibility in some ways i guess :-)
Either that, or enclose each extra_data chunk in quotes. But i guess data_cleaner wouldn't be too happy about that (which btw also explains the missing single quotes in the name)

When-/whatever you decide, would you be kind enough to leave a note?


Top
 Profile  
 
 Post subject:
PostPosted: 03 Jul 2008 21:00 

Joined: 13 Aug 2007 21:44
Posts: 4068
Location: http://aluigi.org
my decision is to use the pipe or the underscore instead of the slash since I can't add additional chars in the string, I can only replace them.
Anyway doesn't seem a so big trouble the fact that some chars are filtered, probably I can remove some of the chars currently filtered by data_cleaner (those with the "html/SQL injection" comment) since they were added only for the security of the SQL function which is then handled by another specific function used only for SQL.


Top
 Profile  
 
 Post subject:
PostPosted: 10 Jul 2008 23:38 

Joined: 13 Aug 2007 21:44
Posts: 4068
Location: http://aluigi.org
just released gslist 0.8.5 which substituites the slash with the pipe.
some chars which were previoulsy filtered by data_cleaner now are no longer


Top
 Profile  
 
 Post subject:
PostPosted: 11 Jul 2008 18:28 

Joined: 02 Jul 2008 13:20
Posts: 6
aluigi wrote:
just released gslist 0.8.5 which substituites the slash with the pipe.
some chars which were previoulsy filtered by data_cleaner now are no longer


Great, thanks for the heads up.
There's a little quirk though :~}, since you cleaned up data_cleaner, the playernames are now (duoble)-quoted, and as such, technically, the replace of '/' is no longer necessary ;-)


Top
 Profile  
 
 Post subject:
PostPosted: 12 Jul 2008 14:40 

Joined: 13 Aug 2007 21:44
Posts: 4068
Location: http://aluigi.org
unfortunately not all the games use " to delimit names


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 13 posts ] 

All times are UTC [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
cron