You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Test-Miroir/README.md

108 lines
5.7 KiB

# PHP Source Query
[![Build Status](https://img.shields.io/travis/xPaw/PHP-Source-Query.svg)](https://travis-ci.org/xPaw/PHP-Source-Query)
7 years ago
[![Test Coverage](https://api.codeclimate.com/v1/badges/24858a13b82113ad3092/test_coverage)](https://codeclimate.com/github/xPaw/PHP-Source-Query/test_coverage)
[![Packagist Downloads](https://img.shields.io/packagist/dt/xpaw/php-source-query-class.svg)](https://packagist.org/packages/xpaw/php-source-query-class)
[![Packagist Version](https://img.shields.io/packagist/v/xpaw/php-source-query-class.svg)](https://packagist.org/packages/xpaw/php-source-query-class)
13 years ago
11 years ago
This class was created to query game server which use the Source query protocol, this includes all source games, and all the games that implement Steamworks.
13 years ago
13 years ago
The class also allows you to query servers using RCON although this only works for half-life 1 and source engine games.
13 years ago
10 years ago
[Minecraft](http://www.minecraft.net) also uses Source RCON protocol, and this means you can use this class to send commands to your minecraft server while having engine set to Source engine.
13 years ago
9 years ago
**:warning: Please do not create issues when you are unable to retrieve information from a server, unless you can prove that there is a bug within the library.**
## Requirements
* [Modern PHP version](https://php.net/supported-versions.php) (5.5 or newer)
* 64-bit PHP or [gmp module](https://secure.php.net/manual/en/book.gmp.php)
9 years ago
* Web server must allow UDP connections
## Protocol Specifications
13 years ago
* https://developer.valvesoftware.com/wiki/Server_queries
* https://developer.valvesoftware.com/wiki/Source_RCON_Protocol
13 years ago
## Supported Games
AppID | Game | Query | RCON | Notes
----- | ---- | :---: | :--: | ----
~ | All HL1/HL2 games and mods | :white_check_mark: | :white_check_mark: |
10 | [Counter-Strike 1.6](http://store.steampowered.com/app/10/) | :white_check_mark: | :white_check_mark: |
440 | [Team Fortress 2](http://store.steampowered.com/app/440/) | :white_check_mark: | :white_check_mark: |
550 | [Left 4 Dead 2](http://store.steampowered.com/app/550/) | :white_check_mark: | :white_check_mark: |
730 | [Counter-Strike: Global Offensive](http://store.steampowered.com/app/730/) | :white_check_mark: | :white_check_mark: | `host_name_store 1; host_info_show 2; host_players_show 2`
1002 | [Rag Doll Kung Fu](http://store.steampowered.com/app/1002/) | :white_check_mark: | :white_check_mark: |
2400 | [The Ship](http://store.steampowered.com/app/2400/) | :white_check_mark: | :white_check_mark: |
4000 | [Garry's Mod](http://store.steampowered.com/app/4000/) | :white_check_mark: | :white_check_mark: |
17710 | [Nuclear Dawn](http://store.steampowered.com/app/17710/) | :white_check_mark: | :white_check_mark: |
70000 | [Dino D-Day](http://store.steampowered.com/app/70000/) | :white_check_mark: | :white_check_mark: |
107410 | [Arma 3](http://store.steampowered.com/app/107410/) | :white_check_mark: | :x: | Add +1 to the server port
115300 | [Call of Duty: Modern Warfare 3](http://store.steampowered.com/app/115300/) | :white_check_mark: | :white_check_mark: |
211820 | [Starbound](http://store.steampowered.com/app/211820/) | :white_check_mark: | :white_check_mark: | Call `SetUseOldGetChallengeMethod` method after connecting
244850 | [Space Engineers](http://store.steampowered.com/app/244850/) | :white_check_mark: | :x: | Add +1 to the server port
252490 | [Rust](http://store.steampowered.com/app/252490/) | :white_check_mark: | :x: |
282440 | [Quake Live](http://store.steampowered.com/app/282440) | :white_check_mark: | :x: | Quake Live uses the ZMQ messaging queue protocol for rcon control.
346110 | [ARK: Survival Evolved](http://store.steampowered.com/app/346110/) | :white_check_mark: | :white_check_mark: |
7 years ago
~ | [Minecraft](http://www.minecraft.net/) | :x: | :white_check_mark: |
Open a pull request if you know another game which supports Source Query and/or RCON protocols.
## How to tell if the game supports Source Query Protocol?
10 years ago
Add your server to your favourites in Steam server browser, and if Steam can display information about your server, then the protocol is supported.
13 years ago
## Functions
13 years ago
<table>
<tr>
<td>Connect( $Ip, $Port, $Timeout, $Engine )</td>
<td>Opens connection to a server</td>
</tr>
<tr>
<td>Disconnect( )</td>
<td>Closes all open connections</td>
</tr>
<tr>
<td>Ping( )</td>
<td>Ping the server to see if it exists<br><b>Warning:</b> Source engine may not answer to this</td>
</tr>
<tr>
<td>GetInfo( )</td>
<td>Returns server info in an array</td>
</tr>
<tr>
<td>GetPlayers( )</td>
<td>Returns players on the server in an array</td>
</tr>
<tr>
<td>GetRules( )</td>
<td>Returns public rules <i>(cvars)</i> in an array</td>
</tr>
<tr>
<td>SetRconPassword( $Password )</td>
<td>Sets rcon password for later use with <i>Rcon()</i></td>
</tr>
<tr>
<td>Rcon( $Command )</td>
<td>Execute rcon command on the server</td>
</tr>
</table>
13 years ago
9 years ago
Also refer to [examples folder](Examples/) to work things out.
13 years ago
## License
PHP Source Query
Copyright (C) 2012-2015 Pavel Djundik
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA