├── README.md └── d2bs ├── .gitkeep └── kolbot ├── D2BotFollow.dbj ├── D2BotLead.dbj ├── libs ├── bots │ └── AutoSmurf.js ├── common │ └── Config.js └── config │ ├── Barbarian.XXXX1.js │ ├── Barbarian.XXXX2.js │ ├── Builds │ ├── Amazon.Javazon.js │ ├── Assassin.Trapsin.js │ ├── Barbarian.BattleOrders.js │ ├── Druid.Oak.js │ ├── Necromancer.Summon.js │ ├── Paladin.BHammer.js │ ├── Sorceress.Blizzard.js │ ├── Sorceress.ChainL.js │ └── Sorceress.Meteor.js │ ├── Paladin.XXXX1.js │ ├── Paladin.XXXX2.js │ ├── Sorceress.XXXX1(follow).js │ ├── Sorceress.XXXX1(leader).js │ ├── Sorceress.XXXX2(follow).js │ └── Sorceress.XXXX2(leader).js └── pickit ├── .gitkeep └── autosmurf ├── barbarian.xpac.nip ├── charms.nip ├── magic.nip ├── merc.nip ├── paladin.xpac.nip ├── rare.nip ├── runes.nip ├── runeword.nip ├── sell.nip ├── set.nip ├── sorceress.xpac.nip ├── sorcsmurf.xpac.nip ├── unique.nip ├── white.nip ├── white1.nip └── white2.nip /README.md: -------------------------------------------------------------------------------- 1 | # AutoSmurf 2 | 3 | **Special thanks** to [@Dark-f](https://github.com/Dark-f/) who made a great job with the original [@JeanMax](https://github.com/JeanMax/) - [autosmurf script](https://github.com/JeanMax/AutoSmurf), updating it and sharing the changes to public. 4 | 5 | - it's a script for leveling a whole new team, starting from nothing (level 0). 6 | - it should work with any class, assuming you've got at least one sorceress in the team to teleport, and one barbarian for casting battle orders and shout, in order to raise the levels of life, mana and defense, ensuring the whole team survival. 7 | - it is made to be used with **AutoBuild** kolbot feature. 8 | 9 | ### Prerequisites 10 | 11 | - kolbot : https://github.com/blizzhackers/kolbot 12 | - check the [kolbot downloading guide](https://github.com/blizzhackers/documentation/blob/master/d2bot/Download.md#download) 13 | 14 | ### Starting 15 | 16 | - For the beginning, you should download the files and copy/extract them in a new and fresh kolbot folder. 17 | - Copy all downloaded files into their correct location. By example, you need to copy the **/libs/common/Config.js** to **/libs/common/** directory and overwrite the default **Config.js** file. 18 | - At least you should copy: 19 | - ...\d2bs\kolbot\libs\bots\AutoSmurf.js 20 | - ...\d2bs\kolbot\libs\common\Config.js 21 | - ...\d2bs\kolbot\libs\config\ 22 | - ...\kolbot\pickit\autosmurf\ 23 | - The alternative for Config.js is to add, at the end of the default file, the variables needed for autosmurf config, so at the bottom it should look: 24 | ```javascript 25 | }, 26 | AutoSmurf: { 27 | TeamSize: 1, 28 | TeleportingSorc: [], 29 | BoBarb: "", 30 | OtherChars: [] 31 | } 32 | }; 33 | ``` 34 | 35 | ### Starter scripts 36 | 37 | 1. Use the basic configuration for local leader and followers. For a fast config you don’t need touch the leader starter file (D2BotLead.dbj), or maybe only to increase the default value of **CrashDelay: 5,** to a higher value than 60 seconds. 38 | 39 | 2. In the follower's starter script (D2BotFollow.dbj) you should modify the lines 31-33: 40 | ```javascript 41 | var JoinSettings = { 42 | "As1": ["all"] 43 | }; 44 | ``` 45 | **As1** = the sorceress leader profile, which will open the game, then will open the TPs in-game 46 | 47 | **all** = the followers which will join the game and will follow in-game the leaders's tps 48 | 49 | 3. optionally you can set in the 48th line of D2BotFollow.js the delays for joining the game. 50 | 51 | 4. if you wanna randomize the starter scripts timers - the included D2BotFollow.dbj and D2BotLead.dbj have the randomized timers. In D2BotFollow.dbj, you should complete the changes mentioned at steps 2 and 3. 52 | 53 | ### Configuration 54 | 55 | 1. when your bot team get the baalLvlnm, the AutoSmurf will enter on Hell difficulty and you should use XXXX2 char-config files, so that you should copy those files using your char names for XXXX2, the same like in XXXX1 case. 56 | 57 | 2. in XXXX2 files, Config.AutoEquip = false is by default, so further more your bot should be equiped manually by yourself. 58 | 59 | ### Leader 60 | 61 | 1. Leader bot should be a sorceress class, and if your char name is **AbC**, you should copy /config/Sorceress.XXXX1(leader).js as **Sorceress.AbC.js**. 62 | 63 | 2. complete the lines 16-21 with the required character and profile names: 64 | ```javascript 65 | Scripts.AutoSmurf = true; 66 | Config.AutoSmurf.TeamSize = 4; 67 | Config.AutoSmurf.TeleportingSorc = "AbC"; // your leader sorceress charname. 68 | Config.AutoSmurf.BoBarb = "BcD"; // boBarb charname 69 | Config.AutoSmurf.OtherChars = ["CdE", "DeF"]; // all team charnames, excluding the leader and boBarb 70 | Config.AutoSmurf.AllTeamProfiles = ["As1","As2","As3","As4"]; // the whole team PROFILE names 71 | ``` 72 | 73 | 2. complete the leeching section - line 139 with the **profile names**, according to line 140 (Config.QuitListMode = 1). Leader which will quit the game in case of a follower's exit (maybe chicken) will keep the whole team on the same quests/levels. 74 | ```javascript 75 | Config.QuitList = ["As2", "As3", "As4"]; // List of character names to quit with. 76 | Config.QuitListMode = 1; // 0 = use character names; 1 = use profile names (all profiles must run on the same computer). 77 | Config.QuitListDelay = [3, 5]; // Quit the game with random delay in case of using Config.QuitList. Example: Config.QuitListDelay = [1, 10]; 78 | ``` 79 | 80 | 3. complete the line ~664 with the desired autobuild template. For sorceress you can choose "Blizzard", "ChainL", "Meteor" 81 | ``` 82 | Config.AutoBuild.Template = "Blizzard"; 83 | ``` 84 | 85 | ### Followers 86 | 87 | 1. you should copy the follower configuration files: 88 | - the 2nd required **BcD** follower is BO barbarian, so you should copy /config/Barbarian.XXXX1.js as **Barbarian.BcD.js**. 89 | - the 3rd follower **CdE** can be a paladin, so you should copy /config/Paladin.XXXX1.js as **Paladin.CdE.js**. 90 | - the 4th follower **DeF** could be a sorceress, so you should copy /config/Sorceress.XXXX1(follow).js as **Sorceress.DeF.js**. 91 | 92 | 2. complete the lines 16-21, like in the leader's case. 93 | ```javascript 94 | Scripts.AutoSmurf = true; 95 | Config.AutoSmurf.TeamSize = 4; 96 | Config.AutoSmurf.TeleportingSorc = "AbC"; // your leader sorceress charname. 97 | Config.AutoSmurf.BoBarb = "BcD"; // boBarb charname 98 | Config.AutoSmurf.OtherChars = ["CdE", "DeF"]; // all team charnames, excluding the leader and boBarb 99 | Config.AutoSmurf.AllTeamProfiles = ["As1","As2","As3","As4"]; // the whole team PROFILE names 100 | ``` 101 | 102 | 3. complete the leeching section - lines 138-140 with the sorceress leader char name and its running profile: 103 | ```javascript 104 | Config.Leader = "AbC"; // Leader's ingame character name. Leave blank to try auto-detection (works in AutoBaal, Wakka, MFHelper) 105 | Config.QuitList = ["As1"]; // List of character names to quit with. 106 | Config.QuitListMode = 1; // 0 = use character names; 1 = use profile names (all profiles must run on the same computer). 107 | ``` 108 | line 141 should have different quit delays for every follower 109 | ``` 110 | Config.QuitListDelay = [3, 5]; 111 | Config.QuitListDelay = [5, 7]; 112 | Config.QuitListDelay = [8, 10]; 113 | ``` 114 | 115 | 4. Around lines ~655-665 you must specify the build of the bot, accordingly to your existing class build templates: 116 | - 2nd follower barbarian - "BattleOrders" 117 | - 3rd follower paladin - "BHammer" 118 | - 4th follower sorceress - "ChainL". 119 | 120 | ### Other settings 121 | 122 | 1. The pickit files may be not suitable for you, so that you can change them according to your desires. But, you can keep the **sell.nip** and **white1.nip** which can help your bot to earn more money and build some runewords. 123 | 124 | 2. The char config file sets that your bot will use the mercenaries, and the mercenary will be changed when bot arrive in act2 normal/nightmare difficulty. Autosmurf script has no autoequip code for mercenary, so you must equip manually your mercenary items. If you don't want to use Mercs, you should set Config.UseMerc = false. 125 | 126 | 3. When your bot team completed Rite of Passage in Nightmare and Hell, the AutoSmurf was transfered into MF mode. But killing baal was restricted by charLvls which are baalLvlnm and mfLvlHell. 127 | 128 | 4. You may reset the values of [lines 11-26 in AutoSmurf.js](https://github.com/blizzhackers-d2/autosmurf/blob/master/d2bs/kolbot/libs/bots/AutoSmurf.js#L11-L26). These values restrict your bot level to begin some quests, like "tombsLvl = 26" (line 14) means that your bot level must be more than 26 and your bot will begin to kill Duriel. Because the beginner bots equips mostly low quality items, if you want to reduce the number of chicken exits, the suggestion is to not change the default values. The default values will keep your bot safety, but on lower areas the leveling up speed is a bit slower. 129 | 130 | 5. You do not need to give any gold to your bot on first running of the AutoSmurf. 131 | 132 | 133 | ### NOTES: 134 | 1. When your bot team completed Rite of Passage in Nightmare and Hell, the AutoSmurf will be transfered into MF mode, and teamMF is not a silenced script, so you should set the LocalChat active (true) in mode 1 or 2. 135 | 136 | 2. Javazon and Druid Autobuilds are unfinished, Amazon and Druid will only auto-build till lvl 36, and after that you must set skills and stats manually, or you can edit amazon/druid autobuilds for your needs. 137 | -------------------------------------------------------------------------------- /d2bs/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/blizzhackers/autosmurf/b87582af07df7ecf234bf66aae5466633fdd9f6d/d2bs/.gitkeep -------------------------------------------------------------------------------- /d2bs/kolbot/libs/common/Config.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @filename Config.js 3 | * @author kolton 4 | * @desc config loading and default config values storage 5 | */ 6 | 7 | var Scripts = {}; 8 | 9 | var Config = { 10 | init: function (notify) { 11 | var i, n, 12 | configFilename = "", 13 | classes = ["Amazon", "Sorceress", "Necromancer", "Paladin", "Barbarian", "Druid", "Assassin"]; 14 | 15 | for (i = 0; i < 5; i += 1) { 16 | switch (i) { 17 | case 0: // Custom config 18 | if (!isIncluded("config/_customconfig.js")) { 19 | include("config/_customconfig.js"); 20 | } 21 | 22 | for (n in CustomConfig) { 23 | if (CustomConfig.hasOwnProperty(n)) { 24 | if (CustomConfig[n].indexOf(me.profile) > -1) { 25 | if (notify) { 26 | print("ÿc2Loading custom config: ÿc9" + n + ".js"); 27 | } 28 | 29 | configFilename = n + ".js"; 30 | 31 | break; 32 | } 33 | } 34 | } 35 | 36 | break; 37 | case 1:// Class.Profile.js 38 | configFilename = classes[me.classid] + "." + me.profile + ".js"; 39 | 40 | break; 41 | case 2: // Realm.Class.Charname.js 42 | configFilename = me.realm + "." + classes[me.classid] + "." + me.charname + ".js"; 43 | 44 | break; 45 | case 3: // Class.Charname.js 46 | configFilename = classes[me.classid] + "." + me.charname + ".js"; 47 | 48 | break; 49 | case 4: // Profile.js 50 | configFilename = me.profile + ".js"; 51 | 52 | break; 53 | } 54 | 55 | if (configFilename && FileTools.exists("libs/config/" + configFilename)) { 56 | break; 57 | } 58 | } 59 | 60 | if (FileTools.exists("libs/config/" + configFilename)) { 61 | try { 62 | if (!include("config/" + configFilename)) { 63 | throw new Error(); 64 | } 65 | } catch (e1) { 66 | throw new Error("Failed to load character config."); 67 | } 68 | } else { 69 | if (notify) { 70 | print("ÿc1" + classes[me.classid] + "." + me.charname + ".js not found!"); // Use the primary format 71 | print("ÿc1Loading default config."); 72 | } 73 | 74 | // Try to find default config 75 | if (!FileTools.exists("libs/config/" + classes[me.classid] + ".js")) { 76 | D2Bot.printToConsole("Not going well? Read the guides: https://github.com/blizzhackers/documentation"); 77 | throw new Error("ÿc1Default config not found. \nÿc9 Try reading the kolbot guides."); 78 | } 79 | 80 | try { 81 | if (!include("config/" + classes[me.classid] + ".js")) { 82 | throw new Error(); 83 | } 84 | } catch (e) { 85 | throw new Error("ÿc1Failed to load default config."); 86 | } 87 | } 88 | 89 | try { 90 | LoadConfig.call(); 91 | } catch (e2) { 92 | if (notify) { 93 | print("ÿc8Error in " + e2.fileName.substring(e2.fileName.lastIndexOf("\\") + 1, e2.fileName.length) + "(line " + e2.lineNumber + "): " + e2.message); 94 | 95 | throw new Error("Config.init: Error in character config."); 96 | } 97 | } 98 | 99 | if (Config.Silence && !Config.LocalChat.Enabled) { 100 | // Override the say function with print, so it just gets printed to console 101 | global._say = global.say; 102 | global.say = (what) => print('Tryed to say: '+what); 103 | } 104 | 105 | try { 106 | if (Config.AutoBuild.Enabled === true && !isIncluded("common/AutoBuild.js") && include("common/AutoBuild.js")) { 107 | AutoBuild.initialize(); 108 | } 109 | } catch (e3) { 110 | print("ÿc8Error in libs/common/AutoBuild.js (AutoBuild system is not active!)"); 111 | print(e3.toSource()); 112 | } 113 | }, 114 | 115 | // Time 116 | StartDelay: 0, 117 | PickDelay: 0, 118 | AreaDelay: 0, 119 | MinGameTime: 0, 120 | MaxGameTime: 0, 121 | 122 | // Healing and chicken 123 | LifeChicken: 0, 124 | ManaChicken: 0, 125 | UseHP: 0, 126 | UseMP: 0, 127 | UseRejuvHP: 0, 128 | UseRejuvMP: 0, 129 | UseMercHP: 0, 130 | UseMercRejuv: 0, 131 | MercChicken: 0, 132 | IronGolemChicken: 0, 133 | HealHP: 0, 134 | HealMP: 0, 135 | HealStatus: false, 136 | TownHP: 0, 137 | TownMP: 0, 138 | 139 | // General 140 | AutoMap: false, 141 | LastMessage: "", 142 | UseMerc: false, 143 | MercWatch: false, 144 | LowGold: 0, 145 | StashGold: 0, 146 | FieldID: false, 147 | DroppedItemsAnnounce: { 148 | Enable: false, 149 | Quality: [], 150 | LogToOOG: false, 151 | OOGQuality: [] 152 | }, 153 | CainID: { 154 | Enable: false, 155 | MinGold: 0, 156 | MinUnids: 0 157 | }, 158 | Inventory: [ 159 | [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 160 | [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 161 | [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], 162 | [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 163 | ], 164 | LocalChat: { 165 | Enabled: false, 166 | Toggle: false, 167 | Mode: 0 168 | }, 169 | Silence: false, 170 | PublicMode: false, 171 | PartyAfterScript: false, 172 | Greetings: [], 173 | DeathMessages: [], 174 | Congratulations: [], 175 | ShitList: false, 176 | UnpartyShitlisted: false, 177 | Leader: "", 178 | QuitList: [], 179 | QuitListMode: 0, 180 | QuitListDelay: [], 181 | HPBuffer: 0, 182 | MPBuffer: 0, 183 | RejuvBuffer: 0, 184 | PickRange: 40, 185 | MakeRoom: true, 186 | ClearInvOnStart: true, 187 | FastPick: false, 188 | OpenChests: false, 189 | PickitFiles: [], 190 | BeltColumn: [], 191 | MinColumn: [], 192 | SkipEnchant: [], 193 | SkipImmune: [], 194 | SkipAura: [], 195 | SkipException: [], 196 | ScanShrines: [], 197 | Debug: false, 198 | 199 | AutoMule: { 200 | Trigger: [], 201 | Force: [], 202 | Exclude: [] 203 | }, 204 | 205 | ItemInfo: false, 206 | ItemInfoQuality: [], 207 | 208 | LogKeys: false, 209 | LogOrgans: true, 210 | LogLowRunes: false, 211 | LogMiddleRunes: false, 212 | LogHighRunes: true, 213 | LogLowGems: false, 214 | LogHighGems: false, 215 | SkipLogging: [], 216 | ShowCubingInfo: true, 217 | 218 | Cubing: false, 219 | CubeRepair: false, 220 | RepairPercent: 40, 221 | Recipes: [], 222 | MakeRunewords: false, 223 | Runewords: [], 224 | KeepRunewords: [], 225 | Gamble: false, 226 | GambleItems: [], 227 | GambleGoldStart: 0, 228 | GambleGoldStop: 0, 229 | MiniShopBot: false, 230 | TeleSwitch: false, 231 | MFSwitchPercent: 0, 232 | PrimarySlot: -1, 233 | LogExperience: false, 234 | TownCheck: false, 235 | PingQuit: [{Ping: 0, Duration: 0}], 236 | PacketShopping: false, 237 | 238 | // Fastmod 239 | FCR: 0, 240 | FHR: 0, 241 | FBR: 0, 242 | IAS: 0, 243 | PacketCasting: 0, 244 | WaypointMenu: true, 245 | 246 | // Anti-hostile 247 | AntiHostile: false, 248 | RandomPrecast: false, 249 | HostileAction: 0, 250 | TownOnHostile: false, 251 | ViperCheck: false, 252 | 253 | // DClone 254 | StopOnDClone: false, 255 | SoJWaitTime: 0, 256 | KillDclone: false, 257 | DCloneQuit: false, 258 | 259 | // Experimental 260 | FastParty: false, 261 | AutoEquip: false, 262 | 263 | // GameData 264 | ChampionBias: 60, 265 | 266 | // Attack specific 267 | Dodge: false, 268 | DodgeRange: 15, 269 | DodgeHP: 100, 270 | AttackSkill: [], 271 | LowManaSkill: [], 272 | CustomAttack: {}, 273 | TeleStomp: false, 274 | NoTele: false, 275 | ClearType: false, 276 | ClearPath: false, 277 | BossPriority: false, 278 | MaxAttackCount: 300, 279 | 280 | // Amazon specific 281 | LightningFuryDelay: 0, 282 | SummonValkyrie: false, 283 | 284 | // Sorceress specific 285 | UseTelekinesis: false, 286 | CastStatic: false, 287 | StaticList: [], 288 | 289 | // Necromancer specific 290 | Golem: 0, 291 | ActiveSummon: false, 292 | Skeletons: 0, 293 | SkeletonMages: 0, 294 | Revives: 0, 295 | ReviveUnstackable: false, 296 | PoisonNovaDelay: 2000, 297 | Curse: [], 298 | ExplodeCorpses: 0, 299 | 300 | // Paladin speficic 301 | Redemption: [0, 0], 302 | Charge: false, 303 | Vigor: false, 304 | AvoidDolls: false, 305 | 306 | // Barbarian specific 307 | FindItem: false, 308 | FindItemSwitch: false, 309 | 310 | // Druid specific 311 | Wereform: 0, 312 | SummonRaven: 0, 313 | SummonAnimal: 0, 314 | SummonVine: 0, 315 | SummonSpirit: 0, 316 | 317 | // Assassin specific 318 | UseTraps: false, 319 | Traps: [], 320 | BossTraps: [], 321 | UseFade: false, 322 | UseBoS: false, 323 | UseVenom: false, 324 | UseCloakofShadows: false, 325 | AggressiveCloak: false, 326 | SummonShadow: false, 327 | 328 | // Custom Attack 329 | CustomClassAttack: '', // If set it loads common/Attack/[CustomClassAttack].js 330 | 331 | // Script specific 332 | MFLeader: false, 333 | Mausoleum: { 334 | KillBloodRaven: false, 335 | ClearCrypt: false 336 | }, 337 | Eldritch: { 338 | OpenChest: false, 339 | KillSharptooth: false, 340 | KillShenk: false, 341 | KillDacFarren: false 342 | }, 343 | Pindleskin: { 344 | UseWaypoint: false, 345 | KillNihlathak: false, 346 | ViperQuit: false 347 | }, 348 | Nihlathak: { 349 | ViperQuit: false 350 | }, 351 | Pit: { 352 | ClearPath: false, 353 | ClearPit1: false 354 | }, 355 | Snapchip: { 356 | ClearIcyCellar: false 357 | }, 358 | Frozenstein: { 359 | ClearFrozenRiver: false 360 | }, 361 | Rakanishu: { 362 | KillGriswold: false 363 | }, 364 | AutoBaal: { 365 | Leader: "", 366 | FindShrine: false, 367 | LeechSpot: [15115, 5050], 368 | LongRangeSupport: false 369 | }, 370 | KurastChests: { 371 | LowerKurast: false, 372 | Bazaar: false, 373 | Sewers1: false, 374 | Sewers2: false 375 | }, 376 | Countess: { 377 | KillGhosts: false 378 | }, 379 | Baal: { 380 | DollQuit: false, 381 | SoulQuit: false, 382 | KillBaal: false, 383 | HotTPMessage: "Hot TP!", 384 | SafeTPMessage: "Safe TP!", 385 | BaalMessage: "Baal!" 386 | }, 387 | BaalAssistant: { 388 | KillNihlathak: false, 389 | FastChaos: false, 390 | Wait: 120, 391 | Helper: false, 392 | GetShrine: false, 393 | GetShrineWaitForHotTP: false, 394 | DollQuit: false, 395 | SoulQuit: false, 396 | SkipTP: false, 397 | WaitForSafeTP: false, 398 | KillBaal: false, 399 | HotTPMessage: [], 400 | SafeTPMessage: [], 401 | BaalMessage: [], 402 | NextGameMessage: [] 403 | }, 404 | BaalHelper: { 405 | Wait: 120, 406 | KillNihlathak: false, 407 | FastChaos: false, 408 | DollQuit: false, 409 | KillBaal: false, 410 | SkipTP: false 411 | }, 412 | Corpsefire: { 413 | ClearDen: false 414 | }, 415 | Diablo: { 416 | Entrance: false, 417 | SealWarning: "Leave the seals alone!", 418 | EntranceTP: "Entrance TP up", 419 | StarTP: "Star TP up", 420 | DiabloMsg: "Diablo", 421 | WalkClear: false, 422 | SealOrder: ["vizier", "seis", "infector"] 423 | }, 424 | DiabloHelper: { 425 | Wait: 120, 426 | Entrance: false, 427 | SkipIfBaal: false, 428 | SkipTP: false, 429 | OpenSeals: false, 430 | SafePrecast: true, 431 | SealOrder: ["vizier", "seis", "infector"], 432 | RecheckSeals: false 433 | }, 434 | MFHelper: { 435 | BreakClearLevel: true 436 | }, 437 | BattleOrders: { 438 | Mode: 0, 439 | Getters: [], 440 | Idle: false, 441 | QuitOnFailure: false, 442 | SkipIfTardy: true, 443 | Wait: 10 444 | }, 445 | BoBarbHelper: { 446 | Mode: -1, 447 | Wp: 35 448 | }, 449 | Enchant: { 450 | Triggers: ["chant", "cows", "wps"], 451 | GetLeg: false, 452 | AutoChant: false, 453 | GameLength: 20 454 | }, 455 | IPHunter: { 456 | IPList: [], 457 | GameLength: 3 458 | }, 459 | Follower: { 460 | Leader: "" 461 | }, 462 | Mephisto: { 463 | MoatTrick: false, 464 | KillCouncil: false, 465 | TakeRedPortal: false 466 | }, 467 | ShopBot: { 468 | ScanIDs: [], 469 | ShopNPC: "anya", 470 | CycleDelay: 0, 471 | QuitOnMatch: false 472 | }, 473 | Coldworm: { 474 | KillBeetleburst: false, 475 | ClearMaggotLair: false 476 | }, 477 | Summoner: { 478 | FireEye: false 479 | }, 480 | AncientTunnels: { 481 | OpenChest: false, 482 | KillDarkElder: false 483 | }, 484 | OrgTorch: { 485 | WaitForKeys: false, 486 | WaitTimeout: false, 487 | UseSalvation: false, 488 | GetFade: false, 489 | MakeTorch: true, 490 | AntidotesToChug: 0 491 | }, 492 | Synch: { 493 | WaitFor: [] 494 | }, 495 | TristramLeech: { 496 | Leader: "", 497 | Wait: 120 498 | }, 499 | TravincalLeech: { 500 | Leader: "", 501 | Helper: false, 502 | Wait: 120 503 | }, 504 | Tristram: { 505 | PortalLeech: false, 506 | WalkClear: false 507 | }, 508 | Travincal: { 509 | PortalLeech: false 510 | }, 511 | SkillStat: { 512 | Skills: [] 513 | }, 514 | Bonesaw: { 515 | ClearDrifterCavern: false 516 | }, 517 | ChestMania: { 518 | Act1: [], 519 | Act2: [], 520 | Act3: [], 521 | Act4: [], 522 | Act5: [] 523 | }, 524 | ClearAnyArea: { 525 | AreaList: [] 526 | }, 527 | Rusher: { 528 | WaitPlayerCount: 0, 529 | Radament: false, 530 | LamEsen: false, 531 | Izual: false, 532 | Shenk: false, 533 | Anya: false, 534 | LastRun: "" 535 | }, 536 | Rushee: { 537 | Quester: false, 538 | Bumper: false 539 | }, 540 | AutoSkill: { 541 | Enabled: false, 542 | Build: [], 543 | Save: 0 544 | }, 545 | AutoStat: { 546 | Enabled: false, 547 | Build: [], 548 | Save: 0, 549 | BlockChance: 0, 550 | UseBulk: true 551 | }, 552 | AutoBuild: { 553 | Enabled: false, 554 | Template: "", 555 | Verbose: false, 556 | DebugMode: false 557 | }, 558 | AutoSmurf: { 559 | TeamSize: 1, 560 | TeleportingSorc: [], 561 | BoBarb: "", 562 | OtherChars: [] 563 | } 564 | }; 565 | -------------------------------------------------------------------------------- /d2bs/kolbot/libs/config/Builds/Assassin.Trapsin.js: -------------------------------------------------------------------------------- 1 | /** Trap Assassin Build 2 | * 3 | * Instructions: See /d2bs/kolbot/libs/config/Builds/README.txt 4 | * 5 | * Skill IDs: See /d2bs/kolbot/sdk/skills.txt for a list of skill IDs. 6 | * 7 | * Stat IDs: 8 | * 9 | * Strength = 0 10 | * Energy = 1 11 | * Dexterity = 2 12 | * Vitality = 3 13 | * 14 | */ 15 | js_strict(true); 16 | 17 | if (!isIncluded("common/Cubing.js")) { include("common/Cubing.js"); }; 18 | if (!isIncluded("common/Prototypes.js")) { include("common/Prototypes.js"); }; 19 | if (!isIncluded("common/Runewords.js")) { include("common/Runewords.js"); }; 20 | 21 | var AutoBuildTemplate = { 22 | 23 | 1: { 24 | Update: function () { 25 | Config.TownCheck = false; // Don't go to town for more potions 26 | Config.StashGold = 200; 27 | Config.AttackSkill = [-1, 0, -1, 0, -1, -1, -1]; 28 | Config.LowManaSkill = [0,0]; 29 | Config.OpenChests = true; // Open chests. Controls key buying. 30 | Config.LogExperience = false; // Print experience statistics in the manager. 31 | Config.StashGold = 100; // Minimum amount of gold to stash. 32 | Config.ScanShrines = [15, 13, 12, 14, 7, 6, 2, 1]; 33 | Config.BeltColumn = ["hp", "hp", "hp", "mp"]; // Keep tons of health potions! 34 | //Config.PickitFiles.push("belowlevelseven.nip"); // Pick up normal armor, belts, etc. Keep ID scrolls and TP scrolls. 35 | Config.OpenChests = true; // Might as well open em. 36 | Config.Cubing = false; // Don't cube yet! 37 | Config.UseFade = false; 38 | Config.UseBoS = false; 39 | 40 | // 20 Strength 41 | 42 | } 43 | }, 44 | 45 | 2: { 46 | SkillPoints: [251], 47 | StatPoints: [2,2,2,2,2], 48 | Update: function () { 49 | Config.AttackSkill = [-1,251,-1,251,-1,-1,-1]; 50 | } 51 | }, 52 | 53 | 3: { 54 | SkillPoints: [253], 55 | StatPoints: [2,2,2,1,1], 56 | Update: function () { 57 | 58 | } 59 | }, 60 | 61 | 4: { 62 | SkillPoints: [252], 63 | StatPoints: [2,2,0,0,0], 64 | Update: function () { 65 | 66 | } 67 | }, 68 | 69 | 5: { 70 | SkillPoints: [-1], 71 | StatPoints: [0,0,0,0,0], 72 | Update: function () { 73 | 74 | } 75 | }, 76 | 77 | 6: { 78 | SkillPoints: [256,258], 79 | StatPoints: [3,3,3,1,1], 80 | Update: function () { 81 | Config.UseBoS = true; 82 | Config.AttackSkill = [-1,256,-1,256,-1,-1,-1]; 83 | } 84 | }, 85 | 86 | 7: { 87 | SkillPoints: [256], 88 | StatPoints: [3,3,3,1,1], 89 | Update: function () { 90 | 91 | } 92 | }, 93 | 94 | 8: { 95 | SkillPoints: [256], 96 | StatPoints: [3,3,3,3,3], 97 | Update: function () { 98 | 99 | } 100 | }, 101 | 102 | 9: { 103 | SkillPoints: [256], 104 | StatPoints: [3,3,3,1,1], 105 | Update: function () { 106 | 107 | } 108 | }, 109 | 110 | 10: { 111 | SkillPoints: [256], 112 | StatPoints: [3,3,3,3,1], 113 | Update: function () { 114 | 115 | } 116 | }, 117 | 118 | 11: { 119 | SkillPoints: [256], 120 | StatPoints: [3,3,3,3,1], 121 | Update: function () { 122 | 123 | } 124 | }, 125 | 126 | 12: { 127 | SkillPoints: [261,264], 128 | StatPoints: [3,3,1,1,1], 129 | Update: function () { 130 | Config.Traps = [261, 261, 261, -1, -1]; // Skill IDs for traps to be cast on all mosters except act bosses. 131 | Config.BossTraps = [261, 261, 261, 261, 261]; // Skill IDs for traps to be cast on act bosses. 132 | Config.HPBuffer = 8; // Number of healing potions to keep in inventory. 133 | Config.BeltColumn = ["hp", "hp", "mp", "mp"]; // Keep tons of health potions! 134 | Config.UseCloakofShadows = true; 135 | Config.MinColumn[0] = 1; 136 | Config.MinColumn[1] = 1; 137 | Config.MinColumn[2] = 1; 138 | Config.MinColumn[3] = 1; 139 | } 140 | }, 141 | 142 | 13: { 143 | SkillPoints: [263], 144 | StatPoints: [0,0,0,0,0], 145 | Update: function () { 146 | 147 | } 148 | }, 149 | 150 | 14: { 151 | SkillPoints: [261], 152 | StatPoints: [0,0,0,0,0], 153 | Update: function () { 154 | 155 | } 156 | }, 157 | 158 | 15: { 159 | SkillPoints: [261], 160 | StatPoints: [3,3,1,1,0], 161 | Update: function () { 162 | 163 | } 164 | }, 165 | 166 | 16: { 167 | SkillPoints: [261], 168 | StatPoints: [3,3,1,1,0], 169 | Update: function () { 170 | Config.HPBuffer = 2; // Number of healing potions to keep in inventory. 171 | Config.MPBuffer = 6; // Number of mana potions to keep in inventory. 172 | Config.TownCheck = true; // Go to town if out of potions 173 | } 174 | }, 175 | 176 | 17: { 177 | SkillPoints: [261], 178 | StatPoints: [0,0,0,0,0], 179 | Update: function () { 180 | 181 | } 182 | }, 183 | 184 | 18: { 185 | SkillPoints: [268], 186 | StatPoints: [3,3,3,3,1], 187 | Update: function () { 188 | Config.SummonShadow = "Warrior"; 189 | Config.Dodge = true; 190 | Config.DodgeRange = 15; 191 | Config.Cubing = true; 192 | Config.MakeRunewords = true; 193 | Config.Runewords.push([Runeword.Spirit, ("CrystalSword" || "BroadSword")]); 194 | Config.Recipes.push([Recipe.Rune, "Tal Rune"]); 195 | Config.Recipes.push([Recipe.Rune, "Ral Rune"]); 196 | Config.Recipes.push([Recipe.Rune, "Ort Rune"]); 197 | Config.Recipes.push([Recipe.Rune, "Thul Rune"]); 198 | Config.Recipes.push([Recipe.Rune, "Amn Rune"]); 199 | } 200 | }, 201 | 202 | 19: { 203 | SkillPoints: [267], 204 | StatPoints: [3,3,3,0,1], 205 | Update: function () { 206 | Config.UseBoS = false; 207 | Config.UseFade = true; 208 | } 209 | }, 210 | 211 | 20: { 212 | SkillPoints: [261], 213 | StatPoints: [0,0,0,0,0], 214 | Update: function () { 215 | 216 | } 217 | }, 218 | 219 | 21: { 220 | SkillPoints: [261], 221 | StatPoints: [0,0,0,0,0], 222 | Update: function () { 223 | 224 | } 225 | }, 226 | 227 | 22: { 228 | SkillPoints: [261], 229 | StatPoints: [3,3,3,3,1], 230 | Update: function () { 231 | 232 | } 233 | }, 234 | 235 | 23: { 236 | SkillPoints: [-1], 237 | StatPoints: [3,3,3,3,1], 238 | Update: function () { 239 | 240 | } 241 | }, 242 | 243 | 24: { 244 | SkillPoints: [271,273], 245 | StatPoints: [1,1,1,1,1], 246 | Update: function () { 247 | Config.AttackSkill = [-1,256,-1,256,273,-1,-1]; 248 | Config.LowManaSkill = [-1,-1]; 249 | Config.Traps = [271, 271, 271, 271, 271]; 250 | Config.BossTraps = [271, 271, 271, 271, 271]; 251 | } 252 | }, 253 | 254 | 25: { 255 | SkillPoints: [271], 256 | StatPoints: [3,3,3,3,1], 257 | Update: function () { 258 | 259 | } 260 | }, 261 | 262 | 26: { 263 | SkillPoints: [271], 264 | StatPoints: [3,3,3,3,1], 265 | Update: function () { 266 | 267 | } 268 | }, 269 | 270 | 27: { 271 | SkillPoints: [271], 272 | StatPoints: [3,3,3,3,1], 273 | Update: function () { 274 | 275 | } 276 | }, 277 | 278 | 28: { 279 | SkillPoints: [271], 280 | StatPoints: [3,3,3,3,3], 281 | Update: function () { 282 | 283 | } 284 | }, 285 | 286 | 29: { 287 | SkillPoints: [271], 288 | StatPoints: [3,3,3,3,3], 289 | Update: function () { 290 | 291 | } 292 | }, 293 | 294 | 30: { 295 | SkillPoints: [276,279,271], 296 | StatPoints: [3,3,3,3,3], 297 | Update: function () { 298 | Config.SummonShadow = "Master"; 299 | Config.Traps = [271, 271, 271, 276, 276]; 300 | Config.BossTraps = [271, 271, 271, 271, 271]; 301 | } 302 | }, 303 | 304 | 31: { 305 | SkillPoints: [271], 306 | StatPoints: [0,0,0,0,0], 307 | Update: function () { 308 | 309 | } 310 | }, 311 | 312 | 32: { 313 | SkillPoints: [271], 314 | StatPoints: [3,3,3,0,0], 315 | Update: function () { 316 | 317 | } 318 | }, 319 | 320 | 33: { 321 | SkillPoints: [271], 322 | StatPoints: [3,3,3,0,0], 323 | Update: function () { 324 | 325 | } 326 | }, 327 | 328 | 34: { 329 | SkillPoints: [271], 330 | StatPoints: [3,3,3,0,0], 331 | Update: function () { 332 | 333 | } 334 | }, 335 | 336 | 35: { 337 | SkillPoints: [271], 338 | StatPoints: [3,3,3,0,0], 339 | Update: function () { 340 | 341 | } 342 | }, 343 | 344 | 36: { 345 | SkillPoints: [271], 346 | StatPoints: [3,3,3,0,0], 347 | Update: function () { 348 | 349 | } 350 | }, 351 | 352 | 37: { 353 | SkillPoints: [271], 354 | StatPoints: [3,3,3,0,0], 355 | Update: function () { 356 | 357 | } 358 | }, 359 | 360 | 38: { 361 | SkillPoints: [271], 362 | StatPoints: [3,3,3,0,0], 363 | Update: function () { 364 | 365 | } 366 | }, 367 | 368 | 39: { 369 | SkillPoints: [271], 370 | StatPoints: [3,3,3,0,0], 371 | Update: function () { 372 | 373 | } 374 | }, 375 | 376 | 40: { 377 | SkillPoints: [271], 378 | StatPoints: [3,3,3,0,0], 379 | Update: function () { 380 | 381 | } 382 | }, 383 | 384 | 41: { 385 | SkillPoints: [271], 386 | StatPoints: [3,3,3,0,0], 387 | Update: function () { 388 | 389 | } 390 | }, 391 | 392 | 42: { 393 | SkillPoints: [271], 394 | StatPoints: [3,3,3,3,3], 395 | Update: function () { 396 | 397 | } 398 | }, 399 | 400 | 43: { 401 | SkillPoints: [271], 402 | StatPoints: [3,3,3,3,3], 403 | Update: function () { 404 | // Lightning Sentry Maxed 405 | } 406 | }, 407 | 408 | 44: { 409 | SkillPoints: [276], 410 | StatPoints: [3,3,3,3,3], 411 | Update: function () { 412 | 413 | } 414 | }, 415 | 416 | 45: { 417 | SkillPoints: [276], 418 | StatPoints: [0,0,0,0,0], 419 | Update: function () { 420 | 421 | } 422 | }, 423 | 424 | 46: { 425 | SkillPoints: [276], 426 | StatPoints: [0,0,0,0,0], 427 | Update: function () { 428 | 429 | } 430 | }, 431 | 432 | 47: { 433 | SkillPoints: [276], 434 | StatPoints: [0,0,0,0,0], 435 | Update: function () { 436 | 437 | } 438 | }, 439 | 440 | 48: { 441 | SkillPoints: [276], 442 | StatPoints: [3,3,3,3,3], 443 | Update: function () { 444 | 445 | } 446 | }, 447 | 448 | 49: { 449 | SkillPoints: [276], 450 | StatPoints: [3,3,3,3,3], 451 | Update: function () { 452 | 453 | } 454 | }, 455 | 456 | 50: { 457 | SkillPoints: [276], 458 | StatPoints: [3,3,3,3,3], 459 | Update: function () { 460 | 461 | } 462 | }, 463 | 464 | 51: { 465 | SkillPoints: [276], 466 | StatPoints: [3,3,3,3,3], 467 | Update: function () { 468 | 469 | } 470 | }, 471 | 472 | 52: { 473 | SkillPoints: [276], 474 | StatPoints: [3,3,3,3,3], 475 | Update: function () { 476 | 477 | } 478 | }, 479 | 480 | 53: { 481 | SkillPoints: [276], 482 | StatPoints: [3,3,3,3,3], 483 | Update: function () { 484 | 485 | } 486 | }, 487 | 488 | 54: { 489 | SkillPoints: [276], 490 | StatPoints: [3,3,3,3,3], 491 | Update: function () { 492 | 493 | } 494 | }, 495 | 496 | 55: { 497 | SkillPoints: [276], 498 | StatPoints: [3,3,3,3,3], 499 | Update: function () { 500 | 501 | } 502 | }, 503 | 504 | 56: { 505 | SkillPoints: [276], 506 | StatPoints: [3,3,3,3,3], 507 | Update: function () { 508 | 509 | } 510 | }, 511 | 512 | 57: { 513 | SkillPoints: [276], 514 | StatPoints: [3,3,3,3,3], 515 | Update: function () { 516 | 517 | } 518 | }, 519 | 520 | 58: { 521 | SkillPoints: [276], 522 | StatPoints: [3,3,3,3,3], 523 | Update: function () { 524 | 525 | } 526 | }, 527 | 528 | 59: { 529 | SkillPoints: [276], 530 | StatPoints: [3,3,3,3,3], 531 | Update: function () { 532 | 533 | } 534 | }, 535 | 536 | 60: { 537 | SkillPoints: [276], 538 | StatPoints: [3,3,3,3,3], 539 | Update: function () { 540 | 541 | } 542 | }, 543 | 544 | 61: { 545 | SkillPoints: [276], 546 | StatPoints: [3,3,3,3,3], 547 | Update: function () { 548 | 549 | } 550 | }, 551 | 552 | 62: { 553 | SkillPoints: [276], 554 | StatPoints: [3,3,3,3,3], 555 | Update: function () { 556 | 557 | } 558 | }, 559 | 560 | 63: { 561 | SkillPoints: [276], 562 | StatPoints: [3,3,3,3,3], 563 | Update: function () { 564 | // Death Sentry Maxed 565 | } 566 | }, 567 | 568 | 64: { 569 | SkillPoints: [251], 570 | StatPoints: [3,3,3,3,3], 571 | Update: function () { 572 | 573 | } 574 | }, 575 | 576 | 65: { 577 | SkillPoints: [256], 578 | StatPoints: [3,3,3,3,3], 579 | Update: function () { 580 | 581 | } 582 | }, 583 | 584 | 66: { 585 | SkillPoints: [251], 586 | StatPoints: [3,3,3,3,3], 587 | Update: function () { 588 | 589 | } 590 | }, 591 | 592 | 67: { 593 | SkillPoints: [256], 594 | StatPoints: [3,3,3,3,3], 595 | Update: function () { 596 | 597 | } 598 | }, 599 | 600 | 68: { 601 | SkillPoints: [251], 602 | StatPoints: [3,3,3,3,3], 603 | Update: function () { 604 | 605 | } 606 | }, 607 | 608 | 69: { 609 | SkillPoints: [256], 610 | StatPoints: [3,3,3,3,3], 611 | Update: function () { 612 | 613 | } 614 | }, 615 | 616 | 70: { 617 | SkillPoints: [251], 618 | StatPoints: [3,3,3,3,3], 619 | Update: function () { 620 | 621 | } 622 | }, 623 | 624 | 71: { 625 | SkillPoints: [256], 626 | StatPoints: [3,3,3,3,3], 627 | Update: function () { 628 | 629 | } 630 | }, 631 | 632 | 72: { 633 | SkillPoints: [251], 634 | StatPoints: [3,3,3,3,3], 635 | Update: function () { 636 | 637 | } 638 | }, 639 | 640 | 73: { 641 | SkillPoints: [256], 642 | StatPoints: [3,3,3,3,3], 643 | Update: function () { 644 | 645 | } 646 | }, 647 | 648 | 74: { 649 | SkillPoints: [251], 650 | StatPoints: [3,3,3,3,3], 651 | Update: function () { 652 | 653 | } 654 | }, 655 | 656 | 75: { 657 | SkillPoints: [256], 658 | StatPoints: [3,3,3,3,3], 659 | Update: function () { 660 | 661 | } 662 | }, 663 | 664 | 76: { 665 | SkillPoints: [-1], 666 | StatPoints: [3,3,3,3,3], 667 | Update: function () { 668 | 669 | } 670 | }, 671 | 672 | 77: { 673 | SkillPoints: [-1], 674 | StatPoints: [3,3,3,3,3], 675 | Update: function () { 676 | 677 | } 678 | }, 679 | 680 | 78: { 681 | SkillPoints: [-1], 682 | StatPoints: [3,3,3,3,3], 683 | Update: function () { 684 | 685 | } 686 | }, 687 | 688 | 79: { 689 | SkillPoints: [-1], 690 | StatPoints: [3,3,3,3,3], 691 | Update: function () { 692 | 693 | } 694 | }, 695 | 696 | 80: { 697 | SkillPoints: [-1], 698 | StatPoints: [3,3,3,3,3], 699 | Update: function () { 700 | 701 | } 702 | }, 703 | 704 | 81: { 705 | SkillPoints: [-1], 706 | StatPoints: [3,3,3,3,3], 707 | Update: function () { 708 | 709 | } 710 | }, 711 | 712 | 82: { 713 | SkillPoints: [-1], 714 | StatPoints: [3,3,3,3,3], 715 | Update: function () { 716 | 717 | } 718 | }, 719 | 720 | 83: { 721 | SkillPoints: [-1], 722 | StatPoints: [3,3,3,3,3], 723 | Update: function () { 724 | 725 | } 726 | }, 727 | 728 | 84: { 729 | SkillPoints: [-1], 730 | StatPoints: [3,3,3,3,3], 731 | Update: function () { 732 | 733 | } 734 | }, 735 | 736 | 85: { 737 | SkillPoints: [-1], 738 | StatPoints: [3,3,3,3,3], 739 | Update: function () { 740 | 741 | } 742 | }, 743 | 744 | 86: { 745 | SkillPoints: [-1], 746 | StatPoints: [3,3,3,3,3], 747 | Update: function () { 748 | 749 | } 750 | }, 751 | 752 | 87: { 753 | SkillPoints: [-1], 754 | StatPoints: [3,3,3,3,3], 755 | Update: function () { 756 | 757 | } 758 | }, 759 | 760 | 88: { 761 | SkillPoints: [-1], 762 | StatPoints: [3,3,3,3,3], 763 | Update: function () { 764 | 765 | } 766 | }, 767 | 768 | 89: { 769 | SkillPoints: [-1], 770 | StatPoints: [3,3,3,3,3], 771 | Update: function () { 772 | 773 | } 774 | }, 775 | 776 | 90: { 777 | SkillPoints: [-1], 778 | StatPoints: [3,3,3,3,3], 779 | Update: function () { 780 | 781 | } 782 | }, 783 | 784 | 91: { 785 | SkillPoints: [-1], 786 | StatPoints: [3,3,3,3,3], 787 | Update: function () { 788 | 789 | } 790 | }, 791 | 792 | 92: { 793 | SkillPoints: [-1], 794 | StatPoints: [3,3,3,3,3], 795 | Update: function () { 796 | 797 | } 798 | }, 799 | 800 | 93: { 801 | SkillPoints: [-1], 802 | StatPoints: [3,3,3,3,3], 803 | Update: function () { 804 | 805 | } 806 | }, 807 | 808 | 94: { 809 | SkillPoints: [-1], 810 | StatPoints: [3,3,3,3,3], 811 | Update: function () { 812 | 813 | } 814 | }, 815 | 816 | 95: { 817 | SkillPoints: [-1], 818 | StatPoints: [3,3,3,3,3], 819 | Update: function () { 820 | 821 | } 822 | }, 823 | 824 | 96: { 825 | SkillPoints: [-1], 826 | StatPoints: [3,3,3,3,3], 827 | Update: function () { 828 | 829 | } 830 | }, 831 | 832 | 97: { 833 | SkillPoints: [-1], 834 | StatPoints: [3,3,3,3,3], 835 | Update: function () { 836 | 837 | } 838 | }, 839 | 840 | 98: { 841 | SkillPoints: [-1], 842 | StatPoints: [3,3,3,3,3], 843 | Update: function () { 844 | 845 | } 846 | }, 847 | 848 | 99: { 849 | SkillPoints: [-1], 850 | StatPoints: [3,3,3,3,3], 851 | Update: function () { 852 | 853 | } 854 | } 855 | }; -------------------------------------------------------------------------------- /d2bs/kolbot/libs/config/Builds/Necromancer.Summon.js: -------------------------------------------------------------------------------- 1 | /** Summoner Necromancer Build 2 | * 3 | * Instructions: See /d2bs/kolbot/libs/config/Builds/README.txt 4 | * 5 | * Skill IDs: See /d2bs/kolbot/sdk/skills.txt for a list of skill IDs. 6 | * 7 | * Stat IDs: 8 | * 9 | * Strength = 0 10 | * Energy = 1 11 | * Dexterity = 2 12 | * Vitality = 3 13 | * 14 | 15 | Finished Char Build: 16 | 17 | Stats Base Stats 18 | ------------ ---------- 19 | Strength (0) : 15 (no points) 15 20 | Energy (1) : 20 (no points) 20 21 | Dexterity(2) : 20 (no points) 20 22 | Vitality (3) : 200 (175 points used) 25 23 | 24 | Skills Levelreq SkillID TotalPoints 25 | ------------ -------- ------- ----------- 26 | xxx 1 xx 1 - Done @ level 27 | xxx 1 xx 1 - Done @ level 28 | */ 29 | js_strict(true); 30 | 31 | if (!isIncluded("common/Cubing.js")) { include("common/Cubing.js"); }; 32 | if (!isIncluded("common/Prototypes.js")) { include("common/Prototypes.js"); }; 33 | if (!isIncluded("common/Runewords.js")) { include("common/Runewords.js"); }; 34 | 35 | 36 | var AutoBuildTemplate = { 37 | 38 | 1: { 39 | //SkillPoints: [-1], // This doesn't matter. We don't have skill points to spend at lvl 1] 40 | //StatPoints: [-1,-1,-1,-1,-1], // This doesn't matter. We don't have stat points to spend at lvl 1 41 | Update: function () { 42 | Config.TownCheck = false; // Don't go to town for more potions 43 | Config.StashGold = 200; // Minimum amount of gold to stash. 44 | Config.AttackSkill = [-1, 0, 0, 0, 0, -1, -1]; 45 | Config.LowManaSkill = [0, 0]; 46 | Config.ScanShrines = [1, 15, 13, 12, 14, 7, 6, 3, 2]; 47 | Config.BeltColumn = ["hp", "hp", "hp", "hp"]; // Keep tons of health potions! 48 | Config.MinColumn = [0, 0, 0, 0]; 49 | Config.Skeletons = "max"; // Number of skeletons to raise. Set to "max" to auto detect, set to 0 to disable. 50 | Config.SkeletonMages = "max"; // Number of skeleton mages to raise. Set to "max" to auto detect, set to 0 to disable. 51 | Config.Revives = "max"; // Number of revives to raise. Set to "max" to auto detect, set to 0 to disable. 52 | Config.ActiveSummon = true; // Raise dead between each attack. If false, it will raise after clearing a spot. 53 | Config.ReviveUnstackable = true; // Revive monsters that can move freely after you teleport. 54 | //Config.PickitFiles.push("belowlevelseven.nip"); // Pick up normal armor, belts, etc. Keep ID scrolls and TP scrolls. 55 | Config.OpenChests = true; // Might as well open em. 56 | Config.Cubing = false; // Don't cube yet! 57 | } 58 | }, 59 | 60 | 2: { 61 | SkillPoints: [70], 62 | StatPoints: [0,0,0,0,0], 63 | Update: function () { 64 | 65 | } 66 | }, 67 | 68 | 3: { 69 | SkillPoints: [66], 70 | StatPoints: [0,0,0,0,0], 71 | Update: function () { 72 | Config.Dodge = true; 73 | Config.Curse[0] = 66; // Boss curse. 74 | 75 | } 76 | }, 77 | 78 | 4: { 79 | SkillPoints: [70], 80 | StatPoints: [0,0,0,0,0], 81 | Update: function () { 82 | } 83 | }, 84 | 85 | 5: { 86 | SkillPoints: [68], 87 | StatPoints: [3,3,3,0,0], // Enough Strength for Studded Leather 88 | Update: function () { 89 | 90 | } 91 | }, 92 | 93 | 6: { 94 | SkillPoints: [75], 95 | StatPoints: [3,3,3,3,1], 96 | Update: function () { 97 | Config.Golem = "Clay"; 98 | 99 | } 100 | }, 101 | 102 | 7: { 103 | SkillPoints: [67,70], 104 | StatPoints: [3,3,1,1,1], 105 | Update: function () { 106 | } 107 | }, 108 | 109 | 8: { 110 | SkillPoints: [70], 111 | StatPoints: [3,3,3,1,1], 112 | Update: function () { 113 | 114 | } 115 | }, 116 | 117 | 9: { 118 | SkillPoints: [70], 119 | StatPoints: [3,3,3,1,1], 120 | Update: function () { 121 | 122 | } 123 | }, 124 | 125 | 10: { 126 | SkillPoints: [70], 127 | StatPoints: [3,3,3,1,1], 128 | Update: function () { 129 | 130 | } 131 | }, 132 | 133 | 11: { 134 | SkillPoints: [70], 135 | StatPoints: [1,1,1,1,1], 136 | Update: function () { 137 | 138 | } 139 | }, 140 | 141 | 12: { 142 | SkillPoints: [74], 143 | StatPoints: [3,3,3,3,3], 144 | Update: function () { 145 | Config.StashGold = 1000; 146 | Config.BeltColumn = ["hp", "hp", "mp", "mp"]; 147 | Config.ExplodeCorpses = 74; // Explode corpses. Use skill number or 0 to disable. 74 = Corpse Explosion, 83 = Poison Explosion 148 | Config.HPBuffer = 4; // Number of healing potions to keep in inventory. 149 | Config.Curse[1] = 66; // Other monsters curse. Use skill number or set to 0 to disable. 150 | } 151 | }, 152 | 153 | 13: { 154 | SkillPoints: [80], 155 | StatPoints: [3,3,3,1,1], 156 | Update: function () { 157 | 158 | } 159 | }, 160 | 161 | 14: { 162 | SkillPoints: [70], 163 | StatPoints: [3,3,3,0,1], 164 | Update: function () { 165 | 166 | } 167 | }, 168 | 169 | 15: { 170 | SkillPoints: [70], 171 | StatPoints: [3,3,3,0,1], 172 | Update: function () { 173 | Config.HPBuffer = 2; // Number of healing potions to keep in inventory. 174 | Config.MPBuffer = 8; // Number of mana potions to keep in inventory. 175 | Config.Dodge = true; 176 | Config.DodgeRange = 15; 177 | Config.AttackSkill = [-1, 67, -1, 67, -1, -1, -1]; 178 | } 179 | }, 180 | 181 | 16: { 182 | SkillPoints: [70], 183 | StatPoints: [3,3,3,0,1], 184 | Update: function () { 185 | Config.MinColumn[0] = 1; 186 | Config.MinColumn[1] = 1; 187 | Config.MinColumn[2] = 1; 188 | Config.MinColumn[3] = 1; 189 | } 190 | }, 191 | 192 | 17: { 193 | SkillPoints: [70], 194 | StatPoints: [3,3,3,0,1], 195 | Update: function () { 196 | 197 | } 198 | }, 199 | 200 | 18: { 201 | SkillPoints: [70], 202 | StatPoints: [3,3,3,0,1], 203 | Update: function () { 204 | Config.TownCheck = true; // Go to town if out of potions 205 | Config.Cubing = true; 206 | Config.MakeRunewords = true; 207 | Config.Runewords.push([Runeword.Spirit, ("CrystalSword" || "BroadSword")]); 208 | Config.Runewords.push([Runeword.Lore, ("Helm" || "FullHelm")]); 209 | Config.Recipes.push([Recipe.Rune, "Tal Rune"]); 210 | Config.Recipes.push([Recipe.Rune, "Ral Rune"]); 211 | Config.Recipes.push([Recipe.Rune, "Ort Rune"]); 212 | Config.Recipes.push([Recipe.Rune, "Thul Rune"]); 213 | Config.Recipes.push([Recipe.Rune, "Amn Rune"]); 214 | } 215 | }, 216 | 217 | 19: { 218 | SkillPoints: [70], 219 | StatPoints: [3,3,3,0,1], 220 | Update: function () { 221 | } 222 | }, 223 | 224 | 20: { 225 | SkillPoints: [72], 226 | StatPoints: [3,3,3,1,1], 227 | Update: function () { 228 | Config.Curse[1] = -1; // Other monsters curse. Use skill number or set to 0 to disable. 229 | } 230 | }, 231 | 232 | 21: { 233 | SkillPoints: [77], 234 | StatPoints: [0,0,0,0,0], 235 | Update: function () { 236 | } 237 | }, 238 | 239 | 22: { 240 | SkillPoints: [79], 241 | StatPoints: [0,0,0,0,0], 242 | Update: function () { 243 | } 244 | }, 245 | 246 | 23: { 247 | SkillPoints: [-1], 248 | StatPoints: [3,3,3,0,1], 249 | Update: function () { 250 | 251 | } 252 | }, 253 | 254 | 24: { 255 | SkillPoints: [87,89], 256 | StatPoints: [3,3,3,0,1], 257 | Update: function () { 258 | Config.Curse[0] = 87; // Boss curse. Use skill number or set to 0 to disable. 259 | Config.Curse[1] = 87; // Other monsters curse. Use skill number or set to 0 to disable. 260 | } 261 | }, 262 | 263 | 25: { 264 | SkillPoints: [70], 265 | StatPoints: [1,3,3,3,3], 266 | Update: function () { 267 | } 268 | }, 269 | 270 | 26: { 271 | SkillPoints: [70], 272 | StatPoints: [1,3,3,3,3], 273 | Update: function () { 274 | } 275 | }, 276 | 277 | 27: { 278 | SkillPoints: [70], 279 | StatPoints: [1,3,3,3,3], 280 | Update: function () { 281 | } 282 | }, 283 | 284 | 28: { 285 | SkillPoints: [76], 286 | StatPoints: [1,3,3,3,3], 287 | Update: function () { 288 | } 289 | }, 290 | 291 | 29: { 292 | SkillPoints: [86], 293 | StatPoints: [1,3,3,3,3], 294 | Update: function () { 295 | } 296 | }, 297 | 298 | 30: { 299 | SkillPoints: [91], 300 | StatPoints: [1,3,3,3,3], 301 | Update: function () { 302 | Config.Curse[0] = 91; // Boss curse. Use skill number or set to 0 to disable. 303 | Config.Curse[1] = 91; // Other monsters curse. Use skill number or set to 0 to disable. 304 | } 305 | }, 306 | 307 | 31: { 308 | SkillPoints: [95], 309 | StatPoints: [3,3,3,3,1], 310 | Update: function () { 311 | } 312 | }, 313 | 314 | 32: { 315 | SkillPoints: [70], 316 | StatPoints: [3,3,3,3,1], 317 | Update: function () { 318 | } 319 | }, 320 | 321 | 33: { 322 | SkillPoints: [70], 323 | StatPoints: [3,3,3,3,1], 324 | Update: function () { 325 | } 326 | }, 327 | 328 | 34: { 329 | SkillPoints: [70], 330 | StatPoints: [3,3,3,3,1], 331 | Update: function () { 332 | } 333 | }, 334 | 335 | 35: { 336 | SkillPoints: [70], 337 | StatPoints: [3,3,3,3,1], 338 | Update: function () { 339 | } 340 | }, 341 | 342 | 36: { 343 | SkillPoints: [69], 344 | StatPoints: [3,3,3,3,1], 345 | Update: function () { 346 | 347 | } 348 | }, 349 | 350 | 37: { 351 | SkillPoints: [69], 352 | StatPoints: [3,3,3,3,1], 353 | Update: function () { 354 | 355 | } 356 | }, 357 | 358 | 38: { 359 | SkillPoints: [69], 360 | StatPoints: [3,3,3,3,1], 361 | Update: function () { 362 | } 363 | }, 364 | 365 | 39: { 366 | SkillPoints: [69], 367 | StatPoints: [3,3,3,3,1], 368 | Update: function () { 369 | } 370 | }, 371 | 372 | 40: { 373 | SkillPoints: [69], 374 | StatPoints: [3,3,3,3,1], 375 | Update: function () { 376 | } 377 | }, 378 | 379 | 41: { 380 | SkillPoints: [69], 381 | StatPoints: [3,3,3,3,1], 382 | Update: function () { 383 | } 384 | }, 385 | 386 | 42: { 387 | SkillPoints: [69], 388 | StatPoints: [3,3,3,3,1], 389 | Update: function () { 390 | } 391 | }, 392 | 393 | 43: { 394 | SkillPoints: [69], 395 | StatPoints: [3,3,3,3,1], 396 | Update: function () { 397 | } 398 | }, 399 | 400 | 44: { 401 | SkillPoints: [69], 402 | StatPoints: [3,3,3,3,1], 403 | Update: function () { 404 | } 405 | }, 406 | 407 | 45: { 408 | SkillPoints: [69], 409 | StatPoints: [3,3,3,3,1], 410 | Update: function () { 411 | } 412 | }, 413 | 414 | 46: { 415 | SkillPoints: [69], 416 | StatPoints: [3,3,3,3,1], 417 | Update: function () { 418 | } 419 | }, 420 | 421 | 47: { 422 | SkillPoints: [69], 423 | StatPoints: [3,3,3,3,1], 424 | Update: function () { 425 | } 426 | }, 427 | 428 | 48: { 429 | SkillPoints: [69], 430 | StatPoints: [3,3,3,3,1], 431 | Update: function () { 432 | } 433 | }, 434 | 435 | 49: { 436 | SkillPoints: [69], 437 | StatPoints: [3,3,3,3,1], 438 | Update: function () { 439 | } 440 | }, 441 | 442 | 50: { 443 | SkillPoints: [69], 444 | StatPoints: [3,3,3,3,1], 445 | Update: function () { 446 | } 447 | }, 448 | 449 | 51: { 450 | SkillPoints: [69], 451 | StatPoints: [3,3,3,3,1], 452 | Update: function () { 453 | } 454 | }, 455 | 456 | 52: { 457 | SkillPoints: [69], 458 | StatPoints: [3,3,3,3,1], 459 | Update: function () { 460 | } 461 | }, 462 | 463 | 53: { 464 | SkillPoints: [69], 465 | StatPoints: [3,3,3,3,1], 466 | Update: function () { 467 | } 468 | }, 469 | 470 | 54: { 471 | SkillPoints: [69], 472 | StatPoints: [3,3,3,3,1], 473 | Update: function () { 474 | } 475 | }, 476 | 477 | 55: { 478 | SkillPoints: [69], 479 | StatPoints: [3,3,3,3,1], 480 | Update: function () { 481 | } 482 | }, 483 | 484 | 56: { 485 | SkillPoints: [74], 486 | StatPoints: [3,3,3,3,1], 487 | Update: function () { 488 | } 489 | }, 490 | 491 | 57: { 492 | SkillPoints: [74], 493 | StatPoints: [3,3,3,3,1], 494 | Update: function () { 495 | } 496 | }, 497 | 498 | 58: { 499 | SkillPoints: [74], 500 | StatPoints: [3,3,3,3,1], 501 | Update: function () { 502 | } 503 | }, 504 | 505 | 59: { 506 | SkillPoints: [74], 507 | StatPoints: [3,3,3,3,1], 508 | Update: function () { 509 | } 510 | }, 511 | 512 | 60: { 513 | SkillPoints: [74], 514 | StatPoints: [3,3,3,3,1], 515 | Update: function () { 516 | } 517 | }, 518 | 519 | 61: { 520 | SkillPoints: [74], 521 | StatPoints: [3,3,3,3,1], 522 | Update: function () { 523 | } 524 | }, 525 | 526 | 62: { 527 | SkillPoints: [74], 528 | StatPoints: [3,3,3,3,1], 529 | Update: function () { 530 | } 531 | }, 532 | 533 | 63: { 534 | SkillPoints: [74], 535 | StatPoints: [3,3,3,3,1], 536 | Update: function () { 537 | } 538 | }, 539 | 540 | 64: { 541 | SkillPoints: [74], 542 | StatPoints: [3,3,3,3,1], 543 | Update: function () { 544 | } 545 | }, 546 | 547 | 65: { 548 | SkillPoints: [74], 549 | StatPoints: [3,3,3,3,1], 550 | Update: function () { 551 | } 552 | }, 553 | 554 | 66: { 555 | SkillPoints: [74], 556 | StatPoints: [3,3,3,3,1], 557 | Update: function () { 558 | } 559 | }, 560 | 561 | 67: { 562 | SkillPoints: [74], 563 | StatPoints: [3,3,3,3,1], 564 | Update: function () { 565 | } 566 | }, 567 | 568 | 68: { 569 | SkillPoints: [74], 570 | StatPoints: [3,3,3,3,1], 571 | Update: function () { 572 | } 573 | }, 574 | 575 | 69: { 576 | SkillPoints: [74], 577 | StatPoints: [3,3,3,3,1], 578 | Update: function () { 579 | } 580 | }, 581 | 582 | 70: { 583 | SkillPoints: [74], 584 | StatPoints: [3,3,3,3,1], 585 | Update: function () { 586 | } 587 | }, 588 | 589 | 71: { 590 | SkillPoints: [55], 591 | StatPoints: [3,3,3,3,1], 592 | Update: function () { 593 | } 594 | }, 595 | 596 | 72: { 597 | SkillPoints: [55], 598 | StatPoints: [3,3,3,3,1], 599 | Update: function () { 600 | } 601 | }, 602 | 603 | 73: { 604 | SkillPoints: [55], 605 | StatPoints: [3,3,3,3,1], 606 | Update: function () { 607 | } 608 | }, 609 | 610 | 74: { 611 | SkillPoints: [55], 612 | StatPoints: [3,3,3,3,1], 613 | Update: function () { 614 | } 615 | }, 616 | 617 | 75: { 618 | SkillPoints: [55], 619 | StatPoints: [3,3,3,3,1], 620 | Update: function () { 621 | } 622 | }, 623 | 624 | 76: { 625 | SkillPoints: [55], 626 | StatPoints: [3,3,3,3,1], 627 | Update: function () { 628 | } 629 | }, 630 | 631 | 77: { 632 | SkillPoints: [55], 633 | StatPoints: [3,3,3,3,1], 634 | Update: function () { 635 | } 636 | }, 637 | 638 | 78: { 639 | SkillPoints: [55], 640 | StatPoints: [3,3,3,3,1], 641 | Update: function () { 642 | } 643 | }, 644 | 645 | 79: { 646 | SkillPoints: [55], 647 | StatPoints: [3,3,3,3,1], 648 | Update: function () { 649 | } 650 | }, 651 | 652 | 80: { 653 | SkillPoints: [55], 654 | StatPoints: [3,3,3,3,1], 655 | Update: function () { 656 | } 657 | }, 658 | 659 | 81: { 660 | SkillPoints: [55], 661 | StatPoints: [3,3,3,3,1], 662 | Update: function () { 663 | } 664 | }, 665 | 666 | 82: { 667 | SkillPoints: [55], 668 | StatPoints: [3,3,3,3,1], 669 | Update: function () { 670 | } 671 | }, 672 | 673 | 83: { 674 | SkillPoints: [55], 675 | StatPoints: [3,3,3,3,1], 676 | Update: function () { 677 | ; 678 | } 679 | }, 680 | 681 | 84: { 682 | SkillPoints: [65], 683 | StatPoints: [3,3,3,3,1], 684 | Update: function () { 685 | 686 | } 687 | }, 688 | 689 | 85: { 690 | SkillPoints: [55], 691 | StatPoints: [3,3,3,3,1], 692 | Update: function () { 693 | 694 | } 695 | }, 696 | 697 | 86: { 698 | SkillPoints: [65], 699 | StatPoints: [3,3,3,3,1], 700 | Update: function () { 701 | 702 | } 703 | }, 704 | 705 | 87: { 706 | SkillPoints: [55], 707 | StatPoints: [3,3,3,3,1], 708 | Update: function () { 709 | 710 | } 711 | }, 712 | 713 | 88: { 714 | SkillPoints: [65], 715 | StatPoints: [3,3,3,3,1], 716 | Update: function () { 717 | 718 | } 719 | }, 720 | 721 | 89: { 722 | SkillPoints: [55], 723 | StatPoints: [3,3,3,3,1], 724 | Update: function () { 725 | 726 | } 727 | }, 728 | 729 | 90: { 730 | SkillPoints: [65], 731 | StatPoints: [3,3,3,3,1], 732 | Update: function () { 733 | 734 | } 735 | }, 736 | 737 | 91: { 738 | SkillPoints: [55], 739 | StatPoints: [3,3,3,3,1], 740 | Update: function () { 741 | 742 | } 743 | }, 744 | 745 | 92: { 746 | SkillPoints: [65], 747 | StatPoints: [3,3,3,3,1], 748 | Update: function () { 749 | 750 | } 751 | }, 752 | 753 | 93: { 754 | SkillPoints: [55], 755 | StatPoints: [3,3,3,3,1], 756 | Update: function () { 757 | 758 | } 759 | }, 760 | 761 | 94: { 762 | SkillPoints: [65], 763 | StatPoints: [3,3,3,3,1], 764 | Update: function () { 765 | 766 | } 767 | }, 768 | 769 | 95: { 770 | SkillPoints: [55], 771 | StatPoints: [3,3,3,3,1], 772 | Update: function () { 773 | 774 | } 775 | }, 776 | 777 | 96: { 778 | SkillPoints: [65], 779 | StatPoints: [3,3,3,3,1], 780 | Update: function () { 781 | 782 | } 783 | }, 784 | 785 | 97: { 786 | SkillPoints: [55], 787 | StatPoints: [3,3,3,3,1], 788 | Update: function () { 789 | 790 | } 791 | }, 792 | 793 | 98: { 794 | SkillPoints: [65], 795 | StatPoints: [3,3,3,3,1], 796 | Update: function () { 797 | 798 | } 799 | }, 800 | 801 | 99: { 802 | SkillPoints: [55], 803 | StatPoints: [3,3,3,3,1], 804 | Update: function () { 805 | 806 | } 807 | } 808 | }; -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/blizzhackers/autosmurf/b87582af07df7ecf234bf66aae5466633fdd9f6d/d2bs/kolbot/pickit/.gitkeep -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/barbarian.xpac.nip: -------------------------------------------------------------------------------- 1 | [name] == gold # [gold] >= 1 2 | [name] == minorhealingpotion 3 | [name] == lighthealingpotion 4 | [name] == healingpotion 5 | [name] == greaterhealingpotion 6 | [name] == superhealingpotion 7 | 8 | [name] == minormanapotion 9 | [name] == lightmanapotion 10 | [name] == manapotion 11 | [name] == greatermanapotion 12 | [name] == supermanapotion 13 | 14 | [name] == rejuvenationpotion 15 | [name] == fullrejuvenationpotion 16 | [name] == scrolloftownportal 17 | [name] == scrollofidentify 18 | 19 | // gloves 20 | [type] == gloves && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 21 | [type] == gloves && [quality] == set && [flag] != ethereal # # [tier] == 2 22 | [type] == gloves && [flag] != ethereal # [strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 3 23 | [type] == gloves && [flag] != ethereal # [strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 4 24 | [type] == gloves && [quality] == rare && [flag] != ethereal # ([strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5) || ([maxmana] > 0 && [hpregen] > 0) # [tier] == 5 25 | [name] == heavygloves && [quality] == unique && [flag] != ethereal # [maxhp] > 0 # [tier] == 6 26 | [name] == lightgauntlets && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [tier] == 7 27 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [tier] == 8 28 | [type] == gloves && [quality] == rare && [flag] != ethereal # [strength] + [dexterity] >= 15 && [hpregen] + [maxmana] >= 0 && [hpregen] + [maxmana] < 10 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 31 29 | [type] == gloves && [quality] == rare && [flag] != ethereal # [strength] + [dexterity] >= 15 && [hpregen] + [maxmana] >= 10 && [hpregen] + [maxmana] < 20 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 32 30 | [type] == gloves && [quality] == rare && [flag] != ethereal # [strength] + [dexterity] >= 15 && [hpregen] + [maxmana] >= 20 && [hpregen] + [maxmana] < 30 &&([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 33 31 | [type] == gloves && [quality] == rare && [flag] != ethereal # [strength] + [dexterity] >= 15 && [hpregen] + [maxmana] >= 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 34 32 | 33 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [itemmagicbonus] >= 25 && [itemmagicbonus] <= 30 # [tier] == 96 34 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [itemmagicbonus] > 30 && [itemmagicbonus] <= 35 # [tier] == 97 35 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [itemmagicbonus] > 35 && [itemmagicbonus] <= 39 # [tier] == 98 36 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [itemmagicbonus] == 40 # [tier] == 99 37 | 38 | [name] == gauntlets && [quality] == unique && [flag] != ethereal # [itemmaxmanapercent] == 40 # [maxquantity] == 1 && [tier] == 41 39 | [name] == lightgauntlets && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [maxquantity] == 1 && [tier] == 42 40 | [name] == gauntlets && [quality] == set && [flag] != ethereal # [strength] > 10 # [maxquantity] == 1 && [tier] == 43 41 | [name] == lightgauntlets && [quality] == set && [flag] != ethereal # [coldresist] >= 30 # [maxquantity] == 1 && [tier] == 44 42 | [name] == heavybracers && [quality] == set && [flag] != ethereal # [coldresist] >= 30 # [maxquantity] == 1 && [tier] == 45 43 | 44 | // belt 45 | [name] == sash && [flag] != ethereal # # [tier] == 1 46 | [name] == sash && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 2 47 | [name] == belt && [flag] != ethereal # # [tier] == 3 48 | [type] == belt && [quality] == set # # [tier] == 4 49 | [name] == belt && [flag] != ethereal # [maxhp] > 40 || [maxmana] > 40 # [tier] == 5 50 | [name] == belt && [flag] != ethereal # [maxhp] > 15 && [maxmana] > 15 # [tier] == 6 51 | [name] == belt && [flag] != ethereal # [maxhp] > 25 && [maxmana] > 25 # [tier] == 7 52 | [name] == belt && [quality] == rare && [flag] != ethereal # ([fireresist]+[lightresist]+[coldresist]+[poisonresist]) >= ([maxhp] + [maxmana] + 30) && [fhr] > 0 # [tier] == 8 53 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 30 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 9 54 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 40 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 8 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 10 55 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 50 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 12 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 11 56 | [name] == demonhidesash && [quality] == unique && [flag] != ethereal # # [tier] == 12 57 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 60 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 18 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 13 58 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 70 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 21 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 14 59 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 75 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 28 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 15 60 | [name] == demonhidesash && [quality] == unique && [flag] != ethereal # [lifedrainmindam] >= 6 # [tier] == 81 61 | [name] == belt && [quality] == unique && [flag] != ethereal # [fireresist] >= 10 && [lightresist] >= 10 # [maxquantity] == 1 && [tier] == 99 62 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [strength] > 10 && [strength] <= 15 && ([fhr] >= 10 || [maxhp] >= 30) && [maxhp] >= 20 && [fireresist] >= 10 && [lightresist] >= 10 # [tier] == 103 63 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [strength] > 15 && ([fhr] >= 10 || [maxhp] >= 30) && [maxhp] >= 20 && [fireresist] >= 10 && [lightresist] >= 10 # [tier] == 104 64 | [name] == meshbelt && [quality] == unique && [flag] != ethereal # [itemmaxmanapercent] == 15 # [tier] == 107 65 | [name] == battlebelt && [quality] == unique # [itemabsorbcoldpercent] >= 0 # [tier] == 108 66 | 67 | // boots 68 | [type] == boots # [maxhp] > 0 || [maxmana] > 0 # [tier] == 1 69 | [type] == boots && [quality] == set # # [tier] == 1 70 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 10 # [tier] == 2 71 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 10 # [tier] == 3 72 | [type] == boots && [quality] == unique # # [tier] == 4 73 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 40 && ([maxmana] > 10 || [fhr] > 0) # [tier] == 5 74 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 40 && ([maxmana] > 20 || [fhr] > 0) # [tier] == 6 75 | [name] == sharkskinboots && [quality] == unique && [flag] != ethereal # # [maxquantity] == 1 && [tier] == 101 76 | [name] == battleboots && [quality] == unique && [flag] != ethereal # # [maxquantity] == 1 && [tier] == 102 77 | 78 | 79 | // helm 80 | [type] == helm # [maxhp] > 0 # [tier] == 1 81 | [type] == helm # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 2 82 | [type] == helm # [maxhp] > 5 # [tier] == 3 83 | [type] == helm && [quality] == set # # [tier] == 4 84 | [type] == helm # [maxhp] > 5 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 5 85 | [type] == helm # [maxhp] > 10 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 6 86 | [type] == helm # [maxhp] > 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 7 87 | [type] == helm && [quality] <= superior # [itemallskills] > 0 # [tier] == 8 88 | [type] == helm && [quality] == rare # ([barbarianskills] > 0 || [warcriesskilltab] > 0) || [maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 # [tier] == 9 89 | [type] == helm && [quality] == rare # ([barbarianskills] > 0 || [warcriesskilltab] > 0) || ([maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 && ([energy] > 0 || [fhr] > 0)) # [tier] == 10 90 | [type] == helm && [quality] == rare # ([barbarianskills] > 1 || [warcriesskilltab] > 1) && ([maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 && ([energy] > 0 || [fhr] > 0)) # [tier] == 11 91 | [name] == warhat && [quality] == unique # # [tier] == 10 92 | [name] == sallet && [quality] == unique # [fireresist] >= 12 && [lightresist] >= 12 # [maxquantity] == 1 && [tier] == 12 93 | [name] == deathmask && [quality] == set # [fireresist] >= 12 && [lightresist] >= 12 # [maxquantity] == 1 && [tier] == 13 94 | [type] == helm && [flag] == runeword # [lightresist] >= 30 # [tier] == 14 95 | [name] == shako && [quality] == unique # [itemallskills] == 2 # [maxquantity] == 1 && [tier] ==15 96 | 97 | // amulet 98 | [type] == amulet # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 99 | [type] == amulet # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([hpregen] > 0 || [maxhp] > 0) # [tier] == 2 100 | [type] == amulet # [maxhp] > 15 # [tier] == 2 101 | [type] == amulet # [maxhp] > 15 && [maxmana] > 15 # [tier] == 3 102 | [type] == amulet && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && ([fcr] > 0 || [strength] > 0) # [tier] == 4 103 | [type] == amulet && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && ([fcr] > 0 && [strength] > 0) # [tier] == 5 104 | [type] == amulet && [quality] == unique # [itemallskills] == 1 # [tier] == 6 105 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 30 || ([maxhp] > 20 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 7 106 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 50 || ([maxhp] > 30 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 8 107 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 70 || ([maxhp] > 40 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60) # [tier] == 9 108 | [type] == amulet && [quality] == rare # ([maxhp]+[maxmana] >= 90 || ([maxhp] >= 50 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60)) # [tier] == 10 109 | [type] == amulet # ([fireresist]+[lightresist]+[coldresist]+[poisonresist] > 110) # [tier] == 11 110 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 110 || (([maxhp] >= 55) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 12 111 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 130 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 13 112 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 150 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 14 113 | [type] == amulet && [quality] == unique # [fireresist] >= 50 # [maxquantity] == 1 && [tier] == 30 114 | [type] == amulet && [quality] == unique # [itemabsorbfireperlevel] >= 0 # [maxquantity] == 1 && [tier] == 31 115 | [type] == amulet && [quality] == unique # [itemallskills] == 2 # [maxquantity] == 1 && [tier] == 32 116 | 117 | //ilvl is high enough for +skills 118 | [type] == amulet && [quality] == rare # ([] > 0 && ([maxhp]+[maxmana] >= 90) || ([maxhp] > 50 && ([strength] > 0 || [fcr] > 0))) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 20 # [tier] == 15 119 | [type] == amulet && [quality] == rare # ([barbarianskills] > 0 && [maxhp]+[maxmana] >= 90) || ([maxhp] > 50 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 20) # [tier] == 16 120 | [type] == amulet && [quality] == rare # ([warcriesskilltab] > 0 && [maxhp]+[maxmana] >= 110) || ([maxhp] > 55 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 17 121 | [type] == amulet && [quality] == rare # ([barbarianskills] > 0 && [maxhp]+[maxmana] >= 110) || ([maxhp] > 55 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 18 122 | [type] == amulet && [quality] == rare # ([warcriesskilltab] > 0 || [barbarianskills] > 0) && ([maxhp]+[maxmana] >= 130 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0))) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40 # [tier] == 19 123 | [type] == amulet && [quality] == rare # ([warcriesskilltab] > 0 || [barbarianskills] > 0) && ([maxhp]+[maxmana] >= 150 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 20 124 | //highend 125 | [type] == amulet && [quality] == rare # ([warcriesskilltab] >= 2 || [barbarianskills] > 1) && ([maxhp]+[maxmana] >= 100 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 21 126 | [type] == amulet && [quality] == rare # ([warcriesskilltab] >= 2 || [barbarianskills] > 1) && ([maxhp]+[maxmana] >= 110 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5))&& [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 22 127 | [type] == amulet && [quality] == rare # ([warcriesskilltab] >= 2 || [barbarianskills] > 1) && ([maxhp]+[maxmana] >= 120 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 23 128 | [type] == amulet && [quality] == rare # ([warcriesskilltab] >= 2 || [barbarianskills] > 1) && ([maxhp]+[maxmana] >= 130 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 24 129 | [type] == amulet && [quality] == rare # ([warcriesskilltab] >= 2 || [barbarianskills] > 1) && ([maxhp]+[maxmana] >= 145 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 25 130 | 131 | [type] == amulet && [quality] == set # [poisonresist] > 0 # [tier] == 101 132 | 133 | // ring 134 | 135 | [type] == ring # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 136 | [type] == ring # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([hpregen] > 0 || [maxhp] > 0) # [tier] == 2 137 | [type] == ring # [maxhp] > 15 # [tier] == 2 138 | [type] == ring # [maxhp] > 15 && [maxmana] > 15 # [tier] == 3 139 | [type] == ring && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && [fcr] > 0 || [strength] > 0 # [tier] == 4 140 | [type] == ring && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && [fcr] > 0 && [strength] > 0 # [tier] == 5 141 | [type] == ring && [quality] == unique # [itemallskills] == 1 # [tier] == 6 142 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 30 || ([maxhp] > 20 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 7 143 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 50 || ([maxhp] > 25 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 8 144 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 70 || ([maxhp] > 30 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 9 145 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 90 || ([maxhp] > 35 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 10 146 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 110 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 11 147 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 120 &&([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 12 148 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 130 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 12 149 | [name] == ring && ([quality] == magic || [quality] == rare) # [maxhp] >= 30 && [strength] >= 5 && [strength] < 10 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 1 # [tier] == 23 150 | [name] == ring && ([quality] == magic || [quality] == rare) # [maxhp] >= 30 && [strength] >= 5 && [strength] < 10 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 1 # [tier] == 24 151 | [name] == ring && ([quality] == magic || [quality] == rare) # [maxhp] >= 30 && [strength] >= 10 && [strength] < 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 1 # [tier] == 25 152 | [name] == ring && ([quality] == magic || [quality] == rare) # [maxhp] >= 30 && [strength] >= 10 && [strength] < 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 26 153 | [name] == ring && ([quality] == magic || [quality] == rare) # [maxhp] >= 30 && [strength] >= 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2# [tier] == 27 154 | [name] == ring && ([quality] == magic || [quality] == rare) # [maxhp] >= 30 && [strength] >= 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 28 155 | [type] == ring && [quality] == unique # [itemmagicbonus] == 30 # [tier] == 29 // perfect nagel 156 | [name] == ring && [quality] == unique # [maxmana] == 20 # [tier] == 101 // stone of jordan 157 | [type] == ring && [quality] == magic # [itemmagicbonus] >= 35 && [itemmagicbonus] < 38 # [tier] == 102 158 | [type] == ring && [quality] == magic # [itemmagicbonus] == 38 # [tier] == 103 159 | [type] == ring && [quality] == magic # [itemmagicbonus] == 39 # [tier] == 104 160 | [type] == ring && [quality] == magic # [itemmagicbonus] >= 40 # [tier] == 105 161 | 162 | // armor 163 | [type] == armor # [maxhp] > 0 || [strength] > 0 # [tier] == 1 164 | [type] == armor # [maxhp] > 0 && [strength] > 0 # [tier] == 1 165 | [name] == quiltedarmor && [quality] == set # # [tier] == 3 166 | [type] == armor # [maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist] >= 20 # [tier] == 4 167 | [type] == armor && [quality] <= superior # [poisonresist] == 30 # [tier] == 5 168 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 40 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] > 0 # [tier] == 6 169 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 50 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 3 # [tier] == 7 170 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 60 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 8 171 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 70 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 9 172 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 80 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 10 173 | [name] == cuirass && [quality] == unique # # [tier] == 11 174 | [name] == mageplate && [quality] == unique # # [tier] == 12 175 | [name] == serpentskinarmor && [quality] == unique # # [tier] == 13 176 | [name] == russetarmor && [quality] == unique # # [tier] == 14 177 | [name] == mesharmor && [quality] == unique # # [tier] == 15 178 | [name] == russetarmor && [quality] == unique && [flag] == ethereal # # [tier] == 16 179 | [type] == armor && [quality] == rare # [enhanceddefense] >= 50 && [maxhp] >= 10 && [maxhp] < 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 19 180 | [type] == armor && [quality] == rare # [enhanceddefense] >= 50 && [maxhp] >= 30 && [maxhp] < 50 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 20 181 | [type] == armor && [quality] == rare # [enhanceddefense] >= 50 && [maxhp] >= 50 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 #[tier] == 21 182 | [name] == fullplatemail && [quality] == unique # [fireresist] > 1 # [tier] == 96 183 | [name] == ancientarmor && [quality] == unique # [enhanceddefense] <= 110 # [tier] == 97 184 | [name] == ancientarmor && [quality] == unique # [enhanceddefense] > 110 && [enhanceddefense] < 120 # [tier] == 98 185 | [name] == ancientarmor && [quality] == unique # [enhanceddefense] == 120 # [tier] == 99 186 | [name] == serpentskinarmor && [quality] == unique # [itemallskills] == 1 && [fireresist] >=20 && [lightresist] >= 20 # [maxquantity] == 1 && [tier] == 101 187 | [type] == armor && [flag] == runeword # [lightresist] > 50 # [maxquantity] == 1 && [tier] == 102 188 | [type] == armor && [flag] == runeword # [fireresist] == 50 && [lightresist] == 50 # [maxquantity] == 1 && [tier] == 103 189 | 190 | // weapon 191 | ([type] == axe || [type] == mace || [type] == sword) && [quality] == magic # # [tier] == 8 192 | ([type] == axe || [type] == mace || [type] == sword) && [quality] == rare # # [tier] == 9 193 | ([type] == axe || [type] == mace || [type] == sword) && [quality] == rare # [ias] >= 0 && [enhanceddamage] >= 40 # [tier] == 10 194 | ([type] == axe || [type] == mace || [type] == sword) && [quality] == unique # # [tier] == 11 195 | [type] == sword && [flag] == runeword # [itemallskills] == 2 # [tier] == 101 196 | 197 | // 2 hand weapons (swords)+(axes)+(maces) if need to be excluded -> will be added in the weapon lines before # 198 | // && (([name] != flb || [name] != gsd || [name] != 9fb || [name] != 9gd || [name] != 7fb || [name] != 7gd) || ([name] != lax || [name] != bax || [name] != btx || [name] != gax || [name] != gix || [name] != gla || [name] != 9ba || [name] != 9bt || [name] != 9ga || [name] != 9gi || [name] != 71a || [name] != 7ba || [name] != 7bt || [name] != 7ga || [name] != 7gi) || ([name] != whm || [name] != mau || [name] != gma || [name] != 9wh || [name] != 9m9 || [name] != 9gm || [name] != 7wh || [name] != 7m7 || [name] != 7gm)) 199 | 200 | // shield - comment every shield line if you get issues with autoequip when you have 2 hand weapon already weared 201 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 10 || [maxhp] > 9 # [tier] == 1 202 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 20 || [maxhp] > 19 # [tier] == 2 203 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 40 || [maxhp] > 29 # [tier] == 3 204 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 9 # [tier] == 4 205 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 20 && [maxhp] > 19 # [tier] == 5 206 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 40 && [maxhp] > 29 # [tier] == 6 207 | [type] == shield && [quality] == rare # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] > 0 || [strength] > 0) # [tier] == 7 208 | [type] == shield && [quality] == rare # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] > 0 && [strength] >= 3) # [tier] == 8 209 | [type] == shield && [quality] == rare # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] == 30 && [strength] >= 6) # [tier] == 9 210 | [type] == shield && [quality] <= superior # ([poisonresist]+[fireresist]+[coldresist]+[lightresist] == 100) && [fbr] == 40 # [tier] == 10 211 | [type] == shield && [flag] == runeword # [itemgoldbonus] == 50 # [maxquantity] == 1 && [tier] == 11 212 | [type] == shield && [flag] == runeword # [fireresist] >= 40 && [lightresist] >= 40 # [maxquantity] == 1 && [tier] == 100 213 | [type] == shield && [flag] == runeword # [fhr] == 55 && [fcr] >= 25 # [maxquantity] == 1 && [tier] == 101 214 | [name] == monarch && [quality] == unique # # [tier] == 102 -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/charms.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of charms that you want your bot to pick up. 3 | // unid'ed charms for cubing are listed in unid.nip and unique charms can be found in unid.nip and unique.nip 4 | // 5 | // any item on this list which starts with //[ will not be picked up at all 6 | // any item on this list which starts with [ will be picked up, then kept unid'ed or checked and then kept if it's good enough. 7 | // ----------------------------------------------------------------------------------------------------- 8 | 9 | // all skill gc's 10 | //[name] == grandcharm && [quality] == magic # [itemaddskilltab] == 1 11 | 12 | // skiller gc 13 | //[name] == grandcharm && [quality] == magic # [palicombatskilltab] == 1 14 | //[name] == grandcharm && [quality] == magic # [offensiveaurasskilltab] == 1 15 | //[name] == grandcharm && [quality] == magic # [defensiveaurasskilltab] == 1 16 | //[name] == grandcharm && [quality] == magic # [lightningskilltab] == 1 17 | //[name] == grandcharm && [quality] == magic # [fireskilltab] == 1 18 | //[name] == grandcharm && [quality] == magic # [coldskilltab] == 1 19 | //[name] == grandcharm && [quality] == magic # [elementalskilltab] == 1 20 | //[name] == grandcharm && [quality] == magic # [shapeshiftingskilltab] == 1 21 | //[name] == grandcharm && [quality] == magic # [druidsummoningskilltab] == 1 22 | //[name] == grandcharm && [quality] == magic # [trapsskilltab] == 1 23 | //[name] == grandcharm && [quality] == magic # [shadowdisciplinesskilltab] == 1 24 | //[name] == grandcharm && [quality] == magic # [martialartsskilltab] == 1 25 | //[name] == grandcharm && [quality] == magic # [poisonandboneskilltab] == 1 26 | //[name] == grandcharm && [quality] == magic # [necromancersummoningskilltab] ==1 27 | //[name] == grandcharm && [quality] == magic # [cursesskilltab] == 1 28 | //[name] == grandcharm && [quality] == magic # [passiveandmagicskilltab] == 1 29 | //[name] == grandcharm && [quality] == magic # [bowandcrossbowskilltab] == 1 30 | //[name] == grandcharm && [quality] == magic # [javelinandspearskilltab] == 1 31 | //[name] == grandcharm && [quality] == magic # [warcriesskilltab] == 1 32 | //[name] == grandcharm && [quality] == magic # [barbcombatskilltab] == 1 33 | //[name] == grandcharm && [quality] == magic # [masteriesskilltab] == 1 34 | 35 | // leet skill / max damage gc's 36 | //[name] == grandcharm && [quality] == magic # [itemaddskilltab] >= 1 && ([maxhp] >= 20 || [strength] >= 6 || [dexterity] >= 6 || [fhr] >= 12 || [frw] >= 7) 37 | 38 | // gold find gc 39 | //[name] == grandcharm && [quality] == magic # [itemgoldbonus] >= 40 40 | //[name] == grandcharm && [quality] == magic # [itemgoldbonus] >= 40 && (([coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 60) || [coldresist] >= 26 || [fireresist] >= 26 || [lightresist] >= 26) 41 | //[name] == grandcharm && [quality] == magic # [itemgoldbonus] >= 40 && (([maxdamage] >= 9 && [tohit] >= 49) || [mana] >= 40) 42 | 43 | // resist gc 44 | [name] == grandcharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 60 45 | //[name] == grandcharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 56 && ([frw] == 7 || [fhr] == 12) 46 | //[name] == grandcharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 40 && [maxhp] >= 25 47 | 48 | // max damage gc 49 | //[name] == grandcharm && [quality] == magic # [maxdamage] >= 9 && [tohit] >= 49 50 | //[name] == grandcharm && [quality] == magic # ([maxdamage] >= 9 && [tohit] >= 49) && ([maxhp] >= 30 || [strength] >= 6 || [dexterity] >= 6 || [fhr] >= 12) 51 | 52 | // ar/life gc 53 | //[name] == grandcharm && [quality] == magic # [tohit] >= 100 && [maxhp] >= 35 54 | 55 | // life/mana gc 56 | //[name] == grandcharm && [quality] == magic # [maxhp] >= 40 && [mana] >= 35 57 | 58 | // resist lc 59 | //[name] == largecharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 28 && [maxhp] >= 25 60 | //[name] == largecharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 24 && ([maxhp] >= 15 || [fhr] >= 8) 61 | 62 | // max damage lc 63 | //[name] == largecharm && [quality] == magic # [maxdamage] >= 6 && [tohit] >= 30 64 | 65 | // ar/life lc 66 | //[name] == largecharm && [quality] == magic # [tohit] >= 75 && [maxhp] >= 33 67 | 68 | // life/mana lc 69 | //[name] == largecharm && [quality] == magic # [maxhp] >= 30 && [mana] >= 30 70 | 71 | // stat lc 72 | [name] == largecharm && [quality] == magic # [strength] == 5 73 | //[name] == largecharm && [quality] == magic # [dexterity] == 5 74 | 75 | // life sc 76 | [name] == smallcharm && [quality] == magic # [maxhp] >= 20 77 | //[name] == smallcharm && [quality] == magic # [maxhp] >= 15 && [mana] >= 10 78 | 79 | // mana sc 80 | //[name] == smallcharm && [quality] == magic # [mana] >= 15 && [fhr] == 5 81 | //[name] == smallcharm && [quality] == magic # [mana] >= 15 && [frw] == 3 82 | //[name] == smallcharm && [quality] == magic # [mana] >= 15 && [strength] == 2 83 | //[name] == smallcharm && [quality] == magic # [mana] >= 15 && [dexterity] == 2 84 | 85 | // stat sc 86 | //[name] == smallcharm && [quality] == magic # [strength] == 2 87 | //[name] == smallcharm && [quality] == magic # [dexterity] == 2 88 | 89 | // mf & gf sc 90 | [name] == smallcharm && [quality] == magic # [itemmagicbonus] >= 8 91 | //[name] == smallcharm && [quality] == magic # [itemgoldbonus] >= 10 92 | //[name] == smallcharm && [quality] == magic # [mana] >= 10 && ([itemmagicbonus] >= 7 || [itemgoldbonus] >= 10) 93 | //[name] == smallcharm && [quality] == magic # [maxdamage] == 3 && [tohit] >= 10 && ([itemmagicbonus] >= 7 || [itemgoldbonus] >= 10) 94 | 95 | // resist sc 96 | //[name] == smallcharm && [quality] == magic # [maxhp] >= 15 && ([coldresist] >= 9 || [fireresist] >= 9 || [lightresist] >= 9 || [poisonresist] >= 9) 97 | //[name] == smallcharm && [quality] == magic # ([frw] >= 3 || [fhr] >= 5) && ([coldresist] >= 9 || [fireresist] >= 9 || [lightresist] >= 9 || [poisonresist] >= 9) 98 | [name] == smallcharm && [quality] == magic # [itemmagicbonus] >= 7 && ([coldresist] >= 9 || [fireresist] >= 9 || [lightresist] >= 9 || [poisonresist] >= 9) 99 | [name] == smallcharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 20 100 | //[name] == smallcharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 12 && ([maxhp] >= 10 || [frw] == 3 || [fhr] == 5 || [itemmagicbonus] >= 7) 101 | //[name] == smallcharm && [quality] == magic # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 16 && ([itemgoldbonus] == 10 || [strength] == 2 || [dexterity] == 2) 102 | 103 | // max damage sc 104 | //[name] == smallcharm && [quality] == magic # [maxdamage] >= 3 && [tohit] >= 15 105 | 106 | // ar sc 107 | //[name] == smallcharm && [quality] == magic # [tohit] >= 25 && [maxhp] >= 15 108 | //[name] == smallcharm && [quality] == magic # [tohit] >= 35 && ([fhr] == 5 || [frw] == 3) 109 | //[name] == smallcharm && [quality] == magic # [tohit] >= 34 && ([strength] == 2 || [dexterity] == 2) 110 | 111 | // poison sc 112 | //[name] == smallcharm && [quality] == magic # [poisonmindam] >= 175 113 | //[name] == smallcharm && [quality] == magic # [poisonmaxdam] >= 175 114 | //[name] == smallcharm && [quality] == magic # [poisonmaxdam] >= 20 -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/magic.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of magic and rare items that you want your bot to pick up. 3 | // note that you will (obviously) find more rare items listed in the rare.nip file. 4 | // 5 | // any item on this list which starts with //[ will not be picked up at all 6 | // any item on this list which starts with [ will be picked up, then kept unid'ed or checked and then kept if it's good enough. 7 | // ----------------------------------------------------------------------------------------------------- 8 | 9 | // rare/magic jewels 10 | //[type] == jewel && ([quality] == rare || [quality] == magic) # [maxdamage] >= 20 || ([maxdamage] >= 13 && ([ias] == 15 || [itemreqpercent] == -15 || [mindamage] >= 8)) 11 | //[type] == jewel && ([quality] == rare || [quality] == magic) # [mindamage] >= 18 || ([mindamage] == 8 && ([ias] == 15 || [itemreqpercent] == -15 || [mindamage] >= 8)) 12 | //[type] == jewel && ([quality] == rare || [quality] == magic) # [enhanceddamage] >= 35 || ([enhanceddamage] >= 30 && ([ias] == 15 || [itemreqpercent] == -15 || [mindamage] >= 8)) 13 | //[type] == jewel && ([quality] == rare || [quality] == magic) # [tohit] >= 75 && ([maxhp] >= 15 || [strength] >= 8 || [dexterity] >= 8 || [fhr] == 7 || [itemreqpercent] == -15) 14 | //[type] == jewel && ([quality] == rare || [quality] == magic) # [maxmana] >= 15 && ([maxhp] >= 20 || [strength] >= 9 || [dexterity] >= 9 || [fhr] == 7 || [itemreqpercent] == -15) 15 | [type] == jewel && ([quality] == rare || [quality] == magic) # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 48 && ([maxhp] >= 15 || [strength] >= 8 || [dexterity] >= 8 || [fhr] == 7 || [itemreqpercent] == -15) 16 | //[type] == jewel && ([quality] == rare || [quality] == magic) # [coldresist]+[fireresist]+[lightresist]+[poisonresist] == 60 17 | //[type] == jewel && ([quality] == rare || [quality] == magic) # ([coldresist] >= 25 || [fireresist] >= 25 || [lightresist] >= 25 || [poisonresist] == 30) && ([maxhp] >= 15 || [strength] >= 8 || [dexterity] >= 8 || [fhr] == 7 || [itemreqpercent] == -15) 18 | //[name] == jewel && ([quality] == rare || [quality] == magic) # [poisonmindam] >= 20 19 | 20 | // magic rings 21 | [type] == ring && [quality] == magic # [itemmagicbonus] >= 40 22 | [type] == ring && [quality] == magic # [fcr] >= 10 && [mana] >= 120 23 | 24 | // magic mf amulet 25 | [type] == amulet && [quality] == magic # [itemmagicbonus] >= 50 26 | 27 | // rare/magic +2 class amulet 28 | [type] == amulet && [quality] == magic # [itemaddclassskills] == 2 && ([fcr] >= 10 || [dexterity] >= 25 || [hpregen] == 15 || [itemmagicbonus] >= 45 || [maxhp] >= 95 || [lifeleech] >= 5 || [manaleech] >= 5 || [strength] >= 25)// || [description] == "teleportation (" || [description] == "attract (") 29 | [type] == amulet && [quality] == rare # [itemaddclassskills] == 2 && ([fcr] >= 10 || [dexterity] >= 18 || [hpregen] == 10 || [itemmagicbonus] >= 24 || [maxhp] >= 55 || [lifeleech] >= 5 || [manaleech] >= 5 || [strength] >= 25)// || [description] == "teleportation (" || [description] == "attract (") 30 | 31 | // rare/magic +3 tree amulet 32 | [type] == amulet && [quality] == magic # [itemaddskilltab] >= 2 && ([fcr] >= 10 || [dexterity] >= 25 || [hpregen] == 15 || [itemmagicbonus] >= 45 || [maxhp] >= 95 || [lifeleech] >= 5 || [manaleech] >= 5 || [strength] >= 25)// || [description] == "teleportation (" || [description] == "attract (") 33 | [type] == amulet && [quality] == rare # [itemaddskilltab] == 2 && ([fcr] >= 10 || [dexterity] >= 18 || [hpregen] == 10 || [itemmagicbonus] >= 24 || [maxhp] >= 55 || [lifeleech] >= 5 || [manaleech] >= 5 || [strength] >= 25)// || [description] == "teleportation (" || [description] == "attract (") 34 | 35 | // rare +2 class skill circlet 36 | [type] == circlet && [quality] == rare # [itemaddclassskills] == 2 && ([fcr] == 20 || [sockets] == 2 || [strength] >= 20 || [maxhp] >= 30 || [dexterity] >= 20 || [frw] >= 20)// || [description] == "teleportation (" || [description] == "attract (") 37 | 38 | // rare +3 tree skills circlet 39 | [type] == circlet && [quality] == rare # [itemaddskilltab] >= 2 && ([fcr] == 20 || [sockets] == 2 || [strength] >= 20 || [maxhp] >= 30 || [dexterity] >= 20 || [frw] >= 20)// || [description] == "teleportation (" || [description] == "attract (") 40 | 41 | // magic jewelers circlets 42 | //[type] == circlet && [quality] == magic && [flag] != ethereal # [sockets] >= 3 43 | 44 | // magic/rare pelt 45 | [type] == pelt && ([quality] == rare || [quality] == magic) # [druidskills] == 2 && [itemsingleskill] >= 2 46 | [type] == pelt && ([quality] == rare || [quality] == magic) # [elementalskilltab] >= 2 && [itemsingleskill] >= 2 47 | [type] == pelt && ([quality] == rare || [quality] == magic) # [druidsummoningskilltab] >= 2 && [itemsingleskill] >= 2 48 | [type] == pelt && ([quality] == rare || [quality] == magic) && [flag] != ethereal # [shapeshiftingskilltab] >= 2 && [itemsingleskill] >= 2 49 | 50 | // magic/rare battle order helms 51 | [type] == primalhelm && [quality] == magic # [skillbattleorders]+[warcriesskilltab] >= 5 52 | [type] == primalhelm && [quality] == magic # [skillbattleorders]+[barbarianskills] >= 5 53 | [type] == primalhelm && [quality] == rare # [skillbattleorders]+[warcriesskilltab] >= 5 && [maxhp] >= 50 54 | [type] == primalhelm && [quality] == rare # [skillbattleorders]+[barbarianskills] >= 5 && [maxhp] >= 50 55 | 56 | // magic dueler shields 57 | [type] == shield && [quality] == magic && [flag] != ethereal # [sockets] >= 3 && ([itemreqpercent] >= 20 || [fhr] >= 17 || [fbr] == 30 || [maxhp] >= 40) 58 | [type] == shield && [quality] == magic && [flag] != ethereal # [sockets] >= 4 && ([itemreqpercent] >= 20 || [fhr] >= 17 || [fbr] == 30 || [maxhp] >= 40) 59 | [type] == auricshields && [quality] == magic && [flag] != ethereal # [sockets] >= 4 && ([itemreqpercent] >= 20 || [fhr] >= 17 || [fbr] == 30 || [maxhp] >= 40) 60 | 61 | // magic/rare necro shields 62 | //[type] == voodooheads && ([quality] == rare || [quality] == magic) # [necromancerskills] == 2 && ([skillbonespear] >= 2 || [skillbonespirit] >= 2 || [skillpoisonnova] >= 2) 63 | //[type] == voodooheads && ([quality] == rare || [quality] == magic) # [poisonandboneskilltab] >= 2 && ([skillbonespear] >= 2 || [skillbonespirit] >= 2 || [skillpoisonnova] >= 2) 64 | 65 | // magic/rare socketed whale armor 66 | //[type] == armor && ([quality] == rare || [quality] == magic) # [sockets] == 3 && [maxhp] >= 75 67 | //[type] == armor && ([quality] == rare || [quality] == magic) # [sockets] == 3 && [maxhp] >= 75 68 | //[type] == armor && ([quality] == rare || [quality] == magic) # [sockets] == 4 && [maxhp] >= 75 69 | [type] == armor && ([quality] == rare || [quality] == magic) # [maxhp] >= 175 //75 ,175 never appear 70 | 71 | // magic/rare socket/fhr armor 72 | //[type] == armor && ([quality] == rare || [quality] == magic) # [sockets] == 3 && [fhr] >= 17 73 | [type] == armor && ([quality] == rare || [quality] == magic) # [sockets] == 4 && [fhr] >= 24 74 | [type] == armor && ([quality] == magic || [quality] == magic) # [sockets] == 3 && [fhr] >= 17 75 | //[type] == armor && ([quality] == magic || [quality] == magic) # [sockets] == 4 && [fhr] >= 24 76 | 77 | // magic skill/ias gloves 78 | [type] == gloves && [quality] == magic && [flag] != ethereal # [ias] >= 20 && [javelinandspearskilltab] == 3 79 | [type] == gloves && [quality] == magic && [flag] != ethereal # [ias] >= 20 && [bowandcrossbowskilltab] == 3 80 | [type] == gloves && [quality] == magic && [flag] != ethereal # [ias] >= 20 && [passiveandmagicskilltab] == 3 81 | [type] == gloves && [quality] == magic && [flag] != ethereal # [ias] >= 20 && [martialartsskilltab] == 3 82 | 83 | // magic/rare +5/+6 ls claws 84 | //[type] == assassinclaw && ([quality] == rare || [quality] == magic) # [assassinskills]+[skilllightningsentry] >= 5 85 | //[type] == assassinclaw && ([quality] == rare || [quality] == magic) # [trapsskilltab]+[skilllightningsentry] >= 5 86 | //[type] == handtohand && ([quality] == rare || [quality] == magic) # [assassinskills]+[skilllightningsentry] >= 5 87 | //[type] == handtohand && ([quality] == rare || [quality] == magic) # [trapsskilltab]+[skilllightningsentry] >= 5 88 | 89 | // magic/rare +5/+6 jav skills 30+ [ias] javelins 90 | //([name] == maidenjavelin || [name] == ceremonialjavelin || [name] == matriarchaljavelin) && ([quality] == rare || [quality] == magic) # [ias] >= 30 && [amazonskills]+[javelinandspearskilltab] >= 4 91 | //([name] == maidenjavelin || [name] == ceremonialjavelin || [name] == matriarchaljavelin) && ([quality] == rare || [quality] == magic) # [ias] >= 30 && [javelinandspearskilltab] >= 4 92 | 93 | // magic/rare warcry weapons 94 | //([type] == knife || [type] == sword) && ([quality] == magic || [quality] == rare) # [warcriesskilltab] == 3 && [strength] >= 1 95 | 96 | // magic/rare sceptors 97 | [type] == scepter && ([quality] == magic || [quality] == rare) # (([paladinskills]+[skillblessedhammer] >= 4) || ([paladinskills]+[skillconcentration] >= 4) || ([paladinskills]+[skillfistoftheheavens] >= 4)) && [fcr] >= 20 98 | [type] == scepter && ([quality] == magic || [quality] == rare) # (([palicombatskilltab]+[skillblessedhammer] >= 4) || ([palicombatskilltab]+[skillconcentration] >= 4) || ([palicombatskilltab]+[skillfistoftheheavens] >= 4)) && [fcr] >= 20 99 | 100 | // magic/rare swords 101 | //[name] == phaseblade && ([quality] == magic || [quality] == rare) # [sockets] == 4 && [ias] >= 40 102 | 103 | // magic/rare sorceress orbs 104 | [type] == orb && ([quality] == magic || [quality] == rare) # ([sorceressskills]+[skilllightning] >= 5) || ([sorceressskills]+[skillchainlightning] >= 5) 105 | [type] == orb && ([quality] == magic || [quality] == rare) # ([sorceressskills]+[skillfireball] >= 5) || ([sorceressskills]+[skillfirebolt] >= 5) 106 | [type] == orb && ([quality] == magic || [quality] == rare) # ([sorceressskills]+[skillglacialspike] >= 5) || ([sorceressskills]+[skillfrozenorb] >= 5) 107 | [type] == orb && ([quality] == magic || [quality] == rare) # [sorceressskills]+[skillenchant] >= 5 108 | [type] == orb && ([quality] == magic || [quality] == rare) # ([lightningskilltab]+[skilllightning] >= 5) || ([lightningskilltab]+[skillchainlightning] >= 5) 109 | [type] == orb && ([quality] == magic || [quality] == rare) # ([fireskilltab]+[skillfireball] >= 5) || ([fireskilltab]+[skillfirebolt] >= 5) 110 | [type] == orb && ([quality] == magic || [quality] == rare) # ([coldskilltab]+[skillglacialspike] >= 5) || ([coldskilltab]+[skillfrozenorb] >= 5) 111 | [type] == orb && ([quality] == magic || [quality] == rare) # [fireskilltab]+[skillenchant] >= 5 112 | 113 | // magic/rare necro wands and daggers 114 | //[type] == wand && ([quality] == rare || [quality] == magic) # ([poisonandboneskilltab] >= 2 || [necromancerskills] == 2) && [skillpoisonnova] == 3 115 | //[type] == knife && ([quality] == rare || [quality] == magic) # ([poisonandboneskilltab] >= 2 || [necromancerskills] == 2) && [skillpoisonnova] == 3 116 | //[type] == knife && ([quality] == rare || [quality] == magic) # ([poisonandboneskilltab] >= 2 || [necromancerskills] == 2) && [skillpoisondagger] == 3 117 | //([type] == knife || [type] == wand) && ([quality] == rare || [quality] == magic) && [suffix] == 594 118 | //([type] == knife || [type] == wand) && ([quality] == rare || [quality] == magic) #// [description] == "lower resist" -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/merc.nip: -------------------------------------------------------------------------------- 1 | // helm 2 | [type] == helm && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] == ethereal # [defense] >= 30 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 3 | [type] == helm && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] != ethereal # [defense] >= 30 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 4 | 5 | // armor 6 | [type] == armor && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] == ethereal # [defense] >= 150 && [fireresist]+[lightresist]+[coldresist] >= 20 7 | [type] == armor && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] != ethereal # [defense] >= 150 && [fireresist]+[lightresist]+[coldresist] >= 20 8 | 9 | // weapon 10 | [type] == polearm && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] != ethereal # [maxdamage] >= 45 && ([enhanceddamage] >= 80 || [lifeleech] >= 1 || [itemmaxdamageperlevel] >= 1 ) 11 | [type] == polearm && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] == ethereal # [maxdamage] >= 45 && ([enhanceddamage] >= 80 || [lifeleech] >= 1 || [itemmaxdamageperlevel] >= 1 ) 12 | [type] == spear && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] != ethereal # [maxdamage] >= 45 && ([enhanceddamage] >= 80 || [lifeleech] >= 1 || [itemmaxdamageperlevel] >= 1 ) 13 | [type] == spear && ([quality] == magic || [quality] == rare || [quality] == unique) && [flag] == ethereal # [maxdamage] >= 45 && ([enhanceddamage] >= 80 || [lifeleech] >= 1 || [itemmaxdamageperlevel] >= 1 ) -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/paladin.xpac.nip: -------------------------------------------------------------------------------- 1 | [name] == gold # [gold] >= 1 2 | [name] == minorhealingpotion 3 | [name] == lighthealingpotion 4 | [name] == healingpotion 5 | [name] == greaterhealingpotion 6 | [name] == superhealingpotion 7 | 8 | [name] == minormanapotion 9 | [name] == lightmanapotion 10 | [name] == manapotion 11 | [name] == greatermanapotion 12 | [name] == supermanapotion 13 | 14 | [name] == rejuvenationpotion 15 | [name] == fullrejuvenationpotion 16 | [name] == scrolloftownportal 17 | [name] == scrollofidentify 18 | 19 | // gloves 20 | [type] == gloves && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 21 | [type] == gloves && [quality] == set && [flag] != ethereal # # [tier] == 2 22 | [type] == gloves && [flag] != ethereal # [strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 3 23 | [type] == gloves && [flag] != ethereal # [strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 4 24 | [type] == gloves && [quality] == rare && [flag] != ethereal # ([strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5) || ([maxmana] > 0 && [hpregen] > 0) # [tier] == 5 25 | [name] == heavygloves && [quality] == unique && [flag] != ethereal # [maxhp] > 0 # [tier] == 6 26 | [name] == lightgauntlets && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [tier] == 7 27 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [tier] == 8 28 | [name] == lightgauntlets && [quality] == set && [flag] != ethereal# [coldresist] > 0 # [tier] == 9 29 | [name] == gauntlets && [quality] == unique && [flag] != ethereal # [itemmaxmanapercent] == 40 # [maxquantity] == 1 && [tier] == 41 30 | [name] == lightgauntlets && [quality] == unique # [fcr] > 0 # [maxquantity] == 1 && [tier] == 42 31 | [name] == gauntlets && [quality] == set && [flag] != ethereal # [strength] > 10 # [maxquantity] == 1 && [tier] == 43 32 | [name] == lightgauntlets && [quality] == set && [flag] != ethereal # [coldresist] >= 30 # [maxquantity] == 1 && [tier] == 44 33 | [name] == heavybracers && [quality] == set && [flag] != ethereal # [coldresist] >= 30 # [maxquantity] == 1 && [tier] == 45 34 | 35 | // belt 36 | [name] == sash # # [tier] == 1 37 | [name] == sash # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 2 38 | [name] == belt # # [tier] == 3 39 | [type] == belt && [quality] == set # # [tier] == 4 40 | [name] == belt # [maxhp] > 40 || [maxmana] > 40 # [tier] == 5 41 | [name] == belt # [maxhp] > 15 && [maxmana] > 15 # [tier] == 6 42 | [name] == belt # [maxhp] > 25 && [maxmana] > 25 # [tier] == 7 43 | [name] == belt && [quality] == rare && [flag] != ethereal # ([fireresist]+[lightresist]+[coldresist]+[poisonresist]) >= ([maxhp] + [maxmana] + 30) && [fhr] > 0 # [tier] == 8 44 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 30 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 9 45 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 40 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 8 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 10 46 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 50 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 12 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 11 47 | [name] == demonhidesash && [quality] == unique && [flag] != ethereal # # [tier] == 12 48 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 60 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 18 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 13 49 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 70 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 21 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 14 50 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 75 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 28 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 15 51 | [name] == demonhidesash && [quality] == unique && [flag] != ethereal # [lifedrainmindam] >= 6 # [tier] == 81 52 | [name] == belt && [quality] == unique && [flag] != ethereal # [fireresist] >= 10 && [lightresist] >= 10 # [maxquantity] == 1 && [tier] == 99 53 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [strength] > 10 && [strength] <= 15 && ([fhr] >= 10 || [maxhp] >= 30) && [maxhp] >= 20 && [fireresist] >= 10 && [lightresist] >= 10 # [tier] == 103 54 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [strength] > 15 && ([fhr] >= 10 || [maxhp] >= 30) && [maxhp] >= 20 && [fireresist] >= 10 && [lightresist] >= 10 # [tier] == 104 55 | [name] == meshbelt && [quality] == unique && [flag] != ethereal # [itemmaxmanapercent] == 15 # [tier] == 107 56 | 57 | // boots 58 | [type] == boots # [maxhp] > 0 || [maxmana] > 0 # [tier] == 1 59 | [type] == boots && [quality] == set # # [tier] == 1 60 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 10 # [tier] == 2 61 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 10 # [tier] == 3 62 | [type] == boots && [quality] == unique # # [tier] == 4 63 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 40 && ([maxmana] > 10 || [fhr] > 0) # [tier] == 5 64 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 40 && ([maxmana] > 20 || [fhr] > 0) # [tier] == 6 65 | [name] == sharkskinboots && [quality] == unique && [flag] != ethereal # # [maxquantity] == 1 && [tier] == 101 66 | [name] == battleboots && [quality] == unique && [flag] != ethereal # # [maxquantity] == 1 && [tier] == 102 67 | 68 | // helm 69 | [type] == helm && [flag] != ethereal # [maxhp] > 0 # [tier] == 1 70 | [type] == helm && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 2 71 | [type] == helm && [flag] != ethereal # [maxhp] > 5 # [tier] == 3 72 | [type] == helm && [quality] == set && [flag] != ethereal # # [tier] == 4 73 | [type] == helm && [flag] != ethereal # [maxhp] > 5 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 5 74 | [type] == helm && [flag] != ethereal # [maxhp] > 10 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 6 75 | [type] == helm && [flag] != ethereal # [maxhp] > 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 7 76 | [type] == helm && [quality] <= superior && [flag] != ethereal # [itemallskills] > 0 # [tier] == 8 77 | [type] == helm && [quality] == rare && [flag] != ethereal # ([paladinskills] > 0 || [palicombatskilltab] > 0) || [maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 # [tier] == 9 78 | [type] == helm && [quality] == rare && [flag] != ethereal # ([paladinskills] > 0 || [palicombatskilltab] > 0) || ([maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 && ([energy] > 0 || [fhr] > 0)) # [tier] == 10 79 | [type] == helm && [quality] == rare && [flag] != ethereal # ([paladinskills] > 1 || [palicombatskilltab] > 1) && ([maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 && ([energy] > 0 || [fhr] > 0)) # [tier] == 11 80 | [type] == helm && [quality] == rare && [flag] != ethereal # [fhr] > 0 && [enhanceddefense] < 90 && [maxhp] >= 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 38 81 | [type] == helm && [quality] == rare && [flag] != ethereal # [fhr] > 0 && [enhanceddefense] < 90 && [maxhp] >= 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 39 82 | [type] == helm && [name] != bonehelm && [name] != grimhelm && [quality] == rare && [flag] != ethereal # [enhanceddefense] >= 90 && [maxhp] >= 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 40 83 | [type] == helm && [name] != bonehelm && [name] != grimhelm && [quality] == rare && [flag] != ethereal # [enhanceddefense] >= 90 && [maxhp] >= 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 41 84 | [name] == bonehelm && [quality] == rare && [flag] != ethereal # [enhanceddefense] >= 90 && [maxhp] >= 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 101 85 | [name] == grimhelm && [quality] == rare && [flag] != ethereal # [enhanceddefense] >= 90 && [maxhp] >= 30 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 102 86 | [type] == helm && [flag] == runeword # [lightresist] >= 30 # [tier] == 103 87 | [name] == sallet && [quality] == unique && [flag] != ethereal # [fireresist] >= 12 && [lightresist] >= 12 # [tier] == 104 88 | [name] == deathmask && [quality] == set && [flag] != ethereal # [fireresist] >= 12 && [lightresist] >= 12 # [maxquantity] == 1 && [tier] == 105 89 | [name] == shako && [quality] == unique && [flag] != ethereal # [itemallskills] == 2 # [tier] == 106 90 | 91 | // amulet 92 | [type] == amulet # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 93 | [type] == amulet # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([hpregen] > 0 || [maxhp] > 0) # [tier] == 2 94 | [type] == amulet # [maxhp] > 15 # [tier] == 2 95 | [type] == amulet # [maxhp] > 15 && [maxmana] > 15 # [tier] == 3 96 | [type] == amulet && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && ([fcr] > 0 || [strength] > 0) # [tier] == 4 97 | [type] == amulet && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && ([fcr] > 0 && [strength] > 0) # [tier] == 5 98 | [type] == amulet && [quality] == unique # [itemallskills] == 1 # [tier] == 6 99 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 30 || ([maxhp] > 20 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 7 100 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 50 || ([maxhp] > 30 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 8 101 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 70 || ([maxhp] > 40 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60) # [tier] == 9 102 | [type] == amulet && [quality] == rare # ([maxhp]+[maxmana] >= 90 || ([maxhp] >= 50 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60)) # [tier] == 10 103 | [type] == amulet # ([fireresist]+[lightresist]+[coldresist]+[poisonresist] > 110) # [tier] == 11 104 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 110 || (([maxhp] >= 55) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 12 105 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 130 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 13 106 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 150 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 14 107 | [type] == amulet && [quality] == unique # [fireresist] >= 50 # [tier] == 98 108 | [type] == amulet && [quality] == unique # [itemabsorbfireperlevel] >= 0 # [tier] == 99 109 | [type] == amulet && [quality] == unique # [itemallskills] == 2 # [tier] == 100 110 | [name] == amulet && [quality] == rare # [itemmagicbonus] == 0 && [paladinskills] == 2 && (([strength] > 5 && [strength] <= 10) || ([maxhp] >= 20 && [maxhp] < 30)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60 # [tier] == 101 // 15 res all or higher 111 | [name] == amulet && [quality] == rare # [itemmagicbonus] == 0 && [paladinskills] == 2 && (([strength] > 10 && [strength] <= 15) || ([maxhp] >= 30 && [maxhp] < 40)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60 # [tier] == 102 // 15 res all or higher 112 | [name] == amulet && [quality] == rare # [itemmagicbonus] == 0 && [paladinskills] == 2 && ([strength] > 15 || [maxhp] >= 40) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60 # [tier] == 103 // 15 res all or higher 113 | 114 | //ilvl is high enough for +skills 115 | [type] == amulet && [quality] == rare # ([palicombatskilltab] > 0 && ([maxhp]+[maxmana] >= 90) || ([maxhp] > 50 && ([strength] > 0 || [fcr] > 0))) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 20 # [tier] == 15 116 | [type] == amulet && [quality] == rare # ([paladinskills] > 0 && [maxhp]+[maxmana] >= 90) || ([maxhp] > 50 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 20) # [tier] == 16 117 | [type] == amulet && [quality] == rare # ([palicombatskilltab] > 0 && [maxhp]+[maxmana] >= 110) || ([maxhp] > 55 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 17 118 | [type] == amulet && [quality] == rare # ([paladinskills] > 0 && [maxhp]+[maxmana] >= 110) || ([maxhp] > 55 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 18 119 | [type] == amulet && [quality] == rare # ([palicombatskilltab] > 0 || [paladinskills] > 0) && ([maxhp]+[maxmana] >= 130 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0))) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40 # [tier] == 19 120 | [type] == amulet && [quality] == rare # ([palicombatskilltab] > 0 || [paladinskills] > 0) && ([maxhp]+[maxmana] >= 150 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 20 121 | //highend 122 | [type] == amulet && [quality] == rare # ([palicombatskilltab] >= 2 || [paladinskills] > 1) && ([maxhp]+[maxmana] >= 100 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 21 123 | [type] == amulet && [quality] == rare # ([palicombatskilltab] >= 2 || [paladinskills] > 1) && ([maxhp]+[maxmana] >= 110 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5))&& [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 22 124 | [type] == amulet && [quality] == rare # ([palicombatskilltab] >= 2 || [paladinskills] > 1) && ([maxhp]+[maxmana] >= 120 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 23 125 | [type] == amulet && [quality] == rare # ([palicombatskilltab] >= 2 || [paladinskills] > 1) && ([maxhp]+[maxmana] >= 130 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 24 126 | [type] == amulet && [quality] == rare # ([palicombatskilltab] >= 2 || [paladinskills] > 1) && ([maxhp]+[maxmana] >= 145 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 25 127 | 128 | // ring 129 | 130 | [type] == ring # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 131 | [type] == ring # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([hpregen] > 0 || [maxhp] > 0) # [tier] == 2 132 | [type] == ring # [maxhp] > 15 # [tier] == 2 133 | [type] == ring # [maxhp] > 15 && [maxmana] > 15 # [tier] == 3 134 | [type] == ring && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && [fcr] > 0 || [strength] > 0 # [tier] == 4 135 | [type] == ring && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && [fcr] > 0 && [strength] > 0 # [tier] == 5 136 | [type] == ring && [quality] == unique # [itemallskills] == 1 # [tier] == 101 //soj 137 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 30 || ([maxhp] > 20 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 7 138 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 50 || ([maxhp] > 25 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 8 139 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 70 || ([maxhp] > 30 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 9 140 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 90 || ([maxhp] > 35 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 10 141 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 110 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 11 142 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 120 &&([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 12 143 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 130 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 12 144 | [name] == ring && ([quality] == magic || [quality] == rare) # [fcr] == 10 && [maxhp] > 30 && [strength] > 5 && [strength] <= 10 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 1 # [tier] == 33 145 | [name] == ring && ([quality] == magic || [quality] == rare) # [fcr] == 10 && [maxhp] > 30 && [strength] > 5 && [strength] <= 10 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 1 # [tier] == 34 146 | [name] == ring && ([quality] == magic || [quality] == rare) # [fcr] == 10 && [maxhp] > 30 && [strength] > 10 && [strength] <= 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 1 # [tier] == 101 147 | [name] == ring && ([quality] == magic || [quality] == rare) # [fcr] == 10 && [maxhp] > 30 && [strength] > 10 && [strength] <= 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 102 148 | [name] == ring && ([quality] == magic || [quality] == rare) # [fcr] == 10 && [maxhp] > 30 && [strength] > 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 103 149 | [name] == ring && ([quality] == magic || [quality] == rare) # [fcr] == 10 && [maxhp] > 30 && [strength] > 15 && ([coldresist] >= 10) + ([fireresist] >= 10) + ([lightresist] >= 10) >= 2 # [tier] == 104 150 | 151 | // armor 152 | [type] == armor # [maxhp] > 0 || [strength] > 0 # [tier] == 1 153 | [type] == armor # [maxhp] > 0 && [strength] > 0 # [tier] == 1 154 | [name] == quiltedarmor && [quality] == set # # [tier] == 3 155 | [type] == armor # [maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist] >= 20 # [tier] == 4 156 | [type] == armor && [quality] <= superior # [poisonresist] == 30 # [tier] == 5 157 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 40 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] > 0 # [tier] == 6 158 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 50 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 3 # [tier] == 7 159 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 60 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 8 160 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 70 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 9 161 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 80 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 10 162 | [name] == cuirass && [quality] == unique && [flag] != ethereal # # [tier] == 11 163 | [name] == mageplate && [quality] == unique && [flag] != ethereal # # [tier] == 12 164 | [name] == serpentskinarmor && [quality] == unique && [flag] != ethereal # # [tier] == 13 165 | [name] == russetarmor && [quality] == unique && [flag] != ethereal # # [tier] == 14 166 | [name] == mesharmor && [quality] == unique && [flag] != ethereal # # [tier] == 15 167 | [name] == russetarmor && [quality] == unique && [flag] == ethereal # # [tier] == 16 168 | [type] == armor && [flag] == runeword # [fireresist] == 50 && [lightresist] == 50 # [tier] == 101 169 | [type] == armor && [flag] == runeword # [lightresist] >= 60 # [tier] == 102 170 | 171 | // weapon 172 | [type] == scepter && [quality] == magic && [flag] != ethereal # # [tier] == 9 173 | [type] == scepter && [quality] == rare && [flag] != ethereal # # [tier] == 10 174 | [type] == scepter && [quality] == magic && [flag] != ethereal # [skillmight] >= 1 # [tier] == 11 175 | [type] == scepter && [quality] == rare && [flag] != ethereal # [skillmight] >= 1 # [tier] == 12 176 | [type] == scepter && [flag] != ethereal # [skillmight] >= 2 # [tier] == 13 177 | [type] == scepter && [flag] != ethereal # [skillconcentration] >= 1 # [tier] == 14 178 | [type] == scepter && [flag] != ethereal # [skillconcentration] >= 2 # [tier] == 15 179 | [type] == scepter && [flag] != ethereal # [skillconcentration] >= 1 && [skillblessedhammer] >= 1 # [tier] == 16 180 | [type] == scepter && [flag] != ethereal # [skillconcentration] >= 2 && [skillblessedhammer] >= 2 # [tier] == 17 181 | [type] == sword && [flag] == runeword # [itemallskills] == 2 && [fcr] >= 25 && [fhr] >= 55 # [tier] == 100 //spirit 182 | 183 | // shield 184 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 10 || [maxhp] > 9 # [tier] == 1 185 | [type] == auricshields # [fireresist]+[lightresist]+[coldresist] >= 0 # [tier] == 2 186 | [type] == auricshields # [fireresist]+[lightresist]+[coldresist] >= 40 || [maxhp] > 29 # [tier] == 3 187 | [type] == auricshields # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 9 # [tier] == 4 188 | [type] == auricshields # [fireresist]+[lightresist]+[coldresist] >= 20 && [maxhp] > 19 # [tier] == 5 189 | [type] == auricshields # [fireresist]+[lightresist]+[coldresist] >= 40 && [maxhp] > 29 # [tier] == 6 190 | [type] == auricshields && [quality] == rare && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] > 0 || [strength] > 0) # [tier] == 7 191 | [type] == auricshields && [quality] == rare && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] > 0 && [strength] >= 3) # [tier] == 8 192 | [type] == auricshields && [quality] == rare && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] == 30 && [strength] >= 6) # [tier] == 9 193 | [type] == auricshields && [quality] <= superior && [flag] != ethereal # ([poisonresist]+[fireresist]+[coldresist]+[lightresist] == 30) && [fbr] == 40 # [tier] == 10 194 | [type] == shield && [flag] == runeword # [itemgoldbonus] == 50 # [tier] == 11 //rhyme 195 | [type] == shield && [flag] == runeword # [fireresist] >= 40 && [lightresist] >= 40 # [maxquantity] == 1 && [tier] == 100 //ancient's pledge 196 | [type] == auricshields && [flag] == runeword # [fcr] >= 25 && [fhr] >= 55 # [maxquantity] == 1 && [tier] == 101 //spirit -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/rare.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of rare items that you want your bot to pick up. 3 | // note that you will find more rare items listed in the magic.nip under combined rare/magic categories. 4 | // 5 | // any item on this list which starts with //[ will not be picked up at all 6 | // any item on this list which starts with [ will be picked up, then kept unid'ed or checked and then kept if it's good enough. 7 | // ----------------------------------------------------------------------------------------------------- 8 | 9 | // rare rings 10 | [type] == ring && [quality] == rare # [itemmagicbonus] >= 25 11 | //[type] == ring && [quality] == rare # [fcr] >= 10 && ([dexterity] >= 10 || [strength] >= 15) && [maxhp] >= 15 12 | //[type] == ring && [quality] == rare # [fcr] >= 10 && ([dexterity] >= 13 || [strength] >= 17) && [hpregen] >= 7 13 | //[type] == ring && [quality] == rare # [fcr] >= 10 && ([dexterity] >= 13 || [strength] >= 17) && ([coldresist] >= 15 || [fireresist] >= 15 || [lightresist] >= 15) 14 | //[type] == ring && [quality] == rare # [fcr] >= 10 && ([dexterity] >= 13 || [strength] >= 17) && (([coldresist]+[lightresist] >= 30) || ([fireresist]+[lightresist] >= 30)) //(([coldresist]+[fireresist] >= 15) || ([coldresist]+[lightresist] >= 15) || ([fireresist]+[lightresist] >= 15)) 15 | //[type] == ring && [quality] == rare # [fcr] >= 10 && ([dexterity] >= 13 || [strength] >= 17) && [mana] >= 50 16 | //[type] == ring && [quality] == rare # [fcr] >= 10 && [strength]+[dexterity] >= 20 17 | //[type] == ring && [quality] == rare # [fcr] >= 10 && [maxhp] >= 25 && [hpregen] >= 7 18 | //[type] == ring && [quality] == rare # [fcr] >= 10 && [maxhp] >= 35 && ([coldresist] >= 15 || [fireresist] >= 15 || [lightresist] >= 15) 19 | //[type] == ring && [quality] == rare # [fcr] >= 10 && [maxhp] >= 25 && (([coldresist]+[fireresist] >= 20) || ([coldresist]+[lightresist] >= 20) || ([fireresist]+[lightresist] >= 20)) 20 | [type] == ring && [quality] == rare # [dexterity]+[strength] >= 30 && (([coldresist]+[fireresist] >= 15) || ([coldresist]+[lightresist] >= 15) || ([fireresist]+[lightresist] >= 15)) 21 | [type] == ring && [quality] == rare # [dexterity]+[strength] >= 30 && ([coldresist] >= 15 || [fireresist] >= 15 || [lightresist] >= 15) 22 | //[type] == ring && [quality] == rare # [dexterity]+[strength] >= 30 && [maxhp] >= 15 23 | //[type] == ring && [quality] == rare # [dexterity]+[strength] >= 30 && [mana] >= 50 24 | [type] == ring && [quality] == rare # [strength]+[dexterity] >= 30 && [manaleech]+[lifeleech] >= 6 25 | //[type] == ring && [quality] == rare # ([dexterity] >= 15 || [strength] >= 20) && [maxhp] >= 35 26 | //[type] == ring && [quality] == rare # ([dexterity] >= 15 || [strength] >= 20) && [hpregen] >= 7 27 | [type] == ring && [quality] == rare # ([dexterity] >= 15 || [strength] >= 17) && [manaleech]+[lifeleech] >= 10 28 | [type] == ring && [quality] == rare # [manaleech]+[lifeleech] >= 10 && (([coldresist]+[fireresist] >= 30) || ([coldresist]+[lightresist] >= 30) || ([fireresist]+[lightresist] >= 30)) 29 | //[type] == ring && [quality] == rare # [manaleech]+[lifeleech] >= 10 && [maxhp] >= 35 30 | 31 | // rare mf amulet 32 | [type] == amulet && [quality] == rare # [itemmagicbonus] >= 35 33 | 34 | // rare visionary circlet 35 | [type] == circlet && [quality] == rare # [itemtohitpercentperlevel] > 1 36 | 37 | // rare visionary barb helm 38 | [type] == primalhelm && [quality] == rare # [itemtohitpercentperlevel] > 1 39 | 40 | // rare visionary helm 41 | [type] == helm && [quality] == rare # [itemtohitpercentperlevel] > 1 42 | 43 | // rare battle order helm 44 | [type] == primalhelm && [quality] == rare # [warcriesskilltab] >= 2 45 | [type] == primalhelm && [quality] == rare # [barbarianskills] == 2 46 | 47 | // rare shields 48 | [type] == auricshields && [quality] == rare && [flag] != ethereal # ([paladinskills] == 2 || [palicombatskilltab] == 2) 49 | [type] == auricshields && [quality] == rare && [flag] == ethereal # [paladinskills] >= 2 && [itemreplenishdurability] >= 1 50 | 51 | // rare gloves 52 | [type] == gloves && [quality] == rare && [flag] != ethereal # [dexterity] >= 15 || [strength] >= 15 53 | [type] == gloves && [quality] == rare && [flag] != ethereal # [ias] == 20 && ([dexterity] >= 10 || [strength] >= 13) 54 | [type] == gloves && [quality] == rare && [flag] != ethereal # [ias] == 20 && ([bowandcrossbowskilltab] == 2 || [passiveandmagicskilltab] == 2 || [javelinandspearskilltab] == 2) 55 | [type] == gloves && [quality] == rare && [flag] == ethereal # [dexterity] >= 15 || [strength] >= 15 && [itemreplenishdurability] >= 1 56 | [type] == gloves && [quality] == rare && [flag] == ethereal # [ias] == 20 && ([dexterity] >= 10 || [strength] >= 13) && [itemreplenishdurability] >= 1 57 | [type] == gloves && [quality] == rare && [flag] == ethereal # [ias] == 20 && ([bowandcrossbowskilltab] == 2 || [passiveandmagicskilltab] == 2 || [javelinandspearskilltab] == 2) && [itemreplenishdurability] >= 1 58 | 59 | // rare boots 60 | [type] == boots && [quality] == rare && [flag] != ethereal # [frw] >= 30 && (([coldresist]+[fireresist] >= 70) || ([coldresist]+[lightresist] >= 70) || ([fireresist]+[lightresist] >= 70)) 61 | [type] == boots && [quality] == rare && [flag] != ethereal # (([coldresist]+[fireresist]+[lightresist] >= 75) || ([coldresist]+[fireresist]+[poisonresist] >= 90) || ([coldresist]+[lightresist]+[poisonresist] >= 90) || ([fireresist]+[lightresist]+[poisonresist] >= 90)) 62 | [type] == boots && [quality] == rare && [flag] == ethereal # [frw] >= 30 && (([coldresist]+[fireresist] >= 70) || ([coldresist]+[lightresist] >= 70) || ([fireresist]+[lightresist] >= 70)) && [itemreplenishdurability] >= 1 63 | [type] == boots && [quality] == rare && [flag] == ethereal # [frw] >= 30 && (([coldresist]+[fireresist]+[lightresist] >= 75) || ([coldresist]+[fireresist]+[poisonresist] >= 90) || ([coldresist]+[lightresist]+[poisonresist] >= 90) || ([fireresist]+[lightresist]+[poisonresist] >= 90)) && [itemreplenishdurability] >= 1 64 | 65 | // rare belts 66 | [type] == belt && [quality] == rare && [flag] != ethereal # [strength] >= 20 && [maxhp] >= 40 67 | //[type] == belt && [quality] == rare && [flag] == ethereal # [fhr] == 24 && [strength] >= 20 && [maxhp] >= 40 && [itemreplenishdurability] >= 1 68 | 69 | // rare melee weapons 70 | //[type] == axe && [quality] == rare && [flag] != ethereal # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 71 | //[type] == sword && [quality] == rare && [flag] != ethereal # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 72 | //[type] == mace && [quality] == rare && [flag] != ethereal # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 73 | //[type] == hammer && [quality] == rare && [flag] != ethereal # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 74 | [type] == scepter && [quality] == rare && [flag] != ethereal # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 75 | [type] == polearm && [quality] == rare && [flag] != ethereal # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 76 | //[type] == knife && [quality] == rare && [flag] != ethereal # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 77 | 78 | // rare bows 79 | //[type] == bow && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 80 | //[type] == amazonbow && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 81 | 82 | // rare javelins 83 | //[type] == javelin && [quality] == rare && [flag] != ethereal # [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 84 | //[type] == javelin && [quality] == rare && [flag] == ethereal # ([enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250) && [itemreplenishquantity] >= 1 85 | //[type] == amazonjavelin && [quality] == rare && [flag] != ethereal # [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 86 | //[type] == amazonjavelin && [quality] == rare && [flag] == ethereal # ([enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250) && [itemreplenishquantity] >= 1 87 | 88 | // rare throwing weapons 89 | //[type] == thrownweapon && [quality] == rare && [flag] != ethereal # [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 90 | //[type] == thrownweapon && [quality] == rare && [flag] == ethereal # ([enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250) && [itemreplenishquantity] >= 1 91 | //[type] == throwingknife && [quality] == rare && [flag] != ethereal # [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 92 | //[type] == throwingknife && [quality] == rare && [flag] == ethereal # ([enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250) && [itemreplenishquantity] >= 1 93 | //[type] == throwingaxe && [quality] == rare && [flag] != ethereal # [enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250 94 | //[type] == throwingaxe && [quality] == rare && [flag] == ethereal # ([enhanceddamage] >= 300 || [itemmaxdamageperlevel] >= 1 && [enhanceddamage] >= 250) && [itemreplenishquantity] >= 1 95 | 96 | // rare claws 97 | //[type] == assassinclaw && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 250 98 | //[type] == assassinclaw && [quality] == rare && [flag] == ethereal # [enhanceddamage] >= 250 && [itemreplenishdurability] >= 1 99 | //[type] == handtohand && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 250 100 | //[type] == handtohand && [quality] == rare && [flag] == ethereal # [enhanceddamage] >= 250 && [itemreplenishdurability] >= 1 101 | //[name] == runictalons && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 250 102 | //[name] == runictalons && [quality] == rare && [flag] == ethereal # [enhanceddamage] >= 250 && [itemreplenishdurability] >= 1 103 | //[name] == feralclaws && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 250 104 | //[name] == feralclaws && [quality] == rare && [flag] == ethereal # [enhanceddamage] >= 250 && [itemreplenishdurability] >= 1 105 | //[name] == wristsword && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 250 106 | //[name] == wristsword && [quality] == rare && [flag] == ethereal # [enhanceddamage] >= 250 && [itemreplenishdurability] >= 1 107 | //[name] == battlecestus && [quality] == rare # [ias] >= 20 && [enhanceddamage] >= 250 108 | //[name] == battlecestus && [quality] == rare && [flag] == ethereal # [enhanceddamage] >= 250 && [itemreplenishdurability] >= 1 -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/runes.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of 'other' items that you want your bot to pick up. 3 | // 4 | // any item on this list which starts with //[ will not be picked up at all 5 | // any item on this list which starts with [ will be picked up, then kept unid'ed or checked and then kept if it's good enough. 6 | // ----------------------------------------------------------------------------------------------------- 7 | 8 | //gold 9 | [type] == gold # [gold] >= 10 10 | 11 | //scrolls 12 | [name] == scrolloftownportal 13 | //[name] == scrollofidentify 14 | 15 | //chest key 16 | //[name] == key # # [maxquantity] == 12 17 | 18 | //uber quest keys 19 | //[name] == keyofterror 20 | //[name] == keyofhate 21 | //[name] == keyofdestruction 22 | //[name] == keyofterror # # [maxquantity] == 3 23 | //[name] == keyofhate # # [maxquantity] == 3 24 | //[name] == keyofdestruction # # [maxquantity] == 3 25 | 26 | //uber quest organs 27 | [name] == diablo'shorn 28 | [name] == mephisto'sbrain 29 | [name] == baal'seye 30 | 31 | //respec essences 32 | //[name] == twistedessenceofsuffering # # [maxquantity] == 2 33 | //[name] == chargedessenceofhatred # # [maxquantity] == 2 34 | //[name] == burningessenceofterror # # [maxquantity] == 2 35 | //[name] == festeringessenceofdestruction # # [maxquantity] == 2 36 | //[name] == tokenofabsolution # # [maxquantity] == 5 37 | 38 | //runes 39 | //[name] == elrune # # [maxquantity] == 3 40 | //[name] == eldrune # # [maxquantity] == 3 41 | //[name] == tirrune # # [maxquantity] == 3 42 | //[name] == nefrune # # [maxquantity] == 3 43 | //[name] == ethrune # # [maxquantity] == 3 44 | //[name] == ithrune # # [maxquantity] == 3 45 | //[name] == talrune # # [maxquantity] == 3 46 | //[name] == ralrune # # [maxquantity] == 3 47 | //[name] == ortrune # # [maxquantity] == 3 48 | //[name] == thulrune # # [maxquantity] == 3 49 | //[name] == amnrune # # [maxquantity] == 3 50 | //[name] == solrune # # [maxquantity] == 3 51 | //[name] == shaelrune # # [maxquantity] == 3 52 | //[name] == dolrune # # [maxquantity] == 3 53 | //[name] == helrune # # [maxquantity] == 3 54 | //[name] == iorune # # [maxquantity] == 3 55 | //[name] == lumrune # # [maxquantity] == 3 56 | //[name] == korune # # [maxquantity] == 3 57 | //[name] == falrune # # [maxquantity] == 3 58 | //[name] == lemrune # # [maxquantity] == 3 59 | //[name] == pulrune # # [maxquantity] == 5 60 | //[name] == umrune # # [maxquantity] == 5 61 | //[name] == malrune # # [maxquantity] == 5 62 | [name] >= pulrune && [name] <= zodrune 63 | 64 | //gems 65 | //[name] == chippedamethyst # # [maxquantity] == 1 66 | //[name] == chippeddiamond # # [maxquantity] == 1 67 | //[name] == chippedemerald # # [maxquantity] == 1 68 | //[name] == chippedruby # # [maxquantity] == 1 69 | //[name] == chippedsapphire # # [maxquantity] == 1 70 | //[name] == chippedskull # # [maxquantity] == 1 71 | //[name] == chippedtopaz # # [maxquantity] == 1 72 | //[name] == flawedamethyst # # [maxquantity] == 1 73 | //[name] == flaweddiamond # # [maxquantity] == 1 74 | //[name] == flawedemerald # # [maxquantity] == 1 75 | //[name] == flawedruby # # [maxquantity] == 1 76 | //[name] == flawedsapphire # # [maxquantity] == 1 77 | //[name] == flawedskull # # [maxquantity] == 1 78 | //[name] == flawedtopaz # # [maxquantity] == 1 79 | //[name] == amethyst # # [maxquantity] == 1 80 | //[name] == diamond # # [maxquantity] == 1 81 | //[name] == emerald # # [maxquantity] == 1 82 | //[name] == ruby # # [maxquantity] == 1 83 | //[name] == skull # # [maxquantity] == 1 84 | //[name] == sapphire # # [maxquantity] == 1 85 | //[name] == topaz # # [maxquantity] == 1 86 | //[name] == flawlessamethyst # # [maxquantity] == 1 87 | //[name] == flawlessdiamond # # [maxquantity] == 1 88 | //[name] == flawlessemerald # # [maxquantity] == 1 89 | //[name] == flawlessruby # # [maxquantity] == 1 90 | //[name] == flawlesssapphire # # [maxquantity] == 1 91 | //[name] == flawlessskull # # [maxquantity] == 1 92 | //[name] == flawlesstopaz # # [maxquantity] == 1 93 | [name] == perfectamethyst # # [maxquantity] == 3 94 | [name] == perfectdiamond # # [maxquantity] == 3 95 | [name] == perfectemerald # # [maxquantity] == 3 96 | [name] == perfectruby # # [maxquantity] == 3 97 | [name] == perfectsapphire # # [maxquantity] == 3 98 | [name] == perfectskull # # [maxquantity] == 3 99 | [name] == perfecttopaz # # [maxquantity] == 3 100 | 101 | //potions 102 | [name] == greaterhealingpotion 103 | [name] == superhealingpotion 104 | [name] == greatermanapotion 105 | [name] == supermanapotion 106 | [name] == rejuvenationpotion 107 | [name] == fullrejuvenationpotion 108 | 109 | //ears 110 | // used in conjunction with the hostilekill function 111 | // if you want to collect ears, then simply uncomment 112 | 113 | //[type] == playerbodypart && [quality] == normal -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/runeword.nip: -------------------------------------------------------------------------------- 1 | [type] == weapon && [flag] == runeword 2 | [type] == armor && [flag] == runeword 3 | [type] == shield && [flag] == runeword 4 | [type] == helm && [flag] == runeword -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/sell.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of items that you want your bot to pick up for money during the beginner stage. 3 | // 4 | // ----------------------------------------------------------------------------------------------------- 5 | 6 | //white weapons 7 | [type] == wand && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 8 | [type] == bow && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 9 | [type] == crossbow && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 10 | [type] == comboweapon && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 11 | //----------------------------- 12 | [type] == javelin && ([quality] >= magic && [quality] <= rare) # [itemreplenishquantity] > 1000 // never, so sold 13 | [type] == throwingknife && ([quality] >= magic && [quality] <= rare) # [itemreplenishquantity] > 1000 // never, so sold 14 | [type] == throwingaxe && ([quality] >= magic && [quality] <= rare) # [itemreplenishquantity] > 1000 // never, so sold 15 | [type] == thrownweapon && ([quality] >= magic && [quality] <= rare) # [itemreplenishquantity] > 1000 // never, so sold 16 | //---------------------------- 17 | [type] == amazonbow && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 18 | [type] == amazonspear && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 19 | [type] == amazonjavelin && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 20 | ([type] == handtohand || [type] == assassinclaw) && ([quality] >= magic && [quality] <= rare) # [enhanceddamage] >= 2500 //never, so sold 21 | //---------------------------- 22 | [type] == voodooheads && ([quality] >= magic && [quality] <= rare) # [enhanceddefense] >= 2500 //never, so sold 23 | [type] == pelt && ([quality] >= magic && [quality] <= rare) # [enhanceddefense] >= 2500 //never, so sold 24 | //---------------------------- 25 | [name] == minorhealingpotion 26 | [name] == lighthealingpotion 27 | [name] == minormanapotion 28 | [name] == lightmanapotion 29 | [name] == healingpotion 30 | [name] == manapotion 31 | [name] == greaterhealingpotion 32 | [name] == superhealingpotion 33 | [name] == greatermanapotion 34 | [name] == supermanapotion 35 | [name] == rejuvenationpotion 36 | [name] == fullrejuvenationpotion -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/set.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of set items that you want your bot to pick up. 3 | // 4 | // any item on this list which starts with //[ will not be picked up at all 5 | // any item on this list which starts with [ will be picked up, then kept unid'ed or checked and then kept if it's good enough. 6 | // ----------------------------------------------------------------------------------------------------- 7 | 8 | // # angelic raiment # 9 | //[name] == ringmail && [quality] == set // angelic mantle 10 | //[name] == sabre && [quality] == set // angelic sickle 11 | //[type] == ring && [quality] == set # [maxhp] == 20 // angelic halo 12 | //[type] == amulet && [quality] == set # [itemlightradius] == 3 && [itemdamagetomana] == 20 // angelic wings 13 | 14 | // # arcanna's tricks # 15 | //[type] == amulet && [quality] == set # [maxmana] == 15 // arcanna's sign 16 | //[name] == skullcap && [quality] == set // arcanna's head 17 | //[name] == lightplate && [quality] == set // arcanna's flesh 18 | //[name] == warstaff && [quality] == set // arcanna's deathwand 19 | 20 | // # arctic gear # 21 | //[name] == quiltedarmor && [quality] == set // arctic furs 22 | //[name] == lightbelt && [quality] == set // arctic binding 23 | //[name] == lightgauntlets && [quality] == set # [maxhp] == 20 && [ias] == 10 // arctic mitts 24 | //[name] == shortwarbow && [quality] == set // arctic horn 25 | 26 | // # berseker's arsenal # 27 | //[name] == helm && [quality] == set // berserker's headgear 28 | //[name] == splintmail && [quality] == set // berserker's hauberk 29 | //[name] == doubleaxe && [quality] == set // berserker's hatchet 30 | 31 | // # cathan's traps # 32 | //[type] == ring && [quality] == set # [lifeleech] == 6 && [normaldamagereduction] == 2 // cathan's seal 33 | //[type] == amulet && [quality] == set # [fhr] == 10 && [lightmaxdam] == 5 // cathan's sigil 34 | //[name] == chainmail && [quality] == set // cathan's mesh 35 | //[name] == mask && [quality] == set // cathan's visage 36 | 37 | // # civerb's vestment # 38 | //[name] == grandscepter && [quality] == set // civerb's cudgel 39 | //[type] == amulet && [quality] == set # [manarecovery] == 40 && [hpregen] == 4 // civerb's icon 40 | //[name] == largeshield && [quality] == set // civerb's ward 41 | 42 | // # cleglaw's brace # 43 | //[name] == longsword && [quality] == set // cleglaw's tooth 44 | //[name] == chaingloves && [quality] == set // cleglaw's pincers 45 | //[name] == smallshield && [quality] == set // cleglaw's claw 46 | 47 | // # death's disguise # 48 | //[name] == warsword && [quality] == set // death's touch 49 | //[name] == leathergloves && [quality] == set // death's hand 50 | //[name] == sash && [quality] == set // death's guard 51 | 52 | // # hsaru's defense # 53 | //[name] == buckler && [quality] == set // hsarus' iron fist 54 | //[name] == belt && [quality] == set # [coldresist] == 20 && [maxhp] == 20 // hsarus' iron stay 55 | //[name] == chainboots && [quality] == set // hsarus' iron heel 56 | 57 | // # infernal tools # 58 | //[name] == cap && [quality] == set # [fireresist] == 10 && [lightresist] == 10 && [coldresist] == 10 && [poisonresist] == 10 // infernal cranium 59 | //[name] == grimwand && [quality] == set // infernal touch 60 | //[name] == heavybelt && [quality] == set # [maxhp] == 20 && [enhanceddefense] == 25 // infernal sign 61 | 62 | // # iratha's finery # 63 | //[name] == heavybelt && [quality] == set # [mindamage] == 5 // iratha's cord 64 | //[name] == crown && [quality] == set # [fireresist] == 30 && [lightresist] == 30 // iratha's coil 65 | //[type] == amulet && [quality] == set # [poisonresist] == 30 && [poisonlength] == -75 // iratha's collar 66 | //[name] == lightgauntlets && [quality] == set # [coldresist] == 30 // iratha's cuff 67 | 68 | // # isenhart's armory # 69 | //[name] == broadsword && [quality] == set // isenhart's lightbrand 70 | //[name] == fullhelm && [quality] == set // isenhart's horns 71 | //[name] == breastplate && [quality] == set // isenhart's case 72 | //[name] == gothicshield && [quality] == set // isenhart's parry 73 | 74 | // # milabrega's regalia # 75 | //[name] == kiteshield && [quality] == set // milabrega's orb 76 | //[name] == ancientarmor && [quality] == set // milabrega's robe 77 | //[name] == warscepter && [quality] == set // milabrega's rod 78 | //[name] == crown && [quality] == set # [maxhp] == 15 && [maxmana] == 15 // milabrega's diadem 79 | 80 | // # sigon's steel # 81 | //[name] == greathelm && [quality] == set // sigon's visor 82 | //[name] == gothicplate && [quality] == set // sigon's shelter 83 | //[name] == greaves && [quality] == set // sigon's sabot 84 | //[name] == towershield && [quality] == set // sigon's guard 85 | //[name] == platedbelt && [quality] == set // sigon's warp 86 | //[name] == gauntlets && [quality] == set // sigon's gage 87 | 88 | // # tancred's battlegear # 89 | //[name] == bonehelm && [quality] == set // tancred's skull 90 | //[name] == fullplatemail && [quality] == set // tancred's spine 91 | //[name] == boots && [quality] == set # [staminarecoverybonus] == 25 && [dexterity] == 10 // tancred's hobnails 92 | //[name] == militarypick && [quality] == set // tancred's crowbill 93 | //[type] == amulet && [quality] == set # [magicdamagereduction] == 1 && [normaldamagereduction] == 2 // tancred's weird 94 | 95 | // # vidala's rig # 96 | //[type] == amulet && [quality] == set # [coldresist] == 20 && [maxmana] == 15 // vidala's snare 97 | //[name] == longbattlebow && [quality] == set // vidala's barb 98 | //[name] == leatherarmor && [quality] == set // vidala's ambush 99 | //[name] == lightplatedboots && [quality] == set // vidala's fetlock 100 | 101 | // # aldur's watchtower # 102 | //[name] == huntersguise && [quality] == set // aldur's stony gaze 103 | //**[name] == battleboots && [quality] == set // aldur's advance 104 | //[name] == shadowplate && [quality] == set // aldur's deception 105 | //[name] == jaggedstar && [quality] == set // aldur's rhythm 106 | 107 | // # bul kathos' children # 108 | //[name] == colossusblade && [quality] == set // bul-kathos' sacred charge 109 | //[name] == mythicalsword && [quality] == set // bul-kathos' tribal guardian 110 | 111 | // # cow king's leathers # 112 | //[name] == warhat && [quality] == set // cow king's horns 113 | //[name] == studdedleather && [quality] == set // cow king's hide 114 | //[name] == heavyboots && [quality] == set # [dexterity] == 20 && [itemmagicbonus] == 25 // cow king's hooves 115 | 116 | // # the disciple # 117 | //[type] == amulet && [quality] == set # [itemallskills] == 1 && [coldresist] == 18 // telling of beads 118 | //**[name] == bramblemitts && [quality] == set // laying of hands 119 | //[name] == duskshroud && [quality] == set // dark adherent 120 | //[name] == demonhideboots && [quality] == set // rite of passage 121 | //[name] == mithrilcoil && [quality] == set // credendum 122 | 123 | // #griswold's legacy # 124 | //[name] == ornateplate && [quality] == set # [defense] >= 920 // griswold's heart 125 | //[name] == corona && [quality] == set # [enhanceddefense] >= 55 // griswold's valor 126 | //[name] == caduceus && [quality] == set # [sockets] >= 3 && [enhanceddamage] >= 200 // griswold's redemption 127 | //[name] == vortexshield && [quality] == set # [defense] >= 290 // griswold's honor 128 | 129 | // # heaven's brethren # 130 | //[name] == cuirass && [quality] == set // haemosu's adamant 131 | //[name] == reinforcedmace && [quality] == set // dangoon's teaching 132 | //[name] == ward && [quality] == set // taebaek's glory 133 | //[name] == spiredhelm && [quality] == set // ondal's almighty 134 | 135 | // # hwanin's majesty # 136 | //[name] == grandcrown && [quality] == set // hwanin's splendor 137 | //[name] == bill && [quality] == set // hwanin's justice 138 | //[name] == tigulatedmail && [quality] == set // hwanin's refuge 139 | //[name] == belt && [quality] == set # [lightmindam] == 3 && [lightmaxdam] == 33 // hwanin's blessing 140 | 141 | // # immortal king # 142 | //[name] == warbelt && [quality] == set // immortal king's detail 143 | //[name] == avengerguard && [quality] == set // immortal king's will 144 | //[name] == ogremaul && [quality] == set // immortal king's stone crusher 145 | //[name] == sacredarmor && [quality] == set // immortal king's soul cage 146 | //[name] == wargauntlets && [quality] == set // immortal king's forge 147 | //[name] == warboots && [quality] == set // immortal king's pillar 148 | 149 | // # m'avina's battle hymn # 150 | //[name] == diadem && [quality] == set // m'avina's true sight 151 | //[name] == grandmatronbow && [quality] == set // m'avina's caster 152 | //[name] == krakenshell && [quality] == set // m'avina's embrace 153 | //[name] == battlegauntlets && [quality] == set // m'avina's icy clutch 154 | //[name] == sharkskinbelt && [quality] == set // m'avina's tenet 155 | 156 | // # natalya's odium # 157 | //[name] == grimhelm && [quality] == set // natalya's totem 158 | //[name] == scissorssuwayyah && [quality] == set // natalya's mark 159 | //[name] == loricatedmail && [quality] == set // natalya's shadow 160 | //[name] == meshboots && [quality] == set // natalya's soul 161 | 162 | // # naj's ancient vestige # 163 | //[name] == circlet && [quality] == set // naj's circlet 164 | //[name] == hellforgeplate && [quality] == set // naj's light plate 165 | //[name] == elderstaff && [quality] == set // naj's puzzler 166 | 167 | // # orphan's call # 168 | //[name] == wingedhelm && [quality] == set // guillaume's face 169 | //[name] == roundshield && [quality] == set // whistan's guard 170 | //[name] == sharkskingloves && [quality] == set // magnus' skin 171 | //[name] == battlebelt && [quality] == set // wilhelm's pride 172 | 173 | // # sander's folly # 174 | //[name] == cap && [quality] == set # [itemmagicbonus] == 35 // sander's paragon 175 | //[name] == bonewand && [quality] == set // sander's superstition 176 | //[name] == heavygloves && [quality] == set # [maxhp] == 40 // sander's taboo 177 | //[name] == heavyboots && [quality] == set # [dexterity] == 10 && [strength] == 5 // sander's riprap 178 | 179 | // # sazabi's grand tribute # 180 | //[name] == basinet && [quality] == set // sazabi's mental sheath 181 | //[name] == crypticsword && [quality] == set // sazabi's cobalt redeemer 182 | //[name] == balrogskin && [quality] == set // sazabi's ghost liberator 183 | 184 | // # tal rasha's wrappings # 185 | [name] == swirlingcrystal && [quality] == set # [skilllightningmastery] >= 2 && [skillcoldmastery] >= 2 && [skillfiremastery] >= 2 //1-2 tal rasha's lidless eye 186 | [name] == deathmask && [quality] == set # [defense] >= 100 //99-131 tal rasha's horadric crest 187 | [name] == lacqueredplate && [quality] == set # [defense] >= 833 // 833-941 tal rasha's guardianship 188 | [type] == amulet && [quality] == set # [sorceressskills] == 2 // tal rasha's adjucation 189 | [name] == meshbelt && [quality] == set # [itemmagicbonus] >= 10 //10-15 tal rasha's fine-spun cloth 190 | 191 | // # trang-oul's avatar # 192 | //[name] == bonevisage && [quality] == set // trang-oul's guise 193 | //[name] == chaosarmor && [quality] == set // trang-oul's scales 194 | //[name] == cantortrophy && [quality] == set // trang-oul's wing 195 | //[name] == trollbelt && [quality] == set // trang-oul's girth 196 | //[name] == heavybracers && [quality] == set // trang-oul's claws -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/sorceress.xpac.nip: -------------------------------------------------------------------------------- 1 | [name] == gold # [gold] >= 1 2 | [name] == minorhealingpotion 3 | [name] == lighthealingpotion 4 | [name] == healingpotion 5 | [name] == greaterhealingpotion 6 | [name] == superhealingpotion 7 | 8 | [name] == minormanapotion 9 | [name] == lightmanapotion 10 | [name] == manapotion 11 | [name] == greatermanapotion 12 | [name] == supermanapotion 13 | 14 | [name] == rejuvenationpotion 15 | [name] == fullrejuvenationpotion 16 | [name] == scrolloftownportal 17 | [name] == scrollofidentify 18 | 19 | // gloves 20 | [type] == gloves && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 21 | [type] == gloves && [quality] == set && [flag] != ethereal # # [tier] == 2 22 | [type] == gloves && [flag] != ethereal # [strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 3 23 | [type] == gloves && [flag] != ethereal # [strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 4 24 | [type] == gloves && [quality] == rare && [flag] != ethereal # ([strength] > 0 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5) || ([maxmana] > 0 && [hpregen] > 0) # [tier] == 5 25 | [name] == heavygloves && [quality] == unique && [flag] != ethereal # [maxhp] > 0 # [tier] == 6 26 | [name] == lightgauntlets && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [tier] == 7 27 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [tier] == 8 28 | //[name] == lightgauntlets && [quality] == set # [coldresist] > 0 # [tier] == 101 29 | //[type] == gloves && [quality] == unique # # [tier] == 102 30 | 31 | // belt 32 | [name] == sash && [flag] != ethereal # # [tier] == 1 33 | [name] == sash && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 2 34 | [name] == belt && [flag] != ethereal # # [tier] == 3 35 | [type] == belt && [quality] == set && [flag] != ethereal # # [tier] == 4 36 | [name] == belt && [flag] != ethereal # [maxhp] > 40 || [maxmana] > 40 # [tier] == 5 37 | [name] == belt && [flag] != ethereal # [maxhp] > 15 && [maxmana] > 15 # [tier] == 6 38 | [name] == belt && [flag] != ethereal # [maxhp] > 25 && [maxmana] > 25 # [tier] == 7 39 | [name] == belt && [quality] == rare && [flag] != ethereal # ([fireresist]+[lightresist]+[coldresist]+[poisonresist]) >= ([maxhp] + [maxmana] + 30) && [fhr] > 0 # [tier] == 8 40 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 30 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 9 41 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 40 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 8 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 10 42 | ([name] == belt || [name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 50 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 12 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 11 43 | [name] == demonhidesash && [quality] == unique && [flag] != ethereal # # [tier] == 12 44 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 60 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 18 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 13 45 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 70 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 21 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 14 46 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [maxhp]+[maxmana] > 75 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 28 && ([fhr] > 0 || [strength] > 0 ) # [tier] == 15 47 | [name] == demonhidesash && [quality] == unique && [flag] != ethereal # [lifedrainmindam] >= 6 # [tier] == 81 48 | [name] == belt && [quality] == unique && [flag] != ethereal # [fireresist] >= 10 && [lightresist] >= 10 # [maxquantity] == 1 && [tier] == 99 49 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [strength] > 10 && [strength] <= 15 && ([fhr] >= 10 || [maxhp] >= 30) && [maxhp] >= 20 && [fireresist] >= 10 && [lightresist] >= 10 # [tier] == 103 50 | ([name] == demonhidesash || [name] == sharkskinbelt || [name] == meshbelt) && [quality] == rare && [flag] != ethereal # [strength] > 15 && ([fhr] >= 10 || [maxhp] >= 30) && [maxhp] >= 20 && [fireresist] >= 10 && [lightresist] >= 10 # [tier] == 104 51 | [name] == meshbelt && [quality] == unique && [flag] != ethereal # [itemmaxmanapercent] == 15 # [tier] == 107 52 | 53 | // boots 54 | [type] == boots # [maxhp] > 0 || [maxmana] > 0 # [tier] == 1 55 | [type] == boots && [quality] == set # # [tier] == 1 56 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 10 # [tier] == 2 57 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 10 # [tier] == 3 58 | [type] == boots && [quality] == unique # # [tier] == 4 59 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 40 && ([maxmana] > 10 || [fhr] > 0) # [tier] == 5 60 | [type] == boots # [fireresist]+[lightresist]+[coldresist] >= 40 && ([maxmana] > 20 || [fhr] > 0) # [tier] == 6 61 | [name] == sharkskinboots && [quality] == unique && [flag] != ethereal # # [maxquantity] == 1 && [tier] == 101 62 | [name] == battleboots && [quality] == unique && [flag] != ethereal # # [maxquantity] == 1 && [tier] == 102 63 | 64 | // helm 65 | [type] == helm # [maxhp] > 0 # [tier] == 1 66 | [type] == helm # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 2 67 | [type] == helm # [maxhp] > 5 # [tier] == 3 68 | [type] == helm && [quality] == set # # [tier] == 4 69 | [type] == helm # [maxhp] > 5 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 5 70 | [type] == helm # [maxhp] > 10 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 6 71 | [type] == helm # [maxhp] > 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 # [tier] == 7 72 | [type] == helm && [quality] <= superior # [itemallskills] > 0 # [tier] == 8 73 | [type] == helm && [quality] == rare && [flag] != ethereal # ([sorceressskills] > 0 || [coldskilltab] > 0) || [maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 # [tier] == 9 74 | [type] == helm && [quality] == rare && [flag] != ethereal # ([sorceressskills] > 0 || [coldskilltab] > 0) || ([maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 && ([energy] > 0 || [fhr] > 0)) # [tier] == 10 75 | [type] == helm && [quality] == rare && [flag] != ethereal # ([sorceressskills] > 1 || [coldskilltab] > 1) && ([maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 10 && [itemmanaperlevel] > 0 && ([energy] > 0 || [fhr] > 0)) # [tier] == 11 76 | [name] == warhat && [quality] == unique && [flag] != ethereal # # [tier] == 10 77 | [name] == basinet && [quality] == unique # [fireresist] >= 12 # [tier] == 100 78 | [name] == grandcrown && [quality] == unique && [flag] != ethereal # [fireresist] >= 30 # [tier] == 101 79 | [name] == sallet && [quality] == unique && [flag] != ethereal # [fireresist] >= 12 && [lightresist] >= 12 # [tier] == 102 80 | [name] == crown && [quality] == set && [flag] != ethereal # [fireresist] == 30 && [lightresist] == 30 # [tier] == 103 81 | [type] == helm && [flag] == runeword # [lightresist] >= 30 # [tier] == 104 82 | [name] == deathmask && [quality] == set && [flag] != ethereal # [fireresist] >= 12 && [lightresist] >= 12 # [tier] == 105 83 | [name] == shako && [quality] == unique && [flag] != ethereal # [itemallskills] == 2 # [tier] == 106 84 | [name] == deathmask && [quality] == set && [flag] != ethereal # [defense] >= 99 # [maxquantity] == 1 && [tier] == 107 85 | 86 | // amulet 87 | [type] == amulet # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 88 | [type] == amulet # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([hpregen] > 0 || [maxhp] > 0) # [tier] == 2 89 | [type] == amulet # [maxhp] > 15 # [tier] == 2 90 | [type] == amulet # [maxhp] > 15 && [maxmana] > 15 # [tier] == 3 91 | [type] == amulet && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && ([fcr] > 0 || [strength] > 0) # [tier] == 4 92 | [type] == amulet && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && ([fcr] > 0 && [strength] > 0) # [tier] == 5 93 | [type] == amulet && [quality] == unique # [itemallskills] == 1 # [tier] == 6 94 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 30 || ([maxhp] > 20 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 7 95 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 50 || ([maxhp] > 30 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 8 96 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 70 || ([maxhp] > 40 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60) # [tier] == 9 97 | [type] == amulet && [quality] == rare # ([maxhp]+[maxmana] >= 90 || ([maxhp] >= 50 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 60)) # [tier] == 10 98 | [type] == amulet # ([fireresist]+[lightresist]+[coldresist]+[poisonresist] > 110) # [tier] == 11 99 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 110 || (([maxhp] >= 55) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 12 100 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 130 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 13 101 | [type] == amulet && [quality] == rare # [maxhp]+[maxmana] >= 150 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 14 102 | //ilvl is high enough for +skills 103 | [type] == amulet && [quality] == rare # ([coldskilltab] > 0 && ([maxhp]+[maxmana] >= 90) || ([maxhp] > 50 && ([strength] > 0 || [fcr] > 0))) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 20 # [tier] == 15 104 | [type] == amulet && [quality] == rare # ([sorceressskills] > 0 && [maxhp]+[maxmana] >= 90) || ([maxhp] > 50 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 20) # [tier] == 16 105 | [type] == amulet && [quality] == rare # ([coldskilltab] > 0 && [maxhp]+[maxmana] >= 110) || ([maxhp] > 55 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 17 106 | [type] == amulet && [quality] == rare # ([sorceressskills] > 0 && [maxhp]+[maxmana] >= 110) || ([maxhp] > 55 && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 18 107 | [type] == amulet && [quality] == rare # ([coldskilltab] > 0 || [sorceressskills] > 0) && ([maxhp]+[maxmana] >= 130 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0))) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40 # [tier] == 19 108 | [type] == amulet && [quality] == rare # ([coldskilltab] > 0 || [sorceressskills] > 0) && ([maxhp]+[maxmana] >= 150 || ([maxhp] >= 58 && ([strength] > 0 || [fcr] > 0)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 20 109 | //highend 110 | [type] == amulet && [quality] == rare # ([coldskilltab] >= 2 || [sorceressskills] > 1) && ([maxhp]+[maxmana] >= 100 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 21 111 | [type] == amulet && [quality] == rare # ([coldskilltab] >= 2 || [sorceressskills] > 1) && ([maxhp]+[maxmana] >= 110 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5))&& [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 22 112 | [type] == amulet && [quality] == rare # ([coldskilltab] >= 2 || [sorceressskills] > 1) && ([maxhp]+[maxmana] >= 120 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 23 113 | [type] == amulet && [quality] == rare # ([coldskilltab] >= 2 || [sorceressskills] > 1) && ([maxhp]+[maxmana] >= 130 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 24 114 | [type] == amulet && [quality] == rare # ([coldskilltab] >= 2 || [sorceressskills] > 1) && ([maxhp]+[maxmana] >= 145 || ([maxhp] > 52 && ([strength] > 5 || [fcr] > 5)) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 40) # [tier] == 25 115 | [type] == amulet && [quality] == unique # [itemallskills] == 2 # [tier] == 100 116 | [type] == amulet && [quality] == set # [sorceressskills] == 2 # [maxquantity] == 1 && [tier] == 101 117 | 118 | // ring 119 | 120 | [type] == ring # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 # [tier] == 1 121 | [type] == ring # [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 5 && ([hpregen] > 0 || [maxhp] > 0) # [tier] == 2 122 | [type] == ring # [maxhp] > 15 # [tier] == 2 123 | [type] == ring # [maxhp] > 15 && [maxmana] > 15 # [tier] == 3 124 | [type] == ring && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && [fcr] > 0 || [strength] > 0 # [tier] == 4 125 | [type] == ring && [quality] == rare # [maxhp] > 0 && [maxmana] > 0 && [fcr] > 0 && [strength] > 0 # [tier] == 5 126 | [type] == ring && [quality] == unique # [itemallskills] == 1 # [tier] == 6 127 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 30 || ([maxhp] > 20 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 7 128 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 50 || ([maxhp] > 25 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 8 129 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 70 || ([maxhp] > 30 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 9 130 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 90 || ([maxhp] > 35 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32) # [tier] == 10 131 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 110 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 11 132 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 120 &&([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 12 133 | [type] == ring && [quality] == rare # [maxhp]+[maxmana] >= 130 && ([strength] > 0 || [fcr] > 0) && [fireresist]+[lightresist]+[coldresist]+[poisonresist] >= 32 # [tier] == 12 134 | [type] == ring && [quality] == unique # [itemallskills] == 1 # [tier] == 101 // soj 135 | 136 | // armor 137 | [type] == armor # [maxhp] > 0 || [strength] > 0 # [tier] == 1 138 | [type] == armor # [maxhp] > 0 && [strength] > 0 # [tier] == 1 139 | [name] == quiltedarmor && [quality] == set # # [tier] == 3 140 | [type] == armor # [maxhp] >= 20 && [fireresist]+[lightresist]+[coldresist] >= 20 # [tier] == 4 141 | [type] == armor && [quality] <= superior # [poisonresist] == 30 # [tier] == 5 142 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 40 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] > 0 # [tier] == 6 143 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 50 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 3 # [tier] == 7 144 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 60 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 8 145 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 70 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 9 146 | [type] == armor && [quality] == rare # [maxhp]+[maxmana] >= 80 && [fireresist]+[lightresist]+[coldresist] >= 20 && [strength] >= 6 # [tier] == 10 147 | [name] == cuirass && [quality] == unique && [flag] != ethereal # # [tier] == 11 148 | [name] == mageplate && [quality] == unique && [flag] != ethereal # # [tier] == 12 149 | [name] == serpentskinarmor && [quality] == unique && [flag] != ethereal # # [tier] == 13 150 | [name] == russetarmor && [quality] == unique && [flag] != ethereal # # [tier] == 14 151 | [name] == mesharmor && [quality] == unique && [flag] != ethereal # # [tier] == 15 152 | [name] == russetarmor && [quality] == unique && [flag] == ethereal # # [tier] == 16 153 | 154 | [name] == studdedleather && [quality] == unique && [flag] != ethereal # [dexterity] > 0 # [maxquantity] == 1 && [tier] == 100 155 | [name] == lacqueredplate && [quality] == unique && [flag] != ethereal # [fireresist] >= 12 && [lightresist] >= 12 # [maxquantity] == 1 && [tier] == 101 156 | [type] == armor && [flag] == runeword # [lightresist] >= 60 # [tier] == 104 157 | [type] == armor && [flag] == runeword # [fireresist] == 50 && [lightresist] == 50 # [tier] == 105 158 | [name] == serpentskinarmor && [quality] == unique && [flag] != ethereal # [itemallskills] == 1 && [fireresist] >=20 && [lightresist] >= 20 # [maxquantity] == 1 && [tier] == 102 159 | [name] == lacqueredplate && [quality] == set # [defense] >= 833 # [maxquantity] == 1 && tier == 106 160 | 161 | // weapon 162 | [type] == orb && [quality] <= rare # # [tier] ==9 163 | [type] == orb && [quality] <= rare # ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 1 # [tier] == 10 164 | [type] == orb && [quality] <= rare # ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 3 # [tier] == 11 165 | [type] == orb && [quality] <= rare # ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 5 # [tier] == 12 166 | [type] == orb && [quality] <= rare # ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 5 && [maxmana] > 0 # [tier] == 13 167 | [type] == orb && [quality] <= rare # [sorceressskills] >=1 && ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 1 # [tier] == 14 168 | [type] == orb && [quality] <= rare # [sorceressskills] >=1 && ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 3 # [tier] == 15 169 | [type] == orb && [quality] <= rare # [sorceressskills] >=1 && ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 5 # [tier] == 16 170 | [type] == orb && [quality] <= rare # [sorceressskills] >=2 && ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 1 # [tier] == 17 171 | [type] == orb && [quality] <= rare # [sorceressskills] >=2 && ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 3 # [tier] == 18 172 | [type] == orb && [quality] <= rare # [sorceressskills] >=2 && ([fireskilltab] + [coldskilltab] + [lightningskilltab]) >= 5 # [tier] == 19 173 | [type] == sword && [flag] == runeword # [itemallskills] == 2 && [fcr] >= 25 && [fhr] >= 55 # [tier] == 100 //spirit 174 | [name] == swirlingcrystal && [quality] == unique && [flag] != ethereal # [fcr] > 0 # [maxquantity] == 1 && [tier] == 101 175 | [name] == swirlingcrystal && [quality] == set && [flag] != ethereal # [skillcoldmastery] >=1 # [maxquantity] == 1 && [tier] == 102 176 | 177 | // shield 178 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 10 || [maxhp] > 9 # [tier] == 1 179 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 20 || [maxhp] > 19 # [tier] == 2 180 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 40 || [maxhp] > 29 # [tier] == 3 181 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 9 # [tier] == 4 182 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 20 && [maxhp] > 19 # [tier] == 5 183 | [type] == shield # [fireresist]+[lightresist]+[coldresist] >= 40 && [maxhp] > 29 # [tier] == 6 184 | [type] == shield && [quality] == rare && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] > 0 || [strength] > 0) # [tier] == 7 185 | [type] == shield && [quality] == rare && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] > 0 && [strength] >= 3) # [tier] == 8 186 | [type] == shield && [quality] == rare && [flag] != ethereal # [fireresist]+[lightresist]+[coldresist] >= 10 && [maxhp] > 29 && ([fbr] == 30 && [strength] >= 6) # [tier] == 9 187 | [type] == shield && [quality] <= superior && [flag] != ethereal # ([poisonresist]+[fireresist]+[coldresist]+[lightresist] == 100) && [fbr] == 40 # [tier] == 10 188 | [name] == grimshield && [quality] == unique && [flag] != ethereal # # [tier] == 11 189 | [type] == shield && [flag] == runeword # [itemgoldbonus] == 50 # [tier] == 13 //rhyme 190 | [name] == roundshield && [quality] == unique && [flag] != ethereal # [fireresist] >= 25 # [maxquantity] == 1 && [tier] == 14 191 | [type] == shield && [flag] == runeword # [fireresist] >= 40 && [lightresist] >= 40 # [tier] == 101 //ancient's pledge 192 | [type] == shield && [flag] == runeword # [coldresist] >= 35 && [lightresist] >= 35 && [fcr] >= 25 # [tier] == 102 //spirit 193 | -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/unique.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of unique items that you want your bot to pick up. 3 | // 4 | // any item on this list which starts with //[ will not be picked up at all 5 | // any item on this list which starts with [ will be picked up, then kept unid'ed or checked and then kept if it's good enough. 6 | // ----------------------------------------------------------------------------------------------------- 7 | 8 | //unique gloves 9 | [name] == heavygloves && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 10 //blood fist 10 | [name] == chaingloves && [quality] == unique && [flag] != ethereal # [itemmagicbonus] >= 20 && [enhanceddefense] >= 20 //chance guards 11 | [name] == lightgauntlets && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 20 //magefist 12 | [name] == gauntlets && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 10 //frostburn 13 | [name] == vampirebonegloves && [quality] == unique && [flag] != ethereal # [strength] == 15 && [lifeleech] >= 5 && [itemhealafterkill] >= 1 //dracul's grasp 14 | [name] == vambraces && [quality] == unique && [flag] != ethereal # [lifeleech] >= 5 && [manaleech] >= 5 && [enhanceddefense] >= 100 //soul drainer 15 | [name] == ogregauntlets && [quality] == unique && [flag] != ethereal # (([enhanceddamage] >= 60 && [strength] >= 15) || ([enhanceddamage] >= 30 && [strength] >= 20)) //steelrend 16 | 17 | //unique belts 18 | [name] == heavybelt && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 60 && [itemgoldbonus] >= 80 //gold wrap 19 | [name] == demonhidesash && [quality] == unique && [flag] != ethereal # [lifeleech] >= 5 && [damageresist] >= 10 && [magicdamagereduction] >= 10 //string of ears 20 | [name] == sharkskinbelt && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 100 //razortail 21 | [name] == battlebelt && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 100 //snowclash 22 | [name] == warbelt && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 100 //thundergod's vigor 23 | [name] == spiderwebsash && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 75 //arachnid mesh 24 | [name] == vampirefangbelt && [quality] == unique && [flag] != ethereal # [lifeleech] >= 5 && [defense] >= 50 //nosferatu's coil 25 | [name] == mithrilcoil && [quality] == unique && [flag] != ethereal # ([vitality] >= 1 && [damageresist] >= 10 && [hpregen] >= 1) || ([vitality] >= 30 && [damageresist] >= 10 && [hpregen] >= 6) //verdungo's hearty cord 26 | 27 | //unique boots 28 | [name] == boots && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 10 //hotspur 29 | [name] == demonhideboots && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 100 && [itemgoldbonus] >= 40 //infernostride 30 | [name] == sharkskinboots && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 70 && [maxhp] >= 45 //waterwalk 31 | [name] == battleboots && [quality] == unique && [flag] != ethereal # [itemmagicbonus] >= 20 //war traveler 32 | [name] == warboots && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 95 //gore rider 33 | [name] == scarabshellboots && [quality] == unique && [flag] != ethereal # [strength] >= 5 && [vitality] >= 5 && [poisonresist] >= 1 //sandstorm trek 34 | //[name] == scarabshellboots && [quality] == unique && [flag] == ethereal # [strength] >= 5 && [vitality] >= 0 && [poisonresist] >= 1 //ethereal sandstorm trek 35 | [name] == boneweaveboots && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 50 && [skillskeletonmastery] >= 0 && [strength] >= 0 //marrowwalk 36 | [name] == myrmidongreaves && [quality] == unique && [flag] != ethereal # [shadowdisciplinesskilltab] >= 1 && [dexterity] >= 5 //shadow dancer 37 | 38 | //unique helms 39 | [name] == skullcap && [quality] == unique && [flag] != ethereal # [itemmagicbonus] == 48 //tarnhelm 40 | [name] == skullcap && [quality] == unique && [flag] == ethereal # [itemmagicbonus] == 48 //ethereal tarnhelm 41 | [name] == warhat && [quality] == unique && [flag] != ethereal # [itemallskills] == 1 //peasant crown 42 | [name] == sallet && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 60 && [coldresist] >= 0 && [fireresist] >= 0 && [lightresist] >= 0 //rock stopper 43 | [name] == sallet && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 60 && [coldresist] >= 0 && [fireresist] >= 0 && [lightresist] >= 0 //ethereal rock stopper 44 | [name] == casque && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 20 && [itemmagicbonus] >= 0 //stealskull 45 | [name] == casque && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 20 && [itemmagicbonus] >= 0 //ethereal stealskull 46 | [name] == grandcrown && [quality] == unique && [flag] != ethereal # [enhanceddefense] == 20 && [itemgoldbonus] >= 0 && [lifeleech] >= 2 //crown of theives 47 | [name] == grandcrown && [quality] == unique && [flag] == ethereal # [itemgoldbonus] >= 10 && [lifeleech] >= 0 //ethereal crown of thieves 48 | [name] == grimhelm && [quality] == unique && [flag] != ethereal # [lifeleech] >= 6 && [manaleech] >= 3 && [damageresist] >= 2 && [magicdamagereduction] >= 1 //vampire gaze 49 | [name] == grimhelm && [quality] == unique && [flag] == ethereal # [lifeleech] >= 6 && [manaleech] >= 3 && [damageresist] >= 2 && [magicdamagereduction] >= 1 //ethereal vampire gaze 50 | [name] == shako && [quality] == unique && [flag] != ethereal # [defense] >= 35 //harlequin crest 51 | [name] == spiredhelm && [quality] == unique && [flag] != ethereal # [dexterity] >= 1 && [passivecoldmastery] >= 15 && [itemabsorbcold] >= 1 //nightwing's veil 52 | [name] == demonhead && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 10 && [strength] >= 0 && [lifeleech] >= 1 //andariel's visage 53 | [name] == demonhead && [quality] == unique && [flag] == ethereal # [lifeleech] >= 0 //[enhanceddefense] >= 10 && [strength] >= 2 //ethereal andariel's visage 54 | [name] == bonevisage && [quality] == unique # [sockets] >= 0 && [strength] >= 5 && [plusdefense] >= 1 //giant skull 55 | [name] == tiara && [quality] == unique # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 20 && [plusdefense] >= 1 //kira's guardian 56 | [name] == diadem && [quality] == unique && [flag] != ethereal # (([passiveltngmastery] >= 10 && [passiveltngpierce] >= 0) || ([passiveltngmastery] >= 1 && [passiveltngpierce] >= 1)) //griffon's eye 57 | [name] == corona && [quality] == unique # [sockets] >= 0 && [damageresist] >= 1 && [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 8 //crown of ages/ 58 | 59 | //unique armor 60 | [name] == serpentskinarmor && [quality] == unique # [coldresist] >= 5 && [magicdamagereduction] >= 1 //skin of the vipermagi 61 | [name] == cuirass && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 10 //duriel's shell 62 | [name] == cuirass && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 10 //ethereal duriel's shell 63 | [name] == mesharmor && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 20 //shaftstop 64 | [name] == mesharmor && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 20 //ethereal shaftstop 65 | [name] == russetarmor && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 10 //skullder's ire 66 | [name] == russetarmor && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 10 //ethereal skullder's ire 67 | [name] == templarcoat && [quality] == unique # [enhanceddefense] >= 15 //guardian angel 68 | [name] == sharktootharmor && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 25 //toothrow 69 | [name] == sharktootharmor && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 21 //ethereal toothrow 70 | [name] == duskshroud && [quality] == unique # ([skillfirebolt] >= 0 || [skillfireball] >= 0 || [skillmeteor] >= 0) //ormus' robes 71 | [name] == duskshroud && [quality] == unique # ([skillchainlightning] >= 0 || [skilllightning] >= 0 || [skillnova] >= 0 || [skillenergyshield] >= 0) //ormus' robes 72 | [name] == duskshroud && [quality] == unique # ([skillblizzard] >= 0 || [skillglacialspike] >= 0 || [skilliceblast] >= 0) //ormus' robes 73 | [name] == wirefleece && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 50 && [normaldamagereduction] >= 2 && [magicdamagereduction] >= 2 //the gladiator's bane 74 | [name] == balrogskin && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 50 && [itemallskills] >= 0 && [normaldamagereduction] >= 1 //arkaine's valor 75 | [name] == krakenshell && [quality] == unique # [enhanceddefense] >= 10 && [plusdefense] >= 10 && [damageresist] >= 0 && [strength] >= 0 //leviathan 76 | [name] == shadowplate && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 10 && [manarecovery] >= 0 && [coldresist] >= 0 && [normaldamagereduction] >= 1 //steel carapace 77 | [name] == sacredarmor && [quality] == unique # [enhanceddefense] >= 10 && [offensiveaurasskilltab] >= 0 && [armorclassvsmissile] >= 20 && [strength] >= 15 && [vitality] >= 1 //templar's might 78 | [name] == sacredarmor && [quality] == unique # [enhanceddefense] >= 10 && [strength] >= 2 && [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 8 //tyreal's might 79 | 80 | //unique shields 81 | [name] == roundshield && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 20 //moser's blessed circle 82 | [name] == barbedshield && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 10 //lance guard 83 | [name] == pavise && [quality] == unique && [flag] != ethereal # [coldresist]+[fireresist]+[lightresist]+[poisonresist] >= 10 && [normaldamagereduction] >=1 && [magicdamagereduction] >= 1 //gerke's sanctuary 84 | [name] == grimshield && [quality] == unique && [flag] == ethereal # [enhanceddefense] >= 10 //ethereal lidless wall 85 | [name] == luna && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 20 //blackoak shield 86 | [name] == monarch && [quality] == unique && [flag] != ethereal //stormshield 87 | [name] == trollnest && [quality] == unique && [flag] != ethereal # [sockets] >= 0 && [plusdefense] >= 40 && [armorclassvsmissile] >= 35 && [fireresist] >= 3 && [poisonresist] >= 4 //head hunter's glory 88 | [name] == ward && [quality] == unique && [flag] != ethereal # [fireresist] >= 4 && [toblock] >= 3 && [itemabsorbcold] >= 1 //spirit ward 89 | 90 | //unique daggers 91 | [name] == fangedknife && [quality] == unique # [enhanceddamage] >= 280 //fleshripper 92 | [name] == legendspike && [quality] == unique # [enhanceddamage] >= 230 //ghostflame 93 | 94 | //unique swords 95 | [name] == tulwar && [quality] == unique # [dexterity] >= 15 && [enhanceddamage] >= 120 //blade of ali baba 96 | [name] == phaseblade && [quality] == unique # [enhanceddamage] >= 230 && [ias] == 30 //azurewrath 97 | [name] == phaseblade && [quality] == unique # [enhanceddamage] >= 190 && [ias] == 20 //lightsabre 98 | [name] == championsword && [quality] == unique # [enhanceddamage] >= 235 //doombringer 99 | [name] == colossusblade && [quality] == unique # [enhanceddamage] >= 250 //the grandfather 100 | 101 | //unique axes 102 | [name] == tomahawk && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 200 //razor's edge 103 | [name] == ettinaxe && [quality] == unique && [flag] != ethereal # [enhanceddamage] >= 265 && [sockets] == 5 //rune master 104 | [name] == ettinaxe && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 220 && [sockets] == 5 //ethereal rune master 105 | [name] == berserkeraxe && [quality] == unique && [flag] != ethereal # [enhanceddamage] >= 270 && [itemhealafterkill] >= 6 //death cleaver 106 | [name] == berserkeraxe && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 230 && [itemhealafterkill] >= 6 //ethereal death cleaver 107 | 108 | //unique bows 109 | [name] == shortsiegebow && [quality] == unique # [enhanceddamage] >= 165 //witchwild string 110 | [name] == gothicbow && [quality] == unique # [enhanceddamage] >= 240 //goldstrike arch 111 | [name] == wardbow && [quality] == unique # [enhanceddamage] >= 190 && [plusskillguidedarrow] >= 5 //widowmaker 112 | [name] == hydrabow && [quality] == unique //# [manaleech] >= 8 //windforce 113 | 114 | //unique crossbows 115 | [name] == arbalest && [quality] == unique # [enhanceddamage] >= 195 && [itemmagicbonus] >= 60 //langer briser 116 | [name] == ballista && [quality] == unique # [enhanceddamage] >= 195 //buriza-do kyanon 117 | 118 | //unique maces 119 | [name] == maul && [quality] == unique # [enhanceddamage] >= 290 //bonesnap 120 | [name] == marteldefer && [quality] == unique # [enhanceddamage] >= 150 //the gavel of pain 121 | [name] == tyrantclub && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 200 && [lifeleech] >= 10 && [fireresist] >= 20 //demon limb 122 | [name] == scourge && [quality] == unique && [flag] != ethereal # [enhanceddamage] >= 270 && [itemabsorblight] >= 3 && [ias] >= 30 //stormlash 123 | [name] == scourge && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 240 && [itemabsorblight] >= 3 && [ias] >= 30 //ethereal stormlash 124 | [name] == legendarymallet && [quality] == unique # [enhanceddamage] >= 130 && [lightresist] >= 75 //shaefer's hammer 125 | [name] == legendarymallet && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 320 && [itemcrushingblow] >= 40 && [strength] >= 20 //stone crusher 126 | [name] == thundermaul && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 300 && [fcr] >= 10 //earth shifter 127 | [name] == thundermaul && [quality] == unique # [enhanceddamage] >= 240 && [strength] >= 25 //the cranium basher 128 | 129 | //unique polearms 130 | [name] == ogreaxe && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 32 //ethereal bonehew 131 | [name] == thresher && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 24 && [lifeleech] >= 1 //ethereal the reaper's toll 132 | [name] == crypticaxe && [quality] == unique && [flag] != ethereal # [sockets] == 3 && [enhanceddamage] >= 28 && [fireresist] >= 3 && [itemhealafterkill] >= 1 && [itemmagicbonus] >= 5 //tomb reaver 133 | [name] == crypticaxe && [quality] == unique && [flag] == ethereal # [sockets] == 3 && [enhanceddamage] >= 20 && [fireresist] >= 3 && [itemhealafterkill] >= 1 && [itemmagicbonus] >= 5 //ethereal tomb reaver 134 | [name] == giantthresher && [quality] == unique # [enhanceddamage] >= 25 //stormspire 135 | 136 | //unique scepters 137 | [name] == mightyscepter && [quality] == unique && [flag] != ethereal # [sockets] >= 0 && [paladinskills] >= 0 //[enhanceddamage] >= 290 && //heaven's light 138 | [name] == caduceus && [quality] == unique # [enhanceddamage] >= 24 //&& [palicombatskilltab] >= 4 && [normaldamagereduction] >= 4 && [itemtohitpercent] >= 150 //astreon's iron ward 139 | 140 | //unique spears 141 | [name] == fuscina && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 17 //ethereal kelpie snare 142 | [name] == yari && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 19 //ethereal hone sundan 143 | [name] == warpike && [quality] == unique # [enhanceddamage] >= 25 //steel pillar 144 | 145 | //unique staves 146 | [name] == quarterstaff && [quality] == unique # [enhanceddamage] >= 28 //ribcracker 147 | [name] == elderstaff && [quality] == unique && [flag] != ethereal # [itemallskills] == 4 //ondal's wisdom 148 | 149 | //unique throwing weapons 150 | [name] == flyingaxe && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 205 //gimmershred 151 | [name] == wingedknife && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 245 //warshrike 152 | [name] == wingedaxe && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 205 //lacerator 153 | 154 | //unique javelins 155 | [name] == balrogspear && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 205 && [lifeleech] >= 10 //demon arch 156 | [name] == ghostglaive && [quality] == unique //wraith flight 157 | [name] == wingedharpoon && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 220 && [lifeleech] >= 12 //gargoyle's bite 158 | 159 | //unique wands 160 | [name] == lichwand && [quality] == unique # [skillbonespirit] >= 2 && [skillbonespear] >= 3 && [skillbonewall] >= 3 && [skillbonearmor] >= 5 && [skillteeth] >= 5 //perfect boneshade 161 | [name] == unearthedwand && [quality] == unique # [poisonandboneskilltab] >= 2 && [passivepoispierce] >= 40 //perfectish death's web 162 | 163 | //unique amazon 164 | [name] == ceremonialbow && [quality] == unique # [enhanceddamage] >= 190 //lycander's aim 165 | [name] == ceremonialjavelin && [quality] == unique && [flag] != ethereal # [enhanceddamage] >= 200 && [lifeleech] >= 8 //titan's revenge 166 | [name] == ceremonialjavelin && [quality] == unique && [flag] == ethereal # [enhanceddamage] >= 150 && [lifeleech] >= 5 //ethereal titan's revenge 167 | [name] == matriarchalbow && [quality] == unique # [enhanceddamage] >= 220 //bloodraven's charge 168 | 169 | //unique assassin 170 | [name] == greatertalons && [quality] == unique # [enhanceddamage] >= 190 && [lifeleech] >= 7 //bartuc's cut-throat 171 | [name] == feralclaws && [quality] == unique && [flag] != ethereal # [enhanceddamage] >= 260 //firelizard's talons 172 | [name] == wristsword && [quality] == unique && [flag] != ethereal # [enhanceddamage] >= 230 //jade talon 173 | 174 | //unique barbarian 175 | [name] == slayerguard && [quality] == unique # [enhanceddefense] >= 180 //arreat's face 176 | [name] == conquerorcrown && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 155 //halaberd's reign 177 | 178 | //unique druid 179 | [name] == skyspirit && [quality] == unique # [passivefirepierce] >= 15 //ravenlore 180 | [name] == earthspirit && [quality] == unique # [itemabsorblight] >= 12 && [itemabsorbcoldpercent] >= 20 //spirit keeper 181 | 182 | //unique necromancer 183 | [name] == hierophanttrophy && [quality] == unique && [flag] != ethereal # [enhanceddefense] >= 190 //homunculus 184 | [name] == succubusskull && [quality] == unique && [flag] != ethereal //boneflame 185 | [name] == bloodlordskull && [quality] == unique //darkforce spawn 186 | 187 | //unique paladin 188 | [name] == gildedshield && [quality] == unique //herald of zakarum 189 | [name] == sacredrondache && [quality] == unique //alma negra 190 | [name] == zakarumshield && [quality] == unique //dragonscale 191 | 192 | //unique sorceress 193 | [name] == eldritchorb && [quality] == unique //eschuta's temper 194 | [name] == dimensionalshard && [quality] == unique //death's fathom 195 | 196 | //unique amulet 197 | [type] == amulet && [quality] == unique # [strength] >= 1 //saracen's chance 198 | [type] == amulet && [quality] == unique # [dexterity] >= 2 //the cat's eye 199 | [type] == amulet && [quality] == unique # [lifeleech] >= 1 && [manaleech] >= 1 //crescent moon 200 | [type] == amulet && [quality] == unique # [poisonresist] >= 7 //atma's scarab 201 | [type] == amulet && [quality] == unique # [hpregen] >= 1 //the rising sun 202 | [type] == amulet && [quality] == unique # [lightresist] >= 3 //highlord's wrath 203 | [type] == amulet && [quality] == unique # [itemallskills] == 2 //mara's kaleidoscope 204 | [type] == amulet && [quality] == unique # [defensiveaurasskilltab] == 2 //seraph's hymn 205 | [type] == amulet && [quality] == unique # [tohit] >= 40 //metalgrid 206 | 207 | //unique rings 208 | [type] == ring && [quality] == unique # [itemmagicbonus] >= 2 //nagelring 209 | [type] == ring && [quality] == unique # [hpregen] >= 1 && [manaleech] >= 0 //perfect manald heal 210 | [type] == ring && [quality] == unique # [itemmaxmanapercent] >= 2 //stone of jordan 211 | [type] == ring && [quality] == unique # [maxhp] >= 4 && [magicdamagereduction] == 1 //dwarf star 212 | [type] == ring && [quality] == unique # [dexterity] >= 2 && [tohit] >= 10 //raven frost 213 | [type] == ring && [quality] == unique # [lifeleech] >= 3 && [itemallskills] == 1 //bul-kathos' wedding band 214 | [type] == ring && [quality] == unique # [lifeleech] >= 6 && [armorclassvsmissile] >= 10 //carrion wind 215 | [type] == ring && [quality] == unique # [poisonresist] >= 30 && [normaldamagereduction] >= 7 //nature's peace 216 | [type] == ring && [quality] == unique # [itemabsorblightpercent] >= 10 //wisp protector 217 | 218 | //unique jewels 219 | [name] == jewel && [quality] == unique # (([passivecoldmastery] >= 5 && [passivecoldpierce] >= 5) || ([passivefiremastery] >= 5 && [passivefirepierce] >= 5) || ([passiveltngmastery] >= 5 && [passiveltngpierce] >= 5) || ([passivepoismastery] >= 5 && [passivepoispierce] >= 5)) //perfect rainbow facets 220 | 221 | //unique charms 222 | [name] == grandcharm && [quality] == unique # [itemmagicbonus] >= 35 //good gheed's fortune 223 | [name] == largecharm && [quality] == unique //# [itemaddamazonskills] == 3 && [strength] >= 10 && [fireresist] >= 10 //hellfire torch - amazon 224 | [name] == largecharm && [quality] == unique # [itemaddassassinskills] == 3 && [strength] >= 10 && [fireresist] >= 10 //hellfire torch - assassin 225 | [name] == largecharm && [quality] == unique # [itemaddbarbarianskills] == 3 && [strength] >= 10 && [fireresist] >= 10 //hellfire torch - barbarian 226 | [name] == largecharm && [quality] == unique # [itemadddruidskills] == 3 && [strength] >= 10 && [fireresist] >= 10 //hellfire torch - druid 227 | [name] == largecharm && [quality] == unique # [itemaddnecromancerskills] == 3 && [strength] >= 10 && [fireresist] >= 10 //hellfire torch - necromancer 228 | [name] == largecharm && [quality] == unique # [itemaddsorceressskills] == 3 && [strength] >= 10 && [fireresist] >= 10 //hellfire torch - sorceress 229 | [name] == largecharm && [quality] == unique # [itemaddpaladinskills] == 3 && [strength] >= 10 && [fireresist] >= 10 //hellfire torch - paladin 230 | [name] == smallcharm && [quality] == unique # [itemallskills] == 1 && [strength] >= 15 && [fireresist] >= 15 //good annihilus -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/white1.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of white and socketed items that you want your bot to pick up during the beginner stage. 3 | // 4 | // ----------------------------------------------------------------------------------------------------- 5 | 6 | //white non-eth armor 7 | [name] == lightplate && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 8 | [name] == ghostarmor && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 9 | [name] == serpentskinarmor && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 10 | [name] == demonhidearmor && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 11 | [name] == cuirass && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 12 | [name] == mageplate && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 13 | [name] == duskshroud && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 14 | [name] == wyrmhide && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 15 | [name] == scarabhusk && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 16 | [name] == wirefleece && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 17 | [name] == archonplate && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 18 | 19 | //white 0 socket ethereal armor 20 | [name] == duskshroud && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 21 | [name] == wyrmhide && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 22 | [name] == scarabhusk && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 23 | [name] == wirefleece && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 24 | [name] == greathauberk && [quality] < superior && [flag] == ethereal # [defense] >= 510 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //710 prudence, duress, fortitude, stone 25 | [name] == boneweave && [quality] < superior && [flag] == ethereal # [defense] >= 510 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //710 prudence, duress, fortitude, stone 26 | [name] == balrogskin && [quality] < superior && [flag] == ethereal # [defense] >= 520 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //720 prudence, duress, fortitude, stone 27 | [name] == archonplate && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 28 | 29 | //white shields 30 | [name] == kiteshield && [quality] <= superior && [flag] != ethereal # [sockets] == 3 //ancient's pledge 31 | [name] == largeshield && [quality] <= superior && [flag] != ethereal # [sockets] == 3 //ancient's pledge 32 | [name] == boneshield && [quality] <= superior && [flag] != ethereal # [sockets] == 3 //ancient's pledge 33 | [name] == targe && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 34 | [name] == rondache && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4 ) //sanctuary, spirit, phoenix 35 | [name] == heraldicshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 36 | [name] == aerinshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 37 | [name] == crownshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 38 | [name] == akarantarge && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 39 | [name] == akaranrondache && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 40 | [name] == protectorshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 41 | [name] == gildedshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 42 | [name] == royalshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 43 | [name] == sacredtarge && [quality] <= superior && [flag] != ethereal # [fireresist] >= 40 && [enhanceddefense] >= 0 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 44 | [name] == sacredrondache && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && [enhanceddefense] >= 0 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 45 | [name] == kurastshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary. spirit, phoenix 46 | [name] == zakarumshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 47 | [name] == vortexshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 48 | [name] == monarch && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //spirit, phoenix 49 | 50 | //white helms 51 | [name] == skullcap && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 52 | [name] == crown && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 53 | [name] == mask && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 54 | [name] == bonehelm && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 55 | [name] == warhat && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 56 | [name] == grimhelm && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 57 | [name] == grandcrown && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 58 | [name] == demonhead && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 59 | [name] == bonevisage && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 60 | 61 | //white weapons 62 | [name] == halberd && [quality] <= superior && [flag] == ethereal # [sockets] == 4 //insight 63 | [name] == halberd && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //insight 64 | [name] == becdecorbin && [quality] <= superior && [flag] == ethereal # [sockets] == 4 //insight 65 | [name] == becdecorbin && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //insight 66 | [name] == battlescythe && [quality] <= superior && [flag] == ethereal # [sockets] == 4 //insight 67 | [name] == battlescythe && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //insight 68 | [name] == partizan && [quality] <= superior && [flag] == ethereal # [sockets] == 4 //insight 69 | [name] == partizan && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //insight 70 | [name] == bill && [quality] <= superior && [flag] == ethereal # [sockets] == 4 //insight 71 | [name] == bill && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //insight 72 | [name] == grimscythe && [quality] <= superior && [flag] == ethereal # [sockets] == 4 //insight 73 | [name] == grimscythe && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //insight 74 | //advance insight ------------------------------------------------------------------- 75 | ([name] == crypticaxe || [name] == thresher || [name] == greatpoleaxe) # [sockets] == 4 //insight 76 | ([name] == crypticaxe || [name] == thresher || [name] == greatpoleaxe || [name] == colossusvoulge) && [quality] <= superior && [flag] == ethereal # ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //&& [enhanceddamage] >= 15 //infinity, insight, pride, botd 77 | // spirit --------------------------------------------------------------------------- 78 | [name] == crystalsword && [quality] <= superior && [flag] != ethereal # ([sockets] == 4 || [sockets] == 5) //spirit,cta 79 | [name] == broadsword && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //spirit 80 | 81 | //white paladin scepters 82 | ([name] == warscepter || [name] == divinescepter || [name] == caduceus) && [quality] <= superior # [skillfistoftheheavens]+[skillconviction] >= 4 && ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //hoj, cta 83 | ([name] == warscepter || [name] == divinescepter || [name] == caduceus) && [quality] <= superior # [skillholyshield] >= 1 && ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //fortitude, hoj, cta 84 | ([name] == warscepter || [name] == divinescepter || [name] == caduceus) && [quality] <= superior # [skillblessedhammer]+[skillconcentration] >= 4 && ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //fortitude, cta 85 | [name] == caduceus && [quality] <= superior # ([skillfistoftheheavens] >= 1 || [skillconviction] >= 1 || [skillholyshield] >= 1 || [skillblessedhammer] >= 1 || [skillconcentration] >= 1) && [sockets] == 4 //fortitude 86 | [name] == caduceus && [quality] <= superior # ([skillholyshock] >= 3 || [skillzeal] >= 3) && [skillredemption] >= 1 && ([sockets] == 0 || [sockets] == 5) //cta 87 | 88 | -------------------------------------------------------------------------------- /d2bs/kolbot/pickit/autosmurf/white2.nip: -------------------------------------------------------------------------------- 1 | //----------------------------------------------------------------------------------------------------- 2 | // this is a list of white and socketed items that you want your bot to pick up during developing stage. 3 | // 4 | // ----------------------------------------------------------------------------------------------------- 5 | 6 | //white non-eth armor 7 | [name] == mageplate && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 8 | [name] == duskshroud && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 9 | [name] == wyrmhide && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 10 | [name] == scarabhusk && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 11 | [name] == wirefleece && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 12 | [name] == archonplate && [quality] <= superior && [flag] != ethereal # [sockets] == 2 //smoke 13 | 14 | //white 0 socket ethereal armor 15 | [name] == duskshroud && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 16 | [name] == wyrmhide && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 17 | [name] == scarabhusk && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 18 | [name] == wirefleece && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 19 | [name] == greathauberk && [quality] < superior && [flag] == ethereal # [defense] >= 510 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //710 prudence, duress, fortitude, stone 20 | [name] == boneweave && [quality] < superior && [flag] == ethereal # [defense] >= 510 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //710 prudence, duress, fortitude, stone 21 | [name] == balrogskin && [quality] < superior && [flag] == ethereal # [defense] >= 520 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //720 prudence, duress, fortitude, stone 22 | [name] == archonplate && [quality] < superior && [flag] == ethereal # [defense] >= 500 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4 || [sockets] == 2) //700 prudence, duress, fortitude, stone 23 | 24 | //white shields 25 | [name] == crownshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 26 | [name] == akarantarge && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 27 | [name] == akaranrondache && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4 ) //sanctuary, spirit, phoenix 28 | [name] == protectorshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 29 | [name] == gildedshield && [quality] <= superior && [flag] != ethereal # ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 30 | [name] == royalshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 31 | [name] == sacredtarge && [quality] <= superior && [flag] != ethereal # [fireresist] >= 40 && [enhanceddefense] >= 0 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 32 | [name] == sacredrondache && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && [enhanceddefense] >= 0 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 33 | [name] == kurastshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary. spirit, phoenix 34 | [name] == zakarumshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 35 | [name] == vortexshield && [quality] <= superior && [flag] != ethereal # [fireresist] >= 45 && ([sockets] == 0 || [sockets] == 3 || [sockets] == 4) //sanctuary, spirit, phoenix 36 | [name] == monarch && [quality] <= superior && [flag] != ethereal # [sockets] == 4 //spirit, phoenix 37 | 38 | //white helms 39 | [name] == grandcrown && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 40 | [name] == demonhead && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 41 | [name] == bonevisage && [quality] == superior && [flag] != ethereal # [sockets] == 2 //lore 42 | 43 | //white weapons 44 | //advance insight ------------------------------------------------------------------- 45 | ([name] == crypticaxe || [name] == thresher || [name] == greatpoleaxe) # [sockets] == 4 //insight 46 | ([name] == crypticaxe || [name] == thresher || [name] == greatpoleaxe || [name] == colossusvoulge) && [quality] <= superior && [flag] == ethereal # ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //&& [enhanceddamage] >= 15 //infinity, insight, pride, botd 47 | // spirit --------------------------------------------------------------------------- 48 | [name] == crystalsword && [quality] <= superior && [flag] != ethereal # ([sockets] == 4 || [sockets] == 5) //spirit,cta 49 | 50 | //white paladin sceptors 51 | ([name] == warscepter || [name] == divinescepter || [name] == caduceus) && [quality] <= superior # [skillfistoftheheavens]+[skillconviction] >= 4 && ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //hoj, cta 52 | ([name] == warscepter || [name] == divinescepter || [name] == caduceus) && [quality] <= superior # [skillholyshield] >= 1 && ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //fortitude, hoj, cta 53 | ([name] == warscepter || [name] == divinescepter || [name] == caduceus) && [quality] <= superior # [skillblessedhammer]+[skillconcentration] >= 4 && ([sockets] == 0 || [sockets] == 4 || [sockets] == 5) //fortitude, cta 54 | [name] == caduceus && [quality] <= superior # ([skillfistoftheheavens] >= 1 || [skillconviction] >= 1 || [skillholyshield] >= 1 || [skillblessedhammer] >= 1 || [skillconcentration] >= 1) && [sockets] == 4 //fortitude 55 | [name] == caduceus && [quality] <= superior # ([skillholyshock] >= 3 || [skillzeal] >= 3) && [skillredemption] >= 1 && ([sockets] == 0 || [sockets] == 5) //cta 56 | 57 | --------------------------------------------------------------------------------