forked from pelican-eggs/eggs
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request pelican-eggs#2149 from Z3r0byte/yuzu-emu
add yuzu emulator dedicated multiplayer room
- Loading branch information
Showing
4 changed files
with
143 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -205,4 +205,6 @@ | |
|
||
[Xonotic](xonotic/xonotic) | ||
|
||
[YuzuEmu](yuzu-emu) | ||
|
||
[FoundryVTT](FoundryVTT) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# Yuzu Emulator Dedicated Multiplayer Room | ||
|
||
|
||
## From their [Github](https://github.com/yuzu-emu/yuzu-mainline) | ||
|
||
## Description | ||
|
||
This egg can be used to host dedicated multiplayer rooms for the Yuzu emulator. | ||
|
||
## Install notes | ||
|
||
Running this server requires almost no resources, but the installation involves compiling the binary. This is needed because yuzu unfortunately does not release their server binaries for Linux. Depending on your configuration, the installation part may take 5 minutes or more. | ||
|
||
To update, simply run the installer again. | ||
|
||
## Minimum RAM warning | ||
|
||
8 MiB is enough, but 16 MiB is recommended | ||
|
||
## Minumim Sorage warning | ||
|
||
1MiB is required, but 50 MiB is recommended to have some spare space for core dumps/logs | ||
|
||
Note: the install part requires ~ 5GiB of free space | ||
|
||
## Server Ports | ||
|
||
Ports required to run the server in a table format. | ||
|
||
| Port | default | | ||
|---------|---------| | ||
| Game | 24872 | | ||
|
||
### Notes | ||
|
||
- 24872 is the default port, but any port can be used. | ||
- Banlist is currently not supported. Upon startup, an error will be shown about the missing banlist, but the server will work regardless. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
{ | ||
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", | ||
"meta": { | ||
"version": "PTDL_v2", | ||
"update_url": null | ||
}, | ||
"exported_at": "2023-02-19T15:16:38+01:00", | ||
"name": "YuzuEmu", | ||
"author": "me@basvandenboom.dev", | ||
"description": "Egg for hosting dedicated Yuzu multiplayer rooms.", | ||
"features": null, | ||
"docker_images": { | ||
"ghcr.io\/parkervcp\/yolks:debian": "ghcr.io\/parkervcp\/yolks:debian" | ||
}, | ||
"file_denylist": [], | ||
"startup": ".\/yuzu-room --room-name \"{{ROOM_NAME}}\" --room-description \"{{ROOM_DESCRIPTION}}\" --preferred-game \"{{PREFERRED_GAME}}\" --preferred-game-id {{PREFERRED_GAME_ID}} --port {{SERVER_PORT}} --max_members {{MAX_MEMBERS}} --password \"{{PASSWORD}}\" --token \"{{YUZU_TOKEN}}\" --web-api-url \"https:\/\/api.yuzu-emu.org\/\"", | ||
"config": { | ||
"files": "{}", | ||
"startup": "{\r\n \"done\": \"Room is open\"\r\n}", | ||
"logs": "{}", | ||
"stop": "Q" | ||
}, | ||
"scripts": { | ||
"installation": { | ||
"script": "#!\/bin\/bash\r\n\r\n# Install build tools\r\necho \"deb http:\/\/deb.debian.org\/debian bullseye-backports main\" >> \/etc\/apt\/sources.list && \\\r\napt-get update && apt-get -y full-upgrade && \\\r\n apt-get install -y build-essential wget git ccache ninja-build libssl-dev pkg-config libarchive-tools \\\r\n cmake\/bullseye-backports cmake-data\/bullseye-backports\r\n\r\n\r\n# Shallow clone yuzu repository, since we delete the local copy afterwards\r\ngit clone --depth 1 -j4 --recursive --shallow-submodules https:\/\/github.com\/yuzu-emu\/yuzu-mainline.git \/mnt\/server\/yuzu-mainline\r\n\r\n# Download build tools and build\r\ngit clone --depth 1 https:\/\/github.com\/yuzu-emu\/yuzu-multiplayer-dedicated.git \/mnt\/server\/build-files\r\ncd \/mnt\/server\/yuzu-mainline && \/mnt\/server\/build-files\/.ci\/build.sh\r\n\r\n# Copy server binary to container root\r\ncp \/mnt\/server\/yuzu-mainline\/build\/bin\/yuzu-room \/mnt\/server\/yuzu-room\r\n\r\n# Delete git repo's to save disk space.\r\nrm -rf \/mnt\/server\/yuzu-mainline && rm -rf \/mnt\/server\/build-files", | ||
"container": "ghcr.io\/pterodactyl\/installers:debian", | ||
"entrypoint": "bash" | ||
} | ||
}, | ||
"variables": [ | ||
{ | ||
"name": "Room name", | ||
"description": "", | ||
"env_variable": "ROOM_NAME", | ||
"default_value": "My Yuzu Room", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|string|max:20", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Room description", | ||
"description": "", | ||
"env_variable": "ROOM_DESCRIPTION", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:60", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Preferred game", | ||
"description": "", | ||
"env_variable": "PREFERRED_GAME", | ||
"default_value": "Mario Kart 8 Deluxe", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:20", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Preferred game ID", | ||
"description": "", | ||
"env_variable": "PREFERRED_GAME_ID", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:20|alphanum", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Max members", | ||
"description": "", | ||
"env_variable": "MAX_MEMBERS", | ||
"default_value": "4", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "required|int|max:4|min:1", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Room password", | ||
"description": "Room password. Leave empty for no password.", | ||
"env_variable": "PASSWORD", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:20", | ||
"field_type": "text" | ||
}, | ||
{ | ||
"name": "Yuzu token", | ||
"description": "Yuzu account token (retrieve yours at https:\/\/profile.yuzu-emu.org\/). Necessary when creating a public (listed) room. Leave empty to create a private room.", | ||
"env_variable": "YUZU_TOKEN", | ||
"default_value": "", | ||
"user_viewable": true, | ||
"user_editable": true, | ||
"rules": "nullable|string|max:20", | ||
"field_type": "text" | ||
} | ||
] | ||
} |