pelican-eggs / eggs

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

Empyrion - Galactic Survival #487

Closed Markezzz closed 1 year ago

Markezzz commented 4 years ago

Service: Empyrion - Galactic Survival

Does this expand an already existing service: N

Link to game: http://empyriongame.com

Links for server downloads: ./steamcmd.sh +login anonymous +app_update 530870 +quit

Links for install steps/docs: https://empyrion.gamepedia.com/Dedicated_Server_Setup

Pterodactyl Egg from PHENOM: https://git.phenomic.net/PHENOM/Pterodactyl-Egg-Empyrion/src/branch/master

Empyrion-Docker from BitR: https://github.com/BitR/empyrion-docker

parkervcp commented 4 years ago

If anything @Markezzz I would tell you to ask them to PR that here. I prefer not to have a custom game specific image if I can help it.

Please reach out to the egg developer if they want to PR to the repo I will look at it.

Markezzz commented 4 years ago

I wrote Phenom in Discord. Unfortunately, I have not yet received an answer from him. I know you wrote about it with him in Discord in January. Isn't there a way that you can create a new one?

parkervcp commented 4 years ago

The work there is done. I have no reason to take someone else's work without credit.

Markezzz commented 4 years ago

The work is not fully done. I have to modify files from pterodactyl to create the docker file. i thought that pterodactyl would like to support as many games as possible to make it easy for so many people to host servers. it is frustrating for me to master the whole thing with my half knowledge. hence the request for an official egg.

PHENOMICAL commented 4 years ago

I noticed that this issue got opened here and wasn't aware of it until 2 days ago.

I could try to improve the Docker image, so that it is more compatible with more games. But currently don't have much time to work on it, since I have to work for my apprenticeship. Back then I tried using this Docker image for Empyrion, but it would just immediatly crash, even setting the xvfb variables in the entrypoint.sh script accordingly. I suspect it got something to do with the fact that my Docker image uses a Staging version of Wine (wine-staging=4.10).

Recently I tested my Docker Image against the new 1.0 beta of Wings and the panel, but it seems the rewritten Golang Docker adapter in Wings doesn't recognize locally tagged Docker images.

parkervcp commented 4 years ago

You would use ~/image:tag I believe for local. I am not sure but please don't build new egg on 1.0 betas.

fabm3n commented 4 years ago

With the latest commits to wings (the quay thing) the "bug" with the local empyrion image is fixed. (I think he never wanted to create a new egg in the beta, he just tested it on his own after i tried to use his egg in the beta and it failed to start ^^)

acl1704 commented 3 years ago

I've completed porting to wings and switching to stock pterodactyl images. Just need someone to test it as I don't own the game. https://github.com/acl1704/pterodactyl-empyrion

TASelwyn commented 3 years ago

I've completed porting to wings and switching to stock pterodactyl images. Just need someone to test it as I don't own the game. https://github.com/acl1704/pterodactyl-empyrion/tree/develop

I just imported the egg and tried installing it, doesn't even seem to wanna launch. I have the game btw.

Wannab007 commented 3 years ago

I've completed porting to wings and switching to stock pterodactyl images. Just need someone to test it as I don't own the game. https://github.com/acl1704/pterodactyl-empyrion/tree/develop

I just imported the egg and tried installing it, doesn't even seem to wanna launch. I have the game btw.

I also cannot get the server to launch and have the game. Console showing:

:/home/container$ wine ./DedicatedServer/EmpyrionDedicated.exe -batchmode -log -logFile Logs/current.log "$@" &> Logs/wine.log | tail -f Logs/current.log /entrypoint.sh: line 84: Logs/wine.log: No such file or directory tail: cannot open 'Logs/current.log' for reading: No such file or directory tail: no files remaining _XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.

Markezzz commented 3 years ago

I've completed porting to wings and switching to stock pterodactyl images. Just need someone to test it as I don't own the game. https://github.com/acl1704/pterodactyl-empyrion

I tested your egg and got the same issue with the log file on startup. So i started to edit the egg and get it to start. But it crashes in startup. I attached the log files.

Egg: https://pastebin.com/0XRLr8jt wine.log current.log

I also watched the docker file from BitR - https://github.com/BitR/empyrion-docker I don't know if it will help to watch this project.

Edit: Seems like dotnet is missing for mono.

kkoshelev commented 3 years ago

I also cannot get the server to launch and have the game. Console showing:

:/home/container$ wine ./DedicatedServer/EmpyrionDedicated.exe -batchmode -log -logFile Logs/current.log "$@" &> Logs/wine.log | tail -f Logs/current.log /entrypoint.sh: line 84: Logs/wine.log: No such file or directory tail: cannot open 'Logs/current.log' for reading: No such file or directory tail: no files remaining _XSERVTransmkdir: ERROR: euid != 0,directory /tmp/.X11-unix will not be created.

This particular error fixed by creating "logs" directory inside container, for some reason it's not created automatically. And you need to have log file created so the log will appear when server started for the very first time.

Someone please add the following to the installation script:

mkdir /mnt/server/logs
touch /mnt/server/logs/current.log

After changing that the server seems to be getting started, but logs keep getting errors, like below. There is a reference to Logs directory somewhere, the proper path should be Z:\home\container\Logs, but I couldn't find it.

UnauthorizedAccessException: Access to the path "Z:\home\Logs" is denied.
Rephot commented 3 years ago

I've been able to get this working by making some changes to acl1704's egg here https://github.com/acl1704/pterodactyl-empyrion

I've forked the repo and made my changes here: https://github.com/Rephot/pterodactyl-empyrion

Changes: Moved server files into a sub-directory since the server looks for the log files in the parent directory (hence the access denied) Added Wine DLL Overrides since I was getting an issue where the gameworks server wouldn't start Added pterodactyl variables to modify dedicated.yaml on startup

Issues: Console output is tailing a log file so server commands cannot be executed through the console, use the telnet server instead. Server need to be killed as the stop command doesn't work (because of above)

parkervcp commented 3 years ago

Issues: Console output is tailing a log file so server commands cannot be executed through the console, use the telnet server instead. Server need to be killed as the stop command doesn't work (because of above)

ARK only has an rcon console and we connect to that. Check it out to see how we use it.

If you need help you can always ask in discord.

hoechstn commented 3 years ago

@Rephot modified egg worked great! I had one issue and it was with the Game Seed. I had to change "rules": "required|numeric|between:1,7" to "rules": "required|numeric|between:1,9999999"

{
            "name": "Game Seed",
            "description": "World generation seed. Numeric between 1 and 7 characters.",
            "env_variable": "SEED",
            "default_value": "1011345",
            "user_viewable": true,
            "user_editable": true,
            "rules": "required|numeric|between:1,7"
        },
gOOvER commented 3 years ago

@Rephot can you open a PR for this pls?

MWGMorningwood commented 2 years ago

Would it possibly be more wise to host the empyrion server manager instead? Kind of how the FiveM egg utilizes TXAdmin to install/launch everything else

gOOvER commented 2 years ago

Would it possibly be more wise to host the empyrion server manager instead? Kind of how the FiveM egg utilizes TXAdmin to install/launch everything else

What is the Empyrion Server Manager?

there is somewhere a working Empyrion egg

MWGMorningwood commented 2 years ago

What is the Empyrion Server Manager?

there is somewhere a working Empyrion egg

My bad, Empyrion Admin Helper, the pre-packaged control panel for it. The direct GUI interaction won't be required if a solid RCon setup is baked in. It's been a while, though.

parkervcp commented 2 years ago

The rcon we ship in the image is solid. It's used for ark and rust I do believe.