# Script Name : The Cabal's Hidden Dock Finder Script # Author : Traitor # Description : Runs a partial ZTM and counts the number of times sectors appear. # What it does : This script works on the theory that the SD is in a 6-way sector # : and has at least one backdoor. If the sysop has moved the SD # : or significantly changed the initial bang settins for 2-way and # : 1-way warps, this script may not work. This script runs a # : partial ZTM and counts the number of times each sector appears. # : Sectors that appear alot are probably 6-ways. This takes about # : 8% of the time of a full ZTM, so when run with the companion # : script, _voider.ts, you can USUALLY find SD in about 20 min or # : less, counting exploration. The more accuracy you want, the # : longer it takes to run. At default settings, it generates a # : list of possible SD sectors and the SD will appear on that list # : about 75-80% of the time. See notes on how to increase your # : chances to 99% by distributing the load across multiple corpies. # : This script is a short cut method to the traditional FULL ZTM and # : check for 6-ways with 7-ways in. It will generate a smaller list # : that the usual method does. So, even if you don't find it with # : these scripts, then you will know which ones NOT to check when # : you do complete your FULL ZTM. # : This script creates a file on your PC called sdfind.txt in your # : TWX subdirectory. This file contains all sector numbers and # : the number of times each one appeared. # : The more times a sector appears, the more likely it is a 6-way. # : The companion script reads in this data and starts voiding and # : checking to see if there are 7-ways into the sector. It is # : recommended that you have at least 3 people run the companion # : script. (e-mail it or ICQ the file to them) The first person # : will configure the _voider.ts script to check all sectors that # : appear in the sdfind.txt equal or greater than 5 times. The # : next corpie checks the 4's and 3's, and the last corpie checks # : only the 2's. The corpie checking the 5+'s will get done first, # : and can run down that list. Then the 4's, 3's, and 2's can be # : checked if it's not found in the first pass. 75% of the time # : it will be in the 5+'s, 20% in the 3+'s, and 5% in the 2's, # : assuming a NORMAL randomized bang with default map settings and # : 5k sectors. # Notes : YOU NEED _voider.ts for this script to work. # : Works only on 5k sector games. Arrays get unacceptably slow with # : more than 5k variables. # : You must be at the Command Prompt for this script to work. # : THERE MAY BE SOME PAUSES WHERE IT LOOKS LIKE IT'S NOT DOING # : ANYTHING. THIS IS NORMAL. BE PATIENT. ARRAYS TAKE A WHILE # : TO MAKE IN TWX. ON MY 1.2 GHZ PC, ARRAYS CAN TAKE UP TO # : 60 SECONDS TO READ IN. IF YOU HAVE A SLOWER PC, THIS MAY # : TAKE EVEN LONGER. GET A CUP OF COFFEE OR SOMETHING. # : You should run this script before running _voider.ts. # : This script will create a new file called sdfind.txt in your # : TWX subdirectory. That file will contain the sector numbers # : and the number of times each sector appears. # : The reason there are two scripts is so your corpies can run through # : part of the list at the same time you are. This can save time. # : Turn OFF ANSI and ANIMATION so it runs faster. # : # ----====[ show EGO banner :-) ]====---- # If this really bugs you, feel free to remove this section. # It creates a file on your system that checks to see if the banner has been # seen before. The file is called banner_find_dock.txt and in your TWX directory # -Traitor :bannercheck fileexists $checkbanner "banner_find_dock.txt" if $checkbanner = TRUE goto :promptcheck else echo "**" ANSI_1 " --" ANSI_9 "===| " ANSI_11 "The Cabal's Hidden Dock Finder Script v1.0.0" ANSI_9 " |===" ANSI_1 "--*" echo ANSI_1 " --" ANSI_9 "===| " ANSI_11 "Last edited November 24, 2002" ANSI_9 " |===" ANSI_1 "--*" echo ANSI_1 " --" ANSI_9 "===| " ANSI_11 "By " ANSI_12 " Traitor" ANSI_9 " |===" ANSI_1 "--*" echo ANSI_1 " --" ANSI_9 "===| " ANSI_11 "E-Mail " ANSI_12 "traitor@tw-cabal.com" ANSI_9 " |===" ANSI_1 "--**" echo ANSI_10 " This script is freeware and may be distributed*" echo "*" ANSI_13 "!!! Please read the Notes and Warnings at the top of the script before using. !!!" echo "*" ANSI_13 "!!! Use at your own risk. The author is not responsible for anything that may !!!" echo "*" ANSI_13 "!!! or may not happen as a result of running this script. You were warned. !!!" echo "*" ANSI_10 " This intro screen will only appear once." echo ANSI_15 "*" write "banner_find_dock.txt" $checkbanner setdelaytrigger bannerdelay :promptcheck 5000 pause end # ----====[ End of show EGO banner :-) ]====---- # ----====[ Prompt Check! ]====---- # Checks to make sure you are starting at the Command Prompt :promptcheck cutText CURRENTLINE $location 1 7 if ($location <> "Command") echo ANSI_12 "**Must be run from the command prompt, moron!" halt end # ----====[ Set Initial vars, and Initilize sdfind.txt file ]====---- # ====[ if you want to do more sectors, change the $lastnum value below. ]==== setvar $firstnum 1 setvar $maxsectors 5000 setvar $lastnum $maxsectors fileexists $checkfile "sdfind.txt" if $checkfile = TRUE delete "sdfind.txt" end send "c" # ----====[ Start ]====---- :start # ====[ check to see if done with sector ]==== if $lastnum < 1 goto :finish else send "f" $firstnum "*" send $lastnum "*" settextlinetrigger 10 :skipline "is:" pause :skipline settextlinetrigger 1 :getsecnums $firstnum pause :getsecnums killalltriggers setvar $wordnum 1 getword CURRENTLINE $secnum $wordnum striptext $secnum "(" striptext $secnum ")" :numcheck isNumber $isnum $secnum if $isnum = TRUE :getnextsec if $secnum = 0 goto :checknextline else if $secnum = $lastnum # ====[ The next two lines determine how granular your ZTM is. ]==== # ====[ The lower the number, the more you ZTM. 10 is default. ]==== add $firstnum 10 subtract $lastnum 10 goto :start else add $secarray[$secnum] 1 add $wordnum 2 getword CURRENTLINE $secnum $wordnum striptext $secnum "(" striptext $secnum ")" goto :getnextsec end end else add $wordnum 1 goto :numcheck end end # ====[ check to see if the warp list goes to additional lines ]==== :checknextline settextlinetrigger 2 :getsecnums $lastnum settextlinetrigger 3 :getsecnums ">" pause # ----====[ Create sdfind.txt file for _voider.ts ]====---- # ====[ This creates an array, takes about 20 seconds on my 1.2 ghz PC. ]==== # ====[ It may take your PC longer, depending on it's speed. Be patinet. ]==== :finish echo "*" ANSI_15 "Building file...Please stand by..." setvar $cursor 1 :makeoutput write sdfind.txt $cursor & " " & $secarray[$cursor] if $cursor = $maxsectors send "q" echo "*" ANSI_10 "SCRIPT FINISHED! HAPPY HUNTING!" halt else add $cursor 1 # ====[ The next line is optional. Added so it looks like it's doing something. ]==== # ====[ It can be removed, which speeds it up a bit. ]==== echo "*" & $cursor & " " & $secarray[$cursor] goto :makeoutput end