Merge pull request #1996 from BolverBlitz/icarus-server

Add: Icarus-Dedicated-Server
This commit is contained in:
Michael (Parker) Parker 2022-12-09 12:24:15 -05:00 committed by GitHub
commit 895a2e02c6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 170 additions and 0 deletions

View File

@ -227,6 +227,7 @@ If you are reading this it looks like you are looking to add an egg to your serv
* [ReHLDS](game_eggs/steamcmd_servers/hlds_server/rehlds)
* [Holdfast: Nations At War](game_eggs/steamcmd_servers/holdfast)
* [Hurtworld](game_eggs/steamcmd_servers/hurtworld)
* [Icarus](game_eggs/steamcmd_servers/icarus)
* [Insurgency: Sandstorm](game_eggs/steamcmd_servers/insurgency_sandstorm)
* [Killing Floor 2](game_eggs/steamcmd_servers/killing_floor_2)
* [Left 4 Dead](game_eggs/steamcmd_servers/left4dead)

View File

@ -125,6 +125,7 @@
* [ReHLDS](steamcmd_servers/hlds_server/rehlds)
* [Holdfast: Nations At War](steamcmd_servers/holdfast)
* [Hurtworld](steamcmd_servers/hurtworld)
* [Icarus](steamcmd_servers/icarus)
* [Insurgency: Sandstorm](steamcmd_servers/insurgency_sandstorm)
* [Killing Floor 2](steamcmd_servers/killing_floor_2)
* [Left 4 Dead](steamcmd_servers/left4dead)

View File

@ -77,6 +77,10 @@ This is a collection of servers that use SteamCMD to install.
[Hurtworld](hurtworld)
## Icarus
* [Icarus](icarus)
## Insurgency: Sandstorm
[Insurgency: Sandstorm](insurgency_sandstorm)

View File

@ -0,0 +1,69 @@
# Icarus
***NOTE: Server version currently marked as Beta by the developers.***
___
### Authors / Contributors
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center">
<a href="https://github.com/BolverBlitz">
<img src="https://avatars.githubusercontent.com/u/35345288" width="50px;" alt=""/><br /><sub><b>BolverBlitz</b></sub>
</a>
<br />
<a href="https://github.com/BolverBlitz" title="Codes">💻</a>
<a href="https://github.com/BolverBlitz" title="Maintains">🔨</a>
</td>
</tr>
</table>
<!-- markdownlint-enable -->
<!-- prettier-ignore-end -->
___
### Game Description
Icarus is a session-based survival game for up to 8 co-op players or solo players, where most gameplay occurs during timed missions. Players accept contracts for missions on a space station orbiting the planet, and drop down to its terrain to attempt the objectives. Once a mission timer is complete, the drop-pod returns to the station. If the player fails to return in time, their workshop items are left on the surface and their progress is lost.
There is also support for an OpenWorld where without resets.
___
### Egg Capabilities
- Currently runs the Windows build of the server via Wine64.
- Auto-Updates on restart.
___
### Server Ports
- Default server ports are listed below, but all three ports can be changed freely.
- Clients connect via the server list in game.
| Port | Default | Protocol |
|---------|---------|----------|
| Game | 17777 | UDP |
| Query | 27015 | UDP |
___
### Installation/System Requirements
| | Recommended | Extra info |
|-----------|--------------|-------------|
| Processor | Recent x86/64 (AMD/Intel) processor. No 32 bit or ARM support. | Unsubstantiated reports say that RCON uses significantly more CPU when enabled, but I have not been able to replicate myself. |
| RAM | 8-16 GB |
| Storage | 14 GB (or more, depending on save size or frequency) |
___
#### Save File and Custom Settings Location
You can define a custom dir for settings by adding `-UserDir=` to the startparameter. [More Info](https://github.com/RocketWerkz/IcarusDedicatedServer/wiki/Server-Config-&-Launch-Parameters#-userdir)
#### Server Game Settings
[Server-Config & Launch-Parameters](https://github.com/RocketWerkz/IcarusDedicatedServer/wiki/Server-Config-&-Launch-Parameters)

View File

@ -0,0 +1,95 @@
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v2",
"update_url": null
},
"exported_at": "2022-12-09T16:28:51+01:00",
"name": "Icarus-Dedicated",
"author": "bolverblitz@ebg.pw",
"description": "Icarus is a survival game that with dedicated servers as a public beta",
"features": [
"steam_disk_space"
],
"docker_images": {
"Staging": "ghcr.io\/parkervcp\/yolks:wine_staging",
"Latest": "ghcr.io\/parkervcp\/yolks:wine_latest"
},
"file_denylist": [],
"startup": "wine64 .\/Icarus\/Binaries\/Win64\/IcarusServer-Win64-Shipping.exe -Log -SteamServerName=${SERVER_NAME} -PORT=\"${SERVER_PORT}\" -QueryPort=\"${QUERY_PORT}\"",
"config": {
"files": "{}",
"startup": "{\r\n \"done\": \"(Engine Initialization) Total time:\"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io\/parkervcp\/installers:debian'\r\n\r\n# Download and install SteamCMD\r\nexport HOME=\/mnt\/server\r\ncd \/tmp\r\nmkdir -p $HOME\/steamcmd $HOME\/steamapps\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C $HOME\/steamcmd\r\ncd $HOME\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\n\r\n# Install game server using SteamCMD\r\n.\/steamcmd.sh +force_install_dir $HOME +login anonymous $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update \"${SRCDS_APPID}\" validate +quit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p $HOME\/.steam\/sdk{32,64}\r\ncp -v linux32\/steamclient.so $HOME\/.steam\/sdk32\/steamclient.so\r\ncp -v linux64\/steamclient.so $HOME\/.steam\/sdk64\/steamclient.so\r\n\r\n## install end\r\necho \"-----------------------------------------\"\r\necho \"Installation completed...\"\r\necho \"-----------------------------------------\"",
"container": "ghcr.io\/pterodactyl\/installers:debian",
"entrypoint": "\/bin\/bash"
}
},
"variables": [
{
"name": "[REQUIRED] Server Query Port",
"description": "UDP port for Steam server list features.",
"env_variable": "QUERY_PORT",
"default_value": "27015",
"user_viewable": true,
"user_editable": true,
"rules": "required|integer|between:1024,65536",
"field_type": "text"
},
{
"name": "Server Name",
"description": "",
"env_variable": "SERVER_NAME",
"default_value": "IcarusEGG",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:32",
"field_type": "text"
},
{
"name": "Windows Install Flag",
"description": "Required for windows game server installs",
"env_variable": "WINDOWS_INSTALL",
"default_value": "1",
"user_viewable": false,
"user_editable": false,
"rules": "required|boolean",
"field_type": "text"
},
{
"name": "WINETRICKS_RUN",
"description": "Run installs on software that is required by the server",
"env_variable": "WINETRICKS_RUN",
"default_value": "vcrun2019",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:vcrun2019",
"field_type": "text"
},
{
"name": "SRCDS_APPID",
"description": "steam app id found here - https:\/\/developer.valvesoftware.com\/wiki\/Dedicated_Servers_List",
"env_variable": "SRCDS_APPID",
"default_value": "2089300",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|in:2089300",
"field_type": "text"
},
{
"name": "AUTO_UPDATE",
"description": "Disabling or enabling automated updates on boot",
"env_variable": "AUTO_UPDATE",
"default_value": "1",
"user_viewable": true,
"user_editable": true,
"rules": "required|boolean",
"field_type": "text"
}
]
}