Search the Community

Showing results for tags 'mob'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Bulletin Centre
    • Community News
    • Repository News
    • Ragnarok News
  • Hercules Development Centre
    • Development Discussion
    • Suggestions
    • Development Centre Archives
  • Support & Releases
    • General Server Support
    • Database
    • Scripting
    • Source
    • Plugin
    • Client-Side
    • Graphic Enhancements
    • Other Support & Releases
  • Hercules Community
    • General Discussion
    • Projects
    • Employment
    • Server Advertisement
    • Arts & Writings
    • Off Topic
  • 3CeAM Centre
    • News and Development
    • Community
  • International Communities
    • Filipino Community
    • Portuguese Community
    • Spanish Community
    • Other Communities

Categories

  • Client Resources
  • Graphic Resources
    • Sprites & Palettes
    • Maps & Textures
    • Other Graphics
  • Server Resources
    • Server Managers / Editors Releases
    • Script Releases
    • Source Modifications
    • Plugins
    • Pre-Compiled Server
  • Web Resources

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Discord


Skype


IRC Nickname


Website URL


Location:


Interests


Github

Found 9 results

  1. Hello guys. I want make a system and need which the mob doesn't enter in certain coordinated. Example: The poring can't enter in prontera,100 100. But the player can.
  2. is it possible to globally increase the mobs damage globally to have a higher/lower damage by a percent? (maybe) i think its a good way to add this as a configuration in monster.conf for those who run high rate servers so that PvE content will still be challenging.
  3. [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1193 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1269 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1276 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1208 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1275 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1268 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1272 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1270 [Debug]: Source (NPC): Manager#arug_cas01 (invisible/not on a map) [status]: Received '34' guild castles from char-server. [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1674 [Debug]: Source (NPC): 3F Gate Switch#jupe at juperos_02 (97,70) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1674 [Debug]: Source (NPC): 3F Gate Switch#jupe at juperos_02 (97,70) [Warning]: buildin_monster: Attempted to spawn non-existing monster class 1674 [Debug]: Source (NPC): 3F Gate Switch#jupe at juperos_02 (97,70) its a long error, just got some of it. Need help pls how to fix this. i installed fresh trunk files already, but still got the same errors. thanks in advance!
  4. Version 1.0

    74 downloads

    (Animation speed varies slightly in-game from animated gifs.) The idea behind this sprite was that the default wolf sprite is extremely aggressive looking and horribly exaggerated. I wanted something a little more realistic. Some people think this is a "friendly" looking wolf, to me this is just realistic. The wolf will pant when running around, it listens to its surroundings, actually has a tail (I mean, unless it is part bobcat...), and has black eye rims and lips (though this gives a "cute" appearance in-game, this is just a feature of wolves). One frame even had the legs spaced so far apart as to give the wolf the appearance of being barrel chested, when wolves are the exact opposite. I would like to, sometime in the future, also create other wolf coloration's for this sprite (coat colors of subspecies and such), but that will come later. You are welcome to modify it if you do not like something about it or want it recolored. Just do not claim as your own (you can claim yourself as the editor) and do not sell this sprite. Anywho, here you are. Enjoy. Replace the actual mob with it, or make it a pet/custom mob, it's up to you. ~ Wolfeh
  5. File Name: Realistic/Friendly Wolf File Submitter: Wolfeh File Submitted: 17 Aug 2016 File Category: Sprites & Palettes (Animation speed varies slightly in-game from animated gifs.) The idea behind this sprite was that the default wolf sprite is extremely aggressive looking and horribly exaggerated. I wanted something a little more realistic. Some people think this is a "friendly" looking wolf, to me this is just realistic. The wolf will pant when running around, it listens to its surroundings, actually has a tail (I mean, unless it is part bobcat...), and has black eye rims and lips (though this gives a "cute" appearance in-game, this is just a feature of wolves). One frame even had the legs spaced so far apart as to give the wolf the appearance of being barrel chested, when wolves are the exact opposite. I would like to, sometime in the future, also create other wolf coloration's for this sprite (coat colors of subspecies and such), but that will come later. You are welcome to modify it if you do not like something about it or want it recolored. Just do not claim as your own (you can claim yourself as the editor) and do not sell this sprite. Anywho, here you are. Enjoy. Replace the actual mob with it, or make it a pet/custom mob, it's up to you. ~ Wolfeh Click here to download this file
  6. Hey there.. I want to learn Spriting and create Custom mob Sprite. I'm a starter on this and I'm not sure where do I start. Can you guide me on the things that I need like what Guide Tutorial or recommended Softwares should I use in creating or modifying .SPR & .ACT files? Thanks a lot. I hope I can contribute something here.
  7. Hi everyone, is there a way to dynamically influence mob stats either on spawn or afterwards? The only way i can think of would be to create copies of the monster with different stats and put a switch in front of the spawn command to get the most fitting one. But thats not a road i'd like to take so i am searching for a different alternative. I tried to check how the guardians in WoE do it, since their stats should be raisable based on guild investment, but i couldn't figure out if and where they are influenced. Any suggestions are welcome and thanks in advance.
  8. Hi all, Is that possible to increase mob damage ? All mvp or all normal mobs? Increase 20% damage or maybe 100% ? With current git, I see the mvp like passive, and wont attack player. Not aggressive. Why ? Do you feel same ?
  9. Hello. This topic is forwarded from this Spanish Support topic, on its script section: compatibilizar invacion de Ivion User says this script won't work in Hercules because when an invasion starts, it instantly ends. I haven't been able to spot the issue on its code (couldn't test since my local MySQL engine is broken for good) and it parses OK according to Haru's script checker. Script is quite old (ancient I'd say ) and obfuscated, but to my knowledge it's allowed to be redistributed and edited without any problems. Here's a copy of the script: //// [========================================================]// [=========== The Invasor ===========]// [========================================================]// [ Version 8 ]// [========================================================]// [ Original script by: Ivion ]// [========================================================]// [ Description: ]// [--------------------------------------------------------]// [ ]// [ - Automatic invasion events. ]// [ - 24 randomly selected cities. ]// [ - 15 different types of invasion. ]// [ - Invasion events are divided into 3 difficulty stages.]// [ - GM Control Panel whispering to NPC:invasor. ]// [========================================================]// [ Changelog: (5 last updates) ]// [--------------------------------------------------------]// [ ]// [ v4: [Ivion] ]// [ - Nuevos mobs balanceados, añadidos a la db. ]// [ - 2 nuevos tipos de invasiones. ]// [ - Ahora los mobs dropean items. ]// [ - Recompensas y penalizaciones globales. ]// [ - Acceso ingame mediante OnWhisperGlobal. ]// [ - Nuevas opciones de configuración. ]// [ - Reescrito casi todo el código. ]// [ ]// [ v5: [Ivion] ]// [ - Varios bugfixes. ]// [ - Optimización del script. ]// [ - Añadido mid_camp. ]// [ - Nuevos mobs sin tanta db. ]// [ - Nuevos bosses. ]// [ - Nuevas invasiones: Ice, Nature, Dragon, Kaos y ]// [ Takeshi. ]// [ - Incremento de rates del servidor a +20%. ]// [ - Retirado el sistema de penalizaciones. ]// [ - Los spawns no disminuirán al matar los bosses. ]// [ - Sistema para Save Point alternativo. ]// [ ]// [ v5.1: [Ivion] ]// [ - Bugfix: Corregido un pequeño error en mob_db2 que ]// [ producía errores en el map-server. ]// [ ]// [ v6: [Ivion] ]// [ - Translated into english. ]// [ - Added new 13.2 episode cities. ]// [ - Global delayed announcements system. ]// [ - Rates increment won't affect other possible bonnuses ]// [ from other scripts. ]// [ - Bugfix: Mapflags used while the invasion event will ]// [ be cleared according to their inicial state. ]// [ - Some mobs has been replaced. ]// [ - Bugfix: Removed Ghoul and Angeling mobs from the 3rd ]// [ stage of the Undead invasion. ]// [ - Some bosses has been replaced. ]// [ - Some balance adjustments to the stats of the bosses. ]// [ - Bugfix: Some bosses had range2 = 0. ]// [ - The control panel won't be displayed to ]// [ multiple gms at once. ]// [ - Mobs and bosses will drop Poring Coins. ]// [ ]// [ v7: [Ivion] ]// [ - Bugfix: Incorrect map cells in Amatsu and Juno. ]// [ - Added teleport skill to the bosses. ]// [ - Updated the skills of the 13.1 monsters. ]// [ ]// [ v8: [Ivion] ]// [ - The init timer won't reset when reloading scripts. ]// [ - Added some information about the invasion progress in]// [ the GMs Control Panel. ]// [========================================================]// [ http://www.eathena.ws/board/index.php?showtopic=224056 ]// [========================================================]- script invasor -1,{OnInit:// [========================================================]// [ Configuration: ]// [--------------------------------------------------------] set .t1,2*24; // Minimum time to activate a new invasion event. (h) set .t2,4*24; // Maximum time to activate a new invasion event. (h) set .t3,24*120; // Maximum duration of the invasion event. (min) set .r1,50000; // Mob rate. (%) set .pci,8905; // Item reward dropped by mobs and bosses. (Default = Poring Coin) set .pcr1,1; // Rate of item rewards dropped by mobs. (0 = off | %) set .pcr2,10; // Rate of item rewards dropped by bosses. (0 = off | %) // After successfully completing the invasion, the experience rates will be increased for a time. set .t4,60; // Duration of the experience event. (0 = off | min) set .r2,30; // Experience rates increment. (0 = off | %) set .gm,60; // GM level required to access the Control Panel whispering to NPC:invasor. // Alternative Save Point: // If a player had saved in the map of the current invasion event, his respawn point will be changed to this one. set .s$,"prontera"; // Map. set .sx,156; // x. set .sy,161; // y. // Cities: // getarg(0): Name. // getarg(1): Map. // getarg(2): Intensity. (0 = off | Intensity) //callsub Onc0,"Alberta","alberta",11; callsub Onc0,"Al De Baran","aldebaran",14; callsub Onc0,"Amatsu","amatsu",18; callsub Onc0,"Ayothaya","ayothaya",8; callsub Onc0,"Comodo","comodo",22; callsub Onc0,"Einbech","einbech",11; callsub Onc0,"Einbroch","einbroch",22; callsub Onc0,"Geffen","geffen",10; callsub Onc0,"Gonryun","gonryun",14; callsub Onc0,"Hugel","hugel",9; callsub Onc0,"Izlude","izlude",5; callsub Onc0,"Jawaii","jawaii",0; // 7 callsub Onc0,"Juno","yuno",30; callsub Onc0,"Lighthalzen","lighthalzen",24; callsub Onc0,"Louyang","louyang",27; callsub Onc0,"Lutie","xmas",20; callsub Onc0,"Manuk","manuk",8; callsub Onc0,"Midgarts Expedition Camp","mid_camp",13; callsub Onc0,"Morroc","morocc",25; callsub Onc0,"Moscovia","moscovia",6; callsub Onc0,"Niflheim","niflheim",0; // 20 callsub Onc0,"Payon","payon",19; callsub Onc0,"Prontera","prontera",0; // 30 callsub Onc0,"Rachel","rachel",18; callsub Onc0,"Splendide","splendide",29; callsub Onc0,"Umbala","umbala",4; callsub Onc0,"Veins","veins",20; // Invasion types: // getarg(0): Name. // getarg(1 .. 9): Mobs. // getarg(10 .. 12): Bosses. callsub Onc1,"Aqua",1068,1071,1071,1069,1044,1144,1045,1065,1264,1894,2016,1112; callsub Onc1,"Demon",1146,1109,1101,1149,1632,1773,1382,1292,1208,1920,1389,1929; callsub Onc1,"Dragon",1715,1718,1155,1380,1206,1385,1717,1714,1716,1262,1720,2022; callsub Onc1,"Earth",1784,1782,1165,1517,1615,1516,1378,1386,1602,1919,1785,1916; callsub Onc1,"Fire",1836,1367,1383,1072,1384,1381,1318,1837,1366,1833,1831,1832; callsub Onc1,"Ghost",1509,1179,1186,1143,1510,1192,1506,1375,1291,1704,1921,1768; callsub Onc1,"Ice",1243,1789,1776,1778,1323,1317,1775,1515,1319,1777,1252,1779; callsub Onc1,"Insect",1054,1100,1139,1279,1099,1625,1304,1194,1305,1618,2087,1147; callsub Onc1,"Kaos",1140,1508,1163,1276,1504,1132,1698,1505,1507,1702,1268,2018; callsub Onc1,"Machina",1151,1616,1745,1682,1270,1622,1202,1678,1673,1978,1623,1685; callsub Onc1,"Nature",1162,1118,1880,1500,1497,1410,1780,1884,1314,1991,1885,1957; callsub Onc1,"Takeshi",1026,1188,1404,1584,1609,1512,1416,1405,1401,1518,1492,1418; callsub Onc1,"Undead",1403,1169,1041,1196,1197,1117,1297,1866,1098,1870,1038,1373; callsub Onc1,"Venom",1621,1256,1037,1402,1209,1216,1207,1883,1148,1987,1871,1874; callsub Onc1,"Wind",1627,1156,1253,1263,1633,1692,1412,1774,1259,1992,1918,1931; //callsub Onc1,"Aqua",1068,1071,1228,1069,1044,1144,1045,1065,1264,2503,2504,2505; //callsub Onc1,"Demon",1146,1109,1101,1149,1632,1773,1382,1292,1208,2536,2537,2538; //callsub Onc1,"Dragon",1715,1718,1155,1380,1206,1385,1717,1714,1716,2524,2525,2526; //callsub Onc1,"Earth",1784,1782,1165,1517,1615,1516,1378,1386,1602,2512,2513,2514; //callsub Onc1,"Fire",1836,1367,1383,1072,1384,1381,1318,1837,1366,2500,2501,2502; //callsub Onc1,"Ghost",1509,1179,1186,1143,1510,1192,1506,1375,1291,2527,2528,2529; //callsub Onc1,"Ice",1243,1789,1776,1778,1323,1317,1775,1515,1319,2506,2507,2508; //callsub Onc1,"Insect",1054,1100,1139,1279,1099,1625,1304,1194,1305,2518,2519,2520; //callsub Onc1,"Kaos",1140,1508,1163,1276,1504,1132,1698,1505,1507,2539,2540,2541; //callsub Onc1,"Machina",1151,1616,1745,1682,1270,1622,1202,1678,1673,2515,2516,2517; //callsub Onc1,"Nature",1162,1118,1880,1500,1497,1410,1780,1884,1314,2509,2510,2511; //callsub Onc1,"Takeshi",1026,1188,1404,1584,1609,1512,1416,1405,1401,2542,2543,2544; //callsub Onc1,"Undead",1403,1169,1041,1196,1197,1117,1297,1866,1098,2533,2534,2535; //callsub Onc1,"Venom",1621,1256,1037,1402,1209,1216,1207,1883,1148,2521,2522,2523; //callsub Onc1,"Wind",1627,1156,1253,1263,1633,1692,1412,1774,1259,2530,2531,2532;// [--------------------------------------------------------]// [ End of configuration. ]// [========================================================] set .br,getbattleflag("base_exp_rate"); set .jr,getbattleflag("job_exp_rate"); // Fix incorrect map cells: setcell "amatsu",314,267,314,314,0,0; setcell "yuno",205,219,205,218,0,0; donpcevent "invasor::On0"; end;Onc0: if(getarg(2) > 0) { set .c1$[.c],getarg(0); set .c2$[.c],getarg(1); set .i[.c],getarg(2); set .c,.c + 1; } return;Onc1: set [email protected],getarraysize(.n$); set .n$[[email protected]],getarg(0); while([email protected] < 12) { set getd(".m"+(([email protected] * 12) + [email protected]),getarg([email protected] + 1); set [email protected],[email protected] + 1; } return;On0: while(1) { set .a,0; set .b,0; set .c,0; set [email protected],gettimetick(2) / 60; if($TIt <= [email protected]) set $TIt,[email protected] + rand(.t1 * 60,.t2 * 60); sleep ($TIt - [email protected]) * 60 * 1000; set .a,1; set $TIt,0; set [email protected],0; donpcevent "invasor::OnTimer"; if(!. set .b,rand(1,getarraysize(.i)); set .b,.b - 1; if(!.c) set .c,rand(1,getarraysize(.n$)); set .c,.c - 1; set .mf1,getmapflag(.c2$[.b],1); set .mf4,getmapflag(.c2$[.b],4); setmapflag .c2$[.b],1; // noteleport setmapflag .c2$[.b],4; // nopenalty callsub Clrmsg; announce "S.O.S.!! "+.c1$[.b]+" ESTA SUFRIENDO UNA TERRIBLE INVACION!!!.",bc_all,0xffaa00; while(.a > 0) { if(!.d) { set .d,4 - .a; killmonster .c2$[.b],"invasor::onm9"; if(.a > 1) callsub Addmsg,"Los ejércitos invasores nuevamente entran en la ciudad.","ffaa00",.c2$[.b]; monster .c2$[.b],0,0,"--ja--",getd(".m"+((.c * 12) + .a + 8)),4 - .a,"invasor::onm9"; } if(mobcount(.c2$[.b],"invasor::onm"+((.a * 3) - 3)) < (.i[.b] * .r1 / 20)) monster .c2$[.b],0,0,"--ja--",getd(".m"+((.c * 12) + (.a * 3) - 3)),.i[.b],"invasor::onm"+((.a * 3) - 3); if(mobcount(.c2$[.b],"invasor::onm"+((.a * 3) - 2)) < (.i[.b] * .r1 / 20)) monster .c2$[.b],0,0,"--ja--",getd(".m"+((.c * 12) + (.a * 3) - 2)),.i[.b],"invasor::onm"+((.a * 3) - 2); if(mobcount(.c2$[.b],"invasor::onm"+((.a * 3) - 1)) < (.i[.b] * .r1 / 20)) monster .c2$[.b],0,0,"--ja--",getd(".m"+((.c * 12) + (.a * 3) - 1)),.i[.b],"invasor::onm"+((.a * 3) - 1); if(.a > 0) sleep 20000; } set .d,0; set [email protected],12; while([email protected] > 0) { set [email protected],[email protected] - 1; killmonster .c2$[.b],"invasor::onm"[email protected]; } if(!.mf1) removemapflag .c2$[.b],1; if(!.mf4) removemapflag .c2$[.b],4; set .mf1,0; set .mf4,0; if(.a == -1) { callsub Addmsg,"Recompensa: Experiencia aumento de rates a "+.r2+"%. ("+.t4+" min)","ffaa00"; setbattleflag "base_exp_rate",getbattleflag("base_exp_rate") + (.br * .r2 / 100); setbattleflag "job_exp_rate",getbattleflag("job_exp_rate") + (.jr * .r2 / 100); sleep .t4 * 60 * 1000; setbattleflag "base_exp_rate",getbattleflag("base_exp_rate") - (.br * .r2 / 100); setbattleflag "job_exp_rate",getbattleflag("job_exp_rate") - (.jr * .r2 / 100); announce "Los rates de la experiencia ha sido restaurados.",bc_all,0xffaa00; } } end;onm0:onm1:onm2: if(playerattached() && .pcr1) if(!rand(100 * 100 / .pcr1)) getitem .pci,1; end;onm3:onm4:onm5: if(playerattached() && .pcr1) if(!rand(75 * 100 / .pcr1)) getitem .pci,1; end;onm6:onm7:onm8: if(playerattached() && .pcr1) if(!rand(50 * 100 / .pcr1)) getitem .pci,1; end;onm9: if(.a < 1) end; set .d,.d - 1; if(.a != 3) { if(.a == 1) set [email protected]$,"Sbirro"; if(.a == 2) set [email protected]$,"Hero"; set [email protected]$,callsub(Grammar_a_an,.n$[.c]); if(playerattached()) { set [email protected]$,strcharinfo(0)+" ha muerto "[email protected]$+" "+.n$[.c]+" "[email protected]$+"."; if(.a == 1) getitem .pci,2 * .pcr2 / 100; if(.a == 2) getitem .pci,3 * .pcr2 / 100; } else set [email protected]$,[email protected]$+" "+.n$[.c]+" "[email protected]$+" haz sido asesinado."; callsub Addmsg,[email protected]$+" ("+(4 - .a - .d)+"/"+(4 - .a)+")","ffaa00",.c2$[.b]; if(!.d) set .a,.a + 1; } else { if(playerattached()) { set [email protected]$,strcharinfo(0)+" ha matado a la "+.n$[.c]+" Deux."; getitem .pci,1 * .pcr2 / 100; } else set [email protected]$,"El "+.n$[.c]+" Deux a sido asesinado."; callsub Addmsg,[email protected]$,"ffaa00",.c2$[.b]; callsub Addmsg,"El ejército invasor de "+.c1$[.b]+" ha sido derrotado.","ffaa00"; if(.t4 && .r2) set .a,-1; else set .a,0; awake "invasor"; } end;OnTimer: sleep .t3 * 120 * 1000; if(.a < 1) end; set .a,0; awake "invasor"; callsub Clrmsg; callsub Addmsg,"Las defensas de "+.c1$[.b]+" han sido derrotadas por los ejércitos invasores.","ffaa00"; callsub Addmsg,"Hoy será recordado como un día negro para el servidor Apolo-RO /sob.","ffaa00"; end;OnPCLoginEvent: if(.a > 0) { sleep2 3000; if(.a > 0) announce "¡¡S.O.S.!! "+.c1$[.b]+" está sufriendo de una terrible invasión.",bc_self,0xffaa00; } else if(.a == -1) { sleep2 3000; if(.a == -1) announce "La experiencia de rates ha sido aumentada a "+.r2+"%.",bc_self,0xffaa00; } end;OnPCDieEvent: if((.a > 0) && (getsavepoint(0) == .c2$[.b])) save .s$,.sx,.sy; end;OnWhisperGlobal: if(getgmlevel() < .gm) end; set [email protected]$,"^008888The Invasor^000000"; mes [email protected]$; mes "Este es el panel de control del sistema de Invasor."; if(!.a) { mes "Actualmente no hay ninguna invasión en curso."; set [email protected],$TIt - (gettimetick(2) / 60); if([email protected]) set [email protected]$,"a few seconds"; else if([email protected] < 60) set [email protected]$,[email protected]+" minutes"; else { set [email protected],[email protected] / 60; if([email protected] < 24) set [email protected]$,[email protected]+" hours"; else set [email protected]$,([email protected] / 24)+" days"; } mes "Próximo evento de la invasión automática tendrá lugar en "[email protected]$+"."; next; set [email protected],select("^880000Exit^000000","Start invasion.") - 1; mes [email protected]$; if([email protected] { mes "Select a city."; next; set [email protected],select("^880000Random^000000",.c1$[0],.c1$[1],.c1$[2],.c1$[3],.c1$[4],.c1$[5],.c1$[6],.c1$[7],.c1$[8],.c1$[9],.c1$[10],.c1$[11],.c1$[12],.c1$[13],.c1$[14],.c1$[15],.c1$[16],.c1$[17],.c1$[18],.c1$[19],.c1$[20],.c1$[21],.c1$[22],.c1$[23],.c1$[24],.c1$[25],.c1$[26],.c1$[27],.c1$[28],.c1$[29],.c1$[30],.c1$[31],.c1$[32],.c1$[33],.c1$[34],.c1$[35],.c1$[36],.c1$[37],.c1$[38],.c1$[39]); mes [email protected]$; set [email protected],[email protected] - 1; mes "Seleccione una clase para la invasión."; next; set [email protected],select("^880000Random^000000",.n$[0],.n$[1],.n$[2],.n$[3],.n$[4],.n$[5],.n$[6],.n$[7],.n$[8],.n$[9],.n$[10],.n$[11],.n$[12],.n$[13],.n$[14],.n$[15],.n$[16],.n$[17],.n$[18],.n$[19],.n$[20],.n$[21],.n$[22],.n$[23],.n$[24]); mes [email protected]$; set [email protected],[email protected] - 1; if(.a) { mes "En este momento, no se puede iniciar una nueva invasión."; mes "Regresa mas tarde."; close; } set .b,[email protected]; set .c,[email protected]; awake "invasor"; mes "Una nueva invasión se ha iniciado."; close; } } else if(.a > 0) { mes "Actualmente no existe "+callsub(Grammar_a_an,.n$[.c])+" "+.n$[.c]+" invasión que tienen lugar en "+.c1$[.b]+"."; next; set [email protected],select("^880000Exit^000000","Cancelar la actual invasión.") - 1; mes [email protected]$; if([email protected] { if(.a < 1) { mes "Actualmente no hay ninguna invasión en curso."; close; } set .a,0; announce "La invasion en "+.c1$[.b]+" ha sido cancelada.",bc_all,0xffaa00; mes "la invasion en "+.c1$[.b]+" ha sido cancelada."; awake "invasor"; close; } } else { mes "Experiencia de rates aumentada "+.r2+"% como una recompensa por la invasión anterior."; next; set [email protected],select("^880000Exit^000000","Restaurar rates.") - 1; mes [email protected]$; if([email protected] { if(.a != -1) { mes "Actualmente los rates no son modificados por el sistema de Invasor."; close; } awake "invasor"; mes "Los rates han sido restaurados."; close; } } mes "Hasta pronto."; close;// Adds a new message to the announcement list:// getarg(0): Message.// getarg(1): Color.// getarg(2): Map. (optional)Addmsg: set [email protected],getarraysize([email protected]_msg0$); if([email protected] >= 10) { deletearray [email protected]_msg0$[0],[email protected] - 9; set [email protected],9; } set [email protected]_msg0$[[email protected]],getarg(0); set [email protected]_msg1$[[email protected]],getarg(1); set [email protected]_msg2$[[email protected]],getarg(2,""); if([email protected]) donpcevent "inv_msg::On0"; return;// Clear the announcement list:Clrmsg: set [email protected],getarraysize([email protected]_msg0$); cleararray [email protected]_msg0$[0],"",[email protected]; cleararray [email protected]_msg1$[0],"",[email protected]; cleararray [email protected]_msg2$[0],"",[email protected]; awake "inv_msg"; return;Grammar_a_an: set [email protected]$,getarg(0); if( compare("_init_"[email protected]$,"_init_A") || compare("_init_"[email protected]$,"_init_E") || compare("_init_"[email protected]$,"_init_I") || compare("_init_"[email protected]$,"_init_O") || compare("_init_"[email protected]$,"_init_U") ) return "an"; else return "a";}// Delayed announcements:// Announces a message from the announcement list every 3 seconds.- script inv_msg -1,{On0: while(getarraysize([email protected]_msg0$)) { if([email protected]_msg2$[0] == "") announce [email protected]_msg0$[0],bc_all,"0x"[email protected]_msg1$[0]; else mapannounce [email protected]_msg2$[0],[email protected]_msg0$[0],bc_all,"0x"[email protected]_msg1$[0]; if(getarraysize([email protected]_msg0$)) sleep 3000; deletearray [email protected]_msg0$[0],1; deletearray [email protected]_msg1$[0],1; deletearray [email protected]_msg2$[0],1; } end;} Not sure why he uses v8 instead of the last version released in rAthena, which is v10, but it's edited by the user. Thanks a lot in advance!