Jump to content

n0tttt

Members
  • Posts

    303
  • Joined

  • Days Won

    12

Posts posted by n0tttt

  1. function	script	random_walk	{
    
    	@walking = !@walking;
    	if(@walking) {
    		while(@walking) {
    			getmapxy .@m$,.@x,.@y,UNITTYPE_PC;
    			getfreecell .@m$,.@to_x,.@to_y,.@x,.@y,10,10;
    			unitwalk getcharid(3),.@to_x,.@to_y;
    			while(.@x != .@to_x || .@y != .@to_y) {
    				sleep2 500;
    				getmapxy .@m$,.@x,.@y,UNITTYPE_PC;
    			}
    		}
    	}
    	return;
    
    }
    function	script	F_botex	{
    	set .@i,0;
    	while (.@i < 1) {
    		set .@b,0;
    		dispbottom .@i+"";
    		.@rid = getcharid(3);
    		getmapxy(.@m$,.@x0,.@y0,0);
    		sleep2 100;
    		.@x = rand(-13,13)+.@x0;
    		.@y = rand(-13,13)+.@y0;
    		sleep2 100;
    		if(!checkcell( .@m$,.@x,.@y,cell_chkpass )){
    			dispbottom "Coordinate not exists!";
    			continue;
    		} else if(checkcell( .@m$,.@x,.@y,cell_chkpass )){
    			dispbottom "Coordinate exists!";
    		}
    		sleep2 100;
    		while(.@x0 != .@x && .@y0 != .@y) {
    			set .@b,.@b+1;
    			viewpoint 1,.@x,.@y,1,0xFF0000;
    			dispbottom "auto walking to x = "+.@x+" y = "+.@y;
    			unitwalk getcharid(3),.@x,.@y,strnpcinfo(3)+"::OnReach";
    			sleep2 2000;
    			if(.@b > 5) break;
    			getmapxy(.@m$,.@x0,.@y0,0);
    			sleep2 100;
    		}
    		.@n = getareaunits(BL_MOB,.@m$,.@x0 + 5,.@y0 + 5,.@x0 - 5,.@y0 - 5,.@mob);
    		unitattack 0,.@mob[rand(.@n)],true;
    		percentheal 100,100;
    		sleep2 100;
    		dispbottom "JackJack";
    	}
    	end;
    }

     

    • Love 1
  2. -	script	bonus_party	-1,{
    
    OnPCStatCalcEvent:
    
    	.@item_id = 1201;
    	.@pid = getcharid(1);
    	.@oid = getcharid(3);
    	if(isequipped(.@item_id) && .@pid) {
    		.@is_leader = is_party_leader();
    		getpartymember .@pid,1,.@party_cid;
    		getpartymember .@pid,2,.@party_aid;
    		.@size = $@partymembercount;
    		for(;.@i < .@size;.@i++) {
    			if(isloggedin(.@party_aid[.@i],.@party_cid[.@i])) {
    				.@n++;
    				if(.@is_leader)
    					if(attachrid(.@party_aid[.@i]))
    						bonus bStr,1;
    			}
    		}
    		attachrid .@oid;	
    		bonus bStr,.@n;
    	}
    	end;
    }

     

  3. Updating is always the best option since bugs are fixed all the time. But if you really want to keep your current emulator, you have to apply these commits:

    https://github.com/rathena/rathena/commit/10e7035bebdbc2ec25a392ee2cf14172ecf169e5

    https://github.com/rathena/rathena/commit/0c2ccc77c7ef30afda6fb978f402a10d1f1b7f24

  4. Something like this I guess?

    -	script	bonus_party	-1,{
    
    OnPCStatCalcEvent:
    
    	.@item_id = 1201;
    	.@pid = getcharid(1);
    	if(isequipped(.@item_id) && .@pid) {
    		getpartymember .@pid,1,.@party_cid;
    		getpartymember .@pid,2,.@party_aid;
    		.@size = $@partymembercount;
    		for(;.@i < .@size;.@i++)
    			.@n+= isloggedin(.@party_aid[.@i],.@party_cid[.@i]);
    		bonus bStr,.@n;
    	}
    	end;
    }

     

    • Love 1
  5. You could add a variable when the player is using it.

    -	script	paytowinbuffs	-1,{
    	end;
    
    OnBuffs:
    	if(getgroupid() <= 4) {
    		message strcharinfo(0),"Falha, você não possui VIP.";
    		end;
    	}
    	if(isequipped(4263)) {
    		message strcharinfo(0),"Não funciona equipado com Samurai Encarnado.";
    		end;
    	}
    	if(@buffs_inuse) {
    		end;
    	}
    
    	if (gettimetick(2) < delay_buffer) {
    		dispbottom( "You have to wait "+Time2Str(delay_bufer)+" to use the command again.", 0xFF0000 );
    		end;
    	}
    
    	@buffs_inuse = true;
    
    	.@menu$ = implode(.buffs$,":");
    	.@i = prompt(.@menu$) -1;
    	if(.@i < 255) {
    		sc_start .elements[.@i],180000,5;
    		//atcommand "@refresh "+strcharinfo(0);
    		delay_buffer = gettimetick(2) + .delay;
    	}
    
    	@buffs_inuse = false;
    	end;
    
    OnInit:
    	.delay  = 3 * 2; // 5 = 5 seconds *60 = 360 seconds
    	setarray .buffs$, "^800080Envenenar Arma^000000", "^40E0D0Aspersio^000000", "^000000Sombrio^000000", "^FFD700Encantar com Ventania^000000", "^0000FFEncantar com Geada^000000", "^FF0000Encantar com Chama^000000", "^B8860BEncantar com Terremoto^000000";
    	setarray .elements, 26, 37, 144, 98, 97, 96, 99;
    	bindatcmd "encantar","paytowinbuffs::OnBuffs",0,99;
    	end;
    }

     

    • Upvote 1
  6. That's a newer command. You need to update your emulator. Anyways I forgot makeitem is not permanent, so you might need to make some changes to the source and recompile.

     

    map.cpp

    Change:

    int map_addflooritem(struct item *item, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, unsigned short mob_id, bool canShowEffect)
    {
    	int r;
    	struct flooritem_data *fitem = NULL;
    
    	nullpo_ret(item);
    
    	if (!(flags&4) && battle_config.item_onfloor && (itemdb_traderight(item->nameid)&1))
    		return 0; //can't be dropped
    
    	if (!map_searchrandfreecell(m,&x,&y,flags&2?1:0))
    		return 0;
    	r = rnd();
    
    	CREATE(fitem, struct flooritem_data, 1);
    	fitem->bl.type=BL_ITEM;
    	fitem->bl.prev = fitem->bl.next = NULL;
    	fitem->bl.m=m;
    	fitem->bl.x=x;
    	fitem->bl.y=y;
    	fitem->bl.id = map_get_new_object_id();
    	if (fitem->bl.id==0) {
    		aFree(fitem);
    		return 0;
    	}
    
    	fitem->first_get_charid = first_charid;
    	fitem->first_get_tick = gettick() + (flags&1 ? battle_config.mvp_item_first_get_time : battle_config.item_first_get_time);
    	fitem->second_get_charid = second_charid;
    	fitem->second_get_tick = fitem->first_get_tick + (flags&1 ? battle_config.mvp_item_second_get_time : battle_config.item_second_get_time);
    	fitem->third_get_charid = third_charid;
    	fitem->third_get_tick = fitem->second_get_tick + (flags&1 ? battle_config.mvp_item_third_get_time : battle_config.item_third_get_time);
    	fitem->mob_id = mob_id;
    
    	memcpy(&fitem->item,item,sizeof(*item));
    	fitem->item.amount = amount;
    	fitem->subx = (r&3)*3+3;
    	fitem->suby = ((r>>2)&3)*3+3;
    	fitem->cleartimer = add_timer(gettick()+battle_config.flooritem_lifetime,map_clearflooritem_timer,fitem->bl.id,0);
    
    	map_addiddb(&fitem->bl);
    	if (map_addblock(&fitem->bl))
    		return 0;
    	clif_dropflooritem(fitem,canShowEffect);
    
    	return fitem->bl.id;
    }

    to:

    int map_addflooritem(struct item *item, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, unsigned short mob_id, bool canShowEffect, bool permanent)
    {
    	int r;
    	struct flooritem_data *fitem = NULL;
    
    	nullpo_ret(item);
    
    	if (!(flags&4) && battle_config.item_onfloor && (itemdb_traderight(item->nameid)&1))
    		return 0; //can't be dropped
    
    	if (!map_searchrandfreecell(m,&x,&y,flags&2?1:0))
    		return 0;
    	r = rnd();
    
    	CREATE(fitem, struct flooritem_data, 1);
    	fitem->bl.type=BL_ITEM;
    	fitem->bl.prev = fitem->bl.next = NULL;
    	fitem->bl.m=m;
    	fitem->bl.x=x;
    	fitem->bl.y=y;
    	fitem->bl.id = map_get_new_object_id();
    	if (fitem->bl.id==0) {
    		aFree(fitem);
    		return 0;
    	}
    
    	fitem->first_get_charid = first_charid;
    	fitem->first_get_tick = gettick() + (flags&1 ? battle_config.mvp_item_first_get_time : battle_config.item_first_get_time);
    	fitem->second_get_charid = second_charid;
    	fitem->second_get_tick = fitem->first_get_tick + (flags&1 ? battle_config.mvp_item_second_get_time : battle_config.item_second_get_time);
    	fitem->third_get_charid = third_charid;
    	fitem->third_get_tick = fitem->second_get_tick + (flags&1 ? battle_config.mvp_item_third_get_time : battle_config.item_third_get_time);
    	fitem->mob_id = mob_id;
    
    	memcpy(&fitem->item,item,sizeof(*item));
    	fitem->item.amount = amount;
    	fitem->subx = (r&3)*3+3;
    	fitem->suby = ((r>>2)&3)*3+3;
    	if(!permanent)
    		fitem->cleartimer = add_timer(gettick()+battle_config.flooritem_lifetime,map_clearflooritem_timer,fitem->bl.id,0);
    
    	map_addiddb(&fitem->bl);
    	if (map_addblock(&fitem->bl))
    		return 0;
    	clif_dropflooritem(fitem,canShowEffect);
    
    	return fitem->bl.id;
    }

     

    map.hpp

     

    Change:

    int map_addflooritem(struct item *item, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, unsigned short mob_id, bool canShowEffect = false);

    to:

    int map_addflooritem(struct item *item, int amount, int16 m, int16 x, int16 y, int first_charid, int second_charid, int third_charid, int flags, unsigned short mob_id, bool canShowEffect = false, bool permanent = false);

     

    script.cpp

    Change:

    BUILDIN_FUNC(makeitem) {
    	uint16 nameid, amount, flag = 0, x, y;
    	const char *mapname;
    	int m;
    	struct item item_tmp;
    	struct script_data *data;
    
    	data = script_getdata(st,2);
    	get_val(st,data);
    	if( data_isstring(data) ){
    		const char *name = conv_str(st,data);
    		struct item_data *item_data = itemdb_searchname(name);
    		if( item_data )
    			nameid = item_data->nameid;
    		else
    			nameid = UNKNOWN_ITEM_ID;
    	}
    	else
    		nameid = conv_num(st,data);
    
    	amount = script_getnum(st,3);
    	mapname	= script_getstr(st,4);
    	x = script_getnum(st,5);
    	y = script_getnum(st,6);
    
    	if(strcmp(mapname,"this")==0) {
    		TBL_PC *sd;
    		if (!script_rid2sd(sd))
    			return SCRIPT_CMD_SUCCESS; //Failed...
    		m = sd->bl.m;
    	} else
    		m = map_mapname2mapid(mapname);
    
    	if(nameid<0) {
    		nameid = -nameid;
    		flag = 1;
    	}
    
    	if(nameid > 0) {
    		memset(&item_tmp,0,sizeof(item_tmp));
    		item_tmp.nameid = nameid;
    		if(!flag)
    			item_tmp.identify = 1;
    		else
    			item_tmp.identify = itemdb_isidentified(nameid);
    
    		map_addflooritem(&item_tmp,amount,m,x,y,0,0,0,4,0);
    	}
    	return SCRIPT_CMD_SUCCESS;
    }

    to:

    BUILDIN_FUNC(makeitem) {
    	uint16 nameid, amount, flag = 0, x, y;
    	bool permanent = false;
    	const char *mapname;
    	int m;
    	struct item item_tmp;
    	struct script_data *data;
    
    	data = script_getdata(st,2);
    	get_val(st,data);
    	if( data_isstring(data) ){
    		const char *name = conv_str(st,data);
    		struct item_data *item_data = itemdb_searchname(name);
    		if( item_data )
    			nameid = item_data->nameid;
    		else
    			nameid = UNKNOWN_ITEM_ID;
    	}
    	else
    		nameid = conv_num(st,data);
    
    	amount = script_getnum(st,3);
    	mapname	= script_getstr(st,4);
    	x = script_getnum(st,5);
    	y = script_getnum(st,6);
    
    	if(script_hasdata(st,7))
    		permanent = script_getnum(st,7) != 0;
    
    	if(strcmp(mapname,"this")==0) {
    		TBL_PC *sd;
    		if (!script_rid2sd(sd))
    			return SCRIPT_CMD_SUCCESS; //Failed...
    		m = sd->bl.m;
    	} else
    		m = map_mapname2mapid(mapname);
    
    	if(nameid<0) {
    		nameid = -nameid;
    		flag = 1;
    	}
    
    	if(nameid > 0) {
    		memset(&item_tmp,0,sizeof(item_tmp));
    		item_tmp.nameid = nameid;
    		if(!flag)
    			item_tmp.identify = 1;
    		else
    			item_tmp.identify = itemdb_isidentified(nameid);
    
    		map_addflooritem(&item_tmp,amount,m,x,y,0,0,0,4,0,0,permanent);
    	}
    	return SCRIPT_CMD_SUCCESS;
    }

     

    Change:

    BUILDIN_DEF(makeitem,"visii"),

    to:

    BUILDIN_DEF(makeitem,"visii?"),

     

    Script:

    -	script	DB_Spawn	-1,{
    
    OnInit:
    
    	.item_id = 512;
    
    	setarray .maps$[0],
    		"alb_ship",
    		"alb2trea",
    		"alberta",
    		"alberta_in",
    		"alde_dun01",
    		"alde_dun02",
    		"alde_dun03",
    		"alde_dun04",
    		"aldeba_in",
    		"aldebaran",
    		"anthell01",
    		"anthell02",
    		"arena_room",
    		"c_tower1",
    		"c_tower2",
    		"c_tower3",
    		"c_tower4",
    		"force_1-1",
    		"force_1-2",
    		"force_1-3",
    		"force_2-1",
    		"force_2-2",
    		"force_2-3",
    		"force_3-1",
    		"force_3-2",
    		"force_3-3",
    		"gef_dun00",
    		"gef_dun01",
    		"gef_dun02",
    		"gef_dun03",
    		"gef_fild00",
    		"gef_fild01",
    		"gef_fild02",
    		"gef_fild03",
    		"gef_fild04",
    		"gef_fild05",
    		"gef_fild06",
    		"gef_fild07",
    		"gef_fild08",
    		"gef_fild09",
    		"gef_fild10",
    		"gef_fild11",
    		"gef_fild12",
    		"gef_fild13",
    		"gef_fild14",
    		"gef_tower",
    		"geffen",
    		"geffen_in",
    		"gl_cas01",
    		"gl_cas02",
    		"gl_church",
    		"gl_chyard",
    		"gl_dun01",
    		"gl_dun02",
    		"gl_in01",
    		"gl_knt01",
    		"gl_knt02",
    		"gl_prison",
    		"gl_prison1",
    		"gl_sew01",
    		"gl_sew02",
    		"gl_sew03",
    		"gl_sew04",
    		"gl_step",
    		"glast_01",
    		"hunter_1-1",
    		"hunter_2-1",
    		"hunter_3-1",
    		"in_hunter",
    		"in_moc_16",
    		"in_orcs01",
    		"in_sphinx1",
    		"in_sphinx2",
    		"in_sphinx3",
    		"in_sphinx4",
    		"in_sphinx5",
    		"iz_dun00",
    		"iz_dun01",
    		"iz_dun02",
    		"iz_dun03",
    		"iz_dun04",
    		"job_sword1",
    		"izlu2dun",
    		"izlude",
    		"izlude_in",
    		"job_thief1",
    		"knight_1-1",
    		"knight_2-1",
    		"knight_3-1",
    		"mjo_dun01",
    		"mjo_dun02",
    		"mjo_dun03",
    		"mjolnir_01",
    		"mjolnir_02",
    		"mjolnir_03",
    		"mjolnir_04",
    		"mjolnir_05",
    		"mjolnir_06",
    		"mjolnir_07",
    		"mjolnir_08",
    		"mjolnir_09",
    		"mjolnir_10",
    		"mjolnir_11",
    		"mjolnir_12",
    		"moc_castle",
    		"moc_fild01",
    		"moc_fild02",
    		"moc_fild03",
    		"moc_fild04",
    		"moc_fild05",
    		"moc_fild06",
    		"moc_fild07",
    		"moc_fild08",
    		"moc_fild09",
    		"moc_fild10",
    		"moc_fild11",
    		"moc_fild12",
    		"moc_fild13",
    		"moc_fild14",
    		"moc_fild15",
    		"moc_fild16",
    		"moc_fild17",
    		"moc_fild18",
    		"moc_fild19",
    		"moc_pryd01",
    		"moc_pryd02",
    		"moc_pryd03",
    		"moc_pryd04",
    		"moc_pryd05",
    		"moc_pryd06",
    		"moc_prydb1",
    		"moc_ruins",
    		"monk_in",
    		"morocc",
    		"morocc_in",
    		"new_1-1",
    		"new_1-2",
    		"new_1-3",
    		"new_1-4",
    		"new_2-1",
    		"new_2-2",
    		"new_2-3",
    		"new_2-4",
    		"new_3-1",
    		"new_3-2",
    		"new_3-3",
    		"new_3-4",
    		"new_4-1",
    		"new_4-2",
    		"new_4-3",
    		"new_4-4",
    		"new_5-1",
    		"new_5-2",
    		"new_5-3",
    		"new_5-4",
    		"orcsdun01",
    		"orcsdun02",
    		"ordeal_1-1",
    		"ordeal_1-2",
    		"ordeal_2-1",
    		"ordeal_2-2",
    		"ordeal_3-1",
    		"ordeal_3-2",
    		"pay_arche",
    		"pay_dun00",
    		"pay_dun01",
    		"pay_dun02",
    		"pay_dun03",
    		"pay_dun04",
    		"pay_fild01",
    		"pay_fild02",
    		"pay_fild03",
    		"pay_fild04",
    		"pay_fild05",
    		"pay_fild06",
    		"pay_fild07",
    		"pay_fild08",
    		"pay_fild09",
    		"pay_fild10",
    		"pay_fild11",
    		"payon",
    		"payon_in01",
    		"payon_in02",
    		"priest_1-1",
    		"priest_2-1",
    		"priest_3-1",
    		"prontera",
    		"prt_are_in",
    		"prt_are01",
    		"pvp_room",
    		"prt_castle",
    		"prt_church",
    		"prt_fild00",
    		"prt_fild01",
    		"prt_fild02",
    		"prt_fild03",
    		"prt_fild04",
    		"prt_fild05",
    		"prt_fild06",
    		"prt_fild07",
    		"prt_fild08",
    		"prt_fild09",
    		"prt_fild10",
    		"prt_fild11",
    		"prt_in",
    		"prt_maze01",
    		"prt_maze02",
    		"prt_maze03",
    		"prt_monk",
    		"prt_sewb1",
    		"prt_sewb2",
    		"prt_sewb3",
    		"prt_sewb4",
    		"pvp_2vs2",
    		"pvp_c_room",
    		"pvp_n_1-1",
    		"pvp_n_1-2",
    		"pvp_n_1-3",
    		"pvp_n_1-4",
    		"pvp_n_1-5",
    		"pvp_n_2-1",
    		"pvp_n_2-2",
    		"pvp_n_2-3",
    		"pvp_n_2-4",
    		"pvp_n_2-5",
    		"pvp_n_3-1",
    		"pvp_n_3-2",
    		"pvp_n_3-3",
    		"pvp_n_3-4",
    		"pvp_n_3-5",
    		"pvp_n_4-1",
    		"pvp_n_4-2",
    		"pvp_n_4-3",
    		"pvp_n_4-4",
    		"pvp_n_4-5",
    		"pvp_n_5-1",
    		"pvp_n_5-2",
    		"pvp_n_5-3",
    		"pvp_n_5-4",
    		"pvp_n_5-5",
    		"pvp_n_6-1",
    		"pvp_n_6-2",
    		"pvp_n_6-3",
    		"pvp_n_6-4",
    		"pvp_n_6-5",
    		"pvp_n_7-1",
    		"pvp_n_7-2",
    		"pvp_n_7-3",
    		"pvp_n_7-4",
    		"pvp_n_7-5",
    		"pvp_n_8-1",
    		"pvp_n_8-2",
    		"pvp_n_8-3",
    		"pvp_n_8-4",
    		"pvp_n_8-5",
    		"pvp_n_room",
    		"pvp_y_1-1",
    		"pvp_y_1-2",
    		"pvp_y_1-3",
    		"pvp_y_1-4",
    		"pvp_y_1-5",
    		"pvp_y_2-1",
    		"pvp_y_2-2",
    		"pvp_y_2-3",
    		"pvp_y_2-4",
    		"pvp_y_2-5",
    		"pvp_y_3-1",
    		"pvp_y_3-2",
    		"pvp_y_3-3",
    		"pvp_y_3-4",
    		"pvp_y_3-5",
    		"pvp_y_4-1",
    		"pvp_y_4-2",
    		"pvp_y_4-3",
    		"pvp_y_4-4",
    		"pvp_y_4-5",
    		"pvp_y_5-1",
    		"pvp_y_5-2",
    		"pvp_y_5-3",
    		"pvp_y_5-4",
    		"pvp_y_5-5",
    		"pvp_y_6-1",
    		"pvp_y_6-2",
    		"pvp_y_6-3",
    		"pvp_y_6-4",
    		"pvp_y_6-5",
    		"pvp_y_7-1",
    		"pvp_y_7-2",
    		"pvp_y_7-3",
    		"pvp_y_7-4",
    		"pvp_y_7-5",
    		"pvp_y_8-1",
    		"pvp_y_8-2",
    		"pvp_y_8-3",
    		"pvp_y_8-4",
    		"pvp_y_8-5",
    		"pvp_y_room",
    		"sword_1-1",
    		"sword_2-1",
    		"sword_3-1",
    		"treasure01",
    		"treasure02",
    		"wizard_1-1",
    		"wizard_2-1",
    		"wizard_3-1",
    		"xmas",
    		"xmas_dun01",
    		"xmas_dun02",
    		"xmas_fild01",
    		"xmas_in",
    		"beach_dun",
    		"beach_dun2",
    		"beach_dun3",
    		"cmd_fild01",
    		"cmd_fild02",
    		"cmd_fild03",
    		"cmd_fild04",
    		"cmd_fild05",
    		"cmd_fild06",
    		"cmd_fild07",
    		"cmd_fild08",
    		"cmd_fild09",
    		"cmd_in01",
    		"cmd_in02",
    		"comodo",
    		"quiz_00",
    		"quiz_01",
    		"g_room1-1",
    		"g_room1-2",
    		"g_room1-3",
    		"g_room2",
    		"tur_dun01",
    		"tur_dun02",
    		"tur_dun03",
    		"tur_dun04",
    		"tur_dun05",
    		"tur_dun06",
    		"alde_gld",
    		"aldeg_cas01",
    		"aldeg_cas02",
    		"aldeg_cas03",
    		"aldeg_cas04",
    		"aldeg_cas05",
    		"gefg_cas01",
    		"gefg_cas02",
    		"gefg_cas03",
    		"gefg_cas04",
    		"gefg_cas05",
    		"gld_dun01",
    		"gld_dun02",
    		"gld_dun03",
    		"gld_dun04",
    		"guild_room",
    		"guild_vs1",
    		"guild_vs2",
    		"guild_vs3",
    		"guild_vs4",
    		"guild_vs5",
    		"guild_vs1-1",
    		"guild_vs1-2",
    		"guild_vs1-3",
    		"guild_vs1-4",
    		"guild_vs2-1",
    		"guild_vs2-2",
    		"job_hunte",
    		"job_knt",
    		"job_prist",
    		"job_wiz",
    		"pay_gld",
    		"payg_cas01",
    		"payg_cas02",
    		"payg_cas03",
    		"payg_cas04",
    		"payg_cas05",
    		"prt_gld",
    		"prtg_cas01",
    		"prtg_cas02",
    		"prtg_cas03",
    		"prtg_cas04",
    		"prtg_cas05",
    		"alde_alche",
    		"in_rogue",
    		"job_cru",
    		"job_duncer",
    		"job_monk",
    		"job_sage",
    		"mag_dun01",
    		"mag_dun02",
    		"monk_test",
    		"quiz_test",
    		"yuno",
    		"yuno_fild01",
    		"yuno_fild02",
    		"yuno_fild03",
    		"yuno_fild04",
    		"yuno_in01",
    		"yuno_in02",
    		"yuno_in03",
    		"yuno_in04",
    		"yuno_in05",
    		"ama_dun01",
    		"ama_dun02",
    		"ama_dun03",
    		"ama_fild01",
    		"ama_in01",
    		"ama_in02",
    		"ama_test",
    		"amatsu",
    		"gon_dun01",
    		"gon_dun02",
    		"gon_dun03",
    		"gon_fild01",
    		"gon_in",
    		"gon_test",
    		"gonryun",
    		"sec_in01",
    		"sec_in02",
    		"sec_pri",
    		"umbala",
    		"um_dun01",
    		"um_dun02",
    		"um_fild01",
    		"um_fild02",
    		"um_fild03",
    		"um_fild04",
    		"um_in",
    		"niflheim",
    		"nif_fild01",
    		"nif_fild02",
    		"nif_in",
    		"yggdrasil01",
    		"valkyrie",
    		"himinn",
    		"lou_in01",
    		"lou_in02",
    		"lou_dun03",
    		"lou_dun02",
    		"lou_dun01",
    		"lou_fild01",
    		"louyang",
    		"siege_test",
    		"n_castle",
    		"nguild_gef",
    		"nguild_prt",
    		"nguild_pay",
    		"nguild_alde",
    		"jawaii",
    		"jawaii_in",
    		"gefenia01",
    		"gefenia02",
    		"gefenia03",
    		"gefenia04",
    		"new_zone01",
    		"new_zone02",
    		"new_zone03",
    		"new_zone04",
    		"payon_in03",
    		"ayothaya",
    		"ayo_in01",
    		"ayo_in02",
    		"ayo_fild01",
    		"ayo_fild02",
    		"ayo_dun01",
    		"ayo_dun02",
    		"que_god01",
    		"que_god02",
    		"yuno_fild05",
    		"yuno_fild07",
    		"yuno_fild08",
    		"yuno_fild09",
    		"yuno_fild11",
    		"yuno_fild12",
    		"alde_tt02",
    		"turbo_n_1",
    		"turbo_n_4",
    		"turbo_n_8",
    		"turbo_n_16",
    		"turbo_e_4",
    		"turbo_e_8",
    		"turbo_e_16",
    		"turbo_room",
    		"airplane",
    		"airport",
    		"einbech",
    		"einbroch",
    		"ein_dun01",
    		"ein_dun02",
    		"ein_fild06",
    		"ein_fild07",
    		"ein_fild08",
    		"ein_fild09",
    		"ein_fild10",
    		"ein_in01",
    		"que_sign01",
    		"que_sign02",
    		"ein_fild03",
    		"ein_fild04",
    		"lhz_fild02",
    		"lhz_fild03",
    		"yuno_pre",
    		"lhz_fild01",
    		"lighthalzen",
    		"lhz_in01",
    		"lhz_in02",
    		"lhz_in03",
    		"lhz_que01",
    		"lhz_dun01",
    		"lhz_dun02",
    		"lhz_dun03",
    		"lhz_cube",
    		"juperos_01",
    		"juperos_02",
    		"jupe_area1",
    		"jupe_area2",
    		"jupe_core",
    		"jupe_ele",
    		"jupe_ele_r",
    		"jupe_gate",
    		"y_airport",
    		"lhz_airport",
    		"airplane_01",
    		"jupe_cave",
    		"quiz_02",
    		"hu_fild07",
    		"hu_fild05",
    		"hu_fild04",
    		"hu_fild01",
    		"yuno_fild06",
    		"job_soul",
    		"job_star",
    		"que_job01",
    		"que_job02",
    		"que_job03",
    		"abyss_01",
    		"abyss_02",
    		"abyss_03",
    		"thana_step",
    		"thana_boss",
    		"tha_scene01",
    		"tha_t01",
    		"tha_t02",
    		"tha_t03",
    		"tha_t04",
    		"tha_t07",
    		"tha_t05",
    		"tha_t06",
    		"tha_t08",
    		"tha_t09",
    		"tha_t10",
    		"tha_t11",
    		"tha_t12",
    		"auction_01",
    		"auction_02",
    		"hugel",
    		"hu_in01",
    		"que_bingo",
    		"que_hugel",
    		"p_track01",
    		"p_track02",
    		"odin_tem01",
    		"odin_tem02",
    		"odin_tem03",
    		"hu_fild02",
    		"hu_fild03",
    		"hu_fild06",
    		"ein_fild01",
    		"ein_fild02",
    		"ein_fild05",
    		"yuno_fild10",
    		"kh_kiehl02",
    		"kh_kiehl01",
    		"kh_dun02",
    		"kh_dun01",
    		"kh_mansion",
    		"kh_rossi",
    		"kh_school",
    		"kh_vila",
    		"force_map1",
    		"force_map2",
    		"force_map3",
    		"job_hunter",
    		"job_knight",
    		"job_priest",
    		"job_wizard",
    		"ve_in02",
    		"rachel",
    		"ra_in01",
    		"ra_fild01",
    		"ra_fild02",
    		"ra_fild03",
    		"ra_fild04",
    		"ra_fild05",
    		"ra_fild06",
    		"ra_fild07",
    		"ra_fild08",
    		"ra_fild09",
    		"ra_fild10",
    		"ra_fild11",
    		"ra_fild12",
    		"ra_fild13",
    		"ra_san01",
    		"ra_san02",
    		"ra_san03",
    		"ra_san04",
    		"ra_san05",
    		"ra_temin",
    		"ra_temple",
    		"ra_temsky",
    		"que_rachel",
    		"ice_dun01",
    		"ice_dun02",
    		"ice_dun03",
    		"ice_dun04",
    		"que_thor",
    		"thor_camp",
    		"thor_v01",
    		"thor_v02",
    		"thor_v03",
    		"veins",
    		"ve_in",
    		"ve_fild01",
    		"ve_fild02",
    		"ve_fild03",
    		"ve_fild04",
    		"ve_fild05",
    		"ve_fild06",
    		"ve_fild07",
    		"poring_c01",
    		"poring_c02",
    		"que_ng",
    		"nameless_i",
    		"nameless_n",
    		"nameless_in",
    		"abbey01",
    		"abbey02",
    		"abbey03",
    		"poring_w01",
    		"poring_w02",
    		"que_san04",
    		"moscovia",
    		"mosk_in",
    		"mosk_ship",
    		"mosk_fild01",
    		"mosk_fild02",
    		"mosk_dun01",
    		"mosk_dun02",
    		"mosk_dun03",
    		"mosk_que",
    		"force_4-1",
    		"force_5-1",
    		"06guild_r",
    		"06guild_01",
    		"06guild_02",
    		"06guild_03",
    		"06guild_04",
    		"06guild_05",
    		"06guild_06",
    		"06guild_07",
    		"06guild_08",
    		"z_agit",
    		"que_temsky",
    		"itemmall",
    		"bossnia_01",
    		"bossnia_02",
    		"bossnia_03",
    		"bossnia_04",
    		"schg_cas01",
    		"schg_cas02",
    		"schg_cas03",
    		"schg_cas04",
    		"schg_cas05",
    		"sch_gld",
    		"cave",
    		"moc_fild20",
    		"moc_fild21",
    		"moc_fild22",
    		"que_ba",
    		"que_moc_16",
    		"que_moon",
    		"arug_cas01",
    		"arug_cas02",
    		"arug_cas03",
    		"arug_cas04",
    		"arug_cas05",
    		"aru_gld",
    		"bat_room",
    		"bat_a01",
    		"bat_a02",
    		"bat_b01",
    		"bat_b02",
    		"que_qsch01",
    		"que_qsch02",
    		"que_qsch03",
    		"que_qsch04",
    		"que_qsch05",
    		"que_qaru01",
    		"que_qaru02",
    		"que_qaru03",
    		"que_qaru04",
    		"que_qaru05",
    		"1@cata",
    		"2@cata",
    		"e_tower",
    		"1@tower",
    		"2@tower",
    		"3@tower",
    		"4@tower",
    		"5@tower",
    		"6@tower",
    		"mid_camp",
    		"mid_campin",
    		"man_fild01",
    		"man_fild03",
    		"spl_fild02",
    		"spl_fild03",
    		"moc_fild22b",
    		"que_dan01",
    		"que_dan02",
    		"schg_que01",
    		"schg_dun01",
    		"arug_que01",
    		"arug_dun01",
    		"1@orcs",
    		"2@orcs",
    		"1@nyd",
    		"2@nyd",
    		"nyd_dun01",
    		"nyd_dun02",
    		"manuk",
    		"man_fild02",
    		"man_in01",
    		"splendide",
    		"spl_fild01",
    		"spl_in01",
    		"spl_in02",
    		"bat_c01",
    		"bat_c02",
    		"bat_c03",
    		"moc_para01",
    		"job3_arch01",
    		"job3_arch02",
    		"job3_arch03",
    		"job3_guil01",
    		"job3_guil02",
    		"job3_guil03",
    		"job3_rang01",
    		"job3_rang02",
    		"job3_rune01",
    		"job3_rune02",
    		"job3_rune03",
    		"job3_war01",
    		"job3_war02",
    		"jupe_core2",
    		"brasilis",
    		"bra_in01",
    		"bra_fild01",
    		"bra_dun01",
    		"bra_dun02",
    		"dicastes01",
    		"dicastes02",
    		"dic_in01",
    		"dic_fild01",
    		"dic_fild02",
    		"dic_dun01",
    		"dic_dun02",
    		"job3_gen01",
    		"s_atelier",
    		"job3_sha01",
    		"mora",
    		"bif_fild01",
    		"bif_fild02",
    		"1@mist",
    		"dewata",
    		"dew_in01",
    		"dew_fild01",
    		"dew_dun01",
    		"dew_dun02",
    		"que_house_s",
    		"malangdo",
    		"mal_in01",
    		"mal_in02",
    		"mal_dun01",
    		"1@pump",
    		"2@pump",
    		"1@cash",
    		"iz_dun05",
    		"evt_mobroom",
    		"alde_tt03",
    		"dic_dun03",
    		"1@lhz",
    		"lhz_dun04",
    		"que_lhz",
    		"evt_swar_b",
    		"evt_swar_r",
    		"evt_swar_s",
    		"evt_swar_t",
    		"gld2_ald",
    		"gld2_gef",
    		"gld2_pay",
    		"gld2_prt",
    		"gld_dun01_2",
    		"gld_dun02_2",
    		"gld_dun03_2",
    		"gld_dun04_2",
    		"malaya",
    		"job_ko",
    		"ma_scene01",
    		"1@ma_b",
    		"1@ma_c",
    		"1@ma_h",
    		"ma_in01",
    		"ma_dun01",
    		"ma_fild01",
    		"ma_fild02",
    		"ma_zif01",
    		"ma_zif02",
    		"ma_zif03",
    		"ma_zif04",
    		"ma_zif05",
    		"ma_zif06",
    		"ma_zif07",
    		"ma_zif08",
    		"ma_zif09",
    		"new_event",
    		"eclage",
    		"ecl_fild01",
    		"ecl_tdun01",
    		"ecl_tdun02",
    		"ecl_tdun03",
    		"ecl_tdun04",
    		"que_avan01",
    		"1@ecl",
    		"ecl_in01",
    		"ecl_in02",
    		"ecl_in03",
    		"ecl_in04",
    		"ecl_hub01",
    		"moc_prydn1",
    		"moc_prydn2",
    		"iz_ac01",
    		"iz_ac02",
    		"treasure_n1",
    		"treasure_n2",
    		"iz_int",
    		"iz_ng01",
    		"iz_int01",
    		"iz_int02",
    		"iz_int03",
    		"iz_int04",
    		"iz_ac01_a",
    		"iz_ac02_a",
    		"iz_ac01_b",
    		"iz_ac02_b",
    		"iz_ac01_c",
    		"iz_ac02_c",
    		"iz_ac01_d",
    		"iz_ac02_d",
    		"te_prtcas01",
    		"te_prtcas02",
    		"te_prtcas03",
    		"te_prtcas04",
    		"te_prtcas05",
    		"te_aldecas1",
    		"te_aldecas2",
    		"te_aldecas3",
    		"te_aldecas4",
    		"te_aldecas5",
    		"prt_fild08a",
    		"prt_fild08b",
    		"prt_fild08c",
    		"prt_fild08d",
    		"izlude_a",
    		"izlude_b",
    		"izlude_c",
    		"izlude_d",
    		"te_prt_gld",
    		"te_alde_gld",
    		"teg_dun01",
    		"teg_dun02",
    		"1@gl_k",
    		"2@gl_k",
    		"gl_chyard_",
    		"gl_cas02_",
    		"evt_bomb",
    		"1@def01",
    		"1@def02",
    		"1@def03",
    		"1@gef",
    		"1@face",
    		"1@sara",
    		"1@gef_in",
    		"dali",
    		"dali02",
    		"1@ge_st",
    		"1@spa",
    		"1@tnm1",
    		"1@tnm2",
    		"1@tnm3",
    		"1@dth1",
    		"1@dth2",
    		"1@dth3",
    		"1@eom",
    		"1@jtb",
    		"1@rev",
    		"1@xm_d",
    		"moro_cav",
    		"moro_vol",
    		"silk_lair",
    		"c_tower2_",
    		"c_tower3_",
    		"1@mcd",
    		"ver_eju",
    		"ver_tunn",
    		"verus03",
    		"verus04",
    		"job_gun",
    		"1@air1",
    		"1@air2",
    		"1@glast",
    		"lhz_dun_n",
    		"lhz_d_n2",
    		"1@gl_kh",
    		"2@gl_kh",
    		"1@lab",
    		"1@uns",
    		"un_bk_q",
    		"un_bunker",
    		"un_myst",
    		"verus01",
    		"verus02",
    		"paramk",
    		"1@infi",
    		"1@ffp",
    		"1@mir",
    		"2@mir",
    		"1@sthb",
    		"1@sthc",
    		"1@sthd",
    		"prt_cas",
    		"prt_cas_q",
    		"prt_prison",
    		"prt_lib",
    		"prt_lib_q",
    		"prt_q",
    		"prt_pri00",
    		"int_land",
    		"int_land01",
    		"int_land02",
    		"int_land03",
    		"int_land04",
    		"lasagna",
    		"lasa_fild01",
    		"lasa_fild02",
    		"lasa_dun01",
    		"lasa_dun02",
    		"lasa_dun03",
    		"conch_in",
    		"lasa_in01",
    		"lasa_dun_q",
    		"1@pop1",
    		"1@pop2",
    		"1@pop3",
    		"1@slw",
    		"1@swat",
    		"que_swat",
    		"slabw01",
    		"rebel_in",
    		"1@md_gef",
    		"1@md_pay",
    		"har_in01",
    		"harboro1",
    		"harboro2",
    		"rockmi1",
    		"rockmi2",
    		"rockrdg1",
    		"rockrdg2",
    		"1@gl_k2",
    		"2@gl_k2",
    		"1@xm_d2",
    		"pay_d03_i",
    		"gef_d01_i",
    		"ice_d03_i",
    		"1@tre",
    		"1@begi",
    		"tur_d03_i",
    		"tur_d04_i",
    		"1@crd",
    		"ordeal_a00",
    		"ordeal_a02",
    		"pprontera",
    		"niflxmas",
    		"sch_lab",
    		"nakhyang",
    		"lasa_sea",
    		"1@drdo",
    		"x_lhz",
    		"x_prt",
    		"x_ra",
    		"prt_evt_in",
    		"vis_h01",
    		"vis_h02",
    		"vis_h03",
    		"vis_h04",
    		"ein_d02_i",
    		"com_d02_i",
    		"1@soul",
    		"star_frst",
    		"star_in",
    		"2009rwc_01",
    		"2009rwc_02",
    		"2009rwc_03",
    		"2009rwc_04",
    		"2009rwc_05",
    		"2009rwc_06",
    		"2009rwc_07",
    		"2009rwc_08",
    		"2009rwc_f01",
    		"2012rwc_01",
    		"2012rwc_02",
    		"2012rwc_03",
    		"2012rwc_04",
    		"2012rwc_05",
    		"2012rwc_06",
    		"2012rwc_07",
    		"2012rwc_08";
    
    	.map_size = getarraysize(.maps$);
    
    	freeloop true;
    	for(;.@i < .map_size;.@i++) {
    		if(getmapusers(.maps$[.@i]) >= 0) {
    			if(!getmapflag(.maps$[.@i],mf_nowarpto) && !getmapflag(.maps$[.@i],mf_nowarp) && !getmapflag(.maps$[.@i],mf_nopenalty) && !getmapflag(.maps$[.@i],mf_noskill) && mobcount(.maps$[.@i],"all"))
    				continue;
    		}
    		deletearray .maps$[.@i],1;
    		.@i--;
    		.map_size--;
    	}
    	freeloop false;
    
    OnSpawn:
    
    	copyarray .@maps$,.maps$,.map_size;
    	for(.@i = 0;.@i < 7;.@i++) {
    		.@r = rand(.map_size - .@i);
    		.@map$ = .@maps$[.@r];
    		getfreecell .@map$,.@x,.@y;
    		//makeitem .item_id + .@i,.@map$,.@x,.@y;
    		makeitem .item_id,1,.@map$,.@x,.@y,true;
    		deletearray .@maps$[.@r],1;
    		debugmes "Dragon Ball "+(.@i + 1)+" location: "+.@map$+" "+.@x+" "+.@y+".";
    	}
    	end;
    
    }
    
    prontera,100,100,4	script	Dragon Ball	100,{
    
    	.@item_id = getvariableofnpc(.item_id,"DB_Spawn");
    	/*
    	for(.@i = 0;.@i < 7;.@i++) {
    		if(countitem(.@item_id + .@i))
    			.@n++;
    	}
    	if(.@n >= 7) {
    	*/
    	if(countitem(.@item_id) >= 7) {
    		mes "You have all the balls!";
    		mes "Select your wish!";
    		switch(select("Kill everyone","Resurrect everyone","Be millionaire")) {
    		case 1:
    			freeloop true;
    			.@oid = getcharid(3);
    			.@n = getunits(BL_PC,.@player);
    			for(.@i = 0;.@i < .@n;.@i++) {
    				if(.@player[.@n] != .@oid)
    					unitkill .@player[.@n];
    			}
    			freeloop false;
    			break;
    		case 2:
    			recovery 4,4;
    			break;
    		case 3:
    			Zeny+= 700000000;
    			break;
    		}
    		donpcevent "DB_Spawn::OnSpawn";
    	} else {
    		mes "Dragon Balls are all around the world!";
    	}
    	close;
    
    }

     

  7. You didn't have the last version. Anyways I tried to modify the current one with what you wanted:

    //===== rAthena Script ======================================= 
    //= Warper
    //===== Description: ========================================= 
    //= A complete - but very condensed - warper script.
    //===== Additional Comments: =================================
    //= 1.0 Initial script By [Euphy].
    //= 1.1 Added missing duplicates and fixed coordinates.
    //=     Some coordinates written by [Tekno-Kanix] and [ToastOfDoom].
    //= 1.2 Added new episodes and simplified functions.
    //= 1.3 Added Renewal checks and Instances menu.
    //=     Aligned coordinates with @go.
    //= 1.4 Added new Guild Dungeons.
    //= 1.4a Slight edits.
    //= 1.4b Added Wolfchev's Laboratory warp.
    //= 1.5 Added Lasagna ,Para Market ,WOE TE ,Instances and settings [sader1992].
    //= 1.5a Fix Bifrost Tower
    //============================================================
    
    -	script	Warper	-1,{
    function Go; function Disp; function Pick; function Restrict;
    
    // --------------------------------------------------
    //	Main Menu:
    // --------------------------------------------------
    
    menu	"Last Warp ^777777["+lastwarp$+"]^000000",-,
        	" ~ Towns",Towns,
        	" ~ Fields",Fields,
        	" ~ Dungeons",Dungeons,
        	" ~ Guild Castles",Castles,
        	" ~ Guild Dungeons",Guild_Dungeons,
        	" ~ Instances",Instances,
        	" ~ Special Areas",Special;
    
    	if (lastwarp$ == "")
    		message strcharinfo(0),"You haven't warped anywhere yet.";
    	else {
    		if(inarray(.blocked_maps$,lastwarp$) != -1) {
    			lastwarp$ = "";
    			lastwarpx = 0;
    			lastwarpy = 0;
    			message strcharinfo(0),"That map was forbidden and is now deleted.";
    		}
    		else
    			warp lastwarp$,lastwarpx,lastwarpy;
    	}
    	end;
    
    // ------------------- Functions -------------------
    // * Go("<map>",<x>,<y>);
    //	~ Warps directly to a map.
    //
    // * Disp("<Menu Option>",<first option>,<last option>);
    // * Pick("<map_prefix>"{,<index offset>});
    //	~ Dynamic menu and map selection (auto-numbered).
    //	~ Fields and Dungeons must use Disp and Pick Functions.
    //
    // * Disp("<Option 1>:<Option 2>:<etc.>");
    // * Pick("","<map1>","<map2>","<etc.>");
    //	~ Manual menu and map selection (listed).
    //
    // * Restrict("<RE | Pre-RE>"{,<menu option numbers>});
    //	~ Only allows map for Renewal or Pre-Renewal modes.
    //     If menu option numbers are given, only those maps
    //     will be restricted (i.e. not for "Go").
    //
    // Other notes:
    //   ~ Array @c[] holds all (x,y) coordinates.
    //   ~ Use @c[2] EXCEPT when maps begin dynamically
    //	  at 0: use @c[0] and Pick() offset 1.
    // --------------------------------------------------
    
    function Go {
    
    	if(inarray(.blocked_maps$,getarg(0)) != -1) {
    		mes .block_message$;
    		close;
    	}
    	else {
    		set lastwarp$, getarg(0);
    		set lastwarpx, getarg(1,0);
    		set lastwarpy, getarg(2,0);
    		warp getarg(0),getarg(1,0),getarg(2,0);
    	}
    	end;
    }
    function Disp {
    	if (getargcount() < 3)
    		set @menu$, getarg(0);
    	else {
    		set @menu$,"";
    		for (set .@i,getarg(1); .@i<=getarg(2); set .@i,.@i+1)
    			set @menu$, @menu$+getarg(0)+" "+.@i+":";
    	}
    	return;
    }
    function Pick {
    	set .@warp_block,@warp_block;
    	set @warp_block,0;
    	if((@f && .OnlyFirstFld) || (@d && .OnlyFirstDun)){
    		set .@select,1;
    		if(.@warp_block){
    			while(.@warp_block & (1<<.@select)){
    				.@select += 1;
    			}
    		}
    	}else{
    		set .@select, select(@menu$);
    	}
    	if (getarg(0) == "") {
    		set .@i, .@select;
    		set .@map$, getarg(.@i);
    	} else {
    		set .@i, .@select-getarg(1,0);
    		set .@map$, getarg(0)+((.@i<10)?"0":"")+.@i;
    	}
    	if (.@warp_block & (1<<.@select)) {
    		message strcharinfo(0),"This map is not enabled in "+((checkre(0))?"":"Pre-")+"Renewal.";
    		end;
    	}
    	set .@x, @c[.@i*2];
    	set .@y, @c[.@i*2+1];
    	deletearray @c[0],getarraysize(@c);
    	@f = false; @d = false;
    	Go(.@map$,.@x,.@y);
    }
    function Restrict {
    	if ((getarg(0) == "RE" && !checkre(0)) || (getarg(0) == "Pre-RE" && checkre(0))) {
    		if (getarg(1,0)) {
    			set @warp_block,0;
    			for (set .@i,1; .@i<getargcount(); set .@i,.@i+1)
    				set @warp_block, @warp_block | (1<<getarg(.@i));
    		} else {
    			message strcharinfo(0),"This map is not enabled in "+((checkre(0))?"":"Pre-")+"Renewal.";
    			end;
    		}
    	}
    	return;
    }
    
    // --------------------------------------------------
    	Towns:
    // --------------------------------------------------
    menu	"Prontera",T1, "Alberta",T2, "Aldebaran",T3, "Amatsu",T4, "Ayothaya",T5,
        	"Brasilis",T6, "Comodo",T7, "Dewata",T8, "Eclage",T9, "Einbech",T10, 
        	"Einbroch",T11, "El Dicastes",T12, "Geffen",T13, "Gonryun",T14, "Hugel",T15,
        	"Izlude",T16, "Jawaii",T17, "Lasagna",T18, "Lighthalzen",T19, "Louyang",T20,
    		"Lutie",T21, "Malangdo",T22, "Malaya",T23, "Manuk",T24,
    		"Midgarts Expedition Camp",T25, "Mora",T26, "Morroc",T27, "Moscovia",T28,
    		"Nameless Island",T29, "Niflheim",T30, "Payon",T31, "Rachel",T32, "Splendide",T33,
    		"Thor Camp",T34, "Umbala",T35, "Veins",T36, "Yuno",T37;
    
    T1: Go("prontera",155,183);
    T2: Go("alberta",28,234);
    T3: Go("aldebaran",140,131);
    T4: Go("amatsu",198,84);
    T5: Go("ayothaya",208,166);
    T6: Restrict("RE");
    	Go("brasilis",196,217);
    T7: Go("comodo",209,143);
    T8: Restrict("RE");
    	Go("dewata",200,180);
    T9: Restrict("RE");
    	Go("ecl_in01",48,53);
    T10: Go("einbech",63,35);
    T11: Go("einbroch",64,200);
    T12: Restrict("RE");
    	 Go("dicastes01",198,187);
    T13: Go("geffen",119,59);
    T14: Go("gonryun",160,120);
    T15: Go("hugel",96,145);
    T16: Go("izlude",128,(checkre(3)?146:114));
    T17: Go("jawaii",251,132);
    T18: Restrict("RE");
    	 Go("lasagna",193,182);
    T19: Go("lighthalzen",158,92);
    T20: Go("louyang",217,100);
    T21: Go("xmas",147,134);
    T22: Restrict("RE");
    	 Go("malangdo",140,114);
    T23: Restrict("RE");
    	 Go("malaya",231,200);
    T24: Go("manuk",282,138);
    T25: Go("mid_camp",210,288);
    T26: Restrict("RE");
    	 Go("mora",55,146);
    T27: Go("morocc",156,93);
    T28: Go("moscovia",223,184);
    T29: Go("nameless_n",256,215);
    T30: Go("niflheim",202,174);
    T31: Go("payon",179,100);
    T32: Go("rachel",130,110);
    T33: Go("splendide",201,147);
    T34: Go("thor_camp",246,68);
    T35: Go("umbala",97,153);
    T36: Go("veins",216,123);
    T37: Go("yuno",157,51);
    
    // --------------------------------------------------
    	Fields:
    // --------------------------------------------------
    @f = true;
    menu	"Amatsu Fields",F1, "Ayothaya Fields",F2, "Bifrost Fields", F3,
        	"Brasilis Fields",F4, "Comodo Fields",F5, "Dewata Fields",F6,
        	"Eclage Fields",F7, "Einbroch Fields",F8, "El Dicastes Fields",F9,
        	"Geffen Fields",F10, "Gonryun Fields",F11, "Hugel Fields",F12,
    		"Lasagna Fields",F13, "Lighthalzen Fields",F14, "Louyang Field",F15, 
    		"Lutie Field",F16, "Malaya Fields",F17, "Manuk Fields",F18, 
    		"Mjolnir Fields",F19, "Moscovia Fields",F20, "Niflheim Fields",F21, 
    		"Payon Forests",F22, "Prontera Fields",F23, "Rachel Fields",F24, 
    		"Sograt Deserts",F25, "Splendide Fields",F26, "Umbala Fields",F27, 
    		"Veins Fields",F28, "Yuno Fields",F29;
    
    F1: setarray @c[2],190,197;
    	Disp("Amatsu Field",1,1); Pick("ama_fild");
    F2: setarray @c[2],173,134,212,150;
    	Disp("Ayothaya Field",1,2); Pick("ayo_fild");
    F3: Restrict("RE");
    	setarray @c[2],193,220,220,187;
    	Disp("Bifrost Field",1,2); Pick("bif_fild");
    F4: Restrict("RE");
    	setarray @c[2],74,32;
    	Disp("Brasilis Field",1,1); Pick("bra_fild");
    F5: Restrict("Pre-RE",5);
    	setarray @c[2],180,178,231,160,191,172,228,194,224,203,190,223,234,177,194,175,172,172;
    	Disp("Comodo Field",1,9); Pick("cmd_fild");
    F6: Restrict("RE");
    	setarray @c[2],371,212;
    	Disp("Dewata Field",1,1); Pick("dew_fild");
    F7: Restrict("RE");
    	setarray @c[2],97,314;
    	Disp("Eclage Field",1,1); Pick("ecl_fild");
    F8: Restrict("Pre-RE",2,10);
    	setarray @c[2],142,225,182,141,187,228,185,173,216,173,195,148,272,220,173,214,207,174,196,200;
    	Disp("Einbroch Field",1,10); Pick("ein_fild");
    F9: Restrict("RE");
    	setarray @c[2],143,132,143,217;
    	Disp("El Dicastes Field",1,2); Pick("dic_fild");
    F10: Restrict("Pre-RE",13,15);
    	 setarray @c[0],46,199,213,204,195,212,257,192,188,171,166,263,248,158,195,191,186,183,221,117,178,218,136,328,240,181,235,235,211,185;
    	 Disp("Geffen Field",0,14); Pick("gef_fild",1);
    F11: setarray @c[2],220,227;
    	 Disp("Gonryun Field",1,1); Pick("gon_fild");
    F12: Restrict("Pre-RE",3,7);
    	 setarray @c[2],268,101,222,193,232,185,252,189,196,106,216,220,227,197;
    	 Disp("Hugel Field",1,7); Pick("hu_fild");
    F13: Restrict("RE");
    	 setarray @c[2],344,371,20,98;
    	 Disp("Lasagna Field",1,2); Pick("lasa_fild");	 
    F14: setarray @c[2],240,179,185,235,240,226;
    	 Disp("Lighthalzen Field",1,3); Pick("lhz_fild");
    F15: setarray @c[2],229,187;
    	 Disp("Louyang Field",1,1); Pick("lou_fild");
    F16: setarray @c[2],115,145;
    	 Disp("Lutie Field",1,1); Pick("xmas_fild");
    F17: Restrict("RE");
    	 setarray @c[2],40,272,207,180;
    	 Disp("Malaya Field",1,2); Pick("ma_fild");
    F18: setarray @c[2],35,236,35,262,84,365;
    	 Disp("Manuk Field",1,3); Pick("man_fild");
    F19: setarray @c[2],204,120,175,193,208,213,179,180,181,240,195,270,235,202,188,215,205,144,245,223,180,206,196,208;
    	 Disp("Mjolnir Field",1,12); Pick("mjolnir_");
    F20: setarray @c[2],82,104,131,147;
    	 Disp("Moscovia Field",1,2); Pick("mosk_fild");
    F21: setarray @c[2],215,229,167,234;
    	 Disp("Niflheim Field",1,2); Pick("nif_fild");
    F22: Restrict("Pre-RE",5,11);
    	 setarray @c[2],158,206,151,219,205,148,186,247,134,204,193,235,200,177,137,189,201,224,160,205,194,150;
    	 Disp("Payon Forest",1,11); Pick("pay_fild");
    F23: setarray @c[0],208,227,190,206,240,206,190,143,307,252,239,213,185,188,193,194,187,218,210,183,195,149,198,164;
    	 Disp("Prontera Field",0,11); Pick("prt_fild",1);
    F24: Restrict("Pre-RE",2,7,9,10,11,13);
    	 setarray @c[2],192,162,235,166,202,206,202,208,225,202,202,214,263,196,217,201,87,121,277,181,221,185,175,200,174,197;
    	 Disp("Rachel Field",1,13); Pick("ra_fild");
    F25: if(.Satan_Morroc){
    	 setarray @c[2],219,205,177,206,194,182,224,170,198,216,156,187,185,263,206,228,208,238,209,223,85,97,207,202,31,195,38,195;
    	 Disp("Sograt Desert 1:Sograt Desert 2:Sograt Desert 3:Sograt Desert 7:Sograt Desert 11:Sograt Desert 12:Sograt Desert 13:Sograt Desert 16:Sograt Desert 17:Sograt Desert 18:Sograt Desert 19:Sograt Desert 20:Sograt Desert 21:Sograt Desert 22");
    	 Pick("","moc_fild01","moc_fild02","moc_fild03","moc_fild07","moc_fild11","moc_fild12","moc_fild13","moc_fild16","moc_fild17","moc_fild18","moc_fild19","moc_fild20","moc_fild21","moc_fild22");
    	 }else{
    	 setarray @c[2],219,205,177,206,194,182,146,297,204,197,275,302,224,170,139,123,101,110,341,39,198,216,156,187,185,263,223,222,170,257,206,228,208,238,209,223,85,97;
    	 Disp("Sograt Desert",1,19); Pick("moc_fild");
    	 }
    F26: setarray @c[2],175,186,236,184,188,204;
    	 Disp("Splendide Field",1,3); Pick("spl_fild");
    F27: setarray @c[2],217,206,223,221,237,215,202,197;
    	 Disp("Umbala Field",1,4); Pick("um_fild");
    F28: Restrict("Pre-RE",5);
    	 setarray @c[2],186,175,196,370,222,45,51,250,202,324,150,223,149,307;
    	 Disp("Veins Field",1,7); Pick("ve_fild");
    F29: Restrict("Pre-RE",5,10);
    	 setarray @c[2],189,224,192,207,221,157,226,199,223,177,187,232,231,174,196,203,183,214,200,124,195,226,210,304;
    	 Disp("Yuno Field",1,12); Pick("yuno_fild");
    
    // --------------------------------------------------
    	Dungeons:
    // --------------------------------------------------
    @d = true;
    menu	"Abyss Lakes",D1, "Amatsu Dungeon",D2, "Anthell",D3,
        	"Ayothaya Dungeon",D4, "Beach Dungeon",D5, "Bifrost Tower",D42,
        	"Bio Labs",D6, "Brasilis Dungeon",D7, "Byalan Dungeon",D8, "Clock Tower",D9,
        	"Coal Mines",D10, "Culvert",D11, "Cursed Abbey",D12, "Dewata Dungeon",D13,
        	"Einbroch Dungeon",D14, "Gefenia",D15, "Geffen Dungeon",D16,
        	"Glast Heim",D17, "Gonryun Dungeon",D18, "Hidden Dungeon",D19,
        	"Ice Dungeon",D20, "Juperos",D21, "Kiel Dungeon",D22, "Lasagna Dungeon",D23,
    		"Louyang Dungeon",D24, "Magma Dungeon",D25, "Malangdo Dungeon",D26,
    		"Moscovia Dungeon",D27, "Nidhogg's Dungeon",D28, "Odin Temple",D29,
    		"Orc Dungeon",D30, "Payon Dungeon",D31, "Pyramids",D32, "Rachel Sanctuary",D33,
        	"Scaraba Hole",D34, "Sphinx",D35, "Sunken Ship",D36, "Thanatos Tower",D37,
        	"Thor Volcano",D38, "Toy Factory",D39, "Turtle Dungeon",D40, "Umbala Dungeon",D41;
    
    D1: setarray @c[2],261,272,275,270,116,27;
    	Disp("Abyss Lakes",1,3); Pick("abyss_");
    D2: setarray @c[2],228,11,34,41,119,14;
    	Disp("Amatsu Dungeon",1,3); Pick("ama_dun");
    D3: setarray @c[2],35,262,168,170;
    	Disp("Anthell",1,2); Pick("anthell");
    D4: setarray @c[2],275,19,24,26;
    	Disp("Ancient Shrine Maze:Inside Ancient Shrine"); Pick("ayo_dun");
    D5: setarray @c[2],266,67,255,244,23,260;
    	Disp("Beach Dungeon",1,3); Pick("","beach_dun","beach_dun2","beach_dun3");
    D6: Restrict("RE",4);
    	setarray @c[2],150,288,150,18,140,134,244,52;
    	Disp("Bio Lab",1,4); Pick("lhz_dun");
    D7: Restrict("RE");
    	setarray @c[2],87,47,262,262;
    	Disp("Brasilis Dungeon",1,2); Pick("bra_dun");
    D8: Restrict("RE",6);
    	setarray @c[0],168,168,253,252,236,204,32,63,26,27,141,187;
    	Disp("Byalan Dungeon",1,6); Pick("iz_dun",1);
    D9: setarray @c[2],199,159,148,283,65,147,56,155,297,25,127,169,277,178,268,74;
    	Disp("Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4");
    	Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04");
    D10: setarray @c[2],52,17,381,343,302,262;
    	 Disp("Coal Mines",1,3); Pick("mjo_dun");
    D11: setarray @c[2],131,247,19,19,180,169,100,92;
    	 Disp("Culvert",1,4); Pick("","prt_sewb1","prt_sewb2","prt_sewb3","prt_sewb4");
    D12: setarray @c[2],51,14,150,11,120,10;
    	 Disp("Cursed Abbey",1,3); Pick("abbey");
    D13: Restrict("RE");
    	 setarray @c[2],285,160,299,29;
    	 Disp("Dewata Dungeon",1,2); Pick("dew_dun");
    D14: setarray @c[2],22,14,292,290;
    	 Disp("Einbroch Dungeon",1,2); Pick("ein_dun");
    D15: setarray @c[2],40,103,203,34,266,168,130,272;
    	 Disp("Gefenia",1,4); Pick("gefenia",0);
    D16: setarray @c[0],104,99,115,236,106,132,203,200;
    	 Disp("Geffen Dungeon",1,4); Pick("gef_dun",1);
    D17: setarray @c[2],370,304,199,29,104,25,150,15,157,287,147,15,258,255,108,291,171,283,68,277,156,7,12,7,133,271,224,274,14,70,150,14;
    	 Disp("Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2");
    	 Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1");
    D18: setarray @c[2],153,53,28,113,68,16;
    	 Disp("Gonryun Dungeon",1,3); Pick("gon_dun");
    D19: setarray @c[2],176,7,93,20,23,8;
    	 Disp("Hidden Dungeon",1,3); Pick("prt_maze");
    D20: setarray @c[2],157,14,151,155,149,22,33,158;
    	 Disp("Ice Dungeon",1,4); Pick("ice_dun");
    D21: setarray @c[2],140,51,53,247,37,63,150,285;
    	 Disp("Entrance:Juperos 1:Juperos 2:Core");
    	 Pick("","jupe_cave","juperos_01","juperos_02","jupe_core");
    D22: setarray @c[2],28,226,41,198;
    	 Disp("Kiel Dungeon",1,2); Pick("kh_dun");
    D23: Restrict("RE");
    	 setarray @c[2],24,143,22,171,190,18;
    	 Disp("Lasagna Dungeon",1,3); Pick("lasa_dun");
    D24: setarray @c[2],218,196,282,20,165,38;
    	 Disp("The Royal Tomb:Inside the Royal Tomb:Suei Long Gon"); Pick("lou_dun");
    D25: setarray @c[2],126,68,47,30;
    	 Disp("Magma Dungeon",1,2); Pick("mag_dun");
    D26: Restrict("RE");
    	 setarray @c[2],33,230;
    	 Disp("Malangdo Dungeon",1,1); Pick("mal_dun");
    D27: setarray @c[2],189,48,165,30,32,135;
    	 Disp("Moscovia Dungeon",1,3); Pick("mosk_dun");
    D28: setarray @c[2],61,239,60,271;
    	 Disp("Nidhogg's Dungeon",1,2); Pick("nyd_dun");
    D29: setarray @c[2],298,167,224,149,266,280;
    	 Disp("Odin Temple",1,3); Pick("odin_tem");
    D30: setarray @c[2],32,170,21,185;
    	 Disp("Orc Dungeon",1,2); Pick("orcsdun");
    D31: setarray @c[0],21,183,19,33,19,63,155,159,201,204;
    	 Disp("Payon Dungeon",1,5); Pick("pay_dun",1);
    D32: Restrict("RE",7,8);
    	 setarray @c[2],192,9,10,192,100,92,181,11,94,96,192,8,94,96,192,8;
    	 Disp("Pyramids 1:Pyramids 2:Pyramids 3:Pyramids 4:Basement 1:Basement 2:Basement 1 - Nightmare Mode:Basement 2 - Nightmare Mode");
    	 Pick("","moc_pryd01","moc_pryd02","moc_pryd03","moc_pryd04","moc_pryd05","moc_pryd06","moc_prydn1","moc_prydn2");
    D33: setarray @c[2],140,11,32,21,8,149,204,218,150,9;
    	 Disp("Rachel Sanctuary",1,5); Pick("ra_san");
    D34: Restrict("RE");
    	 setarray @c[2],364,44,101,141;
    	 Disp("Scaraba Hole",1,2); Pick("dic_dun");
    D35: setarray @c[2],288,9,149,81,210,54,10,222,100,99;
    	 Disp("Sphinx",1,5); Pick("","in_sphinx1","in_sphinx2","in_sphinx3","in_sphinx4","in_sphinx5");
    D36: setarray @c[2],69,24,102,27;
    	 Disp("Sunken Ship",1,2); Pick("treasure");
    D37: setarray @c[2],150,39,150,136,220,158,59,143,62,11,89,221,35,166,93,148,29,107,159,138,19,20,130,52;
    	 Disp("Thanatos Tower",1,12); Pick("tha_t");
    D38: setarray @c[2],21,228,75,205,34,272;
    	 Disp("Thor Volcano",1,3); Pick("thor_v");
    D39: setarray @c[2],205,15,129,133;
    	 Disp("Toy Factory",1,2); Pick("xmas_dun");
    D40: setarray @c[2],154,49,148,261,132,189,100,192;
    	 Disp("Entrance:Turtle Dungeon 1:Turtle Dungeon 2:Turtle Dungeon 3"); Pick("tur_dun");
    D41: Restrict("Pre-RE",1,2);
    	 setarray @c[2],42,31,48,30,204,78;
    	 Disp("Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain");
    	 Pick("","um_dun01","um_dun02","yggdrasil01");
    D42: Restrict("RE");
    	 setarray @c[2],57,13,64,88,45,14,26,23;
    	 Disp("Bifrost Tower",1,4); Pick("ecl_tdun");
    
    // --------------------------------------------------
    	Castles:
    // --------------------------------------------------
    menu	"[FE] Aldebaran Castles",C1, "[FE] Geffen Castles",C2, "[FE] Payon Castles",C3,
        	"[FE] Prontera Castles",C4, "[SE] Arunafeltz Castles",C5, "[SE] Schwaltzvalt Castles",C6,
    		"[TE] Aldebaran Castles",C7, "[TE] Prontera Castles",C8;
    
    C1: setarray @c[2],48,83,95,249,142,85,239,242,264,90;
    	Disp("Neuschwanstein:Hohenschwangau:Nuenberg:Wuerzburg:Rothenburg");
    	Pick("","alde_gld","alde_gld","alde_gld","alde_gld","alde_gld");
    C2: setarray @c[2],214,75,308,240,143,240,193,278,305,87;
    	Disp("Repherion:Eeyolbriggar:Yesnelph:Bergel:Mersetzdeitz");
    	Pick("","gef_fild13","gef_fild13","gef_fild13","gef_fild13","gef_fild13");
    C3: setarray @c[2],121,233,295,116,317,293,140,160,204,266;
    	Disp("Bright Arbor:Scarlet Palace:Holy Shadow:Sacred Altar:Bamboo Grove Hill");
    	Pick("","pay_gld","pay_gld","pay_gld","pay_gld","pay_gld");
    C4: setarray @c[2],134,65,240,128,153,137,111,240,208,240;
    	Disp("Kriemhild:Swanhild:Fadhgridh:Skoegul:Gondul");
    	Pick("","prt_gld","prt_gld","prt_gld","prt_gld","prt_gld");
    C5: setarray @c[2],158,272,83,47,68,155,299,345,292,107;
    	Disp("Mardol:Cyr:Horn:Gefn:Banadis");
    	Pick("","aru_gld","aru_gld","aru_gld","aru_gld","aru_gld");
    C6: setarray @c[2],293,100,288,252,97,196,137,90,71,315;
    	Disp("Himinn:Andlangr:Viblainn:Hljod:Skidbladnir");
    	Pick("","sch_gld","sch_gld","sch_gld","sch_gld","sch_gld");
    C7: Restrict("RE");
    	setarray @c[2],48,83,95,249,142,85,239,242,264,90;
    	Disp("Kafragarten 1:Kafragarten 2:Kafragarten 3:Kafragarten 4:Kafragarten 5");
    	Pick("","te_alde_gld","te_alde_gld","te_alde_gld","te_alde_gld","te_alde_gld");
    C8: Restrict("RE");
    	setarray @c[2],134,65,240,128,153,137,111,240,208,240;
    	Disp("Gloria 1:Gloria 2:Gloria 3:Gloria 4:Gloria 5");
    	Pick("","te_prt_gld","te_prt_gld","te_prt_gld","te_prt_gld","te_prt_gld");
    	
    // --------------------------------------------------
    	Guild_Dungeons:
    // --------------------------------------------------
    menu	"Baldur",G1, "Luina",G2, "Valkyrie",G3, "Britoniah",G4,
        	"Arunafeltz",G5, "Schwaltzvalt",G6, "Kafragarten",G7,
    		"Gloria",G8;
    
    G1: Restrict("RE",2,3);
    	setarray @c[2],119,93,119,93,120,130;
    	Disp("Baldur F1:Baldur F2:Hall of Abyss");
    	Pick("","gld_dun01","gld_dun01_2","gld2_pay");
    G2: Restrict("RE",2,3);
    	setarray @c[2],39,161,39,161,147,155;
    	Disp("Luina F1:Luina F2:Hall of Abyss");
    	Pick("","gld_dun02","gld_dun02_2","gld2_ald");
    G3: Restrict("RE",2,3);
    	setarray @c[2],50,44,50,44,140,132;
    	Disp("Valkyrie F1:Valkyrie F2:Hall of Abyss");
    	Pick("","gld_dun03","gld_dun03_2","gld2_prt");
    G4: Restrict("RE",2,3);
    	setarray @c[2],116,45,116,45,152,118;
    	Disp("Britoniah F1:Britoniah F2:Hall of Abyss");
    	Pick("","gld_dun04","gld_dun04_2","gld2_gef");
    G5: Go("arug_dun01",199,195);
    G6: Go("schg_dun01",200,124);
    G7: Restrict("RE");
    	Go("teg_dun01",42,36);
    G8: Restrict("RE");
    	Go("teg_dun02",26,160);
    
    // --------------------------------------------------
    	Instances:
    // --------------------------------------------------
    menu	"Bakonawa Lake",I1, "Bangungot Hospital 2F",I2, "Buwaya Cave",I3,
    		"Devil Tower",I4, "Eclage Interior",I5, "Endless Tower",I6,
    		"Faceworms Nest",I7, "Geffen Magic Tournament",I8, "Ghost Palace",I9,
    		"Hazy Forest",I10, "Horror Toy Factory",I11, "Malangdo Culvert",I12,
    		"Nidhoggur's Nest",I13, "Octopus Cave",I14, "Old Glast Heim",I15,
    		"Orc's Memory",I16, "Sarah and Fenrir",I17, "Sara Memory",I18,
    		"Sealed Shrine",I19, "Wolfchev's Laboratory",I20;
    
    I1: Restrict("RE");
    	Go("ma_scene01",172,175);
    I2: Restrict("RE");
    	Go("ma_dun01",151,8);
    I3: Restrict("RE");
    	Go("ma_fild02",316,317);
    I4: Restrict("RE");
    	Go("dali02",137,115);
    I5: Restrict("RE");
    	Go("ecl_hub01",129,12);
    I6: Go("e_tower",72,112);
    I7: Restrict("RE");
    	Go("dali",85,64);
    I8: Restrict("RE");
    	Go("dali",94,141);
    I9: Restrict("RE");
    	Go("dali02",46,128);
    I10: Restrict("RE");
    	Go("bif_fild01",161,334);
    I11: Restrict("RE");
    	Go("xmas",234,298);
    I12: Restrict("RE");
    	Go("mal_in01",164,21);
    I13: Go("nyd_dun02",95,193);
    I14: Restrict("RE");
    	Go("mal_dun01",152,230);
    I15: Restrict("RE");
    	Go("glast_01",204,268);
    I16: Go("gef_fild10",240,198);
    I17: Restrict("RE");
    	Go("dali02",92,141);
    I18: Restrict("RE");
    	Go("dali",133,108);
    I19: Go("monk_test",306,143);
    I20: Restrict("RE");
    	Go("lhz_dun04",148,269);
    
    // --------------------------------------------------
    	Special:
    // --------------------------------------------------
    menu	"Auction Hall",S1, "Battlegrounds",S2, "Casino",S3, "Dimensional Rift",S4,
    		"Eden Group Headquarters",S5, "Gonryun Arena",S6, "Izlude Arena",S7, 
    		"Monster Race Arena",S8, "Para Market",S9, "Turbo Track",S10;
    
    S1: Go("auction_01",22,68);
    S2: Go("bat_room",154,150);
    S3: Go("cmd_in02",179,129);
    S4: Restrict("RE");
    	Go("dali",113,82);	
    S5: Restrict("RE");
    	Go("moc_para01",31,14);
    S6: Go("gon_test",48,10);
    S7: Go("arena_room",100,88);
    S8: Go("p_track01",62,41);
    S9: Restrict("RE");
    	Go("paramk",97,17);
    S10: Go("turbo_room",99,114);
    
    OnInit:
    	.Satan_Morroc = true;	//	false will enable moc_fild 4,5,6,8,9,10,14,15 while disable moc_fild 20,21,22 Default is true.
    	.OnlyFirstFld = false;	//	true will teleport to the first level of the Fields  Default is false.
    	.OnlyFirstDun = false;	//	true will teleport to the first level of the Dungeons  Default is false.
    
    	setarray .blocked_maps$,"mjolnir_04","ra_fild02","ra_fild03","ra_fild04","ra_fild05","ve_fild02","moc_pryd06","yuno_fild05","abbey03","abbey03","lou_dun03","prt_maze03","prt_sewb4","abbey02","xmas_dun02","yuno_fild03","abyss_03","pay_fild04","gld_dun02","gef_dun02","gef_dun01","treasure02","pay_fild11","in_sphinx5","pay_dun04","tur_dun04","lhz_dun02","gld_dun04","pay_fild04","mosk_dun03","xmas_fild01","ice_dun03","kh_dun02","ayo_dun02","anthell02","gld_dun03","anthell01","gef_fild14","gef_fild02","gef_fild10","moc_pryd04","moc_fild17","gl_cas02","gef_dun03","ein_dun02","ra_san05","ama_dun03","moc_fild21","moc_fild22","niflheim","gef_dun03","gl_chyard","gon_dun03","beach_dun","odin_tem03","odin_tem02","jupe_core","mosk_dun03","lhz_dun03","lhz_dun04";	//	Example: setarray .blocked_maps$,"prontera","Alberta",Aldebaran";
    	.block_message$ = "^FF0000Eu não consigo te teleportar para mapas de MVPs!!!^000000";
    }
    
    // --------------------------------------------------
    //	Duplicates:
    // --------------------------------------------------
    alb2trea,57,70,6	duplicate(Warper)	Warper#tre	811
    alberta,28,240,4	duplicate(Warper)	Warper#alb	811
    aldebaran,145,118,4	duplicate(Warper)	Warper#alde	811
    amatsu,203,87,4	duplicate(Warper)	Warper#ama	811
    ayothaya,209,169,6	duplicate(Warper)	Warper#ayo	811
    comodo,194,158,4	duplicate(Warper)	Warper#com	811
    einbech,59,38,6	duplicate(Warper)	Warper#einbe	811
    einbroch,69,202,4	duplicate(Warper)	Warper#einbr	811
    gef_fild10,71,339,4	duplicate(Warper)	Warper#orc	811
    geffen,124,72,4	duplicate(Warper)	Warper#gef	811
    glast_01,372,308,4	duplicate(Warper)	Warper#glh	811
    gonryun,162,122,4	duplicate(Warper)	Warper#gon	811
    hugel,101,151,4	duplicate(Warper)	Warper#hug	811
    izlu2dun,110,92,4	duplicate(Warper)	Warper#izd	811
    izlude,134,150,4	duplicate(Warper)	Warper#izl	811	//Pre-RE: (132,120)
    jawaii,253,138,4	duplicate(Warper)	Warper#jaw	811
    lighthalzen,162,102,4	duplicate(Warper)	Warper#lhz	811
    louyang,208,103,6	duplicate(Warper)	Warper#lou	811
    manuk,274,146,6	duplicate(Warper)	Warper#man	811
    mid_camp,216,288,4	duplicate(Warper)	Warper#mid	811
    mjolnir_02,85,364,4	duplicate(Warper)	Warper#mjo	811
    moc_ruins,64,164,4	duplicate(Warper)	Warper#moc	811
    morocc,159,97,4	duplicate(Warper)	Warper#mor	811
    moscovia,229,191,4	duplicate(Warper)	Warper#mos	811
    nameless_n,259,213,4	duplicate(Warper)	Warper#nam	811
    niflheim,205,179,4	duplicate(Warper)	Warper#nif	811
    pay_arche,42,134,4	duplicate(Warper)	Warper#arc	811
    payon,182,108,4	duplicate(Warper)	Warper#pay	811
    prontera,159,192,4	duplicate(Warper)	Warper#prt	811
    prt_fild05,279,223,6	duplicate(Warper)	Warper#cul	811
    rachel,135,116,4	duplicate(Warper)	Warper#rac	811
    splendide,205,153,4	duplicate(Warper)	Warper#spl	811
    thor_camp,249,76,4	duplicate(Warper)	Warper#thor	811
    umbala,106,150,3	duplicate(Warper)	Warper#umb	811
    veins,214,123,4	duplicate(Warper)	Warper#ve	811
    xmas,150,136,6	duplicate(Warper)	Warper#xmas	811
    yuno,162,47,4	duplicate(Warper)	Warper#yuno	811
    
    // --------------------------------------------------
    //	Duplicates (Renewal):
    // --------------------------------------------------
    brasilis,201,222,4	duplicate(Warper)	Warper#bra	811
    dewata,204,186,6	duplicate(Warper)	Warper#dew	811
    dicastes01,194,194,6	duplicate(Warper)	Warper#dic	811
    ecl_in01,51,60,4	duplicate(Warper)	Warper#ecl	811
    lasagna,196,187,4	duplicate(Warper)	Warper#las	811
    malangdo,134,117,6	duplicate(Warper)	Warper#mal	811
    malaya,231,204,4	duplicate(Warper)	Warper#ma	811
    mora,57,152,4	duplicate(Warper)	Warper#mora	811

    If it doesn't work try with a current rAthena, since the inarray command was bugged in some revisions with strings.

  8. Change the reward to this command instead:

    *mail <destination id>,"<sender name>","<title>","<body>"{,<zeny>{,<item id array>,<item amount array>{,<item card0 array>{,<item card1 array>{,<item card2 array>{,<item card3 array>
    		{,<random option id0 array>, <random option value0 array>, <random option paramter0 array>{,<random option id1 array>, <random option value1 array>, <random option paramter1 array>
    		{,<random option id2 array>, <random option value2 array>, <random option paramter2 array>{,<random option id3 array>, <random option value3 array>, <random option paramter3 array>
    		{,<random option id4 array>, <random option value4 array>, <random option paramter4 array>}}}}}}};
    
    This command will send mail to the <destination id> which is a character ID.
    A <sender name> can be specified but does not have to be from the direct creator
    of the mail and is limited to NAME_LENGTH (24) characters. Mail <title> is limited
    to MAIL_TITLE_LENGTH (40) characters. Mail <body> is limited to MAIL_BODY_LENGTH
    (200) characters for PACKETVER < 20150513 or 500 characters for later clients.
    
    Optional <zeny> and item data can be added to the mail as well. PACKETVER < 20150513
    is limited to 1 item while later clients are limited to MAIL_MAX_ITEM (5).
    
    The <item id array>, <item amount array>, <item card0 array>, <item card1 array>,
    <item card2 array>, and <item card3 array> should all be integer arrays.
    
    For random options there can be 5 arrays in pairs of 3 (ids, values, parameters) right after the cards.
    All of these arrays shall be integer arrays as well.
    
    Example of sending mail with zeny:
    	.@charid = getcharid(0);
    	.@sender$ = "Poring";
    	.@title$ = "Welcome";
    	.@body$ = "Hi! I'm a simple Poring from the Prontera fields! Welcome to Ragnarok!";
    	.@zeny = 5000;
    	mail .@charid, .@sender$, .@title$, .@body$, .@zeny;
    
    Example of sending mail with items:
    	.@charid = getcharid(0);
    	.@sender$ = "Angeling";
    	.@title$ = "Welcome";
    	.@body$ = "Hi! I'm a simple Angeling from the Prontera fields! Welcome to Ragnarok!";
    	.@zeny = 0;
    	setarray .@mailitem[0], 504, 505, 2220, 1214; // White Potion, Blue Potion, Hat, Dagger
    	setarray .@mailamount[0], 10, 5, 1, 1; // 10 White Potions, 5 Blue Potions, 1 Hat, 1 Dagger
    	setarray .@mailcard0[0], 0, 0, 4198, 4092; // Attach Maya Purple Card to the Hat, Attach Skeleton Worker Card to Dagger
    	setarray .@mailcard1[0], 0, 0, 0, 4092; // Attach Skeleton Worker Card to Dagger
    	setarray .@mailcard2[0], 0, 0, 0, 4092; // Attach Skeleton Worker Card to Dagger
    	mail .@charid, .@sender$, .@title$, .@body$, .@zeny, .@mailitem, .@mailamount, .@mailcard0, .@mailcard1, .@mailcard2;
    	
    Example of sending mail with items and random options:
    	.@charid = getcharid(0);
    	.@sender$ = "Angeling";
    	.@title$ = "Welcome";
    	.@body$ = "Hi! I'm a simple Angeling from the Prontera fields! Welcome to Ragnarok!";
    	.@zeny = 0;
    	setarray .@mailitem[0], 504, 505, 2220, 1214; // White Potion, Blue Potion, Hat, Dagger
    	setarray .@mailamount[0], 10, 5, 1, 1; // 10 White Potions, 5 Blue Potions, 1 Hat, 1 Dagger
    	setarray .@mailcard0[0], 0, 0, 4198, 4092; // Attach Maya Purple Card to the Hat, Attach Skeleton Worker Card to Dagger
    	setarray .@mailcard1[0], 0, 0, 0, 4092; // Attach Skeleton Worker Card to Dagger
    	setarray .@mailcard2[0], 0, 0, 0, 4092; // Attach Skeleton Worker Card to Dagger
    	setarray .@mailcard3[0], 0, 0, 0, 0; // Empty last slot
    	setarray .@mailrndopt_id0[0], 0, 0, 0, 0, RDMOPT_VAR_MAXHPAMOUNT; // Enchant the Dagger with increased HP option
    	setarray .@mailrndopt_val0[0], 0, 0, 0, 0, 1000; // Enchant the Dagger with increased HP option by 1000 points
    	setarray .@mailrndopt_prm0[0], 0, 0, 0, 0, 0; // Enchant the Dagger with increased HP option - does not need any parameter
    	mail .@charid, .@sender$, .@title$, .@body$, .@zeny, .@mailitem, .@mailamount, .@mailcard0, .@mailcard1, .@mailcard2, .@mailcard3, .@mailrndopt_id0, .@mailrndopt_val0, .@mailrndopt_prm0;

    And the rest, we can't know if we don't see the script.

  9. Haven't seen such a script but it seems fun.

    I've done something, hope it helps you:

    -	script	DB_Spawn	-1,{
    
    OnInit:
    
    	.item_id = 512;
    
    	setarray .maps$[0],
    		"alb_ship",
    		"alb2trea",
    		"alberta",
    		"alberta_in",
    		"alde_dun01",
    		"alde_dun02",
    		"alde_dun03",
    		"alde_dun04",
    		"aldeba_in",
    		"aldebaran",
    		"anthell01",
    		"anthell02",
    		"arena_room",
    		"c_tower1",
    		"c_tower2",
    		"c_tower3",
    		"c_tower4",
    		"force_1-1",
    		"force_1-2",
    		"force_1-3",
    		"force_2-1",
    		"force_2-2",
    		"force_2-3",
    		"force_3-1",
    		"force_3-2",
    		"force_3-3",
    		"gef_dun00",
    		"gef_dun01",
    		"gef_dun02",
    		"gef_dun03",
    		"gef_fild00",
    		"gef_fild01",
    		"gef_fild02",
    		"gef_fild03",
    		"gef_fild04",
    		"gef_fild05",
    		"gef_fild06",
    		"gef_fild07",
    		"gef_fild08",
    		"gef_fild09",
    		"gef_fild10",
    		"gef_fild11",
    		"gef_fild12",
    		"gef_fild13",
    		"gef_fild14",
    		"gef_tower",
    		"geffen",
    		"geffen_in",
    		"gl_cas01",
    		"gl_cas02",
    		"gl_church",
    		"gl_chyard",
    		"gl_dun01",
    		"gl_dun02",
    		"gl_in01",
    		"gl_knt01",
    		"gl_knt02",
    		"gl_prison",
    		"gl_prison1",
    		"gl_sew01",
    		"gl_sew02",
    		"gl_sew03",
    		"gl_sew04",
    		"gl_step",
    		"glast_01",
    		"hunter_1-1",
    		"hunter_2-1",
    		"hunter_3-1",
    		"in_hunter",
    		"in_moc_16",
    		"in_orcs01",
    		"in_sphinx1",
    		"in_sphinx2",
    		"in_sphinx3",
    		"in_sphinx4",
    		"in_sphinx5",
    		"iz_dun00",
    		"iz_dun01",
    		"iz_dun02",
    		"iz_dun03",
    		"iz_dun04",
    		"job_sword1",
    		"izlu2dun",
    		"izlude",
    		"izlude_in",
    		"job_thief1",
    		"knight_1-1",
    		"knight_2-1",
    		"knight_3-1",
    		"mjo_dun01",
    		"mjo_dun02",
    		"mjo_dun03",
    		"mjolnir_01",
    		"mjolnir_02",
    		"mjolnir_03",
    		"mjolnir_04",
    		"mjolnir_05",
    		"mjolnir_06",
    		"mjolnir_07",
    		"mjolnir_08",
    		"mjolnir_09",
    		"mjolnir_10",
    		"mjolnir_11",
    		"mjolnir_12",
    		"moc_castle",
    		"moc_fild01",
    		"moc_fild02",
    		"moc_fild03",
    		"moc_fild04",
    		"moc_fild05",
    		"moc_fild06",
    		"moc_fild07",
    		"moc_fild08",
    		"moc_fild09",
    		"moc_fild10",
    		"moc_fild11",
    		"moc_fild12",
    		"moc_fild13",
    		"moc_fild14",
    		"moc_fild15",
    		"moc_fild16",
    		"moc_fild17",
    		"moc_fild18",
    		"moc_fild19",
    		"moc_pryd01",
    		"moc_pryd02",
    		"moc_pryd03",
    		"moc_pryd04",
    		"moc_pryd05",
    		"moc_pryd06",
    		"moc_prydb1",
    		"moc_ruins",
    		"monk_in",
    		"morocc",
    		"morocc_in",
    		"new_1-1",
    		"new_1-2",
    		"new_1-3",
    		"new_1-4",
    		"new_2-1",
    		"new_2-2",
    		"new_2-3",
    		"new_2-4",
    		"new_3-1",
    		"new_3-2",
    		"new_3-3",
    		"new_3-4",
    		"new_4-1",
    		"new_4-2",
    		"new_4-3",
    		"new_4-4",
    		"new_5-1",
    		"new_5-2",
    		"new_5-3",
    		"new_5-4",
    		"orcsdun01",
    		"orcsdun02",
    		"ordeal_1-1",
    		"ordeal_1-2",
    		"//ordeal_1-3",
    		"//ordeal_1-4",
    		"ordeal_2-1",
    		"ordeal_2-2",
    		"//ordeal_2-3",
    		"//ordeal_2-4",
    		"ordeal_3-1",
    		"ordeal_3-2",
    		"//ordeal_3-3",
    		"//ordeal_3-4",
    		"pay_arche",
    		"pay_dun00",
    		"pay_dun01",
    		"pay_dun02",
    		"pay_dun03",
    		"pay_dun04",
    		"pay_fild01",
    		"pay_fild02",
    		"pay_fild03",
    		"pay_fild04",
    		"pay_fild05",
    		"pay_fild06",
    		"pay_fild07",
    		"pay_fild08",
    		"pay_fild09",
    		"pay_fild10",
    		"pay_fild11",
    		"payon",
    		"payon_in01",
    		"payon_in02",
    		"priest_1-1",
    		"priest_2-1",
    		"priest_3-1",
    		"prontera",
    		"prt_are_in",
    		"prt_are01",
    		"pvp_room",
    		"prt_castle",
    		"prt_church",
    		"prt_fild00",
    		"prt_fild01",
    		"prt_fild02",
    		"prt_fild03",
    		"prt_fild04",
    		"prt_fild05",
    		"prt_fild06",
    		"prt_fild07",
    		"prt_fild08",
    		"prt_fild09",
    		"prt_fild10",
    		"prt_fild11",
    		"prt_in",
    		"prt_maze01",
    		"prt_maze02",
    		"prt_maze03",
    		"prt_monk",
    		"prt_sewb1",
    		"prt_sewb2",
    		"prt_sewb3",
    		"prt_sewb4",
    		"pvp_2vs2",
    		"pvp_c_room",
    		"pvp_n_1-1",
    		"pvp_n_1-2",
    		"pvp_n_1-3",
    		"pvp_n_1-4",
    		"pvp_n_1-5",
    		"pvp_n_2-1",
    		"pvp_n_2-2",
    		"pvp_n_2-3",
    		"pvp_n_2-4",
    		"pvp_n_2-5",
    		"pvp_n_3-1",
    		"pvp_n_3-2",
    		"pvp_n_3-3",
    		"pvp_n_3-4",
    		"pvp_n_3-5",
    		"pvp_n_4-1",
    		"pvp_n_4-2",
    		"pvp_n_4-3",
    		"pvp_n_4-4",
    		"pvp_n_4-5",
    		"pvp_n_5-1",
    		"pvp_n_5-2",
    		"pvp_n_5-3",
    		"pvp_n_5-4",
    		"pvp_n_5-5",
    		"pvp_n_6-1",
    		"pvp_n_6-2",
    		"pvp_n_6-3",
    		"pvp_n_6-4",
    		"pvp_n_6-5",
    		"pvp_n_7-1",
    		"pvp_n_7-2",
    		"pvp_n_7-3",
    		"pvp_n_7-4",
    		"pvp_n_7-5",
    		"pvp_n_8-1",
    		"pvp_n_8-2",
    		"pvp_n_8-3",
    		"pvp_n_8-4",
    		"pvp_n_8-5",
    		"pvp_n_room",
    		"pvp_y_1-1",
    		"pvp_y_1-2",
    		"pvp_y_1-3",
    		"pvp_y_1-4",
    		"pvp_y_1-5",
    		"pvp_y_2-1",
    		"pvp_y_2-2",
    		"pvp_y_2-3",
    		"pvp_y_2-4",
    		"pvp_y_2-5",
    		"pvp_y_3-1",
    		"pvp_y_3-2",
    		"pvp_y_3-3",
    		"pvp_y_3-4",
    		"pvp_y_3-5",
    		"pvp_y_4-1",
    		"pvp_y_4-2",
    		"pvp_y_4-3",
    		"pvp_y_4-4",
    		"pvp_y_4-5",
    		"pvp_y_5-1",
    		"pvp_y_5-2",
    		"pvp_y_5-3",
    		"pvp_y_5-4",
    		"pvp_y_5-5",
    		"pvp_y_6-1",
    		"pvp_y_6-2",
    		"pvp_y_6-3",
    		"pvp_y_6-4",
    		"pvp_y_6-5",
    		"pvp_y_7-1",
    		"pvp_y_7-2",
    		"pvp_y_7-3",
    		"pvp_y_7-4",
    		"pvp_y_7-5",
    		"pvp_y_8-1",
    		"pvp_y_8-2",
    		"pvp_y_8-3",
    		"pvp_y_8-4",
    		"pvp_y_8-5",
    		"pvp_y_room",
    		"sword_1-1",
    		"sword_2-1",
    		"sword_3-1",
    		"treasure01",
    		"treasure02",
    		"wizard_1-1",
    		"wizard_2-1",
    		"wizard_3-1",
    		"xmas",
    		"xmas_dun01",
    		"xmas_dun02",
    		"xmas_fild01",
    		"xmas_in",
    		"beach_dun",
    		"beach_dun2",
    		"beach_dun3",
    		"cmd_fild01",
    		"cmd_fild02",
    		"cmd_fild03",
    		"cmd_fild04",
    		"cmd_fild05",
    		"cmd_fild06",
    		"cmd_fild07",
    		"cmd_fild08",
    		"cmd_fild09",
    		"cmd_in01",
    		"cmd_in02",
    		"comodo",
    		"quiz_00",
    		"quiz_01",
    		"g_room1-1",
    		"g_room1-2",
    		"g_room1-3",
    		"g_room2",
    		"tur_dun01",
    		"tur_dun02",
    		"tur_dun03",
    		"tur_dun04",
    		"tur_dun05",
    		"tur_dun06",
    		"alde_gld",
    		"aldeg_cas01",
    		"aldeg_cas02",
    		"aldeg_cas03",
    		"aldeg_cas04",
    		"aldeg_cas05",
    		"gefg_cas01",
    		"gefg_cas02",
    		"gefg_cas03",
    		"gefg_cas04",
    		"gefg_cas05",
    		"gld_dun01",
    		"gld_dun02",
    		"gld_dun03",
    		"gld_dun04",
    		"guild_room",
    		"guild_vs1",
    		"guild_vs2",
    		"guild_vs3",
    		"guild_vs4",
    		"guild_vs5",
    		"guild_vs1-1",
    		"guild_vs1-2",
    		"guild_vs1-3",
    		"guild_vs1-4",
    		"guild_vs2-1",
    		"guild_vs2-2",
    		"job_hunte",
    		"job_knt",
    		"job_prist",
    		"job_wiz",
    		"pay_gld",
    		"payg_cas01",
    		"payg_cas02",
    		"payg_cas03",
    		"payg_cas04",
    		"payg_cas05",
    		"prt_gld",
    		"prtg_cas01",
    		"prtg_cas02",
    		"prtg_cas03",
    		"prtg_cas04",
    		"prtg_cas05",
    		"alde_alche",
    		"in_rogue",
    		"job_cru",
    		"job_duncer",
    		"job_monk",
    		"job_sage",
    		"mag_dun01",
    		"mag_dun02",
    		"monk_test",
    		"quiz_test",
    		"yuno",
    		"yuno_fild01",
    		"yuno_fild02",
    		"yuno_fild03",
    		"yuno_fild04",
    		"yuno_in01",
    		"yuno_in02",
    		"yuno_in03",
    		"yuno_in04",
    		"yuno_in05",
    		"ama_dun01",
    		"ama_dun02",
    		"ama_dun03",
    		"ama_fild01",
    		"ama_in01",
    		"ama_in02",
    		"ama_test",
    		"amatsu",
    		"gon_dun01",
    		"gon_dun02",
    		"gon_dun03",
    		"gon_fild01",
    		"gon_in",
    		"gon_test",
    		"gonryun",
    		"sec_in01",
    		"sec_in02",
    		"sec_pri",
    		"umbala",
    		"um_dun01",
    		"um_dun02",
    		"um_fild01",
    		"um_fild02",
    		"um_fild03",
    		"um_fild04",
    		"um_in",
    		"niflheim",
    		"nif_fild01",
    		"nif_fild02",
    		"nif_in",
    		"yggdrasil01",
    		"valkyrie",
    		"himinn",
    		"lou_in01",
    		"lou_in02",
    		"lou_dun03",
    		"lou_dun02",
    		"lou_dun01",
    		"lou_fild01",
    		"louyang",
    		"siege_test",
    		"n_castle",
    		"nguild_gef",
    		"nguild_prt",
    		"nguild_pay",
    		"nguild_alde",
    		"jawaii",
    		"jawaii_in",
    		"gefenia01",
    		"gefenia02",
    		"gefenia03",
    		"gefenia04",
    		"new_zone01",
    		"new_zone02",
    		"new_zone03",
    		"new_zone04",
    		"payon_in03",
    		"ayothaya",
    		"ayo_in01",
    		"ayo_in02",
    		"ayo_fild01",
    		"ayo_fild02",
    		"ayo_dun01",
    		"ayo_dun02",
    		"que_god01",
    		"que_god02",
    		"yuno_fild05",
    		"yuno_fild07",
    		"yuno_fild08",
    		"yuno_fild09",
    		"yuno_fild11",
    		"yuno_fild12",
    		"alde_tt02",
    		"turbo_n_1",
    		"turbo_n_4",
    		"turbo_n_8",
    		"turbo_n_16",
    		"turbo_e_4",
    		"turbo_e_8",
    		"turbo_e_16",
    		"turbo_room",
    		"airplane",
    		"airport",
    		"einbech",
    		"einbroch",
    		"ein_dun01",
    		"ein_dun02",
    		"ein_fild06",
    		"ein_fild07",
    		"ein_fild08",
    		"ein_fild09",
    		"ein_fild10",
    		"ein_in01",
    		"que_sign01",
    		"que_sign02",
    		"ein_fild03",
    		"ein_fild04",
    		"lhz_fild02",
    		"lhz_fild03",
    		"yuno_pre",
    		"lhz_fild01",
    		"lighthalzen",
    		"lhz_in01",
    		"lhz_in02",
    		"lhz_in03",
    		"lhz_que01",
    		"lhz_dun01",
    		"lhz_dun02",
    		"lhz_dun03",
    		"lhz_cube",
    		"juperos_01",
    		"juperos_02",
    		"jupe_area1",
    		"jupe_area2",
    		"jupe_core",
    		"jupe_ele",
    		"jupe_ele_r",
    		"jupe_gate",
    		"y_airport",
    		"lhz_airport",
    		"airplane_01",
    		"jupe_cave",
    		"quiz_02",
    		"hu_fild07",
    		"hu_fild05",
    		"hu_fild04",
    		"hu_fild01",
    		"yuno_fild06",
    		"job_soul",
    		"job_star",
    		"que_job01",
    		"que_job02",
    		"que_job03",
    		"abyss_01",
    		"abyss_02",
    		"abyss_03",
    		"thana_step",
    		"thana_boss",
    		"tha_scene01",
    		"tha_t01",
    		"tha_t02",
    		"tha_t03",
    		"tha_t04",
    		"tha_t07",
    		"tha_t05",
    		"tha_t06",
    		"tha_t08",
    		"tha_t09",
    		"tha_t10",
    		"tha_t11",
    		"tha_t12",
    		"auction_01",
    		"auction_02",
    		"hugel",
    		"hu_in01",
    		"que_bingo",
    		"que_hugel",
    		"p_track01",
    		"p_track02",
    		"odin_tem01",
    		"odin_tem02",
    		"odin_tem03",
    		"hu_fild02",
    		"hu_fild03",
    		"hu_fild06",
    		"ein_fild01",
    		"ein_fild02",
    		"ein_fild05",
    		"yuno_fild10",
    		"kh_kiehl02",
    		"kh_kiehl01",
    		"kh_dun02",
    		"kh_dun01",
    		"kh_mansion",
    		"kh_rossi",
    		"kh_school",
    		"kh_vila",
    		"force_map1",
    		"force_map2",
    		"force_map3",
    		"job_hunter",
    		"job_knight",
    		"job_priest",
    		"job_wizard",
    		"ve_in02",
    		"rachel",
    		"ra_in01",
    		"ra_fild01",
    		"ra_fild02",
    		"ra_fild03",
    		"ra_fild04",
    		"ra_fild05",
    		"ra_fild06",
    		"ra_fild07",
    		"ra_fild08",
    		"ra_fild09",
    		"ra_fild10",
    		"ra_fild11",
    		"ra_fild12",
    		"ra_fild13",
    		"ra_san01",
    		"ra_san02",
    		"ra_san03",
    		"ra_san04",
    		"ra_san05",
    		"ra_temin",
    		"ra_temple",
    		"ra_temsky",
    		"que_rachel",
    		"ice_dun01",
    		"ice_dun02",
    		"ice_dun03",
    		"ice_dun04",
    		"que_thor",
    		"thor_camp",
    		"thor_v01",
    		"thor_v02",
    		"thor_v03",
    		"veins",
    		"ve_in",
    		"ve_fild01",
    		"ve_fild02",
    		"ve_fild03",
    		"ve_fild04",
    		"ve_fild05",
    		"ve_fild06",
    		"ve_fild07",
    		"poring_c01",
    		"poring_c02",
    		"que_ng",
    		"nameless_i",
    		"nameless_n",
    		"nameless_in",
    		"abbey01",
    		"abbey02",
    		"abbey03",
    		"poring_w01",
    		"poring_w02",
    		"que_san04",
    		"moscovia",
    		"mosk_in",
    		"mosk_ship",
    		"mosk_fild01",
    		"mosk_fild02",
    		"mosk_dun01",
    		"mosk_dun02",
    		"mosk_dun03",
    		"mosk_que",
    		"force_4-1",
    		"force_5-1",
    		"06guild_r",
    		"06guild_01",
    		"06guild_02",
    		"06guild_03",
    		"06guild_04",
    		"06guild_05",
    		"06guild_06",
    		"06guild_07",
    		"06guild_08",
    		"z_agit",
    		"que_temsky",
    		"itemmall",
    		"bossnia_01",
    		"bossnia_02",
    		"bossnia_03",
    		"bossnia_04",
    		"schg_cas01",
    		"schg_cas02",
    		"schg_cas03",
    		"schg_cas04",
    		"schg_cas05",
    		"sch_gld",
    		"cave",
    		"moc_fild20",
    		"moc_fild21",
    		"moc_fild22",
    		"que_ba",
    		"que_moc_16",
    		"que_moon",
    		"arug_cas01",
    		"arug_cas02",
    		"arug_cas03",
    		"arug_cas04",
    		"arug_cas05",
    		"aru_gld",
    		"bat_room",
    		"bat_a01",
    		"bat_a02",
    		"bat_b01",
    		"bat_b02",
    		"que_qsch01",
    		"que_qsch02",
    		"que_qsch03",
    		"que_qsch04",
    		"que_qsch05",
    		"que_qaru01",
    		"que_qaru02",
    		"que_qaru03",
    		"que_qaru04",
    		"que_qaru05",
    		"1@cata",
    		"2@cata",
    		"e_tower",
    		"1@tower",
    		"2@tower",
    		"3@tower",
    		"4@tower",
    		"5@tower",
    		"6@tower",
    		"mid_camp",
    		"mid_campin",
    		"man_fild01",
    		"man_fild03",
    		"spl_fild02",
    		"spl_fild03",
    		"moc_fild22b",
    		"que_dan01",
    		"que_dan02",
    		"schg_que01",
    		"schg_dun01",
    		"arug_que01",
    		"arug_dun01",
    		"1@orcs",
    		"2@orcs",
    		"1@nyd",
    		"2@nyd",
    		"nyd_dun01",
    		"nyd_dun02",
    		"manuk",
    		"man_fild02",
    		"man_in01",
    		"splendide",
    		"spl_fild01",
    		"spl_in01",
    		"spl_in02",
    		"bat_c01",
    		"bat_c02",
    		"bat_c03",
    		"moc_para01",
    		"job3_arch01",
    		"job3_arch02",
    		"job3_arch03",
    		"job3_guil01",
    		"job3_guil02",
    		"job3_guil03",
    		"job3_rang01",
    		"job3_rang02",
    		"job3_rune01",
    		"job3_rune02",
    		"job3_rune03",
    		"job3_war01",
    		"job3_war02",
    		"jupe_core2",
    		"brasilis",
    		"bra_in01",
    		"bra_fild01",
    		"bra_dun01",
    		"bra_dun02",
    		"dicastes01",
    		"dicastes02",
    		"dic_in01",
    		"dic_fild01",
    		"dic_fild02",
    		"dic_dun01",
    		"dic_dun02",
    		"job3_gen01",
    		"s_atelier",
    		"job3_sha01",
    		"//evt_zombie",
    		"//evt_coke",
    		"//ac_sl_area",
    		"//ac_cl_hall",
    		"//ac_cl_room",
    		"//jp_s_dun11",
    		"mora",
    		"bif_fild01",
    		"bif_fild02",
    		"1@mist",
    		"dewata",
    		"dew_in01",
    		"dew_fild01",
    		"dew_dun01",
    		"dew_dun02",
    		"que_house_s",
    		"malangdo",
    		"mal_in01",
    		"mal_in02",
    		"mal_dun01",
    		"1@pump",
    		"2@pump",
    		"1@cash",
    		"iz_dun05",
    		"evt_mobroom",
    		"alde_tt03",
    		"dic_dun03",
    		"//mjolnir_04_1",
    		"1@lhz",
    		"lhz_dun04",
    		"que_lhz",
    		"evt_swar_b",
    		"evt_swar_r",
    		"evt_swar_s",
    		"evt_swar_t",
    		"gld2_ald",
    		"gld2_gef",
    		"gld2_pay",
    		"gld2_prt",
    		"gld_dun01_2",
    		"gld_dun02_2",
    		"gld_dun03_2",
    		"gld_dun04_2",
    		"malaya",
    		"job_ko",
    		"ma_scene01",
    		"1@ma_b",
    		"1@ma_c",
    		"1@ma_h",
    		"ma_in01",
    		"ma_dun01",
    		"ma_fild01",
    		"ma_fild02",
    		"ma_zif01",
    		"ma_zif02",
    		"ma_zif03",
    		"ma_zif04",
    		"ma_zif05",
    		"ma_zif06",
    		"ma_zif07",
    		"ma_zif08",
    		"ma_zif09",
    		"new_event",
    		"eclage",
    		"ecl_fild01",
    		"ecl_tdun01",
    		"ecl_tdun02",
    		"ecl_tdun03",
    		"ecl_tdun04",
    		"que_avan01",
    		"1@ecl",
    		"ecl_in01",
    		"ecl_in02",
    		"ecl_in03",
    		"ecl_in04",
    		"ecl_hub01",
    		"moc_prydn1",
    		"moc_prydn2",
    		"iz_ac01",
    		"iz_ac02",
    		"treasure_n1",
    		"treasure_n2",
    		"iz_int",
    		"iz_ng01",
    		"iz_int01",
    		"iz_int02",
    		"iz_int03",
    		"iz_int04",
    		"iz_ac01_a",
    		"iz_ac02_a",
    		"iz_ac01_b",
    		"iz_ac02_b",
    		"iz_ac01_c",
    		"iz_ac02_c",
    		"iz_ac01_d",
    		"iz_ac02_d",
    		"te_prtcas01",
    		"te_prtcas02",
    		"te_prtcas03",
    		"te_prtcas04",
    		"te_prtcas05",
    		"te_aldecas1",
    		"te_aldecas2",
    		"te_aldecas3",
    		"te_aldecas4",
    		"te_aldecas5",
    		"prt_fild08a",
    		"prt_fild08b",
    		"prt_fild08c",
    		"prt_fild08d",
    		"izlude_a",
    		"izlude_b",
    		"izlude_c",
    		"izlude_d",
    		"te_prt_gld",
    		"te_alde_gld",
    		"teg_dun01",
    		"teg_dun02",
    		"1@gl_k",
    		"2@gl_k",
    		"gl_chyard_",
    		"gl_cas02_",
    		"evt_bomb",
    		"1@def01",
    		"1@def02",
    		"1@def03",
    		"1@gef",
    		"1@face",
    		"1@sara",
    		"1@gef_in",
    		"dali",
    		"dali02",
    		"1@ge_st",
    		"1@spa",
    		"1@tnm1",
    		"1@tnm2",
    		"1@tnm3",
    		"1@dth1",
    		"1@dth2",
    		"1@dth3",
    		"1@eom",
    		"1@jtb",
    		"1@rev",
    		"1@xm_d",
    		"moro_cav",
    		"moro_vol",
    		"silk_lair",
    		"c_tower2_",
    		"c_tower3_",
    		"1@mcd",
    		"ver_eju",
    		"ver_tunn",
    		"verus03",
    		"verus04",
    		"job_gun",
    		"1@air1",
    		"1@air2",
    		"1@glast",
    		"lhz_dun_n",
    		"lhz_d_n2",
    		"1@gl_kh",
    		"2@gl_kh",
    		"1@lab",
    		"1@uns",
    		"un_bk_q",
    		"un_bunker",
    		"un_myst",
    		"verus01",
    		"verus02",
    		"paramk",
    		"1@infi",
    		"1@ffp",
    		"1@mir",
    		"2@mir",
    		"1@sthb",
    		"1@sthc",
    		"1@sthd",
    		"prt_cas",
    		"prt_cas_q",
    		"prt_prison",
    		"prt_lib",
    		"prt_lib_q",
    		"prt_q",
    		"prt_pri00",
    		"int_land",
    		"int_land01",
    		"int_land02",
    		"int_land03",
    		"int_land04",
    		"lasagna",
    		"lasa_fild01",
    		"lasa_fild02",
    		"lasa_dun01",
    		"lasa_dun02",
    		"lasa_dun03",
    		"conch_in",
    		"lasa_in01",
    		"lasa_dun_q",
    		"1@pop1",
    		"1@pop2",
    		"1@pop3",
    		"1@slw",
    		"1@swat",
    		"que_swat",
    		"slabw01",
    		"rebel_in",
    		"1@md_gef",
    		"1@md_pay",
    		"har_in01",
    		"harboro1",
    		"harboro2",
    		"rockmi1",
    		"rockmi2",
    		"rockrdg1",
    		"rockrdg2",
    		"1@gl_k2",
    		"2@gl_k2",
    		"1@xm_d2",
    		"pay_d03_i",
    		"gef_d01_i",
    		"ice_d03_i",
    		"1@tre",
    		"1@begi",
    		"tur_d03_i",
    		"tur_d04_i",
    		"1@crd",
    		"ordeal_a00",
    		"ordeal_a02",
    		"pprontera",
    		"niflxmas",
    		"sch_lab",
    		"nakhyang",
    		"lasa_sea",
    		"1@drdo",
    		"x_lhz",
    		"x_prt",
    		"x_ra",
    		"prt_evt_in",
    		"vis_h01",
    		"vis_h02",
    		"vis_h03",
    		"vis_h04",
    		"ein_d02_i",
    		"com_d02_i",
    		"1@soul",
    		"star_frst",
    		"star_in",
    		"2009rwc_01",
    		"2009rwc_02",
    		"2009rwc_03",
    		"2009rwc_04",
    		"2009rwc_05",
    		"2009rwc_06",
    		"2009rwc_07",
    		"2009rwc_08",
    		"2009rwc_f01",
    		"2012rwc_01",
    		"2012rwc_02",
    		"2012rwc_03",
    		"2012rwc_04",
    		"2012rwc_05",
    		"2012rwc_06",
    		"2012rwc_07",
    		"2012rwc_08";
    
    	.map_size = getarraysize(.maps$);
    
    	freeloop true;
    	for(;.@i < .map_size;.@i++) {
    		if(getmapusers(.maps$[.@i]) >= 0) {
    			if(!getmapflag(.maps$[.@i],mf_nowarpto) && !getmapflag(.maps$[.@i],mf_nowarp) && !getmapflag(.maps$[.@i],mf_nopenalty) && !getmapflag(.maps$[.@i],mf_noskill))
    				continue;
    		}
    		deletearray .maps$[.@i],1;
    		.@i--;
    		.map_size--;
    	}
    	freeloop false;
    
    OnSpawn:
    
    	copyarray .@maps$,.maps$,.map_size;
    	for(.@i = 0;.@i < 7;.@i++) {
    		.@r = rand(.map_size - .@i);
    		.@map$ = .@maps$[.@r];
    		getfreecell .@map$,.@x,.@y;
    		//makeitem .item_id + .@i,.@map$,.@x,.@y;
    		makeitem .item_id,1,.@map$,.@x,.@y;
    		debugmes "Dragon Ball "+(.@i + 1)+" location: "+.@map$+" "+.@x+" "+.@y+".";
    	}
    	end;
    
    }
    
    prontera,100,100,4	script	Dragon Ball	100,{
    
    	.@item_id = getvariableofnpc(.item_id,"DB_Spawn");
    	/*
    	for(.@i = 0;.@i < 7;.@i++) {
    		if(countitem(.@item_id + .@i))
    			.@n++;
    	}
    	if(.@n >= 7) {
    	*/
    	if(countitem(.@item_id) >= 7) {
    		mes "You have all the balls!";
    		mes "Select your wish!";
    		switch(select("Kill everyone","Resurrect everyone","Be millionaire")) {
    		case 1:
    			freeloop true;
    			.@oid = getcharid(3);
    			.@n = getunits(BL_PC,.@player);
    			for(.@i = 0;.@i < .@n;.@i++) {
    				if(.@player[.@n] != .@oid)
    					unitkill .@player[.@n];
    			}
    			freeloop false;
    			break;
    		case 2:
    			recovery 4,4;
    			break;
    		case 3:
    			Zeny+= 700000000;
    			break;
    		}
    		donpcevent "DB_Spawn::OnSpawn";
    	} else {
    		mes "Dragon Balls are all around the world!";
    	}
    	close;
    
    }

    Of course it can be expanded/modified a lot.

    • Upvote 1
  10. function	script	random_walk	{
    
    	if(@walking) {
    		@walking = false;
    	} else {
    		@walking = true;
    		while(@walking) {
    			getmapxy .@m$,.@x,.@y,UNITTYPE_PC;
    			getfreecell .@m$,.@to_x,.@to_y,.@x,.@y,10,10,3;
    			unitwalk getcharid(3),.@to_x,.@to_y;
    			while(.@x != .@to_x || .@y != .@to_y)
    				sleep2 500;
    		}
    	}
    	return;
    
    }

    Not tested.

    Usage: callfunc "random_walk";

    If you want to end the function just call it again.

  11. This is the same shir0 posted but with the fail chance returning everything removed.

    //===== rAthena Script =======================================
    //= Card Removal NPC
    //===== By: ==================================================
    //= TyrNemesis^
    //===== Current Version: =====================================
    //= 1.2a
    //===== Compatible With: =====================================
    //= rAthena Project
    //===== Description: =========================================
    //= Removes cards from equipped items.
    //===== Additional Comments: =================================
    //= 1.0 First version. [TyrNemesis^]
    //= 1.2 Optimized and fixed getequipname menu. [Kisuka]
    //= 1.2a Added 'disable_items' command. [Euphy]
    //============================================================
    
    prt_in,28,73,4	script	Wise Old Woman#eAcustom	1_F_ORIENT_04,{
    
    	disable_items;
    	mes "[Wise Old Woman]";
    	mes "Good day, young one. I have the power to remove cards that you have compounded onto your equipment. Does this idea please you?";
    	next;
    	switch(select("Yes, it does.:No thanks.")) {
    	case 1:
    		mes "[Wise Old Woman]";
    		mes "Very well. Which item shall I examine for you?";
    		next;
    		setarray .@indices[1], EQI_HEAD_TOP, EQI_ARMOR, EQI_HAND_L, EQI_HAND_R, EQI_GARMENT, EQI_SHOES, EQI_ACC_L, EQI_ACC_R, EQI_HEAD_MID, EQI_HEAD_LOW;
    		for( set .@i,1; .@i <= 10; set .@i,.@i+1 ) {
    			if( getequipisequiped(.@indices[.@i]) )
    				set .@menu$, .@menu$ + F_getpositionname(.@indices[.@i]) + "-[" + getequipname(.@indices[.@i]) + "]";
    			set .@menu$, .@menu$ + ":";
    		}
    		set .@part, .@indices[ select(.@menu$) ];
    		if(!getequipisequiped(.@part)) {
    			mes "[Wise Old Woman]";
    			mes "Young one... Your not wearing anything there that I can remove cards from.";
    			close;
    		}
    		set .@cardcount,getequipcardcnt(.@part);
    		if(.@cardcount == 0) {
    			mes "[Wise Old Woman]";
    			mes "Young one... There are no cards compounded on this item. I can do nothing with it, I'm afraid.";
    			close;
    		}
    		if (!checkweight(1202,.@cardcount+1)) { 
    			mes "^3355FFJust a minute!";
    			mes "I can't offer any of my";
    			mes "services to you because";
    			mes "you're carrying too much";
    			mes "stuff. Put your extra items in";
    			mes "Kafra Storage and come again~";
    			close;
    		}
    		mes "[Wise Old Woman]";
    		mes "This item has " + F_InsertPlural(.@cardcount, "card") + " compounded on it.";
    		next;
    		if(select("Very well. Do it.:Never mind.") == 2) {
    			mes "[Wise Old Woman]";
    			mes "Very well. Return at once if you seek my services.";
    			close;
    		}
    		mes "[Wise Old Woman]";
    		mes "Very well. I shall begin.";
    		next;
    		successremovecards .@part;
    		mes "[Wise Old Woman]";
    		mes "The process was a success. Here are your cards and your item. Farewell.";
    		close;
    	case 2:
    		mes "[Wise Old Woman]";
    		mes "Very well. Return at once if you seek my services.";
    		close;
    	}
    }

     

  12. Seems like there were some spaces.

    //===== rAthena Script =======================================
    //= leveling quests spawn script
    //===== Description: =========================================
    //= spawns monsters for leveling quests area.
    //===== Additional Comments: =================================
    //= 0.1
    //============================================================
    
    //120-140
    //vis_h01,0,0 monster Antler Scaraba  2085,50
    
    vis_h01,0,0	monster	Centipede	1987,50
    vis_h01,0,0	monster	Skeggiold	1755,50
    vis_h01,0,0	monster	Antler Scaraba	2085,50
    
    //141-150
    //1@md_pay,0,0	monster	Antler Scaraba	2085,50
    
    1@md_pay,0,0	monster Angra Mantis	2133,50
    1@md_pay,0,0	monster	Pom Spider	2132,50
    1@md_pay,0,0	monster	Little Fatum	2136,50
    
    //151-160
    //1@slw,0,0 monster Sky Fortress Key Keeper	3478,40
    
    1@slw,0,0	monster Sky Fortress Key Keeper	3478,40
    1@slw,0,0	monster Immortal Legionnaire	3477,40
    1@slw,0,0	monster Immortal Assaulter	3479,40
    
    //160-175
    //x_prt,0,0 monster Antler Scaraba	2085,40
    
    x_prt,0,0	monster	Arc Elder	2920,40
    x_prt,0,0	monster	Owl Viscount	2921,40
    x_prt,0,0	monster	Big Bell	2917,50

    Also I changed the delay because of this:

    Delay1 and delay2 control monster respawn delays - the first one is the fixed
    base respawn time, and the second is random variance on top of the base time.
    Both values are given in milliseconds (1000 = 1 second).
    Note that the server also enforces a minimum respawn delay of 5 seconds.

     

    • Upvote 1
  13. Use Server Database Editor.

    Last version is always this link: http://www.mediafire.com/download/p0zhcc8ipa6cjt3

    From the post (https://rathena.org/board/topic/98173-server-database-editor/):

    Quote

    Many conversions between rAthena and Hercules are possible. Converting items can be done simply by right-clicking on the elements and selecting "Copy entries to clipboard (ServerType)".

     

  14. There're some errors.

    set .map$, "quiz_02"; It should be a string variable. All the "unexpected"errors are because of that.

    OnAgitEnd doesn't have a player attached, it just gets executed as WoE ends, so obviously dispbottom won't work.

    quiz_02,304,263,6	script	WOE Reward	714,{
    	mes "WOE";
    	mes "You did a great job!";
        	mes "Here is your reward.";
        	getitem 13550,20;
    	getitem 13989,50;
    	getitem 14004,2;
    	getitem 675,1;    //add your rewards here
    	set woereward,0;
    	next;
    	warp "SavePoint",0,0;
        	end;
    
    OnInit:
    	waitingroom "WOE Reward",0;
    	end;
    
    }
    
    -	script	woe_reward	-1,{
    OnInit:
            set .map$, "quiz_02";
            set .x, 304;
            set .y, 255;
    	setarray .castles$[0],
    		"prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05",
    		"payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05",
    		"gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05",
    		"aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05",
    		"arug_cas01","arug_cas02","arug_cas03","arug_cas04","arug_cas05",
    		"schg_cas01","schg_cas02","schg_cas03","schg_cas04","schg_cas05";
            end;
    
    
    
    OnMapLoadEvent:
    	if ((agitcheck() || agitcheck2()) && inarray(.castles$,strcharinfo(3))) {
    		set woereward,1;
    		end;
    	}
    	end;
    
    OnAgitEnd2:
    
    	set .@i,20;
    
    OnAgitEnd:
            set .@size,((.@i == 0)? 19 : getarraysize(.castles$));
            sleep 5000;    // wait 5 seconds after woe before warping the guild
    	for (;.@i < .@size; set .@i, .@i+1){
    		set .@guild,getcastledata(.castles$[.@i],CD_GUILD_ID);
    		if(.@guild) {
    			set .@gm,getguildmasterid(.@guild);
    			set .@j,inarray(.@guild_winners,.@guild);
    			if(.@j == -1) {
    				set .@guild_winners[.@k++],.@guild;
               		warpguild .map$,.x,.y,.@guild;
    				dispbottom "[ War of Emperium ] : Congrats! Your guild wins!",.@gm;
                }
    		}
         }
    	.@n = getunits(BL_PC,.@player);
    	freeloop true;
    	for(set .@i,0; .@i < .@n; set .@i, .@i+1){
    		attachrid .@player[.@i];
    		.@guild = getcharid(2);
    		if(.@guild) {
    			if(inarray(.@guild_winners,.@guild) == -1 && woereward) {
    				dispbottom "[ War of Emperium ] : Its okay, you can try harder on next WoE!";
    				getitem 607,1;
    				set woereward,0;
    			}
    		}
    	}
    	freeloop false;
    	end;
    }

     

  15. *instance_mapname("<map name>"{,<instance id>})
    
    Returns the unique name of the instanced map. If no instance ID is specified,
    the instance the script is attached to is used. If the script is not attached to
    an instance, the instance of the currently attached player is used (if it is a
    character, party, guild or clan mode). If it is not owned by anyone, no player needs
    to be attached. If that fails, the command returns an empty string instead.

     

  16. I'm not really good with source but I tried...

    BUILDIN_FUNC(mes2)
    {
    	TBL_PC* sd;
    	if( !script_rid2sd(sd) )
    		return SCRIPT_CMD_SUCCESS;
    
    	int color_n = script_getnum(st,2);
    	char *message;
    
    	size_t len = 0;
    
    	unsigned long color = color_table[color_n];
    
    	char color_string = "^";
    	char color_code = (char*)color;
    
    	message = (char*)aMalloc(2);
    
    	len = strlen(color_code);
    	memcpy(&message, color_string, 1);
    	memcpy(&message, color_code, len);
    	temp = script_getstr(st, 3);
    	len = strlen(temp);
    	memcpy(&message, temp, len);
    
    	clif_scriptmes(sd, st->oid, message));
    
    	st->mes_active = 1; // Invoking character has a NPC dialog box open.
    	return SCRIPT_CMD_SUCCESS;
    }
    
    BUILDIN_DEF(mes2,"is"),

    EDIT: Forgot to say this uses the channel system colors... if it works.

  17. function	script	mes2	{
    
    	setarray .@color$[0],"red","ff0000","green","00ff00","blue","0000ff";
    
    	.@str$ = strtolower(getarg(0));
    	.@mes$ = getarg(1);
    	.@color = inarray(.@color$,.@str$);
    	mes ((.@color != -1)? "^"+.@color$[.@i + 1] : "") + .@mes$;
    	return;
    
    }
    
    	mes2 "red","Hello there.";
    	mes2 "green","What's up?";
    	close;

    Add colors in .@color$

    • Love 1
  18. 	/**
    	 * Channel config for map channel
    	 * For the structure, see the 'channels' above
    	 **/
    	map: {
    		name: "#map"
    		alias: "[Map]"
    		color: "Yellow"
    		type: "CHAN_TYPE_MAP" // DO NOT CHANGE THIS VALUE
    		delay: 1000
    		autojoin: false
    		leave: true
    		chat: true
    	}

    conf/channels.conf

    autojoin: true

     

    Now, if you want to make it by script:

    -	script	Channel_Town	-1,{
    
    OnInit:
    
    	setarray .@maps$[0],	"prontera","alberta","aldebaran","amatsu","ayothaya","brasilis","comodo","dewata",
    				"ecl_in01","einbech","einbroch","dicastes01","geffen","gonryun","hugel","izlude",
    				"jawaii","lasagna","lighthalzen","louyang","xmas","malangdo","malaya","manuk",
    				"mid_camp","mora","morocc","moscovia","nameless_n","niflheim","payon","rachel",
    				"splendide","thor_camp","umbala","veins","yuno";
    
    	for(.@size = getarraysize(.@maps$);.@i < .@size;.@i++)
    		setmapflag .@maps$[.@i],mf_loadevent;
    
    	end;
    
    OnPCLoadMapEvent:
    
    	if(getmapflag(strcharinfo(3),mf_town))
    		atcommand "@join #map";
    	end;
    
    }

     

  19. Sorry. I don't know why I put the divisor first.

    	set .@exp_gained,.@exp_gained/100;
    	function get_decimal;
    	dispbottom "Gained "+F_InsertComma(.@exp_gained+)" mastery points ("+get_decimal(.@exp_gained*100,.FishingLvl[FishingLvl])+"%).";
    	FishingExp+= .@exp_gained;
    	dispbottom "Total: "+F_InsertComma(FishingExp)+"/"+F_InsertComma(.FishingLvl[FishingLvl])+" ("+get_decimal(min(FishingExp,.FishingLvl[FishingLvl])*100,.FishingLvl[FishingLvl])+"%).";
    	if(.FishingLvl[FishingLvl] <= FishingExp){
    		set FishingLvl, FishingLvl + 1;
    		dispbottom "[Level Up] Congrats! Your Fishing level is now: "+FishingLvl;
    		set FishingExp,0;
    		if(FishingLvl == .MaxFishingLvl) {
    			dispbottom "Your Fishing Mastery is at maximum level.";
    		}
    	}
    	end;

    And yeah, you'll get natural numbers. In fact the function returns a string.

    • Love 1
×
×
  • Create New...