Astral Travel (script)

From Elanthipedia
Jump to navigation Jump to search


This script automatically travels the astral plane for you.

Front end: Stormfront

Recommend name: ap

Usage: ".ap [destination]" while standing at a Grazhir shard. [destination] can be any name from the list you get when you run the script with no arguments.

debug off

echo
echo ==============================================
echo = Astral Travel script by Foresee
echo = Last edited: 2/19/08
echo =
echo = Valid Destination names:
echo = Dor'na'torna - Dornatorna - Hibarnhvidar - Hib - Cherulisa
echo = Undarverjah - Taisgath - Islands - Ratha - Lomtaun
echo = Tamigen - Raven'sPoint - RavenPoint - Raven - RP
echo = Rolagi - Crossing - Xing - Kssarh
echo = Marendin - Shard - Ilithi - Mortom
echo = Emalerje - Volcano - LesserFist - Fist - Tiv
echo = Asharshpar'i - Asharshpari - LethDeriel - Leth
echo = Dinegavren - Therenborough - Theren
echo = Mintais - ThroneCity - Throne - TC
echo = Taniendar - Riverhaven - Haven - Gylwyn
echo ==============================================
echo

# TODO:  - This script will choke if you haven't learned
#          the destination shard.  Need a log of it to fix.
#        - The script will choke if you haven't learned
#          the starting shard.  Need a log of it to fix.

# EDITED by Uversy (5-20-2008)
#    I had no way of contacting the original author of this script
#    (that I could see) but this had to be fixed since it got me killed.
#    The script does not notice when casting the moongate spell to get
#    out of the Astral Plane fails.  As such, you release your mana and
#    then die.  I've added a check when moongate is cast to see if it failed.
#    If it does, then a the user pulls some more mana together and calls exitAP again.
#
#    I also added the ability for the user to define just how much mana they harness
#    when the script requires it.  By setting the variable "mana" just below, the user
#    is better set for their particular casting ability.  The default is '15'.  I did
#    this because having only 30 mana harnessed while in the planes is a bit dicey for
#    me.  I personally set "mana" to '20'.
#
#    FORESEE:  contact me at breusshe@hotmail.com if you want to discuss the changes
#              and I'm sorry I felt that I had to do them without consulting you first
#              (even though I wanted to, just didn't know how).

setvariable stepsToAxis 0

setvariable stepsFromAxis 0

setvariable mana 20



if_1 goto setStart

goto error_noArguments



setStart:

    match Dor'na'torna		the silvery-white shard Dor'na'torna

    match Undarverjah		the silvery-white shard Undarverjah

    match Tamigen		[Cragstone Vale, Shrine of the Shell]

    match Rolagi		the silvery-white shard Rolagi

    match Marendin		the silvery-white shard Marendin

    match Emalerje		the silvery-white shard Emalerje

    match Asharshpar'i		the silvery-white shard Asharshpar'i

    match Dinegavren		[Gealeranendae College, Tear of Grazhir Exhibit]

    match Mintais		[Phelim's Sanctum, Tear of Grazhir]

    match Taniendar		the silvery-white shard Taniendar

    match error_badStart	Obvious exits:

    match error_badStart	Obvious paths:

    put look

    matchwait



Dor'na'torna:

    setvariable Start Dor'na'torna

    goto setDestination

Undarverjah:

    setvariable Start Undarverjah

    goto setDestination

Tamigen:

    setvariable Start Tamigen

    goto setDestination

Rolagi:

    setvariable Start Rolagi

    goto setDestination

Marendin:

    setvariable Start Marendin

    goto setDestination

Emalerje:

    setvariable Start Emalerje

    goto setDestination

Asharshpar'i:

    setvariable Start Asharshpar'i

    goto setDestination

Dinegavren:

    setvariable Start Dinegavren

    goto setDestination

Mintais:

    setvariable Start Mintais

    goto setDestination

Taniendar:

    setvariable Start Taniendar

    goto setDestination





# Valid destinations

setDestination:

    goto setDestination_%1%



setDestination_Rolagi:

setDestination_Crossing:

setDestination_Xing:

setDestination_Kssarh:

    setvariable Destination Rolagi

    setvariable Pillar Nightmares

    goto prepMoongate



setDestination_Dor'na'torna:

setDestination_Dornatorna:

setDestination_Hibarnhvidar:

setDestination_Hib:

setDestination_Cherulisa:

    setvariable Destination Dor'na'torna

    setvariable Pillar Tradition

    goto prepMoongate



setDestination_Tamigen:

setDestination_Raven'sPoint:

setDestination_RavenPoint:

setDestination_Raven:

setDestination_RP:

    setvariable Destination Tamigen

    setvariable Pillar Convergence

    goto prepMoongate



setDestination_Asharshpar'i:

setDestination_Asharshpari:

setDestination_LethDeriel:

setDestination_Leth:

    setvariable Destination Asharshpar'i

    setvariable Pillar Heavens

    goto prepMoongate



setDestination_Emalerje:

setDestination_Volcano:

setDestinatoin_LesserFist:

setDestination_Fist:

setDestination_Tiv:

    setvariable Destination Emalerje

    setvariable Pillar Shrew

    goto prepMoongate



setDestination_Taniendar:

setDestination_Riverhaven:

setDestination_Haven:

setDestination_Gylwyn:

    setvariable Destination Taniendar

    setvariable Pillar Broken

    goto prepMoongate



setDestination_Dinegavren:

setDestination_Therenborough:

setDestination_Theren:

    setvariable Destination Dinegavren

    setvariable Pillar Introspection

    goto prepMoongate



setDestination_Mintais:

setDestination_ThroneCity:

setDestination_Throne:

setDestination_TC:

    setvariable Destination Mintais

    setvariable Pillar Fortune

    goto prepMoongate



setDestination_Marendin:

setDestination_Shard:

setDestination_Ilithi:

setDestination_Mortom:

    setvariable Destination Marendin

    setvariable Pillar Secrets

    goto prepMoongate



setDestination_Undarverjah:

setDestination_Taisgath:

setDestination_Ratha:

setDestinatoin_Islands:

setDestination_Lomtaun:

    setvariable Destination Undarverjah

    setvariable Pillar Heavens

    goto prepMoongate





prepMoongate:

    put prep moongate

    goto focusShard



focusShard:

    put focus %Start%

    waitfor You feel fully prepared

    goto harnessMana



harnessMana:

    match wait_harnessMana	...wait

    match wait_harnessMana	Sorry, you may only type

    match harnessMana2		You tap into the mana

    put harness %mana%

    matchwait



harnessMana2:

    match wait_harnessMana2	...wait

    match wait_harnessMana2	Sorry, you may only type

    match enterAP		You tap into the mana

    put harness %mana%

    matchwait



harnessMana3:

    match wait_harnessMana3	...wait

    match wait_harnessMana3	Sorry, you may only type

    match exitAP		You tap into the mana

    put harness %mana%

    matchwait



enterAP:

    match wait_enterAP		...wait

    match wait_enterAP		Sorry, you may only type

    match toAxis		You gesture.

    put cast %Start%

    matchwait



toAxis:

    counter set %stepsToAxis%

    counter add 1

    setvariable stepsToAxis %c%



    toAxis1:

        match wait_toAxis1	...wait

        match wait_toAxis1	Sorry, you may only type

        match toAxis_N		the microcosm is to the north.

        match toAxis_NE		the microcosm is to the northeast.

        match toAxis_E		the microcosm is to the east.

        match toAxis_SE		the microcosm is to the southeast.

        match toAxis_S		the microcosm is to the south.

        match toAxis_SW		the microcosm is to the southwest.

        match toAxis_W		the microcosm is to the west.

        match toAxis_NW		the microcosm is to the northwest.

        match error_expanse	You cannot sense even a single thread of Lunar energy

        match error_dead	You are a ghost!

        put perceive

        matchwait



toAxis_N:

    match wait_toAxis_N		...wait

    match wait_toAxis_N		Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put north

    matchwait

toAxis_NE:

    match wait_toAxis_NE	...wait

    match wait_toAxis_NE	Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put northeast

    matchwait

toAxis_E:

    match wait_toAxis_E		...wait

    match wait_toAxis_E		Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put east

    matchwait

toAxis_SE:

    match wait_toAxis_SE	...wait

    match wait_toAxis_SE	Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put southeast

    matchwait

toAxis_S:

    match wait_toAxis_S		...wait

    match wait_toAxis_S		Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put south

    matchwait

toAxis_SW:

    match wait_toAxis_SW	...wait

    match wait_toAxis_SW	Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put southwest

    matchwait

toAxis_W:

    match wait_toAxis_W		...wait

    match wait_toAxis_W		Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put west

    matchwait

toAxis_NW:

    match wait_toAxis_NW	...wait

    match wait_toAxis_NW	Sorry, you may only type

    match toAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put northwest

    matchwait



atAxis:

    move east

    move up

    goto Convergence_to_%Pillar%



Convergence_to_Convergence:

    goto exitAxis

Convergence_to_Nightmares:

    move south

    goto exitAxis

Convergence_to_Tradition:

    move southeast

    goto exitAxis

Convergence_to_Secrets:

    move east

    goto exitAxis

Convergence_to_Unity:

    move northeast

    goto exitAxis

Convergence_to_Shrew:

    move north

    goto exitAxis

Convergence_to_Heavens:

    move northwest

    goto exitAxis

Convergence_to_Introspection:

    move west

    goto exitAxis

Convergence_to_Fortune:

    move southwest

    goto exitAxis

Convergence_to_Broken:

    move south

    move down

    goto exitAxis



exitAxis:

    put focus %Destination%

    goto fromAxis



fromAxis:

    counter set %stepsFromAxis%

    counter add 1

    setvariable stepsFromAxis %c%



    fromAxis1:

        match wait_fromAxis1	...wait

        match wait_fromAxis1	Sorry, you may only type

        match fromAxis_N	the conduit lies north.

        match fromAxis_NE	the conduit lies northeast.

        match fromAxis_E	the conduit lies east.

        match fromAxis_SE	the conduit lies southeast.

        match fromAxis_S	the conduit lies south.

        match fromAxis_SW	the conduit lies southwest.

        match fromAxis_W	the conduit lies west.

        match fromAxis_NW	the conduit lies northwest.

        match error_expanse	You cannot sense even a single thread of Lunar energy

        match error_dead	You are a ghost!

        put perceive

        matchwait



fromAxis_N:

    match wait_fromAxis_N	...wait

    match wait_fromAxis_N	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put north

    matchwait



fromAxis_NE:

    match wait_fromAxis_NE	...wait

    match wait_fromAxis_NE	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put northeast

    matchwait



fromAxis_E:

    match wait_fromAxis_E	...wait

    match wait_fromAxis_E	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put east

    matchwait



fromAxis_SE:

    match wait_fromAxis_SE	...wait

    match wait_fromAxis_SE	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put southeast

    matchwait



fromAxis_S:

    match wait_fromAxis_S	...wait

    match wait_fromAxis_S	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put south

    matchwait



fromAxis_SW:

    match wait_fromAxis_SW	...wait

    match wait_fromAxis_SW	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put southwest

    matchwait



fromAxis_W:

    match wait_fromAxis_W	...wait

    match wait_fromAxis_W	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put west

    matchwait



fromAxis_NW:

    match wait_fromAxis_NW	...wait

    match wait_fromAxis_NW	Sorry, you may only type

    match exitAP		You also see the silvery-white shard

    match fromAxis		Obvious exits: none.

    match atAxis		Obvious exits: north,

    match atAxis		Obvious exits: east,

    put northwest

    matchwait



exitAP:

    put prep moongate

    put focus %Destination%

    waitfor You focus your magical senses

    goto exitAP_cast

exitAP_cast:

    match wait_exitAP_cast	...wait

    match wait_exitAP_cast	Sorry, you may only type

    match harnessMana3		The spell goes awry!

    match release               You are pulled through

#    match release		You gesture.

    put cast %Destination%

    matchwait

release:

    put release

    pause 1

    echo Statistics:  %stepsToAxis% from %Start% to Axis

    echo Statistics:  %stepsFromAxis% from Axis to %Destination%

    exit











#################################

# Wait section

wait_harnessMana:

    pause 1

    goto harnessMana

wait_harnessMana2:

    pause 1

    goto harnessMana2

wait_harnessMana3:

    pause 1

    goto harnessMana3

wait_enterAP:

    pause 1

    goto enterAP

wait_toAxis1:

    pause 1

    goto toAxis1

wait_toAxis_N:

    pause 1

    goto toAxis_N

wait_toAxis_NE:

    pause 1

    goto toAxis_NE

wait_toAxis_E:

    pause 1

    goto toAxis_E

wait_toAxis_SE:

    pause 1

    goto toAxis_SE

wait_toAxis_S:

    pause 1

    goto toAxis_S

wait_toAxis_SW:

    pause 1

    goto toAxis_SW

wait_toAxis_W:

    pause 1

    goto toAxis_W

wait_toAxis_NW:

    pause 1

    goto toAxis_NW

wait_fromAxis1:

    pause 1

    goto fromAxis1

wait_fromAxis_N:

    pause 1

    goto fromAxis_N

wait_fromAxis_NE:

    pause 1

    goto fromAxis_NE

wait_fromAxis_E:

    pause 1

    goto fromAxis_E

wait_fromAxis_SE:

    pause 1

    goto fromAxis_SE

wait_fromAxis_S:

    pause 1

    goto fromAxis_S

wait_fromAxis_SW:

    pause 1

    goto fromAxis_SW

wait_fromAxis_W:

    pause 1

    goto fromAxis_W

wait_fromAxis_NW:

    pause 1

    goto fromAxis_NW

wait_exitAP_cast:

    pause 1

    goto exitAP_cast







#####################################

# Errors

error_NoArguments:

    echo

    echo ERROR:  This script requires a name for your destination.

    echo         Please see the starting text for a list.

    echo         Proper usage is ".ap destination"

    echo

    exit

error_badStart:

    echo

    echo ERROR:  You are not at a known Grazhir shard

    echo         and this script cannot be used for the 100th circle ability.

    echo

    exit

error_expanse:

    echo

    echo *** Uh oh, you're trapped in the grey expanse.

    echo *** You may get out, but it isn't likely.  Good luck!

    echo

    echo Statistics:  %stepsToAxis% from %Start% to Axis

    echo Statistics:  %stepsFromAxis% from Axis to %Destination%

    exit

error_dead:

    echo

    echo *** Uh oh, you didn't survive this trip.

    echo *** I hope the empath likes extra crispy!

    echo

    echo Statistics:  %stepsToAxis% from %Start% to Axis

    echo Statistics:  %stepsFromAxis% from Axis to %Destination%

    exit

labelError:

    echo

    echo ERROR:  You did not type in a valid name for your destination.

    echo         Please see the starting text for a list.

    echo         If you did type in a listed destination or got this error

    echo         while already moving, this this is a bug with the script's labels.

    echo

    exit