Jump to content

minx123

Members
  • Content Count

    283
  • Joined

  • Last visited

Posts posted by minx123


  1.  

    prontera,150,180,4	script	rewards	1_F_MARIA,{	mes "Here's your daily reward!";	next;	if ( #nextrewardtime + .next_take > gettimetick(2) ) {		mes "Sorry, it seems you've already got it!";	}	else {		mes "Take this!";		getitem Apple, 1;		#nextrewardtime = gettimetick(2);		query_sql "select date_format( now() + interval "+ .next_take +" second,'%l %i %p'), date_format( now() + interval "+ .next_take +" second,'%e.%c.%Y')", .@time1$, .@time2$;		mes "Can someone add after redeem, please redeem again at "+ .@time1$ +" on "+ .@time2$ +". I need the date and time.";	}	close;OnInit:	.next_take = 24*60*60; // next time take in seconds. 24*60*60 = 1 Day	end;}

    can u make it base on ip?


  2. i need some to fix this debug.

    when player do the quest

     the npc cant be stop.. need use @go /@ load


    and how to make its base on ip?

    so the player cant spam this quest.

     

    -	script	Fishing Spot	45,{		ReturnHere:	.@CatchProbability = 0;	.@FishingItem = -1;	.@ItemConsumeRate = 0;	if(countitem(632) > 0)	{		.@FishingItem = 632;		.@CatchProbability = 80;		.@ItemConsumeRate = 35;	}	else if(countitem(623) > 0)	{		.@FishingItem = 623;		.@CatchProbability = 65;		.@ItemConsumeRate = 20;	}	else if(countitem(916) > 0)	{		.@FishingItem = 916;		.@CatchProbability = 50;		.@ItemConsumeRate = 45;	}	else if(countitem(909) > 0)	{		.@FishingItem = 909;		.@CatchProbability = 40;		.@ItemConsumeRate = 67;	}	if(.@FishingItem == -1)	{		mes "I does not have any bait... I need to have a Jellopy, Earth Worm the Dude or Fatty Earthworm to be able to do fishing.";		close;	}	progressbar 0x0000FF, rand(5, 25);	if(rand(101) <= .@ItemConsumeRate){		delitem .@FishingItem, 1;	}	.@FishReward = -1;	if(rand(101) <= .@CatchProbability)	{		.@FishReward = 579;		if(rand(2) == 0)		{			.@FishReward = 7227;		}		else if(rand(3) == 0)		{			.@FishReward = 7227;		}		else if(rand(3) == 0)		{			.@FishReward = 7227;		}		else if(rand(3) == 0)		{			.@FishReward = 7227;		}		else if(rand(5) == 0)		{			.@FishReward = 7227;		}		else if(rand(5) == 0)		{			.@FishReward = 7227;		}		else if(rand(7) == 0)		{			.@FishReward = 7227;		}		else if(rand(10) == 0)		{			.@FishReward = 7227;		}		else if(rand(12) == 0)		{			.@FishReward = 7227;		}		else if(rand(30) == 0)		{			.@FishReward = 7227;		}		else if(rand(25) == 0)		{			.@FishReward = 7227;		}		else if(rand(25) == 0)		{			.@FishReward = 7227;		}		else if(rand(10) == 0)		{			.@FishReward = 7227;		}		else if(rand(20) == 0)		{			.@FishReward = 7227;		}		else if(rand(5) == 0)		{			.@FishReward = 7227;		}		else if(rand(5) == 0)		{			.@FishReward = 7227;		}		else if(rand(5) == 0)		{			.@FishReward = 7227;		}		message strcharinfo(0), "I catched a "+getitemname(.@FishReward)+"!";		getexp 15 + BaseLevel,0;		getitem .@FishReward, 1;	}	else	{		message strcharinfo(0), "I could not catch the fish...";		getexp BaseLevel / 5,0;	}	goto ReturnHere;}florian,83,122,4	script	Anglers Anonymous Team	727,{		.@NpcName$ = "[Anglers Anonymous Member]";	.@DailyQName$ = "FishDaily$";	.@DailyDateName$ = "FishLastDay$";	mes .@NpcName$;	mes "Yes?";	next;	menu "What is Fishing?", L_wfish, "Daily Mission", L_daily, "Nothing", -;	mes .@NpcName$;	mes "Good bye then.";	close;		L_wfish:	mes .@NpcName$;	mes "Fishing consists of using a fishing pole and a bait to catch fish.";	next;	mes .@NpcName$;	mes "Some places countain fishing spots, you will just need some baits to be able to collect them.";	next;	mes .@NpcName$;	mes "You will need a Jellopy, Earthworm the Dude or Fatty Earthworm to be able to fish.";	next;	mes .@NpcName$;	mes "Depend on the bait you use, you will less likelly lose the bait upon fishing.";	next;	mes .@NpcName$;	mes "But beware, not everytime you will succeed in fishing.";	next;	mes .@NpcName$;	mes "A sum of base experience can be acquired from fishing, you may use the fishing when you enter AFK or is waiting for someone.";	close;		L_daily:	.@CurDay$ = gettime(5)+""+gettime(6)+""+gettime(7);	mes .@NpcName$;	if(getd(.@DailyDateName$) == .@CurDay$)	{		mes "You have already completed today's daily fishing quest.";		close;	}	.@QuestItem = 579;	.@QuestItemStack = 15;	if(countitem(.@QuestItem) >= .@QuestItemStack)	{		mes "Nice job! Here is your reward, see you next day.";		getexp 150 + (BaseLevel * 7), 25 + (JobLevel * 7);		getitem 603, 3;		Zeny += 3500;		delitem .@QuestItem, .@QuestItemStack;		setd .@DailyDateName$, .@CurDay$;		close;	}	mes "Your task is to get "+.@QuestItemStack+" "+getitemname(.@QuestItem)+". Talk to me when you acquire them.";	close;		OnPCLoadMapEvent:	.@DailyDateName$ = "FishLastDay$";	if(strnpcinfo(4) == strcharinfo(3))	{		.@CurDay$ = gettime(5)+""+gettime(6)+""+gettime(7);		if(getd(.@DailyDateName$) != .@CurDay$)		{			showevent 4, 2;		}	}	end;}geffen,162,80,4	duplicate(Anglers Anonymous Team)	Anglers Anonymous Team#0	486payon,102,40,4	duplicate(Anglers Anonymous Team)	Anglers Anonymous Team#1	515alberta,223,116,4	duplicate(Anglers Anonymous Team)	Anglers Anonymous Team#2	560izlude,94,67,4	duplicate(Anglers Anonymous Team)	Anglers Anonymous Team#3	567aldebaran,158,99,4	duplicate(Anglers Anonymous Team)	Anglers Anonymous Team#4	738prontera	mapflag	loadevent	truegeffen	mapflag	loadevent	truepayon	mapflag	loadevent	truealberta	mapflag	loadevent	trueizlude	mapflag	loadevent	truealdebaran	mapflag	loadevent	trueprt_fild08,368,281,4	duplicate(Fishing Spot)	Fishing Spot#0	557izlude,87,62,4	duplicate(Fishing Spot)	Fishing Spot#1	557prt_fild05,93,177,4	duplicate(Fishing Spot)	Fishing Spot#2	557prt_fild05,180,221,4	duplicate(Fishing Spot)	Fishing Spot#3	557gef_fild00,99,176,4	duplicate(Fishing Spot)	Fishing Spot#4	557gef_fild00,170,295,4	duplicate(Fishing Spot)	Fishing Spot#5	557gef_fild07,265,320,4	duplicate(Fishing Spot)	Fishing Spot#6	557gef_fild07,122,155,4	duplicate(Fishing Spot)	Fishing Spot#7	557payon,52,137,4	duplicate(Fishing Spot)	Fishing Spot#8	557pay_gld,201,196,4	duplicate(Fishing Spot)	Fishing Spot#9	557alberta,239,124,4	duplicate(Fishing Spot)	Fishing Spot#10	557alb2trea,115,98,4	duplicate(Fishing Spot)	Fishing Spot#11	557aldebaran,137,75,4	duplicate(Fishing Spot)	Fishing Spot#12	557

     

    mhzvpx.png


  3. hello.. i need some help.. how to change the coordinate?

    how many space i need each x,y?

     

    //##Original Script by Emistry ##//##eAthena Compatibility by Hirasu##prontera,155,181,5	script	Monster-Counting-Game	757,{	goto OnStartEvent;	end;		OnInit:		set .max_round,3;		set .max_duration,3;		set .wall_mob_id,1085;		setarray .monster,1002,1113,1242,1031;		set .monster_size,getarraysize( .monster );		set .npc_name$,"Monster-Counting-Game";		getmapxy( .map$,.npc_x,.npc_y,1 );		setmapflag .map$,mf_monster_noteleport;		setarray .xy_area,151,169,161,179;		setarray .xy_area2,153,177,160,171;		end;			OnMinute00:	OnStartEvent:		if ( !.status ) {			areawarp .map$,.xy_area[0],.xy_area[1],.xy_area[2],.xy_area[3],.map$,.npc_x,.npc_y;			killmonster .map$,.npc_name$+"::OnDied";			killmonster .map$,.npc_name$+"::OnWallDied";			setcell .map$,.xy_area[0],.xy_area[1],.xy_area[2],.xy_area[3],cell_basilica,1;			setcell .map$,.xy_area[0],.xy_area[1],.xy_area[2],.xy_area[3],cell_walkable,1;			set .status,1;						for( set .@i, .xy_area[0]; .@i <= .xy_area[2]; set .@i,.@i+1 ){				callfunc "xy_wall",.@i,.xy_area[1],.wall_mob_id,.npc_name$,.map$;				callfunc "xy_wall",.@i,.xy_area[3],.wall_mob_id,.npc_name$,.map$;				//xy_wall( .@i,.xy_area[1] );				//xy_wall( .@i,.xy_area[3] );			}			for( set .@i, .xy_area[1]; .@i <= .xy_area[3]; set .@i,.@i+1 ){				callfunc "xy_wall",.xy_area[0],.@i,.wall_mob_id,.npc_name$,.map$;				callfunc "xy_wall",.xy_area[2],.@i,.wall_mob_id,.npc_name$,.map$;			}						do{				set .@round,.@round+1;				npctalk "Round # "+.@round;				sleep 5000;								set .status,2;				set .@mob,.monster[ rand( .monster_size ) ];				set .@amount,rand( 5,15 );				// add-on size influence ?				areamonster .map$,.xy_area2[0],.xy_area2[1],.xy_area2[2],.xy_area2[3],"",.@mob,.@amount,.npc_name$+"::OnDied";							deletepset 1;				defpattern 1,"([^:]+):.*"+.@amount+".$", "OnRight";				activatepset 1;				waitingroom "How many's there?",0;				npctalk "Tell me the correct amount of monster in there.";				// debugmes " > "+.@amount+" "+getmonsterinfo( .@mob,MOB_NAME );								sleep ( .max_duration * 60000 );								killmonster .map$,.npc_name$+"::OnDied";				delwaitingroom;				deletepset 1;				set .status,0;				sleep 5000;							}while( .@round < .max_round );						npctalk "That's the Last, thank you for participating.";			emotion e_thx;						killmonster .map$,.npc_name$+"::OnDied";			killmonster .map$,.npc_name$+"::OnWallDied";			setcell .map$,.xy_area[0],.xy_area[1],.xy_area[2],.xy_area[3],cell_basilica,0;			setcell .map$,.xy_area[0],.xy_area[1],.xy_area[2],.xy_area[3],cell_walkable,1;			set .status,0;		}		end;			OnDied: 	OnWallDied: 		end;	OnRight:		getmapxy( .@map$,.@x,.@y,0 );		if ( .status == 0 ) {			dispbottom "[Counting Game] Event isnt running.";		}		else if ( .status == 1 ) {			dispbottom "[Counting Game] Please wait for the round to start.";		}		else if ( distance( .npc_x,.npc_y,.@x,.@y ) > 14 ) {			dispbottom "[Counting Game] You're too far away.";		}		else {			npctalk "Bravo!! "+strcharinfo(0)+" is correct!!";						// rewards			getitem 512,1;			getitem 512,2;			getitem 512,3;						specialeffect2 EF_POTION_CON;			awake .npc_name$;		}		end;}function	script	xy_wall	{		set .@x,getarg(0); 		set .@y,getarg(1);		set .wall_mob_id,getarg(2);		monster ""+getarg(4)+"",.@x,.@y,"",.wall_mob_id,1,""+getarg(3)+"::OnWallDied";		setcell ""+getarg(4)+"",.@x,.@y,.@x,.@y,cell_walkable,0;		// setcell .map$,.@x,.@y,.@x,.@y,cell_basilica,1;		return;	}

     

    		setarray .xy_area,151,169,161,179;		setarray .xy_area2,153,177,160,171;

     how much i need each coordinate for changing map?


  4.  

    someone still has that old Pac-Man event eAthena ...
     
    as has the video ..
     
    also I put a Pac-Man map to perhaps reformulate the event

     

     

     

     

    Mapa: http://www.mediafire.com/download/dmywjciyoil/pacmanlv1.7z

     

     

     

    video-

     

     

     

    here the script i found.. but need to fix for compatible with hercules.

     

    prontera,216,165,4	script Pacman	736,{if ( getarraysize($@pb_aidlist) >= 100 ) {mes "I'm sorry, the room is full";close;}percentheal 100, 100;warp "turbo_n_4", 12, 267;set $@pb_aidlist[ getarraysize($@pb_aidlist) ], getcharid(3);end;}- script Pacman -1,{OnInit:disablenpc "Pacman";end;OnWhisperGlobal:if ( getgmlevel() < 99 ) end;OnClock0145: // these are time to start eventOnClock0445:OnClock0745:OnClock1045:OnClock1345:OnClock1645:OnClock1945:OnClock2245:announce "Pacman!!!: Are you ready to join Pacman event???", 0;enablenpc "Pacman";mapwarp "turbo_n_4", "prontera", 163,192;sleep 4000;announce "Pacman: Come join at the center of the Prontera (163, 192)", 0;sleep 6000;announce "Pacman: This Npc will hide after this 1 minute", 0;sleep 20000;announce "Pacman: Last 30 second", 0;sleep 10000;announce "Pacman: Last chance for you to join...", 0;sleep 10000;announce "Pacman: Last 10 second to register", 0;sleep 5000;announce "Pacman: 5", 0;sleep 1000;announce "Pacman: 4", 0;sleep 1000;announce "Pacman: 3", 0;sleep 1000;announce "Pacman: 2", 0;sleep 1000;announce "Pacman: 1", 0;sleep 1000;announce "Pacman: Time is up...I will come again 3 hour later..", 0;disablenpc "Pacman";mapannounce "turbo_n_4", "Welcome to Pacman event", 0;sleep 3000;mapannounce "turbo_n_4", "This is an insane event", 0;sleep 3000;mapannounce "turbo_n_4", "Just don't get eaten by Pacman!!", 0;sleep 3000;mapannounce "turbo_n_4", "Stay here as long as YOU can!!!!", 0;sleep 3000;mapannounce "turbo_n_4", "The LAST MAN STANDING will be the WINNER", 0;sleep 3000;mapannounce "turbo_n_4", "event will start in 3", 0;sleep 1000;mapannounce "turbo_n_4", "2...", 0;sleep 1000;mapannounce "turbo_n_4", "1...", 0;sleep 1000;mapannounce "turbo_n_4", "Its time to hide !!", 0;initnpctimer;set .stop, 0;while (1) {monster "turbo_n_4", 0,0, "Pacman!!!", 1929, 25 + .@extra;sleep 5000;if ( .stop ) end;set .@extra, .@extra + rand(1,5);set .@round, .@round +1;}end;OnTimer500:stopnpctimer;while ( getarraysize($@pb_aidlist) > 1 ) {sleep 500;for ( set .@i, 0; .@i < getarraysize($@pb_aidlist); set .@i, .@i +1 ) {if ( isloggedin(.aidlist[.@i] == 0 ) ) {deletearray $@pb_aidlist[.@i], 1;set .@i, .@i -1;}else {attachrid $@pb_aidlist[.@i];if ( strcharinfo(3) != "turbo_n_4" || hp == 0 ) {deletearray $@pb_aidlist[.@i], 1;set .@i, .@i -1;}}}}detachrid;set .stop, 1;killmonsterall "turbo_n_4";if ( getarraysize($@pb_aidlist) == 1 ) {announce "congratulations ~ the winner is "+ rid2name($@pb_aidlist), 0;sleep 5000;announce rid2name($@pb_aidlist) +" Win 1 Splendide Coin", 0;attachrid $@pb_aidlist;getitem 6081, 1;warp "prontera", 148,172;deletearray $@pb_aidlist;}else {announce "nobody is a winner, too bad", 0;}end;}turbo_n_4 mapflag nowarpturbo_n_4 mapflag nowarptoturbo_n_4 mapflag noteleportturbo_n_4 mapflag nosave SavePointturbo_n_4 mapflag noskillturbo_n_4 mapflag nomemo

  5. hello.. i need some help to change this script.

    its allow item not available to refine be refine.

    how to make this script  not refine item already disable?

     

    florian,211,151,4	script	+10 Refiner	821,{mes "[+10 Refiner]";mes "Good day "+strcharinfo(0);mes "If you want to refine your items to +10, please give me 10 ^3355FFProof of Donation^000000 so I can refine it without failing.";next;mes "[+10 Refiner]";mes "Now, what do you want to refine?";next;  function Refine;set @itemid, 7179; //Proof of Donationset @itemquantity, 10; // item quantityset @maxrefine, 10; // Max Refinemenu "Refine equipment",REFIN,"Nothing at all",QUIT;REFIN:next;mes "[+10 Refiner]";mes "To refine a item you need:";mes "^FF0000 "+@itemquantity+" "+getitemname(@itemid)+"^000000";set @headtop$, getequipname(1);set @armor$, getequipname(2);set @handl$, getequipname(3);set @handr$, getequipname(4);set @garment$, getequipname(5);set @shoes$, getequipname(6);set @headmid$, getequipname(9);set @headlow$, getequipname(10);menu"[Head - Top] "+@headtop$,HEADTOP,"[Head - Mid] "+@headmid$,HEADMID,"[Head - Low] "+@headlow$,HEADLOW,"[Armor] "+@armor$,ARMOR,"[Garment] "+@garment$,GARMENT,"[Left Hand] "+@handl$,HANDL,"[Right Hand] "+@handr$,HANDR,"[Shoes] "+@shoes$,SHOES,"Cancel",QUIT;HEADTOP:set @slot, 1;callfunc Refine;HEADMID:set @slot, 9;callfunc Refine;HEADLOW:set @slot, 10;callfunc Refine;ARMOR:set @slot, 2;callfunc Refine;GARMENT:set @slot, 5;callfunc Refine;HANDL:set @slot, 3;callfunc Refine;HANDR:set @slot, 4;callfunc Refine;SHOES:set @slot, 6;callfunc Refine;QUIT:next;mes "[+10 Refiner]";mes "Okay, see you.";close;LATER:next;mes "[+10 Refiner]";mes "Thanks, have a nice day.";close;CANCEL:next;mes "[+10 Refiner]";mes "Okay, come back another time.";close;MAX:next;mes "[+10 Refiner]";mes "Sorry, but I can't refine this anymore.";close;NOWAY:next;mes "[+10 Refiner]";mes "Oh my, I can't refine this item!!!";close;NOREQ:next;mes "[+10 Refiner]";mes "Sorry, but you don't have the items I need";close;// ---------------Refine Equipmentfunction	Refine	{if (getequiprefinerycnt(@slot) >= @maxrefine) goto MAX;menu "Do it!",-,"Cancel",CANCEL;if (countitem(@itemid) < @itemquantity) goto NOREQ;delitem @itemid, @itemquantity;set @repeat, (@maxrefine - getequiprefinerycnt(@slot));while (@repeat > 0) {successrefitem(@slot);set @repeat, @repeat - 1;}goto LATER;}}

    here my itemdb

     

    {	Id: 30314	AegisName: "Ultimate_Sleipnir"	Name: "Ultimate Sleipnir"	Type: 5	Buy: 20	Weight: 3500	Def: 5	Loc: 64	EquipLv: 94	Refine: false	Script: <"		bonus bMdef,5;		bonus bMaxHPrate,25;		bonus bMaxSPrate,25;		bonus bSPrecovRate,15;		bonus bSpeedRate,15;	">},

     

     


  6. impossible without source edits

     

    in that script, the emperium breaker room limit only 1 player at a time,

    so the player can kill the emperium alone without disrupted by other players

     

    if you put this in main town, it means other players can kill steal the emperium which defeat its purpose

     

    its possible if you want to touch the source to make that emperium only hit-able for 1 player,

    but there's no need to do that right ?

    oh.. like that..

    hm.. it is possible to make 1 room only not 4 room?


  7. // Capuche cleaning Base on the poring race by Zell_ff8, xianz, Nekoalberta,141,158,5	script	Poring Race	882,{    if( .access_Prace == 0 ) {        mes "[Poring Race Staff]";        mes "Poring Race has ended.";        close;    }    mes "[Poring Race Staff]";    mes "Do you want to participate on Poring Race?";    if( select( "Yes","No" ) -1 ) {        next;        mes "[Poring Race Staff]";        mes "See you again next time!";        close;    }    if( .access_Prace == 0 ) {        next;        mes "[Poring Race Staff]";        mes "...";        mes "...";        mes "Cheater!!~~";        close;    }    close2;    @prace_winner$ = "";    warp "p_track01",52,41;    end;// OnInit:OnMinute120:    if( gettime(3)%2 ) end;    set .access_Prace, 1;    announce "Poring Race is now open!",0,0xFFAB54;    setnpctimer 100000,"Bidder#prace0";    startnpctimer "Bidder#prace0";    end;OnPraceEnd:    set .access_Prace, 0;    announce "Poring Race is over!",0,0xFFAB54;    end;}p_track01,58,41,3	script	Bidder#prace0	877,{function checkevent;    mes "[Bidder]";    if( getstrlen( @prace_winner$ ) ) {        mes "You have choose ^00bb00"+ @prace_winner$ +"^000000";        close;    }    else if ( checkevent() || .start ) {        mes "There is a race in progress...";        close;    }    else if( !getvariableofnpc( .access_Prace,"Poring Race" ) ) {        mes "There is no race.";        close;    }    mes "Choose the poring you want to bet:";    mes "It will cost "+ .zeny_req +" Zeny.";    .@s = select( .menu_$ );    if( .@s == 7 ) {        next;        mes "[Bidder]";        mes "Goodbye.";        close;    }    .@c$ = .monst_$[ .@s -1 ];    if ( checkevent() ) {        next;        mes "[Bidder]";        mes "...";        mes "...";        mes "Cheater!!~~";        close;    }    else if( Zeny < .zeny_req ) {        next;        mes "[Bidder]";        mes "You don't have enough Zeny.";        close;    }    Zeny -= .zeny_req;    @prace_winner$ = .@c$;    .prace_bidders[ .prace_bets ] = getcharid(3);    .prace_bets++;    next;    mes "[Bidder]";    mes "I have "+ .prace_bets +" bets.";    initnpctimer;    npctalk "I got "+ strcharinfo(0) +" bet!";    close;OnTimer60000:    npctalk "I got "+ .prace_bets +" bets. Anyone else?";    end;OnTimer80000:    npctalk "The race will start soon. Last chance.";    end;OnTimer90000:    stopnpctimer;    .start = 1;    mapannounce "p_track01","Porings, on your marks...",1,0xFFAB54;    sleep 2500;    for( .@i = 3; .@i > 0; .@i-- ) {        mapannounce "p_track01","..."+ .@i +"...",1,0xFFAB54;        sleep 1000;    }    donpcevent strnpcinfo(0) +"::OnStartRace";    sleep 1000;    mapannounce "p_track01","Gooo!!!",1,0xFFAB54;    end;OnTimer320000:    mapwarp "p_track01","prontera",142,170;    donpcevent "Poring Race::OnPraceEnd";    .prace_winner$ = "";    .start = .prace_bets = 0;    donpcevent strnpcinfo(0) +"::OnReturnRace";    end;OnStartRace:    callsub L_label, "OnRace";OnStopRace:    callsub L_label, "OnStop";OnReturnRace:    callsub L_label, "OnReturn";L_label:    donpcevent "Metaling#prace3::"+ getarg(0);    donpcevent "Poring#prace1::"+ getarg(0);    donpcevent "Poporing#prace6::"+ getarg(0);    donpcevent "Angeling#prace2::"+ getarg(0);    donpcevent "Santa Poring#prace5::"+ getarg(0);    donpcevent "Deviling#prace4::"+ getarg(0);    if( getarg(0) == "OnStop" && .prace_winner$ != "" )        callsub L_WinRace;    end;L_WinRace:    mapannounce "p_track01", "The winner is "+ .prace_winner$,1,0xFFAB54;    donpcevent strnpcinfo(0) +"::OnChequeo";    sleep 3000;    donpcevent strnpcinfo(0) +"::OnReturnRace";    sleep 10000;    mapwarp "p_track01","prontera",142,170;    donpcevent "Poring Race::OnPraceEnd";    .prace_winner$ = "";    .start = .prace_bets = 0;    end;OnChequeo:    for( .@i = 0 ; .@i < getarraysize( .prace_bidders ); .@i++ ) {        if( attachrid( .prace_bidders[.@i] ) && getstrlen( @prace_winner$ ) ) {            dispbottom "The winner is "+ .prace_winner$ +" and you have bet for "+ @prace_winner$ +".";            if( @prace_winner$ == .prace_winner$ ) {                dispbottom "You have won!";                mapannounce "p_track01"," Congratulations! "+ strcharinfo(0) +" has won!",1,0xFFAB54;                getitem .item_gained, .item_num_gain;                emotion 21,1;            }            else {                dispbottom "You have lost.";                emotion 28,1;            }            @prace_winner$ = "";        }    }    deletearray .prace_bidders;    end;OnInit:    .zeny_req = 3500;    .item_gained = 7199;    .item_num_gain = 2;    setarray .monst_$,"Poring","Angeling","Metaling","Deviling","Santa Poring","Poporing","None";    .menu_$ = implode( .monst_$, ":" );    end;function checkevent {    getmapxy .@mapname$, .@x1, .@y, 1, "Poring#prace1";    getmapxy .@mapname$, .@x2, .@y, 1, "Angeling#prace2";    getmapxy .@mapname$, .@x3, .@y, 1, "Metaling#prace3";    getmapxy .@mapname$, .@x4, .@y, 1, "Deviling#prace4";    getmapxy .@mapname$, .@x5, .@y, 1, "Santa Poring#prace5";    getmapxy .@mapname$, .@x6, .@y, 1, "Poporing#prace6";    .@t = ( .@x1 + .@x2 + .@x3 + .@x4 + .@x5 + .@x6 ) != 58 * 6;    return .@t;}}//-----------------------------------// Racer NPC's//------------------------------------	script	pori_race	-1,{OnRace:    initnpctimer;    end;OnStop:    stopnpctimer;    end;OnReturn:    sleep 1000;    while( strnpcinfo(1) != .monst$[ .@i ] ) .@i++;    movenpc strnpcinfo(3), 58, .walk_t[.@i];    end;OnTimer1100:    getmapxy .@mapname$,.@x,.@y,1, strnpcinfo(3);    if( rand(100) < .prace_random )        npcwalkto .@x-1, .@y;    .@r = rand( .prace_random2 );    if ( .@x -1 == 29 ) {        while( strnpcinfo(1) != .monst$[ .@i ] ) .@i++;        set getvariableofnpc( .prace_winner$, "Bidder#prace0" ), .monst$[ .@i ];        emotion 29;        donpcevent "Bidder#prace0::OnStopRace";        end;    }    stopnpctimer;    setnpctimer .@r;    startnpctimer;    end;OnInit:    deletearray .walk_t;    deletearray .monst$;    setarray .walk_t, 38, 36, 34, 32, 30, 28;    setarray .monst$, "Poring", "Angeling", "Metaling", "Deviling", "Santa Poring", "Poporing";    .prace_random = 70;    .prace_random2 = 600;    end;}p_track01,58,38,2	duplicate(pori_race)	Poring#prace1	1002p_track01,58,36,2	duplicate(pori_race)	Angeling#prace2	1096p_track01,58,34,2	duplicate(pori_race)	Metaling#prace3	1613p_track01,58,32,2	duplicate(pori_race)	Deviling#prace4	1582p_track01,58,30,2	duplicate(pori_race)	Santa Poring#prace5	1062p_track01,58,28,2	duplicate(pori_race)	Poporing#prace6	1031p_track01,78,42,0	warp	p_track002	1,3,prontera,142,170p_track01	mapflag	nobranchp_track01	mapflag	noicewallp_track01	mapflag	nomemop_track01	mapflag	noreturnp_track01	mapflag	noteleportp_track01	mapflag	nowarptop_track01	mapflag	nowarpp_track01	mapflag	pvp	offp_track01	mapflag	nosave

    help me on this script to add bindatcmd.


  8. hello..

    i need help to change this script from map pvp to maintown only..

    it will tell result when emperium break.

    no need to warp to any map just at maintown can kill.

    //===== rAthena Script =======================================//= Emperium Break Room//===== By: ==================================================//= Masao//===== Current Version: =====================================//= 1.0//===== Compatible With: =====================================//= rAthena SVN//===== Description: =========================================//= An little Emperium Break Room NPC in which you can test your//= strength and speed against Emperiums.//===== Additional Comments: =================================//= 1.0 First Version. [Masao]//============================================================prontera,140,180,0	script	Emperium Breaker	1288,{    set .@emp_time,$empbrk_record;	set .@emp_m,.@emp_time / 60000;	set .@emp_s,.@emp_time / 1000;	set .@emp_ms,.@emp_time / 10000;	mes "[Emperium Breaker]";	mes "Current record holder is the Player ^5050A0"+$empbrk_master$+"^000000 .";	mes "With an time of ^000080"+.@emp_m+"^000000Minutes ^000080"+.@emp_s+"^000000Seconds ^000080"+.@emp_ms+"^000000Milliseconds until the Emperium got broke.";	next;    set .@time,empbrk_record;	set .@m,.@time / 60000;	set .@s,.@time / 1000;	set .@ms,.@time / 10000;	mes "[Emperium Breaker]";    mes "Your Own Record:";    mes "^000080"+.@m+"^000000m ^000080"+.@s+"^000000s ^000080"+.@ms+"^000000ms";	mes "[Emperium Breaker]";	mes "Would you like to try to set a new record?";	next;	if (getgmlevel() >= 20) {		menu "Standard Menu",-,"Reset",L_RO,"Reset Rooms",L_RR,"Cancel",L_C;		menu "Yes",-,"No",L_C,"Reset",L_R;	} else {		menu "Yes",-,"No",L_C,"Reset",L_R;	}	cleararray .arena$[0],"",4;	mes "[Emperium Breaker]";	if (getareausers("pvp_n_4-5",94,128,105,139)){		mes "Emp n° ^0000DF1 ^FF0000 Busy^000000";	}else{		mes "Emp n° ^0000DF1 ^00A000 Free^000000";		set .arena$[0],"^0000DFEmperium^000000";	}	if (getareausers("pvp_n_4-5",60,94,71,105)){		mes "Emp n° ^B05D002 ^FF0000 Busy^000000";	}else{		mes "Emp n° ^B05D002 ^00A000 Free^000000";		set .arena$[1],"^B05D00Emperium^000000";	}	if (getareausers("pvp_n_4-5",94,60,105,71)){		mes "Emp n° ^B00FB03 ^FF0000 Busy^000000";	}else{		mes "Emp n° ^90AF003 ^00A000 Free^000000";		set .arena$[2],"^90AF00Emperium^000000";	}	if (getareausers("pvp_n_4-5",128,94,139,105)){		mes "Emp n° ^50AF004 ^FF0000 Busy^000000";	}else{		mes "Emp n° ^500F004 ^00A000 Free^000000";		set .arena$[3],"^500F00Emperium^000000";	}	next;	switch (select(.arena$[0],.arena$[1],.arena$[2],.arena$[3],"Exit")){	case 1:		if (getareausers("pvp_n_4-5",60,94,71,105) == 0){			if($@empr_occupied[0] > 0){				mes "[Emperium Breaker]";				mes "This room is currently occupied, please try again later.";				close;			}			close2;			set $@empr_occupied[0],1;			set $@empbrk_charid[0],getcharid(0);			warp "pvp_n_4-5",99,128;			initnpctimer "EmpBrk#1";			sc_end SC_ALL;			end;		}		mes "[Emperium Breaker]";		mes "This room is currently occupied, please try again later.";		close;    case 2:		if (getareausers("pvp_n_4-5",60,94,71,105) == 0){    			if($@empr_occupied[1] > 0){				mes "[Emperium Breaker]";				mes "This room is currently occupied, please try again later.";				close;			}			close2;			set $@empr_occupied[1],1;			set $@empbrk_charid[1],getcharid(0);			warp "pvp_n_4-5",68,99;			initnpctimer "EmpBrk#2";			sc_end SC_ALL;			end;		}		mes "[Emperium Breaker]";		mes "This room is currently occupied, please try again later.";		close;    case 3:		if (getareausers("pvp_n_4-5",94,60,105,71) == 0){   			if($@empr_occupied[2] > 0){				mes "[Emperium Breaker]";				mes "This room is currently occupied, please try again later.";				close;			}			close2;			set $@empr_occupied[2],1;			set $@empbrk_charid[2],getcharid(0);			warp "pvp_n_4-5",100,68;			initnpctimer "EmpBrk#3";			sc_end SC_ALL;			end;		}		mes "[Emperium Breaker]";		mes "This room is currently occupied, please try again later.";		close;    case 4:		if (getareausers("pvp_n_4-5",128,94,139,105) == 0){  			if($@empr_occupied[3] > 0){				mes "[Emperium Breaker]";				mes "This room is currently occupied, please try again later.";				close;			}			close2;			set $@empr_occupied[3],1;			set $@empbrk_charid[3],getcharid(0);			warp "pvp_n_4-5",130,99;			initnpctimer "EmpBrk#4";			sc_end SC_ALL;			end;		}		mes "[Emperium Breaker]";		mes "This room is currently occupied, please try again later.";		close;	case 5:		close;    }L_RO:    mes "[Emperium Breaker]";    mes "Are you sure you want to reset the official record?";	next;    menu "Yes",-,"No",L_C;    set $empbrk_record,0;    set $empbrk_master$,"";	close;L_R:    mes "[Emperium Breaker]";    mes "Are you sure you want to reset your record?";	next;    menu "Yes",-,"No",L_C;    set empbrk_record,0;	close;L_RR:	mes "[Emperium Breaker]";	mes "Rooms have been reset.";	cleararray $@empr_occupied[0],0,4;	close;L_C:	close;}-	script	EmpBrk#1	-1,{OnTimer5000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area;	end;OnTimer8000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area;	end;OnTimer9000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area;	end;OnTimer10000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area;	end;OnTimer11000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area;	end;OnTimer12000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area;	end;OnTimer13000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area;	monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#1::OnEmpBreak";	end;OnTimer600000:	warpchar "prontera",155,180,$@empbrk_charid[0];	killmonster "pvp_n_4-5","EmpBrk#1::OnEmpBreak";	set $@empr_occupied[0],0;	stopnpctimer;	end;OnEmpBreak:	stopnpctimer;	set .current_time,getnpctimer(0,"EmpBrk#1");	set .new_time,.current_time - 13000;	if (.new_time < empbrk_record || empbrk_record == 0)	{		areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area;		set empbrk_record,.new_time;	}	if (.new_time < $empbrk_record || $empbrk_record == 0)	{		announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all;		set $empbrk_record,.new_time;		set $empbrk_master$,strcharinfo(0); 	}	set .m,.new_time / 60000;	set .s,.new_time / 1000;	set .ms,.new_time / 10000;	if(.m < 0){		set .m,0;	}	if(.s < 0){		set .s,0;	}	set $@empr_occupied[0],0;	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area;	warpchar "prontera",155,180,$@empbrk_charid[0];	end;OnInit:	set .x1,94;	set .y1,128;	set .x2,105;	set .y2,139;	set .xe,100;	set .ye,134;	end;}pvp_n_4-5,99,125,0	script	EmpBrk#1_touch	-1,3,1,{OnTouch:	mes "[Emperium Breaker]";	mes "You cannot exit your square!";	close2;	warp "pvp_n_4-5",99,128;	end;}-	script	EmpBrk#2	-1,{OnTimer5000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area;	end;OnTimer8000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area;	end;OnTimer9000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area;	end;OnTimer10000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area;	end;OnTimer11000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area;	end;OnTimer12000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area;	end;OnTimer13000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area;	monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#2::OnEmpBreak";	end;OnTimer600000:	warpchar "prontera",155,180,$@empbrk_charid[1];	killmonster "pvp_n_4-5","EmpBrk#2::OnEmpBreak";	set $@empr_occupied[1],0;	stopnpctimer;	end;OnEmpBreak:	stopnpctimer;	set .current_time,getnpctimer(0,"EmpBrk#2");	set .new_time,.current_time - 13000;	if (.new_time < empbrk_record || empbrk_record == 0)	{		areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area;		set empbrk_record,.new_time;	}	if (.new_time < $empbrk_record || $empbrk_record == 0)	{		announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all;		set $empbrk_record,.new_time;		set $empbrk_master$,strcharinfo(0); 	}	set .m,.new_time / 60000;	set .s,.new_time / 1000;	set .ms,.new_time / 10000;	if(.m < 0){		set .m,0;	}	if(.s < 0){		set .s,0;	}	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area;	warpchar "prontera",155,180,$@empbrk_charid[1];	set $@empr_occupied[1],0;	end;OnInit:	set .x1,60;	set .y1,94;	set .x2,71;	set .y2,105;	set .xe,65;	set .ye,99;	end;}pvp_n_4-5,74,99,0	script	EmpBrk#2_touch	-1,1,3,{OnTouch:	mes "[Emperium Breaker]";	mes "You cannot exit your square!";	close2;	warp "pvp_n_4-5",68,99;	end;}-	script	EmpBrk#3	-1,{OnTimer5000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area;	end;OnTimer8000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area;	end;OnTimer9000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area;	end;OnTimer10000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area;	end;OnTimer11000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area;	end;OnTimer12000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area;	end;OnTimer13000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area;	monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#3::OnEmpBreak";	end;OnTimer600000:	warpchar "prontera",155,180,$@empbrk_charid[2];	killmonster "pvp_n_4-5","EmpBrk#3::OnEmpBreak";	set $@empr_occupied[2],0;	stopnpctimer;	end;OnEmpBreak:	stopnpctimer;	set .current_time,getnpctimer(0,"EmpBrk#3");	set .new_time,.current_time - 13000;	if (.new_time < empbrk_record || empbrk_record == 0)	{		areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area;		set empbrk_record,.new_time;	}	if (.new_time < $empbrk_record || $empbrk_record == 0)	{		announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all;		set $empbrk_record,.new_time;		set $empbrk_master$,strcharinfo(0); 	}	set .m,.new_time / 60000;	set .s,.new_time / 1000;	set .ms,.new_time / 10000;	if(.m < 0){		set .m,0;	}	if(.s < 0){		set .s,0;	}	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area;	warpchar "prontera",155,180,$@empbrk_charid[2];	set $@empr_occupied[2],0;	end;OnInit:	set .x1,94;	set .y1,60;	set .x2,105;	set .y2,71;	set .xe,99;	set .ye,65;	end;}pvp_n_4-5,100,74,0	script	EmpBrk#3_touch	-1,3,1,{OnTouch:	mes "[Emperium Breaker]";	mes "You cannot exit your square!";	close2;	warp "pvp_n_4-5",100,68;	end;}-	script	EmpBrk#4	-1,{OnTimer5000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Get ready to break the Emperium!",bc_area;	end;OnTimer8000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"5",bc_area;	end;OnTimer9000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"4",bc_area;	end;OnTimer10000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"3",bc_area;	end;OnTimer11000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"2",bc_area;	end;OnTimer12000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"1",bc_area;	end;OnTimer13000:	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"GO!!!",bc_area;	monster "pvp_n_4-5",.xe,.ye,"Emperium",1288,1,"EmpBrk#4::OnEmpBreak";	end;OnTimer600000:	warpchar "prontera",155,180,$@empbrk_charid[3];	killmonster "pvp_n_4-5","EmpBrk#4::OnEmpBreak";	set $@empr_occupied[3],0;	stopnpctimer;	end;OnEmpBreak:	stopnpctimer;	set .current_time,getnpctimer(0,"EmpBrk#4");	set .new_time,.current_time - 13000;	if (.new_time < empbrk_record || empbrk_record == 0)	{		areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"New Own Record!!!",bc_area;		set empbrk_record,.new_time;	}	if (.new_time < $empbrk_record || $empbrk_record == 0)	{		announce strcharinfo(0)+" is now the new No. 1 Emperium Breaker!!",bc_all;		set $empbrk_record,.new_time;		set $empbrk_master$,strcharinfo(0); 	}	set .m,.new_time / 60000;	set .s,.new_time / 1000;	set .ms,.new_time / 10000;	if(.m < 0){		set .m,0;	}	if(.s < 0){		set .s,0;	}	areaannounce "pvp_n_4-5",.x1,.y1,.x2,.y2,"Your time is "+.m+"m "+.s+"s "+.ms+"ms",bc_area;	warpchar "prontera",155,180,$@empbrk_charid[3];	set $@empr_occupied[3],0;	end;OnInit:	set .x1,128;	set .y1,94;	set .x2,139;	set .y2,105;	set .xe,134;	set .ye,99;	end;}pvp_n_4-5,125,100,0	script	EmpBrk#4_touch	-1,1,3,{OnTouch:	mes "[Emperium Breaker]";	mes "You cannot exit your square!";	close2;	warp "pvp_n_4-5",130,99;	end;}pvp_n_4-5	mapflag	nowarp	20pvp_n_4-5	mapflag	nowarpto	20pvp_n_4-5	mapflag	notrade	20pvp_n_4-5	mapflag	nochat	20pvp_n_4-5	mapflag	nocommand	20pvp_n_4-5	mapflag	novending	20pvp_n_4-5	mapflag	gvg_castle	20pvp_n_4-5	mapflag	nobranch	20pvp_n_4-5	mapflag	noicewall	20pvp_n_4-5	mapflag	noloot	20pvp_n_4-5	mapflag	nomemo	20pvp_n_4-5	mapflag	nosave	20pvp_n_4-5	mapflag	noreturn	20pvp_n_4-5	mapflag	pvp	off	20pvp_n_4-5	mapflag	gvg	20

     


  9. hello. i need some help to fix this problem on job paladin.

    this custom shield i made but using view id from official view.

     

    paladin cant cast skill that need use shield.

    what the problem with this script?

    {	Id: 30329	AegisName: "Ultimate_Valkyrja's_Shield"	Name: "Ultimate Valkyrja's Shield"	Type: 5	Buy: 60000	Weight: 1000	Def: 4	Slots: 1	Job: 0x00404082	Loc: 32	Script: <"		bonus2 bSubEle,Ele_Water,25;		bonus2 bSubEle,Ele_Fire,25;		bonus2 bSubEle,Ele_Dark,25;		bonus2 bSubEle,Ele_Undead,25;		bonus bMdef,15;		bonus bAgi,10;		bonus bLuk,10;		bonus bMaxHPrate,5;		bonus bDef,15;	">},

    error : skill failed


  10.  

    yes, I suddenly want to give you a rep for saying it

     

    although the idea on the topic title might not be very interesting,

    but if there is a plugin to allow to login an offline character, this can do a lot of interesting stuffs

    for example, everyday at 8PM login a [GM] character and say 'Hello' to the surrounding area without players knowing it is a bot

    which was actually done by a plugin

    or just login some offline characters in the pvp room through atcommand to test what happens when there are a lot players ... etc etc

    .

    .

    it is really hard to make if auto online same like autotrade?

    I don't think its that hard

    if Ind's patch can login autotrade players when server start up, then this shouldn't be a much problem

    but Ind's one can login the player until the real player login, but mine only login for about 0.1 sec and it immediately logout

    there is some check that I missed ...

    ya you right. if the plugin can do that.. it will more useful. can help server to grow up.

    i will make this topic always on top.

    so let other to join and help give some idea on this plugin.


  11. @@Aeromesi

    it not sure if that plugin would be a paid. i just want to know if it is possible to do that function

     

    @@AnnieRuru

    thank you for yoyr concern about this topic.

    i just thinking before. if they can do @afk and @autotrade why not make some plugin to player not online to be afk player.

    it is really hard to make if auto online same like autotrade?

     

     

    	if( sd->state.standalone ) {		clif->pLoadEndAck(0,sd);//		pc->autotrade_populate(sd); <-- comment this line		pc->autotrade_start(sd);	}

    it clash with the autotrade maybe.

     

     

    *if someone would have share some idea to help @@AnnieRuru it will more appreciate.

×
×
  • Create New...

Important Information

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