View unanswered posts | View active topics It is currently Sun Apr 19, 2026 5:40 am



Reply to topic  [ 4 posts ] 
 MSL / Fed Liner 
Author Message
Ambassador
User avatar

Joined: Mon Feb 09, 2004 3:00 am
Posts: 3141
Location: Kansas
Unread post MSL / Fed Liner
This is an older script that I cleaned up a bit - probably should have rewrote entirely, but it is as it is.

The purpose is to line the MSLs and Fed with a fighter wall in games that you are locking down due to a sysOp not rebanging a game or whatever reason you have. Not a lot of safeties and it will leave the wall fighters around dock sectors that are in the MSLs. The MSLs will have 1 fighter, but sometimes an errant drop will be made. Make sure you have plenty of cash because it will refurb fighters and there will be a lot of sectors to wall off. Check the file it creates when it does not wall off one-way sectors - yes, you can code around that - I didn't bother.

Code:
# msl tunnel / fed liner

setVar $numFigs "1"
setVar $attackFigs "100"
setVar $figString "f" & $numFigs & "*cd"

echo ANSI_11 "**Enter the number of fighters used to line the msl*"
getConsoleInput $mslLinerFigs

getword currentline $prompt 1

if (CURRENTSECTOR <> STARDOCK) or ($prompt <> "Command")
   echo ansi_12 "**-- You must start at the sector prompt at Stardock!!"
   halt
end

getTime $mslStart "hh:mm:ss am/pm"


# get ship fighter wave
send "c;"
waitfor "TransWarp Drive:"
getText CURRENTLINE $figWave "Per Attack:" "TransWarp Drive:"
stripText $figWave " "
send "q"


setVar $rylos RYLOS
setVar $alphaCentauri ALPHACENTAURI


if ($rylos = 0)
   echo ANSI_12 "*The sector for Rylos was not found!!!*"
   echo ANSI_12 "Enter the sector for Rylos or 0 to halt!*"
   getConsoleInput $rylos
   if ($rylos = 0)
      halt
   end
end

if ($alphaCentauri = 0)
   echo ANSI_12 "*The sector for Alpha Centauri was not found!!!*"
   echo ANSI_12 "Enter the sector for Alpha Centauri or 0 to halt!*"
   getConsoleInput $alphaCentauri
   if ($alphaCentauri = 0)
      halt
   end
end

:begin
  # dock to rylos to alpha centauri to dock
   setVar $mowstring  $rylos & " " & $alphaCentauri & " " & STARDOCK & " "
   setVar $mowstring $mowString & $alphaCentauri & " " & $rylos & " " & STARDOCK & " "
   setVar $mowstring $mowString & "1 2 3 4 5 6 7 8 9 10 1 " & STARDOCK & " "


:beginScript
  killtrigger endIt
  setTextOutTrigger endit :endIt "!"
  setVar $routePath ""
  setVar $path ""
  getword $mowString $mow 1
  isnumber $test $mow
  if ($test = 0)
     echo ansi_12 $mow " is not a valid number"
     halt
  end
  setVar $counter 1

:getCF
   killalltriggers
   # insert photon and interdictor triggers
   if ($mow = CURRENTSECTOR)
      add $counter 1
      getword $mowString $mow $counter
   end
   setVar $path ""
   send "*  cf*" $mow "*"
   setTextLineTrigger start :getCfHops "The shortest path"
   setTextTrigger noPath :noPath "No route within"
   pause
   :getCfHops
   killtrigger noPath
   getword CURRENTLINE $hops 4
   striptext $hops "("
   add $hops 1
   setarray $moveArray $hops
   :startgp
   setTextTrigger doneLines :doneLines "Computer command"
   setTextLineTrigger path :path ""
   pause
   :nopath
     send "nq"
     echo "***" ANSI_12 "-------- No Path --------***"
     add $counter 1
     getword $mowString $mow $counter
      if ($mow <> 0)
         goto :getCF
      else
        goto :beginScript
     end
   :path
      killtrigger doneLines
      setVar $path $path & CURRENTLINE
      goto :startgp
    :doneLines
      killtrigger doneLines
      killtrigger path
      striptext $path ">"
      striptext $path "("
      striptext $path ")"
      setVar $icnt 2
      while ($icnt <= $hops)
         getword $path $tmp $icnt
         setVar $moveArray[$icnt] $tmp
         add $icnt 1
      end
      send "q"
      setVar $i 1
      while ($i < $hops)
         add $i 1
         if ($moveArray[$i] > 10) and ($moveArray[$i] <> STARDOCK)
            send "m " $moveArray[$i]  "*z  a9999*z  * " $figString "*"
            if ($moveArray[$i] = $rylos) or ($moveArray[$i] = $alphacentauri)
               send "pt"
               setTextLineTrigger getFigs :getFigs "B  Fighters        :"
               pause
               :getFigs
               getword currentline $getFigs 8
               send "b" $getFigs "*q"
            end
         else
            send "m  " $moveArray[$i] & "*"
            if ($moveArray[$i] = STARDOCK)
                send "p s g y g q s p"
                setTextLineTrigger dockFig :dockFig "B  Fighters        :"
                pause
                :dockFig
                getword currentline $getFigs 8
                send "b" $getFigs "*qqq"
            end

         end
         waitfor "[" & $moveArray[$i] & "] ("
         gosub :surround
      end
      add $counter 1
      getword $mowString $mow $counter
      if ($mow > 0)
         goto :getCF
      end
      killalltriggers
      getTime $mslEnd "hh:mm:ss am/pm"
    halt


:surround
setArray $adjacent 7
gettext currentline $curSector "]:[" "] ("

send "sh"
waitfor "Select (H)olo Scan"
setTextlineTrigger adjSector :adjSector "Sector  :"
    setTextLineTrigger fighters :fighters "Fighters: "
    setTextLineTrigger planet :planet "Planets :"
    setTextTrigger cmdLine :startSurround "Command [TL"
pause

:adjSector
    getword currentline $sector 3
    setTextlineTrigger adjSector :adjSector "Sector  :"
    pause

    :fighters
    setTextLineTrigger fighters :fighters "Fighters: "
    pause

    :planet
      setTextLineTrigger planet :planet "Planets :"
      if ($sector > 10) and ($sector <> STARDOCK)
      setVar $secAvoid[$sector] TRUE
      write gamename & "tunnelMissed.txt" $adjacent[$s]
      end
    pause

:startsurround
killalltriggers

setVar $warps sector.warpcount[$curSector]

setVar $x 1
WHILE ($x <= $warps)
   setVar $adjacent[$x] SECTOR.Warps[$curSector][$x]
   add $x 1
end
setVar $s 1
setVar $burst ""
setVar $path $path & " "
:moveSector
   while ($s <= $warps)
#     if (SECTOR.WARPS[$curSector][$s] > 0)
        getdistance $dist $adjacent[$s] $curSector
        if ($dist = 1) and ($adjacent[$s] > 10) and ($secAvoid[$adjacent[$s]] <> TRUE)
             if ($adjacent[$s] <> STARDOCK)
                getwordpos $path $inMow " " & $adjacent[$s] & " "
                if ($inMow = 0) and ($adjacent[$s] <> RYLOS) and ($adjacent[$s] <> alphacentauri)
                   setVar $burst $burst & "m" & $adjacent[$s] & "*  z  a9999*znf  " & $mslLinerFigs & "* cd<*  "
                else
                   setVar $burst $burst & "m" & $adjacent[$s] & "*  z  a9999*znf  1* cd<*  "
                end
                setSectorparameter $adjacent[$s] "FigSec" TRUE
             end
        elseif ($dist < 1) or ($dist > 1)
             if ($adjacent[$s] <> STARDOCK) and ($adjacent[$s] > 10)
             send "cf"  $adjacent[$s] "*" $curSector "*q"
             setTextTrigger getit :getIt "from sector " & $adjacent[$s]
             pause
             :getIt
             getword currentline $check 4
             stripText $check "("
             if ($check = 1)
                setVar $dist 1
                setVar $burst $burst & "m" & $adjacent[$s] & "*  z  a9999*znf  " & $mslLinerFigs & "* cd<*  "
                setSectorparameter $adjacent[$s] "FigSec" TRUE
             end
             end
        end
        if ($dist > 1)
             echo "**" ANSI_12 "One way warp: " $adjacent[$s] " distance is " $dist
            if ($adjacent[$s] > 10) and ($adjacent[$s] <> STARDOCK)
               write gamename & "tunnelMissed.txt" $adjacent[$s]
            end
        end
#     end
     add $s 1
   end
   send $burst
   return


_________________
               / Promethius / Enigma / Wolfen /

"A man who has no skills can be taught, a man who has no honor has nothing."


Thu Nov 04, 2010 10:46 pm
Profile ICQ
Commander
User avatar

Joined: Wed May 03, 2006 2:00 am
Posts: 1722
Location: USA
Unread post Re: MSL / Fed Liner
AKA Amtrak

_________________
Coconut Telegraph (ICQ)#586137616
Team Speak3@ 220.244.125.70:9987
Founding Member -=[Team Kraaken]=- Winner of Gridwars 2010 - Ka Pla
Image
Jesus wounldn't Subspace Crawl


Fri Nov 05, 2010 12:05 am
Profile ICQ YIM
Ambassador
User avatar

Joined: Mon Feb 09, 2004 3:00 am
Posts: 3141
Location: Kansas
Unread post Re: MSL / Fed Liner
Parrothead wrote:
AKA Amtrak


Yep, but the one I had by supG did singles only and it was something to do. I wanted single figs in the MSLs and a "wall" surrounding. I hate babysitting games, and while in some edits they can still break through, it will take a while esp if you blow the ports up. I think the way this one is written could be improved a lot. There was a script challenge a while back on amtrak that was interesting.

_________________
               / Promethius / Enigma / Wolfen /

"A man who has no skills can be taught, a man who has no honor has nothing."


Fri Nov 05, 2010 1:01 am
Profile ICQ
Commander
User avatar

Joined: Wed May 03, 2006 2:00 am
Posts: 1722
Location: USA
Unread post Re: MSL / Fed Liner
i just do a msl list (which is used to load a msl echo array for my bot)
then i do adj sectors from that list and adj sectors to fed...filter dupes and make an amtrak list which i can then feed into twarp grid.

_________________
Coconut Telegraph (ICQ)#586137616
Team Speak3@ 220.244.125.70:9987
Founding Member -=[Team Kraaken]=- Winner of Gridwars 2010 - Ka Pla
Image
Jesus wounldn't Subspace Crawl


Fri Nov 05, 2010 1:08 am
Profile ICQ YIM
Display posts from previous:  Sort by  
Reply to topic   [ 4 posts ] 

Who is online

Users browsing this forum: No registered users and 9 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by wSTSoftware.