Visit the Discord server for more support.
These instructions will get you a copy of the project up and running on your local machine for development purposes.
- Clone this repository.
git clone https://github.com/wizguin/yukon
- Install node dependencies.
npm install
- Merge contents of assets into the assets folder.
- Running the dev server.
npm run dev
- Running Phaser Editor for scene editing.
npm run editor
- Building the client for production.
npm run build
- Building crumbs. This will merge files in "/assets/media/crumbs/en" into a single json file, you only need to run this when modifying crumbs.
npm run build-crumbs
Editing .scene files requires a copy of Phaser Editor.
If you'd like to use the included PHP account registration locally, you must host it on a PHP supported web server running on port 80 at the path "/create/scripts/php". Webpack dev server will proxy requests accordingly.
'/create/scripts/php': 'http://localhost:80'
See here for a simpler way to create accounts locally.
The following is required when running the project in production.
- Routes for proxying game worlds must be set up on your web server, the following is an example of an Apache configuration.
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/world/login [NC]
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteCond %{HTTP:Connection} upgrade [NC]
RewriteRule /(.*) ws://localhost:6111/$1 [P,L]
ProxyPass /world/login http://localhost:6111
RewriteCond %{REQUEST_URI} ^/world/blizzard [NC]
RewriteCond %{HTTP:Upgrade} websocket [NC]
RewriteCond %{HTTP:Connection} upgrade [NC]
RewriteRule /(.*) ws://localhost:6112/$1 [P,L]
ProxyPass /world/blizzard http://localhost:6112
-
Make sure to use the minified bundle generated with the build command. If you aren't going to be making any changes to the code, then the latest release can be downloaded from here.
-
Update the query string in index.html to the appropriate version number, e.g "?v=1.0.0".
<script src="assets/scripts/client/yukon.min.js?v=1.0.0"></script>
This project is a work in progress, please report any issues you find here.