| botNET | beta v0.5.0.x | botNET Bots | botNET MultiKilla |
| botNET Utilities | botNET Libraries | botNET Applications |
botNET Libraries
___________________________________________________________________________
Yadie by taylorjonl
[90 Kb]
Yet Another Diablo2 Item Evaluator library
Version 0.1
===============
DESCRIPTION:
Yadie is a class library that is designed to make the bot coders life easier. It is a library that evaluates items as they drop. It is licensed under the LGPL and is hosted on SourceForge.NET under the project d2slacker. LGPL means that you can use my library freely and don't have to distribute your source code, but if you modify my files you must release your modifications.
https://sourceforge.net/projects/yadie/
API FEATURES:
REQUIREMENTS:
- Microsoft .NET Framework 1.1 runtime (required by botNET)
- botNET 0.4.2.11
INSTALLATION:
1. First of all we need Microsoft .NET Framework 1.1 runtime, if we dont have
it then it's time to install otherwise skip to next.
dotnetfx.exe
.NET Frameword is virtual machine (Similar to the Java Virtual Machine), which executes botNET along with botNET assemblies.
2. Install botNET 0.4.2.11+ (wont work with earlier versions!!!). Again if you
already have it skip to next.
https://newd2event.net/index.php?id=botnet/botnet
botNET is a botting engine, required by Yadie. Package installs
itself within Daiblo game directory in a botNET folder, for example:
C:\Program Files\Diablo II\botNET.
3. Extract Yadie files to [Diablo]\botNET directory, remember to keep
directory structure untouched.
http://prdownloads.sourceforge.net/yadie/yadie-0.1.zip?download
4. If you want to load the YadieTest automatically when you attach botNET to D2 process
then add following line to [Diablo]\botNET\botNET.Assemblies.Load.cfg file.
YadieTest
Note: This bot does nothing but report items that are evaluated. It uses the already coded ItemEvaluations.ini in the Settings/ItemEvaluations folder. This file has every item in the game coded.
5. We have to make sure that Diablo process, we want to use with botNET, does
not have any other hacks loaded in it, like maphack or zoid pickit. If we
use d2loader in order to start our game then probably we got "extensions"
in plugin folder. The easiest way to temporary get rid of them is to
add: -noplugin to our game shortcut.
CONFIGURATION:
All configuration is done in [Diablo]\botNET\Settings\ItemEvaluations\ItemEvaluations.ini file. This isn't hard coded into Yadie, rather it is hard coded into YadieTest. A bot developer can make the config file whatever name he wants but just needs to call Evaluator.LoadConfig( filename ) so that the Yadie library can compile the item evaluations.
Most of configuration option are self-explainitory so i wont describe
them.
RUNNING:
This is a library so you can't run it. You must first write a bot that uses this library in order to do something usefull.
The way you would make use of it is you would create a botNET assembly and use the public methods/properties/events from the botNET.ItemEvaluation.Evaluator class.
___________________________________________________________________________
botNET.Screens 0.7.7 rc1
[91 Kb]
Contains functionality for out of game screen navigation, starting and joining games, creating characters and more. Source code is provided under LGPL.
___________________________________________________________________________
StashIt
[6 Kb]
This is a library for stashing items, so far you can specify item types not to stash and columns not to stash. This library will NOT take you to the stash and interact I leave that to the developer, execute StashItems once the stash UI is open.
Example:
Code:
ItemType [] DontStash;
int [] DontStashColumns;
DontStash = new botNET.ItemType[]
{
ItemType.AntidotePotion,
ItemType.Book
};
DontStashColumns = new int[]
{
6,
7,
8,
9
};
StashIt.StashItems(DontStash,DontStashColumns);
This could would not stash a tome, antidote, or item with x value 6,7,8 or 9.
Requirements:
botNET 0.4.1
StashIt v0.1.1 August 8, 2004:
-Fixed for botNET 0.4.1
___________________________________________________________________________
botNET.Screens 0.7.6
[91 Kb]
Contains functionality for out of game screen navigation, starting and joining games, creating characters and more. Source code is provided under LGPL.
New features in 0.7.6:
- Addressed locking the log file when running multiple instances of botNET.
- Replaced vestigal variables that were (as mentioned) in 0.7.3. The variables no longer affect anything but exist merely to mitigate link errors. The variables will be removed completely in a future release.
Requirements:
botNET.0.4.1
___________________________________________________________________________
MeldrynLib 0.1
[4 Kb]
A set of utilities, including chickening, auto potion and potion buying; as well as healing and repairing. Also included is a handy act-independent GoToNPC method.
Requires:
- botNET 0.3.2
- botNET.Pathing 1.2.1
___________________________________________________________________________
botVector v1.0
[5 Kb]
This library (originsally done by scavenger for d2jsp) is to aid in solutions requiring vector equations. With this you can create a vector, normalize a vector, and rotate a vector. You can also create coord objects. With these you can get a normalized direction vector, find the distance from one vector to another one, and calculate a new point based off of a vector.
___________________________________________________________________________
botNET.Pathing 1.4.0
[29 Kb]
updated for 0.4.0.
Now includes a StitchMap to do cross area pathing.
___________________________________________________________________________
botNET.Common v0.6.3 --0.4.0 COMPATIBLE
[19 Kb]
A library containing common functions for your bots. now including waypoint usage. The goal of this library is to create functions which can be used in any bot assembly. This library is currently being developed by yeknomssa and kasb.
botNET.Common 0.6.3 REQUIRES:
-botNET.Pathing 1.3.0
-botNET 0.4.0 or greater
Current Functions:
Town.Heal(bool GoBack)
Town.Repair(bool GoBack)
Town.ResMerc(bool GoBack)
Town.DoTP()
Waypoint.GoTo(Waypoint.Name.)
(more, too lazy to list)
To use this lib, just put it in your botNET folder and add a reference to botNET.Common.dll you may add using botNET.Common; to your assembly as well.
___________________________________________________________________________
D2Colors v2.0
[316 Kb]
This is just a Real Basic Color "Putter On" written in VB.NET
Requires:
botNET.library.dll (Version Used: 0.4.2.8)
**Come with Source Code and Example**
Just declare an object then set it to the color (not sure how "C# works, but here is one for VB.NET users)
Code:
Public Sub NewGame() Implements botNET.ILoadable.NewGame
'Creates Object as botNET.Game
Dim objGame As botNET.Game
'Creates Object As D2Colors
Dim objColors As D2Colors.Colors.GetColors
'Displays Text with Color
objGame.Print(objColors.Red & "Red" & objColors.Tan & "Tan")
End Sub
Changes:
Re-wrote code
You can actually use it now :)
(Earlier if you tried using it you got object not set to instance)
Improved source with comments
Improved the way you clal procedures
If you are using VB.NET (I'm sure other langs. are similar) Here's how to call a color
Code:
Dim objColors As D2Colors.Colors.GetColors
objColors.Color (if using VS .NET then it will popup a thing lisitng colors to u)
For more info (VB.NET Code, other languages supported just no examples for them) one exmaple is included in package
___________________________________________________________________________
Slacker v0.1
[577 Kb]
Slacker library
Version 0.1.3
===============
DESCRIPTION:
Slacker is a class library that is designed to make the bot coders life easier. It is a high level abstraction of what it takes to write a bot. It is licensed under the GPL and is hosted on SourceForge.NET under the project d2slacker.
https://sourceforge.net/projects/d2slacker/
API FEATURES:
- Act 1-5 Town movement to every NPC, act 1 a little buggy
- Waypoint interaction for every waypoint in the game
- Revives mercenary
- Buys potions
- Bot services including Chicken, Medic and Pickup
- Stashing support, in alpha development
- Out-Of-Game Navigation
REQUIREMENTS:
- Microsoft .NET Framework 1.1 runtime (required by botNET)
- botNET 0.4.0
- botNET.Screens 0.7.1 (library) <-- Temporary, till I make my own enums
- botNET.Pathing 1.3.1 (library)
INSTALLATION:
1. First of all we need Microsoft .NET Framework 1.1 runtime, if we dont have
it then it's time to install otherwise skip to next.
dotnetfx.exe
.NET Frameword is virtual machine (Similar to the Java Virtual Machine), which executes botNET along with botNET assemblies.
2. Install botNET 0.4.0+ (wont work with earlier versions!!!). Again if you
already have it skip to next.
https://newd2event.net/index.php?id=botnet/botnet
botNET is a botting engine, required by Slacker. Package installs
itself within Daiblo game directory in a botNET folder, for example:
C:\Program Files\Diablo II\botNET.
3. Download and install additional libraries. Put .dll files in [Diablo]\
botNET\Assemblies\Libraries folder.
https://newd2event.net/index.php?id=botnet/libraries
botNET.Screens 0.7.1+
botNET.Pathing 1.3.1+
4. Extract Slacker files to [Diablo]\botNET directory, remember to keep
directory structure untouched.
https://sourceforge.net/project/showfiles.php?group_id=105747
5. If you want to load the SkeletonBot automatically when you attach botNET to D2 process
then add following line to [Diablo]\botNET\botNET.Assemblies.Load.cfg file.
SkeletonBot
Note: This bot does nothing but keep the player in the game. It is meant to make a bot programmers life easier by having a template to base his bot off of. It will print to the screen if something in the Pickit.ini file matches a item that has dropped.
6. We have to make sure that Diablo process, we want to use with botNET, does
not have any other hacks loaded in it, like maphack or zoid pickit. If we
use d2loader in order to start our game then probably we got "extensions"
in plugin folder. The easiest way to temporary get rid of them is to
add: -noplugin to our game shortcut.
CONFIGURATION:
All configuration is done in [Diablo]\botNET\Settings\Slacker.ini file. This isn't hard coded into Slacker, rather it is hard coded into SkeletonBot. It is there to show you how the configuration file will be structured. A bot developer can make the config file whatever name he wants but just needs to call Bot.LoadConfig( filename ) so that the Slacker library can extract the Slacker/Service sections to properly configure itself.
Most of configuration option are self-explainitory so i wont describe
them.
RUNNING:
This is a library so you can't run it. You must first write a bot that uses this library in order to do something usefull.
The way you would make use of it is you would create a botNET assembly and have the main class inherit from the Slacker.Bot class. This bot includes all the implementation needed to run in the botNET environment other than 4 required functions that you must override.
Code:
public abstract void OnLoad();
public abstract void OnUnload();
public abstract void OnStart();
public abstract void OnStop();
Once you override them you have a functional bot that will login to battlenet, select your char and stay in games. You can modify the behavior of Slacker Out-Of-Game by overriding one of the following functions.
Code:
public virtual void OnEnterMainMenu();
public virtual void OnExitMainMenu();
public virtual void OnEnterCharSelection();
public virtual void OnExitCharSelection();
public virtual void OnEnterLobby();
public virtual void OnExitLobby();
public virtual void OnJoinChannel();
public virtual void OnExitChannel();
public virtual void OnJoinGame();
public virtual void OnExitGame();
If you only want your bot to joins games then there isn't any need to override them. It does this by default. If you do decide to do this though you will want to only use the Slacker Out-Of-Game functions to navigate because for now the OnXXXXXXXXXX functions are called by those. I would like to change it in the future but would need to know how to know when we changed Out-Of-Game state.
For now some of the above functions aren't used. All the OnExitXXXXX functions are unimplemented.
Now I will explain how to write a minimal bot. If you want the complete code for this SkeletonBot just checkout module "SkeletonBot" from the d2slacker sourceforge CVS.
Basically all you must do is inherit from Slacker.Bot and override OnJoinGame() to do what you want your bot to do in-game. You have a wide range of API calls to do this ranging from BuyPotions() to Walk(). I am in the middle of trying to get nDOC to document my API but I am getting some type of exception from it. If anyone is familiar with it and would like to generate them for me I would appreciate it. Otherwise if you have Visual Studio.NET you can use the Class Viewer to see what API the Bot class has.
___________________________________________________________________________
[Source] StashLib
[4 Kb]
Usefull Stash Lib Source.
Buy Diablo 2 Cd Keys, FRESH from BOX!
Diablo 2 Newsletter
Questions, ideas, problems, wishes?
Be informed whenever something new comes up
(or any important problems are fixed.).
You can unsubscribe from this newsletter at any time.
john
14 Jan 2008, 15:25
I wanna to download the bot source,but i cannt fild it.
help me
pancho
09 Nov 2007, 19:55
hi mmmm i need th 16 character code for diablo 2 please do anybody have pass to me please
tim
08 Apr 2007, 15:19
wats the 16 character cd code for diablo 2 thanks
|