Skip to content
This repository has been archived by the owner on May 14, 2024. It is now read-only.

[Egg Request]: Squad Proton or Wine Egg #2882

Open
sergelouie6 opened this issue Apr 9, 2024 · 33 comments
Open

[Egg Request]: Squad Proton or Wine Egg #2882

sergelouie6 opened this issue Apr 9, 2024 · 33 comments
Labels
egg request request for egg

Comments

@sergelouie6
Copy link

Does this expand an already existing service

Yes

Link to a game or software

joinsquad.com

Links for the download

https://store.steampowered.com/app/393380/Squad/

Links for the install docs

https://squad.fandom.com/wiki/Server_Installation

@sergelouie6 sergelouie6 added the egg request request for egg label Apr 9, 2024
@sergelouie6
Copy link
Author

Please know that an existing egg for Squad already exists although outdated: https://github.com/parkervcp/eggs/tree/master/game_eggs/steamcmd_servers/squad

Info not found in wiki

- You need to have ICMPv4 open in your firewall (This is a "ping") for latency to report correctly in the server browser. The test for this is to try to ping the IP for your server.
- You need to be punching through NAT. If you don't it won't work due to the above. Particularly a thing for home-hosters.
- `-beaconport=` is the flag you need to have set in your commandline. You may place this anywhere, but recommend being towards the end of the commandline next to `-log` - without the flag, it will default to having a "silent" `-beaconport=15000`, and it is a UDP listen port. **If you only have one server, this will be fine.** If you have more than one server, you will need to give each a unique beacon port. Recommend 5 port spaces to be safe ie. Server1 has -beaconport=15000, Server2 has -beaconport=15005, etc etc
- The `-beaconport=` flag is mobile - you can change your beaconport to wherever you wish, though it would be recommended to stay in the 15000-15050 range as that's what has been tested.
- Your Game Port (commandline argument `PORT=`) whichever it is, must be exposed and contactable. You cannot have this locked down, and a firewall rule must be in place to allow traffic to pass.
- You must have DNS throughput to the box. Otherwise it can't resolve EOS things.
- You must allow the beacon port through the firewall - your server may show up, but it will not be joinable unless you do.

**So, new requirements for your firewall:**
Game Port - UDP only - set via `Port=` flag in the command line
Steam Query Port - UDP only- set via `QueryPort=` flag in the command line
Beacon Port - UDP only- set via `-beaconport=` flag in the command line
RCON Port - TCP only - set via `RCONPORT=` flag in the command line
ICMPv4 allowed - in Windows this is done via cmd.exe easily - `netsh advfirewall firewall add rule name="ICMP Allow incoming V4 echo request" protocol=icmpv4:8,any dir=in action=allow` in Linux, this is `iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT`

**New requirements for your commandline**
Add `-beaconport=15000` to your commandline - if you have more than 1 server, increase this number (no two beacon ports on the same port binding)

@sergelouie6
Copy link
Author

Would love to have workshop mods support too if possible ❤️

https://squad.fandom.com/wiki/Uploading_a_mod_to_a_dedicated_server

@gOOvER
Copy link
Contributor

gOOvER commented Apr 10, 2024

why with Proton, when there is a native Linux Server?

@ImKringle
Copy link
Contributor

^^ Any specific reason? Is it a compatibility issue or

Adding proton to the mix is just another point of issues, if it isnt needed its pretty rare anyone here makes one lol

@gOOvER
Copy link
Contributor

gOOvER commented Apr 10, 2024

I bet, this is Not possible, AS Long Proton Tricks dont run correct

@sergelouie6
Copy link
Author

why with Proton, when there is a native Linux Server?

Mod compatibility since not all of them are compatible with Linux or won't be cooked for Linux at all due to exponential growth of file size if cooked for Linux.

@sergelouie6
Copy link
Author

I bet, this is Not possible, AS Long Proton Tricks dont run correct

May I ask what do you mean by this?

@gOOvER
Copy link
Contributor

gOOvER commented Apr 10, 2024

why with Proton, when there is a native Linux Server?

Mod compatibility since not all of them are compatible with Linux or won't be cooked for Linux at all due to exponential growth of file size if cooked for Linux.

then you need wine. it will Not work with proton.

and not all mods running with wine

@sergelouie6
Copy link
Author

sergelouie6 commented Apr 10, 2024

why with Proton, when there is a native Linux Server?

Mod compatibility since not all of them are compatible with Linux or won't be cooked for Linux at all due to exponential growth of file size if cooked for Linux.

then you need wine. it will Not work with proton.

and not all mods running with wine

Oh. Should I be requesting a wine egg instead like this game_eggs/steamcmd_servers/mordhau/egg-mordhau-wine.json ?

@sergelouie6
Copy link
Author

why with Proton, when there is a native Linux Server?

Mod compatibility since not all of them are compatible with Linux or won't be cooked for Linux at all due to exponential growth of file size if cooked for Linux.

then you need wine. it will Not work with proton.

and not all mods running with wine

The mod we intend to use is compatible with wine I think. I just thought wine eggs does not exist and proton eggs are the alternatives for it.

@sergelouie6
Copy link
Author

Should I rename this issue to wine instead or do I have to create a new one and close this one?

@gOOvER
Copy link
Contributor

gOOvER commented Apr 10, 2024

I don't think you have to do that. But I don't think someone will be found so quickly to do the egg just because of a plugin.

You'll just have to wait, pay someone to make one or make one yourself

@Cartitarul
Copy link
Contributor

Cartitarul commented Apr 10, 2024

Hi @sergelouie6, I can help you with some information regarding the the questions you have.

  1. Regarding the Wiki information
    From what I know that information is not published in the Wiki because its a Community Managed Wiki, OWI doesn't go out of there way to just update the wiki themselves after every update. Its a community responsibility to do so. To get the accurate and best information its better to go on the OWI Hosting Discord. I am gonna try and update the data with the mentions you made this week.

  2. Regarding the Workshop Mods and the beacons and new server requirements
    Last month I made a egg commit that fixed every detail you mentioned above even the beacon parameter. I view it like a fix planning to polish it in the future. And also I added the possibility to install Mods on the server same on a beta(working) level planning to fix and polish everything this week.

  3. Proton Support
    Regarding Proton Support as a lot of members said above its kind of weird and some mods even if they run on windows behave strange on wine and Proton and from my opinion I do not recommend that. My self I host 2 servers called [RO#1] and [RO#2] on Squad with a lot of mods and I didn't experience any critical bugs or problems using a Linux server. It can cause bugs but harmless and most mods work on Linux.

@sergelouie6
Copy link
Author

sergelouie6 commented Apr 10, 2024

Hi @sergelouie6, I can help you with some information regarding the the questions you have.

  1. Regarding the Wiki information
    From what I know that information is not published in the Wiki because its a Community Managed Wiki, OWI doesn't go out of there way to just update the wiki themselves after every update. Its a community responsibility to do so. To get the accurate and best information its better to go on the OWI Hosting Discord. I am gonna try and update the data with the mentions you made this week.
  2. Regarding the Workshop Mods and the beacons and new server requirements
    Last month I made a egg commit that fixed every detail you mentioned above even the beacon parameter. I view it like a fix planning to polish it in the future. And also I added the possibility to install Mods on the server same on a beta(working) level planning to fix and polish everything this week.
  3. Proton Support
    Regarding Proton Support as a lot of members said above its kind of weird and some mods even if there run on windows behave strange and from my opinion I do not recommend that. My self I host 2 servers called [RO#1] and [RO#2] on Squad with a lot of mods and I didn't experience any critical bugs or problems using a Linux server. I can cause bugs but most mods work on Linux.

Hi @Cartitarul, thank you for your response.

  1. May I know how updating the mods work with the commit you made?
  2. For proton support, I will be dropping my request for this and would change this to for a wine egg instead that has console support. The mods that we specifically wanted to use only supports Windows. We also had the same issue a year ago that we even opted to install Windows on our dedicated server just to be able to play the mod (Dynamic Direction) which was requested by the community but was not sustainable for us especially with control compared to Pterodactyl's features and it didn't take off that well due to other factors and since most communities run on Linux. This will be a good addition also if a wine egg is available since modders won't have to cook for Linux which bloats the mod's file size. As far as I remember, the devs of a specific mod before said that if they cook the mod for Linux it will make it x10+ in size from its original size of just 1GB.

@sergelouie6 sergelouie6 changed the title [Egg Request]: Squad Proton Egg [Egg Request]: Squad Proton or Wine Egg Apr 10, 2024
@Cartitarul
Copy link
Contributor

Cartitarul commented Apr 10, 2024

At the moment the mods update after every reinstall as the reinstall dose not delete any configuration files and you don't lose any data. Basically the script downloads everything in the folder steamapps/workshop/content/393380/ and moves it in the Plugins/Mods/ folder. There is a bug that the server mods are not moved automatically in the Mods folder and I am trying to fix it this week with a complete polish.
Regarding the wine server I understand the issue. But I think the wine servers on Docker containers behave strange regarding network configuration, I do not know details but I think that the IP or pots set in the game server with wine don't go hand in hand with the docker. I have to research.

@ImKringle
Copy link
Contributor

Hi @sergelouie6, I can help you with some information regarding the the questions you have.

  1. Regarding the Wiki information
    From what I know that information is not published in the Wiki because its a Community Managed Wiki, OWI doesn't go out of there way to just update the wiki themselves after every update. Its a community responsibility to do so. To get the accurate and best information its better to go on the OWI Hosting Discord. I am gonna try and update the data with the mentions you made this week.
  2. Regarding the Workshop Mods and the beacons and new server requirements
    Last month I made a egg commit that fixed every detail you mentioned above even the beacon parameter. I view it like a fix planning to polish it in the future. And also I added the possibility to install Mods on the server same on a beta(working) level planning to fix and polish everything this week.
  3. Proton Support
    Regarding Proton Support as a lot of members said above its kind of weird and some mods even if there run on windows behave strange and from my opinion I do not recommend that. My self I host 2 servers called [RO#1] and [RO#2] on Squad with a lot of mods and I didn't experience any critical bugs or problems using a Linux server. I can cause bugs but most mods work on Linux.

Hi @Cartitarul, thank you for your response.

  1. May I know how updating the mods work with the commit you made?
  2. For proton support, I will be dropping my request for this and would change this to for a wine egg instead that has console support. The mods that we specifically wanted to use only supports Windows. We also had the same issue a year ago that we even opted to install Windows on our dedicated server just to be able to play the mod (Dynamic Direction) which was requested by the community but was not sustainable for us especially with control compared to Pterodactyl's features and it didn't take off that well due to other factors and since most communities run on Linux. This will be a good addition also if a wine egg is available since modders won't have to cook for Linux which bloats the mod's file size. As far as I remember, the devs of a specific mod before said that if they cook the mod for Linux it will make it x10+ in size from its original size of just 1GB.

Wine is just another emulation layer like Proton is; on Conan for example mods dont behave right on Wine but work right on Proton. Proton doesnt work on Palworld and neither does wine, but on SOTF both Wine and Proton work fine. It all differs by game in most cases

@sergelouie6
Copy link
Author

Hi @sergelouie6, I can help you with some information regarding the the questions you have.

  1. Regarding the Wiki information
    From what I know that information is not published in the Wiki because its a Community Managed Wiki, OWI doesn't go out of there way to just update the wiki themselves after every update. Its a community responsibility to do so. To get the accurate and best information its better to go on the OWI Hosting Discord. I am gonna try and update the data with the mentions you made this week.
  2. Regarding the Workshop Mods and the beacons and new server requirements
    Last month I made a egg commit that fixed every detail you mentioned above even the beacon parameter. I view it like a fix planning to polish it in the future. And also I added the possibility to install Mods on the server same on a beta(working) level planning to fix and polish everything this week.
  3. Proton Support
    Regarding Proton Support as a lot of members said above its kind of weird and some mods even if there run on windows behave strange and from my opinion I do not recommend that. My self I host 2 servers called [RO#1] and [RO#2] on Squad with a lot of mods and I didn't experience any critical bugs or problems using a Linux server. I can cause bugs but most mods work on Linux.

Hi @Cartitarul, thank you for your response.

  1. May I know how updating the mods work with the commit you made?
  2. For proton support, I will be dropping my request for this and would change this to for a wine egg instead that has console support. The mods that we specifically wanted to use only supports Windows. We also had the same issue a year ago that we even opted to install Windows on our dedicated server just to be able to play the mod (Dynamic Direction) which was requested by the community but was not sustainable for us especially with control compared to Pterodactyl's features and it didn't take off that well due to other factors and since most communities run on Linux. This will be a good addition also if a wine egg is available since modders won't have to cook for Linux which bloats the mod's file size. As far as I remember, the devs of a specific mod before said that if they cook the mod for Linux it will make it x10+ in size from its original size of just 1GB.

Wine is just another emulation layer like Proton is; on Conan for example mods dont behave right on Wine but work right on Proton. Proton doesnt work on Palworld and neither does wine, but on SOTF both Wine and Proton work fine. It all differs by game in most cases

May I ask why proton does not work with Palworld but there's an egg for it? #2757

@ImKringle
Copy link
Contributor

Hi @sergelouie6, I can help you with some information regarding the the questions you have.

  1. Regarding the Wiki information

From what I know that information is not published in the Wiki because its a Community Managed Wiki, OWI doesn't go out of there way to just update the wiki themselves after every update. Its a community responsibility to do so. To get the accurate and best information its better to go on the OWI Hosting Discord. I am gonna try and update the data with the mentions you made this week.

  1. Regarding the Workshop Mods and the beacons and new server requirements

Last month I made a egg commit that fixed every detail you mentioned above even the beacon parameter. I view it like a fix planning to polish it in the future. And also I added the possibility to install Mods on the server same on a beta(working) level planning to fix and polish everything this week.

  1. Proton Support

Regarding Proton Support as a lot of members said above its kind of weird and some mods even if there run on windows behave strange and from my opinion I do not recommend that. My self I host 2 servers called [RO#1] and [RO#2] on Squad with a lot of mods and I didn't experience any critical bugs or problems using a Linux server. I can cause bugs but most mods work on Linux.

Hi @Cartitarul, thank you for your response.

  1. May I know how updating the mods work with the commit you made?
  1. For proton support, I will be dropping my request for this and would change this to for a wine egg instead that has console support. The mods that we specifically wanted to use only supports Windows. We also had the same issue a year ago that we even opted to install Windows on our dedicated server just to be able to play the mod (Dynamic Direction) which was requested by the community but was not sustainable for us especially with control compared to Pterodactyl's features and it didn't take off that well due to other factors and since most communities run on Linux. This will be a good addition also if a wine egg is available since modders won't have to cook for Linux which bloats the mod's file size. As far as I remember, the devs of a specific mod before said that if they cook the mod for Linux it will make it x10+ in size from its original size of just 1GB.

Wine is just another emulation layer like Proton is; on Conan for example mods dont behave right on Wine but work right on Proton. Proton doesnt work on Palworld and neither does wine, but on SOTF both Wine and Proton work fine. It all differs by game in most cases

May I ask why proton does not work with Palworld but there's an egg for it? #2757

It broke after the latest update, just hasn't been removed. Odds are it'll fix itself when PocketPair gets their shiz together

@gOOvER
Copy link
Contributor

gOOvER commented Apr 10, 2024

@sergelouie6 proton is Wine ;) And Wine have also no consoleoutput.

@sergelouie6
Copy link
Author

@sergelouie6 proton is Wine ;) And Wine have also no consoleoutput.

ohh, using wineconsole does not have console output?

@gOOvER
Copy link
Contributor

gOOvER commented Apr 10, 2024

@sergelouie6 proton is Wine ;) And Wine have also no consoleoutput.

ohh, using wineconsole does not have console output?

No. wineconsole is only for cli based programs and have nothing to do with consoleoutput.

The problem here is ptero and how ptero read the console. I know other panels where it work fine

@sergelouie6
Copy link
Author

sergelouie6 commented Apr 10, 2024

@sergelouie6 proton is Wine ;) And Wine have also no consoleoutput.

ohh, using wineconsole does not have console output?

No. wineconsole is only for cli based programs and have nothing to do with consoleoutput.

The problem here is ptero and how ptero read the console. I know other panels where it work fine

oh got it, I think the console output is not that important now that I think of it.

Is this considered as a cli based program?
image

I've read in https://www.winehq.org/docs/wine that wineconsole is for Windows console program. Is this the same?

I'm still talking to someone working on a wine egg for squad and just confirmed that it worked using wineconsole but I had difficulties in understanding his method
image
image

I'm still waiting for the egg 🔽
image

image

The other issue is related to #2882 (comment) about mods not moving to plugins folder

@Cartitarul
Copy link
Contributor

Nice, I'ved done some progress to on the wine squad egg. Let's work together on this contact me on Discord: cartitarul

@sergelouie6 proton is Wine ;) And Wine have also no consoleoutput.

ohh, using wineconsole does not have console output?

No. wineconsole is only for cli based programs and have nothing to do with consoleoutput.
The problem here is ptero and how ptero read the console. I know other panels where it work fine

oh got it, I think the console output is not that important now that I think of it.

Is this considered as a cli based program? image

I've read in https://www.winehq.org/docs/wine that wineconsole is for Windows console program. Is this the same?

I'm still talking to someone working on a wine egg for squad and just confirmed that it worked using wineconsole but I had difficulties in understanding his method image image

I'm still waiting for the egg 🔽 image

image

The other issue is related to #2882 (comment) about mods not moving to plugins folder

Nice, I'ved done some progress to on the wine squad egg. Let's work together on this contact me on Discord: cartitarul

@fakhry7050
Copy link

Hi @sergelouie6, I can help you with some information regarding the the questions you have.

  1. Regarding the Wiki information
    From what I know that information is not published in the Wiki because its a Community Managed Wiki, OWI doesn't go out of there way to just update the wiki themselves after every update. Its a community responsibility to do so. To get the accurate and best information its better to go on the OWI Hosting Discord. I am gonna try and update the data with the mentions you made this week.
  2. Regarding the Workshop Mods and the beacons and new server requirements
    Last month I made a egg commit that fixed every detail you mentioned above even the beacon parameter. I view it like a fix planning to polish it in the future. And also I added the possibility to install Mods on the server same on a beta(working) level planning to fix and polish everything this week.
  3. Proton Support
    Regarding Proton Support as a lot of members said above its kind of weird and some mods even if there run on windows behave strange and from my opinion I do not recommend that. My self I host 2 servers called [RO#1] and [RO#2] on Squad with a lot of mods and I didn't experience any critical bugs or problems using a Linux server. I can cause bugs but most mods work on Linux.

Hi @Cartitarul, thank you for your response.

  1. May I know how updating the mods work with the commit you made?
  2. For proton support, I will be dropping my request for this and would change this to for a wine egg instead that has console support. The mods that we specifically wanted to use only supports Windows. We also had the same issue a year ago that we even opted to install Windows on our dedicated server just to be able to play the mod (Dynamic Direction) which was requested by the community but was not sustainable for us especially with control compared to Pterodactyl's features and it didn't take off that well due to other factors and since most communities run on Linux. This will be a good addition also if a wine egg is available since modders won't have to cook for Linux which bloats the mod's file size. As far as I remember, the devs of a specific mod before said that if they cook the mod for Linux it will make it x10+ in size from its original size of just 1GB.

Wine is just another emulation layer like Proton is; on Conan for example mods dont behave right on Wine but work right on Proton. Proton doesnt work on Palworld and neither does wine, but on SOTF both Wine and Proton work fine. It all differs by game in most cases

yow bro all think goood and egg work correctly only we have issues in console logs

@fakhry7050
Copy link

the new updated egg work and support mods : https://github.com/fakhry7050/Squad-egg-pterodactyl

@ImKringle
Copy link
Contributor

the new updated egg work and support mods : https://github.com/fakhry7050/Squad-egg-pterodactyl

Can't be PR'd here as is; cannot use sh files to handle startup. User editable startup commands are taboo

echo "Creating start.sh script in the server directory..."
cat << 'EOF' > /mnt/server/start.sh
#!/bin/bash
# Startup command to run the Squad game server and tail logs.

# Ensure the server executable variable is replaced correctly
SERVER_EXEC="/home/container/SquadGame/Binaries/Win64/${SERVER_EXECUTABLE}"
LOG_PATH="/home/container/SquadGame/Saved/Logs/SquadGame.log"

# Output startup details
echo "Starting the Squad game server..."
echo "Executable: $SERVER_EXEC"
echo "Logs will be tailed from: $LOG_PATH"

# Start the Squad server in the background
wine "$SERVER_EXEC" Port=${SERVER_PORT} QueryPort=${QUERY_PORT} beaconport=${BEACON_PORT} FIXEDMAXTICKRATE=${FIXEDMAXTICKRATE} -log &

# Tail the log file
tail -f "$LOG_PATH"
EOF

@ImKringle
Copy link
Contributor

Check how fixing log output is handled for the NoLoveLost egg

clear the log that generates, then tail it to the console. Doable in a single line just fine, the SH file can't be used

@sergelouie6
Copy link
Author

#2887

@fakhry7050
Copy link

Check how fixing log output is handled for the NoLoveLost egg

clear the log that generates, then tail it to the console. Doable in a single line just fine, the SH file can't be used

yow i understand and i check it sorry but wine doesnt support also logs method of proton not the same in wine because wine doesnt support multiwindow

@ImKringle
Copy link
Contributor

Check how fixing log output is handled for the NoLoveLost egg
clear the log that generates, then tail it to the console. Doable in a single line just fine, the SH file can't be used

yow i understand and i check it sorry but wine doesnt support also logs method of proton not the same in wine because wine doesnt support multiwindow

Then use proton, you can't use an SH file 🤷🏼

@ImKringle
Copy link
Contributor

Check how fixing log output is handled for the NoLoveLost egg
clear the log that generates, then tail it to the console. Doable in a single line just fine, the SH file can't be used

yow i understand and i check it sorry but wine doesnt support also logs method of proton not the same in wine because wine doesnt support multiwindow

Just tested it myself, Wine works fine tailing the log through the startup command so long as you use the Binaries exe and not the base one (Which is pretty standard for proton/wine)

rm /home/container/SquadGame/Saved/Logs/SquadGame.log; wine /home/container/SquadGame/Binaries/Win64/SquadGameServer.exe Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}} beaconport={{BEACON_PORT}} FIXEDMAXTICKRATE={{MAX_TICK}} -log & SQD_PID=$!; tail -c0 -F /home/container/SquadGame/Saved/Logs/SquadGame.log --pid=$SQD_PID

@fakhry7050
Copy link

Check how fixing log output is handled for the NoLoveLost egg
clear the log that generates, then tail it to the console. Doable in a single line just fine, the SH file can't be used

yow i understand and i check it sorry but wine doesnt support also logs method of proton not the same in wine because wine doesnt support multiwindow

Just tested it myself, Wine works fine tailing the log through the startup command so long as you use the Binaries exe and not the base one (Which is pretty standard for proton/wine)

rm /home/container/SquadGame/Saved/Logs/SquadGame.log; wine /home/container/SquadGame/Binaries/Win64/SquadGameServer.exe Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}} beaconport={{BEACON_PORT}} FIXEDMAXTICKRATE={{MAX_TICK}} -log & SQD_PID=$!; tail -c0 -F /home/container/SquadGame/Saved/Logs/SquadGame.log --pid=$SQD_PID

yow thanks for your help and fixed

@ImKringle
Copy link
Contributor

Check how fixing log output is handled for the NoLoveLost egg
clear the log that generates, then tail it to the console. Doable in a single line just fine, the SH file can't be used

yow i understand and i check it sorry but wine doesnt support also logs method of proton not the same in wine because wine doesnt support multiwindow

Just tested it myself, Wine works fine tailing the log through the startup command so long as you use the Binaries exe and not the base one (Which is pretty standard for proton/wine)

rm /home/container/SquadGame/Saved/Logs/SquadGame.log; wine /home/container/SquadGame/Binaries/Win64/SquadGameServer.exe Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}} beaconport={{BEACON_PORT}} FIXEDMAXTICKRATE={{MAX_TICK}} -log & SQD_PID=$!; tail -c0 -F /home/container/SquadGame/Saved/Logs/SquadGame.log --pid=$SQD_PID

yow thanks for your help and fixed

More than that needed edited - you copy/pasting mine doesnt work, I don't use your variables. Actually edit your egg to match whats required; keep it in the PR :)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
egg request request for egg
Projects
None yet
Development

No branches or pull requests

5 participants