pelican-eggs / eggs

Service eggs for the pterodactyl panel
MIT License
2.84k stars 2.32k forks source link

[Egg Request]: SCP: CB Multiplayer Dedicated Server #1720

Open daneleo opened 2 years ago

daneleo commented 2 years ago

Does this expand an already existing service

No

Link to a game or software

https://store.steampowered.com/app/1782380/SCP_Containment_Breach_Multiplayer/

Links for the download

1801280 App ID

Links for the install docs

not alot on it apart from using the dedicated server tool in steam but it is windows only so will rewire Wine

daneleo commented 2 years ago

tried using the generic steam one and changing the docker to wine however The Game id is limited to 6 characters so i cannot save changes

QuintenQVD0 commented 2 years ago

Does this expand an already existing service

No

Link to a game or software

https://store.steampowered.com/app/1782380/SCP_Containment_Breach_Multiplayer/

Links for the download

1801280 App ID

Links for the install docs

not alot on it apart from using the dedicated server tool in steam but it is windows only so will rewire Wine

I have a running egg but do not have the time to test it can you test if for me please

{
    "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
    "meta": {
        "version": "PTDL_v2",
        "update_url": null
    },
    "exported_at": "2022-09-06T18:00:39+02:00",
    "name": "SCP: Containment Breach Multiplayer",
    "author": "josdekurk@gmail.com",
    "description": "Free multiplayer survival horror game based on stories from the SCP Foundation Wiki. The game is about a facility containing anomalous entities known as SCPs. When a catastrophic containment breach occurs at a facility, your goal is to get out of the facility. Try to escape with your friends!",
    "features": null,
    "docker_images": {
        "WINE": "ghcr.io\/parkervcp\/yolks:wine_latest"
    },
    "file_denylist": [],
    "startup": "xvfb-run --auto-servernum  wine server.exe",
    "config": {
        "files": "{\r\n    \"server.cfg\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"port\": \"port {{server.build.default.port}}\",\r\n            \"maxplayers\": \"maxplayers {{server.build.env.MAX_PLAYERS}}\",\r\n            \"description\": \"description {{server.build.env.SERVER_DESCRIPTION}}\"\r\n        }\r\n    }\r\n}",
        "startup": "{\r\n    \"done\": \"server\"\r\n}",
        "logs": "{}",
        "stop": "^C"
    },
    "scripts": {
        "installation": {
            "script": "#!\/bin\/bash\r\n# steamcmd Base Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\n    echo -e \"steam user is not set.\\n\"\r\n    echo -e \"Using anonymous user.\\n\"\r\n    STEAM_USER=anonymous\r\n    STEAM_PASS=\"\"\r\n    STEAM_AUTH=\"\"\r\nelse\r\n    echo -e \"user set to ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\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 \/mnt\/server\/steamcmd\r\nmkdir -p \/mnt\/server\/steamapps\r\ncd \/mnt\/server\/steamcmd\r\n\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +force_install_dir \/mnt\/server +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ \"${WINDOWS_INSTALL}\" == \"1\" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s \"-beta ${SRCDS_BETAID}\" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s \"-betapassword ${SRCDS_BETAPASS}\" ) ${INSTALL_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so",
            "container": "debian:bullseye-slim",
            "entrypoint": "bash"
        }
    },
    "variables": [
        {
            "name": "WINEARCH",
            "description": "WINEARCH. win32 or win64",
            "env_variable": "WINEARCH",
            "default_value": "win32",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|in:win32,win64",
            "field_type": "text"
        },
        {
            "name": "Auto update",
            "description": "This flag will auto update the server on restart. (default is 1) \r\nSet to 1 to update\r\nSet to 0 to no update",
            "env_variable": "AUTO_UPDATE",
            "default_value": "1",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|boolean",
            "field_type": "text"
        },
        {
            "name": "The game ID",
            "description": "",
            "env_variable": "SRCDS_APPID",
            "default_value": "1801280",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|max:20",
            "field_type": "text"
        },
        {
            "name": "Windows Install",
            "description": "",
            "env_variable": "WINDOWS_INSTALL",
            "default_value": "1",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|boolean",
            "field_type": "text"
        },
        {
            "name": "Maximum Players",
            "description": "The max players a server can have.\r\nBetween 2-64",
            "env_variable": "MAX_PLAYERS",
            "default_value": "16",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|integer|min:1|max:64",
            "field_type": "text"
        },
        {
            "name": "Game password",
            "description": "The password you want to set for the game\r\n\r\nleave empty for no password",
            "env_variable": "GAME_PW",
            "default_value": "",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|string|max:64",
            "field_type": "text"
        },
        {
            "name": "RCON Port",
            "description": "Required!\r\ngame port +1",
            "env_variable": "RCON_PORT",
            "default_value": "25572",
            "user_viewable": true,
            "user_editable": false,
            "rules": "required|string|max:20",
            "field_type": "text"
        },
        {
            "name": "Server description",
            "description": "The server description",
            "env_variable": "SERVER_DESCRIPTION",
            "default_value": "A pterodactyl hosted server",
            "user_viewable": true,
            "user_editable": true,
            "rules": "nullable|string|max:64",
            "field_type": "text"
        },
        {
            "name": "WINETRICKS_RUN",
            "description": "",
            "env_variable": "WINETRICKS_RUN",
            "default_value": "gecko",
            "user_viewable": false,
            "user_editable": false,
            "rules": "required|string|max:20",
            "field_type": "text"
        }
    ]
}
QuintenQVD0 commented 2 years ago

@daneleo please test and post a comment if it works / you need changes if you do noy respond this will be closed

daneleo commented 1 year ago

@QuintenQVD0 Sorry i totally forgot to reply. bit late however yes this works. thank you very much

QuintenQVD0 commented 9 months ago

They updated their server, and now it does not run anymore with wine. There is also no Linux version, so not possible.

gOOvER commented 9 months ago

if anyone needs an egg for it, contact me on discord (same name in lowercase). I have a working egg. Server works fine with wine

[19:05:37] Server version: v1.2.9.4
[19:05:37] -----------------
[19:05:37] Max players: 16
[19:05:37] Map seed: 6660666
[19:05:37] Map size: 2 chunks
[19:05:37] Hostname: SCP Server v1.2.9.4
[19:05:37] Time out time (ms): 30000
[19:05:37] Intro enabled: False
[19:05:37] Voice chat: True
[19:05:37] Voice quality: 48000 hz
[19:05:37] No cheat mode: False
[19:05:37] Jump mode: True
[19:05:37] Keep inventory: False
[19:05:37] Gravity: 0.0023
[19:05:37] Rounds limit per start: 1
[19:05:37] RCON Password: 1
[19:05:37] Breach mode: True
[19:05:37] Breach time: 10 min
[19:05:37] Breach chat: True
[19:05:37] Only deathmatch: False
[19:05:37] Using central server: True
[19:05:37] Noclip anticheat: False
[19:05:37] Camera shake on damage: True
[19:05:37] -----------------
[RCON] IP Ban list not loaded.
[RCON] Steam ban list not loaded.
[19:05:37] Creating scene...
[19:05:45] Generating a map using the seed 6660666...
04f8:fixme:d3d:state_linepattern_w Setting line patterns is not supported in OpenGL core contexts.
[19:05:52] Server successfully started.
QuintenQVD0 commented 9 months ago

if anyone needs an egg for it, contact me on discord (same name in lowercase). I have a working egg. Server works fine with wine

[19:05:37] Server version: v1.2.9.4
[19:05:37] -----------------
[19:05:37] Max players: 16
[19:05:37] Map seed: 6660666
[19:05:37] Map size: 2 chunks
[19:05:37] Hostname: SCP Server v1.2.9.4
[19:05:37] Time out time (ms): 30000
[19:05:37] Intro enabled: False
[19:05:37] Voice chat: True
[19:05:37] Voice quality: 48000 hz
[19:05:37] No cheat mode: False
[19:05:37] Jump mode: True
[19:05:37] Keep inventory: False
[19:05:37] Gravity: 0.0023
[19:05:37] Rounds limit per start: 1
[19:05:37] RCON Password: 1
[19:05:37] Breach mode: True
[19:05:37] Breach time: 10 min
[19:05:37] Breach chat: True
[19:05:37] Only deathmatch: False
[19:05:37] Using central server: True
[19:05:37] Noclip anticheat: False
[19:05:37] Camera shake on damage: True
[19:05:37] -----------------
[RCON] IP Ban list not loaded.
[RCON] Steam ban list not loaded.
[19:05:37] Creating scene...
[19:05:45] Generating a map using the seed 6660666...
04f8:fixme:d3d:state_linepattern_w Setting line patterns is not supported in OpenGL core contexts.
[19:05:52] Server successfully started.

Did start for me. But your are not able to join.

QuintenQVD0 commented 9 months ago

There main auth servers where down while testing this, this should work.

SrLicht commented 6 months ago

So

if anyone needs an egg for it, contact me on discord (same name in lowercase). I have a working egg. Server works fine with wine

[19:05:37] Server version: v1.2.9.4
[19:05:37] -----------------
[19:05:37] Max players: 16
[19:05:37] Map seed: 6660666
[19:05:37] Map size: 2 chunks
[19:05:37] Hostname: SCP Server v1.2.9.4
[19:05:37] Time out time (ms): 30000
[19:05:37] Intro enabled: False
[19:05:37] Voice chat: True
[19:05:37] Voice quality: 48000 hz
[19:05:37] No cheat mode: False
[19:05:37] Jump mode: True
[19:05:37] Keep inventory: False
[19:05:37] Gravity: 0.0023
[19:05:37] Rounds limit per start: 1
[19:05:37] RCON Password: 1
[19:05:37] Breach mode: True
[19:05:37] Breach time: 10 min
[19:05:37] Breach chat: True
[19:05:37] Only deathmatch: False
[19:05:37] Using central server: True
[19:05:37] Noclip anticheat: False
[19:05:37] Camera shake on damage: True
[19:05:37] -----------------
[RCON] IP Ban list not loaded.
[RCON] Steam ban list not loaded.
[19:05:37] Creating scene...
[19:05:45] Generating a map using the seed 6660666...
04f8:fixme:d3d:state_linepattern_w Setting line patterns is not supported in OpenGL core contexts.
[19:05:52] Server successfully started.

Can you make a PR ?