Changes

How to setup a local QuakeJS server under Windows 10

4,501 bytes added, 13:34, 9 September 2019
Created page with "'''TLDR:''' This ''How To'' will show you how to setup a local QuakeJS server, local Play page (for users to connect to the local server), and a local content server (to provi..."
'''TLDR:''' This ''How To'' will show you how to setup a local QuakeJS server, local Play page (for users to connect to the local server), and a local content server (to provide files to the clients) under Windows 10. It is based off of my [[How to setup a local QuakeJS server under Debian 9 or Debian 10|original guide using Debian]].

I found myself in a situation where I was going to be on a [https://en.wikipedia.org/wiki/Local_area_network LAN] without internet access for an extended period of time along with multiple people and multiple computers. I wanted a fun, fast paced, multiplayer game for us. The catch? I didn't want anyone to have to install anything since these computers didn't belong to us. That's a pretty tall order. What I found was [http://www.quakejs.com/ QuakeJS]. [https://en.wikipedia.org/wiki/Quake_III_Arena Quake 3] was [https://github.com/id-Software/Quake-III-Arena open sourced] at the beginning of 2012 and some awesome dudes based [https://github.com/ioquake/ioq3 ioquake3] off of it. Another [https://github.com/inolen awesome dude] created QuakeJS around 2013/2014. QuakeJS allows you to play Quake 3 entirely in a browser.

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.

'''<pre style="color: orange">NOTE: This guide assumes your local server's hostname is "quakejs"</pre>'''

==Install Node.js & NPM==
#Visit https://nodejs.org and download the latest .msi installer for Node.js (v12.10.0 at the time of this writing)
#Run the .msi to install Node.js & NPM
##Click '''Next''' to start the install
##Click '''Accept''' & '''Next''' to accept the license
##Click '''Next''' to accept the default installation folder
##Click '''Next''' to accept the default options
##quakejs doesn't require any of the "extra tools" but you can install them if you want by checking the box on this screen. Click '''Next'''
##Accept the Windows pop-up and wait for the install to complete
##Click '''Finish'''
#You can test this installation by opening a Command Prompt and running<pre>node -v</pre>

==Install Git==
#Visit https://git-scm.com/download/win to automatically start the download of the latest Windows version of the Git client (v2.23.0 at the time of this writing)
#Run the downloaded .exe file to launch the installer
##Click '''Yes''' to start install
##Click '''Next''' to accept the license agreement
##Click '''Next''' to accept the default install location
##Click '''Next''' to accept the default options
##Click '''Next''' to allow the installer to create Start Menu links
##Select your preferred text editor (I like Notepad++ on Windows)
##Click '''Next''' to accept the default PATH option
##Click '''Next''' to use OpenSSL
##Click '''Next''' to use the default line ending option
##Click '''Next''' to use MinTTY
##Click '''Next''' to accept the default extra options
##Click '''Next''' to skip the experimental features and wait for the install to complete
##Click '''Finish'''
#You can test this installation by opening a Command Prompt and running <pre>git --version</pr>

==Install Extra Git Bash Packages==
#Visit https://stedolan.github.io/jq/download/ and download the latest jq executable for Windows (v1.6 at the time of this writing)
#*Make sure you get the correct 32-bit or 64-bit version for your OS
#Rename the downloaded file (either ''jq-win64.exe'' or ''jq-win32.exe'') to ''jq.exe''
#Visit https://eternallybored.org/misc/wget/ and download the latest wget executable for Windows (v1.20.3 at the time of this writing)
#*Make sure you get the correct 32-bit or 64-bit version for your OS
#copy ''jq.exe'' & ''wget.exe'' from your Downloads folder to ''C:\Program Files\Git\mingw64\bin\''