Jump to content
  • 0

putting barricades on KoE map


AinsLord

Question


  • Group:  Members
  • Topic Count:  257
  • Topics Per Day:  0.08
  • Content Count:  737
  • Reputation:   18
  • Joined:  11/21/15
  • Last Seen:  

welp im trying to add barricade on my koe

it seems working just fine no errors on console

but its not enough for me

after killing the emperium the killed barricades will spawn in 3sec or 5secs

with map announcement

here is the script

-	script	KoEbarricade	78,{ 
OnInit:		
	setcell "koe",45,53,45,46,cell_walkable,0; //non walkable

	monster "koe",45,51,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead1";
	monster "koe",45,48,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead1";

	setcell "koe",53,54,46,54,cell_walkable,0; //non walkable

	monster "koe",51,54,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead2";
	monster "koe",48,54,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead2";

	setcell "koe",54,46,54,53,cell_walkable,0; //non walkable

	monster "koe",54,48,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead3";
	monster "koe",54,51,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead3";

	setcell "koe",46,45,53,45,cell_walkable,0; //non walkable

	monster "koe",48,45,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead4";
	monster "koe",51,45,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead4";

end;

OnBarDead1:
	setcell "koe",45,53,45,46,cell_walkable,1;
OnBarDead2:
	setcell "koe",53,54,46,54,cell_walkable,1;
OnBarDead3:
	setcell "koe",54,46,54,53,cell_walkable,1;
OnBarDead4:
	setcell "koe",46,45,53,45,cell_walkable,1;
end;
}
	

PS: do i need to merge this script on my KoE script?

thanks in advance 

Edited by AinsLord
more info
  • Upvote 1
Link to comment
Share on other sites

15 answers to this question

Recommended Posts

  • 1

  • Group:  Members
  • Topic Count:  155
  • Topics Per Day:  0.11
  • Content Count:  349
  • Reputation:   12
  • Joined:  04/05/20
  • Last Seen:  

8 hours ago, AinsLord said:

sure im actually using ms. annies script


//===== Hercules Script ===========================================
//= King of Emperium Hill
//===== By: =======================================================
//= AnnieRuru
//===== Current Version: ==========================================
//= 1.2
//===== Compatible With: ==========================================
//= hercules & rathena 2018-04-08
//===== Description: ==============================================
//= defends the emperium in the middle of the map until times up
//===== Topic =====================================================
//= http://hercules.ws/board/topic/4495-gvg-king-of-emperium-hill/
//===== Additional Comments: ======================================
//= Finally there is a topic for this !
//=================================================================

-	script	KoE	FAKE_NPC,{
OnInit:
	disablenpc "The King#KoE";
	disablenpc "The King#Lou";
	disablenpc "The King#Alde";
	disablenpc "The King#LHZ";
	disablenpc "The King#Prt";
	disablenpc "The King#Hug";
	disablenpc "Exit#KoE";
	bindatcmd "koe", strnpcinfo(0)+"::OnCommand", 99,100;
	end;
OnCommand:
	if ( compare( .@atcmd_parameters$, "on" ) ) goto L_start;
	else if ( compare( .@atcmd_parameters$, "off" ) ) goto L_end;
	else {
		dispbottom "type - '@koe on' to start the event";
		dispbottom "type - '@koe off' to end the event";
	}
	end;
L_start:
OnSun2000: // everyday 8pm starts
	if ( .start ) end;
	gvgon "koe";
	announce "The King of Emperium Hill has begun!", bc_all;
	.start = true;
	enablenpc "The King#KoE";
	enablenpc "The King#Lou";
	enablenpc "The King#Alde";
	enablenpc "The King#LHZ";
	enablenpc "The King#Prt";
	enablenpc "The King#Hug";
	disablenpc "Exit#KoE";
	$koegid = 0;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 3;
	killmonster "koe", "KoE::OnEmpDead";
	monster "koe",49,49, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
	end;
L_end:
OnSun2100: // everyday 8:30pm ends
	gvgoff "koe";
	announce "The King of Emperium Hill is over!", bc_all;
	.start = 0;
	enablenpc "Exit#KoE";
	disablenpc "The King#KoE";
	disablenpc "The King#Lou";
	disablenpc "The King#Alde";
	disablenpc "The King#LHZ";
	disablenpc "The King#Prt";
	disablenpc "The King#Hug";
	killmonster "koe", "KoE::OnEmpDead";
	maprespawnguildid "koe", $koegid, 2; // uncomment this line to kick non-owner off the map when event ends
	end;
OnEmpDead:
	$koegid = getcharid(2);
	announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 2;
	killmonster "koe", "KoE::OnEmpDead";
	sleep 500;
	if ( .start )
		monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
	end;
}

// KoE Entrance
alexandria,165,143,3	script	The King#KoE	1_M_MERCHANT,{
	mes "[The King]";
	if ( !getcharid(2) ) {
		mes "You must have a guild to participate in the ^FF0000King of Emperium Hill Tournament^000000.";
		close;
	}
	mes "Hello.";
	mes "Would you like to participate in the ^FF0000King of Emperium Hill Tournament^000000?";
	if ( select ( "Yes", "No" ) == 2 ) close;
	if ( !getvariableofnpc( .start, "KoE" ) ) close;
	switch( rand(1,4) ){
	case 1:	warp "koe", 14, 17; end;
	case 2:	warp "koe", 14, 84; end;
	case 3:	warp "koe", 85, 84; end;
	case 4:	warp "koe", 85, 16; end;
	}
}

// KoE Exit
koe,49,56,5	script	Exit#KoE	1_M_BARD,{
	mes "[Exit]";
	mes "See ya.";
	close2;
	warp "Save",0,0;
	if ( getcharid(2) == $koegid )
		getitem 36028, 10;
		getitem 7227, 50;
		getitem 37001, 5;	 // configure prize here - Poring Coin
	end;
}

// Flags
koe,25,74,5	script	King of Emperium Hill#1::koe_flag	GUILD_FLAG,{
	if ( !$koegid ) end;
	mes "[King of Emperium Hill]";
	mes "The Current King of Emperium Hill is the ["+ getguildname($koegid) +"] guild.";
	close;
OnInit: // Uncomment this line to make the emblem stay after @reloadscript
OnRevKoE:
	flagemblem $koegid;
	end;
}
koe,39,40,3	duplicate(koe_flag)	King of Emperium Hill#2	GUILD_FLAG
koe,39,59,1	duplicate(koe_flag)	King of Emperium Hill#3	GUILD_FLAG
koe,60,59,7	duplicate(koe_flag)	King of Emperium Hill#4	GUILD_FLAG
koe,60,40,5	duplicate(koe_flag)	King of Emperium Hill#5	GUILD_FLAG
koe,74,74,3	duplicate(koe_flag)	King of Emperium Hill#6	GUILD_FLAG
koe,75,24,1	duplicate(koe_flag)	King of Emperium Hill#7	GUILD_FLAG
koe,26,24,7	duplicate(koe_flag)	King of Emperium Hill#8	GUILD_FLAG

hugel,101,144,3	duplicate(The King#KoE)	The King#Hug	1_M_MERCHANT
louyang,212,101,5	duplicate(The King#KoE)	The King#Lou	1_M_MERCHANT
aldebaran,133,113,5	duplicate(The King#KoE)	The King#Alde	1_M_MERCHANT
lighthalzen,154,105,5	duplicate(The King#KoE)	The King#LHZ	1_M_MERCHANT
prontera,163,317,6,3	duplicate(The King#KoE)	The King#Prt	1_M_MERCHANT
//alexandria,165,143,3	duplicate(The King#KoE)	The King#Alex	1_M_MERCHANT


koe	mapflag	nobranch
koe	mapflag	nomemo
koe	mapflag	nopenalty
koe	mapflag	noreturn
koe	mapflag	nosave	SavePoint
koe	mapflag	noteleport
//koe	mapflag	gvg_noparty
koe	mapflag	nowarp
koe	mapflag	nowarpto
koe	mapflag	guildlock
koe	mapflag	noicewall

here it is sir @Origami

OnEmpDead:
	$koegid = getcharid(2);
	announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 2;
	killmonster "koe", "KoE::OnEmpDead";
	sleep 500;
	if ( .start )
		monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
        sleep 1500;
        donpcevent "KoEbarricade::OnInit"
	end;
}

Try that sir

Edited by Origami
  • Upvote 1
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  155
  • Topics Per Day:  0.11
  • Content Count:  349
  • Reputation:   12
  • Joined:  04/05/20
  • Last Seen:  

2 hours ago, AinsLord said:

welp im trying to add barricade on my koe

it seems working just fine no errors on console

but its not enough for me

after killing the emperium the killed barricades will spawn in 3sec or 5secs

with map announcement

here is the script


-	script	KoEbarricade	78,{ 
OnInit:		
	setcell "koe",45,53,45,46,cell_walkable,0; //non walkable

	monster "koe",45,51,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead1";
	monster "koe",45,48,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead1";

	setcell "koe",53,54,46,54,cell_walkable,0; //non walkable

	monster "koe",51,54,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead2";
	monster "koe",48,54,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead2";

	setcell "koe",54,46,54,53,cell_walkable,0; //non walkable

	monster "koe",54,48,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead3";
	monster "koe",54,51,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead3";

	setcell "koe",46,45,53,45,cell_walkable,0; //non walkable

	monster "koe",48,45,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead4";
	monster "koe",51,45,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead4";

end;

OnBarDead1:
	setcell "koe",45,53,45,46,cell_walkable,1;
OnBarDead2:
	setcell "koe",53,54,46,54,cell_walkable,1;
OnBarDead3:
	setcell "koe",54,46,54,53,cell_walkable,1;
OnBarDead4:
	setcell "koe",46,45,53,45,cell_walkable,1;
end;
}
	

PS: do i need to merge this script on my KoE script?

thanks in advance 

can you show your KOE script here ... you can try to hideonnpc and hideoffnpc then sett the cell to cell_walkable,0; upon killing the emperium 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  257
  • Topics Per Day:  0.08
  • Content Count:  737
  • Reputation:   18
  • Joined:  11/21/15
  • Last Seen:  

2 hours ago, Origami said:

can you show your KOE script here ... you can try to hideonnpc and hideoffnpc then sett the cell to cell_walkable,0; upon killing the emperium 

sure im actually using ms. annies script

//===== Hercules Script ===========================================
//= King of Emperium Hill
//===== By: =======================================================
//= AnnieRuru
//===== Current Version: ==========================================
//= 1.2
//===== Compatible With: ==========================================
//= hercules & rathena 2018-04-08
//===== Description: ==============================================
//= defends the emperium in the middle of the map until times up
//===== Topic =====================================================
//= http://hercules.ws/board/topic/4495-gvg-king-of-emperium-hill/
//===== Additional Comments: ======================================
//= Finally there is a topic for this !
//=================================================================

-	script	KoE	FAKE_NPC,{
OnInit:
	disablenpc "The King#KoE";
	disablenpc "The King#Lou";
	disablenpc "The King#Alde";
	disablenpc "The King#LHZ";
	disablenpc "The King#Prt";
	disablenpc "The King#Hug";
	disablenpc "Exit#KoE";
	bindatcmd "koe", strnpcinfo(0)+"::OnCommand", 99,100;
	end;
OnCommand:
	if ( compare( .@atcmd_parameters$, "on" ) ) goto L_start;
	else if ( compare( .@atcmd_parameters$, "off" ) ) goto L_end;
	else {
		dispbottom "type - '@koe on' to start the event";
		dispbottom "type - '@koe off' to end the event";
	}
	end;
L_start:
OnSun2000: // everyday 8pm starts
	if ( .start ) end;
	gvgon "koe";
	announce "The King of Emperium Hill has begun!", bc_all;
	.start = true;
	enablenpc "The King#KoE";
	enablenpc "The King#Lou";
	enablenpc "The King#Alde";
	enablenpc "The King#LHZ";
	enablenpc "The King#Prt";
	enablenpc "The King#Hug";
	disablenpc "Exit#KoE";
	$koegid = 0;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 3;
	killmonster "koe", "KoE::OnEmpDead";
	monster "koe",49,49, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
	end;
L_end:
OnSun2100: // everyday 8:30pm ends
	gvgoff "koe";
	announce "The King of Emperium Hill is over!", bc_all;
	.start = 0;
	enablenpc "Exit#KoE";
	disablenpc "The King#KoE";
	disablenpc "The King#Lou";
	disablenpc "The King#Alde";
	disablenpc "The King#LHZ";
	disablenpc "The King#Prt";
	disablenpc "The King#Hug";
	killmonster "koe", "KoE::OnEmpDead";
	maprespawnguildid "koe", $koegid, 2; // uncomment this line to kick non-owner off the map when event ends
	end;
OnEmpDead:
	$koegid = getcharid(2);
	announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 2;
	killmonster "koe", "KoE::OnEmpDead";
	sleep 500;
	if ( .start )
		monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
	end;
}

// KoE Entrance
alexandria,165,143,3	script	The King#KoE	1_M_MERCHANT,{
	mes "[The King]";
	if ( !getcharid(2) ) {
		mes "You must have a guild to participate in the ^FF0000King of Emperium Hill Tournament^000000.";
		close;
	}
	mes "Hello.";
	mes "Would you like to participate in the ^FF0000King of Emperium Hill Tournament^000000?";
	if ( select ( "Yes", "No" ) == 2 ) close;
	if ( !getvariableofnpc( .start, "KoE" ) ) close;
	switch( rand(1,4) ){
	case 1:	warp "koe", 14, 17; end;
	case 2:	warp "koe", 14, 84; end;
	case 3:	warp "koe", 85, 84; end;
	case 4:	warp "koe", 85, 16; end;
	}
}

// KoE Exit
koe,49,56,5	script	Exit#KoE	1_M_BARD,{
	mes "[Exit]";
	mes "See ya.";
	close2;
	warp "Save",0,0;
	if ( getcharid(2) == $koegid )
		getitem 36028, 10;
		getitem 7227, 50;
		getitem 37001, 5;	 // configure prize here - Poring Coin
	end;
}

// Flags
koe,25,74,5	script	King of Emperium Hill#1::koe_flag	GUILD_FLAG,{
	if ( !$koegid ) end;
	mes "[King of Emperium Hill]";
	mes "The Current King of Emperium Hill is the ["+ getguildname($koegid) +"] guild.";
	close;
OnInit: // Uncomment this line to make the emblem stay after @reloadscript
OnRevKoE:
	flagemblem $koegid;
	end;
}
koe,39,40,3	duplicate(koe_flag)	King of Emperium Hill#2	GUILD_FLAG
koe,39,59,1	duplicate(koe_flag)	King of Emperium Hill#3	GUILD_FLAG
koe,60,59,7	duplicate(koe_flag)	King of Emperium Hill#4	GUILD_FLAG
koe,60,40,5	duplicate(koe_flag)	King of Emperium Hill#5	GUILD_FLAG
koe,74,74,3	duplicate(koe_flag)	King of Emperium Hill#6	GUILD_FLAG
koe,75,24,1	duplicate(koe_flag)	King of Emperium Hill#7	GUILD_FLAG
koe,26,24,7	duplicate(koe_flag)	King of Emperium Hill#8	GUILD_FLAG

hugel,101,144,3	duplicate(The King#KoE)	The King#Hug	1_M_MERCHANT
louyang,212,101,5	duplicate(The King#KoE)	The King#Lou	1_M_MERCHANT
aldebaran,133,113,5	duplicate(The King#KoE)	The King#Alde	1_M_MERCHANT
lighthalzen,154,105,5	duplicate(The King#KoE)	The King#LHZ	1_M_MERCHANT
prontera,163,317,6,3	duplicate(The King#KoE)	The King#Prt	1_M_MERCHANT
//alexandria,165,143,3	duplicate(The King#KoE)	The King#Alex	1_M_MERCHANT


koe	mapflag	nobranch
koe	mapflag	nomemo
koe	mapflag	nopenalty
koe	mapflag	noreturn
koe	mapflag	nosave	SavePoint
koe	mapflag	noteleport
//koe	mapflag	gvg_noparty
koe	mapflag	nowarp
koe	mapflag	nowarpto
koe	mapflag	guildlock
koe	mapflag	noicewall

here it is sir @Origami

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  6
  • Topics Per Day:  0.00
  • Content Count:  439
  • Reputation:   29
  • Joined:  12/08/11
  • Last Seen:  

Add another Label in your barricade setter.

Edit OnEmpDead and add 3~5 secs delay then use donpcevent to trigger the new Label

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  257
  • Topics Per Day:  0.08
  • Content Count:  737
  • Reputation:   18
  • Joined:  11/21/15
  • Last Seen:  

6 hours ago, Origami said:

OnEmpDead:
	$koegid = getcharid(2);
	announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 2;
	killmonster "koe", "KoE::OnEmpDead";
	sleep 500;
	if ( .start )
		monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
        sleep 1500;
        donpcevent "KoEbarricade::OnInit"
	end;
}

Try that sir

where should i put this

on the script of barricades or koe script?

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  155
  • Topics Per Day:  0.11
  • Content Count:  349
  • Reputation:   12
  • Joined:  04/05/20
  • Last Seen:  

4 minutes ago, AinsLord said:

where should i put this

on the script of barricades or koe script?

find this on your KOE Script 

OnEmpDead:

and add these 

        sleep 1500;
        donpcevent "KoEbarricade::OnInit"

after 

 

monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
  • Upvote 1
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  257
  • Topics Per Day:  0.08
  • Content Count:  737
  • Reputation:   18
  • Joined:  11/21/15
  • Last Seen:  

On 6/3/2021 at 3:34 PM, Origami said:

find this on your KOE Script 


OnEmpDead:

and add these 


        sleep 1500;
        donpcevent "KoEbarricade::OnInit"

after 


monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";

ok sir ill try this one later on

 

Hi @Origami thanks a lot for the help

got something to add for this feature

can be the barricade cant attack by the owner of the emp?

image.png.3c87a045b32f733d530d99a63d312190.png

thanks again

 

Bump

still figuring out how these barricades cant be attack by the owner of the emperium

//===== Hercules Script ===========================================
//= King of Emperium Hill
//===== By: =======================================================
//= AnnieRuru
//===== Current Version: ==========================================
//= 1.2
//===== Compatible With: ==========================================
//= hercules & rathena 2018-04-08
//===== Description: ==============================================
//= defends the emperium in the middle of the map until times up
//===== Topic =====================================================
//= http://hercules.ws/board/topic/4495-gvg-king-of-emperium-hill/
//===== Additional Comments: ======================================
//= Finally there is a topic for this !
//=================================================================

-	script	KoE	FAKE_NPC,{
OnInit:
	disablenpc "The King#KoE";
	disablenpc "The King#Lou";
	disablenpc "The King#Alde";
	disablenpc "The King#LHZ";
	disablenpc "The King#Prt";
	disablenpc "The King#Hug";
	disablenpc "Exit#KoE";
	bindatcmd "koe", strnpcinfo(0)+"::OnCommand", 99,100;
	end;
OnCommand:
	if ( compare( .@atcmd_parameters$, "on" ) ) goto L_start;
	else if ( compare( .@atcmd_parameters$, "off" ) ) goto L_end;
	else {
		dispbottom "type - '@koe on' to start the event";
		dispbottom "type - '@koe off' to end the event";
	}
	end;
L_start:
OnSun2000: // everyday 8pm starts
	if ( .start ) end;
	gvgon "koe";
	announce "The King of Emperium Hill has begun!", bc_all;
	.start = true;
	enablenpc "The King#KoE";
	enablenpc "The King#Lou";
	enablenpc "The King#Alde";
	enablenpc "The King#LHZ";
	enablenpc "The King#Prt";
	enablenpc "The King#Hug";
	disablenpc "Exit#KoE";
	$koegid = 0;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 3;
	killmonster "koe", "KoE::OnEmpDead";
	monster "koe",49,49, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
	monster "koe",45,51,"Barricade",1905,1,"KoEbarricade::OnBarDead1";
	monster "koe",45,48,"Barricade",1905,1,"KoEbarricade::OnBarDead1";
	end;
L_end:
OnSun2100: // everyday 8:30pm ends
	gvgoff "koe";
	announce "The King of Emperium Hill is over!", bc_all;
	.start = 0;
	enablenpc "Exit#KoE";
	disablenpc "The King#KoE";
	disablenpc "The King#Lou";
	disablenpc "The King#Alde";
	disablenpc "The King#LHZ";
	disablenpc "The King#Prt";
	disablenpc "The King#Hug";
	killmonster "koe", "KoE::OnEmpDead";
	maprespawnguildid "koe", $koegid, 2; // uncomment this line to kick non-owner off the map when event ends
	end;
OnEmpDead:
	$koegid = getcharid(2);
	announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 2;
	killmonster "koe", "KoE::OnEmpDead";
	sleep 500;
	if ( .start )
		monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
		monster "koe",45,51,"Barricade",1905,1, "KoEbarricade::OnBarDead1"; // Tried to put it here
		monster "koe",45,48,"Barricade",1905,1, "KoEbarricade::OnBarDead1";	// Tried to put it here
	sleep 3000;
        donpcevent "KoEbarricade::OnInit";
	end;
}

// KoE Entrance
alexandria,165,143,3	script	The King#KoE	1_M_MERCHANT,{
	mes "[The King]";
	if ( !getcharid(2) ) {
		mes "You must have a guild to participate in the ^FF0000King of Emperium Hill Tournament^000000.";
		close;
	}
	mes "Hello.";
	mes "Would you like to participate in the ^FF0000King of Emperium Hill Tournament^000000?";
	if ( select ( "Yes", "No" ) == 2 ) close;
	if ( !getvariableofnpc( .start, "KoE" ) ) close;
	switch( rand(1,4) ){
	case 1:	warp "koe", 14, 17; end;
	case 2:	warp "koe", 14, 84; end;
	case 3:	warp "koe", 85, 84; end;
	case 4:	warp "koe", 85, 16; end;
	}
}

// KoE Exit
koe,49,56,5	script	Exit#KoE	1_M_BARD,{
	mes "[Exit]";
	mes "See ya.";
	close2;
	warp "Save",0,0;
	if ( getcharid(2) == $koegid && getguildmaster(getcharid(2)) == strcharinfo(0) )
		getitem 36028, 10;
		getitem 7227, 50;
		getitem 37001, 5;	 // configure prize here - Poring Coin
	end;
}

// Flags
koe,25,74,5	script	King of Emperium Hill#1::koe_flag	GUILD_FLAG,{
	if ( !$koegid ) end;
	mes "[King of Emperium Hill]";
	mes "The Current King of Emperium Hill is the ["+ getguildname($koegid) +"] guild.";
	close;
OnInit: // Uncomment this line to make the emblem stay after @reloadscript
OnRevKoE:
	flagemblem $koegid;
	end;
}
koe,39,40,3	duplicate(koe_flag)	King of Emperium Hill#2	GUILD_FLAG
koe,39,59,1	duplicate(koe_flag)	King of Emperium Hill#3	GUILD_FLAG
koe,60,59,7	duplicate(koe_flag)	King of Emperium Hill#4	GUILD_FLAG
koe,60,40,5	duplicate(koe_flag)	King of Emperium Hill#5	GUILD_FLAG
koe,74,74,3	duplicate(koe_flag)	King of Emperium Hill#6	GUILD_FLAG
koe,75,24,1	duplicate(koe_flag)	King of Emperium Hill#7	GUILD_FLAG
koe,26,24,7	duplicate(koe_flag)	King of Emperium Hill#8	GUILD_FLAG

hugel,101,144,3	duplicate(The King#KoE)	The King#Hug	1_M_MERCHANT
louyang,212,101,5	duplicate(The King#KoE)	The King#Lou	1_M_MERCHANT
aldebaran,133,113,5	duplicate(The King#KoE)	The King#Alde	1_M_MERCHANT
lighthalzen,154,105,5	duplicate(The King#KoE)	The King#LHZ	1_M_MERCHANT
prontera,163,317,6,3	duplicate(The King#KoE)	The King#Prt	1_M_MERCHANT
//alexandria,165,143,3	duplicate(The King#KoE)	The King#Alex	1_M_MERCHANT


koe	mapflag	nobranch
koe	mapflag	nomemo
koe	mapflag	nopenalty
koe	mapflag	noreturn
koe	mapflag	nosave	SavePoint
koe	mapflag	noteleport
//koe	mapflag	gvg_noparty
koe	mapflag	nowarp
koe	mapflag	nowarpto
koe	mapflag	guildlock
koe	mapflag	noicewall

i did try to put it here

OnEmpDead:
	$koegid = getcharid(2);
	announce "The current King of Emperium Hill is the ["+ strcharinfo(2) +"] guild.", bc_all;
	donpcevent "::OnRevKoE";
	maprespawnguildid "koe", $koegid, 2;
	killmonster "koe", "KoE::OnEmpDead";
	sleep 500;
	if ( .start )
		monster "koe",50,50, "EMPERIUM", 1288, 1, "KoE::OnEmpDead";
		monster "koe",45,51,"Barricade",1905,1, "KoEbarricade::OnBarDead1";
		monster "koe",45,48,"Barricade",1905,1, "KoEbarricade::OnBarDead1";
	sleep 3000;
        donpcevent "KoEbarricade::OnInit";
	end;
}

still the barricade can be attack by the owner of the KoE/Emp

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  11
  • Topics Per Day:  0.00
  • Content Count:  31
  • Reputation:   0
  • Joined:  06/12/16
  • Last Seen:  

how to solve this?

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  1
  • Topics Per Day:  0.00
  • Content Count:  232
  • Reputation:   86
  • Joined:  06/30/18
  • Last Seen:  

1 hour ago, kundalini313 said:

how to make barricades unpassable until all destroyed?

 

It would be a good idea to include your script in the post.
Otherwise, it is pretty hard to help you.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  6
  • Reputation:   0
  • Joined:  07/01/23
  • Last Seen:  

19 hours ago, Winterfox said:

It would be a good idea to include your script in the post.
Otherwise, it is pretty hard to help you.

My Apologies here it is, for some reason after 1 barricade is destroyed it allows you to walk through them all.

OnEmpDead:
    $koegid = getcharid(CHAR_ID_GUILD);
    announce "The current King of Emperium Hill is the ["+ strcharinfo(PC_GUILD) +"] guild.", bc_all;
    donpcevent "::OnRevKoE";
    maprespawnguildid "grandarena", $koegid, 2;
    killmonster "grandarena", "KoE::OnEmpDead";
    sleep 500;
    if (.start)
        monster "grandarena",49,49, "EMPERIUM", EMPELIUM, 1, "KoE::OnEmpDead";
        setcell "grandarena",45,53,45,46,cell_walkable,0; //non walkable

        monster "grandarena",45,51,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead1";
        monster "grandarena",45,48,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead1";

        setcell "grandarena",53,54,46,54,cell_walkable,0; //non walkable

        monster "grandarena",51,54,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead2";
        monster "grandarena",48,54,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead2";

        setcell "grandarena",54,46,54,53,cell_walkable,0; //non walkable

        monster "grandarena",54,48,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead3";
        monster "grandarena",54,51,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead3";

        setcell "grandarena",46,45,53,45,cell_walkable,0; //non walkable

        monster "grandarena",48,45,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead4";
        monster "grandarena",51,45,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead4";
        
        setcell "grandarena",42,57,42,42,cell_walkable,0; //non walkable
        
        monster "grandarena",41,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead6";
        monster "grandarena",41,55,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead6";
        monster "grandarena",41,52,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead6";
        monster "grandarena",41,49,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead6";
        monster "grandarena",41,46,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead6";
        monster "grandarena",41,43,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead6";
        monster "grandarena",41,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead6";
        
        setcell "grandarena",42,42,57,42,cell_walkable,0; //non walkable
        
        monster "grandarena",41,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead7";
        monster "grandarena",44,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead7";
        monster "grandarena",47,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead7";
        monster "grandarena",50,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead7";
        monster "grandarena",53,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead7";
        monster "grandarena",56,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead7";
        monster "grandarena",58,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead7";
        
        setcell "grandarena",56,42,57,57,cell_walkable,0; //non walkable
        
        monster "grandarena",58,41,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead8";
        monster "grandarena",58,43,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead8";
        monster "grandarena",58,46,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead8";
        monster "grandarena",58,49,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead8";
        monster "grandarena",58,52,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead8";
        monster "grandarena",58,55,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead8";
        monster "grandarena",58,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead8";
        
        setcell "grandarena",57,57,42,57,cell_walkable,0; //non walkable
        
        monster "grandarena",41,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead9";
        monster "grandarena",43,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead9";
        monster "grandarena",46,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead9";
        monster "grandarena",49,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead9";
        monster "grandarena",52,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead9";
        monster "grandarena",55,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead9";
        monster "grandarena",58,58,"Barricade",1905,1,strnpcinfo(0)+"::OnBarDead9";
        
        sleep 3000;
        donpcevent "KoEbarricade::OnInit";
    end;
    OnBarDead1:
    setcell "grandarena",45,53,45,46,cell_walkable,1;
    OnBarDead2:
    setcell "grandarena",53,54,46,54,cell_walkable,1;
    OnBarDead3:
    setcell "grandarena",54,46,54,53,cell_walkable,1;
    OnBarDead4:
    setcell "grandarena",46,45,53,45,cell_walkable,1;
    OnBarDead5:
    setcell "grandarena",71,47,71,52,cell_walkable,1;
    OnBarDead6:
    setcell "grandarena",43,57,54,57,cell_walkable,1;
    OnBarDead7:
    setcell "grandarena",42,43,42,57,cell_walkable,1;
    OnBarDead8:
    setcell "grandarena",56,42,42,42,cell_walkable,1;
    OnBarDead9:
    setcell "grandarena",57,57,42,57,cell_walkable,1;
    end;
}

 

Edited by kundalini313
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  1
  • Topics Per Day:  0.00
  • Content Count:  232
  • Reputation:   86
  • Joined:  06/30/18
  • Last Seen:  

I think your problem is the falltrough after the call of an OnBarDead label. This leads to one OnBarDead label calling all succeeding setcell calls that make the cells walkable.

If for example OnBarDead1 gets called, it falls through all labels until it hits the end command at the end of the file, effectivly making all non-walkable cells walkable instead of only the ones you targeted with your label.

Edited by Winterfox
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  6
  • Reputation:   0
  • Joined:  07/01/23
  • Last Seen:  

On 9/18/2023 at 3:36 PM, Winterfox said:

I think your problem is the falltrough after the call of an OnBarDead label. This leads to one OnBarDead label calling all succeeding setcell calls that make the cells walkable.

If for example OnBarDead1 gets called, it falls through all labels until it hits the end command at the end of the file, effectivly making all non-walkable cells walkable instead of only the ones you targeted with your label.

May i ask how i could fix this to make it to where you can only pass through the barricade you destroy? Is there a specific code i need to put for each barricade?

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  1
  • Topics Per Day:  0.00
  • Content Count:  232
  • Reputation:   86
  • Joined:  06/30/18
  • Last Seen:  

You need to end the script after each label, so it doesn't fall through and executes the code of the next.

 OnBarDead1:
    setcell "grandarena",45,53,45,46,cell_walkable,1;
	end;
OnBarDead2:
    setcell "grandarena",53,54,46,54,cell_walkable,1;
	end;
...

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  6
  • Reputation:   0
  • Joined:  07/01/23
  • Last Seen:  

On 9/24/2023 at 9:32 AM, Winterfox said:

You need to end the script after each label, so it doesn't fall through and executes the code of the next.

 OnBarDead1:
    setcell "grandarena",45,53,45,46,cell_walkable,1;
	end;
OnBarDead2:
    setcell "grandarena",53,54,46,54,cell_walkable,1;
	end;
...

 

May I ask how I can have it spawn Emperium after all barricades are destroyed?

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...