12-30-2004, 05:18 PM
Most people that only go to d2sector (good 4 u) would not know what YAMB is, and i could find it in the "Bots" section on the dl area, so here it is for those of you who need it.
YAMB (short for Yet-Another-MultiBot) is a bot that is derived from ChainXP. Special thanks go out to Kougio and 2KH who put in alot of effort to make ChainXP, without which, this bot would not be possible. It uses the d2jsp common libs to kill multiple bosses. After each boss, it casts a TP back to town and heal before moving on to the next boss. Currently the following bosses are supported:
-Countess
-Pit
-Andy
-Cow
-Meph
-Travincal
-Diablo
-Hephasto
-Pindle
-Eldritch
-Shenk
-Threshsocket
-Baal
If you would like to make a boss module for YAMB, just PM me and I'll add your script to the release.
A Brief description of what YAMB OFFERS:
- It the only bot that support team boting. Now you and your friends can all botting together in the same area. Perfect for baaling run.
- It is the only known d2jsp bot that can get you a perfect Gheed's unique charm without very nasty side-effects (like picking it repeatedly and failing each time) and without extra configuration other than what is configured in your snagit_xp and bmitems_xp.ini.
- It is the only known d2jsp bot that has potion-swapping, making the most use of any full rejuv pots that you find and replacing your healing/mana/normal rejuv pots. This means you can often get a whole belt-full of full rejuv pots making your runs alot safer.
- It has the only known fully workable d2jsp solution to find hotips for diablo clone, thanks to wurscht!
- Item grabbing has also been improved since ChainXP, now if the bot is full it doesnt just give up and prints out a log, it goes back to town, ids and clears its stuff then returns through the portal and picks up whatever items it didnt have space for previously. This makes sure you dont miss out potentially good items, which you can for the XP scripts and also with ChainXP if your available inventory space is too small. This also means you can carry more charms and optimize your mf further than the other XP bots allow.
- It has been tested with both 0.43+ and 0.44+ versions of d2jsp releases and supports both versions of autod2jsp logging.
- It fixes some nasty bugs in the common libs. For example, the snagit bug that can silently prevent you from getting socketable armors and items for making runewords, if you use the default snagit ini. Or the nasty pathing bug that lets you teleport endlessly against an edge in durance 2, while monsters pound at you.
- Support all 7 classes.
- Support non teleport char.
FAQ
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How do I install this? </TD></TR></TBODY></TABLE>
A.
For the updated installation instruction, refer to the website here
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How do I get team botting or leeching working? </TD></TR></TBODY></TABLE>
A.
For updated instruction, please use this link here.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. What version of d2jsp core should I use? </TD></TR></TBODY></TABLE>
A.
I recommend using d2jsp core version 0.43+. If you dont have 0.43, you can get it here Version 0.44+ is too unstable and has too many bugs introduced into it (looks like they did not do enough testing before release this). If you use version 0.44+ expect alot more crashes and instability. The screenhook font colors (for YAMB title, hp, mana, .ip and ping, etc.) in 0.44 are all white because of a bug in 0.44 also.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How is the success percentage calculated? </TD></TR></TBODY></TABLE>
A.
((Total number of Bosses killed / Number of Bosses per run in your char configuration) / Total Number of runs) * 100
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How does the weapon switch work? </TD></TR></TBODY></TABLE>
A.
It calculates your mf for the two switches and determine your attacking weapon tab (one with lower mf), versus your mf weapon tab (one with higher mf).
If your higher mf weapon switch is ALSO your attacking weapon switch then I strongly suggest turning off weapon switch altogether or get rid of anything on the other weapon switch, otherwise it will mess things up.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How do I tell YAMB to only pickup 1 instance of a certain item? </TD></TR></TBODY></TABLE>
A.
If you want to configure YAMB to only pickup 1 instance of an item, just do what is done for Gheed's charm.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Code:</TD></TR><TR><TD class=code>
[Unique Grand Charm]
Code="cm3"
Level=Unique
Description=ÿc4Gheed's Fortune (Unique Grand Charm)
number=gheed
;number should be the last key in a section type
</TD></TR></TBODY></TABLE>
The syntax is "number=<UNIQUE name key>" where keyname is something unique that you created. It will also check your stash and inventory at the beginning of the game to make sure that it includes the actual count of the item.
For example, if it checks at the start of the game that you already have a gheed's charm it will not attempt to pickup gheed's charm again.
Note that this feature in YAMB is additional to the defined standard snagit behavior with venom's IM where you have to physically edit and reset the numbers in bmNumbers.ini each time you use the bot (it doesnt check your stash or inventory for the item at the start). If you dont, and you switch bot who already has a gheed's charm for example, you can run into trouble. YAMB protects against that and doesnt require you to check the config each time. It adapts to your bot's items in the background without you having to worry about the bmNumbers config in this case. You can also add an "iditem" line if the item needs identifying and filter its stats in bmitems_xp.ini (see Gheed's charm example in packaged snagit_xp and bmitems_xp.ini, within the YAMB zip file)
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Code:</TD></TR><TR><TD class=code>[Unique Grand Charm]
Code=cm3
qual=7
80>35
</TD></TR></TBODY></TABLE>
To keep only a gheed's charm with at least 35% MF, put the above entry in your bmitems_xp.ini file after adding the other entry into your snagit_xp.ini file as described above.
Change Logs
YAMB 09.5.7
Changes to this version:
- added potioncleaning after killing the council and baal's minion while waiting. This should speed up belt management in town. You can even tell it to pick up heal and mana pot to avoid visiting town.
- Added amazon support. By darkspirit.
- Added necromancer support. By darkspirit.
- Added druid support. By darkspirit.
- Added assassin support. By darkspirit.
- Added barbarian support. By darkspirit.
- Added Parasite module(leecher). By darkspirt. Work with Baal and Cow.
- Updated Andy and Move lib with 2KH's suggestions
- Added Hephasto module. By gzt.
- Added Diablo module. By gzt with help from Kougio.
- Added cow module. By Kougio.
- Added team support for party up. By darkspirit. Work with Baal and Diablo modules.
- Changed Pally monster attack function to XP_AttackMonster.
- Added YAM_MustIdle var to char config files. Useful for perming mules. By darkspirit.
- Fixed CTA bug- Hangs if you dont have CTA but you have DA_UseCTA set to true. By darkspirit.
- Added option for openning other chests and weapon/armour stands near Meph. By Sumo.
- Added option to kill all the other council members and open the 6 fixed position chest. By Sumo.
- Removed buy key at Ormus. (He don't sell key).
- Added check to buy key in act5 when you start from act3.
- Added clearing function to the pathing if it get stuck by monsters.
- Updated HOTIP.
YAMB 0.9.5.6
Changes to this version:
-Fixed immune bug for single element sorc.
-Fixed target is not define in baal script.
-Use time stamp to check throne room for monster left over.
-Snagit will now pickup items with in the range of 4 with out teleport to it first.
-XP_StallKill is now optional for all bosses. While stalling, the bot will loops for snagit to pickup item. Good for public Baal.
-YAMB will now support chars WITHOUT TELEPORT skill. Just don't complain to us if you get pathing error because you get surrounded.
YAMB 0.9.5.5
Changes to this version:
-Each class is now on it's own module.
-Move class specific variables to it own module.
-Class specific module is being loaded by YAMB.d2l.
-Baal script has got more improvement.
-Added Trav script as beta. By DBJ.
-Added a function to avoid problem when trying to teleport over a distance of 40. By Darkspirit.
-changed DM_MoveTo function to have additional parameter for non randomize spot teleport: DM_MoveTo(x,y,dontwalk,truetele)
-MOdified sorc boss's attacking function.
-Modified monster attacking function. Will attack with all the skills you set.
-Added meph's cold orb detection in XP_CheckUtil().
-New meph dodging function. Will dodge cold orb and/or adjust distance to 13-15 for your frozen orb.
-Added rune logging modification to all scripts. Also moved it's saving position to avoid rune logging error. Suggested by Darkspirit.
-Added DC_DoDel(DC_LagDelay) to all stairs and portal in all scripts. If you have problem missing tiles, set DC_LagDelay higher.
-Added UseVigor option to allow the hammerdin to walk slower in town to avoid failure interaction with merchant and stash.
-Added potion cleaning before inventry check to avoid going to stash for nothing.
Notices to CODERS:
Here are the common function names that you will be using if you write script. If you writing an attacking module for a class, name it after the class you write for.
All class module from now on must be in their librabry. It must content at least these two functions:
-XP_BossAttack() - Use to kill boss.
-XP_ClearPosition() - For killing normal monsters. It the same name
- Global variables remain in the YAM-Variables.d2l
- Class specific variables must go into their class module. Class module is being loaded by YAMB.d2l.
This release content a lot more changes since the pre-release.
YAMB 0.9.5.4
This release is for fixing adding in the new belt manager and fixes.
- New belt management. By Darkspirit.
- Update Redemption function. By Darkspirit.
- Minor changes to baal script. By Darkspirit.
- Update cubing module. By RobBertram.
- create tp at the corner after coming back down from town. By DBJ.
- Add multi steps tele to chest at meph if you are too far away. By Kougio.
- Remove Shout from the CTA usage. Great find Ziesta.
- Add area logging to snagit. Modified by DBJ and Darkspirit.
- Put Meteor and Blizzard spamming back in baal script with no delay.
For complete log changes, please visit YAMB web sites with links about.
Known Issues:
- Sometimes the bot will be stuck behind an obstacle in town with the error message, "DM_WalkTo(), message = We got stuck someplace!"
- Pather in act3 will sometimes fail to find a path to durance level 3
- Bot will sometimes attack monsters behind a wall
- Although logging has been fixed for multi-botting, it is still in beta and some counters may not be exactly right (e.g. crash counter).
- The same ignored items can be logged more than once. Set DL_LogMode = 0 in your char config file to avoid logging ignored items if it bothers you.
Future Plans for this bot:
- Add immunities and monster classid checks in another function
- wurscht needs to add soj count messages support in different languages to the gamemsghandler
- Add boss logging (with immunities/enchantments/auras) so we know which boss (and its attribute) causes the most death
- Make bmNumbers support to be able to specify not just 1 instance of an item but X instance(s).
- Add more bosses
- Add excess rejuv potion stashing (can be coupled with cubing 3 rvs = 1 rvl), so we can put it back to the belt if needed later. Although I know how to implement that, this is low priority and really not much of an advantage for the work.
- Cleanup common libraries and code
- Fix bugs
- Rushing bot.
- Level 1 leveling bot.
- Add documentations
- Installation guide for NOOBS.
Click Here to download.
-taken from blizzhackers-
YAMB (short for Yet-Another-MultiBot) is a bot that is derived from ChainXP. Special thanks go out to Kougio and 2KH who put in alot of effort to make ChainXP, without which, this bot would not be possible. It uses the d2jsp common libs to kill multiple bosses. After each boss, it casts a TP back to town and heal before moving on to the next boss. Currently the following bosses are supported:
-Countess
-Pit
-Andy
-Cow
-Meph
-Travincal
-Diablo
-Hephasto
-Pindle
-Eldritch
-Shenk
-Threshsocket
-Baal
If you would like to make a boss module for YAMB, just PM me and I'll add your script to the release.
A Brief description of what YAMB OFFERS:
- It the only bot that support team boting. Now you and your friends can all botting together in the same area. Perfect for baaling run.
- It is the only known d2jsp bot that can get you a perfect Gheed's unique charm without very nasty side-effects (like picking it repeatedly and failing each time) and without extra configuration other than what is configured in your snagit_xp and bmitems_xp.ini.
- It is the only known d2jsp bot that has potion-swapping, making the most use of any full rejuv pots that you find and replacing your healing/mana/normal rejuv pots. This means you can often get a whole belt-full of full rejuv pots making your runs alot safer.
- It has the only known fully workable d2jsp solution to find hotips for diablo clone, thanks to wurscht!
- Item grabbing has also been improved since ChainXP, now if the bot is full it doesnt just give up and prints out a log, it goes back to town, ids and clears its stuff then returns through the portal and picks up whatever items it didnt have space for previously. This makes sure you dont miss out potentially good items, which you can for the XP scripts and also with ChainXP if your available inventory space is too small. This also means you can carry more charms and optimize your mf further than the other XP bots allow.
- It has been tested with both 0.43+ and 0.44+ versions of d2jsp releases and supports both versions of autod2jsp logging.
- It fixes some nasty bugs in the common libs. For example, the snagit bug that can silently prevent you from getting socketable armors and items for making runewords, if you use the default snagit ini. Or the nasty pathing bug that lets you teleport endlessly against an edge in durance 2, while monsters pound at you.
- Support all 7 classes.
- Support non teleport char.
FAQ
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How do I install this? </TD></TR></TBODY></TABLE>
A.
For the updated installation instruction, refer to the website here
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How do I get team botting or leeching working? </TD></TR></TBODY></TABLE>
A.
For updated instruction, please use this link here.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. What version of d2jsp core should I use? </TD></TR></TBODY></TABLE>
A.
I recommend using d2jsp core version 0.43+. If you dont have 0.43, you can get it here Version 0.44+ is too unstable and has too many bugs introduced into it (looks like they did not do enough testing before release this). If you use version 0.44+ expect alot more crashes and instability. The screenhook font colors (for YAMB title, hp, mana, .ip and ping, etc.) in 0.44 are all white because of a bug in 0.44 also.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How is the success percentage calculated? </TD></TR></TBODY></TABLE>
A.
((Total number of Bosses killed / Number of Bosses per run in your char configuration) / Total Number of runs) * 100
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How does the weapon switch work? </TD></TR></TBODY></TABLE>
A.
It calculates your mf for the two switches and determine your attacking weapon tab (one with lower mf), versus your mf weapon tab (one with higher mf).
If your higher mf weapon switch is ALSO your attacking weapon switch then I strongly suggest turning off weapon switch altogether or get rid of anything on the other weapon switch, otherwise it will mess things up.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Quote:</TD></TR><TR><TD class=quote>Q. How do I tell YAMB to only pickup 1 instance of a certain item? </TD></TR></TBODY></TABLE>
A.
If you want to configure YAMB to only pickup 1 instance of an item, just do what is done for Gheed's charm.
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Code:</TD></TR><TR><TD class=code>
[Unique Grand Charm]
Code="cm3"
Level=Unique
Description=ÿc4Gheed's Fortune (Unique Grand Charm)
number=gheed
;number should be the last key in a section type
</TD></TR></TBODY></TABLE>
The syntax is "number=<UNIQUE name key>" where keyname is something unique that you created. It will also check your stash and inventory at the beginning of the game to make sure that it includes the actual count of the item.
For example, if it checks at the start of the game that you already have a gheed's charm it will not attempt to pickup gheed's charm again.
Note that this feature in YAMB is additional to the defined standard snagit behavior with venom's IM where you have to physically edit and reset the numbers in bmNumbers.ini each time you use the bot (it doesnt check your stash or inventory for the item at the start). If you dont, and you switch bot who already has a gheed's charm for example, you can run into trouble. YAMB protects against that and doesnt require you to check the config each time. It adapts to your bot's items in the background without you having to worry about the bmNumbers config in this case. You can also add an "iditem" line if the item needs identifying and filter its stats in bmitems_xp.ini (see Gheed's charm example in packaged snagit_xp and bmitems_xp.ini, within the YAMB zip file)
<TABLE cellSpacing=1 cellPadding=3 width="90%" align=center border=0><TBODY><TR><TD>Code:</TD></TR><TR><TD class=code>[Unique Grand Charm]
Code=cm3
qual=7
80>35
</TD></TR></TBODY></TABLE>
To keep only a gheed's charm with at least 35% MF, put the above entry in your bmitems_xp.ini file after adding the other entry into your snagit_xp.ini file as described above.
Change Logs
YAMB 09.5.7
Changes to this version:
- added potioncleaning after killing the council and baal's minion while waiting. This should speed up belt management in town. You can even tell it to pick up heal and mana pot to avoid visiting town.
- Added amazon support. By darkspirit.
- Added necromancer support. By darkspirit.
- Added druid support. By darkspirit.
- Added assassin support. By darkspirit.
- Added barbarian support. By darkspirit.
- Added Parasite module(leecher). By darkspirt. Work with Baal and Cow.
- Updated Andy and Move lib with 2KH's suggestions
- Added Hephasto module. By gzt.
- Added Diablo module. By gzt with help from Kougio.
- Added cow module. By Kougio.
- Added team support for party up. By darkspirit. Work with Baal and Diablo modules.
- Changed Pally monster attack function to XP_AttackMonster.
- Added YAM_MustIdle var to char config files. Useful for perming mules. By darkspirit.
- Fixed CTA bug- Hangs if you dont have CTA but you have DA_UseCTA set to true. By darkspirit.
- Added option for openning other chests and weapon/armour stands near Meph. By Sumo.
- Added option to kill all the other council members and open the 6 fixed position chest. By Sumo.
- Removed buy key at Ormus. (He don't sell key).
- Added check to buy key in act5 when you start from act3.
- Added clearing function to the pathing if it get stuck by monsters.
- Updated HOTIP.
YAMB 0.9.5.6
Changes to this version:
-Fixed immune bug for single element sorc.
-Fixed target is not define in baal script.
-Use time stamp to check throne room for monster left over.
-Snagit will now pickup items with in the range of 4 with out teleport to it first.
-XP_StallKill is now optional for all bosses. While stalling, the bot will loops for snagit to pickup item. Good for public Baal.
-YAMB will now support chars WITHOUT TELEPORT skill. Just don't complain to us if you get pathing error because you get surrounded.
YAMB 0.9.5.5
Changes to this version:
-Each class is now on it's own module.
-Move class specific variables to it own module.
-Class specific module is being loaded by YAMB.d2l.
-Baal script has got more improvement.
-Added Trav script as beta. By DBJ.
-Added a function to avoid problem when trying to teleport over a distance of 40. By Darkspirit.
-changed DM_MoveTo function to have additional parameter for non randomize spot teleport: DM_MoveTo(x,y,dontwalk,truetele)
-MOdified sorc boss's attacking function.
-Modified monster attacking function. Will attack with all the skills you set.
-Added meph's cold orb detection in XP_CheckUtil().
-New meph dodging function. Will dodge cold orb and/or adjust distance to 13-15 for your frozen orb.
-Added rune logging modification to all scripts. Also moved it's saving position to avoid rune logging error. Suggested by Darkspirit.
-Added DC_DoDel(DC_LagDelay) to all stairs and portal in all scripts. If you have problem missing tiles, set DC_LagDelay higher.
-Added UseVigor option to allow the hammerdin to walk slower in town to avoid failure interaction with merchant and stash.
-Added potion cleaning before inventry check to avoid going to stash for nothing.
Notices to CODERS:
Here are the common function names that you will be using if you write script. If you writing an attacking module for a class, name it after the class you write for.
All class module from now on must be in their librabry. It must content at least these two functions:
-XP_BossAttack() - Use to kill boss.
-XP_ClearPosition() - For killing normal monsters. It the same name
![[Image: icon_wink.gif]](http://images.blizzhackers.com/images/smiles/icon_wink.gif)
- Global variables remain in the YAM-Variables.d2l
- Class specific variables must go into their class module. Class module is being loaded by YAMB.d2l.
This release content a lot more changes since the pre-release.
YAMB 0.9.5.4
This release is for fixing adding in the new belt manager and fixes.
- New belt management. By Darkspirit.
- Update Redemption function. By Darkspirit.
- Minor changes to baal script. By Darkspirit.
- Update cubing module. By RobBertram.
- create tp at the corner after coming back down from town. By DBJ.
- Add multi steps tele to chest at meph if you are too far away. By Kougio.
- Remove Shout from the CTA usage. Great find Ziesta.
- Add area logging to snagit. Modified by DBJ and Darkspirit.
- Put Meteor and Blizzard spamming back in baal script with no delay.
For complete log changes, please visit YAMB web sites with links about.
Known Issues:
- Sometimes the bot will be stuck behind an obstacle in town with the error message, "DM_WalkTo(), message = We got stuck someplace!"
- Pather in act3 will sometimes fail to find a path to durance level 3
- Bot will sometimes attack monsters behind a wall
- Although logging has been fixed for multi-botting, it is still in beta and some counters may not be exactly right (e.g. crash counter).
- The same ignored items can be logged more than once. Set DL_LogMode = 0 in your char config file to avoid logging ignored items if it bothers you.
Future Plans for this bot:
- Add immunities and monster classid checks in another function
- wurscht needs to add soj count messages support in different languages to the gamemsghandler
- Add boss logging (with immunities/enchantments/auras) so we know which boss (and its attribute) causes the most death
- Make bmNumbers support to be able to specify not just 1 instance of an item but X instance(s).
- Add more bosses
- Add excess rejuv potion stashing (can be coupled with cubing 3 rvs = 1 rvl), so we can put it back to the belt if needed later. Although I know how to implement that, this is low priority and really not much of an advantage for the work.
- Cleanup common libraries and code
- Fix bugs
- Rushing bot.
- Level 1 leveling bot.
- Add documentations
- Installation guide for NOOBS.
Click Here to download.
-taken from blizzhackers-