metas/af/hunting.af
Erik 7a37c0d5b0
All checks were successful
/ test (push) Successful in 24s
restructure metas and add augment service support
2026-03-11 17:27:46 +01:00

220 lines
5.6 KiB
Text

~~ {
~~ Hunting Meta - Solo lifestone grinding with death recovery, restock, and stuck detection
~~
~~ File auto-generated by metaf, a program created by Eskarina of Morningthaw/Coldeve.
~~ Get metaf here: https://github.com/JJEII/metaf/
~~
~~ All recognized structural designators:
~~ STATE: DO:
~~ IF: NAV:
~~
~~ All recognized CONDITION (IF:) operation keywords:
~~ Never NavEmpty MobsInDist_Priority Not
~~ Always Death NeedToBuff PSecsInStateGE
~~ All VendorOpen NoMobsInDist SecsOnSpellGE
~~ Any VendorClosed BlockE BuPercentGE
~~ ChatMatch ItemCountLE CellE DistToRteGE
~~ MainSlotsLE ItemCountGE IntoPortal Expr
~~ SecsInStateGE MobsInDist_Name ExitPortal ChatCapture
~~
~~ All recognized ACTION (DO:) operation keywords:
~~ None EmbedNav ChatExpr SetOpt
~~ SetState CallState SetWatchdog CreateView
~~ Chat Return ClearWatchdog DestroyView
~~ DoAll DoExpr GetOpt DestroyAllViews
~~
~~ All recognized NAV types:
~~ circular follow
~~ linear once
~~
~~ All recognized NAV NODE types:
~~ flw vnd
~~ pnt ptl
~~ rcl tlk
~~ pau chk
~~ cht jmp
~~ prt (deprecated in VTank)
~~ }
STATE: {Default} ~~ {
IF: Always
DO: DoAll
Chat {/vt opt set enablebuffing true}
Chat {/vt opt set enablenav true}
Chat {/vt opt set enablecombat true}
Chat {/vt opt set enablelooting true}
Chat {/vt opt set navpriorityboost false}
Chat {/vt opt set lootpriorityboost true}
Chat {/vt nav load hunt_circuit}
SetState {Hunt}
~~ }
STATE: {Hunt} ~~ {
IF: Death
DO: SetState {Death}
IF: All
ItemCountLE 20 {Prismatic Taper}
NoMobsInDist 5
DO: DoAll
Chat {/a Low on tapers, heading to vendor.}
SetState {Restock}
IF: All
ItemCountLE 20 {Scarab}
NoMobsInDist 5
DO: DoAll
Chat {/a Low on scarabs, heading to vendor.}
SetState {Restock}
IF: MainSlotsLE 3
DO: DoAll
Chat {/a Inventory full, heading to vendor.}
SetState {Restock}
IF: NeedToBuff
DO: DoAll
Chat {/vt opt set enablenav false}
Chat {/vt opt set enablecombat false}
SetState {Buffing}
IF: Always
DO: SetWatchdog 3 120 {Stuck}
IF: DistToRteGE 500
DO: SetState {Stuck}
IF: MobsInDist_Name 1 12 {}
DO: DoAll
Chat {/vt opt set enablecombat true}
IF: NoMobsInDist 12
DO: DoAll
Chat {/vt opt set enablecombat false}
IF: NavEmpty
DO: DoAll
Chat {/vt nav load hunt_circuit}
Chat {/vt opt set enablenav true}
~~ }
STATE: {Death} ~~ {
IF: Always
DO: DoAll
Chat {/vt opt set enablecombat false}
Chat {/vt opt set enablenav false}
Chat {/a I died! Recovering...}
IF: SecsInStateGE 5
DO: DoAll
Chat {/vt opt set enablebuffing true}
SetState {DeathRecovery}
~~ }
STATE: {DeathRecovery} ~~ {
IF: Always
DO: DoAll
Chat {/vt nav load ls_to_hunt}
Chat {/vt opt set enablenav true}
Chat {/vt opt set enablecombat false}
IF: NeedToBuff
DO: DoAll
Chat {/vt opt set enablenav false}
SetState {Buffing}
IF: NavEmpty
DO: DoAll
Chat {/vt nav load hunt_circuit}
Chat {/vt opt set enablecombat true}
SetState {Hunt}
IF: Always
DO: SetWatchdog 3 300 {Stuck}
~~ }
STATE: {Buffing} ~~ {
IF: Always
DO: DoAll
Chat {/vt opt set enablebuffing true}
Chat {/vt opt set enablecombat false}
Chat {/vt opt set enablenav false}
IF: All
Not NeedToBuff
NoMobsInDist 5
DO: DoAll
Chat {/vt opt set enablenav true}
Chat {/vt opt set enablecombat true}
SetState {Hunt}
IF: SecsInStateGE 180
DO: DoAll
Chat {/vt opt set enablenav true}
Chat {/vt opt set enablecombat true}
SetState {Hunt}
~~ }
STATE: {Restock} ~~ {
IF: Death
DO: SetState {Death}
IF: Always
DO: DoAll
Chat {/vt opt set enablecombat false}
Chat {/vt opt set enablelooting false}
Chat {/vt nav load hunt_to_vendor}
Chat {/vt opt set enablenav true}
IF: Always
DO: SetWatchdog 3 300 {Stuck}
IF: NavEmpty
DO: SetState {AtVendor}
~~ }
STATE: {AtVendor} ~~ {
IF: Death
DO: SetState {Death}
IF: VendorOpen
DO: DoAll
Chat {/vt opt set enablenav false}
IF: All
VendorClosed
ItemCountGE 200 {Prismatic Taper}
ItemCountGE 200 {Scarab}
DO: DoAll
Chat {/a Restocked, heading back to hunt.}
Chat {/vt nav load vendor_to_hunt}
Chat {/vt opt set enablenav true}
SetState {ReturnToHunt}
IF: SecsInStateGE 120
DO: DoAll
Chat {/a Vendor timeout, returning to hunt.}
Chat {/vt nav load vendor_to_hunt}
Chat {/vt opt set enablenav true}
SetState {ReturnToHunt}
~~ }
STATE: {ReturnToHunt} ~~ {
IF: Death
DO: SetState {Death}
IF: Always
DO: DoAll
Chat {/vt opt set enablecombat false}
IF: Always
DO: SetWatchdog 3 300 {Stuck}
IF: NeedToBuff
DO: DoAll
Chat {/vt opt set enablenav false}
SetState {Buffing}
IF: NavEmpty
DO: DoAll
Chat {/vt nav load hunt_circuit}
Chat {/vt opt set enablecombat true}
Chat {/vt opt set enablelooting true}
SetState {Hunt}
~~ }
STATE: {Stuck} ~~ {
IF: Always
DO: DoAll
Chat {/a I appear to be stuck, attempting recovery.}
Chat {/vt opt set enablenav false}
Chat {/vt opt set enablecombat false}
IF: SecsInStateGE 3
DO: DoAll
Chat {/vt nav load ls_to_hunt}
Chat {/vt opt set enablenav true}
SetState {StuckRecovery}
~~ }
STATE: {StuckRecovery} ~~ {
IF: Death
DO: SetState {Death}
IF: Always
DO: SetWatchdog 3 300 {Stuck}
IF: NeedToBuff
DO: DoAll
Chat {/vt opt set enablenav false}
SetState {Buffing}
IF: NavEmpty
DO: DoAll
Chat {/vt nav load hunt_circuit}
Chat {/vt opt set enablecombat true}
Chat {/vt opt set enablelooting true}
SetState {Hunt}
~~ }