Welcome, Guest
Please Login or Register.    Lost Password?

Wow, Drone Window Is Complicated!
(0 viewing) 
Go to bottomPage: 1234567
TOPIC: Wow, Drone Window Is Complicated!
*
#37533
Wow, Drone Window Is Complicated! 4 Years, 10 Months ago Karma: 33
First of all... YAY!!! It took me about a week longer than I expected, but it was a great challenge.

Eve Drone Manager

Here is the code that interacted with the class objects. I'm glad I decided to make a Window class and extend it with Drone Bay and Drone Manager. Now I can use the same parent Window base for adding any window.
Warning: Spoiler!
innominate
Gold Boarder
Posts: 632
graphgraph
User Offline Click here to see the profile of this user
Last Edit: 2017/05/23 19:24 By innominate.
The administrator has disabled public write access.
 
#37538
Re: Wow, Drone Window Is Complicated! 4 Years, 10 Months ago Karma: 701
Hi, the main problem with drones is to ask them to mine separated asteroid (and to not mine this asteroid with any laser later). If they mine the same asteroid as lasers, lasers will waste cycles because bot cannot calculate content of asteroids in this case. You made basic operations with drones simpler then I expected. Never thought to find correct drones by name in drone bay. +1
Slav2
Admin
Posts: 14838
graph
User Offline Click here to see the profile of this user
Last Edit: 2015/07/25 09:34 By Slav2.
The administrator has disabled public write access.
Send logs to my mail - with subject 'log files' to pass spam filter.
How to record logs in knowledge base
 
#37548
Re: Wow, Drone Window Is Complicated! 4 Years, 10 Months ago Karma: 33
Slav2 wrote:
Hi, the main problem with drones is to ask them to mine separated asteroid (and to not mine this asteroid with any laser later). If they mine the same asteroid as lasers, lasers will waste cycles because bot cannot calculate content of asteroids in this case.
Do you mind sharing how this part of the logic works?
The bot is obviously able to calculate asteroid content when multiple mining lasers are mining it. So would it be possible to count the drones as another laser that has different stats?

In my opinion, whether it is a problem or not depends on situation and perspective. If the code is not at all compatible, then yes it is a problem from an anal programmer's perspective. I totally get that. On the other hand, as a user, I also see situations where the benefits outweigh that problem. Anomalies have roids that are huge and can take several hours for one miner to drain. If can mining to a looter, losing a cycle is totally outweighed because drones can increase yield significantly.

Max skilled pilot/booster +Looter, all lows mining Laser Upgrade IIs, 2,500 from roid, no Orca/implants:
Hulk-3 strip miner I, 5 Miner II: +19%
Above with 2 Drone Mining Rig I: +22.8%
Skiff-1 strip miner I, 5 Miner II: +25%
Skiff-1 strip miner I, 5 Miner II, 2 Drone Mining Rig I: +29.8%

Personally, I mine only one roid at at time (Skiffs) and have Asteroids To Keep In Optimal at 1. My algorithm has a GoToSelectedObject at 2,500 to keep the drones in optimal range. As long as the bookmark is on one side of the belt, each time new roid being mined is within range of the next closest one. I'm intending to also add GetLasersData as well, which unfortunately must be manually pre-calculated so to maximize efficiency.

Slav2 wrote:You made basic operations with drones simpler then I expected. Never thought to find correct drones by name in drone bay. +1[/quote]
When I found that you could launch from there, that is when I realized I wanted to make this module. At this point though, I could easily make it take inventory of Drones In Bay subfolders, or even scroll/select without folders... But at this point the Drone Bay window is the simplest solution.
innominate
Gold Boarder
Posts: 632
graphgraph
User Offline Click here to see the profile of this user
The administrator has disabled public write access.
 
#37563
Re: Wow, Drone Window Is Complicated! 4 Years, 10 Months ago Karma: 701
Another problem with drones is when you attempt to jettison container. If at the moment of jettisoning container one laser adds new portion of ore, jettisoning function has a problem. I have asked bot to check laser cycle timer and not jettison anything if any of laser cycles is close to the end. It took about a month of testing to make this simple function working properly. Drones looks simple, but it will ruin jettisoning function again and I does not see simple solution to get both functions working properly. Can you test your module with jettisoning module on?
Slav2
Admin
Posts: 14838
graph
User Offline Click here to see the profile of this user
The administrator has disabled public write access.
Send logs to my mail - with subject 'log files' to pass spam filter.
How to record logs in knowledge base
 
#37570
Re: Wow, Drone Window Is Complicated! 4 Years, 10 Months ago Karma: 33
It is funny you bring that up, as I just noticed an attempt to mitigate that in my old D-Scan script. That makes sense. Even without my module, I get a Jettison container problem once every few days, which is often not recovered from. It was one of my first posts about the bot just quitting and not restarted. It happens on both sides. If the looter has just "Selected All" when miner drops it, or if the miner opens the can and is about to drag ore into the can as the looter empties and pops it. Here is my long-ago naive attempt to mitigate that on both sides, which works like a charm.
375: JettisonCargo()[376;240+;370;640;370+]
376: CloseWindow(8)[900;377]
377: JettisonCargo()[900+;240+;370;640;370+]

With 5 drones bringing ore every 60 seconds, at different times, I may just have to change 376 to return to 375 and take the chance of an error loop. Which is dangerous and could be time consuming on occasion (and could be problematic with something like a Hulk). Either that or I'll set the bot to orbit and not rename cans, so it makes a new one each time but wastes the looter's time with many half full cans. My best suggestion here is to change the jettison function (and Loot also) away from being an All-Ore Or Failure system to where the bot gets the Ore Hold's m3 RIGHT BEFORE it does "Selected All", and then check it after dragging to see if the Ore Hold Decreased by AT LEAST some percentage of what it had before (which would be considered success).

I had some spare time last night and tried to get my module going, but forgot that your bot causes the AHK module to run from EP's EXE directory even though the AHK is in the scripts folder. Right now I'm putting all of my module's source files into EP's, and that seems to work, but have found that my module isn't exiting correctly and hitting the time-out I set. (Silly me for setting that when testing!) I'll let you know later as I hope to get it up and running today.
innominate
Gold Boarder
Posts: 632
graphgraph
User Offline Click here to see the profile of this user
Last Edit: 2015/07/27 06:52 By innominate.
The administrator has disabled public write access.
 
#37572
Re: Wow, Drone Window Is Complicated! 4 Years, 10 Months ago Karma: 33
EDIT: Actually two optional criteria would be better.
Primary Success: If Jet-Can m3 increased by at least amount detected before Select All.
Or in case the looter pops it at just the wrong time... (I use multiple VMs with one bot per VM to try to further avoid detection... Has worked so far...)
Secondary Success: Or If Ore Hold decreased by any amount. (Problem here is when max cargo capacity is set too small combined with bad timing, which I guess could be fixed by looping back to itself (with a loop counter) and possibly offloading ore again...)
Third Possibility: Do a get pixel color in the first spot where items appear in the ore hold. If it isn't the empty black/grey background, then it at least moved something.
innominate
Gold Boarder
Posts: 632
graphgraph
User Offline Click here to see the profile of this user
The administrator has disabled public write access.
 
Go to topPage: 1234567
Moderators: Slav2
© Macro Laboratory 2020
All rights reserved!
Design by Ivan Kozyrin