|
Articnal Apprentice
Joined: 19 Jan 2002 Posts: 107
|
Posted: Sat Mar 08, 2003 10:14 pm
Acces violation |
Hi.
I am using zmud 6.16,and i got a problem.
Everything works great,i tryed zmud 6.40 and 6.53,and i had mapping problems,because the mapper war REALLY slow,much than zmud 6.16,and i decided to go back to 6.16 ver because i need fastness,im pk.
I read something about this bug is solved in version 6.40,but i dont want to return to that version because of maps.
My problem is about an infinite loop,that i think that doesnt exists.
The error message is:
Acces violation at address 004807bc in module 'zmud.exe'. Read of address FFFFFFFF
I made 3 alias:
alias aportodo value aporelbote;aporelrollo
alias aportodo2 value aportodo;#wait 120000;aportodo2
alias aporelbote value c viaje shagrat;c 'destruir maldad' sha;coger todo sha;acasa
alias aporelrollo value c viaje maestro traductor;c espinas traductor;coger todo asistente;acasa
and using aportodo2 alias tells me,after being able to wait for 2 or 3 times and executing this alias again for 2 or 3 times,that an infinite loop has being detected.
Any ideas?
Thank You
Articnal |
|
|
|
Emit Magician
Joined: 24 Feb 2001 Posts: 342 Location: USA
|
Posted: Sat Mar 08, 2003 11:27 pm |
quote:
alias aportodo2 value aportodo;#wait 120000;aportodo2
This isn't exactly an infinite loop, more like infinite recursion. it amounts to the same thing, except, none of the alias calls ever end, and so remain on the call stack. Here is what you can do instead:
#alarm "aportodo2" {*2:00} {aportodo}
--
it will do the same thing (execute aportodo every 2 minutes) but you won't have any nasty access violations. Turn it on or off at your desire with commands
#t+ "aportodo2"
#t- "aportodo2"
respectively.
--------
moon.icebound.net:9000 |
|
|
|
Articnal Apprentice
Joined: 19 Jan 2002 Posts: 107
|
Posted: Sat Mar 08, 2003 11:51 pm |
Well,thanks a lot :)
|
|
|
|
Articnal Apprentice
Joined: 19 Jan 2002 Posts: 107
|
Posted: Sun Mar 09, 2003 12:05 am |
Ok i got another question about that ^^
If i wanted to stop that time,for,for example,start the countdown again,but i still want the alias to keep working,so i cant use #t- "aportodo2",do i have any option? or will i have to quit and rejoin the character?
Thanks again :D |
|
|
|
Emit Magician
Joined: 24 Feb 2001 Posts: 342 Location: USA
|
Posted: Sun Mar 09, 2003 12:56 am |
to just restart the countdown? just do this
#t- aportodo2;#t+ aportodo2
and it will go back up to the top 2 minutes
--------
moon.icebound.net:9000 |
|
|
|
Articnal Apprentice
Joined: 19 Jan 2002 Posts: 107
|
Posted: Sun Mar 09, 2003 10:07 am |
Ok the last solution didnt work,and i think its because the alarm isnt created on the aportodo2 folder,but in the main one.
How to force the alias to create it on the subfolder aportodo2? |
|
|
|
Emit Magician
Joined: 24 Feb 2001 Posts: 342 Location: USA
|
Posted: Sun Mar 09, 2003 10:25 am |
um, if its not working i don't think the folder issue is the problem. To answer your question though, the argument in the #trigger (or #alarm, #oninput, or #temp) directly after the commands is the class the #trigger should be created in.
However, the optional argument before the pattern (using double quotes to distinguish it from the pattern), is the trigger ID. A single trigger can be #t+'d or #t-'d using its id name, instead of its class name, which is what i was trying to do.
When i tested it on v6.53, using alarms with short intervels (10 seconds) turning the #alarm off and then on again appeared to reset the timer to 10. If that doesn't do it then i don't really know what will, except deleting the #alarm and recreating it.
--------
moon.icebound.net:9000 |
|
|
|
Articnal Apprentice
Joined: 19 Jan 2002 Posts: 107
|
Posted: Sun Mar 09, 2003 11:15 am |
Ok now i used the line:
#alarm "aportodo2" {*2:00} {aportodo2} [noestoy]
now the tigger is created on the class i want,[noestoy],and when i disable class it stops working,if i enable it again,and use the alias aportodo2,it does what it has to do,but repeats it another time before 2 min,so i think any other tigger keeps working... dunno... how to disable it...or...
Thanks for ur help
Articnal |
|
|
|
Emit Magician
Joined: 24 Feb 2001 Posts: 342 Location: USA
|
Posted: Sun Mar 09, 2003 7:28 pm |
I'm a little confused, what is your goal with this trigger? I originally thought you wanted to execute the alias aprotodo every 2 minutes. If this is the case, then the trigger you want is this one:
#alarm "aportodo2" {*2:00} {aportodo}
and you should delete the alias aportodo2.
--------
moon.icebound.net:9000 |
|
|
|
|
|