What happened to OC? - CLOSED Carnage?!
MXWK

Help in setting up VPS for Halo CE Dedicated Server

Greetings,

 

I recently purchased a VPS with hopes of hosting Halo CE dedicated servers. Was having a similar error to the one mentioned in this post,

managed to fix that somehow but this one persists:

 

 

0033:err:winediag:MIDIMAP_drvOpen No software synthesizer midi port found, Midi sound output probably won't work.

 

 

Tried searching online and did not find any solutions yet, any help would be greatly appreciated :)

Share this post


Link to post
Share on other sites

Tiddy-bits:

1 hour ago, Java said:

Wine is awkward at times with stuff being installed, plus VPS providers providing slim build images.

 

Hopefully this will help you out, mind you it is sorta 3 years old.

 

https://manerosss.wordpress.com/2017/06/22/wine-midi-linux/

 

Hello,

 

Thanks for the link but I somehow got it fixed up by trying Phasor. Hahaha...The problem now is that Phasor is not really installed. I can't login, when I try to it shows "/login <password>". Any ideas? XD

Edited by MXWK

Share this post


Link to post
Share on other sites
1 hour ago, giraffe said:

Which Linux distro are you using? Which version of Wine are you using?

 

Ubuntu 20.04 LTS and wine-5.0 (Ubuntu 5.0-3ubuntu1).

Share this post


Link to post
Share on other sites

https://github.com/antimomentum/haloce

Scroll down to the step by step section.

Also keep in mind that depending on the cloud provider you use, there could be security rules you need to set up outside the host OS to allow internet traffic to it. This is true for AWS, Google cloud services, and Azure if I'm not mistaken.

Providers like Linode and DIgitalOcean don't have that extra step outside the OS.

The github page should have all the info you need to run a halo custom edition dedi server with sapp and lua on Linode in Ubuntu 18.04 LTS server

Here's the shortcut:
apt update

apt upgrade -y

apt-get install docker.io

docker run -e INTERNAL_PORT=2302 -it -p 2302:2302/udp -p 2303:2302/udp antimomentum/haloce
Wait a few minutes, grab some coffee. 
Done. You are booted to the haloceded.exe console and the server is running with sapp, and will show up in the game's server list :)

There's another section on that github page for installing your own server/sapp/ idk what else files to a docker build.

My server using this container was full last night. CPU usage was at 10-21% and ram was under 300mb on bloodgulch. This might even run in free tier cloud services lol, maybe depending on what maps you use.

Edited by AntiMomentum
Pfhunkie, Broomish, MXWK and 1 other like this

Share this post


Link to post
Share on other sites

@AntiMomentum Hello, thanks for your response. I managed to get a SAPP server up and running by copying the entire Halo CE directory into the server files directory. Dunno what exactly happened there, but it was fixed, with only one issue, the server keeps crashing. 

 

I am currently trying out docker to see if it will fix the crashing, but I can't seem to be able to load the Lua scripts. Where exactly am I supposed to put SAPP's init and the Lua files I want to load for my server? As well as the mapvotes, commands, etc.

 

Thanks!

AntiMomentum likes this

Share this post


Link to post
Share on other sites
5 hours ago, MXWK said:

@AntiMomentum Hello, thanks for your response. I managed to get a SAPP server up and running by copying the entire Halo CE directory into the server files directory. Dunno what exactly happened there, but it was fixed, with only one issue, the server keeps crashing. 

 

I am currently trying out docker to see if it will fix the crashing, but I can't seem to be able to load the Lua scripts. Where exactly am I supposed to put SAPP's init and the Lua files I want to load for my server? As well as the mapvotes, commands, etc.

 

Thanks!


Yeah so mostly/completely just sounds like a path issue. So here's a tip for both Windows and Linux you might already know when starting haloceded.exe, you can add a -path switch to it to force Halo to use one directory, rather than the Documents\My Games\Halo CE it defaults to without a -path switch for sapp files and the mapvotes, commands,etc. So:

You have 1 folder named halopull
In halopull:

A folder named maps

A folder named sapp   <--alias.txt, commands.txt, events.txt, init.txt (sapp's init), mapcycles.txt ,mapvotes.txt are in this sapp folder.
--in the sapp folder there's also the lua folder. You put lua scripts in the lua folder

A folder named savegames  <---gametypes

A folder named saved
Then files:
haloceded.exe
banned.txt

init.txt

motd.txt

sapp.dll
Strings.dll 

All in halopull. You may have more files, that's just a barebones example. As long as "halopull" is in the same directory as "Dockerfile" it will build correctly, as long as your halo paths aren't still mistaken somehow or there isn't something wrong with the files themselves. Also assuming you are using 10.2.1 sapp. 

In Wine without Docker:
you cd into halopull and start halo like this:
wineconsole haloceded.exe -path .

The Dockerfile essentially starts halo in the container this way too. The dot is relative (for Linux, in Windows i think it's \ for relative path I could be wrong about WIndows though).
**Edit 2, Lua**
In sapp's init.txt you must have:
lua 1
lua_load thescript
lua_load race

Assuming the lua scripts' file names are thescript.lua and race.lua

But I also recommend this in sapp's init too:
auto_update 0
network_thread 0

There's also some way to use lua scripts specific to a map in the mapcycle. I'm not sure how exactly that works though maybe there's a post or something about it. Anyways if your issues were just path and lua that all should at least get it to running without crashes. In past experiments I've sometimes had to use this in the sapp init too:
max_idle 0

But that's a last resort sort of thing. And I'm not sure how that works either.

*Edit*
If you want to run multiple halos with just Wine (no Docker) from the same server without having to use an ssh screen for each Halo, you can install "screen". This will allow you to start haloceded.exe detached and you can attach to the halo console later or even make scripts to give halo commands without having to attach to any halo console. Once you have your Halo server working you can do this:

apt install screen   <--assuming Debian/Ubuntu

Here's an example script that would start 2 halo servers from the same files, but on different ports 2302 and 2304:
screen -S "halo" -d -m
screen -r "halo" -X stuff "cd halopull^M"
screen -r "halo" -X stuff "wineconsole haloceded.exe -path .^M"
screen -S "2halo" -d -m
screen -r "2halo" -X stuff "cd halopull^M"
screen -r "2halo" -X stuff "wineconsole haloceded.exe -path . -port 2304^M"

You can then attach to them:
screen -xr halo
or
screen -xr 2halo

Hold Ctrl A and D to detach. You can even remotely detach another screen if you can't Ctrl A and D, provided you run this from a terminal or screen not already attached to a halo console: screen -d 2halo

Or make a script to automatically turn on afk kick after an hour without attaching at all:
sleep 3600
screen -r "halo" -X stuff "afk_kick 300^M"

The ^M basically means "press enter" to screen. "stuff" is actually part of the screen command.

Edited by AntiMomentum
MXWK likes this

Share this post


Link to post
Share on other sites
  • Recently Browsing   0 members

    No registered users viewing this page.