Here is a little script to make generating safe spots easier. It will:
If you have a fast warping ship you may want to reduce the 30 second delay.
Be sure that your system is safe before using this script!
- Warp to the farthest moon @ 100km.
- Snap a bookmark 30 seconds after initiating warp. The 30 seconds does include align time!
- Warp back to the bookmark it just created.
- Repeat 1-3 ten times.
If you have a fast warping ship you may want to reduce the 30 second delay.
Be sure that your system is safe before using this script!
Code:
#define CATEGORYID_CELESTIAL 2
#define GROUPID_MOON 8
#define CATEGORYID_STRUCTURE 23
#define GROUPID_CONTROL_TOWER 365
variable string LogFile
function atexit()
{
call LogEcho "EVE Safespot Maker Script -- Ended"
return
}
function LogEcho(string aString)
{
echo "${aString}"
redirect -append "${LogFile}" echo "${aString}"
}
function WarpWait()
{
variable bool Warped = FALSE
variable int Count
for (Count:Set[0] ; ${Count}<10 ; Count:Inc)
{
if ${Me.ToEntity.Mode} == 3
{
call LogEcho "Warping..."
break
}
wait 20
}
while ${Me.ToEntity.Mode} == 3
{
Warped:Set[TRUE]
wait 20
}
call LogEcho "Dropped out of warp"
wait 20
return ${Warped}
}
function WarpToFarthestMoonAndMakeBookmark(string bm_name)
{
if ${EVE.Bookmark[${bm_name}](exists)}
{
call LogEcho "Bookmark ${bm_name} already exists!"
return
}
variable index:entity moonIndex
variable iterator moonIterator
EVE:DoGetEntities[moonIndex,CategoryID,CATEGORYID_CELESTIAL,GroupID,GROUPID_MOON]
moonIndex:GetIterator[moonIterator]
if !${moonIterator:Last(exists)}
{
call LogEcho "moonIterator:Last not found!"
return
}
moonIterator.Value:WarpTo[100000]
variable int Count
for (Count:Set[0] ; ${Count}<10 ; Count:Inc)
{
if ${Me.ToEntity.Mode} == 3
{
break
}
wait 20
}
for (Count:Set[0] ; ${Me.ToEntity.Mode} == 3 ; Count:Inc)
{
if ${Count} == 30
{
EVE:CreateBookmark["${bm_name}"]
call LogEcho "${bm_name} created."
}
wait 10
}
}
; 'Args' is an array
function main(... Args)
{
LogFile:Set["${Script.CurrentDirectory}/${Universe[${Me.SolarSystemID}]}-ssmaker.log"]
call LogEcho "EVE Safespot Maker Script"
call LogEcho "EVE Safespot Maker will log to ${LogFile}"
variable int BookmarkCount
variable string bm_name
for (BookmarkCount:Set[1] ; ${BookmarkCount}<10 ; BookmarkCount:Inc)
{
bm_name:Set["SS ${Universe[${Me.SolarSystemID}]} #${BookmarkCount}"]
call LogEcho "Making ${bm_name}"
call WarpToFarthestMoonAndMakeBookmark "${bm_name}"
if ${EVE.Bookmark[${bm_name}](exists)}
{
EVE.Bookmark[${bm_name}]:WarpTo
call WarpWait
}
else
{
call LogEcho "${bm_name} not found!"
break
}
}
}