Issue Information
-
#005658
-
4 - High
-
Fixed
Issue Confirmations
-
Yes (4)No (0)
Attached in this report is the error in the quest..
How to solve it? Thanks!
this is odd at first i was able to reproduce but then i recompiled and it didn't happen again o.o
What procedures did you take? Try running the instance a third time maybe?
instances shows duplicate npc's when run it twice as for my case. i wonder when i reverted it back to the old revision r15996 it runs perfect!
instances shows duplicate npc's when run it twice as for my case. i wonder when i reverted it back to the old revision r15996 it runs perfect!
actually, reverting to 15996 doesn't solve the problem for me. it seems to not occur as often but it still happens sometimes.
Ok i'll try it again later. for what i am doing before is I go one step backwards at a time starting around from r16005 until i reach a revision that works which is r15996
and i presumed that the last revision made at that time by epoque broke it, maybe. and i was able to trace it which was the last revision at that time that the instances work.
Edited by xRaisen, 17 May 2012 - 04:40 AM.
I tried also to revert my rev to 15996 but it didn't work. It is still the same..
still not able to reproduce, would like more information.
well its definitely there if all of us produced it and even Masao (confirmed) and you produced it before. I'll try again with the current latest checkout and see if it's still there.
Well i only confirmed it and moved it to core section because you annoyed the hell out of me with this bug report.
I never tried to reproduce it so i couldn't reproduce it.
im sorry if its annoying, but i always getting this kind of duplicate npc error. i suspect that the clearing of the npc variable is not clearing it correctly. maybe it does but it skips the npc on db_destroy? im sure the
instance[instance_id].vars = NULL;is working well for it is issuing the same map when the map is available but the npc cant be duplicated. please correct me if im pointing it wrong. heres my thread http://rathena.org/b...es-not-working/
Edited by xRaisen, 25 May 2012 - 05:17 AM.
not related at all, these vars stored in the instance array are for the \'\ npc variable type which is exclusive to instances and yet not used in any of the instances rathena provides.im sorry if its annoying, but i always getting this kind of duplicate npc error. i suspect that the clearing of the npc variable is not clearing it correctly. maybe it does but it skips the npc on db_destroy? im sure the
instance[instance_id].vars = NULL;is working well for it is issuing the same map when the map is available but the npc cant be duplicated. please correct me if im pointing it wrong. heres my thread http://rathena.org/b...es-not-working/
thanks Ind for the light. im kinda desperate to find whats causing it as part of my rathena source exploration.
Edited by xRaisen, 25 May 2012 - 08:36 AM.
Solution, modify the map.c
int cleanup_sub(struct block_list *bl, va_list ap)
{
nullpo_ret(bl);
switch(bl->type) {
case BL_PC:
map_quit((struct map_session_data *) bl);
break;
case BL_NPC:
//npc_unload((struct npc_data *)bl,false);
npc_unload((struct npc_data *)bl,true);
break;
case BL_MOB:
unit_free(bl,CLR_OUTSIGHT);
break;
case BL_PET:
//There is no need for this, the pet is removed together with the player. [Skotlex]
break;
case BL_ITEM:
map_clearflooritem(bl->id);
break;
case BL_SKILL:
skill_delunit((struct skill_unit *) bl);
break;
}
return 1;
}
Well i only confirmed it and moved it to core section because you annoyed the hell out of me with this bug report.I never tried to reproduce it so i couldn't reproduce it.
Oh, way to go Mr. Script Dev. That's sure a smart thing to do!
Solution, modify the map.cint cleanup_sub(struct block_list *bl, va_list ap){nullpo_ret(bl);switch(bl->type) {case BL_PC:map_quit((struct map_session_data *) bl);break;case BL_NPC://npc_unload((struct npc_data *)bl,false);npc_unload((struct npc_data *)bl,true);break;case BL_MOB:unit_free(bl,CLR_OUTSIGHT);break;case BL_PET://There is no need for this, the pet is removed together with the player. [Skotlex]break;case BL_ITEM:map_clearflooritem(bl->id);break;case BL_SKILL:skill_delunit((struct skill_unit *) bl);break;}return 1;}
Thanks so much, you're the best.
Fixed in [rev=16153] Instance NPCs will now be cleared properly. Super-Special Thanks to Pig321
Had error when I recompiled my SVN
View attached photo.
Thanks!
thanks Pig321. a real good find. i cant update it yet. damn this. im heart broken cant think well...........................
try to recompile from scratch with a 'make clean && make sql'Had error when I recompiled my SVNView attached photo.Thanks!