Log in

View Full Version : Mintwallin [deposit + refill]



Mackiiboy
04-13-2013, 21:27
This will be my first script that I publish to the public.

About:

The script start at thais depot (bottom floor) and will hunt at Mintwallin until the bot is low on cap or potions. The hunts will loop until a server save or until the player just have 15 hours stamina left (then it will logout). This is great for optimal profit and exp-gain.

The script contains a potion refiller and item depositer and uses mana potions and strong health potions as default.
It will also calculate and log all profit from cash and how much exp the bot has gained from a certain round in the players log.txt-file. (I have not bothered to calculate the profit from creature products since I did not bot there that much). Here is an example from my log:

on 10-03-2013 at 05:51:09, [hidden character name] (level 66) got 6039gp profit and 126366 exp from a hunt at mintwallin. the hunt was 222 minutes long.
on 12-03-2013 at 23:02:07, [hidden character name] (level 67) got 8879gp profit and 124519 exp from a hunt at mintwallin. the hunt was 243 minutes long.
on 14-03-2013 at 22:09:58, [hidden character name] (level 68) got 7584gp profit and 139752 exp from a hunt at mintwallin. the hunt was 230 minutes long.

Total average profit was about 12-17k profit per hunt with 15-45k exp per hour.

It is also possible to make your bot to leave earlier if you write exiva _leave = 1 in the client, a useful feature if you want to leave and logout at the depot but can not be arsed to restart the script manually to force the bot to leave or leave manually. exiva _leave = 0 is on default, which means the bot will continue to loop the hunting.

The bot will pick up items like:


Gold Coin
Poison Spider Shell
Bat Wing
Lump of Dirt
Centipede Leg
Ghoul Snack
Brown Piece of Cloth
Pile of Grave Earth
Life Ring
Rotten Piece of Cloth
Orc Leather
Orc Tooth
Skull Belt
Broken Helmet
Wand of inferno
Dragon Hammer
Serpent Sword
Dragon Shield
Dragonbone Staff
Cyclops Toe
Cyclops Trophy
Pelvis Bone
Minotaur Horn
Minotaur Leather
Broken Crossbow
Piece of Archer Armor
Piece of Warrior Armor
Health Potion
Minotaur Trophy
Purple Robe
Wand of Cosmic Energy
Dwarven Helmet

Recommendations:

It works best for knights and is great to use between level 50-70 if you have bad skills. If your knight have good skills, it will probably be possible to start as early as around level 30 or maybe even earlier.

Benefits:

1. Mintwallin is an awesome ground to hunt at if you want to finish a minotaur task fast. It will just take 1-2 days.

2. Quite good exp and profit per hour to be a free account hunting-ground, at least compared to other hunting-grounds for level ~40-60.

Drawbacks:

1. Mintwallin is not the best place when it comes to the botting-ground. It is possible to get trapped by troughs and boxes and get killed by archers and mages if you are unlucky and meet a player that decides to kill you. It happened 3 times of my 167 hunts that I spent there (many different chars). It is not something that happen every day or week (if you not are an unlucky one), but it will likely happen sooner or later.
This occurs on other botting-grounds as well and is quite hard to fix. You will either have to create a really advanced cond-event that destroys boxes and object around you if you get trapped, or hunt at botting-grounds without any distance creatures.

2. I have not bothered to add a door opener or a safe checkpoint for potions. If a door is closed in the ancient temple, the bot will wait till' the door is open. If the door is closed in the potion shop or if the shop is blocked, the bot will likely go to the hunting-ground without refilling. Same with the depot. If the depot is blocked, the bot can't deposit items. (All this is easy to fix, you will just have to add some script lines that checks the door coordinate to see if the door is closed, check if you have bought any potions and check if depot is blocked).

The script:

7742

Do not forget to bring brown mushrooms or other food, otherwise will your profit decrease!

maxibott
04-22-2013, 21:43
Dude, your script is great but in my blackd have a few bugs like

- no attacking mobs
- no looting
- no loot for fire devil loot like a guardian shield
- no attacking dragon hatchlings
- Idiotic combat dance ( really if u r surrouned by 15 minotaurs ( 5 guards 9 common and one archer ) its idiotic to taking damage while following a archer to kill him. Its just a waste)

i put here my changed script. But don't think that my opinion about this script is bad, its very good script but it needed a some fixes)


setLoot D7 0B
setMeleeKill poison spider
setLoot DD 2C
setMeleeKill snake
setMeleeKill cave rat
setMeleeKill slime
setMeleeKill bat
setLoot 06 17
setMeleeKill rotworm
setLoot DC 25
setMeleeKill centipede
setLoot 3D 28
setMeleeKill ghoul
setLoot CB 2C
setLoot 19 17
setLoot DC 2C
setLoot EC 0B
setLoot 33 28
setMeleeKill orc
setMeleeKill orc spearman
setMeleeKill orc warrior
setLoot D7 2C
setLoot D4 27
setLoot D8 2C
setLoot BD 2C
setMeleeKill dragon
setAvoidFront dragon
setLoot FF 0B
setLoot FA 0C
setLoot E1 0C
setLoot 58 0D
setLoot 06 1D
setMeleeKill cyclops
setLoot B9 25
setLoot E6 1C
setMeleeKill fire devil
setLoot 57 0D
setLoot F9 2C
setLoot FD 0B
setMeleeKill skeleton
setLoot D9 2C
setMeleeKill minotaur
setMeleeKill minotaur guard
setMeleeKill minotaur archer
setMeleeKill minotaur mage
setMeleeKill General Murius
setLoot D0 2C
setLoot F6 16
setLoot BB 2C
setLoot DB 2C
setLoot DA 2C
setLoot 0A 01
setLoot E9 1C
setLoot D1 2C
setLoot 01 0C
setLoot 44 0D
setPriority General Murius:+4
setPriority minotaur mage:+3
setPriority minotaur guard:+1
:start
setChaoticMovesON
setBot PKwarnings=0
setBot AutoEatFood=1
fastExiva _leave = 0
fastExiva _leavecap = 50
fastExiva _oldexp = $myexp$
fastExiva _moneyid = D7 0B
fastExiva _healthpotions = 30
fastExiva _healthidcost = 100
fastExiva _healthpotionid = EC 00
fastExiva _manapotions = 80
fastExiva _manaidcost = 50
fastExiva _manapotionid = 0C 01
#OnStart
move 32341,32222,8
move 32346,32231,8
move 32347,32230,7
move 32344,32230,7
move 32344,32229,7
#Check supplies
IfTrue ($countitems:{$_healthpotionid$}$#number<#30) Goto $nlineoflabel:refill$
IfTrue ($countitems:{$_manapotionid$}$#number<#80) Goto $nlineoflabel:refill$
gotoScriptLine $nlineoflabel:onEnter$
:refill
fastExiva _health = $numericalexp:{$_healthpotions$}-{$countitems:{$_healthpotionid$}$}$
fastExiva _healthcost = $numericalexp:{$_health$}*{$_healthidcost$}$
fastExiva _mana = $numericalexp:{$_manapotions$}-{$countitems:{$_manapotionid$}$}$
fastExiva _manacost = $numericalexp:{$_mana$}*{$_manaidcost$}$
waitX $randomnumber:1>2$
saymessage hi
waitX $randomnumber:1>2$
sayInTrade withdraw $_healthcost$
waitX $randomnumber:1>2$
sayInTrade yes
waitX $randomnumber:1>2$
sayInTrade withdraw $_manacost$
waitX $randomnumber:1>2$
sayInTrade yes
move 32349,32215,7
move 32400,32216,7
move 32400,32220,7
sayMessage exiva > 05 00 A2 67 00 00 40
waitX 5
sayInTrade hi
waitX $randomnumber:1>2$
sayInTrade flask
waitX $randomnumber:1>2$
sayInTrade yes
waitX $randomnumber:1>2$
sayInTrade trade
waitX $randomnumber:1>2$
fastExiva buy:EC 00:{$_health$}
waitX $randomnumber:1>2$
fastExiva buy:0C 01:{$_mana$}
waitX $randomnumber:1>2$
:onEnter
move 32369,32215,7
move 32362,32172,7
move 32357,32170,7
move 32356,32171,8
move 32356,32172,8
move 32356,32174,9
move 32363,32160,9
move 32355,32143,9
move 32354,32139,9
move 32354,32138,10
move 32355,32138,11
move 32379,32153,11
move 32391,32168,11
move 32389,32184,11
move 32392,32202,11
move 32401,32214,11
move 32434,32215,11
move 32464,32215,11
move 32496,32214,11
move 32527,32199,11
move 32535,32215,11
move 32534,32216,12
move 32521,32211,12
move 32520,32211,13
move 32514,32210,13
move 32549,32199,13
move 32572,32179,13
move 32577,32178,13
move 32577,32179,14
move 32576,32158,14
move 32556,32075,14
move 32562,32109,14
move 32552,32154,14
move 32552,32155,13
move 32553,32154,13
move 32553,32155,12
move 32550,32185,12
move 32550,32186,13
move 32551,32186,13
move 32551,32185,14
move 32536,32205,14
move 32504,32160,14
move 32496,32118,14
move 32484,32096,14
move 32485,32101,14
move 32484,32101,15
move 32460,32101,15
move 32431,32100,15
move 32440,32104,15
move 32451,32100,15
fastExiva _starttime = $mystamina$
:onHunt
move 32431,32100,15
move 32389,32101,15
move 32404,32105,15
move 32404,32123,15
move 32405,32136,15
move 32418,32179,15
move 32427,32131,15
move 32418,32142,15
move 32418,32142,15
move 32425,32136,15
move 32425,32134,14
move 32422,32147,14
move 32425,32136,14
move 32425,32136,15
move 32421,32102,15
move 32440,32101,15
move 32440,32104,15
move 32439,32105,14
move 32440,32104,15
IfTrue ($mycap$#number<#$numericalexp:{$_leavecap$}*100$) Goto $nlineoflabel:onLeave$
IfTrue ($countitems:{$_healthpotionid$}$#number<#20) Goto $nlineoflabel:onLeave$
IfTrue ($countitems:{$_manapotionid$}$#number<#40) Goto $nlineoflabel:onLeave$
IfTrue ($_leave$#number=#1) Goto $nlineoflabel:onLeave$
fastExiva _mystaminatime = $mystamina$
IfTrue ($_mystaminatime$#number<=#900) Goto $nlineoflabel:onLeave$
fastExiva _randomroute = $randomnumber:1>2$
IfTrue ($_randomroute$#number=#2) Goto $nlineoflabel:random$
gotoScriptLine $nlineoflabel:onHunt$
:random
move 32462,32088,15
gotoScriptLine $nlineoflabel:onHunt$
:onLeave
fastExiva _endtime = $mystamina$
fastExiva _totaltime = $numericalexp:{$_starttime$}-{$_endtime$}$
fastExiva _totaltimeh = $numericalexp:{$_totaltime$}/60}$
fastExiva _starttime = 0
fastExiva _endtime = 0
move 32460,32101,15
move 32484,32101,15
move 32484,32102,14
move 32494,32111,14
move 32497,32153,14
move 32516,32184,14
move 32550,32200,14
move 32551,32185,14
move 32551,32186,13
move 32550,32186,13
move 32550,32187,12
move 32554,32154,12
move 32553,32154,13
move 32552,32154,14
move 32558,32088,14
move 32570,32105,14
move 32580,32141,14
move 32580,32177,14
move 32577,32179,14
move 32577,32180,13
move 32565,32183,13
move 32542,32199,13
move 32506,32210,13
move 32518,32217,13
move 32520,32211,13
move 32520,32212,12
move 32533,32215,12
move 32534,32214,11
move 32524,32198,11
move 32488,32213,11
move 32439,32215,11
move 32399,32214,11
move 32391,32179,11
move 32389,32163,11
move 32359,32153,11
move 32355,32138,11
move 32355,32139,10
move 32354,32138,10
move 32354,32139,9
move 32355,32141,9
move 32355,32163,9
move 32355,32173,9
move 32356,32172,8
move 32356,32171,8
move 32356,32169,7
move 32357,32169,7
move 32369,32176,7
move 32363,32214,7
#-- Calculation
fastExiva _cash = $countitems:D7 0B$
fastExiva _health = $numericalexp:{$_healthpotions$}-{$countitems:{$_healthpotionid$}$}$
fastExiva _healthcost = $numericalexp:{$_health$}*{$_healthidcost$}$
fastExiva _mana = $numericalexp:{$_manapotions$}-{$countitems:{$_manapotionid$}$}$
fastExiva _manacost = $numericalexp:{$_mana$}*{$_manaidcost$}$
fastExiva _totalcost = $numericalexp:{$_healthcost$}+{$_manacost$}$
fastExiva _profit = $numericalexp:{$_cash$}-{$_totalcost$}$
fastExiva < B4 11 $hex-tibiastr:{$_profit$} gp profit during this round.$
#-------------------------------
#--Logging Information
#--------------------------------
fastExiva _newexp = $myexp$
fastExiva _roundexp = $numericalexp:{$_newexp$}-{$_oldexp$}$
fastExiva < B4 11 $hex-tibiastr:{$_roundexp$} exp this round.$
fastExiva _oldexp = 0
fastExiva _newexp = 0
fastExiva _mydate = $date$
fastExiva _mytime = $time$
fastExiva _mychar = $charactername$
fastExiva _mylevel = $mylevel$
saymessage exiva log On $_mydate$ at $_mytime$, $_mychar$ (level $_mylevel$) got $_profit$gp profit and $_roundexp$ exp from a hunt at Mintwallin. the hunt was $_totaltime$ minutes long.
#---
move 32344,32229,7
#-- Deposit cash
waitX $randomnumber:1>2$
saymessage hi
waitX $randomnumber:1>2$
sayInTrade deposit all
waitX $randomnumber:1>2$
sayInTrade yes
#-- Deposit loot
move 32346,32230,7
move 32347,32232,8
move 32345,32226,8
move 32341,32222,8
putLootOnDepot
resetLoot
fastExiva _mystaminatime = $mystamina$
IfTrue ($_leave$#number=#1) Goto $nlineoflabel:end$
IfTrue ($_mystaminatime$#number>=#900) gotoScriptLine 0
closeConnection
:end

Mackiiboy
04-24-2013, 12:39
Thanks for your improvements!

I have never had any issues with attacking monster nor looting, so I do not see where the problem is. Dragon Hatchlings were added to the Ancient Temple after I created uploaded the script, so it was nothing I could do anything about. Guardian Shield is something I totally missed, thanks for pointing out that.

The priority system is always something that can be discussed. I have not done any deep research or experiments, so you are probably totally right on that point. The optimal thing would be changing the priority settings several times and analyze which one that gives the best output.

Good work!