The project is a bit complex as ideea but not too hard to complete.
The ideea is this. I need a website, a portal about counter strike version 1.6.
The portal will have a list of counter strike servers, both steam or no-steam.
Visitors are able to add this counter strike servers (Server name, IP, Port ... mandatory).
I don't need the design of the websiste, i'm only interested in the php code and mysql tables.
What i need the website to do:
1. The website will have 2 parts
a. Live status of the server (what map is playing, what players are online on the server, score of players and so on ... I CAN PROVIDE THIS SCRIPT IN 2 VERSIONS).
b. This is of most importance -
Let's say I have 400 servers added in the database. I need that on every 15 minutes those servers to be queried (by the script I provide or your own version) and info added into database. Info to be added is: player names, scores and time online, what map is played and for how long. I need this to be done on every 400 (or more servers) very 15 minutes adn data stored from every server. The data can be overwritten not added. As example:
Quey server #1 first query: Players online: MOJO, JOJO and TRIX . Scores: MOJO - 12, JOJO - 11, TRIX - 7 . Time online: MOJO - 16 minutes, JOJO - 12 minutes, TRIX - 3 minutes. Map played - de_dust2
Query server #1 second query (after 15 minutes) : Players online: MOJO, JOJO, TRIX and BETTY . Scores: MOJO - 21, JOJO - 18, TRIX - 11, BETY - 2. Time on server - MOJO 31 minutes, JOJO - 21 minutes, TRIX - 17 minutes, BETTY - 6 minutes. Map Played - de_dust2
on third interogation - same players + some more, different map, different scores (scores are by map, map changes, score resets), different online times.
I need all this info added into database like this: [url removed, login to view] names.
2. player score per total ( MOJO first query - scored 12 map was de_dust2. On second query map was still de_dust2 score was 21. after second query in database as total score must be 21 not 33. On third query, map was different and score was different ( let's say de_aztec and score was 5. The total score in database for player MOJO must be 21 + 5= 26. If on fourth query map is still de_aztec and MOJO has a score of 15 total score for player MOJO must be 21 + 15 = 36. So the total score depends on map mainlly and if the player is still online. sum of score per map last time queried, if on a query the player isn't online anymore, score is saved and if on a next query the player is back online, the same process starts again until players isn't online anymore, and scores are saved again adding them to the previous total).
3. Online time of the player - last time returned on a query until player isn't found on the server anymore. Example - in 3 queries player MOJO is online: 1. 12 minutes, 2. 16 minutes 3. 40 minutes. on the fourth query the player isn't found online anymore. Time saved for player MOJO: 40 minutes. If on another day the same player is found online, this process is repeated and finally added at the previous saved time of 40 minutes and so on.
I need this as statistics for everyserver and player. I need to make a server details page, let's say SERVER#1
On this page I need the following info:
1. Live status of the server (current time) - this I can do myself.
2. History of server status - most map played, list of players that ever played on this server with their total score and total time played, a graph statistic with number of players online at a given time of the day.
Bassiclly I need the same page as here:
[url removed, login to view]:27015
Also I need a player page info:
List on what servers this player was seen on, total score on that server, total time played on that server. Last seen on date xx-yy-zzzz
Bassiclly same info as here:
[url removed, login to view]:27015/player/AntiVirus/
[url removed, login to view]
Third thing i need is this:
If someone is online on my website and click on a server, let's say SERVER#31 I need that this server to be queried every 1 or 2 minutes with live info and history info (page not refreshing, only info in database to be updated.
Also I need an so called admin area where I can set the general time difference between 1 queries on 1 server ( 15 minutes, 20 minutes, less or more) and the time interval if a player is on the server page (1-2 minutes)
I also need this option added to the general script: If a server appears to be offline on query 1 and on query 2. server is still ofline, this server to be interogated by the script not on every 15 minutes but on every 1 or 2 hours (this be settable from the admin page), and that it is hidded from the server list until is found online.
The 2 scripts I have do this:
I can add a server IP and address and they return to me the following info:
Players online, scores and time online, current map played, number of players online and max players that can be online ( next map ... maps can also be changed by player admins so this is not relevant).
Scipts can interogate both server types STEAM or NON-STEAM (type of server is set by the person who adds it in the database.
The ideea is that i need this as fast as possible (1-2 days) ... since I provide the 2 scripts (or if you can come with your own, better but that would be unnecesarry extra job) the job itself isn't that hard, i must have a good viable option and the lesser server load possible.
I uploaded 1 of the scripts I have, it only has the php scripting part, not the html part and it's too complex programing for me. I also have a complete script (arround 20 files) that is initially built for 20 games (including counter strike 1.6 steam and no steam) this script can be downloaded from here:
[url removed, login to view]
I'd prefer using the uploaded verions (madQuery) as i don't need that much files from the other one.