-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdisarm.cmd
5455 lines (5357 loc) · 244 KB
/
disarm.cmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#debuglevel 5
################################################################################################################################
################################################################################################################################
# Smart Disarm Script v14.9 - by Shroom
# UPDATE - 4/7/24
#
# Specialized for thieves, works for anyone
# - Auto Disarms and Picks / Loots all your boxes
# - Analyzes the appraisal difficulty of the trap compared to what type of trap it is
# - Dynamically changes MODE of disarm (Blind, Quick, Normal, Careful) according to how difficult trap is
# - Tosses box if trap is WAY too hard, or if you fail too many times in a row
# - Handles BLOWN TRAPS (determines what kind of trap it was, reacts/gets healed accordingly)
# - Handles ALL types of Lockpick Rings/Cases
# - Tracks total number of boxes picked per session and total boxes picked over ALL TIME running the script
# - Tracks total number of TRAP TYPES you've found over all time
#
## NOTE!! YOU ~MUST~ SET YOUR CHARACTER SPECIFIC VARIABLES IN THE SECOND SCRIPT - disarm-vars.inc
## IF YOU DO NOT SETUP THE VARIABLES IN disarm-vars.inc THEN THIS SCRIPT WILL NOT WORK
#
# SPECIAL FEATURE:
# - BOX POPPER BOT / PICK BOXES FOR OTHER PEOPLE
# Start script with .disarm NAME
# "Name" being the name of the person you are picking boxes for
# It will whisper to them, wait for a box, pick it and hand it back to them until finished
#
################################################################################################################################
# CHANGELOG
#
# - Speedups and various tweaks
# - Added double tending for bleeders in case of Internal bleeders
# - Overhauled lockpick ring check
# - Added support for decorative keyring and tailrings from Droughtmans
# - Will now loot collector's cards it finds
# - Script will now track total trap types you find each run!
# - Will also keep a GLOBAL variable for each trap type and add up on each run
# - Added support for Vardite Skeleton Keys
# - Added support for portal bags
# - Added logic to Auto switch to careful mode when doing dangerous trap > 6 difficulty
# - Added support for Exoskeletal Armor
# - Added gosub for stowing lockpick after filling container
# - Empaths should escape to healer if blowing a reaper box
# - Fixed issue if gem pouch was worn
# - Removed all instances of Pet Boxes and Pet Box support as no longer valid
# - Added Support for "tool box" type lockpick rings
# - Added Support for Thieves Auto-Selling Trap Components - if keepcomponent is ON
# - Broke out variables into a separate include - disarm-vars.inc
# - Added support for the New Ankle-Cuff lockpick case, and checking for Golden Keys as well when checking what type of lockpick ring/case
# - Added matches for EVERY box type when already disarmed, for the Pet Boxes mode to make 100% sure a box is disarmed before picking it
# - Added TieContainer / TieContainer.Items - For toolstraps/toolbelts etc that you always want to tie a particular item to
# - Robustified the box matching to avoid false positives on anything that is NOT a monster box
# - Robustified the TRAP RECOVERY section
# - Added variable to put armor back on at the end (if it removes any at the beginning)
# - Added variable for WORN gem pouches, so script will work with worn pouches instead of pulling them from a container
# - Cleaned up/Optimized a ton of code - changed all script variable checks (toupper). Now variables don't have to be in all caps.
# - Robustified the guild check section, armor check section. Now checks for hand armor as part of the armor check
# - SPECIAL REQUEST - PICK BOXES FOR OTHERS! Simply start the script by using the player's name as a variable
# Example - .disarm Bob - will wait for boxes from Bob, disarm and pick them and give them back to Bob. (THIS IGNORES IF YOU ARE MIND LOCKED)
# - ADDED Much better multi character support - Now can easily set different variables for different characters.
# - Added new variable <autoheal> - Set to YES by default. Set to NO if you want to skip visiting the auto-empath if you get hurt (WILL ABORT SCRIPT IF YOU ARE HURT)
################################################################################################################################
## NOTICE!! YOU MUST SET YOUR CHARACTER SPECIFIC VARIABLES IN THE SECOND SCRIPT - disarm-vars.inc
## IF YOU DO NOT SETUP THE VARIABLES IN disarm-vars.inc THEN THIS SCRIPT WILL NOT WORK
##############################################################################
##############################################################################
# END USER VARIABLES - DO NOT TOUCH ANYTHING BELOW THIS LINE
##############################################################################
##############################################################################
### DEFAULT SCRIPT VARIABLES - DO NOT TOUCH!!!
INIT:
include disarm-vars.inc
# ring_types should be all known lockpick ring types
var ring_types lockpick ring|lockpick case|lockpick wrist|decorative keyring|lockpick ankle-cuff|lockpick tailband|lockpick tailring|golden key|tool case|iron keyring|locksmith strand
var box_types \s*(brass|copper|deobar|driftwood|iron|ironwood|mahogany|oaken|pine|steel|wooden)\s*(coffer|trunk|chest|strongbox|skippet|caddy|crate|casket|(?<!(?i)training )box)\s*(closed|open)?
var component_list sealed vial|stoppered vial|capillary tube|short needle|broken needle|bronze seal|animal bladder|silver studs|sharp blade|curved blade|broken rune|coiled spring|metal spring|metal lever|tiny hammer|iron disc|bronze disc|glass reservoir|bronze face|steel pin|steel striker|chitinous leg|(?!cracked )black crystal|metal circle|brown clay|black cube|glass sphere
var key_type NULL
var multi_trap ON
var multi_lock ON
var thief_hide OFF
var skeleton.key OFF
var ARMOR_STOW OFF
var DISMANTLE.ALL ON
var AUTOLOOT ON
var trap_type NULL
var BOXES 0
var BOX 0
var LOCAL 0
var havekey 0
var GIVEBOX OFF
var FIRSTIME ON
var FIREANT OFF
var armor null
var armor1 null
var armor2 null
var armor3 null
var armor4 null
var armor5 null
var armor6 null
var armor7 null
var armor8 null
var armor9 null
var armor10 null
var armor11 null
var armor12 null
var armor13 null
var armor14 null
var armor15 null
var total_armor 0
var yogi 0
var shadowling 0
var dismantle
var MAGICUSER Warrior Mage|Moon Mage|Bard|Ranger|Paladin|Empath|Cleric|Trader|Necromancer
### SET DEFAULT TRAP COUNTS
var concussion.count 0
var teleport.count 0
var shrapnel.count 0
var disease.count 0
var reaper.count 0
var fire_ant.count 0
var gas.count 0
var lightning.count 0
var naphtha_soaker.count 0
var naphtha.count 0
var acid.count 0
var boomer.count 0
var scythe.count 0
var shocker.count 0
var poison_local.count 0
var poison_nerve.count 0
var curse.count 0
var poison_bolt.count 0
var bolt.count 0
var cyanide.count 0
var frog.count 0
var flea.count 0
var bouncer.count 0
var laughing.count 0
var sleeper.count 0
var mime.count 0
var mana_sucker.count 0
var shadowling.count 0
if matchre($Boxes, \D+) then put #var Boxes 0
if !def(DisarmTraps_Bolt) then put #var DisarmTraps_Bolt 0
if !def(DisarmTraps_Concussion) then put #var DisarmTraps_Concussion 0
if !def(DisarmTraps_Teleport) then put #var DisarmTraps_Teleport 0
if !def(DisarmTraps_Shrapnel) then put #var DisarmTraps_Shrapnel 0
if !def(DisarmTraps_Disease) then put #var DisarmTraps_Disease 0
if !def(DisarmTraps_Reaper) then put #var DisarmTraps_Reaper 0
if !def(DisarmTraps_FireAnt) then put #var DisarmTraps_FireAnt 0
if !def(DisarmTraps_Gas) then put #var DisarmTraps_Gas 0
if !def(DisarmTraps_Lightning) then put #var DisarmTraps_Lightning 0
if !def(DisarmTraps_Naphtha.Soak) then put #var DisarmTraps_Naphtha.Soak 0
if !def(DisarmTraps_Naphtha) then put #var DisarmTraps_Naphtha 0
if !def(DisarmTraps_Acid) then put #var DisarmTraps_Acid 0
if !def(DisarmTraps_Boomer) then put #var DisarmTraps_Boomer 0
if !def(DisarmTraps_Scythe) then put #var DisarmTraps_Scythe 0
if !def(DisarmTraps_Shocker) then put #var DisarmTraps_Shocker 0
if !def(DisarmTraps_Poison.Local) then put #var DisarmTraps_Poison.Local 0
if !def(DisarmTraps_Poison.Nerve) then put #var DisarmTraps_Poison.Nerve 0
if !def(DisarmTraps_Poison.Bolt) then put #var DisarmTraps_Poison.Bolt 0
if !def(DisarmTraps_Cyanide) then put #var DisarmTraps_Cyanide 0
if !def(DisarmTraps_Frog) then put #var DisarmTraps_Frog 0
if !def(DisarmTraps_Flea) then put #var DisarmTraps_Flea 0
if !def(DisarmTraps_Bouncer) then put #var DisarmTraps_Bouncer 0
if !def(DisarmTraps_LaughingGas) then put #var DisarmTraps_LaughingGas 0
if !def(DisarmTraps_Sleeper) then put #var DisarmTraps_Sleeper 0
if !def(DisarmTraps_Mime) then put #var DisarmTraps_Mime 0
if !def(DisarmTraps_Mana.Sucker) then put #var DisarmTraps_Mana.Sucker 0
if !def(DisarmTraps_Shadowling) then put #var DisarmTraps_Shadowling 0
gosub LOADVARS
##################################
## SCRIPT ACTIONS
##################################
# TRAP TYPE MATCHING~
action (id) var trap_type acid;echo ***ACID TRAP! when As you look closely\, you notice a tiny hole right next to the lock which looks to be a trap of some kind\.|Must be an acid trap\.
action (id) var trap_type boomer;echo ***BOOMER TRAP! when A glistening black square\, surrounded by a tight ring of fibrous cord, catches your eye\.
action (id) var trap_type reaper;echo ***REAPER TRAP!! when A crust\-covered black scarab of some unidentifiable substance clings to the|^A disturbing little scarab is fastened to the front\.
action (id) var trap_type fire_ant;echo ***FIRE ANT TRAP!! when Within the casing of .* is a mesh bag\, a very sharp blade poised to the side just within
action (id) var trap_type poison_bolt;echo ***POISON BOLT TRAP when You find a series of openings on the front of the .* concealing the points of several crossbow bolts glistening with moisture\.
action (id) var trap_type bolt;echo ***BOLT TRAP! when concealing the points of several wickedly barbed crossbow bolts\.
action (id) var trap_type concussion;echo ***CONCUSSION TRAP!! when Right above the lock inside the keyhole\, you see a tiny metal tube just poking out of a small wad of brown clay\.|infamous shockwave trap
action (id) var trap_type cyanide;echo ***CYANIDE TRAP! when ^The glint of silver from the tip of a dart catches your attention|That tiny dart you can see means|smell of almonds
action (id) var trap_type disease;echo ***DISEASE TRAP! when While inspecting the .* patiently\, you see what appears to be a small\, swollen animal bladder recessed inside the keyhole\.
action (id) var trap_type flea;echo ***FLEA TRAP! when (Embedded|Imbedded) in the front of the .* is a small glass tube of milky-white opacity\.
action (id) var trap_type gas;echo ***GAS TRAP! when You notice a vial of lime green liquid just under the .* lid|^There\'s a stopper of some vial attached to the lid
action (id) var trap_type lightning;echo ***LIGHTNING TRAP!! when Looking closely into the keyhole\, you spy what appears to be a pulsating ball with some sort of metal lacing around it
action (id) var trap_type naphtha_soaker;echo ***NAPHTHA SOAKER TRAP!! when Searching the .* carefully\, you notice a small notch beside a tiny metal lever on the front\.|components of the naphtha soaker trap
action (id) var trap_type naphtha;echo ***NAPHTHA TRAP! when A tiny striker is cleverly concealed under the lid\, set to ignite a frighteningly large vial of naphtha\.
action (id) var trap_type poison_local;echo ***POISON TRAP! when You notice a tiny needle with a greenish discoloration on its tip hidden next to the keyhole\.
action (id) var trap_type poison_nerve;echo ***NERVE POISON TRAP! when You notice a tiny needle with a rust colored discoloration on its tip hidden next to the keyhole\.|^A rusty needle\!
action (id) var trap_type scythe;echo ***SCYTHE TRAP! when Out of the corner of your eye\, you notice a glint of razor sharp steel hidden within a suspicious looking seam on the|scythe trap\!
action (id) var trap_type shocker;echo ***SHOCKER TRAP! when You notice two silver studs right below the keyhole which look dangerously out of place there\.
action (id) var trap_type shrapnel;echo ***SHRAPNEL TRAP!!! when Squinting slightly to see better\, you notice the .* keyhole is packed tightly with a powder around the insides of the lock\.
action (id) var trap_type teleport;echo ***TELEPORT TRAP!!!! when The hinges of the .* are covered with a thin metal circle that has been lacquered with a shade of .*\.
action (id) var trap_type bouncer;echo ***BOUNCER TRAP when Looking into the keyhole you see what seems to be a pin lodged against the tumblers of the lock\.
action (id) var trap_type curse;echo ***CURSE TRAP when While checking the .* with an careful eye\, you notice a small glowing rune hidden inside the .*
action (id) var trap_type frog;echo ***FROG TRAP when While checking the .* with a careful eye\, you notice a lumpy green rune hidden inside the .*
action (id) var trap_type laughing;echo ***LAUGHING TRAP when Examining the .* for traps reveals a tiny glass tube filled with a black gaseous substance of some sort and a tiny hammer at the ready to do what it was designed for\.
action (id) var trap_type mana_sucker;echo ***MANA TRAP when While checking the .* for traps\, you notice a bronze seal over the .*
action (id) var trap_type mime;echo ***MIME TRAP when A tiny bronze face\, Fae in appearance\, grins ridiculously from its place on the .*
action (id) var trap_type shadowling;echo ***SHADOWLING TRAP when While scanning the .* with a careful eye\, you notice a small black crystal deep in the shadows of the .*
action (id) var trap_type sleeper;echo ***SLEEPER TRAP when Two sets of six pinholes on either side of the .* lock indicate that something is awry\.
action (id) off
#################################################################
## THESE DETERMINE THE BASE DIFFICULTY LEVEL OF A TRAP
#################################################################
action var app_difficulty -9 when An aged grandmother could
action var app_difficulty -8 when is a laughable matter
action var app_difficulty -7 when is a trivially constructed
action var app_difficulty -4 when will be a simple matter for you to
action var app_difficulty -3 when should not take long with your skills
action var app_difficulty 0 when is precisely at your skill level
action var app_difficulty 1 when with only minor troubles
action var app_difficulty 2 when got a good shot at
action var app_difficulty 3 when some chance of being able
action var app_difficulty 5 when with persistence you believe you could
action var app_difficulty 6 when would be a longshot
action var app_difficulty 7 when minimal chance
action var app_difficulty 8 when You really don't have any chance
action var app_difficulty 9 when Prayer would be a good start
action var app_difficulty 11 when You could just jump off a cliff
action var app_difficulty 12 when You should just jump off a cliff
action var app_difficulty 15 when same shot as a snowball
action var app_difficulty 16 when pitiful snowball encased in the Flames
## MISC ACTIONS
action (moving) var Moving 1 when Obvious (path|exits)|Roundtime
action instant goto DROPPED_BOX when ^Your .* falls to the ground\.
#action put #queue clear; send $lastcommand when ^\.\.\.wait|^Sorry\,|^I could not|^Please rephrase
action var multi_trap ON when is not yet fully disarmed
action var multi_lock ON when discover another lock protecting
## LOCK MODE
action (lock) var mode blind when ^This lock is a laughable matter|^An aged grandmother could open this
action (lock) var mode quick when lock's structure is relatively basic|should not take long with your skills|You can unlock the (.+) with only minor troubles|^The lock is a trivially constructed piece of junk|will be a simple matter for you
action (lock) var mode normal when ^You think this lock is precisely at your skill level|The lock has the edge on you
action (lock) var mode careful when ^The odds are against you, but with persistence you believe you could pick|You have some chance of being able to pick open|would be a longshot
action (lock) var mode careful when ^Prayer would be a good start for any attempt of yours at picking|amazingly mininal chance at picking|don't have any change at picking|snowball|jump off a cliff
action (lock) off
###################################################################
## BLOWN TRAP ACTIONS
action goto TELEPORT_OK when ^Elanthia seems to fall away from under your feet|^You experience a great wrenching in your gut and everything goes utterly black|As your vision slowly returns, you find yourself at|You find yourself curled up on the ground at
action goto TELEPORT_DEATH when Your last painful thought before you die is the horrified realization
action goto TELEPORT_HURT when .* is suddenly torn apart by unseen forces in an explosive spray of splinters
action goto CONCUSSION_DEATH when ^As soon as you look up, your entire world explodes in a crash of deafening sound and searing heat|way out of your league before oblivion takes you
action goto DIED_TRAP when way out of your league before oblivion takes you
action goto BLOWN_TRAP when The stinging, sandy winds have made you pause|^The sand devil spins and whirls|several very angry vykathi reapers standing right beside you
action goto BLOWN_TRAP when A black cloud of ash and soot explodes out of the bladder
action goto BLOWN_TRAP when With a sinister swishing noise, a deadly sharp scythe blade
action goto BLOWN_TRAP when ^A tiny dart lodges into your skull
action goto BLOWN_TRAP when ^You are diseased|only to be greeted with a loud "Poof" followed by a cloud of small particles
action goto BLOWN_TRAP when Almost immediately, you grow dizzy
action goto BLOWN_TRAP when you realize it was actually a swarm of fleas
action goto BLOWN_TRAP when Like a Halfling blowing smoke rings
action goto BLOWN_TRAP when You fall to your knees coughing and gagging|inhale all of the poisonous gas yourself
action goto BLOWN_TRAP when You get the feeling that life suddenly got alot funnier|^You are completely incapacitated with laughter|^The hammer slips from its locked position and strikes the tube with a tiny "clink"
action goto BLOWN_TRAP when you notice the world around you has gotten much bigger|^Your head is ringing so much you can't think
action goto BLOWN_TRAP when emits a sound like tormented souls being freed
action goto BLOWN_TRAP when You try to scream but no sound
action goto BLOWN_TRAP when A stream of corrosive acid sprays out
action goto BLOWN_TRAP when An acrid stream of sulfurous air
action goto BLOWN_TRAP when With a barely audible click
action goto BLOWN_TRAP when There is a sudden flash of greenish light
action goto BLOWN_TRAP when You hear a snap as a bronze seal
action goto BLOWN_TRAP when ^Nothing happened. Maybe it was a dud|begins to shake violently
action goto BLOWN_TRAP when Just as your ears register the sound of a sharp snap
action goto BLOWN_TRAP when You make a small hole in the side of the box and take deep breath
action goto BLOWN_TRAP when Moving with the grace of a pregnant goat
action goto BLOWN_TRAP when You barely have time to register a faint click before a blinding flash explodes|The liquid contents of the bladder empty, spraying you completely
action goto BLOWN_TRAP when Before you have time to think what it might be you find
action goto BLOWN_TRAP when To your horror, oversized, red, ant-like insects emerge and begin to race across your hands
action goto HEAL_PAUSE when The ringing in your ears continues
pause 0.0001
send exp survival 0
waitforre Overall state of mind|EXP
pause 0.0001
if_1 then
{
var user %1
var GIVEBOX ON
send whisper %user Give me a second to prepare. When ready I'll whisper you and then hand me a new box.
}
GOTO TOP
######################################################################################
## TRAP DIFFICULTY MODIFIERS
## THIS SETS A STATIC DIFFICULTY LEVEL FOR EACH TRAP TYPE
## THEN ADDS THAT TO THE APPRAISED DIFFICULTY TO COMPUTE WHAT MODE OF DISARM TO USE
## I.E - IF A TRAP IS VERY DANGEROUS IT WILL USE CAREFUL - EASY WILL USE QUICK/NORMAL
## SUPER DUPER EASY WILL USE BLIND - WAYYY TOO HARD WILL JUST TOSS THE BOX
##########################################################################################
trap_diff_compute:
var total_difficulty 0
### DEFAULT TRAP DIFFICULTIES
### Set from -5 to 5 (OR BEYOND) depending on how worried you are about blowing that particular trap
### -5 = TRAP IS LAUGHABLE, YOU DONT CARE IF YOU BLOW IT
### 5+ = TRAP IS DANGEROUS! BE VERY CAREFUL!
### THE MOST DANGEROUS TRAPS ARE AT THE TOP AND HAVE A HIGH DEFAULT DIFFICULTY
if ("%trap_type" = "concussion") then var trap_difficulty 10
if ("%trap_type" = "shrapnel") then var trap_difficulty 10
if ("%trap_type" = "disease") then var trap_difficulty 10
if ("%trap_type" = "teleport") then var trap_difficulty 9
if ("%trap_type" = "reaper") then var trap_difficulty 9
if ("%trap_type" = "fire_ant") then var trap_difficulty 9
if ("%trap_type" = "gas") then var trap_difficulty 8
if ("%trap_type" = "lightning") then var trap_difficulty 8
if ("%trap_type" = "naphtha") then var trap_difficulty 7
if ("%trap_type" = "naphtha_soaker") then var trap_difficulty 6
if ("%trap_type" = "acid") then var trap_difficulty 5
if ("%trap_type" = "boomer") then var trap_difficulty 5
if ("%trap_type" = "scythe") then var trap_difficulty 5
if ("%trap_type" = "shocker") then var trap_difficulty 4
if ("%trap_type" = "poison_local") then var trap_difficulty 4
if ("%trap_type" = "poison_nerve") then var trap_difficulty 3
if ("%trap_type" = "curse") then var trap_difficulty 2
if ("%trap_type" = "poison_bolt") then var trap_difficulty 2
if ("%trap_type" = "bolt") then var trap_difficulty 1
if ("%trap_type" = "cyanide") then var trap_difficulty 1
if ("%trap_type" = "frog") then var trap_difficulty 0
if ("%trap_type" = "flea") then var trap_difficulty -1
if ("%trap_type" = "shadowling") then var trap_difficulty -2
if ("%trap_type" = "bouncer") then var trap_difficulty -2
if ("%trap_type" = "mime") then var trap_difficulty -2
if ("%trap_type" = "laughing") then var trap_difficulty -3
if ("%trap_type" = "sleeper") then var trap_difficulty -3
if ("%trap_type" = "mana_sucker") then var trap_difficulty -3
if matchre("$guild", "%MAGICUSER") then
{
if ("%trap_type" = "mana_sucker") then var trap_difficulty 5
if ("%trap_type" = "shadowling") then var trap_difficulty 3
}
if ("%trap_type" = "NULL") then var trap_difficulty 5
# computing...
pause 0.00001
var mode normal
echo
echo ======================
echo * ~Computing Trap Difficulty~...
echo * Trap Type: %trap_type
echo * Trap Difficulty: %trap_difficulty
echo * App Difficulty: %app_difficulty
echo * Baseline Difficulty: %baseline_difficulty
evalmath total_difficulty (%total_difficulty + %baseline_difficulty)
evalmath total_difficulty (%total_difficulty + %trap_difficulty)
evalmath total_difficulty (%total_difficulty + %app_difficulty)
if (%total_difficulty < -12) then var mode blind
if (%total_difficulty = -12) then var mode blind
if (%total_difficulty = -11) then var mode quick
if (%total_difficulty = -10) then var mode quick
if (%total_difficulty = -9) then var mode quick
if (%total_difficulty = -8) then var mode quick
if (%total_difficulty = -7) then var mode quick
if (%total_difficulty = -6) then var mode quick
if (%total_difficulty = -5) then var mode quick
if (%total_difficulty = -4) then var mode quick
if (%total_difficulty = -3) then var mode quick
if (%total_difficulty = -2) then var mode quick
if (%total_difficulty = -1) then var mode normal
if (%total_difficulty = 0) then var mode normal
if (%total_difficulty = 1) then var mode normal
if (%total_difficulty = 2) then var mode normal
if (%total_difficulty = 3) then var mode normal
if (%total_difficulty = 4) then var mode normal
if (%total_difficulty = 5) then var mode normal
if (%total_difficulty = 6) then var mode normal
if (%total_difficulty = 7) then var mode careful
if (%total_difficulty = 8) then var mode careful
if (%total_difficulty = 9) then var mode careful
if (%total_difficulty = 10) then var mode careful
if (%total_difficulty = 11) then var mode careful
if (%total_difficulty = 12) then var mode careful
if (%total_difficulty = 13) then var mode careful
if (%total_difficulty = 14) then var mode careful
if (%total_difficulty = 15) then var mode careful
if (%total_difficulty = 16) then var mode careful
if (%total_difficulty = 17) then var mode careful
if (%total_difficulty = 18) then var mode careful
if (%total_difficulty = 19) then var mode toss
if (%total_difficulty = 20) then var mode toss
if (%total_difficulty = 21) then var mode toss
if (%total_difficulty = 22) then var mode toss
if (%total_difficulty = 23) then var mode toss
if (%total_difficulty > 23) then var mode toss
echo ======================
echo * Total Difficulty: %total_difficulty
echo *
echo * USING MODE: %mode
echo ======================
echo
## SAVES COUNTER FOR EACH TRAP TYPE
if ("%trap_type" = "concussion") then math concussion.count add 1
if ("%trap_type" = "teleport") then math teleport.count add 1
if ("%trap_type" = "shrapnel") then math shrapnel.count add 1
if ("%trap_type" = "disease") then math disease.count add 1
if ("%trap_type" = "reaper") then math reaper.count add 1
if ("%trap_type" = "fire_ant") then math fire_ant.count add 1
if ("%trap_type" = "gas") then math gas.count add 1
if ("%trap_type" = "lightning") then math lightning.count add 1
if ("%trap_type" = "naphtha_soaker") then math naphtha_soaker.count add 1
if ("%trap_type" = "naphtha") then math naphtha.count add 1
if ("%trap_type" = "acid") then math acid.count add 1
if ("%trap_type" = "boomer") then math boomer.count add 1
if ("%trap_type" = "scythe") then math scythe.count add 1
if ("%trap_type" = "shocker") then math shocker.count add 1
if ("%trap_type" = "poison_local") then math poison_local.count add 1
if ("%trap_type" = "poison_nerve") then math poison_nerve.count add 1
if ("%trap_type" = "curse") then math curse.count add 1
if ("%trap_type" = "poison_bolt") then math poison_bolt.count add 1
if ("%trap_type" = "bolt") then math bolt.count add 1
if ("%trap_type" = "cyanide") then math cyanide.count add 1
if ("%trap_type" = "frog") then math frog.count add 1
if ("%trap_type" = "flea") then math flea.count add 1
if ("%trap_type" = "bouncer") then math bouncer.count add 1
if ("%trap_type" = "laughing") then math laughing.count add 1
if ("%trap_type" = "sleeper") then math sleeper.count add 1
if ("%trap_type" = "mime") then math mime.count add 1
if ("%trap_type" = "mana_sucker") then math mana_sucker.count add 1
if ("%trap_type" = "shadowling") then math shadowling.count add 1
return
#################################################################################################################
TOP:
var STARTING.ROOM $roomid
echo
echo ####################
echo * Shroom's Smart Disarm Script
echo ####################
echo
pause 0.0001
if ($hidden = 1) then
{
send shiver
pause 0.3
}
pause 0.0001
put stop play
pause 0.1
gosub STOWING
pause 0.0001
put open my %container1
pause 0.1
pause 0.0001
put open my %container2
pause 0.03
pause 0.0001
pause 0.0001
put open my %container3
wait
pause 0.001
if ("$guild" = "Warrior") then put #var guild Warrior Mage
if ("$guild" = "Moon") then put #var guild Moon Mage
if (!def(guild) || !matchre("$guild","(Thief|Barbarian|Empath|Warrior Mage|Cleric|Bard|Moon Mage|Ranger|Necromancer|Trader)")) then
{
action var guild $1;put #var guild $1 when Guild\: (\S+)
send info;encum
waitforre ^\s*Encumbrance\s*\:
action remove Guild\: (\S+)
}
if ("$guild" = "Thief") then var dismantle thump
if ("$guild" = "Barbarian") then
{
var dismantle bash
gosub MEDITATE_CHECK
}
if ("$guild" = "Bard") then var dismantle shriek
if ("$guild" = "Cleric") then var dismantle pray
if ("$guild" = "Warrior Mage") then var dismantle fire
if ("$guild" = "Moon Mage") then var dismantle focus
if ("$guild" = "Ranger") then var dismantle whistle
if ("$guild" = "Trader") then var dismantle salvage
if ("$guild" = "Empath") then var dismantle
if ("$guild" = "Necromancer") then var dismantle
if ("$guild" = "Necromancer") then gosub JUSTICE_CHECK
echo
echo ##################
echo * Guild: $guild
echo * Dismantle Type: %dismantle
echo ##################
echo
if ("$guild" = "Necromancer") then
{
gosub PUT release eotb
pause 0.0001
}
if ("$guild" = "Thief") then
{
gosub PUT khri stop silence vanish
pause 0.0001
}
if matchre("$guild", "(Moon Mage|Moon)") then
{
gosub PUT release rf
pause 0.0001
}
if matchre("$guild", "Ranger") then
{
gosub PUT release blend
pause 0.0001
}
KEY_CHECK:
matchre KEY_CHECK ^\.\.\.wait|^Sorry\,|^You are still stunned\.
matchre KEY_CHECK ^You can't do that while entangled in a web
matchre KEY_CHECK ^You are still stunned
matchre KEY_CHECK ^You don't seem to be able to move to do that
matchre KEY_CHECK_ALT ^What were you|^I could not
matchre HAVE_KEY ^You tap
put tap my skeleton key
matchwait 5
goto initial_Check
KEY_CHECK_ALT:
matchre KEY_CHECK ^\.\.\.wait|^Sorry\,|^You are still stunned\.
matchre KEY_CHECK ^You can't do that while entangled in a web
matchre KEY_CHECK ^You are still stunned
matchre KEY_CHECK ^You don't seem to be able to move to do that
matchre KEY_CHECK_2 ^What were you|^I could not
matchre HAVE_KEY ^You tap
put tap my skeleton key in my portal
matchwait 5
goto initial_Check
KEY_CHECK_2:
matchre KEY_CHECK ^\.\.\.wait|^Sorry\,|^You are still stunned\.
matchre KEY_CHECK ^You can't do that while entangled in a web
matchre KEY_CHECK ^You are still stunned
matchre KEY_CHECK ^You don't seem to be able to move to do that
matchre initial_Check ^What were you|^I could not
matchre KEY_CHECK_2_ALT ^You tap
put tap my gais key
matchwait 5
goto initial_Check
KEY_CHECK_2_ALT:
matchre KEY_CHECK ^\.\.\.wait|^Sorry\,|^You are still stunned\.
matchre KEY_CHECK ^You can't do that while entangled in a web
matchre KEY_CHECK ^You are still stunned
matchre KEY_CHECK ^You don't seem to be able to move to do that
matchre initial_Check ^What were you|^I could not
matchre HAVE_KEY_2 ^You tap
put tap my gais key in my portal
matchwait 5
goto initial_Check
HAVE_KEY:
var havekey 1
var key_type skeleton
goto initial_Check
HAVE_KEY_2:
var havekey 1
var key_type gais
goto initial_Check
initial_Check:
pause 0.00001
if matchre("%GIVEBOX", "(?i)(YES|ON)") then goto main
gosub init_BagCheck %container1
pause 0.0001
gosub init_BagCheck %container2
pause 0.0001
gosub init_BagCheck %container3
pause 0.0001
gosub init_BagCheck %sheath
pause 0.0001
if (%BOX = 0) then goto DONE
goto armor_Check
init_BagCheck:
var container $0
pause 0.00001
if (%BOX = 1) then goto armor_Check
matchre init_BagCheck ^\.\.\.wait|^Sorry,
matchre boxes_Yes (brass|copper|deobar|driftwood|iron|ironwood|mahogany|oaken|pine|steel|wooden) (?:coffer|trunk|chest|strongbox|skippet|caddy|crate|casket|(?<!(?i)training )box)
matchre init_BagCheckAlt ^You'll need to be holding
matchre RETURN Encumbrance
send look in my %container;enc
matchwait
init_BagCheckAlt:
var container eddy
pause 0.00001
matchre init_BagCheck ^\.\.\.wait|^Sorry,
matchre boxes_Yes (brass|copper|deobar|driftwood|iron|ironwood|mahogany|oaken|pine|steel|wooden) (?:coffer|trunk|chest|strongbox|skippet|caddy|crate|casket|(?<!(?i)training )box)
matchre init_BagCheckAlt ^You'll need to be holding
matchre RETURN Encumbrance
send look in my %container;enc
matchwait
boxes_Yes:
var BOX 1
return
armor_Check:
counter set 0
action var ExoShieldType $1 when ^You shake your .+ causing it to break apart into thousands of live spiders\.\s+The swarm of arachnids scuttles quickly up your arm, nestling themselves on your person until they finally melt and coagulate into a (.*)\.$
hand_Check:
pause 0.00001
matchre remove_Armor (hand wraps|handwraps|knuckles|hand claws|knuckleguards)
matchre armor_Check1 You have nothing of that sort|You are wearing nothing of that sort|You aren't wearing anything
put inv hand weapon
matchwait 15
goto armor_Check1
armor_Check1:
pause 0.0001
pause 0.00001
matchre remove_Armor \bhelm|((?<=field|fluted|full|half|war|battle|lamellar|Imperial|kiralan|blue|blackened|jousting|silver|white|lunated|sniper's|icesteel|goffered|fluted|polished) (\bplate\b)(?! armor| gauntlets| gloves| greaves| helm| mask| balaclava| shirt)|(?>ice)steel plate(?! armor| gauntlets| gloves| greaves| helm| mask))|(?<=field|assassin's|chain|leather|bone|quilted|reed|black|plate|combat|body|clay|lamellar|hide|steel|mail|pale|polished|shadow|Suit of|suit|woven|yeehar-hide|kidskin|gladiatorial|sniper|sniper's|battle|tomiek|glaes|pale|ceremonial|sinuous|trimmed|carapace|Zaulguum-skin|coral|dark|violet|ridged) (\barmor\b)|armet(?! helm)|abyssium skull|gauntlet|gloves|(?!pavise)shield|claw guards|kimono|odaj|(?<!ka'hurst )mail gloves|platemail legs|trousers|parry stick|leggings|handwraps|gown|\bhat\b|hand claws|boots|armguard|jacket|goggle|armwraps|footwraps|aegis|torso|buckler|\bhood\b|\bcowl\b|\bheater(?! shield)|\bpavise(?! shield)|scutum|sipar|\btarge\b|aventail|backplate|balaclava|barbute|bascinet|breastplate|\bcap\b|longcoat|legwraps|\bcoat\b|\bcowl|cuirass|fauld|greaves|hauberk|\bhood\b|jerkin|leathers|lorica|mantle|(?<!crimson leather )\bmask\b|morion|pants|handguards|bodysuit|robe|sallet|(?<!fighting )shirt|sleeves|ticivara|tabard|tasset|thorakes|\blid\b|vambraces|vest|caftan|collar|coif|mitt|steel mail(?! armor| gauntlets| gloves| greaves| helm| mask| balaclava| shirt)|darkened mail|gais lotus|galea|velnhliwa|bamarhliwa|shalhliwa|tunic|chausses|carapace(?! armor)
matchre armor_None You have nothing of that sort|You are wearing nothing of that sort|You aren't wearing anything
put inv armor
matchwait 3
armor_Checking:
pause 0.0001
matchre armor_Checking ^\.\.\.wait|^Sorry\,|^I could not|^Please rephrase
matchre remove_Armor \bhelm|((?<=field|fluted|full|half|war|battle|lamellar|Imperial|kiralan|blue|blackened|jousting|silver|white|lunated|sniper's|icesteel|goffered|fluted|polished) (\bplate\b)(?! armor| gauntlets| gloves| greaves| helm| mask| balaclava| shirt)|(?>ice)steel plate(?! armor| gauntlets| gloves| greaves| helm| mask))|(?<=field|assassin's|chain|leather|bone|quilted|reed|black|plate|combat|body|clay|lamellar|hide|steel|mail|pale|polished|shadow|Suit of|suit|woven|yeehar-hide|kidskin|gladiatorial|sniper|sniper's|battle|tomiek|glaes|pale|ceremonial|sinuous|trimmed|carapace|Zaulguum-skin|coral|dark|violet|ridged) (\barmor\b)|armet(?! helm)|abyssium skull|gauntlet|gloves|(?!pavise)shield|claw guards|kimono|odaj|(?<!ka'hurst )mail gloves|platemail legs|trousers|parry stick|leggings|handwraps|gown|\bhat\b|hand claws|boots|armguard|jacket|goggle|armwraps|footwraps|aegis|torso|buckler|\bhood\b|\bcowl\b|\bheater(?! shield)|\bpavise(?! shield)|scutum|sipar|\btarge\b|aventail|backplate|balaclava|barbute|bascinet|breastplate|\bcap\b|longcoat|legwraps|\bcoat\b|\bcowl|cuirass|fauld|greaves|hauberk|\bhood\b|jerkin|leathers|lorica|mantle|(?<!crimson leather )\bmask\b|morion|pants|handguards|bodysuit|robe|sallet|(?<!fighting )shirt|sleeves|ticivara|tabard|tasset|thorakes|\blid\b|vambraces|vest|caftan|collar|coif|mitt|steel mail(?! armor| gauntlets| gloves| greaves| helm| mask| balaclava| shirt)|darkened mail|gais lotus|galea|velnhliwa|bamarhliwa|shalhliwa|tunic|chausses|carapace(?! armor)
matchre Armor_Complete You have nothing of that sort|You are wearing nothing of that sort|You aren't wearing anything
put inv armor
matchwait 4
goto Armor_Complete
remove_Armor:
var armor $0
var LAST remove_Armor_1
remove_Armor_1:
pause 0.0001
pause 0.0001
matchre remove_Armor_1 ^\.\.\.wait|^Sorry\,|^I could not|^Please rephrase
matchre stow_Armor (You'?r?e?|As|With) (?:accept|add|adjust|allow|already|are|aren't|ask|attach|attempt|.+ to|.+ fan|bash|begin|bend|blow|breathe|briefly|bundle|cannot|can't|chop|circle|close|corruption|count|combine|come|carefully|dance|decide|dodge|don't|drum|draw|effortlessly|gracefully|deftly|desire|detach|drop|drape|exhale|fade|fail|fake|feel(?! fully rested)|feint|fill|find|filter|form|fumble|gesture|gingerly|get|glance|grab|hand|hang|have|icesteel|insert|kneel|knock|leap|lean|let|lose|lift|loosen|lob|load|move|must|mind|not|now|need|offer|open|parry|place|pick|push|pour|put|pull|press|quietly|quickly|raise|read|reach|retreat|realize|recall|remain|release|remove|reverently|roll|rub|scan|search|secure|sense|set|sheathe|shield|shouldn't|shove|silently|sit|slide|sling|slip|slowly|spin|spread|sprinkle|stop|strap|struggle|swiftly|swing|switch|tap|take|though|tie|tilt|toss|trace|try|tug|turn|twist|unload|untie|vigorously|wave|wear|weave|whisper|will|wring|work|yank|you|zills) .*(?:\.|\!|\?)?
matchre stow_Armor ^Without any effort|the .* slide off|tug the .* free|Shaking your head|^Wiggling|slide themselves off|The carapace armor pulls itself into your hand
matchre get_Armor ^The .+ shakes violently
matchre get_Armor ^You have nothing of that|^Remove what|^What|^I could|^Please
put remove %armor
matchwait 8
get_Armor:
pause 0.0001
pause 0.0001
matchre get_Armor ^\.\.\.wait|^Sorry\,|^You are still stunned\.
matchre stow_Armor (You'?r?e?|As|With) (?:accept|add|adjust|allow|already|are|aren't|ask|attach|attempt|.+ to|.+ fan|bash|begin|bend|blow|breathe|briefly|bundle|cannot|can't|chop|circle|close|corruption|count|combine|come|carefully|dance|decide|dodge|don't|drum|draw|effortlessly|gracefully|deftly|desire|detach|drop|drape|exhale|fade|fail|fake|feel(?! fully rested)|feint|fill|find|filter|form|fumble|gesture|gingerly|get|glance|grab|hand|hang|have|icesteel|insert|kneel|knock|leap|lean|let|lose|lift|loosen|lob|load|move|must|mind|not|now|need|offer|open|parry|place|pick|push|pour|put|pull|press|quietly|quickly|raise|read|reach|retreat|realize|recall|remain|release|remove|reverently|roll|rub|scan|search|secure|sense|set|sheathe|shield|shouldn't|shove|silently|sit|slide|sling|slip|slowly|spin|spread|sprinkle|stop|strap|struggle|swiftly|swing|switch|tap|take|though|tie|tilt|toss|trace|try|tug|turn|twist|unload|untie|vigorously|wave|wear|weave|whisper|will|wring|work|yank|you|zills) .*(?:\.|\!|\?)?
matchre stow_Armor ^Without any effort|the .* slide off|tug the .* free|Shaking your head|^Wiggling|slide themselves off|The carapace armor pulls itself into your hand
matchre armor_Checking ^You have nothing of that|^Remove what|^What|^I could|^Please
put get my %armor
matchwait 9
put #echo >Log #ff0000 *** MISSING MATCH IN GET_ARMOR!
put #parse MISSING MATCH IN GET_ARMOR
goto STOW_ARMOR
stow_Armor:
pause 0.1
pause 0.1
pause 0.1
pause 0.0001
if matchre("$righthand $lefthand" "(\w+) orb\b") then
{
var orbtype $1
pause 0.3
var armor %orbtype orb
echo
echo *** SETTING ARMOR VAR TO: %orbtype orb
echo
pause 0.3
}
if matchre("$righthand $lefthand" "(\w+\-?\w+) ring\b$") then
{
var ringtype $1
pause 0.3
var armor %ringtype ring
echo
echo * SETTING ARMOR VAR TO: %ringtype ring
echo
pause 0.3
}
if !matchre("%TieContainer", "\b(?i)(NULL|NIL)\b") && matchre("$righthand $lefthand", "%TieContainer.Items") then goto Tie_Armor
stow_Armor_1:
var armorcontainer %container1
var LAST stow_Armor_1
pause 0.0001
pause 0.0001
matchre stow_Armor ^\.\.\.wait|^Sorry\,|^I could not|^Please rephrase
matchre stow_Armor_2 ^There\'s no room|^There isn\'t any more room|no matter how you arrange|^What were you|^Where are you|^Weirdly\,
matchre stow_Armor_2 ^(That\'s|The .*) too (heavy|thick|long|wide)|not designed to carry|cannot hold any more|^(You|I) can't|As you attempt to place your
matchre armor_Done ^You put your|^What
put put %armor in my %container1
matchwait 7
stow_Armor_2:
var armorcontainer %container2
var LAST stow_Armor_2
pause 0.0001
pause 0.1
pause 0.0001
matchre stow_Armor_2 ^\.\.\.wait|^Sorry\,|^I could not|^Please rephrase
matchre stow_Armor_3 ^There\'s no room|^There isn\'t any more room|no matter how you arrange|^What were you|^Where are you|^Weirdly\,
matchre stow_Armor_3 ^(That\'s|The .*) too (heavy|thick|long|wide)|not designed to carry|cannot hold any more|^(You|I) can't|As you attempt to place your
matchre armor_Done ^You put your|^What
put put %armor in my %armorcontainer
matchwait 7
stow_Armor_3:
var armorcontainer %container3
var LAST stow_Armor_3
pause 0.0001
pause 0.1
pause 0.0001
matchre stow_Armor_3 ^\.\.\.wait|^Sorry\,|^I could not|^Please rephrase
matchre Tie_Armor ^There\'s no room|^There isn\'t any more room|no matter how you arrange|^What were you|^Where are you|^Weirdly\,
matchre Tie_Armor ^(That\'s|The .*) too (heavy|thick|long|wide)|not designed to carry|cannot hold any more|^(You|I) can't|As you attempt to place your
matchre armor_Done ^You put your|^What
put put %armor in my %armorcontainer
matchwait 7
Tie_Armor:
if matchre("%TieContainer", "\b(?i)(NULL|NIL|NO)\b") then goto stow_Armor_4
var LAST stow_Armor_2
pause 0.1
pause 0.0001
pause 0.0001
matchre Tie_Armor ^\.\.\.wait|^Sorry\,|^I could not|^Please rephrase
matchre stow_Armor_4 ^There\'s no room|^There isn\'t any more room|no matter how you arrange|^What were you|^Where are you|^Weirdly\,
matchre stow_Armor_4 ^(That\'s|The .*) too (heavy|thick|long|wide)|not designed to carry|cannot hold any more|^(You|I) can't|As you attempt to place your
matchre armor_Done You'?r?e? (?:hand|slip|put|get|.* to|can't|quickly|switch|deftly|swiftly|untie|sheathe|strap|slide|desire|raise|sling|pull|drum|trace|wear|tap|recall|press|hang|gesture|push|move|whisper|lean|tilt|cannot|mind|drop|drape|loosen|work|lob|spread|not|fill|will|now|slowly|quickly|spin|filter|need|shouldn't|pour|blow|twist|struggle|place|knock|toss|set|add|search|circle|fake|weave|shove|try|must|wave|sit|fail|turn|already|can\'t|glance|bend|swing|chop|bash|dodge|feint|draw|parry|carefully|quietly|sense|begin|rub|sprinkle|stop|combine|take|decide|insert|lift|retreat|load|fumble|exhale|yank|allow|have|are|wring|icesteel|scan|vigorously|adjust|bundle|ask|form|lose|remove|accept|pick|silently|realize|open|grab|fade|offer|aren't|kneel|don\'t|close|let|find|attempt|tie|roll|attach|feel(?! fully rested)|read|reach|gingerly|come|corruption|count|secure|unload|remain|release|shield) .*(?:\.|\!|\?)?
put tie %armor to my %TieContainer
matchwait 7
stow_Armor_4:
var LAST stow_Armor_4
pause 0.0001
pause 0.1
pause 0.0001
matchre stow_Armor_4 ^\.\.\.wait|^Sorry\,|^You are still stunned\.
matchre stow_Armor_4 ^You don't seem to be able to move to do that
matchre stow_Armor_4 ^You can't do that while entangled in a web
matchre stow_Armor_4 ^You are still stunned
matchre no_More_Stowing ^There\'s no room|^There isn\'t any more room|no matter how you arrange|^What were you|^Where are you|^Weirdly\,
matchre no_More_Stowing ^(That\'s|The .*) too (heavy|thick|long|wide)|not designed to carry|cannot hold any more|^(You|I) can't|As you attempt to place your
matchre no_More_Stowing ^You can't wear any more items like that\.
matchre no_More_Stowing ^You can't wear that\!
matchre no_More_Stowing ^You need at least one free hand for that\.
matchre no_More_Stowing ^This .* can't fit over the .* you are already wearing which also covers and protects your .*\.
matchre armor_Done You'?r?e? (?:hand|slip|put|get|.+ to|.+ fan|can't|leap|tug|quickly|dance|gracefully|reverently|breathe|switch|deftly|swiftly|untie|sheathe|strap|slide|desire|raise|sling|pull|drum|trace|wear|tap|recall|press|hang|gesture|push|move|whisper|lean|tilt|cannot|mind|drop|drape|loosen|work|lob|spread|not|fill|will|now|slowly|quickly|spin|filter|need|shouldn't|pour|blow|twist|struggle|place|knock|toss|set|add|search|circle|fake|weave|shove|try|must|wave|sit|fail|turn|already|glance|bend|swing|chop|bash|dodge|feint|draw|parry|carefully|quietly|sense|begin|rub|sprinkle|stop|combine|take|decide|insert|lift|retreat|load|fumble|exhale|yank|allow|have|are|wring|icesteel|scan|vigorously|adjust|bundle|ask|form|lose|remove|accept|pick|silently|realize|open|grab|fade|offer|tap|aren't|kneel|don\'t|close|let|find|attempt|tie|roll|attach|feel(?! fully rested)|read|reach|gingerly|come|effortlessly|corruption|count|secure|detach|unload|briefly|zills|remain|release|shield) .*(?:\.|\!|\?)?
matchre armor_Done ^What were you referring to\?|^Please rephrase
matchre armor_Done ^Wear what\?
matchre armor_Done Roundtime
matchre armor_Done ^The .* (is|are|slides)
matchre armor_Done ^Without (any|a)
matchre armor_Done ^You put your|^What
put wear my %armor
matchwait 9
goto armor_Done
armor_Done:
counter add 1
var total_armor %c
var armor%c %armor
var armor%cContainer %armorcontainer
goto armor_Checking
armor_None:
ECHO **** NO ARMOR FOUND!
var ARMOR_STOW OFF
goto lock.check
Armor_Complete:
var ARMOR_STOW ON
ECHO #######################################
ECHO # Removed all armor
ECHO # Saved Armor Count: %total_armor
if (%total_armor < 1) then
{
ECHO # NO ARMOR FOUND
ECHO #######################################
goto lock.check
}
ECHO # Armor1: %armor1
if (%total_armor < 2) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor2: %armor2
if (%total_armor < 3) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor3: %armor3
if (%total_armor < 4) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor4: %armor4
if (%total_armor < 5) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor5: %armor5
if (%total_armor < 6) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor6: %armor6
if (%total_armor < 7) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor7: %armor7
if (%total_armor < 8) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor8: %armor8
if (%total_armor < 9) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor9: %armor9
if (%total_armor < 10) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor10: %armor10
if (%total_armor < 11) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor11: %armor11
if (%total_armor < 12) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor12: %armor12
if (%total_armor < 13) then
{
ECHO #######################################
goto lock.check
}
ECHO # Armor13: %armor13
ECHO #######################################
ECHO
pause 0.1
goto lock.check
no_More_Stowing:
echo
echo ** ERROR!!!!
echo ** No more room for stowing armor!!! Exiting script **
echo ** Make some more room in your bags!!! Or get larger containers!
echo
put wear %armor
pause 0.5
goto done
lock.check:
if matchre("%lockpick.ring", "(?i)(YES|ON)") then gosub lockpick_ring_check
if ("$guild" = "Barbarian") then
{
if (%yogi = 0) then send kneel
pause 0.3
send meditate focus
pause 2
pause
if (!$standing) then gosub stand
}
goto main
###########################################################
##
## MAIN SCRIPT LOOP HERE!
##
###########################################################
main:
var trap_type NULL
var disarmed 0
pause 0.00001
if matchre("%GIVEBOX", "(?i)(YES|ON)") then
{
put whisper %user Ready for a box!
put nod %user
waitfor offers you
pause 0.4
send accept
pause
}
if (!matchre("%keep.picking", "(?i)(YES|ON)") && !matchre("%GIVEBOX", "(?i)(YES|ON)")) then
{
if ($Locksmithing.LearningRate > 33) then goto LOCKED_SKILLS
}
if (("$guild" = "Thief") && ($concentration > 50)) then
{
pause 0.0001
if ($Augmentation.Ranks < 180) then send kneel
pause 0.0001
send khri %khri
pause 0.4
pause 0.1
if (!$standing) then gosub stand
}
if (matchre("$lefthand", "Empty") && !matchre("$righthand", "%box_types")) then gosub container_Check
if ("$lefthand" = "Empty") then
{
send swap
wait
pause 0.00001
pause 0.00001
}
else
{
gosub STOW left
pause 0.2
send swap
wait
pause 0.00001
}
pause 0.00001
disarm_sub:
action (lock) off
var trap_type NULL
var mode normal
if matchre("$righthand", "%box_types") then
{
put swap
wait
pause 0.0001
}
if ("$guild" = "Thief") then gosub glance_box
if (matchre("%skeleton.key", "(?i)(YES|ON)") || (($Locksmithing.LearningRate > 33) && (%havekey = 1))) then
{
echo
echo ############
echo *** SKELETON KEY!!
echo ############
echo
put get my %key_type key
wait
pause 0.00001
pause 0.00001
if !matchre("$righthand $lefthand", "\bkey") then
{
put get my %key_type key from my portal
wait
pause 0.1
}
if !matchre("$righthand $lefthand", "\bkey") then
{
put get my gais key
wait
pause 0.1
}
if !matchre("$righthand $lefthand", "\bkey") then
{
put get my gais key from my portal
wait
pause 0.1
}
if !matchre("$righthand $lefthand", "\bkey") then
{
echo *** ERROR FINDING SKELETON KEY! DISARMING NORMALLY
goto disarm_sub_2
}
pause 0.00001
put turn my key at my %disarmit
wait
pause 0.00001
gosub put_Away_Pick
gosub loot
gosub dismantle
pause 0.01
gosub exp_Check
goto MAIN
}
disarm_sub_2:
pause 0.00001
gosub disarm_ID
pause 0.00001
if ("%trap_type" = "UNKNOWN") then goto disarm_sub_2
if ("%trap_type" = "NULL") then goto lock_sub
gosub trap_diff_compute
if ("%mode" = "toss") then goto toss_box
# debug 5
if matchre("$righthand", "%box_types") then
{
put swap
wait
pause 0.7
}
gosub disarm
var disarm.count 0
var harvest.count 0
if matchre("%harvest", "(?i)(YES|ON)") then gosub analyze
if matchre("%multi_trap", "(?i)(YES|ON)") then goto disarm_sub
if (($roomid != %STARTING.ROOM) && matchre("%MOVE.ROOMS", "(?i)(YES|ON)")) then
{
gosub automove %STARTING.ROOM
pause 0.1
}
if matchre("%GIVEBOX", "(?i)(YES|ON)")) then goto GIVEBOX
lock_sub:
gosub clear
action (lock) on
if matchre("$righthand", "%box_types") then
{
put swap
wait
pause 0.7
pause 0.2
}
if !matchre("$righthand", "Empty") then gosub stow right
if !matchre("%lockpick.ring", "(?i)(YES|ON)") then gosub get_Pick
if ("$guild" = "Thief") then gosub glance_box
pause 0.00001
var pickloop 0
gosub pick_ID
pause 0.00001