Jump to content
  • 0
Hadeszeus

Raid instances

Question

Another very useful and very good script from Annie! Also thanks leloush :)

 

 

@Annie

 

One more question. Im trying to add a timetick to avoid multiple entries of the players who already joined or part of a party.

How to make it work.

 

 

if ( instance_attachmap( "guild_vs2", .@ins, 1, getcharid(1)+"RAID" ) == "" ) {		mes "error : 5";		instance_destroy .@ins;		close;	}	else if( #delay > gettimetick(1) ){	    dispbottom "Delaying...";	}	instance_set_timeout 0, 1, .@ins;	instance_init .@ins;	instance_attach .@ins;	delitem .register_item, 1;         warpparty has_instance("guild_vs2"), 0,0, getcharid(1), strnpcinfo(4);	'lives = .party_lives;	set #delay,#delay + ( 3600 * 5 );
Edited by AnnieRuru
split topic from http://hercules.ws/board/topic/4610-

Share this post


Link to post
Share on other sites

39 answers to this question

Recommended Posts

  • 0

 

One more question. Im trying to add a timetick to avoid multiple entries of the players who already joined or part of a party.

How to make it work.

you mean add a deny timer to those players who already join the event

then if they already played, they can't play again in another 3 hours ?

 

 

 

>@EDIT: forget about the error in warper annie, i already fixed that.. im just wondering why im stuck on Prepare for Lv1 Mobs.    after that nothing happens.

have you tried debug the script ?

like put debugmes on every single variable in the script

 

otherwise, post your edited script

 

Yes Annie. I think adding a timetick as optional setting to prevent entering multiple times is a good addition to this script. 

Share this post


Link to post
Share on other sites
  • 0

 

One more question. Im trying to add a timetick to avoid multiple entries of the players who already joined or part of a party.

How to make it work.

you mean add a deny timer to those players who already join the event

then if they already played, they can't play again in another 3 hours ?

 

 

Can you help me on this... Im trying but after the delay time I got error: -1 instead of creating instance.

 

.@delayTime = #delayTimer- gettimetick(2);	if(.@delayTime > 0) {		mes "[Riss]";		mes "You can only go there every 5 hours.";		.@minutes = .@delayTime / 60;		.@seconds = .@delayTime - (.@minutes * 60);		mes "Please come back in " + sprintf("%02d:%02d", .@minutes, .@seconds) + " minutes." ;		close;	}			   		instance_set_timeout 0, 1, .@ins;			   		instance_init .@ins;			   		instance_attach .@ins;			   		delitem .register_item, 1;			   		warpparty has_instance("guild_vs2"), 0,0, getcharid(1), strnpcinfo(4);					'lives = .party_lives;		    			set #delayTimer, gettimetick(2) + (5 * 60 *60);

 

The delay should affect all members in the party not just the leader.

Edited by Hadeszeus

Share this post


Link to post
Share on other sites
  • 0

I always forgot to put mapflags lol, try put them in

already edited

Thanks.

 

 

Annie,

 

I really want to display the remaining time before entering instance again.

On this line how can I get the timetick and convert to time format.

 

else if ( .@denycount ) {
mes "[MvP Ladder Warper]";
mes "There are a few party members that just enter this dungeon recently";
mes "You can only go there every 5 hours.";
.@delayTime = .deny_enter - #raid_ins_deny;
        mes .@delayTime; <----- I can't get the time it returns 0.
.@hours   = .@delayTime / 60 /60;
.@minutes = (.@delayTime % (60 * 60)) / 60;
.@seconds = .@delayTime % 60;
mes "Please come back in " + sprintf("%02d:%02d:%02d", .@hours, .@minutes, .@seconds) + " hours." ;
 
for ( .@i = 0; .@i < .@denycount; .@i++ )
mes ( .@i +1 ) +". "+ .@denyname$[.@i];
close;
}

Share this post


Link to post
Share on other sites
  • 0

no, you have to do it while attachrid them 1 by 1

 

I can actually spoon feed again ...

but since you hate it, then how about like this

 

1. show me a script and list out how many apples in every online party member is carrying

2. then announce that party name along the sum of apples in all the online party member has

 

it should have something like

	for ( .@i = 0; .@i < party_size; .@i++ ) {		mes ( .@i +1 ) +". "+ player_name +" is carrying "+ countitem(apple); // list out the player name in party with the amount of apple that player is carrying	announce party_name +" carrying total apple of "+ sum(apple), bc_all; // announce the total apple in that party	close;
show me the correct way of doing this

 

 

PS: going to be a long ... topic

Edited by AnnieRuru

Share this post


Link to post
Share on other sites
  • 0

no, you have to do it while attachrid them 1 by 1I can actually spoon feed again ...but since you hate it, then how about like this1. show me a script and list out how many apples in every online party member is carrying2. then announce that party name along the sum of apples in all the online party member hasit should have something like

for ( .@i = 0; .@i < party_size; .@i++ ) {		mes ( .@i +1 ) +". "+ player_name +" is carrying "+ countitem(apple); // list out the player name in party with the amount of apple that player is carrying	announce party_name +" carrying total apple of "+ sum(apple), bc_all; // announce the total apple in that party	close;
show me the correct way of doing thisPS: going to be a long ... topic

Ok Annie i'll try. Thank you!

Share this post


Link to post
Share on other sites
  • 0

1. show me a script and list out how many apples in every online party member is carrying

2. then announce that party name along the sum of apples in all the online party member has

honestly this kind of script I can complete within minutes =/

prontera,158,183,4	script	asdfadsf	100,{	if ( !getcharid(1) ) {		dispbottom "You don't have a party";		end;	}	getpartymember getcharid(1), 1;	getpartymember getcharid(1), 2;	.@origin = getcharid(3);	for ( .@i = 0; .@i < $@partymembercount; .@i++ ) {		if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) {			attachrid $@partymemberaid[.@i];			.@name$[.@c] = strcharinfo(0);			.@apple[.@c] = countitem(Apple);			.@c++;			.@total += countitem(Apple);		}	}	attachrid .@origin;	for ( .@i = 0; .@i < .@c; .@i++ )		mes ( .@i + 1 )+". "+ .@name$[.@i] +" is carrying "+ .@apple[.@i] +" apples";	announce strcharinfo(1) +" carrying a total apples of "+ .@total, bc_all;	close;}

so ... spoon feed

http://upaste.me/57af109516d8670f8

Edited by AnnieRuru

Share this post


Link to post
Share on other sites
  • 0

I tried and admit that I can't do it nor good at it. So thank you for still doing this.  ;)

I don't hate spoonfeed, actually I'm so happy if someone does without asking any in return. I just felt sorry for myself coz I can't do it. :)

Share this post


Link to post
Share on other sites
  • 0

I tried and admit that I can't do it nor good at it. So thank you for still doing this.  ;)

I don't hate spoonfeed, actually I'm so happy if someone does without asking any in return. I just felt sorry for myself coz I can't do it. :)

dude just read ur F*cking Signature.

 

I am also hahaha

Share this post


Link to post
Share on other sites
  • 0

 

I tried and admit that I can't do it nor good at it. So thank you for still doing this.  ;)

I don't hate spoonfeed, actually I'm so happy if someone does without asking any in return. I just felt sorry for myself coz I can't do it. :)

dude just read ur F*cking Signature.

 

I am also hahaha

Hahaha... I just can't help it.. She's really good. Respect!

Share this post


Link to post
Share on other sites
  • 0

 

 

Error 

 

 

[Error]: script:getvariableofnpc: can't find npc Raid[Debug]: Source (NPC): Raid_ins at 27RAID (0,0) 

 

EDIT: FIXED

ANOTHER..

 

How to make the respawn of the monsters RANDOM in the map?

 

monster has_instance( "kh_kiehl02" ), 0,0, 

 

 

Fixed:

 

How to make all the party members will spawn in same area.

 

 

warp has_instance("kh_kiehl02"), 50,8; 

FIXED

 

 

How about to add more level?

 

 

 

 

   setarray .round1[0], 3231,5,3232,5,3233,5,3234,5,3235,5,3236,5,3237,5,3238,5,3239,5,3240,5;	setarray .round2[0], 3241,5,3242,5,3243,5,3244,5,3245,5,3246,5,3247,5,3248,5,3249,5,3250,5;	setarray .round3[0], 3251,5,3252,5,3253,5,3254,5,3255,5,3256,5,3257,5,3258,5,3259,5,3260,5;	setarray .round4[0], 3261,5,3262,5,3263,5,3264,5,3265,5,3266,5,3267,5,3268,5,3269,5,3270,5;	setarray .round5[0], 3271,5,3272,5,3273,5,3274,5,3275,5,3276,5,3277,5,3278,5,3279,5,3280,5;	setarray .round6[0], 3281,5,3282,5,3283,5,3284,5,3285,5,3286,5,3287,5,3288,5,3289,5,3290,5,3291,5,3292,5,3293,5,3294,5;	.totalround = 6; 

Cant make it to work

Fixed

 

dunno why its not working while ago

 

 

 

 

Another:

 

If u set the minimum party requirements to 10 and if u have 11 members it will not allow u to go inside 

Edited by karazu

Share this post


Link to post
Share on other sites
  • 0

 

[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''killed', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''total', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Error]: script_set_reg: cannot write instance variable ''round', NPC not in a instance![Error]: script_set_reg: cannot write instance variable ''killed', NPC not in a instance![Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0 

This will happen if the party uses all their lives and if they will register again that error will be showed.

Share this post


Link to post
Share on other sites
  • 0

 

 

[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''killed', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''total', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Error]: script_set_reg: cannot write instance variable ''round', NPC not in a instance![Error]: script_set_reg: cannot write instance variable ''killed', NPC not in a instance![Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0
This will happen if the party uses all their lives and if they will register again that error will be showed.

 

 

I can't reproduce this
instance_set_timeout 0, 1, .@ins;
what is your value here ?

Share this post


Link to post
Share on other sites
  • 0

 

 

[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''killed', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''total', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Error]: script_set_reg: cannot write instance variable ''round', NPC not in a instance![Error]: script_set_reg: cannot write instance variable ''killed', NPC not in a instance![Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0[Warning]: script_get_val: cannot access instance variable ''round', defaulting to 0
This will happen if the party uses all their lives and if they will register again that error will be showed.

 

I can't reproduce this
instance_set_timeout 0, 1, .@ins;
what is your value here ?
   

 

	 mes "error : 5";		instance_destroy .@ins;		close;	}	instance_set_timeout 0, 1, .@ins;	instance_init .@ins;	instance_attach .@ins; 
Edited by karazu

Share this post


Link to post
Share on other sites
  • 0

What I did is I used all the Lives. After that nothing happens, The event did not finish but instead we character select. after that we  can register but that error will appear

 

anyways. Is it possbile to add Prize if they will finish all the level?



EDIT:

This one also
 

 

Another:If u set the minimum party requirements to 10 and if u have 11 members it will not allow u to go inside  

 

 

Edited by karazu, Today, 08:40 PM.

Edited by karazu

Share this post


Link to post
Share on other sites
  • 0

What I did is I used all the Lives. After that nothing happens, The event did not finish but instead we character select. after that we  can register but that error will appear

 

anyways. Is it possbile to add Prize if they will finish all the level?

 

 

 

EDIT:

 

This one also

 

 

Another:If u set the minimum party requirements to 10 and if u have 11 members it will not allow u to go inside  

 

 

Edited by karazu, Today, 08:40 PM.

 

That condition is correct right? You set it to 10 ofcourse if 11 your party is not allowed to enter.

 

if ( $@partymembercount != .register_min )

 

so if your party is < or > to 10 then your party is not allowed to enter.

 

Maybe MINIMUM should change with REQUIRED :)

 

 

 

TO add prize you need to add it after instance_announce.

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}

Change (Opps not sure if all the members will get the prize :D)

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;                getitem 501,1;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}
Edited by Hadeszeus

Share this post


Link to post
Share on other sites
  • 0

 

What I did is I used all the Lives. After that nothing happens, The event did not finish but instead we character select. after that we  can register but that error will appear

 

anyways. Is it possbile to add Prize if they will finish all the level?

 

 

 

EDIT:

 

This one also

 

 

Another:If u set the minimum party requirements to 10 and if u have 11 members it will not allow u to go inside  

 

 

Edited by karazu, Today, 08:40 PM.

 

That condition is correct right? You set it to 10 ofcourse if 11 your party is not allowed to enter.

 

if ( $@partymembercount != .register_min )

 

so if your party is < or > to 10 then your party is not allowed to enter.

 

Maybe MINIMUM should change with REQUIRED :)

 

 

 

TO add prize you need to add it after instance_announce.

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}

Change (Opps not sure if all the members will get the prize :D)

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;                getitem 501,1;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}

I got your point. so this introduction is invalid.

 

 

  1. prontera,156,189,5 script Raid 100,{
  2. mes "This is Raid Dungeon.";
  3. mes "you need to make a party of MAXIMUM of 15Members and a MINIMUM of 10Members.. so i can allow you to dive inside.";
  4. mes "Inside this raid dungeon, there would be 7 Levels of Mob.";
  5. mes "Lever 1, Lever 2, Lever 3, and so on and so forth";
  6. mes "as the Lvl increases the more the mobs gets stronger. so better be carefull";
  7. mes "the next lever will appear after you finish the mobs of ( e.g. Lever 1 )";
  8. mes "after Lever 1-7 which is normal mobs";

Edited by karazu

Share this post


Link to post
Share on other sites
  • 0

 

What I did is I used all the Lives. After that nothing happens, The event did not finish but instead we character select. after that we  can register but that error will appear

 

anyways. Is it possbile to add Prize if they will finish all the level?

 

 

 

EDIT:

 

This one also

 

 

Another:If u set the minimum party requirements to 10 and if u have 11 members it will not allow u to go inside  

 

 

Edited by karazu, Today, 08:40 PM.

 

That condition is correct right? You set it to 10 ofcourse if 11 your party is not allowed to enter.

 

if ( $@partymembercount != .register_min )

 

so if your party is < or > to 10 then your party is not allowed to enter.

 

Maybe MINIMUM should change with REQUIRED :)

 

 

 

TO add prize you need to add it after instance_announce.

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}

Change (Opps not sure if all the members will get the prize :D)

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;                getitem 501,1;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}

It did not gave me a prize. instead the event was not finished 

Share this post


Link to post
Share on other sites
  • 0

 

 

What I did is I used all the Lives. After that nothing happens, The event did not finish but instead we character select. after that we  can register but that error will appear

 

anyways. Is it possbile to add Prize if they will finish all the level?

 

 

 

EDIT:

 

This one also

 

 

Another:If u set the minimum party requirements to 10 and if u have 11 members it will not allow u to go inside  

 

 

Edited by karazu, Today, 08:40 PM.

 

That condition is correct right? You set it to 10 ofcourse if 11 your party is not allowed to enter.

 

if ( $@partymembercount != .register_min )

 

so if your party is < or > to 10 then your party is not allowed to enter.

 

Maybe MINIMUM should change with REQUIRED :)

 

 

 

TO add prize you need to add it after instance_announce.

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}

Change (Opps not sure if all the members will get the prize :D)

 

if ( 'round == getvariableofnpc( .totalround, .@main$ ) +1 ) {		instance_announce -1, "Congratulations !", bc_all;                getitem 501,1;		sleep 2000;		instance_warpall getvariableofnpc( .map$, .@main$ ), getvariableofnpc( .x, .@main$ ), getvariableofnpc( .y, .@main$ );		end;	}

It did not gave me a prize. instead the event was not finished 

Bro, I'm sure it because the id is not attached. Now that's a problem heheh only Annie can do that. 

I'm sorry bro...

 

Though I'm not after on the reward feature. it's all depend now to Annie if she will spoon feed that or not :) 

Share this post


Link to post
Share on other sites
  • 0

What I did is I used all the Lives. After that nothing happens, The event did not finish but instead we character select. after that we can register but that error will appear

 if ( !'lives ) {instance_announce -1, "Your party has used up all the lives", bc_map;.@map$ = strcharinfo(3);killmonsterall .@map$;sleep 5000;mapwarp .@map$, .map$, .x, .y;}

if the party has no more lives, the map will be cleaned from monsters

and then after 5 seconds, everyone is warp out to where the register npc is

 

 

 

2.

change

mes "you need to make a party of MAXIMUM of 15Members and a MINIMUM of 10Members.. so i can allow you to dive inside.";

into

mes "you need to make a party of EXACTLY "+ .register_min +" members ... so i can allow you to dive inside.";

problem solve

 

I think you should just show your edited script instead of keep saying bug bug bug ...

I don't know what are the things that you have edited

Share this post


Link to post
Share on other sites
  • 0

I'm testing it right now and surprisingly, when I enter the instance the instance always destroyed and warp back the party in split seconds. Weird.   :unsure:

 

I didn't not modify anything I also tried this http://herc.ws/board/topic/4610-hellothis-is-a-raid-for-party-i-made/#entry30167 same issue.

 

EDITED:

 

I disable all other event script.

No errors in MAP SERVER. 

 

Still the same.

Edited by Hadeszeus

Share this post


Link to post
Share on other sites
  • 0

I'm testing it right now and surprisingly, when I enter the instance the instance always destroyed and warp back the party in split seconds. Weird.   :unsure:

 

I didn't not modify anything I also tried this http://herc.ws/board/topic/4610-hellothis-is-a-raid-for-party-i-made/#entry30167 same issue.

Told you ^_^

 

 

EDIT:

 

Hello Annie,

 

It will not warp us back T_T

 

 

		'lives--;		if ( !'lives ) {			instance_announce -1, "Your party has used up all the lives", bc_map;			.@map$ = strcharinfo(3);			killmonsterall .@map$;			sleep 5000;			mapwarp .@map$, .map$, .x, .y;		}		else { 

 

Edited by karazu

Share this post


Link to post
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.   Restore formatting

  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.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.