1,575
edits
Changes
no edit summary
The [https://github.com/inolen/quakejs source code] has instructions for creating a dedicated server as well as building from source & generating assets for a content server (under Linux). Unfortunately the [https://emscripten.org/ Emscripten] tool used to build the project has changed the way it operates in since 2014 and the current version of the QuakeJS source [https://github.com/inolen/quakejs/issues/44 doesn't build] with modern versions of Emscripten. Luckily Inolen provided the precompile .js files for those of us just wanting to run a server. Between those .js files, the QuakeJS README, some [https://github.com/inolen/quakejs/issues/19 helpful discussion] on how to setup a local webpage to connect to the server (as well as providing the content necessary to play) and a bit of tinkering, I've been successful in creating a server environment that I'm happy with.
If you would prefer a video tutorial, Grabisoft created a [https://www.youtube.com/watch?v=m57rMXASWms video tutorial on YouTube]. It also shows you how to add in your own custom content which my guide, below, doesn't cover.
'''<pre style="color: orange">NOTE: This guide assumes your local server's hostname is "quakejs"</pre>'''
This guide (and Inolen's original project) targets the Demo version of Quake 3. If you'd like to try your hand at hosting a node.js version of the full Quake 3 game ronfar623 over at reddit figured out how to do it. You can read his instructions at the link below. Note that he starts by following my instructions above to set up a working Demo version so you'll need to do that first.<br />
https://www.reddit.com/r/quake/comments/cpn4rp/how_to_setup_your_own_local_quakejs_server/ezr8m3c?utm_source=share&utm_medium=web2x
==Adding your own Maps==
Check out this video by Grabisoft
https://www.youtube.com/watch?v=m57rMXASWms
and this GitHub Issue
https://github.com/inolen/quakejs/issues/19#issuecomment-570895962