Jump to content

WhatFT

Members
  • Posts

    511
  • Joined

  • Last visited

Everything posted by WhatFT

  1. I also wondering about thisthat set #Daily, 1; should be set #daily, #daily +1; means the player can only enter the gold room for a maximum of 10 times per account in that account's whole life (?? lol) I suggest should set a better variable like gettimetick(2) to limit it everyday though use gettimetick(2)http://rathena.org/wiki/Timers_%28Scripting%29#Use_Number_3:_Deny_Usage if ( getmapusers( "poring_c01" ) >= 10 ) <deny them>; http://www.eathena.ws/board/index.php?s=&showtopic=272589&view=findpost&p=1493661for Disguise Event NPC, check your map-server.exe for error I don't know why the gettimetick is not working.. The delay is not working can you check my script? prontera,162,185,5 script Coin Room 491,{ if( select("Enter Coin Room:Cancel") == 1 ) if( #Daily == 1000 ) mes "You already reached the maximum times of entering the Coin Room. Max : 1000"; else{ set #Daily, #Daily +1; addtimer 33000,strnpcinfo(0)+"::OnTimeLimit"; announce "[Coin Room]:" + strcharinfo(0) + " has entered the Coin Room.",0; warp "poring_c01",100,100; message strcharinfo(0),"You have 30 seconds to loot."; } close; if(CoinDelay > gettimetick(2)) { mes "Please enter after a few seconds."; close; } OnTimeLimit: message strcharinfo(0),"Time's Up."; sleep2 4000; message strcharinfo(0),"3"; sleep2 3000; message strcharinfo(0),"2"; sleep2 2000; message strcharinfo(0),"1"; sleep2 1000; announce "[Coin Room]: " + strcharinfo(0) + "'s Time Limit is over!",0; warp "SavePoint",0,0; set CoinDelay, gettimetick(2) + 30; dispbottom "Coin Room : You can go back after 30 seconds."; end; OnInit: while( 1 ){ if( getmapusers("poring_c01") ) makeitem 673,1,"poring_c01",rand(87,119),rand(86,115); sleep 150; } end; }
  2. Can anyone help me add something to this script? Sir Emistry own this script.. 1. Make every player who entered have a 90 seconds delay before entering again. 2. Maximum of [10 players] only are allowed to enter. 3. Show how many players are inside, waitingroom (0/10 players) Question : What does if( #Daily == 10 ) and set #Daily,1; mean? I wanted to remove that but I always get error. prontera,162,185,5 script Coin Room 491,{ if( select("Enter Coin Room:Cancel") == 1 ) if( #Daily == 10 ) mes "Take a rest and come back later."; else{ set #Daily,1; addtimer 33000,strnpcinfo(0)+"::OnTimeLimit"; announce "[Coin Room]:" + strcharinfo(0) + " has entered the Coin Room.",0; warp "poring_c01",100,100; message strcharinfo(0),"You have 30 seconds to loot."; } close; OnTimeLimit: message strcharinfo(0),"Time's Up."; sleep2 4000; message strcharinfo(0),"3"; sleep2 3000; message strcharinfo(0),"2"; sleep2 2000; message strcharinfo(0),"1"; sleep2 1000; announce "[Coin Room]: " + strcharinfo(0) + "'s Time Limit is over!",0; warp "SavePoint",0,0; end; OnInit: while( 1 ){ if( getmapusers("poring_c01") ) makeitem 673,1,"poring_c01",rand(87,119),rand(86,115); sleep 300; } end; } Problem with Disguise Event NPC, the script is not clickable/working.. //===== rAthena Script ======================================= //= Disguise Event //===== By: ================================================== //= GmOcean //===== Current Version: ===================================== //= 5.1 //===== Compatible With: ===================================== //= rAthena SVN //===== Additional Comments: ================================= //= Note: This script requires PCRE to run properly. //= 5.0 Last update by GmOcean. //= 5.1 Cleaned and standardized, mostly. [Euphy] //============================================================ prontera,130,172,5 script Disguise Event 795,{ // Currently set to run every two hours. // To change times, edit the OnClock labels below. set .@GMLevel,99; // GM level required to access NPC. set .@n$,"[^0000FFDisguise NPC^000000]"; if (getgmlevel()>=.@GMLevel) { mes .@n$; mes "Select an option."; next; switch(select("Turn ON/OFF Event:Event Settings")) { case 1: mes .@n$; if (.EventON) { mes "The Event is currently: [^0000FFON^000000]"; mes "Would you like to turn it OFF?"; } else { mes "The Event is currently: [^FF0000OFF^000000]"; mes "Would you like to turn it ON?"; } if(select("Yes:No")==2) close; if (.EventON) { set .EventON,0; set .Timer,0; setnpctimer 0; stopnpctimer; announce "A GM has decided to turn the Disguise Event off. As a result no further prizes will be given.",bc_map | bc_blue; deletepset 1; setnpcdisplay "Disguise Event",795; close; } set .EventON,1; set .Timer,1; setnpctimer 0; initnpctimer; set .ResetCounter,.ResetCounter+1; announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue; announce "The Event is being held in Prontera 189 179.",bc_all | bc_blue; close; case 2: mes .@n$; mes "Pick a setting to modify."; next; switch(select("Monster Display:Number of Rounds:Prize Settings")) { case 1: setarray .@r$[0],"Disguise as all monsters.","Disguise as MVPs only."; mes .@n$; mes "Choose a disguise rule."; next; set .Rule, select(implode(.@r$,":")); mes .@n$; mes "The Disguise Rule has been set:"; mes " > ^0055FF"+.@r$[.Rule-1]+"^000000"; close; case 2: mes .@n$; mes "Input the number of rounds you want the event to last."; mes "Current number: [^0000FF"+.Rounds+"^000000]"; next; input .@Rounds; set .Rounds,.@Rounds; mes .@n$; mes "The number of rounds has been changed to "+.Rounds+"."; close; case 3: mes .@n$; mes "Input the Item ID of the prize given each round."; mes "Current item: [^0000FF"+getitemname(.Prize)+"^000000] (ID #"+.Prize+")"; next; input .@Prize; mes .@n$; if (getitemname(.@Prize)=="" || getitemname(.@Prize)=="null") { mes "That item does not exist. Please try again."; close; } set .Prize,.@Prize; mes "Input the amount to be given."; next; input .@amount; mes .@n$; if (.@amount<=0 || .@amount>=10000) { mes "That amount is invalid. Using default ammount of 1."; set .@amount,1; next; mes .@n$; } set .PrizeAmt,.@amount; mes "The Prize has been changed successfully."; mes "Prize: "+.PrizeAmt+"x [^0000FF"+getitemname(.Prize)+"^000000]"; close; } } } if (.EventON) end; mes .@n$; mes "Welcome."; mes "How may I be of assistance?"; if(select("Information:Nothing, just passing through.")==2) close; next; mes .@n$; mes "This event is quite simple."; mes "At the start of the event, I will"; mes "disguise myself as a random"; mes "monster. You have to shout"; mes "that monter's name out loud."; next; mes "If you are correct, you will receive"; mes "a prize. If not, keep trying!"; mes "That's all that there is to this event."; close; OnInit: set .EventON,0; set .Wait,0; set .Winner,0; set .ResetCounter,0; set .Rounds,10; set .Prize,12248; set .PrizeAmt,2; set .Rule,1; setarray .MVP[0],1038,1039,1046,1059,1086,1087,1112,1115,1147,1150,1157,1159,1190,1251,1252,1272,1312,1373, 1389,1399,1418,1492,1502,1511,1583,1623,1630,1646,1647,1648,1649,1650,1651,1658,1685,1688, 1708,1719,1734,1751,1768,1779,1785,1802,1832,1871,1874,1885,1917,1980,2022,2068,2087,2131, 2156,2165; set .BlackList$, "1003,1006,1017,1021,1022,1027,1043,1075,1136,1137,1168," + "1171,1172,1173,1181,1187,1210,1217,1218,1222,1223,1224,1225,1226,1227,1228," + "1233,1284,1407,1411,1414,1495,1501,1900,1996,2000,2001,2002,2003,2004," + "2005,2006,2007,2011,2012,2025,2028,2029,2030,2031,2032,2033,2034,2035," + "2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049," + "2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063," + "2064,2065,2066,2067,2075,2076,2077,2078,2079,2080,2081,2083,2084,2085," + "2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099," + "2100,2101,2012,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113," + "2114,2115,2116,2117,2118,2119,2120,2121,2123,2124,2125,1496,"; end; OnClock0000: OnClock0100: OnClock0200: OnClock0300: OnClock0400: OnClock0500: OnClock0600: OnClock0700: OnClock0800: OnClock0900: OnClock1000: OnClock1100: OnClock1200: OnClock1300: OnClock1400: OnClock1500: OnClock1600: OnClock1700: OnClock1800: OnClock1900: OnClock2000: OnClock2100: OnClock2200: OnClock2300: set .ResetCounter,.ResetCounter+1; set .EventON,1; set .Timer,1; set .Wait,1; announce "The Disguise Event will begin in 3 minutes.",bc_all | bc_blue; announce "The Event is being held in Prontera Prontera 189 179.",bc_all | bc_blue; setnpctimer 0; initnpctimer; end; OnTimer10000: if (.Timer || .Change) end; set .Wait,0; goto iDisguise; end; OnTimer30000: if (.Timer) end; set .Change,0; setnpcdisplay "Disguise Event",795; npctalk "You took too long to guess what I was. Please wait 10 seconds while I disguise again."; specialeffect 725; set $MonsterName$,""; deletepset 1; stopnpctimer; setnpctimer 0; initnpctimer; end; OnTimer60000: if (.Timer!=1) end; announce "The Disguise Event will begin in 2 minutes.",bc_all | bc_blue; announce "The Event is being held in Prontera 189 179.",bc_all | bc_blue; end; OnTimer120000: if (.Timer!=1) end; announce "The Disguise Event will begin 1 minute.",bc_all | bc_blue; announce "The Event is being held in Prontera 189 179.",bc_all | bc_blue; end; OnTimer180000: if (.Timer!=1) end; announce "The Disguise Event has begun!",bc_all | bc_blue; announce "The Event is being held in Prontera 189 179.",bc_all | bc_blue; set .Timer,0; stopnpctimer; setnpctimer 0; initnpctimer; iDisguise: if (.Rule==1) { set .Winner,0; set .Monster,1000+rand(1,995); if (compare(","+.BlackList$+"," , ","+.Monster+",")) goto iDisguise; if (.Monster==.LastMonster) goto iDisguise; set .LastMonster,.Monster; set $MonsterName$,getmonsterinfo(.Monster,0); } if (.Rule==2) { set .Winner,0; set .Monster,rand(49); set $MonsterName$,getmonsterinfo(.MVP[.Monster],0); } deletepset 1; defpattern 1,"([^:]+):.\\s*"+$MonsterName$+".*", "iCorrect"; activatepset 1; if (.Rule==1) setnpcdisplay "Disguise Event",.Monster; if (.Rule==2) setnpcdisplay "Disguise Event",.MVP[.Monster]; set .Change,1; setnpctimer 0; end; iCorrect: if (.Winner) { dispbottom "Someone has already won this round."; end; } set .Winner,1; set .RoundCount,.RoundCount+1; deletepset 1; activatepset 1; getitem .Prize,.PrizeAmt; announce strcharinfo(0)+" is correct! I was disguised as: "+$MonsterName$+"",bc_map | bc_blue; if (.RoundCount>=.Rounds) { setnpcdisplay "Disguise Event",795; set .RoundCount,0; set .Change,0; set .EventON,0; setnpctimer 0; stopnpctimer; npctalk "Thank you all for playing. That was the last round of the Disguise Event. Come play again later."; end; } setnpcdisplay "Disguise Event",795; set .Change,0; setnpctimer 0; end; }
  3. /* CREATE TABLE IF NOT EXISTS `rebirth_system` ( `account_id` int(11) unsigned NOT NULL default '0', `name` varchar(255) NOT NULL DEFAULT 'NULL', `num_rebirth` int(11) unsigned NOT NULL default '0', `last_ip` varchar(100) NOT NULL default '', PRIMARY KEY (`account_id`) ) ENGINE=MyISAM; */ prontera,150,170,5 script Spec 833,{ function checkItem; // check if player have all item required function colorItemrequired; // color the text. Red : not enough item, green otherwise function deleteItem; // delete all items required function displayItemneed; // display all items need at start function getItemReward; // give the items reward function weightreq; // check if your current weight is highter than weight high novice .@eac = eaclass(); if ( num_rebirth == .reset_max ) { mes "You can only rebirth x"+ .reset_max +"."; emotion e_gasp; close; } else if( NextJobExp || NextBaseExp || !( .@eac&EAJL_2 ) || !Upper ) { mes "You must be rebirth max level/max job level."; close; } mes "Items need :"; displayItemneed(); next; switch( select( "^777777~ Rebirth", "~ Informations", "~ Good bye^000000" ) ) { case 1: weightreq(); checkItem(); deleteItem(); break; case 2: mes "You can only rebirth ^ff0000x"+ .reset_max +"^000000. You already rebirth ^ff0000x"+ num_rebirth +"^000000."; mes "Each rebirth you get ^ff0000"+ .num_status +"^000000 status points and after ^ff0000"+ .change_reward +"^000000 rebirth, you get only some items."; close; case 3: mes "Bye."; close; } num_rebirth += 1; if ( Upper ) { // just in case the user change the setting... lastJob = roclass( .@eac&EAJ_UPPERMASK ); jobchange Job_Novice_High; } else jobchange Job_Novice; resetlvl 1; if ( num_rebirth < 30 ) StatusPoint = StatusPoint + .num_status * num_rebirth; else getItemReward(); query_sql "insert into `rebirth_system` values ( "+ getcharid(3) +", '"+ escape_sql( strcharinfo(0) ) +"', '"+ num_rebirth +"', '"+ getcharip() +"' ) on duplicate key update `num_rebirth` = `num_rebirth` +1"; announce "[ Rebirth system ] : "+ strcharinfo(0) +" rebirth for the "+ num_rebirth +" time !", 0; close; function checkItem { for ( ; .@i < .size_item; .@i += 2 ) if ( countitem( .item_req[.@i] ) < .item_req[ .@i+1 ] + num_rebirth ) { mes "You don't have enought "+ getitemname( .item_req[.@i] ) +". ^ff0000["+ countitem( .item_req[.@i] ) +"/"+ ( .item_req[ .@i+1 ] + num_rebirth ) +"]^000000"; close; } if ( num_rebirth >= .change_reward ) if ( .add_item_req[1] + num_rebirth - .change_reward > countitem( .add_item_req[0] ) ) { mes "You don't have enought "+ getitemname( .add_item_req[0] ) +". ^ff0000["+ countitem( .add_item_req[0] ) +"/"+ ( .add_item_req[1] + num_rebirth - .change_reward ) +"]^000000"; close; } return; } function colorItemrequired { if ( countitem( .item_req[ getarg(0) ] ) < .item_req[ getarg(0)+1 ] + num_rebirth ) return "^ff0000"; return "^00ff00"; } function deleteItem { for ( ; .@i < .size_item; .@i += 2 ) delitem .item_req[.@i], ( .item_req[ .@i+1 ] + num_rebirth ); if ( num_rebirth >= .change_reward ) delitem .add_item_req[0], ( .add_item_req[1] + num_rebirth - .change_reward ); return; } function displayItemneed { for ( ; .@i < .size_item; .@i += 2 ) mes colorItemrequired( .@i ) +" - x"+ ( .item_req[ .@i+1 ] + num_rebirth ) +" "+ getitemname( .item_req[.@i] ); if ( num_rebirth >= .change_reward ) { if ( .add_item_req[1] + num_rebirth - .change_reward > countitem( .add_item_req[0] ) ) .@color$ = "^ff0000"; else .@color$ = "^00ff00"; mes .@color$ +"- x"+ ( .add_item_req[1] + ( num_rebirth - .change_reward ) ) +" "+ getitemname( .add_item_req[0] ); } return; } function getItemReward { for ( ; .@i < .size_reward; .@i += 2 ) getitem .reward[.@i], .reward[ .@i+1 ]; return; } function weightreq { if ( Weight > 20000 ) { mes "You have too much items on you. Your weight will be too high after rebirth."; close; } return; } OnInit: .reset_max = 50; // how much reset max .change_reward = 30; // after 30 rebirth, change reward .num_status = 300; // + X number of status points // item required <item ID>, <number> setarray .item_req, 501, 5, 502, 2, 503, 3; .size_item = getarraysize( .item_req ); // additionnal items after rebirth >> .change_reward // <item ID>, <number> setarray .add_item_req, 601, 1; // rewards <item ID>, <number> setarray .reward, 504, 1; .size_reward = getarraysize( .reward ); end; } Thanks Capuche ! I'll update the script if there is some errors.. THANK YOU!
  4. Can anyone got this kind of script? Or If anyone can make some script like this? What kind of Rebirth System : Only works in rAthena. Maximum Rebirth is 50. Each rebirth will give 300 Stat Points until they reach 30th Rebirth. Once they reach the 30th Rebirth, they will now receive Items instead of Stat Points until they reach the 50th Rebirth. The Rebirth NPC will always check their weight limit before they rebirth, If their weight is quite large then the NPC won't make them rebirth. Players who got to rebirth will be Broadcasted. Players that have finished their Rebirth Stages will reset their Levels back into 1 including their Stat Point (This does not affect the additional Stat Points per rebirth, It will still remain). Players can only Rebirth once they have the Single Item Requirement. (Like Rebirth Ticket) Optional : Saves the rebirth of each character in the logs of Account ID, Character Name, No. of Reborn and IP Address. How the Rebirth System works : Each Rebirth will have atleast 5 Item Requirements like (Sample) 512, 513, 514, 515, 516... Each Rebirth will increase the amount of the Item Requirements by 1 until it reaches the 30th Rebirth. Once the player reaches 30th Rebirth, there will be an Additional Item Requirement, (Sample) Item ID 505.. Hope someone will share or make some kind of this script... THANK YOU!
  5. This thread is quite old but you still got plenty of time to make this script. THANKS ! I'll update you soon after I test this script.. THANK YOU CAPUCHE
  6. WhatFT

    item code

    { bonus bAtkRate,2; bonus bMatkRate,2; bonus bDex,1; },{}.{} You can learn here : https://github.com/conan513/rAthena/blob/master/doc/item_bonus.txt
  7. Oh ! I forgot, my bad.. thanks Capuche !
  8. //PAULINDS [Xerus RO] //[Simple] SUPER PVP ROOM //NPC 1 prontera,156,169,5 script Super Deathmatch 451,{ mes "Looks like you want to participate the Rumble huh!?"; mes "Before I'll let you in, Do you want to know about information about the Rumble?"; menu "Sure !",Q_YES,"Enter the Arena",Q_YES1; Q_YES: mes "You will need the version 3.5 so you can participate well in the Arena."; next; mes "First thing you'll do is you need to ^330000Survive Long^000000 this rumble"; next; mes "You're original items will be stored instantly from your inventory"; next; mes "You can also choose your equipments once you entered the arena."; next; mes "Warping, Teleporting or any @commands are disabled inside the arena."; next; mes "The equipments available in the arena is only useful in that Rumble"; next; mes "You can't even take that equipment outside the Rumble."; next; mes "Remember that those equipments are only available inside, you cannot keep as yours forever"; next; mes "Once you die, there is a chance that those equipment will be dropped and players can gather it as they want"; next; mes "You can quit anytime you want, my partner is always inside the Arena to watch over"; next; mes "Once you left the Arena, the equipments that you choose/gathered will be dropped and items in your inventory will be reset"; next; mes "You can come anytime you want but you'll have to buy time when your choosing your equipments"; next; mes "This can be hosted by a Game Master once hosted."; next; mes "You can earn Arena Points and can be exchanged outside for Event Tickets, Zeny Coins & More"; next; mes "WARNING : If you caught farming Arena Points, you'll be muted and jailed for 12 hours :)"; next; mes "This is NOT open for 24/7, It's only available once the GM Activates it."; next; mes "Very well, goodluck on the Arena !"; close; Q_YES1: mes "Looks like your really into it !"; mes "Goodluck then."; atcommand "@storeall"; warp "quiz_02",167,347; } //NPC 2 quiz_02,169,340,5 script Arena Assistant 452,{ if(#bonus == 0){ mes "You can only choose 1 set that gives equal effects to every participants"; next; mes "This set is good for all jobs so everyone will have an equal PKs"; getitem 30114,1; getitem 20037,1; getitem 25208,1; getitem 30115,3; getitem 30116,3; getitem 30117,3; getitem 30118,2; getitem 2765,3; getitem 7829,30; set #bonus,1; next; mes "There you go.."; next; mes "You can also look for MvP Cards & Weapons over there."; mes "Goodluck !"; close; } if(#bonus == 1){ mes "Looks like you're ready to enter the Arena !"; next; mes "Are you ready?"; menu "Not yet",Q_QWE,"Warp me now",Q_QWER; Q_QWE: mes "Okay.."; close; Q_QWER: mes "Goodluck !"; atcommand "@repairall"; announce strcharinfo(0)+" entered the Arena !",0; warp "guild_vs1",0,0; close; } } //NPC 3 quiz_02,166,337,5 shop Card Seller 453,4236:90,4425:90,4372:90,4147:90,4145:90,4168:90,4386:90,4142:90,4134:90,4137:90,4123:90,4330:90,4441:90,4324:90,4408:90,4128:90,4430:90,4263:90,4403:90,4318:90,4419:90,4376:90,4276:90,4146:90,4132:90,4131:90,4143:90,4135:90,4144:90,4148:90,4121:90,4342:90,4302:90,4399:90,4305:90,4407:90,4374:90,4352:90,4169:90,4174:90,4047:90,4354:90,4271:90,4278:90,4087:90,4412:90,4311:90,4411:90,4054:90,4114:90,4119:90,4170:90,4173:90,4141:90,4005:90,4092:90,4341:90,4348:90,4349:90,4064:90,4301:90,4051:90,4022:90,4103:90,4044:90,4058:90,4133:90,4334:90,4085:90,4097:90,4160:90,4172:90,4433:90,4416:90,4318:100,4195:100 //NPC 4 quiz_02,164,337,5 shop Weapon Seller 453,13011:50000,1231:50000,1228:50000,13034:50000,1237:50000,13017:50000,13032:50000,13016:50000,13035:50000,13027:50000,1108:50000,1133:50000,1131:50000,1175:50000,1182:50000,1408:50000,1544:50000,1505:50000,16001:50000,1538:50000,1532:50000,1622:50000,1646:50000,1624:50000,1644:50000,1705:50000,1736:50000,1745:50000,1822:50000,1802:50000,1925:50000,1906:50000,1904:50000,1902:50000,1951:50000,1550:50000,1568:50000,1570:50000,1571:50000,1569:50000,1579:50000,1266:50000,1275:50000,1278:50000,1276:50000,1277:50000,1264:50000,13304:50000,13302:50000,13150:50000,13103:50000,13152:50000,13105:50000,13107:50000 //NPC 5 quiz_02,162,337,5 shop Usable & Misc Items 453,12257:5000,678:1000000,523:1000,606:5000,645:1000,656:3000,657:5000,1025:5000,12114:15000,12115:15000,12116:15000,12117:15000,7139:5000,7136:5000,7135:5000,7138:5000,7137:5000,717:5000,715:500,716:700 //NPC 6 quiz_02,168,337,5 shop Ammunitions 453,1766:50,1755:20,1750:10,1754:20,1761:20,1752:20,1760:20,1759:20,1772:100,1757:30,1770:20,1769:30,1765:40,1763:30,1762:30,1767:30,1764:30,1751:20,1768:30,1753:30,1756:30,1758:30,1771:1000,13200:50,13202:100,13201:300,13206:500,13203:500,13207:500,13204:500,13205:500,13252:50,13254:500,13251:100,13253:300,13250:50,13256:50,13259:50,13258:50,13255:50,13257:50,7522:500,7521:500,7523:500,7524:500 //NPC 7 guild_vs1,53,43,5 script Exit#1 451,{ mes "Can't handle it anymore?"; next; menu "Later",Q_YES5,"Warp me back!",Q_YES66,"Equipment Room",Q_YES77; Q_YES5: mes "Great ! Give it a shot !"; close; Q_YES66: mes "Bye !"; announce strcharinfo(0)+" left the Arena !",0; atcommand "@dropall"; atcommand "@itemreset"; atcommand "@cleanmap"; set #bonus,0; dispbottom "Total: "+ #Cell_Game_Points +" Arena Points."; warp "prontera",0,0; Q_YES77: mes "Going back to Equipment Room"; next; mes "..."; next; mes "..."; next; mes "..."; next; mes "..."; next; mes "Any minute now..."; next; mes "..."; next; mes "Warping.."; next; warp "quiz_02",167,347; close; OnPCKillEvent: if( strcharinfo(3) == "guild_vs1" ) { #Cell_Game_Points = #Cell_Game_Points + 3; dispbottom "You get 3 Arena Points. Total: "+ #Cell_Game_Points +" Arena Points."; attachrid( killedrid ); if( #Cell_Game_Points ) #Cell_Game_Points = #Cell_Game_Points - 2; dispbottom "You lose 2 Arena Points. Total: "+ #Cell_Game_Points +" Arena Points."; sleep2 2000; warp strcharinfo(3),0,0; percentheal 100,100; } } //MAPFLAG quiz_02 mapflag nocommand 99 quiz_02 mapflag noteleport quiz_02 mapflag noreturn quiz_02 mapflag nomemo quiz_02 mapflag nowarp quiz_02 mapflag nowarpto quiz_02 mapflag nobranch quiz_02 mapflag noskill guild_vs1 mapflag nocommand 99 guild_vs1 mapflag noteleport guild_vs1 mapflag noreturn guild_vs1 mapflag nomemo guild_vs1 mapflag nowarp guild_vs1 mapflag nowarpto guild_vs1 mapflag nobranch //DUPLICATE quiz_02,171,343,5 duplicate(Exit#1) Exit#02 451
  9. OnPCKillEvent: if( strcharinfo(3) == "cell_game" ) { #Cell_Game_Points = #Cell_Game_Points + 3; dispbottom "You get 3 points. Total: "+ #Cell_Game_Points +" points."; attachrid( killedrid ); if( #Cell_Game_Points ) #Cell_Game_Points = #Cell_Game_Points - 1; dispbottom "You lose 1 point. Total: "+ #Cell_Game_Points +" points."; warp strcharinfo(3),0,0; sleep2 10; percentheal 100,100; } end; Add a dispbottom in the exit npc dispbottom "Total: "+ #Cell_Game_Points +" points."; ~The same as previously Hey the script is working but everytime a player is killed or kills, the disp bottom is doubled so the points are also doubled why is that?
  10. I got this weird idea and looking forward for someone to help me out.. I got the concept from Hunter X Hunter ) How this script works : Players will register their names and it will be saved. After the players registered their names, they will have a random number of them (max:128) The numbers will be attached to their IGNs (ex: [30]Paulinds) or can be a fakename (ex: [30]) And if they got disconnected/reconnected, their names will not be back to normal (if it used as fakename) Every players that is registered will be asked once again what # will they target or can be randomized by the NPC. Each of the players Target will get 3 Hunting Points while the others are 1 Hunting Point. If the player dies, their Hunting Points will be minus 3. Hunting Points can reach negative Points. The first 5-?? players that will get 30 points or If the time limit ends, the most # of points will win ! (Time Limit : 15 minutes) If the target/enemy dies, it will respawn in the same map after 3 seconds. The mapflags are noreturn, nowarp, nosave, noteleport, nowarpto, nocommand, pvp. Automated event and will only be open every 4 hours. The NPC only lasts 10 minutes. If the NPC didn't reached the minimum player count to start, it will hide again and will be open after 4 hours. (Min Player : 10) Once the event end or if the first 5-?? players that earned 30 pts, they will receive a reward.. All =30 Points will receive <ITEMID><Amount>, >=29 Pts will receive <ITEMID><Amount>, >=19 Pts will receive <ITEMID><Amount>, >=9 Pts will receive <ITEMID><Amount>, >=1 Pt will receive nothing. THANK YOU
  11. Will this be good? XD I'll try this and hope it will help...
  12. How is that solution? Will this be helpful? I already did that..
  13. I already put 'cell_game' there and even I put their map ID.. I'll try to recache.. thanks ! Does it need server restart or just @reload? example Celestiaj 1250 cell_game < -- add here mymap1 mymap2 mymap3 mymap4 Still doesn't save its position -.-, I did everything recache, map_index, replace the grf, maps_athena.conf and mapflags.............but still it doesn't save lol, I use rAthena don't hve any idea why this can't be fixed, I use 3ceam before and I didn't got any worries lol anymore suggestions?
  14. I already put 'cell_game' there and even I put their map ID.. I'll try to recache.. thanks ! Does it need server restart or just @reload?
  15. I can warp there.. I already added 'cell_game' in maps_athena.conf, map_index and I already cache the map_cache.dat I already set mapflag like noreturn, nosave savepoint, nowarp, noteleport etc.. But still that error shows in my char-server.bat
  16. Got a problem with this, how to fix it? My character is always sent back to Prontera. I just wanted to make my char stay in that position in 'cell_game' map. If I DC, I was hoping to be back at same map, same position or even I log out.. Need help Unable to find map-server for 'cell_game' Sending Major City 'Prontera".
  17. If incase I have forgot an Item that I listed that is not droppable, @itemreset will remove it.. XD I'll try that script thanks Capuche !
  18. Sorry but where will I put this Emistry?
  19. - script Sample -1,{ OnInit: set .Delay,180; end; OnPCKillEvent: if( @Delay < gettimetick(2) ){ set .@Amount,rand(1,4); set #CASHPOINTS,#CASHPOINTS + .@Amount; dispbottom "Gained "+.@Amount+" Cash Point. Total = "+#CASHPOINTS+" Cash Points."; if( .Delay ) set @Delay,gettimetick(2) + .Delay; } end; } Can anyone help me add something on this script? This PvP Point Script will only work @ cell_game Thanks for Emistry for sharing this in his thread..
  20. I don't know why the map I added in my server doesn't save the character's position.. Everytime they got error or logged out, they are warped back in prontera.. However, other PvP maps doesn't have the problem, if they got error or logged out, they still stay in that position in that map... How to fix this? I just had an idea that new maps that I added doesn't have the same setup like the old ones...
  21. The script gone bad in that pastebin lol )) But thanks
×
×
  • Create New...