init start
local lastStand = $standtime
local randTime = math.random(300000, 600000)
init end
auto(100)
if $standtime < lastStand then
lastStand = $standtime
end
if $standtime - lastStand > randTime then
local dirs = {'n', 'e', 's', 'w'}
-- Makes sure it's random and not the same we're facing right now
table.remove(dirs, table.find(dirs, $self.dir))
turn(dirs[math.random(1, 3)])
waitping()
lastStand = $standtime
randTime = math.random(300000, 600000)
end
Reconnect:
auto(2500)
if not $connected then
reconnect(true)
end
Mad Sheep Trainer:
auto(100)
local m = getcreature('Mad Sheep')
local waitshield = false -- wait shield? will be like: 50/50, 60/60 etc... and not 50/48, 60/57 etc...
if waitshield and (($shielding < $sword) or ($shielding < $club) or ($shielding < $axe)) then
if m.dist == 1 then
attack(m.name)
wait(500,1000)
stopattack()
wait(1000*30)
end
else
if m.dist == 1 then
attack(m.name)
end
end
if maround(7,m.name) == 0 then
if paround() >= 1 and $connected then
smartscreenshot()
wait(234,456)
closeclient()
wait(234,456)
else
useoncreature(651,$self)
wait(200,500)
end
end
i'll follow it for sure, really like this trainers buuuuuuuut you shouldnt go for a safiest place? i mean idk if its optional pvp but they can kill your monsters so its a problem (i tried it once got only skills 90 ppl started exiving me everyday and i got killed some times, but i was hidden in desert dungeon and you are very exposed)
06-15-2015, 12:39 PM
Mirrore
nice ! make good skills then get lvl ! I really like the way you train with the mad sheep!
06-15-2015, 01:54 PM
Borges
Quote:
Originally Posted by lipexh
i'll follow it for sure, really like this trainers buuuuuuuut you shouldnt go for a safiest place? i mean idk if its optional pvp but they can kill your monsters so its a problem (i tried it once got only skills 90 ppl started exiving me everyday and i got killed some times, but i was hidden in desert dungeon and you are very exposed)
I have one character 100/100 in this place, exposed but I've never seen anyone
Quote:
Originally Posted by Mirrore
nice ! make good skills then get lvl ! I really like the way you train with the mad sheep!
With offline trainer is 8 mounths just weapom, shield ofc will take more time.
06-15-2015, 03:53 PM
kbzin
How long do you train per day?
06-15-2015, 04:34 PM
Jesus Christ
Hello there my child,
I am currently in the process of training a Knight also, I am currently at 86/86 and I will stop at 90/90 as the different between 90 > 100 is not that great in comparison to 70/70 > 90/90.
I have also been using mushrooms and Life Rings to boost the Magic Level of my Knight of which I am currently at ML 6 and a half. - One question though young one, I am very new to WindBot as you can tell by my post count, I would like to know how you got the HUD to tell you the specific %'s to your advances? I have nothing on my screen and I really do not know how to get it like yours. Also, if you wouldn't mind PM'ing me your training spot? I am assuming Folda?
One is not advanced with such things like Technology, even I, The Lord need to learn some new things. Ask and you shall receive my child.
06-15-2015, 05:23 PM
Borges
Quote:
Originally Posted by kbzin
How long do you train per day?
24/7
Quote:
Originally Posted by Jesus Christ
Hello there my child,
I am currently in the process of training a Knight also, I am currently at 86/86 and I will stop at 90/90 as the different between 90 > 100 is not that great in comparison to 70/70 > 90/90.
I have also been using mushrooms and Life Rings to boost the Magic Level of my Knight of which I am currently at ML 6 and a half. - One question though young one, I am very new to WindBot as you can tell by my post count, I would like to know how you got the HUD to tell you the specific %'s to your advances? I have nothing on my screen and I really do not know how to get it like yours. Also, if you wouldn't mind PM'ing me your training spot? I am assuming Folda?
Have faith, with love
The Lord.
1º After some tests the best food is fishing, 1bp of worms I train like 4~~5 days with only 2k, I don't care with magic level right now because will up with level advances.
2º To apper HUD you need the persistent to take screenshot and enable your HUD named "SSTaker" I think is default.
local screenShotFunc = function(a)
if UseSmartScreenshot and smartscreenshot ~= nil then
return smartscreenshot(a)
end
return screenshot(a)
end
init end
auto(400, 800)
foreach newmessage m do
if m.type == MSG_STATUS or m.type == MSG_ADVANCE then
local Skill = m.content:match('You advanced .- (.-)[%s%.].-')
if Skill and Skills[Skill:capitalize()] then
screenShotFunc(string.format('Advance_%s_%s', $name, os.date('%Y-%m-%d %H-%M-%S')))
end
end
end
if Skills.Death and $dead then
screenShotFunc(string.format('Death_%s_%s', $name, os.date('%Y-%m-%d %H-%M-%S')))
repeat
wait(1000)
until not $dead
end
HUD:
init start
-- local SCRIPT_VERSION = '1.0.1'
-- screenshot options
local saveOriginal = false -- save full original, unaltered screenshot
local createWorldVersion = true -- create a version of the screenshot that only shows the world area
local createFullVersion = false -- create a version of the screenshot that shows the whole client
local focusClient = true -- focus client before taking the screenshot
local drawHuds = true -- if desktop composition is enabled (Windows Vista, 7 or 8), draw HUDs on SS
local relocateHuds = true -- draws the huds at a custom location on the screenshot (need desktop composition enabled)
local compressionQuality = 100 -- file compression rate, values ranging from 1 to 100
-- hud locations, relative to world window. negative coordinates will be right / bottom aligned
local relocateLocations = {
{ name = "GeneralInfo", x = 4, y = -20 },
{ name = "MonitorMyStats", x = 0, y = 0 },
{ name = "MonitorMyHunting", x = - 242, y = 0 },
}
-- alteration options
local showEquipment = true -- show your character equipment on world screenshot
local hidePersonalInfo = true -- hide personal info on screenshot (character name)
local hideHudInfo = true -- hide personal info on HUD (must be supported by HUD)
-- technical settings
local hideMethod = "both" -- "shuffle" = shuffle pixels, "blur" = blur region, "both" = both (strongest)
local textSearchTolerance = 30 -- how many % of the text for hiding we want to can be obstructed (by other text on top)
-- internal setup (don't change below)
-- note: textures/child_huds get rendered in the order
-- they were created and not selected, needs fixing
local glowTexture = createtexture()
local clientTexture = createtexture()
local shotTexture = createtexture()
local glowRendered = false
local takeScreenshot = false
local fileName = 'smartss'
local function renderglow()
local rectSize = 34
local glowSize = 4
local fullSize = glowSize + rectSize + glowSize
-- leave space for glow on edges
selecthud(glowTexture)
setfixedsize(fullSize, fullSize)
-- fill with transparent color
setbordercolor(-1)
setfillstyle("color", -1)
drawrect(0, 0, fullSize, fullSize)
-- black rect in center
setfillstyle("color", 0x80000000)
drawrect(glowSize, glowSize, rectSize-1, rectSize-1)
-- apply glow around rect
drawgloweffect(0x000000, glowSize)
--hudsnapshot("glow", 100)
end
local function copyequip()
local slotLocations = {37, 2, 0, 16, 74, 16, 37, 39, 74, 53, 0, 53, 37, 76, 37, 113, 0, 90, 74, 90}
local equipx, equipy = getwindowpos("equip")
if equipx ~= nil then
local destx = $worldwin.width - 123 - 16
local desty = $worldwin.height - 155 - 16
for i=1,10 do
local slotx = 10 + slotLocations[i*2-1]
local sloty = 4 + slotLocations[i*2]
-- copy equip slot
setcompositionmode(CompositionMode_Automatic)
drawtexture(clientTexture, destx+slotx, desty+sloty, 100, equipx - $clientwin.x + slotx, equipy - $clientwin.y + sloty, 34, 34)
end
end
end
local function hideregion(r)
if hideMethod == "shuffle" or hideMethod == "both" then
drawshufflepixelseffect(r.left, r.top, r.width, r.height)
end
if hideMethod == "blur" or hideMethod == "both" then
drawblureffect(r.left, r.top, r.width, r.height, 8, 2)
end
end
local function takeshot()
if hudready(clientTexture) and hudready(shotTexture) and hudready(glowTexture) then
local worldx = $worldwin.x - $clientwin.x
local worldy = $worldwin.y - $clientwin.y
local worldw = $worldwin.width
local worldh = $worldwin.height
if saveOriginal then
hudsnapshot(fileName .. ".original", compressionQuality)
end
-- hide information
if hidePersonalInfo then
-- hide name in chat text in world window ($name says:)
hideclienttext($name, worldx, worldy, worldw, worldh, true, hideMethod, 8, 2, textSearchTolerance)
if createFullVersion then
-- hide name in chat window
hideclienttext($name, 0, worldy + worldh + 62, -194, -22, false, hideMethod, 8, 2)
-- hide private channel names
foreach channel c do
if c.outid > 6 then
hideclienttext(c.name, 0, worldy + worldh + 44, -194, 16, true, hideMethod, 8, 2)
end
end
end
-- hide name above char, in case the other way failed (text/other names on top?)
local r = getnamearea($self, worldw, worldh)
if r then
-- map to client coordinates, and expand
r.left = r.left + worldx
r.top = r.top + worldy + 1
r.width = r.width + 1
r.height = r.height + 2
-- hide the region
hideregion(r)
end
end
if drawHuds and not $windowsxp then
-- draw huds transparently
setcompositionmode(CompositionMode_SourceOver)
local i = 0
while isscript("display", i) do
local listname = scriptlistname("display", i)
local x = nil
local y = nil
if relocateHuds then
for _, h in ipairs(relocateLocations) do
if h.name == listname then
if h.x < 0 then x = worldx + worldw + h.x else x = worldx + h.x end
if h.y < 0 then y = worldy + worldh + h.y else y = worldy + h.y end
end
end
end
grabhud(listname, x, y)
i = i + 1
end
-- restore changed defaults
setcompositionmode(CompositionMode_Automatic)
end
-- draw windbot logo
setcompositionmode(CompositionMode_SourceOver)
1º After some tests the best food is fishing, 1bp of worms I train like 4~~5 days with only 2k, I don't care with magic level right now because will up with level advances.
2º To apper HUD you need the persistent to take screenshot and enable your HUD named "SSTaker" I think is default.
local screenShotFunc = function(a)
if UseSmartScreenshot and smartscreenshot ~= nil then
return smartscreenshot(a)
end
return screenshot(a)
end
init end
auto(400, 800)
foreach newmessage m do
if m.type == MSG_STATUS or m.type == MSG_ADVANCE then
local Skill = m.content:match('You advanced .- (.-)[%s%.].-')
if Skill and Skills[Skill:capitalize()] then
screenShotFunc(string.format('Advance_%s_%s', $name, os.date('%Y-%m-%d %H-%M-%S')))
end
end
end
if Skills.Death and $dead then
screenShotFunc(string.format('Death_%s_%s', $name, os.date('%Y-%m-%d %H-%M-%S')))
repeat
wait(1000)
until not $dead
end
HUD:
init start
-- local SCRIPT_VERSION = '1.0.1'
-- screenshot options
local saveOriginal = false -- save full original, unaltered screenshot
local createWorldVersion = true -- create a version of the screenshot that only shows the world area
local createFullVersion = false -- create a version of the screenshot that shows the whole client
local focusClient = true -- focus client before taking the screenshot
local drawHuds = true -- if desktop composition is enabled (Windows Vista, 7 or 8), draw HUDs on SS
local relocateHuds = true -- draws the huds at a custom location on the screenshot (need desktop composition enabled)
local compressionQuality = 100 -- file compression rate, values ranging from 1 to 100
-- hud locations, relative to world window. negative coordinates will be right / bottom aligned
local relocateLocations = {
{ name = "GeneralInfo", x = 4, y = -20 },
{ name = "MonitorMyStats", x = 0, y = 0 },
{ name = "MonitorMyHunting", x = - 242, y = 0 },
}
-- alteration options
local showEquipment = true -- show your character equipment on world screenshot
local hidePersonalInfo = true -- hide personal info on screenshot (character name)
local hideHudInfo = true -- hide personal info on HUD (must be supported by HUD)
-- technical settings
local hideMethod = "both" -- "shuffle" = shuffle pixels, "blur" = blur region, "both" = both (strongest)
local textSearchTolerance = 30 -- how many % of the text for hiding we want to can be obstructed (by other text on top)
-- internal setup (don't change below)
-- note: textures/child_huds get rendered in the order
-- they were created and not selected, needs fixing
local glowTexture = createtexture()
local clientTexture = createtexture()
local shotTexture = createtexture()
local glowRendered = false
local takeScreenshot = false
local fileName = 'smartss'
local function renderglow()
local rectSize = 34
local glowSize = 4
local fullSize = glowSize + rectSize + glowSize
-- leave space for glow on edges
selecthud(glowTexture)
setfixedsize(fullSize, fullSize)
-- fill with transparent color
setbordercolor(-1)
setfillstyle("color", -1)
drawrect(0, 0, fullSize, fullSize)
-- black rect in center
setfillstyle("color", 0x80000000)
drawrect(glowSize, glowSize, rectSize-1, rectSize-1)
-- apply glow around rect
drawgloweffect(0x000000, glowSize)
--hudsnapshot("glow", 100)
end
local function copyequip()
local slotLocations = {37, 2, 0, 16, 74, 16, 37, 39, 74, 53, 0, 53, 37, 76, 37, 113, 0, 90, 74, 90}
local equipx, equipy = getwindowpos("equip")
if equipx ~= nil then
local destx = $worldwin.width - 123 - 16
local desty = $worldwin.height - 155 - 16
for i=1,10 do
local slotx = 10 + slotLocations[i*2-1]
local sloty = 4 + slotLocations[i*2]
-- copy equip slot
setcompositionmode(CompositionMode_Automatic)
drawtexture(clientTexture, destx+slotx, desty+sloty, 100, equipx - $clientwin.x + slotx, equipy - $clientwin.y + sloty, 34, 34)
end
end
end
local function hideregion(r)
if hideMethod == "shuffle" or hideMethod == "both" then
drawshufflepixelseffect(r.left, r.top, r.width, r.height)
end
if hideMethod == "blur" or hideMethod == "both" then
drawblureffect(r.left, r.top, r.width, r.height, 8, 2)
end
end
local function takeshot()
if hudready(clientTexture) and hudready(shotTexture) and hudready(glowTexture) then
local worldx = $worldwin.x - $clientwin.x
local worldy = $worldwin.y - $clientwin.y
local worldw = $worldwin.width
local worldh = $worldwin.height
if saveOriginal then
hudsnapshot(fileName .. ".original", compressionQuality)
end
-- hide information
if hidePersonalInfo then
-- hide name in chat text in world window ($name says:)
hideclienttext($name, worldx, worldy, worldw, worldh, true, hideMethod, 8, 2, textSearchTolerance)
if createFullVersion then
-- hide name in chat window
hideclienttext($name, 0, worldy + worldh + 62, -194, -22, false, hideMethod, 8, 2)
-- hide private channel names
foreach channel c do
if c.outid > 6 then
hideclienttext(c.name, 0, worldy + worldh + 44, -194, 16, true, hideMethod, 8, 2)
end
end
end
-- hide name above char, in case the other way failed (text/other names on top?)
local r = getnamearea($self, worldw, worldh)
if r then
-- map to client coordinates, and expand
r.left = r.left + worldx
r.top = r.top + worldy + 1
r.width = r.width + 1
r.height = r.height + 2
-- hide the region
hideregion(r)
end
end
if drawHuds and not $windowsxp then
-- draw huds transparently
setcompositionmode(CompositionMode_SourceOver)
local i = 0
while isscript("display", i) do
local listname = scriptlistname("display", i)
local x = nil
local y = nil
if relocateHuds then
for _, h in ipairs(relocateLocations) do
if h.name == listname then
if h.x < 0 then x = worldx + worldw + h.x else x = worldx + h.x end
if h.y < 0 then y = worldy + worldh + h.y else y = worldy + h.y end
end
end
end
grabhud(listname, x, y)
i = i + 1
end
-- restore changed defaults
setcompositionmode(CompositionMode_Automatic)
end
-- draw windbot logo
setcompositionmode(CompositionMode_SourceOver)
if createFullVersion then
hudsnapshot(fileName .. ".full", compressionQuality)
end
if createWorldVersion then
-- render a glow effect to place under equip
if not glowRendered then
renderglow()
glowRendered = true
end
-- switch to screenshot texture
selecthud(shotTexture)
setfixedsize(worldw, worldh)
-- copy world area of client
drawtexture(clientTexture, 0, 0, 100, worldx, worldy, worldw, worldh)
-- copy equipment
if showEquipment then
copyequip()
end
-- save texture to file
hudsnapshot(fileName .. ".world", compressionQuality)
-- free texture
freetexture(shotTexture)
end
-- release texture contents to free memory (without deleting it)
-- we won't be using it until next screenshot
freetexture(clientTexture)
end
end
function smartscreenshot(name)
takeScreenshot = true
fileName = name or 'smartss'
end
auto(50)
init end
-- runtime part
if takeScreenshot then
if not TakingScreenshot then
-- huds can check for TakingScreenshot type
-- to avoid drawing identifiable information
TakingScreenshot = hideHudInfo and ("hide_personal_info method:" .. hideMethod) or "normal"
debugscript("Taking screenshot")
-- huds can be hidden and outdated if client not focused
-- and give chance for hud to hide personal info
forcerefreshhuds()
debugscript("Huds refreshed")
-- take the screenshot
takeshot()
debugscript("Done")
TakingScreenshot = nil
end
takeScreenshot = false
end
I'll PM you spot
ps: nice name
Thank you Child.
I wasn't sure how to copy/paste that HUD script? I am using it as persistent in the right section but it doesn't seem to work, so maybe I am doing something wrong?
I await your PM.
06-15-2015, 06:10 PM
Borges
Quote:
Originally Posted by Jesus Christ
Thank you Child.
I wasn't sure how to copy/paste that HUD script? I am using it as persistent in the right section but it doesn't seem to work, so maybe I am doing something wrong?
I await your PM.
check if your HuD is named like SSTaker.
local relocateLocations = {
{ name = "GeneralInfo", x = 4, y = -20 },
{ name = "MonitorMyStats", x = 0, y = 0 },
{ name = "MonitorMyHunting", x = - 242, y = 0 },
}
06-15-2015, 06:14 PM
Jesus Christ
Quote:
Originally Posted by borges
check if your HuD is named like SSTaker.
local relocateLocations = {
{ name = "GeneralInfo", x = 4, y = -20 },
{ name = "MonitorMyStats", x = 0, y = 0 },
{ name = "MonitorMyHunting", x = - 242, y = 0 },
}
That is correct, I have that there. So do I overwrite what is in there with the above?
06-15-2015, 06:21 PM
Borges
Quote:
Originally Posted by Jesus Christ
That is correct, I have that there. So do I overwrite what is in there with the above?
yup..
06-15-2015, 06:35 PM
Jesus Christ
Quote:
Originally Posted by borges
yup..
Still confused.. Haven't got it working! :confused: - I am definitely doing something wrong and one cannot quite figure it out yes as I am a novice at WindBot.
06-15-2015, 06:48 PM
Borges
Quote:
Originally Posted by Jesus Christ
Still confused.. Haven't got it working! :confused: - I am definitely doing something wrong and one cannot quite figure it out yes as I am a novice at WindBot.
Just use the actions that I sent before and don't rename the HUD's: MonitorMyStats and MonitorMyHunting.
if you rename the HuD's you need rename in SSTaker too.
like I said before, here:
local relocateLocations = {
{ name = "GeneralInfo", x = 4, y = -20 },
{ name = "MonitorMyStats", x = 0, y = 0 },
{ name = "MonitorMyHunting", x = - 242, y = 0 },
}
It's so simple, what you doing wrong?
tip: enable your MonitorMyStats, MonitorMyHunting and SSTaker and use this hotkey:
smartscreenshot()
Check your Screenshot folder at "Windbot" and look if worked.
06-15-2015, 07:04 PM
kbzin
Quote:
Originally Posted by borges
24/7
Wow... i got deleted on a EK level 10 94/94 training 10-15 hours per day :<. I got unbanned once after complaining but 7 days later i got banned again and no unban after complain. I don't know what got me since i'm pretty sure i had'nt been reported because i was on computer like 90% of the time and no one came to my screen or killed the sheeps. I was eating and spending mana all the time so maybe cip decided to ban me because i did'nt lose any turn to waste mana or eat food idk :p
Thanks!
06-18-2015, 01:56 AM
mgula
;/ not good
I have little question.
I need to skill my kina too. I have mad sheep and when i attack mad shep , daying 1 hit
I use eppe and machete ... What's wrong??
06-18-2015, 02:43 AM
lipexh
Quote:
Originally Posted by mgula
;/ not good
I have little question.
I need to skill my kina too. I have mad sheep and when i attack mad shep , daying 1 hit
I use eppe and machete ... What's wrong??
you should use a weappon with 50 levels more then your level (idk about this number you should check) but if you're lvl 6 you should use mystic blade, if you are 20 you should use sov etc (i guess this number is a little lower but for the safity just do it)
06-18-2015, 01:59 PM
Borges
Quote:
Originally Posted by mgula
;/ not good
I have little question.
I need to skill my kina too. I have mad sheep and when i attack mad shep , daying 1 hit
I use eppe and machete ... What's wrong??
you need LEVEL 10 and weapom lvl 50+
Quote:
Originally Posted by lipexh
you should use a weappon with 50 levels more then your level (idk about this number you should check) but if you're lvl 6 you should use mystic blade, if you are 20 you should use sov etc (i guess this number is a little lower but for the safity just do it)
the best level is 10, you can use level 11 but you will hit 2+ so you can kill mad sheep
lvl 20+ like you said isn't possible.
@borges
how many hours per day u train?
i mean i did some training chars but went to deletera after reaching 70s skills and my hours to train was the next: like 6h after ss until ss (18h bot train)
06-18-2015, 05:45 PM
Borges
Quote:
Originally Posted by Renatoespinoza
@borges
how many hours per day u train?
i mean i did some training chars but went to deletera after reaching 70s skills and my hours to train was the next: like 6h after ss until ss (18h bot train)
ss to ss with reconnect :p
24/7
06-18-2015, 06:07 PM
Kostek
@borges does the script summon the sheep after ss itself? could you share the action if it does please? :)
06-18-2015, 06:31 PM
Mirrore
It took me so long to train my knight to 80, you done 68 so quick ! nice theard !
06-18-2015, 08:14 PM
Borges
Quote:
Originally Posted by Kostek
@borges does the script summon the sheep after ss itself? could you share the action if it does please? :)
so simple.
auto(1000)
if maround(7,"Mad Sheep") == 0 then
useoncreature(651,$self)
wait(800,1200)
end
Quote:
Originally Posted by Mirrore
It took me so long to train my knight to 80, you done 68 so quick ! nice theard !
yes, 3 days training...
2h to skill 70/70
I'll post screens tonight
06-18-2015, 09:37 PM
thetjer
cool showcase bro. Though its a simple setup, are you planning on sharing the script setup on the forums or are you keeping it private, would be nice to have one with mad sheep xd