Plugin triggers not always firing

Posted by Baatti on Tue 22 Feb 2011 05:40 AM — 8 posts, 29,380 views.

USA #0
Running MUSH 4.61 on Ubuntu 10.10 under wine 1.2.2 in Windows XP mode...

I make a plugin, no syntactical errors, aliases fire off, triggers do not. If I turn on TRACE, the triggers do not show up. If I use GetPluginTriggerList, the triggers do show up. Randomly the triggers start firing.

I'm totally clueless here as to what's causing this.
Australia Forum Administrator #1
Template:summary

Please provide a summary of your world configuration:

  • Either use the scripting Immediate window (Ctrl+I) to execute: Debug ("summary")

    or

  • Install the Summary plugin (see "Summary" feature) and type "summary"

Then copy the resulting information from the output window, and paste into a Forum message.

You need version 4.55 onwards of MUSHclient to do this.

USA #2
-------------- MUSHclient summary --------------

MUSHclient version: 4.61
Compiled: Sep 11 2010.
Time now: Tuesday, February 22, 2011, 2:02 AM
Operating system: Windows XP
Libraries: Lua 5.1.4, PCRE 8.10, PNG 1.4.3, SQLite3 3.7.2, Zlib 1.2.5
World name: 'Baatti_Vadi', ID: e7da7ec1e4a5f80b4f2f29f3
-- Scripting --
Script language: Lua, enabled: yes
Scripting active: yes
Lua sandbox is 127 characters, DLL loading allowed: yes
Scripting prefix: '~'. External editor in use: NO.
Scripting for: 6.278098 seconds.
-- Triggers, aliases, timers, variables --
** Triggers: 2 in world file, triggers enabled: yes. [Triggers]
2 enabled, 2 regexp, 47462 attempts, 1610 matched, 0.074406 seconds.
** Aliases: 0 in world file, aliases enabled: yes.
0 enabled, 0 regexp, 0 attempts, 0 matched, 0.000000 seconds.
** Timers: 0 in world file, timers enabled: yes.
0 enabled, 0 fired.
Timers checked every 0.1 seconds.
** Variables: 0.
-- MCCP --
MCCP not active.
-- Plugins (Processing order) --
ID: d84d0286edd6e30be321675f, 'ArtefactWatcher', Enabled [Tr Al Va]
ID: 9c8f775bb30ad3c6bff9e31f, 'BaattiFishingSystem', Enabled [Tr Al]
ID: c7fd07020d0f01ed9239ba32, 'CitizenWatch', Enabled [Tr Al Va]
ID: 53233b5dc56335602a96d7f8, 'TattooScript', Enabled [Tr Al]
ID: febc349bccf426447a802e0d, 'VadiMapperMiniWindow', Enabled [Tr Al]
ID: 0a03473fa3c89615de7a7e13, 'BaattiHerbalismSystem', Enabled [Tr Al]
ID: 40e31d01dafc852ddfa04e8a, 'DruidCombatSystem', Enabled [Tr Al]
** Plugins: 7 loaded, 7 enabled.
-- Comms --
Connect phase: 8 (Open). NAWS wanted: NO
Received: 3090021 bytes (3017 Kb)
Sent: 27156 bytes (26 Kb)
Received 4726 packets, sent 1204 packets.
Total lines received: 8432
This connection: Sent 1201 lines, received 24945 lines.
Telnet (IAC) received: DO: 0, DONT: 0, WILL: 4, WONT: 2, SB: 1 [Telnet]
-- MXP --
MXP active: yes, Pueblo mode: NO, Activated: On command
MXP tags received: 14050
MXP entities received: 0
MXP errors: 10
-- Commands --
Commands in command history: 745
Speed walking enabled: NO. Speed walking prefix: #
Command stacking enabled: yes. Command stack character: ';'
Accelerators defined: 0
-- Miniwindows --
Window: 'febc349bccf426447a802e0d', at (888,0,1338,335), shown: yes
width: 450, height: 335, position: 6, hotspots: 6, fonts: 1, images: 0
** Miniwindows: 1 loaded, 1 shown.
-- Output window --
Output pixels: width 1338, height: 521, font width: 7, font height: 14
can show 191 characters, wrapping at column 80, height 37 lines.
Output buffer: 4952 of 5000 lines.
-- Miscellaneous --
Logging: NO, tracing: NO
** SQLite3 databases: 0
Sound buffers in use: 0

---------------------- End summary ----------------------
Australia Forum Administrator #3
Which is the problem plugin? For that one can you do a summary again and click on the "Tr" link that is shown? Also click on the Triggers link in the main world file. Thanks.
USA #4
-------------- MUSHclient summary --------------

MUSHclient version: 4.61
Compiled: Sep 11 2010.
Time now: Tuesday, February 22, 2011, 2:25 AM
Operating system: Windows XP
Libraries: Lua 5.1.4, PCRE 8.10, PNG 1.4.3, SQLite3 3.7.2, Zlib 1.2.5
World name: 'Baatti_Vadi', ID: e7da7ec1e4a5f80b4f2f29f3
-- Scripting --
Script language: Lua, enabled: yes
Scripting active: yes
Lua sandbox is 127 characters, DLL loading allowed: yes
Scripting prefix: '~'. External editor in use: NO.
Scripting for: 9.887457 seconds.
-- Triggers, aliases, timers, variables --
** Triggers: 1 in world file, triggers enabled: yes. [Triggers]
1 enabled, 1 regexp, 35706 attempts, 2075 matched, 0.074932 seconds.
** Aliases: 0 in world file, aliases enabled: yes.
0 enabled, 0 regexp, 0 attempts, 0 matched, 0.000000 seconds.
** Timers: 0 in world file, timers enabled: yes.
0 enabled, 0 fired.
Timers checked every 0.1 seconds.
** Variables: 0.
-- MCCP --
MCCP not active.
-- Plugins (Processing order) --
ID: d84d0286edd6e30be321675f, 'ArtefactWatcher', Enabled [Tr Al Va]
ID: 9c8f775bb30ad3c6bff9e31f, 'BaattiFishingSystem', Enabled [Tr Al]
ID: c7fd07020d0f01ed9239ba32, 'CitizenWatch', Enabled [Tr Al Va]
ID: 53233b5dc56335602a96d7f8, 'TattooScript', Enabled [Tr Al]
ID: febc349bccf426447a802e0d, 'VadiMapperMiniWindow', Enabled [Tr Al]
ID: 0a03473fa3c89615de7a7e13, 'BaattiHerbalismSystem', Enabled [Tr Al]
ID: 40e31d01dafc852ddfa04e8a, 'DruidCombatSystem', Enabled [Tr Al]
** Plugins: 7 loaded, 7 enabled.
-- Comms --
Connect phase: 8 (Open). NAWS wanted: NO
Received: 4842962 bytes (4729 Kb)
Sent: 29944 bytes (29 Kb)
Received 6936 packets, sent 1339 packets.
Total lines received: 11205
This connection: Sent 1336 lines, received 36370 lines.
Telnet (IAC) received: DO: 0, DONT: 0, WILL: 4, WONT: 2, SB: 1 [Telnet]
-- MXP --
MXP active: yes, Pueblo mode: NO, Activated: On command
MXP tags received: 24258
MXP entities received: 0
MXP errors: 11
-- Commands --
Commands in command history: 843
Speed walking enabled: NO. Speed walking prefix: #
Command stacking enabled: yes. Command stack character: ';'
Accelerators defined: 0
-- Miniwindows --
Window: 'febc349bccf426447a802e0d', at (888,0,1338,335), shown: yes
width: 450, height: 335, position: 6, hotspots: 6, fonts: 1, images: 0
** Miniwindows: 1 loaded, 1 shown.
-- Output window --
Output pixels: width 1338, height: 521, font width: 7, font height: 14
can show 191 characters, wrapping at column 80, height 37 lines.
Output buffer: 4925 of 5000 lines.
-- Miscellaneous --
Logging: NO, tracing: NO
** SQLite3 databases: 0
Sound buffers in use: 0

---------------------- End summary ----------------------

(For plugin: DruidCombatSystem)
------ Trigger List (evaluation order) ------

1. Regexp, Enabled : *trigger680 @target
2. Regexp, Enabled : *trigger702 ^A sense of inner wisdom and peace ...
3. Regexp, Enabled : *trigger708 ^As the spirit of the Gopher enters...
4. Regexp, Enabled : *trigger728 ^Images of cold\, unseen lands drif...
5. Regexp, Enabled : *trigger716 ^Strains of birdsong fill your ears...
6. Regexp, Enabled : *trigger718 ^The spirit of the massive Elephant...
7. Regexp, Enabled : *trigger732 ^You are overcome with power as the...
8. Regexp, Enabled : *trigger688 ^You are surrounded by a shining co...
9. Regexp, Enabled : *trigger694 ^You cast your eyes upwards towards...
10. Regexp, Enabled : *trigger692 ^You feel quick and alert as you re...
11. Regexp, Enabled : *trigger696 ^You feel the power of the oceans a...
12. Regexp, Enabled : *trigger698 ^You feel the spirit of the Jackdaw...
13. Regexp, Enabled : *trigger714 ^You feel the spirit of the mighty ...
14. Regexp, Enabled : *trigger704 ^You gaze impassionately at the wor...
15. Regexp, Enabled : *trigger730 ^You raise your arms aloft and roar...
16. Regexp, Enabled : *trigger684 ^You remove a dragonskin pack\.$
17. Regexp, Enabled : *trigger722 ^You settle back on your haunches\,...
18. Regexp, Enabled : *trigger700 ^You welcome the spirit of the Chee...
19. Regexp, Enabled : *trigger710 ^You yawn and slouch about as the s...
20. Regexp, Enabled : *trigger726 ^Your arms fill with power and you ...
21. Regexp, Enabled : *trigger712 ^Your breathing slows to a gentle w...
22. Regexp, Enabled : *trigger690 ^Your heart beats faster and you lo...
23. Regexp, Enabled : *trigger720 ^Your muscles feel like taut steel ...
24. Regexp, Enabled : *trigger724 ^Your soul dwells resplendent in co...
25. Regexp, Enabled : *trigger706 ^Your soul soars as the buoyant spi...
26. Regexp, Enabled : *trigger686 ^\((\w+) morph \+\)$
27. Regexp, Enabled : *trigger682 ^You open a dragonskin pack\.$
27 triggers.
A cute jarbo hops out to the east in search of food.
4072h, 2139m, 19260e, 13110w exdb- (2:25:21:502)

(For plugin: DruidCombatSystem)
------ Trigger: *trigger708 ------

<trigger
enabled="y"
match="^As the spirit of the Gopher enters you\, the ground begins to look quite tempting\.$"
omit_from_output="y"
regexp="y"
send_to="14"
>
<send>morphed("gopher")</send>
</trigger>

Matched count: 0
Has script: No
Times script called: 0
When last matched: Never
Send to: script_after_omit
Temporary: No
Time to match: 0.000000
Match attempts: 0

Every trigger in this plugin (ID: 40e31d01dafc852ddfa04e8a, 'DruidCombatSystem', Enabled [Tr Al]) don't fire off regularly. They seem to not work after the installation/re-sintallation of this plugin, and then after random lengths of time and unknown reasons they just magically start to work.
Australia Forum Administrator #5
Hmmm.

Can you please post an example? Post the exact text from the MUD that you think should fire a trigger (copy and paste) and then the exact trigger that should have fired.

Template:copying
For advice on how to copy aliases, timers or triggers from within MUSHclient, and paste them into a forum message, please see Copying XML.
Amended on Tue 22 Feb 2011 09:52 AM by Nick Gammon
USA #6
I certainly can nick, but the issue isn't a match on a string or anything. Its as if the plugin's triggers are disabled even though they are enabled. Like I said, I add a trigger in my plugin, I re-install the plugin, I test this trigger....

<triggers>
<trigger
match="^You open a dragonskin pack\.$"
regexp="y"
enabled="y"
send_to="12"
><send>Send("close "..items.pack)</send>
</trigger>
</triggers>

The output of the MUD is:
You open a dragonskin pack.

The trigger doesn't fire. Neither do any others from this plugin. Other plugins work fine. Then randomly the triggers start firing when triggered.
Australia Forum Administrator #7
Well I would try two things then.

  • First, upgrade from version 4.61 to 4.72.

    http://www.gammon.com.au/forum/?id=10914

    Around version 4.61 the plugin handling was rewritten in a more modular way. I think some issues popped around then that were fixed in later versions. I don't offhand remember triggers randomly not firing, but it's worth a shot.
  • Second, the behaviour you describe might be caused by the plugin becoming disabled. So, add this code to the problem plugin:

    
    function OnPluginDisable ()
      print ("Plugin", GetPluginID (), "now disabled.")
    end -- function
    


    Now if some other plugin is disabling it, then this will show up.