danke data, aber dann kommt nur ein error, gambling.js is not defined Script endedQuote:
normal werden doch befehlsketten mit ; beendet
hast du mal
goldReserve: 200000;
probiert ?
/**
* @filename Gambling.js
* @author kolton
* @desc multi-profile gambling system
*/
var Gambling = {
Teams: {
//####################################################################################################
/* Gambling system for kolbot
Allows lower level characters to get a steady income of gold to gamble LLD/VLLD items
Not recommended for rings/amulets because of their high price (unless you want 3 gold finders to supply one gambler)
It's possible to have multiple teams of gamblers/gold finders. Individual entries are separated by commas.
Setting up:
"Gamble Team 1": { // Put a unique team name here.
goldFinders: ["GF Profile 1", "GF Profile 2"], // List of gold finder PROFILE names. They will join gamble games to drop gold
gamblers: ["Gambler 1", "Gambler 2"], // List of gambler PROFILE names. They will keep gambling and picking up gold from gold finders.
gambleGames: ["Gambling-", "HeyIGamble-"], // Games that gold finders will join, don't use numbers.
goldTrigger: 2500000, // Minimum amount of gold before giving it to gamblers.
goldReserve: 200000 // Amount of gold to keep after dropping.
}
Once set up properly, the gold finders will run their own games and join gamblers' games when they're out of gold.
*/
"Gamble Team": {
goldFinders: ["barbGF1", "barbGF2"],
gamblers: ["gambler"],
gambleGames: ["gamble-1"],
goldTrigger: 2400000,
goldReserve: 100000
}
//####################################################################################################
},
inGame: false,
getInfo: function (profile) {
var i, j;
if (!profile) {
profile = me.profile;
}
for (i in this.Teams) {
if (this.Teams.hasOwnProperty(i)) {
for (j = 0; j < this.Teams[i].goldFinders.length; j += 1) {
if (this.Teams[i].goldFinders[j].toLowerCase() === profile.toLowerCase()) {
this.Teams[i].goldFinder = true;
this.Teams[i].gambler = false;
return this.Teams[i];
}
}
for (j = 0; j < this.Teams[i].gamblers.length; j += 1) {
if (this.Teams[i].gamblers[j].toLowerCase() === profile.toLowerCase()) {
this.Teams[i].goldFinder = false;
this.Teams[i].gambler = true;
return this.Teams[i];
}
}
}
}
return false;
},
inGameCheck: function () {
var i,
info = this.getInfo();
if (info && info.goldFinder) {
for (i = 0; i < info.gambleGames.length; i += 1) {
if (info.gambleGames[i] && me.gamename.match(info.gambleGames[i], "i")) {
this.dropGold();
DataFile.updateStats("gold");
delay(5000);
quit();
//delay(10000);
return true;
}
}
}
return false;
},
dropGold: function () {
var info = this.getInfo();
if (info && info.goldFinder) {
Town.goToTown(1);
Town.move("stash");
while (me.getStat(14) + me.getStat(15) > info.goldReserve) {
gold(me.getStat(14)); // drop current gold
Town.openStash();
if (me.getStat(15) <= me.getStat(12) * 1e4) { // check stashed gold vs max carrying capacity
gold(me.getStat(15) - info.goldReserve, 4); // leave minGold in stash, pick the rest
} else {
gold(me.getStat(12) * 1e4, 4); // pick max carrying capacity
}
delay(1000);
}
}
},
outOfGameCheck: function () {
var game,
info = this.getInfo();
if (info && info.goldFinder && DataFile.getStats().gold >= info.goldTrigger) {
game = this.getGame();
if (game) {
D2Bot.printToConsole("Joining gold drop game.", 7);
this.inGame = true;
me.blockMouse = true;
delay(2000);
joinGame(game[0], game[1]);
me.blockMouse = false;
delay(5000);
while (me.ingame) {
delay(1000);
}
this.inGame = false;
return true;
}
}
return false;
},
getGame: function () {
var i, game,
info = this.getInfo();
if (!info || !info.goldFinder) {
return false;
}
function CheckEvent(mode, msg) {
var i;
if (mode === 4) {
for (i = 0; i < info.gambleGames.length; i += 1) {
if (info.gambleGames[i] && msg.match(info.gambleGames[i], "i")) {
game = msg.split('/');
break;
}
}
}
}
addEventListener('copydata', CheckEvent);
game = null;
for (i = 0; i < info.gamblers.length; i += 1) {
sendCopyData(null, info.gamblers[i], 0, me.profile);
delay(100);
if (game) {
break;
}
}
removeEventListener('copydata', CheckEvent);
return game;
}
};
/**
* @filename Gamble.js
* @author kolton
* @desc keep gambling while other players supply you with gold
*/
function Gamble() {
var gold,
info = Gambling.getInfo(),
needGold = false;
if (!info) {
throw new Error("Bad Gambling System config.");
}
me.maxgametime = 0;
Town.goToTown(1);
addEventListener('copydata',
function (mode, msg) {
if (needGold && mode === 0 && info.goldFinders.indexOf(msg) > -1) {
print("Got game request from " + msg);
sendCopyData(null, msg, 4, me.gamename + "/" + me.gamepassword);
}
});
while (true) {
if (Town.needGamble()) {
Town.gamble();
} else {
needGold = true;
}
Town.move("stash");
while (needGold) {
while (true) {
if (Town.needGamble()) {
needGold = false;
}
Town.stash();
gold = getUnit(4, 523, 3);
if (!gold || !Pickit.canPick(gold)) {
break;
}
Pickit.pickItem(gold);
delay(500);
}
delay(500);
}
delay(1000);
}
return true;
}
Du kannst alle items auf deinen mule acc/chars mit dem skript D2BotMulelog speichern. Dabei macht er von jedem Item quasi ein Bild und legt das in den images ordner ab.Quote:
Hat jemand eine Ahnung, ob man beim Automule, wenn er Sachen vom Char auf den Mule verschiebt, man sich diese dann im D2-Bot-Fenster anschaut und dort dann auf dem Bild der Account und der Char zu sehen ist, wegbekommt? Dass er quasi nur das Foto hat, ohne irgendwleche Zusätze (Schrift)?
Bitte mal sagen, ob es geht
Es restarted den D2 Client wenn dieser mehr als XY Ram verbauchtQuote:
was macht eigendlich Ram Reset? im manager hatte ich mich schon immer gefragt^^
das mitgelieferte Autoequip File enthält nur classic Items. Du kannst dir aber jederzeit deine eigene Lod Autoequip Pickit schreiben ...Quote:
Hi
ich meine gelesen zuhaben, dass das Auto equip skript nur mit classic sachen funktioniert!
Ist das korrekt oder funktionieren auch expansion sets und uniques?
Vielen Dank
kolbot/libs/MuleLogger.jsQuote:
Hat jemand eine Ahnung, ob man beim Automule, wenn er Sachen vom Char auf den Mule verschiebt, man sich diese dann im D2-Bot-Fenster anschaut und dort dann auf dem Bild der Account und der Char zu sehen ist, wegbekommt? Dass er quasi nur das Foto hat, ohne irgendwleche Zusätze (Schrift)?
LogNames: true, // Put account/character name on the picture LogItemLevel: true, // Add item level to the picture
Town.doChores();
Config.HealHP = 75; // Go to a healer if under designated percent of life. Config.HealMP = 75; // Go to a healer if under designated percent of mana.
tasks: [
{Heal: NPC.Akara, Shop: NPC.Akara, Gamble: NPC.Gheed, Repair: NPC.Charsi, Merc: NPC.Kashya, Key: NPC.Akara, CainID: NPC.Cain},
{Heal: NPC.Fara, Shop: NPC.Drognan, Gamble: NPC.Elzix, Repair: NPC.Fara, Merc: NPC.Greiz, Key: NPC.Lysander, CainID: NPC.Cain},
{Heal: NPC.Ormus, Shop: NPC.Ormus, Gamble: NPC.Alkor, Repair: NPC.Hratli, Merc: NPC.Asheara, Key: NPC.Hratli, CainID: NPC.Cain},
{Heal: NPC.Jamella, Shop: NPC.Jamella, Gamble: NPC.Jamella, Repair: NPC.Halbu, Merc: NPC.Tyrael, Key: NPC.Jamella, CainID: NPC.Cain},
{Heal: NPC.Malah, Shop: NPC.Malah, Gamble: NPC.Anya, Repair: NPC.Larzuk, Merc: NPC["Qual-Kehk"], Key: NPC.Malah, CainID: NPC.Cain}
],
// Go to a town healer
heal: function () {
if (!this.needHealing()) {
return true;
}
if (!this.initNPC("Heal")) {
return false;
}
return true;
},
// Check if healing is needed, based on character config
needHealing: function () {
if (me.hp * 100 / me.hpmax <= Config.HealHP || me.mp * 100 / me.mpmax <= Config.HealMP) {
return true;
}
// Status effects
if (Config.HealStatus && (me.getState(2) || me.getState(9) || me.getState(61))) {
return true;
}
return false;
},
this.heal();
this.identify();
this.shopItems();
this.fillTome(518);
if (Config.FieldID) {
this.fillTome(519);
}
this.buyPotions();
this.clearInventory();
Item.autoEquip();
this.buyKeys();
this.repair();
this.gamble();
this.reviveMerc();
Cubing.doCubing();
Runewords.makeRunewords();
this.stash(true);
this.clearScrolls();
Town.doChores();
Town.Heal();
ging beides nicht :)Quote:
Versuch es mal mit
Code:this.heal();
ja so hab ich es gemachtQuote:
Eine andere alternative wäre noch eine zweite townChore zumachen in der du alles rausschmeißt was du nicht haben wills, somit besteht der ganze Rahmen deiner funktion bereits.
Aber du hast es ja irgendwie geschafft.
Verstehe nicht ganz was du meinst.
Hier das wiki für den anfang.
[Only registered and activated users can see links. Click Here To Register...]