Basic Setup

From WCell

Jump to: navigation, search

Contents

Preface

Before we go through initial setup, I'd like to thank you for using our software. If it wasn't for you, we'd have no reason to continue making it! Thank you!

Software requirements

  • .NET Framework 3.5 (or higher), which you can download here.
  • A Database System of your choice
  • 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).


The following information is a guide on how to build and setup WCell using Visual Studio 2008

Database requirements

IMPORTANT: WCell currently requires MySQL until the default content-provider NCDB offers an MSSQL alternative.

WCell needs access to a database in order to store and access game progress.
We currently support MS SQL 2002/2005, MySQL 4.x/5.x, Oracle 8/9, and PostgreSQL 8.1+. Here are some links to free versions of some of the supported database systems:

IMPORTANT NOTE: at this time MySQL is only supported up to the 5.0 branch. So don't try with 6.0. IT WILL NOT WORK!

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.
If you already have WCell fully working and setup, feel free to skip directly to Configuration for information on how to make WCell work with your DB.

Import content from a Content-provider

WCell reads its Static Content from any supported Content Implementation.
So far the only supported implementation is NCDB: Check out the database.sql file from their repository and import it into the WCellRealmServer DB.

Compilation

  • Start by executing the WCell solution file WCell.sln which will open Visual Studio with the WCell solution loaded inside
    • If you have the Express version, it'll complain about not supporting Test-projects; ignore that, and just click OK. 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.

See picture

  • Right-click where it says Solution 'WCell' in the Solution Explorer and hit Build Solution. [images needed]

By default WCell will be compiled in Debug - BuildMode; you can change this by selecting Debug or Release in the build-mode drop-down box in the Visual Studio toolbar at the top. Debug builds contain information that aid developers when searching for bugs and issues, whereas the Release build performs optimizations and removes most debugging information (thus runs faster and is smaller). Since WCell is not in production state yet, it is recommended to use the Debug-build over the Release-build.

See picture 1

See picture 2

  • NOTE: The Build Symbol DEV is set when building in Debug mode. It speeds up the startup routine by disabling automatic loading and spawning of static data. To remove it (and have all static data loaded on startup): Right-click the "WCell.RealmServer" project -> Properties -> Select the Build tab and remove DEV from the line that says "Conditional compilation symbols". On the other hand if you have the DEV symbol set, you can load that information dynamically either ingame or through the RealmServer Console using the Load Command.

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 correspondingly: Run/RealmServer/{BuildMode}/Config.xml and Run/AuthServer/{BuildMode}/Config.xml.

See picture

Setting up WCell

By default, the configurations are set to get you running with minimal effort. If you use anything other than MS SQL Server 2005 Express for your database, you'll have to make some changes, and if you're behind a router/firewall, and want to enable outside connectivity, you'll also have to do some editing. Those changes are explained in Configuration.
After configuring your server, you still need to extract the DBC files from the WoW client, by simply right-clicking on the WCell.DBCTool Project in the Solution Explorer and then select Debug -> Start new Instance.

See picture

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 folder called dbc within the Content Folder.

See picture

Lastly, we need to create two databases. In the future, WCell will probably be able to do this automatically, but for the time being you must create the DBs for the Authentication- and Realm- server manually. In case you ran older versions and you're getting errors, you need to remove older databases manually and recreate them. (easiest way is to do it is with SQL Server Management Studio Express freely available from Microsoft if you're using MS SQL Server 2005 Express).

  • The default database names are WCellAuthServer and WCellRealmServer
  • You can change the database connection information in the corresponding configuration files
  • Once the Databases are created and configured correctly, the server will automatically create the tables and do the rest

See this guide

IMPORTANT: After the Server automatically created the empty tables in the Database(s), it also adds a new account called Administrator with the same PW (Administrator) that you can use to log into WCell. It has the Highest Role and is for testing and setup only. Change it or better yet, delete it, using the AuthServer Commmands.

Running WCell

At this point, you should be able to run WCell by starting the AuthServer and the RealmServer executables. You can connect to them by changing the Realmlist.wtf-file in your WoW folder. The default listening address is 127.0.0.1 (or: localhost). You will have to change the configuration to allow access from the internet.
You can activate Auto Account Creation through Configuration (Default: On). In that case, a new Account will be created when you try to login with an Accountname that does not exist and the password matches that name. It will then automatically gain the DefaultRole. When logging in from the same machine as the server, it will automatically gain the Highest Role (see: Roles and Privileges).

Change realmlist

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.

First steps ingame

If you built WCell with the DEV symbol (which disables automatic loading and spawning of static data), you will face a naked and empty world. You then have to load and spawn the world yourself.

What's next?

Basic Setup

Personal tools