forked from aya/aya
Initial commit
This commit is contained in:
62
docs/API.md
Normal file
62
docs/API.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# Aya Masterserver
|
||||
|
||||
- Default port: 53600
|
||||
- Run command: `./masterserver.py --port 53600 --key <optional_auth_key>`
|
||||
- Communicates using `application/json`
|
||||
- Requires an `Authorization ` header if a key is provided
|
||||
- Missing or invalid key returns `401 Unauthorized`
|
||||
- Invalid request returns `400 Bad Request`
|
||||
- Responses are always JSON: `{"status": "success" or "error", ...}` (includes "error" field including message if except. occurs.)
|
||||
|
||||
## POST `/broadcast`
|
||||
|
||||
- Registers a new server
|
||||
- Required fields:
|
||||
- `server_host` (str): Hostname of the server
|
||||
- `server_name` (str): Display name of the server
|
||||
- `server_port` (int): Port number
|
||||
- `server_ip` (str): Public IP address
|
||||
- `players` (int): Current number of players
|
||||
- `max_players` (int): Maximum number of players
|
||||
- Response: `{"status": "success", "server_id": "<unique_id>"}`
|
||||
- Save the `server_id` for future pings
|
||||
|
||||
## POST/GET `/ping`
|
||||
|
||||
- Updates or verifies a server’s current status
|
||||
- Checks that the provided IP matches the registered one
|
||||
- Required fields:
|
||||
- `server_id` (str): Unique ID from /broadcast
|
||||
- `server_name` (str): Server name
|
||||
- `server_port` (int): Server port
|
||||
- `server_ip` (str): Server IP
|
||||
- `server_host` (str): Server hostname
|
||||
- `players` (int): Current players
|
||||
- `max_players` (int): Maximum players
|
||||
|
||||
## GET `/health`
|
||||
|
||||
- Returns basic health information
|
||||
- Example response: `{"timestamp": "<ISO 8601>", "server_count": <int>}`
|
||||
|
||||
## GET `/`
|
||||
|
||||
- Returns all currently registered servers
|
||||
- Example response:
|
||||
|
||||
```json
|
||||
{
|
||||
"servers": [
|
||||
{
|
||||
"id": "<string>",
|
||||
"host": "<string>",
|
||||
"name": "<string>",
|
||||
"port": <int>,
|
||||
"ip": "<string>",
|
||||
"players": <int>,
|
||||
"max_players": <int>
|
||||
}
|
||||
],
|
||||
"count": <int>
|
||||
}
|
||||
```
|
||||
22
docs/CHANGELOG.md
Normal file
22
docs/CHANGELOG.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# Aya Changelog
|
||||
|
||||
## Added
|
||||
|
||||
+ VirtualVersion support (2012-2016) to provide a near-perfect experience of older clients without their drawbacks.
|
||||
+ Stencil shadows for improved graphics.
|
||||
+ Backported numerous features from newer versions.
|
||||
+ Modern .rbxl place file support.
|
||||
+ Int64 support for handling large numbers.
|
||||
+ Chromium frames with CEF (Chromium Embedded Framework) integration.
|
||||
+ Linux support.
|
||||
+ Color3 support for advanced color handling.
|
||||
+ R15 support with clothing.
|
||||
+ Meshparts for detailed 3D models.
|
||||
+ Discord Rich Presence integration.
|
||||
+ Native voice chat support (currently in a buggy state).
|
||||
|
||||
## Changed
|
||||
|
||||
+ Migrated build system to CMake.
|
||||
+ Switched from MSVC to Clang for builds.
|
||||
+ Major cleanup of the source code, reducing compilation time to under 5 minutes (and under 30 seconds for incremental builds).
|
||||
89
docs/INSTALL.md
Normal file
89
docs/INSTALL.md
Normal file
@@ -0,0 +1,89 @@
|
||||
|
||||
Aya Installation
|
||||
================
|
||||
|
||||
0. Preface
|
||||
1. Supported platforms
|
||||
1.1. Compilers
|
||||
1.2. Platform-specific notes
|
||||
1.2.1. Windows
|
||||
1.2.2. Linux
|
||||
1.2.3. Xbox, Mac, and iOS
|
||||
1.3. Adding support for new platforms
|
||||
2. configure options
|
||||
3. Internal tools
|
||||
4. Tests
|
||||
5. Troubleshooting
|
||||
|
||||
|
||||
0. Preface
|
||||
----------
|
||||
|
||||
Aya was created with the intention of being as easy to set up and use as
|
||||
possible, using industry-standard tooling commonplace in software
|
||||
engineering. That said, Aya does not attempt to hold your hand in doing
|
||||
so and leaves much of the customization up to the end user for maximum
|
||||
versatility.
|
||||
|
||||
This guide was written based upon the assumption that the end-user has a
|
||||
grasp on how to use tools such as CMake, Clang, Python, as well as posessing
|
||||
a general knowledge on how to use C++.
|
||||
|
||||
|
||||
1. Supported platforms
|
||||
----------------------
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
|
||||
1.1. Compilers
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
1.2. Platform-specific notes
|
||||
|
||||
1.2.1. Windows
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
1.2.2. Linux
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
1.2.3. Xbox, Mac, and iOS
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
1.3. Adding support for new platforms
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
2. configure options
|
||||
--------------------
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
3. Internal tools
|
||||
-----------------
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
4. Tests
|
||||
--------
|
||||
|
||||
TODO
|
||||
|
||||
|
||||
5. Troubleshooting
|
||||
------------------
|
||||
|
||||
TODO
|
||||
|
||||
Reference in New Issue
Block a user