- Basic Start
- UserAddon
- Battle orders
- Team MF system
- Boss/area scripts
- Leeching section
- Special Scripts
- Guest scripts
- Town settings
- Potion settings
- Chicken
- Inventory lock configuration
- Belt configuration
- Pickit config
- Advanced automule settings
- Additional item info log settings
- Item Identification Settings
- Manager Item Log Screen
- Repair settings
- Gambling Config
- Cubing Config
- Runeword Config
- Public game options
- General Config
- Shrine Scanner
- MF Switch
- Fastmod Config
- Anti-hostile Config
- DClone Config
- Monster skip config
- Attack config
- Class specific config
- AutoSkill builds character
- AutoStat builds character
- AutoBuild System
- Advanced options
Character config files can be found in ...\d2bs\kolbot\libs\config...: Amazon.js, Assassin.js, Barbarian.js, Druid.js, Necromancer.js, Paladin.js, Sorceress.js. Choose your toon class file and copy it adding your toon name, like Sorceress.MyToon.js If you started without having a char config file, you'll see on the top white console the option to press < Home > and < Space > to create the char config. Close that profile and look for the file Class.MyToon.js, because you have to edit it before start running. Use your code editor of choice to edit kolbot files. See IDE-Setup for code editors
NOTE: To set up everything correctly you need to understand two simple commands used to configure!!!
-
first is true or false (case sensitive). example:
-
Scripts.Coldcrow = false; DISABLED
-
Scripts.BoneAsh = true; ENABLED
-
second is to comment out something, to do it put // in front of that line. example:
-
//Config.Recipes.push([Recipe.Gem, 560]); // perfect amethyst DISABLED
-
Config.Recipes.push([Recipe.Gem, 565]); // perfect topaz ENABLED
Character config file already contains lot's of explanations, please read them carefully.
To run other scripts change them to true, read carefully all notes and follow instructions.
By default script UserAddon.js is enabled. It's for manual play.
- Allows you to see more information about items, NPCs and players by placing the cursor over them.
- Shows item level, items in sockets, classid, code and magic item prefix/suffix numbers.
- Shows monster's classid, HP percent and resistances.
- Shows other players' gear.
To start botting you need to disable script UserAddon.js, to do it change line 17 to false. Now you can start boss/area scripts
Scripts.UserAddon = false; // !!!YOU MUST SET THIS TO FALSE IF YOU WANT TO RUN BOSS/AREA SCRIPTS!!!
Use this for 2+ characters (for example BO barb + sorc)
Scripts.BattleOrders = false;
Config.BattleOrders.Mode = 0; // 0 = give BO, 1 = get BO
Config.BattleOrders.Wait = false; // Idle until the player that received BO leaves.
Config.BattleOrders.Getters = []; // List of players to wait for before casting Battle Orders (mode 0). All players must be in the same area as the BOer.
It will be used the Catacombs 2 wp, see line 36 from BattleOrders.js script. Unfortunately this will make the BO once, at the beginning of the game.
A modded script for HC players, with barbarian staying whole game on a chosen wp, written by @nag0k you can find at https://pastebin.com/JTmWbqLf, and replace the default ...\libs\bots\BattleOrders.js. The barbarian will go to the chosen waypoint and will bo anyone that is nearby, no matter if they have bo stats or not. It will go back to town if monsters come closer to him, or when his mana is lower than the set value and visit a healer NPC, then return to continue giving bo. For using this script you have to add the other characters moving to that wp, from time to time.
Config.MFLeader = false; // Set to true if you have one or more MFHelpers. Opens TP and gives commands when doing normal MF runs.
Enable desired scripts, changing the value to true. If you want to change the order of the scripts, just change the order of their lines by using cut and paste. Scripts are executed from top to bottom.
// *** act 1 ***
Scripts.Corpsefire = false;
Config.Corpsefire.ClearDen = false;
Scripts.Mausoleum = false;
Config.Mausoleum.KillBloodRaven = false;
Config.Mausoleum.ClearCrypt = false;
Scripts.Rakanishu = false;
Config.Rakanishu.KillGriswold = true;
Scripts.UndergroundPassage = false;
Scripts.Coldcrow = false;
Scripts.Tristram = false;
Config.Tristram.WalkClear = false; // Disable teleport while clearing to protect leechers
Config.Tristram.PortalLeech = false; // Set to true to open a portal for leechers.
Scripts.Pit = false;
Config.Pit.ClearPit1 = true;
Scripts.Treehead = false;
Scripts.Smith = false;
Scripts.BoneAsh = false;
Scripts.Countess = false;
Config.Countess.KillGhosts = false;
Scripts.Andariel = false;
Scripts.Cows = false;
Config.MakeCows = false; // if set to true just opens cow portal but doesn't clear - useful to ensure maker never gets king killed
Config.KillKing = false; // MAKE SURE YOUR MAKER DOESN"T HAVE THIS SET TO TRUE!!!!
// *** act 2 ***
Scripts.Radament = false;
Scripts.Coldworm = false;
Config.Coldworm.KillBeetleburst = false;
Config.Coldworm.ClearMaggotLair = false; // Clear all 3 levels
Scripts.AncientTunnels = false;
Config.AncientTunnels.OpenChest = false; // Open special chest in Lost City
Config.AncientTunnels.KillDarkElder = false;
Scripts.Summoner = false;
Config.Summoner.FireEye = false;
Scripts.Tombs = false;
Scripts.Duriel = false;
// *** act 3 ***
Scripts.Stormtree = false;
Scripts.KurastTemples = false;
Scripts.Icehawk = false;
Scripts.Endugu = false;
Scripts.Travincal = false;
Config.Travincal.PortalLeech = false; // Set to true to open a portal for leechers.
Scripts.Mephisto = false;
Config.Mephisto.MoatTrick = false;
Config.Mephisto.KillCouncil = false;
Config.Mephisto.TakeRedPortal = true;
// *** act 4 ***
Scripts.OuterSteppes = false;
Scripts.Izual = false;
Scripts.Hephasto = false;
Config.Hephasto.ClearRiver = false; // Clear river after killing Hephasto
Config.Hephasto.ClearType = 0xF; // 0xF = skip normal, 0x7 = champions/bosses, 0 = all
Scripts.Diablo = false;
Config.Diablo.WalkClear = false; // Disable teleport while clearing to protect leechers
Config.Diablo.Entrance = true; // Start from entrance
Config.Diablo.JustViz = false; // Intended for classic sorc, kills Vizier only.
Config.Diablo.SealLeader = false; // Clear a safe spot around seals and invite leechers in. Leechers should run SealLeecher script.
Config.Diablo.Fast = false; // Runs diablo fast, focuses on clearing seal bosses rather than clearing path
Config.Diablo.SealWarning = "Leave the seals alone!";
Config.Diablo.EntranceTP = "Entrance TP up";
Config.Diablo.StarTP = "Star TP up";
Config.Diablo.DiabloMsg = "Diablo";
// *** act 5 ***
Scripts.Pindleskin = false;
Config.Pindleskin.UseWaypoint = false;
Config.Pindleskin.KillNihlathak = true;
Config.Pindleskin.ViperQuit = false; // End script if Tomb Vipers are found.
Scripts.Nihlathak = false;
Config.Nihlathak.ViperQuit = false; // End script if Tomb Vipers are found.
Config.Nihlathak.UseWaypoint = false; // Use waypoint to Nith, if false uses anya portal
Scripts.Eldritch = false;
Config.Eldritch.OpenChest = true;
Config.Eldritch.KillShenk = true;
Config.Eldritch.KillDacFarren = true;
Scripts.Eyeback = false;
Scripts.SharpTooth = false;
Scripts.ThreshSocket = false;
Scripts.Abaddon = false;
Scripts.Frozenstein = false;
Config.Frozenstein.ClearFrozenRiver = true;
Scripts.Bonesaw = false;
Config.Bonesaw.ClearDrifterCavern = false;
Scripts.Snapchip = false;
Config.Snapchip.ClearIcyCellar = true;
Scripts.Worldstone = false;
Scripts.Baal = false;
Config.Baal.HotTPMessage = "Hot TP!";
Config.Baal.SafeTPMessage = "Safe TP!";
Config.Baal.BaalMessage = "Baal!";
Config.Baal.SoulQuit = false; // End script if Souls (Undead Soul Killers) are found.
Config.Baal.DollQuit = false; // End script if Dolls (Undead Stigyan Dolls) are found.
Config.Baal.KillBaal = true; // Kill Baal. Leaves game after wave 5 if false.
As you probably already noticed some scripts can be done with leader and leecher or even more leechers.
This very useful option gives you many possibilities how to run your bot.
For magic finding team you can use MF Leader/Helper or scripts with leader leecher option like for example Tristram, Travincal. All leechers option you can find in leeching section.
To set it up properly your leader runs for example
Scripts.Tristram = true;
Config.Tristram.PortalLeech = true; // Set to true to open a portal for leechers.
For leecher you skip to leeching section and set
Scripts.TristramLeech = true;
If u want your character to finish game when other character exits you have to set Quit.List
Example:
Config.QuitList = ["MySorc", "MyDin"]; (case sensitive)
!!! Note !!! that MySorc and MyDin are Character's names not Profile's names!
In special scripts section you can find additonal scripts with extra features like:
- Scripts.WPGetter
- Scripts.GetKeys
- Scripts.OrgTorch
- Scripts.Rusher
- Scripts.Rushee
- Scripts.CrushTele
- Scripts.Questing
- Scripts.Gamble
- Scripts.Crafting
- Scripts.GhostBusters
- Scripts.ControlBot
- Scripts.IPHunter
- Scripts.KillDclone
- Scripts.ShopBot
- Scripts.ChestMania
- Scripts.ClearAnyArea
Take a closer look and check what you like. Remember that inside of each script you can find additional information. All scripts are stored in d2bs\kolbot\libs\bots.
Here is a place for scripts that you can add on your own. Who knows, maybe you can do some awesome script for us and share it!!
BaalAssistant //Used to leech or help in baal runs
Here you can set the percent of life to go to a healer, and the using of mercenary.
Here you can set the percent of life/mana when the potion to be used, but also how many potions to keep in inventory as a buffer.
-
this section prevents your character from death.
-
under designated percent of life your player will exit game.
-
be careful lowest settings can be painful for your experience (XP) in hell, because chicken it's not always 100% safe due to many circumstances like poor servers,low life of character, etc.
Config.Inventory[0] = [1,1,1,1,1,1,0,0,0,0];
Config.Inventory[1] = [1,1,1,1,1,1,0,0,0,0];
Config.Inventory[2] = [1,1,1,1,1,0,0,0,0,0];
Config.Inventory[3] = [1,1,1,1,1,0,0,0,0,0];
- 0 = item is locked and won't be moved. If item occupies more than one slot, ALL of those slots must be set to 0 to lock it in place.
- set 0s where your torch, annihilus and everything else you want to KEEP is.
- 1 = item is unlocked and will be dropped, stashed or sold.
- If you don't change the default values, the bot won't pick up & stash items.
Potion types for belt columns from left to right. Rejuvenation potions must always be rightmost. Supported potions are Healing ("hp"), Mana ("mp") and Rejuvenation ("rv") example:
Config.BeltColumn[0] = "hp";
Config.BeltColumn[1] = "mp";
Config.BeltColumn[2] = "rv";
Config.BeltColumn[3] = "rv";
You can set minimum amount of potions. If we have less, bot goes to vendor to purchase more. Set rejuvenation columns to 0, because they can't be bought! example: Config.MinColumn[0] = 3; Config.MinColumn[1] = 3; Config.MinColumn[2] = 0; Config.MinColumn[3] = 0;
All pickit files are stored in d2bs/kolbot/pickit/ By default kolton.nip and LLD.nip are included but not enabled.
To enable other nip file add a line here
// Config.PickitFiles.push("kolton.nip"); // uncomment to include
// Config.PickitFiles.push("LLD.nip"); // uncomment to include
// add under here
Config.PickitFiles.push("myPickit.nip"); // <-- your personalized pickit
There are several files to choose, you can also create and add your own or just edit these files:
- classic.nip
- follower.nip
- gold.nip
- keyorg.nip
- kolton.nip
- LLD.nip
- pots.nip
- shopbot.nip
- test.nip
Additional information about blizzhackers/pickits
- Trigger - Having an item that is on the list will initiate muling. Useful if you want to mule something immediately upon finding.
- Force - Items listed here will be muled even if they are ingredients for cubing.
- Exclude - Items listed here will be ignored and will not be muled. Items on Trigger or Force lists are prioritized over this list.
- List can either be set as string in pickit format and/or as number referring to item classids. Each entries are separated by commas.
- Example :
- Config.AutoMule.Trigger = [639, 640, "[type] == ring && [quality] == unique # [maxmana] == 20"];
- This will initiate muling when your character finds Ber, Jah, or SOJ.
- Config.AutoMule.Force = [561, 566, 571, 576, 581, 586, 601];
- This will mule perfect gems/skull during muling.
- Config.AutoMule.Exclude = ["[name] >= talrune && [name] <= solrune", "[name] >= 654 && [name] <= 657"];
- This will exclude muling of runes from tal through sol, and any essences.
- Config.AutoMule.Trigger = [639, 640, "[type] == ring && [quality] == unique # [maxmana] == 20"];
Config.AutoMule.Trigger = [];
Config.AutoMule.Force = [];
Config.AutoMule.Exclude = [];
Config.ItemInfo = false; // Log stashed, skipped (due to no space) or sold items.
Config.ItemInfoQuality = []; // The quality of sold items to log. See NTItemAlias.dbl for values. Example: Config.ItemInfoQuality = [6, 7, 8];
Config.CainID.Enable = false; // Identify items at Cain
Config.CainID.MinGold = 2500000; // Minimum gold (stash + character) to have in order to use Cain.
Config.CainID.MinUnids = 3; // Minimum number of unid items in order to use Cain.
Config.FieldID.Enabled = false; // Identify items while in the field Config.FieldID.PacketID = true; // use packets to speed up id process (recommended to use this) Config.FieldID.UsedSpace = 80; // how much space has been used before trying to field id, set to 0 to id after every item picked
Config.DroppedItemsAnnounce.Enable = false; // Announce Dropped Items to in-game newbs
Config.DroppedItemsAnnounce.Quality = []; // Quality of item to announce. See NTItemAlias.dbl for values.
Example: Config.DroppedItemsAnnounce.Quality = [6, 7, 8];
If you don't want to use Id Tome you can always try with Cain to id your items.
Config.CainID.Enable = true; // Identify items at Cain
- by default items identified at Cain won't be sold, but dropped, so add this workaround - use Cain and sell items.
Other option is to identify your drop at field.To activate it just enable this script.
Config.FieldID.Enabled = true; // Identify items in the field instead of going to town.
If you wanna hide some items from manager item's log, set those to false:
Config.LogKeys = false; // Log keys on item viewer
Config.LogOrgans = true; // Log organs on item viewer
Config.LogLowRunes = false; // Log low runes (El - Dol) on item viewer
Config.LogMiddleRunes = false; // Log middle runes (Hel - Mal) on item viewer
Config.LogHighRunes = true; // Log high runes (Ist - Zod) on item viewer
Config.LogLowGems = false; // Log low gems (chipped, flawed, normal) on item viewer
Config.LogHighGems = false; // Log high gems (flawless, perfect) on item viewer
Config.SkipLogging = []; // Custom log skip list. Set as three digit item code or classid. Example: ["tes", "ceh", 656, 657] will ignore logging of essences.
Config.ShowCubingInfo = true; // Show cubing messages on console
Here you set the durability percent that will trigger repair
Gamble is a source of awesome items worth of trying after lvl 88 (classic).
To enable script make it true.
Config.Gamble = true;
You have to set amount of gold when your bot starts to gamble and when it should stop.
Your start amount of gold is stash and character.
Now decide what you want to gamble and activate it.
Config.GambleItems.push(520); // Amulet ENABLED
//Config.GambleItems.push(522); // Ring DISABLED
for more items check libs/NTItemAlias.dbl Don't set stop gold amount too low if you use MiniShopBot, buy can fail. Gambling can be used as Gambling System. For more info about, see Gambling System Guide
All recipes are available in d2bs\kolbot\libs\config\Templates\Cubing.txt.
To enable script make it true.
Config.Cubing =true; // Set to true to enable cubing.
For example if u want to collect perfect skulls comment out (remove comment //) on line
//Config.Recipes.push([Recipe.Gem, "Flawless Skull"]); // Make Perfect Skull
All ingredients will be auto-picked, for classids check d2bs\kolbot\libs\NTItemAlias.dbl
To enable script make it true. Config.MakeRunewords = true; // Set to true to enable runeword making/rerolling
All recipes are available in d2bs\kolbot\libs\config\Templates\Runewords.txt. !!!NOTE!!! enhanced damage and enhanced defense on runewords are broken in the core right now Keep lines follow pickit format and any given runeword is tested vs ALL lines so you don't need to repeat them.
// If LocalChat is enabled, chat can be sent via 'sendCopyData' instead of BNET
// To allow 'say' to use BNET, use 'say("msg", true)', the 2nd parameter will force BNET
// LocalChat messages will only be visible on clients running on the same PC
Config.LocalChat.Enabled = false; // enable the LocalChat system
Config.LocalChat.Toggle = false; // optional, set to KEY value to toggle through modes 0, 1, 2
Config.LocalChat.Mode = 0; // 0 = disabled, 1 = chat from 'say' (recommended), 2 = all chat (for manual play)
// If Config.Leader is set, the bot will only accept invites from leader. If Config.PublicMode is not 0, Baal and Diablo script will open Town Portals.
Config.PublicMode = 0; // 1 = invite and accept, 2 = accept only, 3 = invite only, 0 = disable
// Party message settings. Each setting represents an array of messages that will be randomly chosen.
// $name, $level, $class and $killer are replaced by the player's name, level, class and killer
Config.Greetings = []; // Example: ["Hello, $name (level $level $class)"]
Config.DeathMessages = []; // Example: ["Watch out for that $killer, $name!"]
Config.Congratulations = []; // Example: ["Congrats on level $level, $name!"]
Config.ShitList = false; // Blacklist hostile players so they don't get invited to party.
Config.UnpartyShitlisted = false; // Leave party if someone invited a blacklisted player.
Here you can set if you want to invite to party, accept invitation or ignore and play alone. Config.PublicMode = 0; // 1 = invite, 2 = accept, 0 = disable. If Config.Leader is set, the bot will only accept invites from leader.
To blacklist hostile players so they don't get invited to party you have to enable script. Config.ShitList = true;
Default minimum time of game is set to 60 seconds. You can change it to what you want by changing number of seconds.
The max game time is set to infinity, to force your bot to leave game after desired number of seconds changed 0 to what you like. example: to finish game after 15 minutes
Config.MaxGameTime = 900;
Here you can also configure your ping settings in two ways example:
Config.PingQuit = [{Ping: 600, Duration: 10}, {Ping: 1500, Duration: 0}];
First condition is that bot will quit if your ping will be higher than 600 for 10 seconds, second condition is that will quit when ping is higher then 1500.
Rest of settings are self-explanatory
Shrine Scanner scans for shrines while moving. Put the shrine types in order of priority (from highest to lowest). For a list of types, see d2bs\kolbot\sdk\Shrines.txt.
example:
Config.ScanShrines = [15,12,13,]; where
- 12 skill shrine
- 13 mana recharge shrine (end of Config.ScanShrines - lowest priority)
- 15 experience shrine (begining of Config.ScanShrines - highest priority)
When you want to swap a weapon for MF you have to set on what Boss life % to switch weapons at. Set to 0 to disable. You have also to set a MF weapon slot.
While warden is off it's safe to use fastmod or full packet casting. Here are some technical explanations about differences between them by noah-:
-
Fastmod is a player STAT spoofing method, basically when your items give you say 100 fcr, the server sends you (the d2 client) information saying hey you have 100 fcr so do animations such that they match the 100 fcr frame, by using packets we can spoof receiving this packet from the server and trick the diablo 2 client into believing that it can cast at some rate --- when it casts at a faster rate that information is again packets transmitted from diablo 2 to blizzard's servers -- however this still relies on the game's method of casting skills with animation frames.
-
Packet casting this bypasses all animation code in diablo 2, this directly sends to the blizzard server the information that the diablo 2 client is casting a skill the blizzard server does not strictly enforce your item stats and how fast you can attack, they rely on the animation delay to keep things in sync because of this, we can "spam" the cast packet and more than likely we will get more hits than normally with animation because the blizzard server allows the attack packets +- some threshold of what your gear should allow you to
Packet casting does not alter your player stats, packet casting bypasses diablo 2 client code to cast skills by directly sending the request to blizzard d2gs servers.
Fastmod does not bypass the animation code of diablo 2 client, it spoofs the incomming packets to the diablo 2 client so that the client thinks it has better mods than it actually has based on the gear its using
Some things that are contingent upon how effective fastmod or packet casting can be include but are not limited to your base stats, internet connection speed and internet latency (measured by ping)
Using packet casting, it should technically cast as fast as possible by your connection, this means that fastmod would not affect you if you are using full packet casting.
Example of settings:
Config.FCR = 255; // 0 - disable, 1 to 255 - set value of faster cast rate
Config.FHR = 255; // 0 - disable, 1 to 255 - set value of faster hit recovery
Config.FBR = 255; // 0 - disable, 1 to 255 - set value of faster block recovery
Config.IAS = 255; // 0 - disable, 1 to 255 - set value of increased attack speed
Config.PacketCasting = 2; // 0 = disable, 1 = packet teleport, 2 = full packet casting.
In this section you can defend your bot against hostile players that want to kill you or ruin your game.
You enable script by setting to true.
Config.AntiHostile = true; // Enable anti-hostile
Now you have some possibilities depending on what you want like chicken to town, exit game or try to kill hostile player when spotted.
Bot goes to Palace Cellar level 3 and kills Diablo Clone.
Config.StopOnDClone = true; // Go to town and idle as soon as Diablo walks the Earth
Config.SoJWaitTime = 5; // Time in minutes to wait for another SoJ sale before leaving game. 0 = disabled
Config.KillDclone = true; // Go to Palace Cellar 3 and try to kill Diablo Clone. Pointless if you already have Annihilus.
Here you can set what kind of monster you would like to skip.
For example if you play classic cold sorceress, you have to skip all cold immunes.
example:
Config.SkipImmune = ["cold"];
You can also skip monsters with "Aura" and "Enchant", with exactly similiar way like for "Immune".
Uncomment the following line to always attempt to kill these bosses despite immunities and mods
Config.SkipException = [getLocaleString(2851), getLocaleString(2852), getLocaleString(2853)]; // vizier, de seis, infector
Attack patterns depends on your build and type of character.
You can find some example settings in d2bs\kolbot\libs\config\Templates\Attacks.txt.
If you would like to attack Unique/SuperUnique monsters first when clearing you have to change this script to true.
Config.BossPriority = true;
You can decide what kind of monster you want to attack by Clear.Type.
Config.ClearType = 0xF;
- 0xF = skip normal,
- 0x7 = champions/bosses,
- 0 = all
is additional option for class only
Config.LightningFuryDelay = 10; // Lightning fury interval in seconds. LF is treated as timed skill.
Config.UseInnerSight = true; // Use inner sight as a precast
Config.UseSlowMissiles = true; // Use slow missiles as a precast
Config.UseDecoy = true; // Use decoy with merc stomp
Config.SummonValkyrie = true; // Summon Valkyrie
Config.UseTraps = true; // Set to true to use traps
Config.Traps = [271, 271, 271, 276, 276]; // Skill IDs for traps to be cast on all mosters except act bosses.
Config.BossTraps = [271, 271, 271, 271, 271]; // Skill IDs for traps to be cast on act bosses.
Config.SummonShadow = "Master"; // 0 = don't summon, 1 or "Warrior" = summon Shadow Warrior, 2 or "Master" = summon Shadow Master
Config.UseFade = true; // Set to true to use Fade prebuff.
Config.UseBoS = false; // Set to true to use Burst of Speed prebuff. TODO: Casting in town + UseFade compatibility
Config.UseVenom = false; // Set to true to use Venom prebuff. Set to false if you don't have the skill and have Arachnid Mesh - it will cause connection drop otherwise.
Config.UseCloakofShadows = true; // Set to true to use Cloak of Shadows while fighting. Useful for blinding regular monsters/minions.
Config.UseBladeShield = false; // Set to true to use blade shield armor
Config.FindItem = false; // Use Find Item skill on corpses after clearing.
Config.FindItemSwitch = 0; // Find Item weapon slot - 0 = slot I, 1 = slot II
Config.SummonRaven = true;
Config.SummonAnimal = "Grizzly"; // 0 = disabled, 1 or "Spirit Wolf" = summon spirit wolf, 2 or "Dire Wolf" = summon dire wolf, 3 or "Grizzly" = summon grizzly
Config.SummonSpirit = "Oak Sage"; // 0 = disabled, 1 / "Oak Sage", 2 / "Heart of Wolverine", 3 / "Spirit of Barbs"
Config.SummonVine = "Poison Creeper"; // 0 = disabled, 1 / "Poison Creeper", 2 / "Carrion Vine", 3 / "Solar Creeper"
Config.Curse[0] = 0; // Boss curse. Use skill number or set to 0 to disable.
Config.Curse[1] = 0; // Other monsters curse. Use skill number or set to 0 to disable.
Config.ExplodeCorpses = 0; // Explode corpses. Use skill number or 0 to disable. 74 = Corpse Explosion, 83 = Poison Explosion
Config.Golem = "None"; // Golem. 0 or "None" = don't summon, 1 or "Clay" = Clay Golem, 2 or "Blood" = Blood Golem, 3 or "Fire" = Fire Golem
Config.Skeletons = 0; // Number of skeletons to raise. Set to "max" to auto detect, set to 0 to disable.
Config.SkeletonMages = 0; // Number of skeleton mages to raise. Set to "max" to auto detect, set to 0 to disable.
Config.Revives = 0; // Number of revives to raise. Set to "max" to auto detect, set to 0 to disable.
Config.PoisonNovaDelay = 2; // Delay between two Poison Novas in seconds.
Config.ActiveSummon = false; // Raise dead between each attack. If false, it will raise after clearing a spot.
Config.ReviveUnstackable = true; // Revive monsters that can move freely after you teleport.
Config.IronGolemChicken = 30; // Exit game if Iron Golem's life is less or equal to designated percent.
Config.AvoidDolls = false; // Try to attack Soul Killers from a greater distance with hammerdins.
Config.Vigor = true; // Swith to Vigor when running
Config.Redemption = [50, 50]; // Switch to Redemption after clearing an area if under designated life or mana. Format: [lifepercent, manapercent]
Config.CastStatic = 60; // Cast static until the target is at designated life percent. 100 = disabled.
Config.StaticList = ["Diablo"]; // List of monster NAMES to static. Example: Config.StaticList = ["Andariel", "Diablo", "Baal"];
Config.UseTelekinesis = true; // Use telekinesis on units that allow it. Example: Shrines, Waypoints, Chests, and Portals
Config.UseEnergyShield = false; // set to true to use energy shield if its available
Config.UseColdArmor = true; // use armor skills, uses skill ids or set to true to let the bot decide based on skill level or false to disable completely
it is based on array defined by the user and it replaces AutoBuild's skill system.
AutoSkill will automatically spend skill points and it can also allocate any prerequisite skills as required.
See libs/config/Templates/AutoSkillExampleBuilds.txt for Config.AutoSkill.Build examples.
it is based on array defined by the user and this will replace AutoBuild's stat system.
See libs/config/Templates/AutoStatExampleBuilds.txt for Config.AutoStat.Build examples.
See /d2bs/kolbot/libs/config/Builds/README.txt for instructions
Every option belonging to the Config object can be overridden for each individual script.
Format:
Scripts.SomeScript = {changed_properties};
true is replaced by an object containing the properties you wish to change. The properties are listed without "Config." in front of them.
For example, disabling dodge for Mephisto script would look like this:
Scripts.Mephisto = {Dodge: false};
Multiple properties can be changed like this:
Scripts.Mephisto = {Dodge: false, TownHP: 60, MFSwitchPercent: 25};
The changes will revert back when the script ends.
There's several ways to name a character config file. List in order of priority (formats higher in the list will override lower ones):
- Custom Config (see below)
- Class.Profile.js - Profile matches D2Bot# profile. This makes it possible to assign different configs to the same character. Just make 2 profiles that use the same character and 2 character config in this format. Examples: Paladin.MFer.js, Paladin.Rusher.js
- Realm.Class.Charname.js - This is used when botting on multiple realms with same character name. Examples: Europe.Sorceress.MyChar.js, USEast.Sorceress.MyChar.js
- Class.Charname.js - This is the default format. Examples: Sorceress.MyChar.js, Sorceress.MyOtherChar.js
- Profile.js - Similar to 1 but without Class prefix. This is used for generic characters where class doesn't matter (Follower, Wakka, AutoBaal etc.). Examples: Follower1.js, Follower2.js
Custom Config allows you to specify which profile(s) will use which config file.
You can do this by editing _CustomConfig.js
The format is:
"Config_Filename_Without_Extension": ["array", "of", "profiles"]
This means we can make groups of profiles run from certain character configs. For example, ShopBot profiles don't need individual profiles, so we can do something like this:
"ShopConfig": ["Shopper1", "Shopper2", "Shopper3", "Shopper4"]
This will make all 4 profiles run off the same character config - ShopConfig.js Multiple entries are separated by commas like so:
"ShopConfig": ["Shopper1", "Shopper2", "Shopper3", "Shopper4"], "Leecher": ["Leech 1", "Leech 2", "Leech 3"]