Issue Information
-
#007294
-
0 - None Assigned
-
Confirmed
Issue Confirmations
-
Yes (0)No (0)
Well, I did the instance with my administrator, and when the Great Bapho died, the map-server crashed.
It was written :
[Error]: script_rid2sd: fatal error ! player not attached!
[Debug]: Function: erasequest (1 parameter):
[Debug]: Data: number value=3041
[Debug]: Source (NPC): control_baphomet at 0012@cata (3,3)
[Error]: Server received crash signal! Attempting to save all online characters!
That's the first time it happens to me so I don't know what to do... Thank you in advance.
It was written :
[Error]: script_rid2sd: fatal error ! player not attached!
[Debug]: Function: erasequest (1 parameter):
[Debug]: Data: number value=3041
[Debug]: Source (NPC): control_baphomet at 0012@cata (3,3)
[Error]: Server received crash signal! Attempting to save all online characters!
That's the first time it happens to me so I don't know what to do... Thank you in advance.
If you used @killmonster, this report is invalid. Your RID is attached only if you've dealt damage to the mob.
Edited by Euphy, 28 May 2013 - 06:21 AM.
I see.. I didn't use @killmonster. In fact, I used @duel with a mate. He was a guillotine cross. He just used Leech Poison against me, and I used Deadly Infect (Shadow Chaser) against the Great Bapho. It's not count as a hit, that's why it has crashed several times.
changed status to: Invalid
Would actually be @killmonster2, but regardless of that it's semi-script, semi-core related.
Since it's a skill related issue.
Since it's a skill related issue.
I think this is a valid report because its crashing,.
changed status to: Confirmed
Well, as it seems it's only happening because you did use @killmonster or @killmonster2 or you did @duel or you're just on your GM Accounrt going crazy and killed someone inside the dungeon who is attached to the dungeons script and monsters and such. Something which shouldn't happen that way, that's something that doesn't occur / happen normaly inside that dungeon, so it's not an bug or problem with the script by itself I'd say but influence from an outside factor which shouldn't happen normaly.
I wouldn't know a way either to fix that problem anyway script wise, if any, it would needed to be handled source wise.
I wouldn't know a way either to fix that problem anyway script wise, if any, it would needed to be handled source wise.
yes looks like a core problem, anyone can get a gdb of the crash? its quite hard for me to reproduce it i'd have to do the whole dungeon quest more than once X_X
Ind, this happens anytime a monster with an event label is killed without an RID. There was an old discussion somewhere about making @killmonster auto-attach RID to the user... can't remember what the outcome was. It's probably not a bad idea.
Edit: Lighta made a patch, try it? http://upaste.me/625a5141e5139904
Edit: Lighta made a patch, try it? http://upaste.me/625a5141e5139904
Edited by Euphy, 05 June 2013 - 05:18 PM.
Is this still an issue?
If it is, I wouldn't attach a RID when it is not necessary. There are scripts perfectly capable to run without a RID, and @killmonster should not enforce one to be attached.
The problem should be solved elsewhere (making the mapserver not to crash when certain commands are called without RID, and instead terminating script execution)
If it is, I wouldn't attach a RID when it is not necessary. There are scripts perfectly capable to run without a RID, and @killmonster should not enforce one to be attached.
The problem should be solved elsewhere (making the mapserver not to crash when certain commands are called without RID, and instead terminating script execution)
yes it is
then you get an error instead
*killmonster or *killmonsterall script command doesn't execute the event label
which works correctly because the scripter should conditioned them with scripts
but for @killmonster ...
sometimes the event label are counting the monsters left on the map
if a stupid GM do @killmonster, then the event will get stuck ...
example like WoE script,
if nobody has yet to touch the emperium, @killmonster will make the emperium missing from the castle
because the 1st line after OnAgitBreak is already getcharid(2)
https://github.com/H...t_main.txt#L101
I like the way Lighta's fix ... attached all the events for himself,
instead of those who has deal a little damage to the monster
prontera,156,187,6 script dfkjhsdfkjs 100,{ if ( mobcount( strcharinfo(3), strnpcinfo(0)+"::Onaaa" ) ) killmonster strcharinfo(3), strnpcinfo(0)+"::Onaaa"; else monster "this", -1,-1, "--ja--", 1002, 1, strnpcinfo(0)+"::Onaaa"; end; Onaaa: getitem 501, 1; end; }summon a monster with this script, then @killmonster or @killmonster2 it
then you get an error instead
*killmonster or *killmonsterall script command doesn't execute the event label
which works correctly because the scripter should conditioned them with scripts
but for @killmonster ...
sometimes the event label are counting the monsters left on the map
if a stupid GM do @killmonster, then the event will get stuck ...
example like WoE script,
if nobody has yet to touch the emperium, @killmonster will make the emperium missing from the castle
because the 1st line after OnAgitBreak is already getcharid(2)
https://github.com/H...t_main.txt#L101
I like the way Lighta's fix ... attached all the events for himself,
instead of those who has deal a little damage to the monster
bump
Bumping