Basic Setup

From WCell wiki

Jump to: navigation, search

Contents

Software requirements

  • .NET Framework 3.5 (or higher), which you can download here.
  • Right now WCell does not offer binary (or installer) packages yet which is why you need to build WCell yourself, using an IDE, such as Visual Studio 2008. You can use the free IDE Visual Studio 2008 C# Express which can be downloaded here (the link is at the bottom).

WCell also needs access to any of the following database systems in order to store and access game data:

  • MySQL 5.x: download link
    • IMPORTANT: At this time MySQL 6.0 and later are NOT supported!
  • (MS SQL Server 2005 Express: download link (ships with any commercial version of Visual Studio))
  • (PostgreSQL 8.2.6: download link)

Setting up the database system is out of the scope of this document, so please refer to the vendor documentation for further information. You should at least have a basic understanding of how to work with SQL and the database system you choose to run.

Compilation

  1. Run the WCell solution file WCell.sln which will open Visual Studio with the WCell solution loaded
    • (Unless you know what you are doing, compile WCell in Debug - BuildMode.)
    • If a big window pops up asking if you want to load a project for reading only or normally, select open normally and uncheck the box where it asks if you want to do this for every project in the solution, and then click OK.
    • If you have the Express version:
      • It will complain about not supporting some things - ignore that, and just click OK.
      • You may receive an error "Solution folders are not supported in this version of the application". This is not an issue and can be ignored:
  2. Right-click 'WCell' in the Solution Explorer and hit Build Solution

Compile Screenshot

Build Screenshot

Debug Screenshot

Files and Folders

After building succeeded, the built applications can be found in the Run/ folder:

  • Auth Server: Run/AuthServer/{BuildMode}/WCell.AuthServerConsole.exe
  • Realm Server: Run/RealmServer/{BuildMode}/WCell.RealmServerConsole.exe

There you can also find the Configuration files:

  • Run/RealmServer/{BuildMode}/Config.xml
  • Run/AuthServer/{BuildMode}/Config.xml

Folders Screenshot

Preparing WCell

The default Configuration should get you running with minimal effort:

  1. Change your DB settings in the Configuration
  2. Extract the DBC files from the WoW client:
    • Right-click on the WCell.MPQTool Project in the Solution Explorer and then select Debug -> Start new Instance.
      • Extract DBC Screenshot
      • If you simply run the tool from its directory, it will try to locate your WoW installation directory for you. If it fails, try moving the WCell.DBCDump files into your WoW installation directory, and run it from there. You can find the binaries required to run the program in the Utilities/WCell.DBCDump/bin/{BuildMode}-folder. It will extract the DBC files into a subfolder of the Content Folder.
      • DBC Folder Screenshot
  3. Create two databases:
    • The default database names are WCellAuthServer and WCellRealmServer
    • You can change the database connection information in Configuration#Database Settings
    • Once the Databases are created and configured correctly, the server will automatically create the tables and do the rest

Import content from a Content-provider

Read Supported Content Providers for more information.

Running WCell

  • Start WCell by running the AuthServerConsole and the RealmServerConsole exe files
  • Connect to WCell after changing the Realmlist.wtf-file in your WoW folder
  • The default listening address is 127.0.0.1 (or: localhost)
  • You can activate Auto Account Creation through the Configuration (Default: On)
    • When enabled, a new Account will be created when you try to login and:
      • The provided Accountname does not exist
      • Password is the same as Accountname
    • If you login from a local client, automatically created accounts get the Highest Role
    • Else they get the Default Role

NOTE: If you notice weird behavior, look in the console or the Log Files for hints. Please report any errors that you don't seem to have caused yourself.

Static (World) Content

If you run WCell in Debug mode (which is the default), you will face a naked and empty world because it speeds up the startup routine if you disable automatic loading and spawning of static data (NPCs, Items, GOs etc). This is very useful for developers who often need to restart WCell.

Going Public

If you want to allow non-local clients (from the local network or from the internet) to connect to your server, you need to change your Configuration:

  • Set RegisterExternalAddress to True (or 1)
  • Set ExternalAddress to the address that clients should connect to
  • If the ExternalAddress is an address that is bound to one of the Server's NIC addresses you will also have to change the Host to the external address. The port will then be bound to the address.

You can either provide ip-addresses or hostnames.

What's next?

Personal tools