Author Topic: Frenchie's SLAP!  (Read 8867 times)

0 Members and 1 Guest are viewing this topic.

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Frenchie's SLAP!
« on: June 23, 2008, 04:06:07 am »
Hey everyone  ;D

I'm here to introduce, Frenchie's SLAP
Soldat Lobby Avec Players

If anyone remembers my old ASE Soldat Lobby for Soldat 1.3.1 (topic http://forums.soldat.pl/index.php?topic=5217.0 site http://tumler.bendaweb.com/lobby/)
I checked the stats on that site a while ago and there were still quite a dedicated few visiting it, so I decided to re-write it for 1.4.2 and future versions of Soldat.

What?
Soldat Lobby Avec Players builds on my ASE Soldat Lobby
It is a whole new lobby which uses the ASE protocol and the Official Lobby to retrieve Servers and information about them. It lists Players currently playing in servers and allows you to search for servers and players. Server information is also included such as players, map, nextmap, time left, battleye, server uptime and more. The backend was totally re-written for speed, efficiency and features

Why?
Because the official server is great but doesn't provide much information about each server
And Game-monitor does include abit of info about each server but has a great list of errors in it's soldat stats (eg. player listing, bot count ,ranking)
This SLAP Lobby on the other hand strives to fix the problems game-monitor has and introduce alot more features than the Official Server. It also allows the Soldat Community to have it's own Server Monitor Site (frankly game-monitor doesn't give a shinyfoo about Soldat :() and allows you to help direct and better the site.


How?
The old version parsed the lobby then fetched details using only the ASE protocol. (giving around 200+ servers)
While the new Version has greatly improved on this. Not only will it fetch a list of servers from the Official Lobby and retrieve details using ASE, it now uses the new Lobby Protocol to retrieve details for the rest of the servers who haven't got ASE enabled.
It will then update servers around 10 -15mins. It will fetch a new list of servers every hour.


New?
-OLD- parsed the lobby html + Now it uses Lobby Client Protocol
-OLD- retreived only ASE stats + Retrieves ASE and Lobby stats (way more servers)
And the Whole Backend was re-written, now more efficient and has more features

Features?
-Uses ASE and Lobby Protocol to retrieve Server Details (ASE provides more details but not all servers have it enabled. Script automatically picks the best input and makes there output compatible with the other)
      This makes sure all Servers Are Listed - regardless if there not ASE enabled
-Show Map Overviews
-Allows Map Downloads
-Shows All Server Information about each Server (dedicated, map, nextmap, battleye etc.)
-Show Server Uptime
-Fixed Bot player counts. (Bots don't take up player slots, like on official lobby, game-monitor) (It's a big problem on game-monitor.com as it then gives all the bot servers the best rankings even though there empty)(Works regardless of method retrieved , ASE or Official Lobby)
-Shows Server Stat Graphs using Artichow (Artichow was chosen because the whole library is extremely small and it renders really nice graphs)

Thanks?
Christian Celler - PHP ASE Parser (fixed by ChrisGBK) (all code was extremely messy, modified/re-wrote all code by Frenchie)
Doc - PHP PMS Reader (The one and only, works a treat!)
PerroAZL - PHP Lobby Client Protocol (Works great)
Authors of Artichow - amazing PHP Graphing Library

UPDATE
Now Integrated into SoldatHQ
Now go check it out!
http://soldathq.com/servers/
Soldat Lobby Avec Players[/url]
[/size]

(uses same frontend ATM)

Upcoming Features?
-Adding statistic graphs for each server -ADDED (Graphs use Artichow)

Also Server Owners check out the stats page http://soldathq.com/slap/stats.php
Can help you find the most popular maps / gamemode (remember just because alot of servers have it, doesn't mean alot of players are on it)


Remember it's still a beta. Any improvements/ideas/feedback then post!  ;D
« Last Edit: August 23, 2008, 05:32:29 am by Frenchie »
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline xmRipper

  • Soldat Beta Team
  • Flagrunner
  • ******
  • Posts: 742
    • Personal
Re: Frenchie's SLAP!
« Reply #1 on: June 23, 2008, 05:25:17 am »
How it search for players ?
Co-Founder / CTO @ Macellan
Founder Turkish Soldat Community

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Re: Frenchie's SLAP!
« Reply #2 on: June 23, 2008, 05:47:07 am »
What do you mean?
To search for Players on SLAP, type in a name, select player from drop-down and search  ;D
----
Or if your wondering how I got all player names...
There in my database and I retrieved them from querying ASE protocol of Servers
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline xmRipper

  • Soldat Beta Team
  • Flagrunner
  • ******
  • Posts: 742
    • Personal
Re: Frenchie's SLAP!
« Reply #3 on: June 23, 2008, 05:59:47 am »
Or if your wondering how I got all player names...
There in my database and I retrieved them from querying ASE protocol of Servers
Ah ok.

Nice work.
Co-Founder / CTO @ Macellan
Founder Turkish Soldat Community

Offline Kagesha

  • Flagrunner
  • ****
  • Posts: 702
  • cunts
Re: Frenchie's SLAP!
« Reply #4 on: June 23, 2008, 06:01:49 am »
wow you don't how awesome this thing is, and love the name SLAP! this thing is so cool. Would be much better if you can put all the servers that are using the same flags at the top, so i don't have to scroll through to look for the aussie servers, just a suggestion ;). I love this *bookmarked* (y) (y) Two thumbs up!

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Re: Frenchie's SLAP!
« Reply #5 on: June 23, 2008, 06:04:26 am »
 ;D Guess What?
Click on the Flag...

You'll see :)
----
And you can also order the list by flags, just click on 'country' on the top row
(can also click on any other heading to do this aswell)
« Last Edit: June 23, 2008, 06:08:37 am by Frenchie »
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline JFK

  • Camper
  • ***
  • Posts: 255
    • My TraxInSpace Account
Re: Frenchie's SLAP!
« Reply #6 on: June 23, 2008, 06:51:40 am »
Very nice work, bookmarked this one.
If I'm not mistaken this is the first and only way to see if and where a certain player is playing atm. Unless you and that player both have something like x-fire. Also very nice info such as uptime percentage and map preview/download. It would be totally awesome if you could include some graphical stats within each server, such as uptime in the last month, or number of players visited. If you have the time and storage possibilities of course.
Thank you very much for this addition to the community.

Edit:
Upcoming Features?
-Adding statistic graphs for each server
whoops, didn't read enough... you're awesome  ;)
« Last Edit: June 23, 2008, 06:53:30 am by JFK »
Come join: EliteCTF
Listen to: My Music

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Re: Frenchie's SLAP!
« Reply #7 on: June 23, 2008, 09:21:52 pm »
Hey,
An update for everyone.
- Better Map Overviews (Faster/More efficient/More maps)

I re-wrote abit of the new PMS Parser, added colours, plus now it saves map images (Faster  ;D).
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline Jakious

  • Soldier
  • **
  • Posts: 115
Re: Frenchie's SLAP!
« Reply #8 on: June 24, 2008, 01:04:09 am »
This is awesome, I love the map renderer too :P
Saves me setting filters and stuff etc etc.
High Five :D

Offline BombSki

  • Flagrunner
  • ****
  • Posts: 927
    • Climbing-soldiers.net
Re: Frenchie's SLAP!
« Reply #9 on: June 24, 2008, 03:26:14 am »
yea, awesome stuff man. just 1 bug when i was checking on some zombie server:

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Re: Frenchie's SLAP!
« Reply #10 on: July 04, 2008, 09:00:34 pm »
@all above posters. Glad you all like it  ;D

Bombski: Yeah I have perused over SLAP closely to find any bugs and this is one I have found.
There is also a bug with the retrieval of inconsistent player/bot counts from the official lobby and ASE.
Both these bugs seem to happen to the same servers at anytime... With my guess that the server has probably has crashed.

Date Posted: June 24, 2008, 07:36:47 pm
Update: Images and Lobby index now cached on server (Faster/More Efficient)

Date Posted: June 26, 2008, 06:56:09 am
Hey, got a nice update for all of you ;D.
ADDED - Stats Graphs

I wrote the backend to it abit yesterday arvo and fixed it up this morning (changed alot of db settings I had, to make it simpler and more efficient)
ATM the stats graphs are basic (but they are small in size ++  ;D), I'm hoping to add more and have sigs for servers.
eg: eC Hexer Mod

OR

Leo's TX


Enjoy!

For server owners or those who want to know more:
Info
Basically it adds the player count and offline/online of servers every 30mins (to an hourly stats table)

-At the start of new day or mid-day, it averages play count and adds total downtimes to a daily stats database (removes over 24 hour old stats from hourly table)
-At start of new month or mid-month (works with all months eg. Feb 28days etc..), it averages play count and adds total downtimes to a monthly stats database (removes over month old stats from daily table)

The way whole database and script has been setup gives the ability of recording/displaying accurate stats while keeping size/bloat to a minimum.

The graphing library used is Artichow (amazing graphing library) - This was chosen because the library itself is extremely small and it renders the nicest graphs. (Better than graphs from jpgraph and it's a fraction of it's size!)

From the testing and troubleshooting I did on the stats script I'm happy with how it turned out ;D
But remember it's still brand new, so it might have some bugs - Report any you find :)

Suggestions/comments/ideas? Then post.
« Last Edit: August 23, 2008, 05:36:27 am by Frenchie »
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Frenchie's SLAP!
« Reply #11 on: July 04, 2008, 11:44:14 pm »
Oh, oh; suggestion!
It'd probably be better described w/ an image...

But ofc, made to look good, ordered better, and the Realistic stuff, you can filture through after you receive the lobby info for wanting to filter out realistic for example

i know the format doesn't align to your format, i just threw this together with the same colors :P


Date Posted: July 05, 2008, 12:41:01 am
Shoot! I forgot something!
The way you order the servers should be like... next to each topic (#, Name, Players, etc.) there should be a number, and an arrow up or down.. click on the topic and it will change the number to 1 (and change all other numbers), clikc again to flip arrow; and this'll change order of servers
I did this once with php so I know its possible, it just didnt look to good..

Regular expresion is a checkmark box that will filture by expression, not by exact/partial; or u can have a 3 way radio button (like the realistic thing does), and have it so u can choose if u wanna search by exact, partial, or regular expression :)

EDIT: blank anything = doesn't filter

EDIT2: Oh, and possibly ability to save (to cookies or something) previous searches / filters
« Last Edit: July 04, 2008, 11:47:02 pm by DorkeyDear »

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Re: Frenchie's SLAP!
« Reply #12 on: July 05, 2008, 12:18:50 am »
Yeah that's interesting.
Remember this index has basically not changed since 1.3.1 (before new lobby, so there is room for added features)
I like the idea of having options (don't care /ON / OFF) such as realistic and survival :)

I don't quite understand
Quote
next to each topic (#, Name, Players, etc.) there should be a number, and an arrow up or down
As you can click on column headers atm (try clicking on map on the top row for eg.)
OR
do you mean, having it so it filters the current list your looking at (as at the moment it shows all the servers regardless if you searched)

You seem to like regexp ;D
I'm thinking the best way to implement it would be to have a checkbox. If not ticked, Normal search (partial) if ticked, RegExp

And saving searches? hmm.. maybe :)
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Frenchie's SLAP!
« Reply #13 on: July 05, 2008, 12:24:45 pm »
It changes the order of the displayed stuff..
For example, lets make a table..

A 1v B 2v C 3v
1 -- 3 -- 1
2 -- 1 -- 2
3 -- 3 -- 1
4 -- 2 -- 1
5 -- 2 -- 2


Click on "A"
A 1^ B 2v C 3v
5 -- 2 -- 2
4 -- 2 -- 1
3 -- 3 -- 1
2 -- 1 -- 2
1 -- 3 -- 1


Click on "B"
A 2^ B 1v C 3v
2 -- 1 -- 2
5 -- 2 -- 2
4 -- 2 -- 1
3 -- 3 -- 1
1 -- 3 -- 1


Click on "C"
A 3^ B 2v C 1v
4 -- 2 -- 1
3 -- 3 -- 1
1 -- 3 -- 1
2 -- 1 -- 2
5 -- 2 -- 2


in php, ur this set of data; sort (i used a custom sort function) ascending for v and descending for ^; and sort from the highest number (3) first, then the lowest number (1)

Date Posted: July 05, 2008, 11:41:17 am
Suggestion:
A non-html based one, so bots dont need to parse all of that html when using this :)

Offline FliesLikeABrick

  • Administrator
  • Flamebow Warrior
  • *****
  • Posts: 6144
    • Ultimate 13 Soldat
Re: Frenchie's SLAP!
« Reply #14 on: July 05, 2008, 12:47:28 pm »
Frenchie, is there anything that you have found that can be improved or fixed in the official lobby?  I'm always open to suggestions

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Re: Frenchie's SLAP!
« Reply #15 on: July 05, 2008, 04:01:51 pm »
DorkeyDear: Thanks for explaining suggestion, might look into it. ;D

FLAB: The new lobby has been working really good (much better than when I had to parse html of the old one ;D)
But there is a bug.. Not with the lobby, But some servers eg. give back a player count of 14 from 10 max players. (basically it's not returning any bots number, and adding them to current players)
Everytime this happens it's with a server that is not ASE enabled and has a name of 'Soldat Server'.. So it's likely the game client hosting a server that screws this up.

And another thing, not a biggie. (As you already know) But the country flags are not accurate.
On my old Lobby it was missing 20+flags from each server list (and there were only about 250 servers) but now SLAP (with updated db) rarely misses any flag (out of 500+ servers).
Maybe you should update your geoip db, or use the maxmind one. ;D
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline FliesLikeABrick

  • Administrator
  • Flamebow Warrior
  • *****
  • Posts: 6144
    • Ultimate 13 Soldat
Re: Frenchie's SLAP!
« Reply #16 on: July 05, 2008, 04:20:11 pm »
if you want to pay for a good geoip database, then I'll use it... but doesn't maxmind cost money?

I use this free one, it is 95% correct.  At some point I'll have a good system for adding exceptions to it, but not until I at least get this server maintenance done next weekend.

Offline Frenchie

  • Camper
  • ***
  • Posts: 358
  • SoldatHQ
Re: Frenchie's SLAP!
« Reply #17 on: July 05, 2008, 04:29:31 pm »
I pay? No way!
I'm way too cheap. ;D

I use maxmind lite, it's free and claims 99.3% accuracy. (it does a real good job with SLAP)
Link for you: http://www.maxmind.com/app/geoip_country
Soldat Lobby Avec Players -New Release! - Updated AGAIN!


Offline FliesLikeABrick

  • Administrator
  • Flamebow Warrior
  • *****
  • Posts: 6144
    • Ultimate 13 Soldat
Re: Frenchie's SLAP!
« Reply #18 on: July 05, 2008, 05:17:22 pm »
I'll take a look at that when I can

Offline DorkeyDear

  • Veteran
  • *****
  • Posts: 1507
  • I also go by Curt or menturi
Re: Frenchie's SLAP!
« Reply #19 on: July 06, 2008, 09:28:17 pm »
Small thing, after you click "search", could you have the thing u searched for still in the box (in case u had a typo or something, and can much more ezly see what it is and to edit it) as well as the drop down menu staying on the selected thingy if possible; not high priority :)