Page 3 of 4
Re: Honor point's farm in dril ground
Posted: Sat Nov 17, 2012 11:26 pm
by kuripot
there is a sequence of sigil appear??
either Divine Protection Reward 1st then follow by Healing Reward then get Drill Reward??
Re: Honor point's farm in dril ground
Posted: Sat Nov 17, 2012 11:32 pm
by lisa
kuripot wrote:there is a sequence of sigil appear??
either Divine Protection Reward 1st then follow by Healing Reward then get Drill Reward??
pretty sure it's random, the Drill Reward adds 5 honor.
Re: Honor point's farm in dril ground
Posted: Sun Nov 18, 2012 5:15 am
by MinMax
Yesterday i played a littlebit.
Play without a equipment. ( damage is percental) For 99% i reached the lvl 10 without to die.
Dont look at the script. It´s bad. Was only for testing but it works perfectly and endless. Always 235-245 Points
MinMax ( Minimaler Erfolg maximaler Aufwand oder umgekehrt)
Re: Honor point's farm in dril ground
Posted: Sat Aug 17, 2013 4:01 pm
by AngelDrago
lisa wrote:I had a play in there today, ended up using this.
Code: Select all
local objectList = CObjectList();
objectList:update();
for i = 0,objectList:size() do
local obj = objectList:getObject(i);
if( obj ~= nil ) and ( obj.Type == PT_SIGIL ) then
if obj.Id == 205026 or obj.Id == 205028 or obj.Id == 205027 then
teleport(obj.X,obj.Z,obj.Y)
yrest(100)
keyboardPress(settings.hotkeys.MOVE_FORWARD.key);
teleport(2047,2461,70)
return
end
end
end
the spikes do hurt a bit to much though, maybe do the sigil to get immune buff and then while having buff try to get the other sigils?
205026 is Drill Reward
205027 is Divine Protection Reward
205028 is Healing Reward
Hello Lisa how did you end up using this script i tried but was getting error messages like this...
10:59pm - C:/micromacro/scripts/rom/classes/waypointlist.lua:83: Failed to compi
le and run Lua code for waypointlist onLoad event.
thx for the help
Re: Honor point's farm in dril ground
Posted: Sat Aug 17, 2013 10:05 pm
by Vengefulmilk
Hey guys not sure because I dont have a drill ground myself at the moment, but some players in world were talking and said that one of the minigames has you survive or kite mobs. They said that if you kite the mobs for 2 and a half minutes straight you earn something like 15k honor points. I'm not sure what game it is, or if its acutally true but its just an idea if anyone wants to try it out and verify it if they know which game. Best of luck.
Re: Honor point's farm in dril ground
Posted: Sun Sep 01, 2013 9:57 am
by vernberg
thats correct
there is a minigame in drill ground names survival wich spawns mobs every 10 second that you can kite or Fly to avoid just follow the wall edges and dont die
Re: Honor point's farm in dril ground
Posted: Sun Oct 13, 2013 8:15 am
by Bot_romka
My version of WP
Re: Honor point's farm in dril ground
Posted: Fri Jun 13, 2014 4:50 am
by ZZZZZ
Ok, I have been trying to do the Sharp Sight, Quick Hands game in the drill ground, at first I thought hey, lets use event monitoring to hit them, works fine in stages 1-3, but stage 4 they pop up random spots and say a random number. The other issue with this is that they also added in 'friendly' targets, and if you hit 1 you lose 10 points, basically making the event monitoring useless.
So I thought maybe I can use their ID's and their positions to determine what to hit, and this is pretty much where I have been stuck since.
The ID range 102176-102184 seems to be most of the targets that you want to hit, and as for the position, the X and Z values are always the same, so I made 2 tables of those values and made it check the objXZ against the X and Z of each table, but for some reason it would only cast on select targets or not at all.
For now I just want it to hit everything....at least if I can get that to work then I can go from there.
This is what I was using so far... Also need to figure out a way to determine if the target has already been hit or not as you lose 5 points for a miss.
Code: Select all
function Wack_it()
local XMoleCoord = {3055.7749023438, 3099.330078125, 3143.4460449219, 3054.9389648438, 3099.8291015625,
3146.8620605469, 3055.0129394531, 3099.3659667969, 3147.04296875}
local ZMoleCoord = {4680.6630859375,4680.3110351563,4679.041015625,4722.5961914063,4724.6572265625,
4719.6767578125,4769.3061523438,4770.5322265625,4767.8090820313}
-- local XMoleCoord = {3055, 3099, 3143, 3054, 3099, 3146, 3055, 3099, 3147}
-- local ZMoleCoord = {4680,4680,4679,4722,4724,4719,4769,4770,4767}
local ignoreMoleTable = {}
local platypusIDs = {}
local ignoreHole = 0
while RoMScript("TimeKeeperFrame:IsVisible()") do
player:update()
yrest(1);
local objectList = CObjectList()
objectList:update()
local objSize = objectList:size()
for i = 0,objSize do
local obj = objectList:getObject(i)
obj:update()
if obj.Name == "Platypus" then --(obj.Id >= 102176 and 102184 >= obj.Id)
for i=1,9,1 do
if (obj.X == XMoleCoord[i] and obj.Z == ZMoleCoord[i]) then
RoMCode('UseExtraAction('..i..')');
break
end
end
end
end
end
end
Re: Honor point's farm in dril ground
Posted: Fri Jun 13, 2014 5:10 am
by rock5
It's probably impossible to match high decimal place floats. You should probably check the distance between points instead. eg.
Code: Select all
if 1 > distance(obj.X, obj.Y, XMoleCoord[i], ZMoleCoord[i]) then
That will match 2 points if they are less than 1 away from each other. You can adjust the accuracy as needed.
Re: Honor point's farm in dril ground
Posted: Fri Jun 13, 2014 6:12 am
by ZZZZZ
I have run an object position check a few times to see, and using a table and table.contains, every value is returned exactly the same, no matter what. The commented out tables -
Code: Select all
-- local XMoleCoord = {3055, 3099, 3143, 3054, 3099, 3146, 3055, 3099, 3147}
-- local ZMoleCoord = {4680,4680,4679,4722,4724,4719,4769,4770,4767}
are my other attempt at just trying without the decimals, and that had no effect :/
I'll try the distance check when I get a chance and see if that makes any difference though.
~~ edit, didn't make any difference. I have no idea what to do about this now >.<
Re: Honor point's farm in dril ground
Posted: Sun Jun 15, 2014 11:31 pm
by lisa
This is the one where you have 9 spots and things pop up and u hit numberpad numbers to hit the objects you want yeah?
I think this is with lvl 1 drill ground, I may be able to have a look for you, no idea what I have in my castles anymore lol
Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 1:21 am
by lisa
well I can tell you the firswt thing I did was this add in prints.
Code: Select all
if obj.Name == "Platypus" then --(obj.Id >= 102176 and 102184 >= obj.Id)
for i=1,9,1 do
local disst = distance(obj.X, obj.Y, XMoleCoord[i], ZMoleCoord[i])
print(disst)
if 4753 > disst then
--if (obj.X == XMoleCoord[i] and obj.Z == ZMoleCoord[i]) then
print("hitting mole at position "..i)
RoMCode('UseExtraAction('..i..')');
break
end
end
end
which gave some very interesting results.
Code: Select all
4666.4548862305
hitting mole at position 1
4666.560947928
hitting mole at position 1
4666.4548862305
hitting mole at position 1
4666.4548862305
hitting mole at position 1
4667.1205299538
hitting mole at position 1
4666.4548862305
hitting mole at position 1
4667.1205299538
hitting mole at position 1
4666.4548862305
hitting mole at position 1
4667.1205299538
hitting mole at position 1
4666.4548862305
hitting mole at position 1
4667.1205299538
hitting mole at position 1
4666.4548862305
hitting mole at position 1
4667.1205299538
hitting mole at position 1
4666.4548862305
hitting mole at position 1
4667.1205299538
hitting mole at position 1
So there is an issue right there.
Next I tried just doing some prints like this
Code: Select all
local aa,bb = player:findNearestNameOrId("Platypus") table.print(bb)
Code: Select all
table: 03813EF8
1: table: 03813F98
Distance: 128.78521517544
Name: Platypus
Address: 365400320
Z: 4719.6767578125
Attackable: true
X: 3146.8620605469
Type: 2
Y: 14.329277038574
Id: 102180
2: table: 03813FC0
Distance: 176.14539092252
Name: Platypus
Address: 365404160
Z: 4769.3061523438
Attackable: true
X: 3055.0129394531
Type: 2
Y: 14.407148361206
Id: 102181
table: 03814920
1: table: 038149C0
Distance: 128.78521532684
Name: Platypus
Address: 365400320
Z: 4719.6767578125
Attackable: true
X: 3146.8620605469
Type: 2
Y: 14.329298019409
Id: 102180
2: table: 03814A88
Distance: 131.65988312709
Name: Platypus
Address: 743697152
Z: 4722.5961914063
Attackable: true
X: 3054.9389648438
Type: 2
Y: 14.614768981934
Id: 102178
3: table: 03814A38
Distance: 171.24348408116
Name: Platypus
Address: 693959168
Z: 4770.5322265625
Attackable: true
X: 3099.3659667969
Type: 2
Y: 14.28392791748
Id: 102182
table: 03812B20
1: table: 03812BE8
Distance: 93.1410456072
Name: Platypus
Address: 664036352
Z: 4680.6630859375
Attackable: true
X: 3055.7749023438
Type: 2
Y: 14.347370147705
Id: 102143
2: table: 03812C10
Distance: 174.66309086418
Name: Platypus
Address: 664040192
Z: 4767.8090820313
Attackable: true
X: 3147.04296875
Type: 2
Y: 14.435062408447
Id: 102183
I would need to confirm but it seems the Id matches to position in game.
102176 is position X
102177 is position X
102178 is position X
102179 is position X
102180 is position X
102181 is position X
102182 is position X
102183 is position X
102184 is position X
I noticed another Id, 102143, might be the ones to avoid hitting?
Ok so the usual offset for if clicked doesn't work.
This works for round 1 when they are coming out slowly, scores 14ish round 1.
Code: Select all
function platypus()
local prevspot, prevaddress = 0,0
while RoMScript("TimeKeeperFrame:IsVisible()") do
player:update()
yrest(1);
local objectList = CObjectList()
objectList:update()
local objSize = objectList:size()
for i = 0,objSize do
local obj = objectList:getObject(i)
obj:update()
if obj.Name == "Platypus" then
local spot = obj.Id - 102174
if spot > 0 and not (spot == prevspot and prevaddress == obj.Address) then
printf("hitting %X mole at position %s\n", obj.Address, spot)
RoMCode('UseExtraAction('.. spot..')');
prevspot = spot
prevaddress = obj.Address
break
end
end
end
end
end
-- getTime() deltaTime(getTime(), starttime) -- in seconds
Code: Select all
hitting 312E1E00 mole at position 8
hitting 312E1400 mole at position 5
hitting 312E7800 mole at position 2
hitting 312E5500 mole at position 5
hitting 40A0D200 mole at position 2
hitting 40A03C00 mole at position 7
hitting 40A00A00 mole at position 2
hitting 40A0D200 mole at position 4
hitting 15C7C300 mole at position 4
hitting 36B86E00 mole at position 7
hitting 36B8E600 mole at position 2
hitting 36B8E100 mole at position 5
hitting 36B84600 mole at position 3
hitting 36B85A00 mole at position 6
So in order to keep working in faster rounds a check will need to be done for more than just the last platypus, maybe add in a time on the combination of Id and Address so it ignores that combination for the next 2 seconds.
I added that as a combo because sometimes it would have the same address in a different position on the next platypus.
Code: Select all
hitting 37399B00 mole at position 4
hitting 37399B00 mole at position 7
hitting 37399B00 mole at position 5
hitting 3939C800 mole at position 2
hitting 37399B00 mole at position 7
hitting 29229B00 mole at position 9
hitting 37399B00 mole at position 4
hitting 29229B00 mole at position 8
hitting 37399B00 mole at position 6
hitting 29229B00 mole at position 4
hitting 37399B00 mole at position 5
Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 1:38 am
by ZZZZZ
Code: Select all
101279
101545
101546
101547
102143
102176
102177
102178
102179
102180
102181
102182
102183
102184
That's the ID of all the Platypus that appear. I believe the first 4 are the ones you are not supposed to hit. I'm not sure if their ID relates to their hole though, I did originally think that but wasn't too sure.
Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 2:33 am
by lisa
ZZZZZ wrote:That's the ID of all the Platypus that appear. I believe the first 4 are the ones you are not supposed to hit. I'm not sure if their ID relates to their hole though, I did originally think that but wasn't too sure.
yeah i confirmed it.
This just scored 55, had 2 misses, maybe 3.
Code: Select all
function platypus()
clicked = {}
player.time = getTime()
player.spot = 0
player.prevaddress = player.Address
table.insert(clicked,player)
local function checklist(obj,spot)
for k,v in pairs(clicked) do
if 4000 > deltaTime(getTime(), v.time) then -- ignore any records older than 3 seconds
if (spot == v.prevspot and v.prevaddress == obj.Address) then
return false
end
end
end
return true
end
while RoMScript("TimeKeeperFrame:IsVisible()") do
player:update()
yrest(1);
local objectList = CObjectList()
objectList:update()
local objSize = objectList:size()
for i = 0,objSize do
local obj = objectList:getObject(i)
obj:update()
if obj.Name == "Platypus" then
local spot = obj.Id - 102174
if spot > 0 and checklist(obj,spot) then
printf("hitting %X mole at position %s\n", obj.Address, spot)
RoMCode('UseExtraAction('.. spot..')');
obj.prevspot = spot
obj.prevaddress = obj.Address
obj.time = getTime()
table.insert(clicked,obj)
break
end
end
end
end
end
enjoy.
Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 5:35 am
by ZZZZZ
Works almost spot on, only issue I found was it doesn't hit hole 1 if its a target, if its a friendly it just prints hitting position 10.
Code: Select all
hitting 499DCD00 mole at position 5
hitting 20599100 mole at position 5
hitting 481A3200 mole at position 10
hitting 20599100 mole at position 4
hitting 481A3200 mole at position 10
Otherwise I still got 57 score, thanks very much

Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 5:37 am
by rock5
You know, what I like to do with history lists is remove the expired items as I come across them, eg.
Code: Select all
if 4000 > deltaTime(getTime(), v.time) then -- ignore any records older than 3 seconds
...
else
table.remove(clicked,k)
end
Ok course this causes skipped items because of the removed value. The only way I know to handle it is to go in reverse, eg.
Code: Select all
for k = #clicked, 1, -1 do
v = clicked[k]
if 4000 > deltaTime(getTime(), v.time) then -- ignore any records older than 3 seconds
...
else
table.remove(clicked,k)
end
This just avoids the list getting bigger and bigger.
Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 5:48 am
by lisa
rock5 wrote:This just avoids the list getting bigger and bigger.
Sounds good, ZZZZZ should definately impliment it
Code works perfectly just so you know
Code: Select all
Command> local tt = {1,2,3,4,5,6,7,8,9} for k = #tt,1,-1 do v = tt[k] print(v) if v == 1 or v == 4 then table.remove(tt,k) end end table.print(tt)
9
8
7
6
5
4
3
2
1
table: 014C63E8
1: 2
2: 3
3: 5
4: 6
5: 7
6: 8
7: 9
ZZZZZ wrote:Works almost spot on, only issue I found was it doesn't hit hole 1 if its a target, if its a friendly it just prints hitting position 10.
that explains why the math didn't add up for how much I had to subtract from Id, just add in a line.
Code: Select all
local spot = obj.Id - 102174
if spot == 10 then spot = 1 end -- add this line
if spot > 0 and checklist(obj,spot) then
Have a play around with the time, It is set to 4 seconds atm, 4000. I got a few double hits at 2000 and 3000, there may be an optimal number but yeah that is for others to test.
Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 6:26 pm
by ZZZZZ
Changing 10 to 1 didn't work, some reason 10 is a friendly mob, but anyway, I solved it by adding hole 1's ID, which is 102143.
Code: Select all
if obj.Name == "Platypus" then
local spot
if obj.Id == 102143 then
spot = 1
else
spot = obj.Id - 102174
end
if spot > 0 and checklist(obj,spot) then
printf("hitting %X mole at position %s\n", obj.Address, spot)
RoMCode('UseExtraAction('.. spot ..')');
obj.prevspot = spot
obj.prevaddress = obj.Address
obj.time = getTime()
table.insert(clicked,obj)
break
end
end
Re: Honor point's farm in dril ground
Posted: Mon Jun 16, 2014 11:13 pm
by rock5
The problem with that is it totals 10 spots but there are only 9, if I understand correctly. So what does it mean when it gets a platypus id 102184 which results in a "spot 10"? I think someone should run getid while the game it running and make 100% sure which the correct ids are and their corresponding spots.
Re: Honor point's farm in dril ground
Posted: Tue Jul 15, 2014 8:44 am
by noobbotter
I tried out Bot_romka's script for the one where you fly over the spikes. Works pretty good. I was averaging 350 - 450 Honor Points per run.