LandOfTheRair / landoftherair-old

A high-fantasy MORPG.
https://rair.land
GNU General Public License v3.0
38 stars 8 forks source link
mmorpg mud multiplayer rpg

Land of the Rair Build Status

A high fantasy MORPG inspired by the MUDs of olde.

Requirements

Install

Environment Variables

First, create a .env file in the root. Then, populate it with these values:

If you want to use Auth0, you can set this value (if you don't, see the section Authenticating Locally below):

If you want strict validation of users (ie, if you're doing anything sensitive like taking payments), set these values:

If you want to test Discord integration, you can also add:

Also, your bot will need a role that can assign roles.

If you want to test Stripe, you need to add:

If you want to test GameAnalytics, you need to add:

Setup

Initial Setup

For initial setup, run this:

Content Creation

For subsequent updates and specific changes, you can run these instead:

Authenticating Locally

If you do not want to use Auth0 for some particular reason, you can bypass it by adding ?username=myusername to the URL. This does not work in production mode.

Making Yourself a GM

If you want to do any debugging, you'll need to make yourself a GM. To do that, you'll want to set your account to be a GM. Open up a mongo shell or run this query through an external tool:

db.accounts.update({ username: 'YOUR_ACCOUNT_NAME' }, { $set: { isGM: true } });

You only need to do this once.

Testing Outside Of localhost

By default, the client is configured to connect to localhost. If you want to connect somewhere else (say, you're using a VM), you can change src/client/environments/environment.ts to reflect the location of your server. For example, if you're developing in a VM, you probably want to change the two instances of localhost to be the IP of the VM.

Server Debug Routes

Some routes are enabled for debugging purposes and are otherwise unused. You can visit:

Commands

Some commands are hidden and don't really need to be used by players, but should be used when testing out moderation features. Commands have varying prefixes, such as:

Internal Commands

Debugging Commands

Testing Commands

Certain accounts designated as testers get access to several in game commands:

GM Commands

As a GM, you get access to several commands in the lobby:

You also get access to some commands in-game:

Game Settings

Internally, there are a large handful of game settings that control how players gain anything. They are pretty self-explanatory: