Jump to content
  • 0

Battleground: PVP 1.0 - AnnieRuru Help


leonardofan

Question


  • Group:  Members
  • Topic Count:  15
  • Topics Per Day:  0.00
  • Content Count:  25
  • Reputation:   0
  • Joined:  01/15/15
  • Last Seen:  

I would like to prevent the flood from coming out and entering the room


//===== rAthena Script =======================================
//= Battleground: PVP
//===== By: ==================================================
//= AnnieRuru
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= A simple battleground script:
//= Kill players from the other team.
//===== Additional Comments: =================================
//= 1.0 First version, edited. [Euphy]
//============================================================

-    script    bg_pvp1#control1    -1,{
OnInit:
    .minplayer2start = 4;      // minimum players to start (ex. if 3vs3, set to 3)
    .eventlasting    = 10*60;  // event duration before auto-reset (20 minutes * seconds)
    setarray .rewarditem[0],   // rewards for the winning team: <item>,<amount>,...
        7773, 30;
    end;
OnStart:
    .@Guillaume = getwaitingroomstate( 0, .rednpcname$ );
    .@Croix = getwaitingroomstate( 0, .bluenpcname$ );
    if ( .@Guillaume < .minplayer2start || .@Croix < .minplayer2start ){
        announce "Battleground 5v5 : "+.@Guillaume+"/5 Time Vermelho | "+.@Croix+"/5 Time Azul",13;
        end;
    }

    // create Battleground and teams
    .red = waitingroom2bg( "bat_c01", 58,124, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDead", .rednpcname$ );
    copyarray .team1aid, $@arenamembers, $@arenamembersnum;
    .team1count = .minplayer2start;
    .blue = waitingroom2bg( "bat_c01", 147,54, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDead", .bluenpcname$ );
    copyarray .team2aid, $@arenamembers, $@arenamembersnum;
    .team2count = .minplayer2start;
    delwaitingroom .rednpcname$;
    delwaitingroom .bluenpcname$;
    bg_warp .red, "bat_c01", 58,124;
    bg_warp .blue, "bat_c01", 147,54;
    .score[1] = .score[2] = .minplayer2start;
    bg_updatescore "bat_c01", .score[1], .score[2];

    // match duration
    sleep .eventlasting * 1000;

    // end match, destroy Battleground, reset NPCs
    if ( .score[1] > .score[2] ) {
        mapannounce "bat_c01", "- Time Vermelho Ganhou! -", bc_map;
        callsub L_Reward, 1;
    }
    else if ( .score[1] < .score[2] ) {
        mapannounce "bat_c01", "- Time Azul Perdeu! -", bc_map;
        callsub L_Reward, 2;
    }
    else
        mapannounce "bat_c01", "- Terminou em Empate! -", bc_map;
    bg_warp .red, "prontera",156,182;
    bg_warp .blue, "prontera",156,182;
    bg_destroy .red;
    bg_destroy .blue;
    donpcevent .rednpcname$ +"::OnStart";
    donpcevent .bluenpcname$ +"::OnStart";
    end;

L_Reward:
    for ( .@i = 0; .@i < getd(".team"+ getarg(0) +"count"); .@i++ )
        getitem .rewarditem[0], .rewarditem[1], getd(".team"+ getarg(0) +"aid["+ .@i +"]" );
    return;

// "OnDeath" event
OnRedDead:  callsub L_Dead, 1;
OnBlueDead: callsub L_Dead, 2;
L_Dead:
    .score[ getarg(0) ]--;
    bg_updatescore "bat_c01", .score[1], .score[2];
    while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++;
    deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1;
    setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1;
    bg_leave;
    if ( !.score[ getarg(0) ] )
        awake strnpcinfo(0);
    sleep2 1250;
    percentheal 100,100;
    end;

// "OnQuit" event
OnRedQuit:  callsub L_Quit, 1;
OnBlueQuit: callsub L_Quit, 2;
L_Quit:
    .score[ getarg(0) ]--;
    bg_updatescore "bat_c01", .score[1], .score[2];
    percentheal 100, 100;
    while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++;
    deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1;
    setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1;
    if ( !.score[ getarg(0) ] )
        awake strnpcinfo(0);
    end;
}

prontera,152,191,5    script    Time Azul#bg_pvp1    4_M_CRU_SOLD,{
OnInit:
    sleep 1;
    set getvariableofnpc( .rednpcname$, "bg_pvp1#control1" ), strnpcinfo(0);
OnStart:
    waitingroom "Battleground - 5v5", getvariableofnpc( .minplayer2start, "bg_pvp1#control1" ) +1, "bg_pvp1#control1::OnStart", 1;
    end;
}

prontera,159,191,3    script    Time Vermelho#bg_pvp1    4_M_CRU_SOLD,{
OnInit:
    sleep 1;
    set getvariableofnpc( .bluenpcname$, "bg_pvp1#control1" ), strnpcinfo(0);
OnStart:
    waitingroom "Battleground - 5v5", getvariableofnpc( .minplayer2start, "bg_pvp1#control1" ) +1, "bg_pvp1#control1::OnStart", 1;
    end;
}

bat_c01    mapflag    battleground    2
bat_c01    mapflag    nosave    SavePoint
bat_c01    mapflag    nowarp
bat_c01    mapflag    nowarpto
bat_c01    mapflag    noteleport
bat_c01    mapflag    nomemo
bat_c01    mapflag    nopenalty
bat_c01    mapflag    nobranch
bat_c01    mapflag    noicewall

 

Edited by Emistry
Please use codebox
Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  18
  • Topics Per Day:  0.00
  • Content Count:  2044
  • Reputation:   682
  • Joined:  10/09/12
  • Last Seen:  

I'm quite sure I've made a lot bg_pvp script without waitingroom
.... but I think better make a new one every time,  after all I hardly see any good battleground script request recently

// https://rathena.org/board/topic/117531-battleground-pvp-10-annieruru-help/

function	script	F_ShuffleNumbers	{
	deletearray getarg(2);
	.@static = getarg(0);
	.@range = getarg(1) +1 - .@static;
	.@count = getarg(3, .@range);
	if (.@range <= 0 || .@count <= 0)
		return 0;
	if (.@count > .@range)
		.@count = .@range;
	for (.@i = 0; .@i < .@range; ++.@i)
		.@temparray[.@i] = .@i;
	for (.@i = 0; .@i < .@count; ++.@i) {
		.@rand = rand(.@range);
		set getelementofarray( getarg(2), .@i ), .@temparray[.@rand] + .@static;
		.@temparray[.@rand] = .@temparray[--.@range];
	}
	return .@count;
}

prontera,155,185,5	script	bg_pvp	1_F_MARIA,{
	.minplayer2start = 1; // 1vs1
	mes "bg_pvp";
	if ( .start == true ) {
		mes "bg_pvp is on-going";
		close;
	}
	while ( .aid[.@i] != getcharid(3) && .@i < .size ) ++.@i;
	if ( .@i < .size ) {
		mes "You already join the queue.";
		close;
	}
	select "join";
	mes "you have to stick to this map";
	close2;
	.aid[ .size++ ] = getcharid(3);
	for ( .@i = 0; .@i < .size; ++.@i ) {
		if ( !isloggedin( .aid[.@i] ) ) {
			deletearray .aid[.@i], 1;
			--.@i;
			--.size;
		}
		else {
			attachrid .aid[.@i];
			if ( strcharinfo(3) != strnpcinfo(4) ) {
				deletearray .aid[.@i], 1;
				--.@i;
				--.size;
			}
		}
	}
	detachrid;
	if ( .size < .minplayer2start *2 ) {
		announce .size +" players join", bc_npc | bc_area;
		end;
	}
	.start = true;
	.red = bg_create( "bat_c01",53,128, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDead" );
	.blue = bg_create( "bat_c01",146,56, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDead" );
	callfunc "F_ShuffleNumbers", 0, .size -1, .@r;
	for ( .@i = 0; .@i < .size; ++.@i ) {
		attachrid .aid[ .@r[.@i] ];
		bg_join ( .@i % 2 )? .red : .blue;
	}
	detachrid;
	deletearray .aid;
	.size = 0;
	bg_warp .red, "bat_c03", 53,128;
	bg_warp .blue, "bat_c03", 146,56;
	sleep 30000; // Match Duration
	if ( !.winside )
		mapannounce "bat_c03", "Battle end as time out", bc_map;
	else if ( .winside == .red ) {
		mapannounce "bat_c03", "- Red side Won the match !", bc_map;
		callsub L_reward, .red;
	}
	else if ( .winside == .blue ) {
		mapannounce "bat_c03", "- Blue side Won the match !", bc_map;
		callsub L_reward, .blue;
	}
	bg_destroy .red;
	bg_destroy .blue;
	mapwarp "bat_c03", "prontera",150,185;
	.start = .winside = false;
	end;
L_reward:
	bg_get_data getarg(0), 1;
	for ( .@i = 0; .@i < $@arenamemberscount; ++.@i )
		getitem 501,1, $@arenamembers[.@i];
	return;
OnRedQuit: callsub L_Quit, .red, .blue, "Red";
OnBlueQuit: callsub L_Quit, .blue, .red, "Blue";
L_Quit:
	if ( bg_get_data( getarg(0), 0 ) ) end;
	mapannounce "bat_c03", "All "+ getarg(2) +" team members has Quit!", bc_map;
	.winside = getarg(1);
	awake strnpcinfo(0);
	end;
OnRedDead: callsub L_Dead, .red, .blue, "Red";
OnBlueDead: callsub L_Dead, .lue, .red, "Blue";
L_Dead:
	bg_leave;
	if ( bg_get_data( getarg(0), 0 ) ) end;
	mapannounce "bat_c03", "All "+ getarg(2) +" team members has killed!", bc_map;
	.winside = getarg(1);
	awake strnpcinfo(0);
	sleep2 1250;
	percentheal 100,100;
	end;
}

bat_c03	mapflag	battleground
bat_c03	mapflag	nosave	SavePoint
bat_c03	mapflag	nowarp
bat_c03	mapflag	nowarpto
bat_c03	mapflag	noteleport
bat_c03	mapflag	nomemo
bat_c03	mapflag	nopenalty
bat_c03	mapflag	nobranch
bat_c03	mapflag	noicewall

@leonardofan

Edited by AnnieRuru
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  15
  • Topics Per Day:  0.00
  • Content Count:  25
  • Reputation:   0
  • Joined:  01/15/15
  • Last Seen:  

http://prntscr.com/m5fm9v

I'm using a yours that made some modifications, it is possible to add add a number of kills to determine if a team was champion or not instead of just dying and going to prontera?
 

Sorry for my english, it is also possible to change this waiting room to some @bg and appear the functions to enter the BG from anywhere, it does not have to be anything so dynamic just do not need to stay in the chat is already great.

 

 

 

 

//===== rAthena Script =======================================
//= Battleground: PVP
//===== By: ==================================================
//= AnnieRuru
//===== Current Version: =====================================
//= 1.0
//===== Compatible With: =====================================
//= rAthena Project
//===== Description: =========================================
//= A simple battleground script:
//= Kill players from the other team.
//===== Additional Comments: =================================
//= 1.0 First version, edited. [Euphy]
//============================================================

 

 

 

-    script    bg_pvp1#control1    -1,{
OnInit:
    .minplayer2start = 2;      // minimum players to start (ex. if 3vs3, set to 3)
    .minlevel2start = 999;      // level minimo
    .maxlevel2start = 999;      // level maximo
    .eventlasting    = 8*60;  // event duration before auto-reset (20 minutes * seconds)
    setarray .rewarditem[0],   // rewards for the winning team: <item>,<amount>,...
        7773, 30;
    end;
OnStart:
    .@Guillaume = getwaitingroomstate( 0, .rednpcname$ );
    .@Croix = getwaitingroomstate( 0, .bluenpcname$ );
    if ( .@Guillaume < .minplayer2start || .@Croix < .minplayer2start ){
        announce "Batalha Campal 3v3 : "+.@Guillaume+"/3 Time Azul | "+.@Croix+"/3 Time Vermelho",bc_all | bc_blue;
        end;
    }

    // create Battleground and teams
    .red = waitingroom2bg( "bat_c01", 58,124, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDead", .rednpcname$ );
    copyarray .team1aid, $@arenamembers, $@arenamembersnum;
    .team1count = .minplayer2start;
    .blue = waitingroom2bg( "bat_c01", 147,54, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDead", .bluenpcname$ );
    copyarray .team2aid, $@arenamembers, $@arenamembersnum;
    .team2count = .minplayer2start;
    delwaitingroom .rednpcname$;
    delwaitingroom .bluenpcname$;
    bg_warp .red, "bat_c01", 58,124;
    bg_warp .blue, "bat_c01", 147,54;
    .score[1] = .score[2] = .minplayer2start;
    bg_updatescore "bat_c01", .score[1], .score[2];

    // match duration
    sleep .eventlasting * 1000;

    // end match, destroy Battleground, reset NPCs
    if ( .score[1] > .score[2] ) {
        mapannounce "bat_c01", "- Time Vermelho Ganhou! -", bc_map | bc_blue;
        callsub L_Reward, 1;
    }
    else if ( .score[1] < .score[2] ) {
        mapannounce "bat_c01", "- Time Azul Perdeu! -", bc_map | bc_blue;
        callsub L_Reward, 2;
    }
    else
        mapannounce "bat_c01", "- Terminou em Empate! -", bc_map | bc_blue;
    bg_warp .red, "prontera",156,182;
    bg_warp .blue, "prontera",156,182;
    bg_destroy .red;
    bg_destroy .blue;
    donpcevent .rednpcname$ +"::OnStart";
    donpcevent .bluenpcname$ +"::OnStart";
    end;

L_Reward:
    for ( .@i = 0; .@i < getd(".team"+ getarg(0) +"count"); .@i++ )
        getitem .rewarditem[0], .rewarditem[1], getd(".team"+ getarg(0) +"aid["+ .@i +"]" );
    return;

// "OnDeath" event
OnRedDead:  callsub L_Dead, 1;
OnBlueDead: callsub L_Dead, 2;
L_Dead:
    .score[ getarg(0) ]--;
    bg_updatescore "bat_c01", .score[1], .score[2];
    while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++;
    deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1;
    setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1;
    bg_leave;
    if ( !.score[ getarg(0) ] )
        awake strnpcinfo(0);
    sleep2 1250;
    percentheal 100,100;
    end;

// "OnQuit" event
OnRedQuit:  callsub L_Quit, 1;
OnBlueQuit: callsub L_Quit, 2;
L_Quit:
    .score[ getarg(0) ]--;
    bg_updatescore "bat_c01", .score[1], .score[2];
    percentheal 100, 100;
    while ( getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ) != getcharid(3) && .@i < getd(".team"+ getarg(0) +"count") ) .@i++;
    deletearray getd( ".team"+ getarg(0) +"aid["+ .@i +"]" ), 1;
    setd ".team"+ getarg(0) +"count", getd(".team"+ getarg(0) +"count") -1;
    if ( !.score[ getarg(0) ] )
        awake strnpcinfo(0);
    end;
}

prontera,165,186,3    script    Time Azul#bg_pvp1    4_M_CRU_SOLD,{
end;
OnInit:
    sleep 1;
    set getvariableofnpc( .rednpcname$, "bg_pvp1#control1" ), strnpcinfo(0);
OnStart:
    waitingroom "Campal - 3v3", getvariableofnpc( .minplayer2start, "bg_pvp1#control1" ) +1, "bg_pvp1#control1::OnStart", 1, 0, getvariableofnpc( .minlevel2start, "bg_pvp1#control1" ), getvariableofnpc( .maxlevel2start, "bg_pvp1#control1" );
    end;
}

prontera,165,183,3    script    Time Vermelho#bg_pvp1    4_M_CRU_SOLD,{
end;
OnInit:
    sleep 1;
    set getvariableofnpc( .bluenpcname$, "bg_pvp1#control1" ), strnpcinfo(0);
OnStart:
    waitingroom "Campal - 3v3", getvariableofnpc( .minplayer2start, "bg_pvp1#control1" ) +1, "bg_pvp1#control1::OnStart", 1, 0, getvariableofnpc( .minlevel2start, "bg_pvp1#control1" ), getvariableofnpc( .maxlevel2start, "bg_pvp1#control1" );
    end;
}

bat_c01    mapflag    battleground    2
bat_c01    mapflag    nosave    SavePoint
bat_c01    mapflag    nowarp
bat_c01    mapflag    nowarpto
bat_c01    mapflag    noteleport
bat_c01    mapflag    nomemo
bat_c01    mapflag    nopenalty
bat_c01    mapflag    nobranch
bat_c01    mapflag    noicewall

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  18
  • Topics Per Day:  0.00
  • Content Count:  2044
  • Reputation:   682
  • Joined:  10/09/12
  • Last Seen:  

you are using older rathena version, this one should work

// https://rathena.org/board/topic/117531-battleground-pvp-10-annieruru-help/

function	script	F_ShuffleNumbers	{
	deletearray getarg(2);
	.@static = getarg(0);
	.@range = getarg(1) +1 - .@static;
	.@count = getarg(3, .@range);
	if (.@range <= 0 || .@count <= 0)
		return 0;
	if (.@count > .@range)
		.@count = .@range;
	for (.@i = 0; .@i < .@range; ++.@i)
		.@temparray[.@i] = .@i;
	for (.@i = 0; .@i < .@count; ++.@i) {
		.@rand = rand(.@range);
		set getelementofarray( getarg(2), .@i ), .@temparray[.@rand] + .@static;
		.@range--;
		.@temparray[.@rand] = .@temparray[.@range];
	}
	return .@count;
}

prontera,155,185,5	script	bg_pvp	1_F_MARIA,{
	.minplayer2start = 1; // 1vs1
	mes "bg_pvp";
	if ( .start == true ) {
		mes "bg_pvp is on-going";
		close;
	}
	while ( .aid[.@i] != getcharid(3) && .@i < .size ) { .@i++; }
	if ( .@i < .size ) {
		mes "You already join the queue.";
		close;
	}
	select "join";
	mes "you have to stick to this map";
	close2;
	.aid[ .size ] = getcharid(3);
	.size++;
	for ( .@i = 0; .@i < .size; .@i++ ) {
		if ( !isloggedin( .aid[.@i] ) ) {
			deletearray .aid[.@i], 1;
			.@i--;
			.size--;
		}
		else {
			attachrid .aid[.@i];
			if ( strcharinfo(3) != strnpcinfo(4) ) {
				deletearray .aid[.@i], 1;
				.@i--;
				.size--;
			}
		}
	}
	detachrid;
	if ( .size < .minplayer2start *2 ) {
		announce .size +" players join", bc_npc | bc_area;
		end;
	}
	.start = true;
	.red = bg_create( "bat_c01",53,128, strnpcinfo(0)+"::OnRedQuit", strnpcinfo(0)+"::OnRedDead" );
	.blue = bg_create( "bat_c01",146,56, strnpcinfo(0)+"::OnBlueQuit", strnpcinfo(0)+"::OnBlueDead" );
	callfunc "F_ShuffleNumbers", 0, .size -1, .@r;
	for ( .@i = 0; .@i < .size; .@i++ ) {
		attachrid .aid[ .@r[.@i] ];
		bg_join ( .@i % 2 )? .red : .blue;
	}
	detachrid;
	deletearray .aid;
	.size = 0;
	bg_warp .red, "bat_c03", 53,128;
	bg_warp .blue, "bat_c03", 146,56;
	sleep 30000; // Match Duration
	if ( !.winside )
		mapannounce "bat_c03", "Battle end as time out", bc_map;
	else if ( .winside == .red ) {
		mapannounce "bat_c03", "- Red side Won the match !", bc_map;
		callsub L_reward, .red;
	}
	else if ( .winside == .blue ) {
		mapannounce "bat_c03", "- Blue side Won the match !", bc_map;
		callsub L_reward, .blue;
	}
	bg_destroy .red;
	bg_destroy .blue;
	mapwarp "bat_c03", "prontera",150,185;
	.start = .winside = false;
	end;
L_reward:
	bg_get_data getarg(0), 1;
	for ( .@i = 0; .@i < $@arenamemberscount; .@i++ )
		getitem 501,1, $@arenamembers[.@i];
	return;
OnRedQuit: callsub L_Quit, .red, .blue, "Red";
OnBlueQuit: callsub L_Quit, .blue, .red, "Blue";
L_Quit:
	if ( bg_get_data( getarg(0), 0 ) ) end;
	mapannounce "bat_c03", "All "+ getarg(2) +" team members has Quit!", bc_map;
	.winside = getarg(1);
	awake strnpcinfo(0);
	end;
OnRedDead: callsub L_Dead, .red, .blue, "Red";
OnBlueDead: callsub L_Dead, .lue, .red, "Blue";
L_Dead:
	bg_leave;
	if ( bg_get_data( getarg(0), 0 ) ) end;
	mapannounce "bat_c03", "All "+ getarg(2) +" team members has killed!", bc_map;
	.winside = getarg(1);
	awake strnpcinfo(0);
	sleep2 1250;
	percentheal 100,100;
	end;
}

bat_c03	mapflag	battleground
bat_c03	mapflag	nosave	SavePoint
bat_c03	mapflag	nowarp
bat_c03	mapflag	nowarpto
bat_c03	mapflag	noteleport
bat_c03	mapflag	nomemo
bat_c03	mapflag	nopenalty
bat_c03	mapflag	nobranch
bat_c03	mapflag	noicewall
1 hour ago, leonardofan said:

it is possible to add add a number of kills to determine if a team was champion or not instead of just dying and going to prontera?

I don't understand this sentence, but based on my past experience, most people would either asked for

bg_pvp_round <--- just like the one in github, but instead end in 1 round, you have to fight multiple rounds, the team with win the most rounds wins

bg_pvp_points <-- each team has 15 lives,  the team that quickly lose 15 points first lose the match

bg_pvp_leader <-- modification of bg_pvp_points, it just kill the leader earn extra points (somehow this script is the most popular one)

btw, forget those scripts on these topic, the technique was too old and might not work on latest rathena.
I just provide the link because I remember I did all those stuffs before
and I usually always write a new one on request because I keep finding new techniques to write bg scripts =/

 

Edited by AnnieRuru
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  15
  • Topics Per Day:  0.00
  • Content Count:  25
  • Reputation:   0
  • Joined:  01/15/15
  • Last Seen:  

works even better than I hoped it might have some blockage for who flooda coming in and out of the room?
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  18
  • Topics Per Day:  0.00
  • Content Count:  2044
  • Reputation:   682
  • Joined:  10/09/12
  • Last Seen:  

lol... fixed 2 bugs for the script on that topic, although both are rare bug
1. if the player die purposely during the counting down [5],[4],[3],[2] ... the player is permanently stuck and can only recover by log out
2. there is still 1 player left in your team, and another team members logout, even though you are still alive but the script count as you lost that round
that's why the more scripts I write, the more I get wiser XD

bg_pvp_round.txt

 

@leonardofan

Edited by AnnieRuru
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  15
  • Topics Per Day:  0.00
  • Content Count:  25
  • Reputation:   0
  • Joined:  01/15/15
  • Last Seen:  

On 11/01/2019 at 13:34, AnnieRuru said:

lol ... consertou 2 bugs para o script sobre esse tópico, embora ambos sejam raros bug
1. se o jogador morrer propositalmente durante a contagem decrescente [5], [4], [3], [2] ... o jogador está permanentemente empacado e só pode recuperar
efetuando logout 2. ainda resta 1 jogador em sua equipe, e outros membros da equipe efetuam logout, mesmo que você ainda esteja vivo, mas o script conta quando você perdeu essa rodada,
é por isso que mais scripts eu escrevo , quanto mais eu fico mais sábio XD

bg_pvp_round.txt

 

@leonardofan

http://prntscr.com/m9jhlb

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  18
  • Topics Per Day:  0.00
  • Content Count:  2044
  • Reputation:   682
  • Joined:  10/09/12
  • Last Seen:  

sorry, if you are using very old emulator and don't want waitingroom, the only way is source edits

I used to have setbgid source release ...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...