Oh, so you got running in docker? Can you share the docker file? :)
Printable View
I'm rather lazy so I did not write a docker file... just grabbed an old i386 debian image that I've already use for other ye olde stuff and made things work as I went along :D:
Here's the shortest (so far) sequence of commands that'll get you compiled & running:
- Navigate to the folder containing the server git repo and run "docker run --rm -it --platform linux/386 --entrypoint bash -p 7000:7000 -p 5121:5121 -p 6121:6121 -v $(pwd):/ro_alpha debian/eol:etch-slim" and hit return
- Once the docker image starts, you'll be dropped into a root shell (indicated by a "#" prompt), Now, type "cd ro_alpha" and hit return
- Then type "apt-get update && apt-get install nano build-essential cpio zlib1g zlib1g-dev" to install build tools and dependencies. If there are any dependency issues, make sure you resolve them (can't recall if I ran into any specifically)
- Then run "make" and hit return to build the server software. Run ls | grep "-server" to ensure you've all 3 server executables built.
- Then run "nano save/account.txt", duplicate the existing like and change "s1/p1" to "user/pass" (this are the credentials to enter at login) -- this file is sensitive to spaces/tabs so be EXTRA cautious
- Finally, run "./alpha-start start" to start the server and you'll see output like this, if everything went well
The PID numbers will probably be different, but if you see these lines, you're good on the server side :thumbup1:Code:Alpha Starting...
(c) 2003 Alpha Project.
URL:http://project-yare.de/
checking...
Check done.
Looks good, have a nice Alpha!
Starting Login Server:
Login Server Started. pid: 14
Starting Char Server:
Char Server Started. pid: 17
Starting Map Server:
Map Server Started. pid: 20
For the client,
- Hex-edit the client (RagExe.exe) to change the hardcoded IP to 127.0.0.1 and save it
- Start the client and login with the credentials (from the "nano" step server-side)
A quick and simplified summary of what the various arguments to docker command actually do:
- "debian/eol:etch-slim" part specifies the Image to use : Debian Etch... which I know has a i386 (32bit arch) image along with a good GCC 4-ish compiler. Perfect for compiling and running ye olde code from the 00s
- "--platform linux/386" forces docker to use a 32bit arch and not some weird multi-arch thing (you can verify this by running "file -bL /bin/sh" and confirming that the readout has "ELF 32-bit LSB shared object, Intel 80386" or similar)
- "-p 7000:7000" "maps" ports from the docker image to ports on your host (local) machine, needed for the client to connect
- "-v $(pwd):/ro_alpha" bit is a QoL thing.. you're "mapping" folders from your host (local) machine to be accessible inside the docker image with 2-way sync (changes in docker show up on local and vice-versa)
duplicate post, deleted
duplicate post, deleted
duplicate post, deleted
duplicate post, deleted