Jump to content

Technoken

Members
  • Posts

    505
  • Joined

  • Days Won

    8

Everything posted by Technoken

  1. Try prontera,156,180,3 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.",0,0x00CCFF; 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.",0,0x00CCFF; announce "The Event is being held at the Middle Of prontera ",0,0x00CCFF; 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,675; set .PrizeAmt,1; 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,"; disablenpc "Disguise Event"; end; OnClock0000: OnClock0400: OnClock0800: OnClock1200: OnClock1600: OnClock2000: enablenpc "Disguise Event"; set .ResetCounter,.ResetCounter+1; set .EventON,1; set .Timer,1; set .Wait,1; announce "The Disguise Event will begin in 3 minutes.",0,0x00CCFF; announce "The Event is being held in Prontera Middle.",0,0x00CCFF; 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.",0,0x00CCFF; announce "The Event is being held in Prontera Middle",0,0x00CCFF; end; OnTimer120000: if (.Timer!=1) end; announce "The Disguise Event will begin 1 minute.",0,0x00CCFF; announce "The Event is being held in Prontera Middle",0,0x00CCFF; end; OnTimer180000: if (.Timer!=1) end; announce "The Disguise Event has begun!",0,0x00CCFF; announce "The Event is being held in Prontera Middle",0,0x00CCFF; 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$+"",0,0x00CCFF; 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."; sleep 2000; disablenpc "Disguise Event"; end; } setnpcdisplay "Disguise Event",795; set .Change,0; setnpctimer 0; end; } The problem though, GM's won't be able to access the configuration since the npc will only be enabled during it was started.
  2. Looks like it was ram issue. how much ram does your vps has? and have u check how much is still free?
  3. Have you checked your data files if the sprite is actually existing?
  4. What git hash are you using? If you believed that this is actually a bug from rathena, you can help the devs by reporting it here->https://github.com/rathena/rathena/issues
  5. What git hash are you currently using? Idk if that issue is related here(LINK) or maybe 1800 max storage is too much. Incase you are not using a version higher than ade1b17. Try to update your trunk and test the max storage again.
  6. Yes. But that won't decrease the chance of being frozen when Luk is below 300. It will only be immune when player gets 300 Luk. For immune to all status effect, you can add them one by one.
  7. Check this one -> LINK
  8. Try to use OnPCStatCalcEvent, instead of OnPCLoginEvent.
  9. Please share how you managed to fix it. Incase someone with the same problem encounter it, this thread would be helpful.
  10. Have you checked this one ? -> https://github.com/rathena/rathena/wiki/Custom_weapons I think you should use these id's for knife 1200-1249 Knife 13000-13099 Knife
  11. The only way I see to make magic miss is using MD_SKILL_IMMUNE. but that means all skills will miss and normal attacks are the only one that can hit it. Unless there's like a property for monsters that all elemental attacks will miss.
  12. Yes. Just use a different mob mode. See https://github.com/rathena/rathena/blob/master/doc/mob_db_mode_list.txt#L43
  13. @mrmagic Looks like I needed to check the affected skills of trans classes on renewal.
  14. Did someone here already made this one? I was planning to create and test a server using renewal but without 3rd Jobs and Extended Classes. Also disabled renewal cast, renewal drop, renewal exp, renewal lvdmg, renewal aspd, and renewal stat. Basically it would be like a pre-renewal but using renewal npc's and database. I haven't explored renewal that much since I'm a fan of pre-renewal ever since, but seeing other renewal features and npcs(especially instances) makes me want to try them out. I decided to post this thread so anyone could give their own suggestions and advises of what could be the possible outcome. I would really appreciate your own opinions.
  15. @skyroofficial you can use @Litro Endemic script. It's sexier lol
  16. Try adding this: .@name$ = rid2name(.@aid[.@i]); if(checkvending(.@name$) || checkchatting(.@name$) || checkidle(.@name$) >= 60 ) continue; after this line: while( .@i < .@size ) {
  17. Check this link
  18. Do you have mushroom event enabled? When mushroom are summoned on the same map with punching bags, and killmonster .Map$,"All"; was executed, the puching bag will also be killed and the event label won't be triggered.
  19. Bubble gum doesn't increase drop rate percentage. It just rolls the drop twice.
  20. Try 5013,Horn_Of_Lord_Kaho,Lord Kaho's Horn,4,20,,100,,5,,0,0xFFFFFFFF,7,2,256,,0,1,99,{ bonus bMdef,10; bonus bStr,5; bonus bAgi,10; bonus bVit,10; bonus bInt,5; bonus bLuk,20; },{ sc_start4 sc_spirit, 300000, 5, 448, 0, 0; },{ sc_end sc_spirit; }
  21. use OnPCKillEvent: OnPCKillEvent: if( strcharinfo(3) == "guild_vs3" || strcharinfo(3) == "guild_vs2" ) announce strcharinfo(0)+" killed "+rid2name(killedrid)+" at "+strcharinfo(3)+".",0; end;
  22. @Radian I'm also using the Costume System, but a regular costume item in item_db.txt gives bonus, while costume items which are produced via @costumeitem or costume script command doesn't give any bonus. Maybe the way he patched it was wrong, or bc he's using an older rathena revision.
  23. It's something in the source which doesn't give bonuses on costumes. Maybe try to update it but make sure to backup it first before updating. We can't help you that much since you're using an outdated version.
  24. I just test it and in my case it's working. It gives the additional item bonus. Are you using the latest git hash?
×
×
  • Create New...