In my World of Warcraft Single Player Server Quick Start Guide, I showed how to install and run a WoW server on your home computer. But one of the main advantages I didn't go into is customizing the gameplay rules to better fit a single player experience. The leveling speed and economy need to be balanced when you are playing alone. By removing the social aspect, the game can really drag in areas that are easier to deal with when you have other people to play with.
As in the Quick Start Guide, I'll be using the Single Player Project Classics Collection for this guide, but the process is similar for other expansions as well. The configuration files are found in the SPP_Classics_Collection/Settings folder. There are folders for each expansion, so each can be configured separately. The main things that can be configured are the gameplay rules, the bots and the auction house. Each of these files have a lot of settings, but they are very well documented, so I'll highlight some of the more common things you may want to edit.
The first file is mangosd.conf. This controls the actual game rules and can have the most drastic impact on your play experience.
These settings generally just speed up the leveling process. They can be changed at any time, so if you don't like a certain zone or run out of quests for your level, just increase the XP rates and rush through it, then turn it back down when you get to the next zone.
Be aware that if you level too fast and start skipping quests, you can easily out level your gear, so make sure to increase the item and gold drop rates accordingly.
|Rate.XP.Kill, Rate.Pet.XP.Kill||The multiplier on the XP earned when you (or a pet) kills a mob. I recommend raising this whenever you run out of quests in a zone.|
|Rate.XP.Quest||Especially in zones with fewer quests, you can raise the quest XP you get to speed up the leveling.|
|Rate.Drop.Item.*||These affect the rate of items dropped from mobs. Can be useful if your gear is lagging behind your level.|
|Rate.Drop.Money||The multiplier on the amount of gold dropped from mobs. Since you don't have the full economy of a live server, you'll end up spending more money at vendors, and not making money on the auction house. You can balance this by increasing the gold you get from mobs.|
|Death.Ghost.RunSpeed.World||Increase the speed of your ghost for faster corpse runs.|
Professions can be quite a grind on a single player server, especially if you are leveling a party of characters. You can increase their leveling speed with these settings.
|Rate.Mining.Amount||The multiplier on the number of times you can mine an ore deposit.|
|Rate.Mining.Next||The chance to have another use of an ore deposit.|
|SkillGain.Crafting||The multiplier on the amount of skill points you earn when crafting items.|
|SkillGain.Gathering||The multiplier on the amount of skill points you earn when Skinning, Mining, Gathering Herbs or Fishing.|
|SkillFail.Loot.Fishing||Whether or not you get junk loot when you fail at fishing.|
AI Player Bots
The aiplayerbot.conf file controls the behavior of the random bots spawned by the server. The bots are largely fine with the default values, but you may want to adjust these values.
|AiPlayerbot.MinRandomBots||Minimum number of random bots to spawn. The amount you can spawn will largely depend on the speed of your computer.|
|AiPlayerbot.MaxRandomBots||Maximum number of random bots to spawn.|
|AiPlayerbot.RandomBotMinLevel||The minimum level of the bots that are spawned.|
|AiPlayerbot.RandomBotMaxLevel||The maximum level of the bots that are spawned.|
I recommend changing the MinLevel and MaxLevel of the bots to be in a tighter range around your characters while leveling so the spawned bots will be more useful to you. It's silly to waste processing power on bots that are way over or under your level, since they will be in completely different zones.
In order to apply these changes, you need to delete all the random bots that already exist and have the server create new bots in the level range you specified. Do this by setting AiPlayerbot.DeleteRandomBotAccounts = 1 and restart the server. When the server starts, it will delete all the existing random bots and create new ones. When you login, you will see that all the bots are at level 1. Don't worry, the server will randomize all of those bots into the level range you set over the course of a few minutes.
Remember to set AiPlayerbot.DeleteRandomBotAccounts = 0 once again, or else the server will recreate all the bots every time it starts up.
Auction House Bot
There are two auction house bots: the newer Ike3 bot and the original CMaNGOS bot. By default, the Ike3 bot is enabled, but I actually find the original bot far more useful.
At the top of ahbot.conf, you will need to enable the CMaNGOS bot and disable the Ike3 bot.
# Enable/Disable original AuctionHouseBot (CMaNGOS version) AuctionHouseBot.Seller.Enabled = 1 AuctionHouseBot.Buyer.Enabled = 1 # Replace with the new AhBot (ike3 version) AhBot.Enabled = 0
You will also have to set AuctionHouseBot.Seller.Enabled and AuctionHouseBot.Buyer.Enabled to 1 towards the bottom of the file, since these settings have been included twice.
Using the original bot lets you configure exactly what kind of items, and how many, will appear across the three different auction houses.
|AuctionHouseBot.Alliance.Items.Amount.Ratio||The percentage of items to appear in the Alliance auction house. (0 will disable it.)|
|AuctionHouseBot.Horde.Items.Amount.Ratio||The percentage of items to appear in the Horde auction house. (0 will disable it.)|
|AuctionHouseBot.Neutral.Items.Amount.Ratio||The percentage of items to appear in the Neutral auction house. (0 will disable it.)|
|AuctionHouseBot.Items.Amount.*||The total number of items per category that will appear across all the auction houses, based on the above percentages.|
|AuctionHouseBot.ItemsPerCycle.Boost||How many items will be added to the auction house when the auction house is empty. (Usually at server startup.)|
|AuctionHouseBot.ItemsPerCycle.Normal||How many items will be added in the normal cycle.|
When you are leveling up, it can be useful to limit the level range of items that appear in the auction house, so it contains only useful items to your current level.
|AuctionHouseBot.Items.ItemLevel.Min||Prevents items from being listed if their item level is too low.|
|AuctionHouseBot.Items.ItemLevel.Max||Prevents items from being listed if their item level is too high.|
|AuctionHouseBot.Items.ReqLevel.Min||Prevents items from being listed if their required level is too low.|
|AuctionHouseBot.Items.ReqLevel.Max||Prevents items from being listed if their required level is too high.|
|AuctionHouseBot.Items.ReqSkill.Min||Prevents items from being listed if their required skill level is too low.|
|AuctionHouseBot.Items.ReqSkill.Max||Prevents items from being listed if their required skill level is too high.|
You can fine tune this further for mounts, trade goods and containers with the following settings.
|AuctionHouseBot.Class.Misc.Mount.ReqLevel.Min||Prevents mounts from being listed if their required level is too low.|
|AuctionHouseBot.Class.Misc.Mount.ReqSkill.Max||Prevents mounts from being listed if their required skill level is too high.|
|AuctionHouseBot.Class.TradeGood.ItemLevel.Min||Prevents trade goods from being listed if their item level is too low.|
|AuctionHouseBot.Class.TradeGood.ItemLevel.Max||Prevents trade goods from being listed if their item level is too high.|
|AuctionHouseBot.Class.Container.ItemLevel.Min||Prevents containers from being listed if their item level is too low.|
|AuctionHouseBot.Class.Container.ItemLevel.Max||Prevents containers from being listed if their item level is too high.|
Just keep in mind that you will have to update these values every so often as you level.
This has been an overview of some of the more common configuration settings that are useful for a single player server. The config files are full of settings you can change with the options clearly documented. Just remember to make backup copies so that you can always go back to the original settings.
I hope this has been useful. Let me know if you have any comments or questions.
You may also be interested in these World of Warcraft related pages: