Info
Content

Server Setup

This page will cover how to set up a basic Sequoia instance. Sequoia is intended to be easy to setup, but highly flexible to configure for those who want detailed control over server features. With the default configuration, Sequoia should have no problem running out of the box, assuming you meet the minimum requirements.

Terminology

There are a few terms that are important to understand before reading through the rest of this page. These are used commonly throughout the various wiki pages for Seqouia, and are good to know as a result.

  • Login Server and Game Server
    • Sequoia consists of two separate parts: the Login Server and the Game Server.
      • The login server is responsible for handling account authentication, world selection, and character creation/deletion/selection.
      • The game server, on the other hand, is responsible for running one or more worlds (i.e. Scania, Windia, Bera, etc.)
      • The login and game servers are run independently of each other.
  • "Server-wide" vs. "world-wide" data
    • Sequoia refers to server-wide and world-wide data as two distinct things.
      • Server-wide data refers to data that is used across the login server and all game servers within a single Sequoia installation. This includes data such as accounts and bans.
      • World-wide data refers to data that's specific to a single world running within a Sequoia installation. This includes data such as characters and inventory items.

Configuration

While Sequoia has many configuration files, you don't actually have to modify most of them to get a server up and running. At the bare minimum, you just have to configure database connection settings for the most part (and maybe the path to your assets and the server's IP/ports).

This is how a basic Sequoia server directory would look:

  • SequoiaServer/
    • assets/ - The asset (WZ) files for the server. By default, Sequoia only supports WZ-XML.
      • Character.wz/
      • Map.wz/
      • Mob.wz/
      • ...(you must have all WZ files exported here to avoid problems)
    • config/ - Gameplay configuration files.
      • services/ - Service configuration files.
    • world_scania/
      • config/ - (optional) Gameplay configuration files. Anything in here overrides the root config directory for this specific world.
        • services/ - World-specific service configuration.
      • world.conf
    • database.conf: This file contains all database connection settings for the login and game server(s).
    • game.conf: Game server configuration.
    • login.conf: Login server configuration.
    • sequoia.conf: This file contains basic configuration for all login and game server instances, such as the name and website of the server, the timezone, and protocol version.

Database

Sequoia currently supports three different storage backends:

  • PostgreSQL: The primary database backend. As a result, has more focus on optimized table structures and performance overall.
  • MySQL (currently unmaintained): Secondary database backend.
  • SQLite (planned): Flatfile database backend. This is the default backend to allow for easy server setups. Using this in a production server isn't recommended, as it's mostly intended to make the lives of non-developers easier.

Worlds

Worlds are defined in game.conf under the worlds section. The recommended convention for world directories is <server root>/world_<name>, although it shouldn't cause any issues if you use other names.

A world directory must contain a file called world.conf for it to be recognized as a world.

Back to top