New()
..()
src.state = new/Event/custom/ai/state(src, 10 * ++tick)
Where tick is equal to 0.
state calls its fire proc and does what it does and is set to reschedule itself. The problem is, usually, that one or both of them don't get to that point for some odd reason. This happens with any two combination of events.
Numbered Steps to Reproduce Problem: Call two events on the same or a multiple of 10 ticks. Set the events to reschedule (time is irrelevant) in their fire proc and watch the bug occur.
Expected Results: The events to continue to be rescheduled.
Actual Results: They pause, freeze, or otherwise don't execute.
Does the problem occur:
Every time? Or how often? Every time.
In other games? N/A
In other user accounts? N/A
On other computers? N/A
When does the problem NOT occur? Never.
Workarounds: None
Additional Details: It also happens using v.499.1202.
When I changed the 10 in the OP's code snippet to 20, it worked as expected.
Edit: So I just ran this thinking it'd be a workaround.
src.state = new/Event/custom/ai/state(src, max(0, round(rand(0, 42), 3)))
The first time I ran it, the problem I thought only happened when you used 10 ticks happened (the not rescheduling thing).