Advertisement
Guest User

Untitled

a guest
May 4th, 2016
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 30.60 KB | None | 0 0
  1. #debuglevel 10
  2.  
  3. setvariable include %1
  4.  
  5. var gems morganite|agate|alex andrite|amethyst|andalusite|aquamarine|bead|beryl|bloodgem|bloodstone|carnelian|chrysoberyl|carnelian|chalcedony|chrysoberyl|chrysoprase|citrine|coral|crystal|diamond|diopside|emerald|egg|eggcase|garnet|gem|goldstone|glossy malachite|opal|pearl|pebble|peridot|quartz|ruby|sapphire|spinel|star-stone|sunstone|talon|tanzanite|topaz|tourmaline|tsavorite|turquoise|zircon|granite|hematite|iolite|ivory|jade|jasper|kunzite|lapis lazuli|malachite stone|moonstone|morganite|onyx
  6. var otherloot scroll|tablet|vellum|sheiska leaf|ostracon|hhr'lav'geluhh bark|papyrus roll|smudged parchment|map|seishaka leaf|stones|kertig ingot|kertig bar|kertig tear|kertig fist|glaes fragment|glaes shard|glaes ingot|damite lump|damite ingot|damite bar|glaes bar|haralun lump|haralum ingot|haralun bar|animite bar|animite nugget|animite bar|tyrium bar|tyrium nugget|tyrium fragment|tyrium shard|tyrium ingot|silversteel bar|silversteel ingot|silversteel nugget|icesteel bar| ring | platinum nugget
  7. var boxtypes skippet|strongbox|chest|crate|caddy|coffer|casket|trunk|box
  8.  
  9. ######## ACTIONS
  10. action put exit when stunning you
  11. action put exit when You are dead
  12. action put exit when Your body will decay
  13. action put stand when eval $standing == 0
  14. action put #echo >Log #FF00FF Rank Increase: $2 when You've gained a new rank in (using|your knowledge of|your understanding of|your) (.*)
  15.  
  16. gosub ConfigureVariables
  17.  
  18. if ("%include" = "bar") then
  19. {
  20. include bargrim.inc
  21. }
  22.  
  23.  
  24. if ("%include" = "razhak") then
  25. {
  26. include razhak.inc
  27. }
  28.  
  29.  
  30. if ("%include" = "hotoke") then
  31. {
  32. include hotoke.inc
  33. }
  34.  
  35. if ("%include" = "pranxb") then
  36. {
  37. include pranxbig.inc
  38. }
  39.  
  40.  
  41. if ("%include" = "pranxs") then
  42. {
  43. include pranxsmall.inc
  44.  
  45. }
  46.  
  47.  
  48. if ("%include" = "coulinb") then
  49. {
  50. include coulinbig.inc
  51. }
  52.  
  53.  
  54. if ("%include" = "coulins") then
  55. {
  56. include coulinsmall.inc
  57. }
  58.  
  59.  
  60. if ("%include" = "dreadb") then
  61. {
  62. include dreadbig.inc
  63. }
  64.  
  65.  
  66. if ("%include" = "dreads") then
  67. {
  68. include dreadsmall.inc
  69. }
  70.  
  71. put info
  72. pause 0.4
  73. put exp all
  74. pause 0.4
  75.  
  76.  
  77. boxcheck:
  78. var holder back
  79. put store box in back
  80. match checkback You will need to be wearing the backpack to store things in it.
  81. match mainloop You will now store boxes in your backpack.
  82. match storepack I could not find that
  83. matchwait
  84.  
  85. checkback:
  86. put get back from haver
  87. match wearback You get a
  88. match storepack You pull at it
  89. match storepack What were you
  90. matchwait
  91.  
  92. storepack:
  93. var holder pack
  94. put store box in pack
  95. goto mainloop
  96.  
  97. wearback:
  98. put wear my back
  99. goto boxcheck
  100.  
  101.  
  102.  
  103.  
  104. mainloop:
  105. gosub GetWeaponRate xbow
  106. if (%xbow.on) && (%weaponrate < %learningrate ) then gosub FightLoop xbow %xbow.type
  107. gosub GetWeaponRate bow
  108. if (%bow.on) && (%weaponrate < %learningrate) then gosub FightLoop bow %bow.type
  109. gosub GetWeaponRate sling
  110. if (%sling.on) && (%weaponrate < %learningrate) then gosub FightLoop sling %sling.type
  111. gosub GetWeaponRate staves
  112. if (%staves.on) && (%weaponrate < %learningrate) then gosub FightLoop staves %staves.type
  113. gosub GetWeaponRate se
  114. if (%se.on) && (%weaponrate < %learningrate) then gosub FightLoop se %se.type
  115. gosub GetWeaponRate le
  116. if (%le.on) && (%weaponrate < %learningrate) then gosub FightLoop le %le.type
  117. gosub GetWeaponRate 2he
  118. if (%2he.on) && (%weaponrate < %learningrate) then gosub FightLoop 2he %2he.type
  119. gosub GetWeaponRate sb
  120. if (%sb.on) && (%weaponrate < %learningrate) then gosub FightLoop sb %sb.type
  121. gosub GetWeaponRate lb
  122. if (%lb.on) && (%weaponrate < %learningrate) then gosub FightLoop lb %lb.type
  123. gosub GetWeaponRate 2hb
  124. if (%2hb.on) && (%weaponrate < %learningrate) then gosub FightLoop 2hb %2hb.type
  125. gosub GetWeaponRate pole
  126. if (%pole.on) && (%weaponrate < %learningrate) then gosub FightLoop pole %pole.type
  127. gosub GetWeaponRate lt
  128. if (%lt.on) && (%weaponrate < %learningrate) then gosub FightLoop lt %lt.type
  129. gosub GetWeaponRate ht
  130. if (%ht.on) && (%weaponrate < %learningrate) then gosub FightLoop ht %ht.type
  131. gosub GetWeaponRate brawl
  132. if (%brawl.on) && (%weaponrate < %learningrate) then gosub FightLoop brawl brawl
  133.  
  134. if (%learningrate = 33) then goto done.exit.%loop
  135. evalmath learningrate %learningrate + 9
  136. if (%learningrate > 33) then goto done.lastrun
  137. goto mainloop
  138.  
  139. ######## SUBROUTINES
  140. FightLoop:
  141. var weapon $1
  142. var type $2
  143. gosub GetWeaponRank %weapon
  144. if (%weaponrank <= %maxranks) && (%weaponrank >= %minranks) then
  145. {
  146. gosub StartNewWeapon
  147. if ("%type" = "melee") then
  148. {
  149. gosub SetStance %melee.stance
  150. gosub GetWeapon %%weapon.weapon %%weapon.worn %%weapon.container %%weapon.swap %weapon %%weapon.offhand
  151. gosub FightMelee %weapon %%weapon.weapon %%weapon.offhand
  152. gosub StowWeapon %%weapon.weapon %%weapon.worn %%weapon.container
  153. }
  154. if ("%type" = "ranged") then
  155. {
  156. gosub SetStance %ranged.stance
  157. gosub GetWeapon %%weapon.weapon %%weapon.worn %%weapon.container 0 %weapon 0
  158. gosub FightRanged %weapon %%weapon.weapon %%weapon.aim %%weapon.ammo
  159. gosub StowWeapon %%weapon.weapon %%weapon.worn %%weapon.container
  160. }
  161. if ("%type" = "thrown") then
  162. {
  163. gosub SetStance %thrown.stance
  164. gosub GetWeapon %%weapon.weapon %%weapon.worn %%weapon.container 0 %weapon %%weapon.offhand
  165. gosub FightThrown %weapon %%weapon.weapon %%weapon.offhand
  166. gosub StowWeapon %%weapon.weapon %%weapon.worn %%weapon.container
  167. }
  168. if ("%type" = "brawl") then
  169. {
  170. gosub SetStance %melee.stance
  171. gosub FightMelee brawl brawl
  172. }
  173. }
  174. return
  175.  
  176.  
  177. SortWeapons:
  178. var SORTweaponnumber 100
  179. var SORTfirst 100
  180. var SORTlast 100
  181. var z 0
  182. gosub GetWeaponRank xbow
  183. var weapon.%SORTweaponnumber.key xbow
  184. var weapon.%SORTweaponnumber.value %weaponrank
  185. var weapon.%SORTweaponnumber.next <nothing>
  186. var weapon.%SORTweaponnumber.previous <nothing>
  187. gosub NextWeapon bow
  188. gosub NextWeapon sling
  189. gosub NextWeapon se
  190. gosub NextWeapon lt
  191. gosub NextWeapon ht
  192. gosub NextWeapon brawl
  193. gosub NextWeapon staves
  194. gosub NextWeapon le
  195. gosub NextWeapon 2he
  196. gosub NextWeapon sb
  197. gosub NextWeapon lb
  198. gosub NextWeapon 2hb
  199. gosub NextWeapon pole
  200.  
  201. var weapon1 %weapon.%SORTfirst.key
  202. var z %weapon.%SORTfirst.next
  203. var weapon2 %weapon.%z.key
  204. var z %weapon.%z.next
  205. var weapon3 %weapon.%z.key
  206. var z %weapon.%z.next
  207. var weapon4 %weapon.%z.key
  208. var z %weapon.%z.next
  209. var weapon5 %weapon.%z.key
  210. var z %weapon.%z.next
  211. var weapon6 %weapon.%z.key
  212. var z %weapon.%z.next
  213. var weapon7 %weapon.%z.key
  214. var z %weapon.%z.next
  215. var weapon8 %weapon.%z.key
  216. var z %weapon.%z.next
  217. var weapon9 %weapon.%z.key
  218. var z %weapon.%z.next
  219. var weapon10 %weapon.%z.key
  220. var z %weapon.%z.next
  221. var weapon11 %weapon.%z.key
  222. var z %weapon.%z.next
  223. var weapon12 %weapon.%z.key
  224. var z %weapon.%z.next
  225. var weapon13 %weapon.%z.key
  226. var z %weapon.%z.next
  227. var weapon14 %weapon.%z.key
  228. return
  229.  
  230.  
  231.  
  232. SetStance:
  233. var ss.stance $1
  234. if ("%ss.stance" = "%laststance") then goto SetStance.Done
  235. SetStance.Continue:
  236. pause 0.1
  237. match SetStance.Continue ...wait
  238. match SetStance.Done You are now set to use your
  239. send stance %ss.stance
  240. matchwait
  241. SetStance.Done:
  242. var laststance %ss.stance
  243. return
  244.  
  245.  
  246.  
  247.  
  248.  
  249. GetWeapon:
  250. var gw.weapon $1
  251. var gw.worn $2
  252. var gw.container $3
  253. var gw.swap $4
  254. var gw.type $5
  255. var gw.offhand $6
  256. GetWeapon.TryAgain:
  257. pause 0.1
  258. if ("%gw.worn" = "0") && !contains("%gw.container" , "nothing") && ("%gw.offhand" = "0") then
  259. {
  260. match GetWeapon.TryAgain ...wait
  261. match GetWeapon.Swap You draw out
  262. send wield %gw.weapon in my %gw.container
  263. matchwait
  264. }
  265. if ("%gw.worn" = "0") && !contains("%gw.container" , "nothing") && ("%gw.offhand" = "1") then
  266. {
  267. match GetWeapon.TryAgain ...wait
  268. match GetWeapon.Swap You draw out
  269. send wield left %gw.weapon in my %gw.container
  270. matchwait
  271. }
  272. if ("%gw.worn" = "0") && contains("%gw.container" , "nothing") && ("%gw.offhand" = "0") then
  273. {
  274. match GetWeapon.TryAgain ...wait
  275. match GetWeapon.Swap You draw out
  276. send wield %gw.weapon
  277. matchwait
  278. }
  279. if ("%gw.worn" = "0") && contains("%gw.container" , "nothing") && ("%gw.offhand" = "1") then
  280. {
  281. match GetWeapon.TryAgain ...wait
  282. match GetWeapon.Swap You draw out
  283. send wield left %gw.weapon
  284. matchwait
  285. }
  286. if ("%gw.worn" = "1") then
  287. {
  288. match GetWeapon.TryAgain ...wait
  289. match GetWeapon.Swap You
  290. send remove my %gw.weapon
  291. matchwait
  292. }
  293. GetWeapon.Swap:
  294. if ("%gw.swap" = "1") then
  295. {
  296. gosub swap %gw.weapon %gw.type
  297. }
  298. return
  299.  
  300. FightMelee:
  301. var fm.type $1
  302. var fm.weapon $2
  303. var fm.offhand $3
  304. FightMelee.Continue:
  305. gosub GetWeaponRate %fm.type
  306. if (%weaponrate < %learningrate) then
  307. {
  308. gosub CheckStamina
  309. gosub StealthTime
  310. gosub AttackCritter %fm.offhand
  311. gosub DeadCritter
  312. gosub GetAmmo
  313. goto FightMelee.Continue
  314. }
  315. return
  316.  
  317. FightRanged:
  318. var fr.type $1
  319. var fr.weapon $2
  320. var fr.aim $3
  321. var fr.ammo $4
  322. FightRanged.Continue:
  323. gosub GetWeaponRate %fr.type
  324. if (%weaponrate < %learningrate) then
  325. {
  326.  
  327. gosub CheckStamina
  328. gosub ShootCritter %fr.ammo
  329. gosub DeadCritter
  330. gosub GetAmmo
  331. goto FightRanged.Continue
  332. }
  333. return
  334.  
  335. FightThrown:
  336. var ft.type $1
  337. var ft.weapon $2
  338. var ft.offhand $3
  339. FightThrown.Continue:
  340. gosub GetWeaponRate %ft.type
  341. if (%weaponrate < %learningrate) then
  342. {
  343. gosub CheckStamina
  344. gosub ThrowCritter %ft.weapon %ft.offhand
  345. gosub DeadCritter
  346. gosub GetAmmo
  347. goto FightThrown.Continue
  348. }
  349. return
  350.  
  351. StowWeapon:
  352. var sw.weapon $1
  353. var sw.worn $2
  354. var sw.container $3
  355. StowWeapon.TryAgain:
  356. pause 0.1
  357. if ("%sw.worn" = "0") && !contains("%sw.container" , "nothing") then
  358. {
  359. match StowWeapon.TryAgain ...wait
  360. match StowWeapon.Return You put
  361. send stow my %sw.weapon in my %sw.container
  362. matchwait
  363. }
  364. if ("%sw.worn" = "0") && contains("%sw.container" , "nothing") then
  365. {
  366. match StowWeapon.TryAgain ...wait
  367. match StowWeapon.Return You put
  368. send stow my %sw.weapon
  369. matchwait
  370. }
  371. match StowWeapon.TryAgain ...wait
  372. match StowWeapon.Return You sling
  373. send wear my %sw.weapon
  374. matchwait
  375. StowWeapon.Return:
  376. pause 0.1
  377. return
  378.  
  379. GetSkillRank:
  380. var gsr.type $1
  381. if ("%gsr.type" = "outdoor") then
  382. {
  383. var skillrank 0
  384. return
  385. }
  386. if ("%gsr.type" = "firstaid") then
  387. {
  388. var skillrank 0
  389. return
  390. }
  391. var skillrank 1000
  392. return
  393.  
  394. GetSkillRate:
  395. var gsr.type $1
  396. if ("%gsr.type" = "outdoor") then
  397. {
  398. var skillrate $Outdoorsmanship.LearningRate
  399. return
  400. }
  401. if ("%gsr.type" = "firstaid") then
  402. {
  403. var skillrate $First_Aid.LearningRate
  404. return
  405. }
  406. var skillrate 1000
  407. return
  408.  
  409. GetWeaponRank:
  410. var gwr.type $1
  411. if ("%gwr.type" = "se") then
  412. {
  413. var weaponrank $Small_Edged.Ranks
  414. return
  415. }
  416. if ("%gwr.type" = "le") then
  417. {
  418. var weaponrank $Large_Edged.Ranks
  419. return
  420. }
  421. if ("%gwr.type" = "2he") then
  422. {
  423. var weaponrank $Twohanded_Edged.Ranks
  424. return
  425. }
  426. if ("%gwr.type" = "sb") then
  427. {
  428. var weaponrank $Small_Blunt.Ranks
  429. return
  430. }
  431. if ("%gwr.type" = "lb") then
  432. {
  433. var weaponrank $Large_Blunt.Ranks
  434. return
  435. }
  436. if ("%gwr.type" = "2hb") then
  437. {
  438. var weaponrank $Twohanded_Blunt.Ranks
  439. return
  440. }
  441. if ("%gwr.type" = "pole") then
  442. {
  443. var weaponrank $Polearms.Ranks
  444. return
  445. }
  446. if ("%gwr.type" = "xbow") then
  447. {
  448. var weaponrank $Crossbow.Ranks
  449. return
  450. }
  451. if ("%gwr.type" = "bow") then
  452. {
  453. var weaponrank $Bow.Ranks
  454. return
  455. }
  456. if ("%gwr.type" = "sling") then
  457. {
  458. var weaponrank $Slings.Ranks
  459. return
  460. }
  461. if ("%gwr.type" = "staves") then
  462. {
  463. var weaponrank $Staves.Ranks
  464. return
  465. }
  466. if ("%gwr.type" = "lt") then
  467. {
  468. var weaponrank $Light_Thrown.Ranks
  469. return
  470. }
  471. if ("%gwr.type" = "ht") then
  472. {
  473. var weaponrank $Heavy_Thrown.Ranks
  474. return
  475. }
  476. if ("%gwr.type" = "off") then
  477. {
  478. var weaponrank $Offhand_Weapon.Ranks
  479. return
  480. }
  481. if ("%gwr.type" = "brawl") then
  482. {
  483. var weaponrank $Brawling.Ranks
  484. return
  485. }
  486. var weaponrank 1000
  487. return
  488.  
  489. GetWeaponRate:
  490. var gwr.type $1
  491. if ("%gwr.type" = "se") then
  492. {
  493. var weaponrate $Small_Edged.LearningRate
  494. return
  495. }
  496. if ("%gwr.type" = "le") then
  497. {
  498. var weaponrate $Large_Edged.LearningRate
  499. return
  500. }
  501. if ("%gwr.type" = "2he") then
  502. {
  503. var weaponrate $Twohanded_Edged.LearningRate
  504. return
  505. }
  506. if ("%gwr.type" = "sb") then
  507. {
  508. var weaponrate $Small_Blunt.LearningRate
  509. return
  510. }
  511. if ("%gwr.type" = "lb") then
  512. {
  513. var weaponrate $Large_Blunt.LearningRate
  514. return
  515. }
  516. if ("%gwr.type" = "2hb") then
  517. {
  518. var weaponrate $Twohanded_Blunt.LearningRate
  519. return
  520. }
  521. if ("%gwr.type" = "pole") then
  522. {
  523. var weaponrate $Polearms.LearningRate
  524. return
  525. }
  526. if ("%gwr.type" = "xbow") then
  527. {
  528. var weaponrate $Crossbow.LearningRate
  529. return
  530. }
  531. if ("%gwr.type" = "bow") then
  532. {
  533. var weaponrate $Bow.LearningRate
  534. return
  535. }
  536. if ("%gwr.type" = "sling") then
  537. {
  538. var weaponrate $Slings.LearningRate
  539. return
  540. }
  541. if ("%gwr.type" = "staves") then
  542. {
  543. var weaponrate $Staves.LearningRate
  544. return
  545. }
  546. if ("%gwr.type" = "lt") then
  547. {
  548. var weaponrate $Light_Thrown.LearningRate
  549. return
  550. }
  551. if ("%gwr.type" = "ht") then
  552. {
  553. var weaponrate $Heavy_Thrown.LearningRate
  554. return
  555. }
  556. if ("%gwr.type" = "off") then
  557. {
  558. var weaponrate $Offhand_Weapon.LearningRate
  559. return
  560. }
  561. if ("%gwr.type" = "brawl") then
  562. {
  563. var weaponrate $Brawling.LearningRate
  564. return
  565. }
  566. var weaponrate 1000
  567. return
  568.  
  569. ConfigureVariables:
  570. var outdoor.on 1
  571. var firstaid.on 1
  572. var se.on 1
  573. var se.type melee
  574. var le.on 1
  575. var le.type melee
  576. var 2he.on 1
  577. var 2he.type melee
  578. var sb.on 1
  579. var sb.type melee
  580. var lb.on 1
  581. var lb.type melee
  582. var 2hb.on 1
  583. var 2hb.type melee
  584. var xbow.on 1
  585. var xbow.type ranged
  586. var bow.on 1
  587. var bow.type ranged
  588. var sling.on 1
  589. var sling.type ranged
  590. var staves.on 1
  591. var staves.type melee
  592. var pole.on 1
  593. var pole.type melee
  594. var lt.on 1
  595. var lt.type thrown
  596. var ht.on 1
  597. var ht.type thrown
  598. var brawl.on 1
  599. var brawl.type melee
  600. var weapon1 <nothing>
  601. var weapon2 <nothing>
  602. var weapon3 <nothing>
  603. var weapon4 <nothing>
  604. var weapon5 <nothing>
  605. var weapon6 <nothing>
  606. var weapon7 <nothing>
  607. var weapon8 <nothing>
  608. var weapon9 <nothing>
  609. var weapon10 <nothing>
  610. var weapon11 <nothing>
  611. var weapon12 <nothing>
  612. var weapon13 <nothing>
  613. var weapon14 <nothing>
  614. var weapon15 <nothing>
  615. ConfigureVariables.Continue:
  616. return
  617.  
  618.  
  619.  
  620. ConfigureMulti:
  621. var tempweapons $0
  622. var outdoor.on 0
  623. var firstaid.on 0
  624. var se.on 0
  625. var le.on 0
  626. var 2he.on 0
  627. var sb.on 0
  628. var lb.on 0
  629. var 2hb.on 0
  630. var xbow.on 0
  631. var bow.on 0
  632. var sling.on 0
  633. var staves.on 0
  634. var pole.on 0
  635. var lt.on 0
  636. var ht.on 0
  637. var brawl.on 0
  638. ConfigureMulti.Continue:
  639. if matchre("%tempweapons", "se") then gosub cm.se
  640. if matchre("%tempweapons", "le") then gosub cm.le
  641. if matchre("%tempweapons", "2he") then gosub cm.2he
  642. if matchre("%tempweapons", "sb") then gosub cm.sb
  643. if matchre("%tempweapons", "lb") then gosub cm.lb
  644. if matchre("%tempweapons", "2hb") then gosub cm.2hb
  645. if matchre("%tempweapons", "pole") then gosub cm.pole
  646. if matchre("%tempweapons", "sling") then gosub cm.sling
  647. if matchre("%tempweapons", "staves") then gosub cm.staves
  648. if matchre("%tempweapons", "lt") then gosub cm.lt
  649. if matchre("%tempweapons", "ht") then gosub cm.ht
  650. if matchre("%tempweapons", "xbow") then gosub cm.xbow
  651. if matchre("%tempweapons", "bow") then gosub cm.bow
  652. if matchre("%tempweapons", "brawl") then gosub cm.brawl
  653. if matchre("%tempweapons", "outdoor") then gosub cm.outdoor
  654. if matchre("%tempweapons", "firstaid") then gosub cm.firstaid
  655. return
  656.  
  657. cm.firstaid:
  658. var firstaid.on 1
  659. return
  660. cm.outdoor:
  661. var outdoor.on 1
  662. return
  663. cm.se:
  664. var se.on 1
  665. return
  666. cm.le:
  667. var le.on 1
  668. return
  669. cm.2he:
  670. var 2he.on 1
  671. return
  672. cm.sb:
  673. var sb.on 1
  674. return
  675. cm.lb:
  676. var lb.on 1
  677. return
  678. cm.2hb:
  679. var 2hb.on 1
  680. return
  681. cm.xbow:
  682. var xbow.on 1
  683. return
  684. cm.bow:
  685. var bow.on 1
  686. return
  687. cm.sling:
  688. var sling.on 1
  689. return
  690. cm.staves:
  691. var staves.on 1
  692. return
  693. cm.pole:
  694. var pole.on 1
  695. return
  696. cm.lt:
  697. var lt.on 1
  698. return
  699. cm.ht:
  700. var ht.on 1
  701. return
  702. return
  703. cm.brawl:
  704. var brawl.on 1
  705. return
  706.  
  707. ThrowCritter:
  708. var tc.weapon $1
  709. var tc.offhand $2
  710. pause 0.1
  711. if ("%tc.offhand" = "0") then
  712. {
  713. match ThrowCritter.wait There is nothing else to face!
  714. match ThrowCritter ...wait
  715. match ThrowCritter.done [Roundtime
  716. send lob
  717. }
  718. else
  719. {
  720. match ThrowCritter.wait There is nothing else to face!
  721. match ThrowCritter ...wait
  722. match ThrowCritter.done [Roundtime
  723. send lob left
  724. }
  725. matchwait
  726. ThrowCritter.wait:
  727. put app my pouch
  728. pause roundtime
  729. pause 10
  730. goto ThrowCritter
  731. ThrowCritter.done:
  732. gosub verb get my %tc.weapon
  733. return
  734.  
  735. AttackCritter:
  736. var ac.offhand $1
  737. attack:
  738. pause 0.1
  739. if ("%ac.offhand" = "1") then
  740. {
  741. match attack.continue You
  742. match attack ...wait
  743. match attack.wait There is nothing else to face
  744. send attack left
  745. matchwait
  746. }
  747. else
  748. {
  749. match attack.continue You
  750. match attack ...wait
  751. match attack.wait There is nothing else to face
  752. if ("%type" = "brawl") then
  753. {
  754. send attack
  755. }
  756. else
  757. {
  758. send feint
  759. }
  760. matchwait
  761. }
  762. attack.continue:
  763. if (%slow = 0) then goto attack.done
  764. pause %slow
  765. goto attack.done
  766. attack.wait:
  767. put app my pouch
  768. pause roundtime
  769. pause 10
  770. goto attack
  771. attack.done:
  772. return
  773.  
  774. StealthTime:
  775. if ("%Hiding" = "0") then return
  776. if ($Stealth.LearningRate > 28) then return
  777. put hide
  778. wait roundtime
  779. pause 0.1
  780. return
  781.  
  782.  
  783. DeadCritter:
  784. if matchre ("$roomobjs", "((which|that) appears dead|\(dead\))") then goto DeadCritter.skin
  785. return
  786.  
  787. DeadCritter.skin:
  788. if ("%skin" = "0") then goto DeadCritter.loot
  789. if ("$lefthand" = "Empty") then var whichhand left
  790. if ("$righthand" = "Empty") then var whichhand right
  791. gosub verb skin
  792. gosub verb empty %whichhand
  793. pause roundtime
  794. pause 0.1
  795. goto DeadCritter.loot
  796.  
  797.  
  798.  
  799. DeadCritter.loot:
  800. put loot
  801. match DeadCritter.loot can't do that while entangled in a web
  802. match DeadCritter.loot type ahead
  803. match DeadCritter.loot still stunned
  804. match DeadCritter.loot you don't feel like fighting
  805. match DeadCritter.loot ...wait
  806. match GetStuff could not find
  807. match GetStuff You search
  808. matchwait
  809.  
  810. GetStuff:
  811. if matchre("$roomobjs","%gems") then gosub GetGem
  812. if matchre("$roomobjs","%boxtypes") then gosub GetBox
  813. if matchre("$roomobjs","%otherloot") then gosub verb stow $0
  814. goto GetAmmo
  815.  
  816. GetGem:
  817. if ("%GetGem" = "0") then return
  818. if matchre("$roomobjs","%gems") then gosub verb stow $0
  819. if matchre("$roomobjs","%gems") then gosub verb stow $0
  820. if matchre("$roomobjs","%gems") then gosub verb stow $0
  821. return
  822.  
  823. GetBox:
  824. if ("%GetBox" = "0") then return
  825. if ("$lefthand" = "Empty") then var whichhand left
  826. if ("$righthand" = "Empty") then var whichhand right
  827. put stow box
  828. match GetBox type ahead
  829. match GetBox ...wait
  830. match GotBox cound not find
  831. match GotBox What were you
  832. match back how you arrange
  833. match back more room
  834. match GotBox You put your
  835. match GotBox Stow what?
  836. matchwait
  837.  
  838. back:
  839. if ("%holder" = "pack") then goto Dropbox
  840. gosub verb empty %whichhand
  841. pause 0.4
  842. put rem my back
  843. pause 0.4
  844. put tie back to pack
  845. pause 0.4
  846. put get back from haver
  847. match packstore cound not find
  848. match packstore You pull at it
  849. match backon You get a
  850. matchwait
  851.  
  852. backon:
  853. put wear my back
  854. pause 0.1
  855. put store box in back
  856. pause 0.1
  857. return
  858.  
  859. packstore:
  860. var holder pack
  861. put store box in pack
  862. pause 0.4
  863. put stow %whichhand
  864. return
  865.  
  866.  
  867. Dropbox:
  868. put empty %whichhand
  869. return
  870.  
  871. GotBox:
  872. return
  873.  
  874.  
  875. GetAmmo:
  876. GetAmmo.reset:
  877. if (matchre("$roomobjs", " bolt\.")) then goto GetAmmo.bolt
  878. if (matchre("$roomobjs", " rock\.")) then goto GetAmmo.rock
  879. if (matchre("$roomobjs", " arrow\.")) then goto GetAmmo.arrow
  880. if (matchre("$roomobjs", " bolt\,")) then goto GetAmmo.bolt
  881. if (matchre("$roomobjs", " rock\,")) then goto GetAmmo.rock
  882. if (matchre("$roomobjs", " arrow\,")) then goto GetAmmo.arrow
  883. if (matchre("$roomobjs", " shard\,")) then goto GetAmmo.shard
  884. if (matchre("$roomobjs", "gold coin,")) then goto GetAmmo.goldcoins
  885. if (matchre("$roomobjs", "gold coins,")) then goto GetAmmo.goldcoins
  886. goto GetAmmo.done
  887. GetAmmo.bolt:
  888. setvariable ammo bolt
  889. goto GetAmmo.stow
  890. GetAmmo.rock:
  891. setvariable ammo rock
  892. goto GetAmmo.stow
  893. GetAmmo.arrow:
  894. setvariable ammo arrow
  895. goto GetAmmo.stow
  896. GetAmmo.shard:
  897. setvariable ammo shard
  898. goto GetAmmo.stow
  899. GetAmmo.silvercoins:
  900. setvariable ammo silver coin
  901. goto GetAmmo.stow
  902. GetAmmo.goldcoins:
  903. setvariable ammo gold coin
  904. goto GetAmmo.stow
  905. GetAmmo.stow:
  906. GetAmmo.continue:
  907. match GetAmmo.continue ...wait
  908. match GetAmmo.reset Stow what?
  909. match GetAmmo.continue You
  910. put stow %ammo
  911. matchwait
  912. GetAmmo.done:
  913. return
  914.  
  915. ShootCritter:
  916. pause roundtime
  917. pause 0.1
  918. match ShootCritter.noammo You don't have the
  919. match ShootCritter.ammo You reach
  920. match fire already loaded with
  921. put load
  922. matchwait
  923. ShootCritter.ammo:
  924. pause roundtime
  925. put aim
  926. match shootnext You begin to target
  927. match shootwait ...wait
  928. match shootwait There is nothing else to face
  929. match shootwait You can't do
  930. match Shootcritter isn't loaded!
  931. matchwait
  932. shootwait:
  933. put hunt
  934. pause 8
  935. goto Shootcritter.ammo
  936. shootnext:
  937. if contains ("$guild", "Barbarian") then
  938. {
  939. send roar quiet embrace
  940. pause 2
  941. pause 0.1
  942. }
  943. if contains ("$guild", "Paladin") then
  944. {
  945. send prep fst
  946. send target
  947. pause 0.1
  948. pause 0.1
  949. }
  950. put bob
  951. pause 4
  952. if contains ("$guild", "Paladin") then
  953. {
  954. send cast
  955. pause 2
  956. pause 0.1
  957. pause 0.1
  958. }
  959. goto Shoot
  960. SHOOT:
  961. put shoot
  962. pause roundtime
  963. pause 0.2
  964. return
  965. ShootCritter.noammo:
  966. return
  967. fire:
  968. put shoot
  969. return
  970.  
  971.  
  972. StartNewWeapon:
  973. pause roundtime
  974. pause 0.1
  975. setvariable slow 0
  976. if ($Perception.LearningRate > 24) then goto PalPow
  977. put hunt
  978. pause roundtime
  979. pause 0.3
  980. return
  981. PalPow:
  982. if contains ("$guild", "Paladin") then
  983. {
  984. send pow
  985. pause roundtime
  986. pause 0.1
  987. }
  988. pause 0.1
  989. return
  990.  
  991. CheckStamina:
  992. CheckForCritter:
  993. if ($stamina < 65) then goto CheckForCritter.wait
  994. if ($stamina < 75) then goto CheckForCritter.slower
  995. goto CheckForCritter.done
  996. CheckForCritter.slower:
  997. evalmath slow %slow + 2
  998. echo **** Going slower! Fatigue dropping too fast!
  999. pause 10
  1000. goto CheckForCritter.done
  1001. CheckForCritter.wait:
  1002. evalmath slow %slow + 2
  1003. CheckForCritter.wait.continue:
  1004. echo **** Waiting for stamina! Fatigue dropping too fast!
  1005. pause 10
  1006. if ($stamina > 95) then goto CheckForCritter.done
  1007. goto CheckForCritter.wait.continue
  1008. CheckForCritter.done:
  1009. return
  1010.  
  1011. CollectStuff:
  1012. pause roundtime
  1013. pause 0.1
  1014. var cs.item $1
  1015. collect.continue:
  1016. match collect.retreat You cannot collect
  1017. match collect.kick The room is too cluttered
  1018. match collect.kick Roundtime
  1019. put collect %cs.item
  1020. matchwait
  1021. collect.retreat:
  1022. match collect.retreat You stop advancing
  1023. match collect.retreat You retreat back to pole range
  1024. match collect.retreat You retreat from combat.
  1025. match collect.continue You are already as far away
  1026. put retreat
  1027. matchwait
  1028. collect.kick:
  1029. pause roundtime
  1030. pause 0.1
  1031. match collect.kick ...wait
  1032. match collect.done I could not find what
  1033. match collect.done You take a step back and
  1034. put kick pile
  1035. matchwait
  1036. collect.done:
  1037. gosub GetSkillRate outdoor
  1038. if (%skillrate < %learningrate) then goto collect.continue
  1039. return
  1040.  
  1041. KhriPower:
  1042. khri.start:
  1043. if ($concentration > 70) then goto khri.continue
  1044. goto khri.end
  1045. khri.continue:
  1046. pause roundtime
  1047. pause 0.1
  1048. match khri.start but you feel your skill is lacking
  1049. match khri.start ...wait
  1050. match khri.end You're already using
  1051. match khri.end Roundtime
  1052. put khri start steady hasten guile
  1053. matchwait
  1054. khri.end:
  1055. pause roundtime
  1056. pause 0.1
  1057. return
  1058.  
  1059. SwapWeapon:
  1060. swap:
  1061. setvariable swap $2
  1062. setvariable swap.weapon $1
  1063. goto swap.%swap
  1064. swap.2he:
  1065. pause 0.1
  1066. match swap.d two-handed edged
  1067. match swap.2he two-handed blunt
  1068. match swap.2he heavy blunt
  1069. match swap.2he heavy edged
  1070. match swap.2he ...wait
  1071. put swap my %swap.weapon
  1072. matchwait
  1073. swap.2hb:
  1074. pause 0.1
  1075. match swap.d two-handed blunt
  1076. match swap.2hb two-handed edged
  1077. match swap.2hb heavy blunt
  1078. match swap.2hb heavy edged
  1079. match swap.2hb ...wait
  1080. put swap my %swap.weapon
  1081. matchwait
  1082. swap.lb:
  1083. pause 0.1
  1084. match swap.d heavy blunt
  1085. match swap.lb two-handed edged
  1086. match swap.lb two-handed blunt
  1087. match swap.lb heavy edged
  1088. match swap.lb ...wait
  1089. put swap my %swap.weapon
  1090. matchwait
  1091. swap.le:
  1092. pause 0.1
  1093. match swap.d heavy edged
  1094. match swap.le two-handed edged
  1095. match swap.le two-handed blunt
  1096. match swap.le heavy blunt
  1097. match swap.le ...wait
  1098. put swap my %swap.weapon
  1099. matchwait
  1100. swap.d:
  1101. return
  1102.  
  1103. StudyCompendium:
  1104. pause 0.1
  1105. match StudyCompendium ...wait
  1106. match StudyCompendium.Open You get a
  1107. send get my comp
  1108. matchwait
  1109. StudyCompendium.Open:
  1110. pause 0.1
  1111. match StudyCompendium.Open ...wait
  1112. match StudyCompendium.Study You open your
  1113. send open my comp
  1114. matchwait
  1115. StudyCompendium.Study:
  1116. match StudyCompendium.Open You carefully examine
  1117. match StudyCompendium.FirstTurn Why do you need to
  1118. match StudyCompendium.Next Roundtime
  1119. send study my comp
  1120. matchwait
  1121. StudyCompendium.FirstTurn:
  1122. pause 0.1
  1123. match StudyCompendium.FirstTurn ...wait
  1124. match StudyCompendium.SecondStudy You turn to
  1125. send turn my comp
  1126. matchwait
  1127. StudyCompendium.SecondStudy:
  1128. match StudyCompendium.Close Why do you need to
  1129. match StudyCompendium.Next Roundtime
  1130. send study my comp
  1131. matchwait
  1132. StudyCompendium.Next:
  1133. pause 0.1
  1134. match StudyCompendium.Next ...wait
  1135. match StudyCompendium.Check You turn to
  1136. send turn my comp
  1137. matchwait
  1138. StudyCompendium.Check:
  1139. if ($First_Aid.LearningRate >= %learningrate) then goto StudyCompendium.Close
  1140. goto StudyCompendium.Study
  1141. StudyCompendium.Close:
  1142. pause 0.1
  1143. match StudyCompendium.Close ...wait
  1144. match StudyCompendium.Stow You close your
  1145. put close my comp
  1146. matchwait
  1147. StudyCompendium.Stow:
  1148. send stow my comp
  1149. pause 0.1
  1150. return
  1151.  
  1152. verb:
  1153. setvariable verb $0
  1154. goto verb.a
  1155. verb.p:
  1156. pause 0.5
  1157. verb.a:
  1158. if $webbed = 1 then goto verb.p
  1159. if $stunned = 1 then goto verb.p
  1160. pause 0.1
  1161. put %verb
  1162. match verb.p your bindings make it impossible to hide
  1163. match verb.p type ahead
  1164. match verb.p ...wait
  1165. match verb.p You aren't close enough
  1166. match verb.p still stunned
  1167. match verb.p you don't feel like fighting
  1168. match verb.p can't do that while entangled in a web
  1169. matchre verb.d (skin briefly withers and tightens|fluid and stealthy movements|lick the tip of your finger and trace|Having no further use|You focus on infusing|You secure|You focus on manipulating|You lack the necessary|You release an accompaniment|The first gentle notes|You let your voice fade|You begin to chant a mesmerizing|With a rising crescendo in your voice|You begin your enchante|The air gradually stills|With a sharp cut to your voice|A few fleeting|You begin to hum the soothing|marches off and become gradually quieter|With a resounding|As your rendition of|You release an accompaniment|You begin to sing|flick of your wrist you stealthily unsheathe|Praying for|eyes darken to black as a starless night|release an accompaniment of elemental air|begin to chant a mesmerizing cadence designed|into your bundle|You release an accompaniment of elemental fire|you begin to chant the rhythm that heralds|trace a careful sigil|You raise your arms skyward|mutter a foul-sounding phrase to yourself|trace a curving sigil|that is already in your inventory|determine anything about this creature|mutter blasphemies to yourself|already dead|mutter incoherently to yourself while preparing|wailing of lost souls accompanies|has already been arranged|blue frost crackles up your arms|you can't arrange|Your heart skips a beat|newfound fluidity of your mind|orange flames blaze between your fingertips|You deftly|You strap|You stuff|With calm movements|You attach|You remove|You can also|Smiling slyly|not ready|You clench your hands|You hold out your arms to either side as|You fade in|You whisper the final word of your spell so that none may notice your effort|too cluttered|Stalk what|You clap|You speak|Arrange what|With rigid movements|You close yours eyes|With tense movements|You let your concentration|You make a holy gesture|cannot be skinned|You find yourself unable to hunt|could not find what|You clap your hands|You easily strap|That area is not bleeding|You take a step back|could not find what|You strain, but cannot focus your mind|You attempt to relax your mind|You get|You put|STOW HELP|You push|think pushing that would have any effect|You move|You're already using the Sight|You have not recovered from your previous use|careful focus, you adjust your eyes to see in shadow as they|You close your eyes|You must be|You're not ready to do that again|was just recently mined by someone else|Roundtime|area has already been tended to|work carefully at tending your wound|The spell pattern collapses|You are unable to control|not damaged enough to warrant repair|cannot figure out how to do that|You're not ready to do that|Drink what|What were you referring|You eat|You drink|You stand|Your analysis has revealed no additional resources|You look around, but can't see any place to hide yourself|stalking|following|already hidden|You pick up|You cannot|You gesture|You trace a hasty sigil in the air|is now set at|You detach|You snuff|You sling|You begin chanting|You bend|You are already|Quietly touching|You recite| turns up fruitless|You pour|You sprinkle|already stand|You grind|You feel warmth|already empty|You recall|You struggle|You open|You turn|You raise|Skin what|You reach for its center and forge a magical link to it|You trace an angular sigil|cannot produce|You drop|already been skinned|before you arrange|inherently stealthy endeavor|try being out of sight|cannot muster enough energy to vocalize|cannot collect anything|Setting your|You trace a geometric sigil|don't have a spell prepared|already preparing|already fully prepared|preparing a spell|harnessing any mana|You aren't preparing|You slip|no matter how you arrange it|There isn't any more room|With meditative movements)
  1170. matchwait
  1171. verb.d:
  1172. return
  1173.  
  1174. done.lastrun:
  1175. setvariable learningrate 33
  1176. goto mainloop
  1177.  
  1178. done.exit.1:
  1179. pause 20
  1180. if $Crossbow.LearningRate < 30 then goto done.lastrun
  1181. goto done.exit.1
  1182.  
  1183. done.exit.0:
  1184. pause roundtime
  1185. pause 0.1
  1186. pause 0.1
  1187. put loot
  1188. pause 0.1
  1189. put loot
  1190. pause 0.1
  1191. put loot
  1192. pause 0.1
  1193. gosub GetAmmo
  1194. exit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement