Building SWG Server

Building the SWG Server

Prerequisites

 * Development
 * VMWare Setup
 * Gerrit Code Review
 * Thread: Fast Track VM Image for Development
 * Create a Gmail or Yahoo account. (If needed)

Introduction
The screenshots have been edited to hide personal information. What may appear to be blank space is where your personal information will be inputed, like username, email, ssh key, etc.

Certain steps will process rather quickly and others will take considerable time. Review each screenshot carefully and visit Thread: Development Documentation - *All Links and Information Inside*.

Research the SWGEmu forums to understand the processes and steps to successfully build/dissect/rebuild your own SWGEmu server.

Good luck!

Instructions
Get Started


 * Open VMWare Player/Workstation
 * Open SWGEmu_DenEnv.vmx
 * Open Terminal
 * Type the following in the prompt:  getstarted fresh' 
 * [[media:01_step1.png]]
 * getstarted Info:
 * Within the SWGEmu DevEnv machine, there is a shell script called getstarted, located in /home/swgemu/bin.
 * Using getstarted will run you through the entire setup process again.
 * Thread: Dev Questions relating to Dev Environment
 * Using getstarted from a terminal will reset the VM to default.
 * Thread: How'd I break it
 * getstarted fresh The argument fresh to getstarted will reset everything and get you to the latest code base without having to re-download the entire vm image and setup VMware etc..
 * Thread: Help with core build in new vmware image
 * getstarted - Run the setup script again from where you left off, you can run getstarted fresh to started from scratch.
 * Thread: Fast Track VM Image for Development

Step 1 >> Editor


 * During your setup you'll be asked to choose between three unix-based editors, vim, gvim, and nano.
 * This tutorial uses vim.
 * [[media:02_step1.png]]

Step 2 >> Git config


 * NOTE: Be sure to have registered an account at Gerrit Code Review prior to completing the remaining steps.
 * Input your username associated with Gerrit Code Review.
 * Input your email account associated with Gerrit Code Review.
 * [[media:03_step2.png]]

Step 3 SSH Key >> Git config


 * Automated process that informs you that you'll need a SSH key.
 * SSH keys are a more secure means of identifying trusted computers without involving passwords.
 * No user input is required here.

Step 4 >> Gerrit registration


 * This step will automatically launch Iceweasel and open up Gerrit Code Review.
 * Sign into Gerrit Code Review through OpenID. I suggest using a Gmail or Yahoo account.
 * [[media:04_step4.png]]
 * Click on your name located in the upper right corner and select Settings.
 * Click on SHH Public Keys.
 * Cick on Add Keys.
 * [[media:05_step4.png]]
 * Within the Terminal, select, right-click, and copy the SSH key that was generated in Step 4.
 * Within Iceweasel. paste the SHH key into the Add SSH Public Key box, then click Add.
 * [[media:06_step4.png]]
 * Back in Terminal, you've been asked "Have you done this yet?" Do not answer Y (yes) until you've successfully copied and pasted the SSH key into your Gerrit account.
 * Once you've entered Y, you'll be ask to enter your Gerrit username.
 * [[media:07_step4.png]]

Step 5 >> Verify Gerrit user/SSH Key


 * This step verifies your username and SSH key.
 * No user inut required here.

Step 6 >> Git repos


 * This process is time consuming. Relax from your hard work.
 * At this stage, Core3 repository is cloned onto your SWGEmu DevEnv hardrive ~/wokspace/core3.
 * Core3 tree is what's cloned onto your drive.
 * [[media:08_step6.png]]
 * [[media:swgemu_workspace_core3_MMOCoreORB.png]]
 * The repository PublicEngine is cloned onto your SWGEmu DevEnv hardrive ~workspace/PublicEngine.
 * PublicEngine tree is what's cloned onto your drive.
 * [[media:Swg_workspace_PublicEngine.png]]
 * The repository Tools is cloned onto your SWGEmu DevEnv hardrive ~workspace/Tools.
 * Tools tree is what's cloned onto your drive.
 * [[media:Swg_workspace_Tools.png]]

Step 7 >> Symlink | Step 8 >> Engine Library | Step 9 >> MySQL Database


 * Links, an engine library, and fresh copy MySQL database (with outstanding patches executed) are created.

Step 10 >> Server configuration


 * This step allows you to edit the server configuration file, config.lua
 * [[media:09_step10.png]]
 * You can edit this file later with Gedit.
 * The file is located swgemu/workspace/core3/MMOCoreORB/bin/Conf/config.lua
 * [[media:Swgemu_workspace_MMOCoreORB_bin_conf_config.png]]

Step 11 >> TRE files


 * NOTE: You must make sure to copy all the *.tre files from your game disk to: /home/swgemu/workspace/tre
 * [[media:10_step11.png]]
 * There are two methods to transfer TRE files.
 * Via Terminal command line
 * Or copy from computer's hard drive and paste into your VM's hardrive.
 * I used this method.
 * To access your files via the command line input the following:
 * cd ../../
 * cd mnt/hgfs/shared
 * ls -a
 * lists all files (even hidden files).
 * [[Media:Mnt_hgfs_shared.png]]
 * From here you'll have to change to the directories where your TRE files are kept.
 * This will vary from user to user.
 * If your unfamiliar with the Linux Command Line you'll have to do some homeowork:
 * Ryan's Tutorials
 * Linux Command Cheat Sheet
 * An A-Z Index of the Bash command line for Linux
 * To copy and paste via GUI do the following:
 * Go to your SWGEmu folder where your TRE files are.
 * [[media:11_step11.png]]
 * List of default TRE files: [[media:Tre_files.png]]
 * Paste files into your SWGEmu DevzEnv hardrive: swgemu/workspace/tre.
 * [[media:12_step11.png]]

Step 12 >> Setup Eclipse


 * This process imports projects into Eclipse.
 * This import will take considerable time.
 * [[media:13_step12.png]]

Step 13 >> Go for it


 * You can build here by typing Y.
 * Or just say N and build in Eclipse.
 * When finished buiding, open a terminal type run_dev.
 * [[media:14_step13.png]]
 * build_config screenshots
 * [[media:15_build_config.png]]
 * [[media:16_build_config.png]]
 * [[media:17_build_config.png]]
 * [[media:18_build_config.png]]
 * build_config completed when (gdb) prompt appears.
 * [[media:19_build_config.png]]