Disabling auto respawn on death in pvp maps.

anjasoleil0

New member
Messages
77
Points
0
Hi, Is there a way we can disable the auto re-spawn on death (when being killed twice) on pvp maps? and can we also disable the auto re-locate on GVG maps?

 
int pc_dead(struct map_session_data *sd,struct block_list *src) {... // pvp // disable certain pvp functions on pk_mode [Valaris] if( map->list[sd->bl.m].flag.pvp && !battle_config.pk_mode && !map->list[sd->bl.m].flag.pvp_nocalcrank ) { sd->pvp_point -= 5; sd->pvp_lost++; if( src && src->type == BL_PC ) { struct map_session_data *ssd = (struct map_session_data *)src; ssd->pvp_point++; ssd->pvp_won++; } if( sd->pvp_point < 0 ) { timer->add(tick+1, pc->respawn_timer,sd->bl.id,0); // Comment this line if you want to disable respawning in PvP return 1|8; } } //GvG if( map_flag_gvg2(sd->bl.m) ) { timer->add(tick+1, pc->respawn_timer, sd->bl.id, 0); //Comment this line if you want to disable respawn in WoE return 1|8; } else if( sd->bg_id ) { struct battleground_data *bgd = bg->team_search(sd->bg_id); if( bgd && bgd->mapindex > 0 ) { // Respawn by BG timer->add(tick+1000, pc->respawn_timer, sd->bl.id, 0); //Comment this line if you want to disable respawn in BG return 1|8; } }...}
Comment the lines as told in src/map/pc.c. Untested, but i think it should work.

 
Last edited by a moderator:
int pc_dead(struct map_session_data *sd,struct block_list *src) {... // pvp // disable certain pvp functions on pk_mode [Valaris] if( map->list[sd->bl.m].flag.pvp && !battle_config.pk_mode && !map->list[sd->bl.m].flag.pvp_nocalcrank ) { sd->pvp_point -= 5; sd->pvp_lost++; if( src && src->type == BL_PC ) { struct map_session_data *ssd = (struct map_session_data *)src; ssd->pvp_point++; ssd->pvp_won++; } if( sd->pvp_point < 0 ) { timer->add(tick+1, pc->respawn_timer,sd->bl.id,0); // Comment this line if you want to disable respawning in PvP return 1|8; } } //GvG if( map_flag_gvg2(sd->bl.m) ) { timer->add(tick+1, pc->respawn_timer, sd->bl.id, 0); //Comment this line if you want to disable respawn in WoE return 1|8; } else if( sd->bg_id ) { struct battleground_data *bgd = bg->team_search(sd->bg_id); if( bgd && bgd->mapindex > 0 ) { // Respawn by BG timer->add(tick+1000, pc->respawn_timer, sd->bl.id, 0); //Comment this line if you want to disable respawn in BG return 1|8; } }...}
Comment the lines as told in src/map/pc.c. Untested, but i think it should work.
It works! But, after my second respawn, I cannot get resurrected, Also i'd like to enable resurrection inside WoE Maps. Is it possible?

 
Try to comment these lines in src/map/skill.c:

int skill_castend_nodamage_id(struct block_list *src, struct block_list *bl, uint16 skill_id, uint16 skill_lv, int64 tick, int flag) {... case ALL_RESURRECTION: /* if(sd && (map_flag_gvg2(bl->m) || map->list[bl->m].flag.battleground)) { // Comment starting here //No reviving in WoE grounds! clif->skill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0); break; } */ // To here...}

Also, for PvP try to change all

return 1|8;
to

return 0;
after the commented lines. I think that should do the trick. Yet again, lazy to test
default_happy.png


 
YOU DID IT! If you wanna try out my server! I'll be sure to give you something extra! THANKS ALOT! you're epic mr. Garr! +1 ALL AROUND!

 
Last edited by a moderator:
Back
Top