Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 01/05/12 in all areas

  1. I think it would be better to have the commands and configs with true or false setting in the groups. That way we could revoke a permission from a inherited group. Example: gamemaster { permissions { can_trade: true, // ... } //... } supporter { commands { autotrade: true, iteminfo: true, // ... } permissions { can_trade: false, // overwrites 'true' of the gamemaster group // ... } inherit: gamemaster }
    2 points
  2. /db/item_db.txt is marked with a 'C'. I think it's a Tree Conflicted because it was SVN Moved in r15394 for the /db/ folder restructuring in r15390. I'm not sure how to mark it Resolved in Linux, but it would be something like this: - save a copy of your old /db/item_db.txt (like save it on your computer) - resolve the conflict - then upload your item_db.txt to /db/pre-re/ or /db/re/ depending on if you're using Renewal or not.
    2 points
  3. Customisable Monster Invasion Hi everyone, as none of the current available Monster Invasion scripts really satisfied my needs, I decided to make my own one. I got inspired by the "Automated MVP Event" from xMachina / Acetito and Emistry, but wrote all the code myself. Feature List: Parameters are defined via an NPC Nice and easy ingame defining of monsters and item reward types and quantitys and the desired Map Top Killers are listed and rewared after the event is over A logmes is generated with information about the top Killer, his kills, the chosen item reward and the count of previous monster invasions to detect possible abuses. Temporarily saves inputs How to operate: It's pretty simple, you just talk to the NPC and choose the desired options. You don't have to write monster or Item IDs ingame, you define them in the script. I provided a list of pre-defined monsters and items, if you want to alter it then do the following: 1. Mind the 4 lines after the comment: "//define monsterlist and itemlist", i made two categorys for monsters and items respectively for a better overview. 2. Add the desired item/monster ID to the desired category. 3. For monsters: Go to the function "F_ChooseMob" and extend the respective category list with the monster name (mind the correct order!), for items: search for the lines below the comment: "//Item & Item amount list, sorted like rms does" (I was too lazy to make a separate function out of it D:) and do the same (mind the correct order again). Example for a not working monster list extension (Marin in this case): changing setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197; to setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197:1242; and changing set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner")]; to set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Marin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner")]; //This won't work because the monster ID is added to the end on one list, while the monster name is added somewhere in the middle on the other list. The positions of the monster IDs and names have to match. Example for a working monster list extension (Marin in this case): changing setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197; to setarray $@Monsteridweak[1],1301,1297,1403,1654,1268,1507,1830,1307,1302,1635,1655,1636,1777,1837,1656, 1219,1502,1637,1262,1700,1320,1865,1657,1702,1829,1375,1204,1653,1416,1200,1197:1242; and changing set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner")]; to set @Monsters[getarg(0)],$@Monsteridweak[select("Am Mut:Ancient Mummy:Firelock Soldier:Armeyer Dinze:Bloody Knight:Bloody Murderer:Bow Guardian:Cat o' Nine Tails:Dark Illusion:Eremes Guile:Errende Ebecee:Howard Alt-Eisen:Ice Titan:Imp:Kavach Icarus:Knight of Abyss:Loli Ruri:Margaretha Sorin:Mutant Dragonoid:Observation:Owl Duke:Ragged Zombie:Laurell Weinder:Retribution:Sword Guardian:The Paper:Tirfing/Ogretooth:Wickebine Tres:Wicked Nymph:Zealotus:Zombie Prisoner:Marin")]; //Although not sorted alphabetically, this will work as both Monster ID and name share the same position in their respective lists in this example. The script kills all summoned monsters if 5 or less remain, because it's boring if you have to teleport 2000 times to find the last ones. To change this, go to "if(mobcount($@Map$,strnpcinfo(3)+"::OnMobKill") <=5)" in the script and replace the last number with the desired amount. Well, have fun with it! Downloads: Monsterinvasion - German Version Monsterinvasion - English Version Monsterinvasion - Spanish Version Credits: BlackScythe, who translated the script to spanish. Thanks very much! Link to eAthena post:http://www.eathena.w...howtopic=282806 Monsterinvasion-de.txt Monsterinvasion-en.txt Monsterinvasion_es.txt
    1 point
  4. Hello eAthena.net Board, I searched for a MVP Arena here on theese Forums,and I didn't see one,so I started scripting my own one,and now I'm going to release it for everyone who needs a MVP Arena. Do not do the following: - Claim my Work as yours - Download the Script and edit the Name to your name and release it again. - Use it without having the Credits at the top of the Script. - Editing the Script and removing my name from the Script. - If you edit the Script ALWAYS give the link to this Topic,too. You are allowed to do this : - Edit the Script ,but you have to add my name at the top of the Script,and give a link to this topic! - Download the Script and use it for your Server Thank you. Now to the Script: Price for spawning 1 normal MVP is 50.000.000 Zenny Price for spawning 1 Lighthalzen MVP or Thanatos is 250.000.000 Zenny. You can edit this here : set .@zenyCost, 50000000; // EDIT THIS TO YOUR ZENNY COST!! set .@zenyCost2, 250000000; // EDIT THIS TO YOUR ZENNY COST!! Script : http://pastebin.com/ZYK0WmaW MVP_Arena.txt //##################################################################### //# # //# ##### # ######## # # ##### ## # # # //# # ### ## # # # # # # ### # //# #### # # ## ###### #### # # # # # # //# # ####### ## # # # # # # ####### # //# ##### # # ## # # ##### # ## # # # //# # //##################################################################### // // //=========== Script for eathena Users ====================// //MVP Arena made by Rikimaru on eathena .net ==============// //=========================================================// //======== Description ====================================// //== Easy made MVP Arena with all MVP's except the new ====// //== Renewal MVP's. Do not remove the Credits =============// //== Price to spawn 1 MVP is 50.000.000 Zenny =============// //== Price for Thanatos or LHZ MVP's is 250.000.000 Zenny =// //== Do not Remove theese Credits =========================// //================= Version : =============================// //============= V. 1.0 Bug Fixes by Rikimaru ==============// //=========== Credits End =================================// // // //===================== Script of the MVP Warper ==========// MAP_NAME,XXX,YYY,5 script MVP Warper 101,{ mes "[ MVP Warper ]"; mes "I can warp you to the MVP Room,do you want to go there?"; next; switch(select("Yes!:No!")) { case 1: mes "[ MVP Warper ]"; mes "Okay I'm going to warp you."; warp "guild_vs1",50,50; close; case 2: mes "[ MVP Warper ]"; mes "Okay bye!"; close; } } //========================= First Script End =============// //================== MVP Summoner ========================// guild_vs1,50,57,5 script MVP Summoner 790,{ mes "[ MVP Summoner ]"; mes "Hello,I'm able to spawn MVP's."; mes "Which MVP do you want me to spawn?"; mes "1 MVP costs 50.000.000 Zeny"; mes "LHZ MVPs and Thanatos have a"; mes "cost of 250.000.000 Zenny."; set .@zenyCost, 50000000; set .@zenyCost2, 250000000; next; switch(select("Amon Ra:Assassin Croos Eremes:Atroce:Bacsojin:Baphomet:Beelzebub:Dark Lord:Detale:Doppelganger:Dracula:Drake:Eddga:Evil Snake Lord:Fallen Bishop:Garm:Gloom Under Night:Golden Thief Bug:Gopinich:High Priest Magaleta:High Wizard Katrinn:Ifrit:Incantation Samurai:Kiel D-01:Stormy Knight:Ktullanux:Lady Tanee:Lord Knight Seyren:Lord of Death:Maya:Mistress:Moonlight Flower:Orc Hero:Orc Lord:Osiris:Pharaoh:Phreeoni:RSX 0806:Sniper Shecil:Tao Gunka:Thanatos:Turtle General:Valkyrie Randgris:Whitesmith Harword:Ygnizem")) { case 1: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1511 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 2: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1647 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 3: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1785 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 4: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1630 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 5: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1039 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 6: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1874 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 7: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1272 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 8: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1719 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 9: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1046 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 10: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1389 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 11: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1112 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 12: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1115 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 13: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1418 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 14: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1871 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 15: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1252 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 16: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1768 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 17: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1086 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 18: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1885 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 19: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1649 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 20: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1651 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 21: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1832 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 22: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1492 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 23: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1734 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 24: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1251 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 25: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1779 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 26: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1688 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 27: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1646 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 28: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1373 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 29: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1147 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 30: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1059 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 31: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1150 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 32: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1087 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 33: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1190 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 34: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1038 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 35: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1157 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 36: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1159 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 37: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1623 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 38: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1650 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 39: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1583 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 40: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1708 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 41: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1312 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 42: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost; atcommand "@spawn 1751 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 43: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1648 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } case 44: mes "[ MVP Summoner ]"; mes "Okay let me check if you have enough Zenny."; if( Zeny < .@zenyCost2 ) { mes "You don't have enough money"; close; } else { set Zeny, Zeny - .@zenyCost2; atcommand "@spawn 1658 1"; mes "[ MVP Summoner]"; mes "MVP Spawned!"; close; } } } guild_vs1,31,68,5 duplicate(MVP Summoner) MVP Summoner#1 790 guild_vs1,31,31,5 duplicate(MVP Summoner) MVP Summoner#2 790 guild_vs1,68,31,5 duplicate(MVP Summoner) MVP Summoner#3 790 guild_vs1,68,68,5 duplicate(MVP Summoner) MVP Summoner#4 790 Screenshot : Comments allowed! Thank you and enjoy this. Yours, Rikimaru
    1 point
  5. Meyraw made a nice modification on how to handle packets. You can check his project there: http://code.google.com/p/eathenanext/ The main point is, the packets are no longer edited with WFIFO macros, but they are structs, with members just like in Aegis. With such system it would be easier to add support for newer clients, since we can dump those structs from Aegis leaked pdbs ( In his code as far as I remember the struct and member names does not match with aegis' ones, maybe it would worth name matching.). Adding this would be a great deal of work, breaking lot of existing patches, and probably would be better to develop it in a different branch. Opinions?
    1 point
  6. Hey, please rate 1 to 10 Loading Screens comming soon Achievement Pictures v1 v2 Website v1 v2
    1 point
  7. Hai. I'm here to give you guys a explanation on r15390. We, developers, spent a reasonable amount of time discussing what'd be a more organized, less cluttered, manner to work with pre-re and re files, and thats' what we came with. If the changeset is not clear to you, run a svn update and see how it is now. should you have any comments regarding this you'd like to share, post below.
    1 point
  8. Is it possible the Wiki Update Topic exclude from the View New Content section ?? as you can see from the below Image....it is flooded.. /. ( i shrinked the Browser before i take the Picture ,that's why it look smaller.. ) About 1 Hours later.......... Beside...this is not the first time already... Or maybe think of another way to improve this ? This feel like the same things happen a while back...during the rABotFile spamming post xD ( Erm....i forget did i posted this before or not..i didnt found it ...so i post it here ,Anyway if i did repeat topic ...please remove this topic. )
    1 point
  9. Or you can just go to the subforum and click the icon of the subforum. It'll mark all topics in that sub-forum read. =P
    1 point
  10. Next time just use http://www.downforeveryoneorjustme.com/eathena.ws
    1 point
  11. View New Content > Other > Filter by forum (bottom-left) > Mark all forums except the ones you don't want to follow > Save > Profit???
    1 point
  12. It's good to know such a guide is in the works. Actually, I think this is a critical thing to get right as soon as possible. On the long run you're going to be the best shot at having playable, balanced 3rd classes and other future content. People, not just admins, need to become aware of that. They need you and you need them if rAthena is going to become a success.
    1 point
  13. Hi, In npc/merchant/refine line from 570 to 591 you must change the 0 by 1 and you will have what you are looking for (at least in part). Ex: callfunc "refinemain","Hollgrehenn",0; becomes callfunc "refinemain","Hollgrehenn",1;
    1 point
  14. No, I'm afraid it's a bit more complex. I have already played around a bit with the matter and sleep/sleep2 are also affected. I have also submitted a bug-report: http://rathena.org/board/tracker/issue-5199-avoiding-the-delay-of-sleep-and-progressbar/
    1 point
  15. add the party lock mapflag try this mapname mapflag partylock this will prevent them from modifying any things related with Party... well..if the script work just fine...i am okay with it......
    1 point
  16. hmm, 1.Which OS are u using? 2.Did you check if after starting rathena ... you can see them in the process manager-If they are really running. 3.If 2nd is yes then you must be blocking the ports.you have to stop the services which is blocking them.Probably the iptables service
    1 point
  17. I think only *.sql scripts should be organized in the same fashion as db folder. I don't see any reason to rename tables.
    1 point
  18. yes we will be upgrading the sql dbs as well, should be soon, in a future commit
    1 point
  19. This is a mini event that player can sign the number to the setting number. As long as player reach the target number ,he can get the prize. My idea from there and due to the new year 2012 come ,so my default lucky number is 2012 sign_number_event.txt
    1 point
  20. It would be reasonable to make a transition period, where GM level funcionality would be still available but marked as deprecated, throwing Warnings and stuff every time it's used.
    1 point
  21. So yes, I think we could add this if it's reworked. And we also need to sort out possible license issue with that GeoIP data.
    1 point
  22. Well, some of the protection needs/should be on the client side, it is hard/impossible to make a proper server side only solution to protect servers from wpe/rpe/macros. Moreover, once we implement something, since rA is open source, it will be easy for everybody to analyze the code, and search for a workaround.
    1 point
  23. Yeah I had that socket error once too. That was because I had LAMP and original mysql installed, (wich enter in conflict for socket). Is it your case too ? If so open /etc/mysql/my.cnf and change socket path for the one you want to use. From what I'm seen you probably want something like /var/run/mysqld/mysqld.sock. (Just do a locate or find on mysqld.sock to found out your path otherwise)
    1 point
  24. You need to announce the torrent on a tracker or few, eg http://publicbt.com/
    1 point
  25. CloudFlare caches static content (like images, CSS, etc.) and "2 hours" is the lowest we can set the TTL. Check back tomorrow and the cache should have refreshed by then XD I realize that is an inconvenient solution, but our other options are: add some code so the board sends a "purge cache" request to CloudFlare each time someone changes their profile picture, profile background, or any static resource ^ this would somewhat reduce the effectiveness of the CDN part of CloudFlare. Too bad they don't have a way for us to just purge/expire 1 cached image. edit IPB to serve those images (profile pictures, background images) from a sub-domain that does NOT pass through CloudFlare's CDN, so there is no caching ^ this would remove the CDN and caching benefits =[ stop using CloudFlare
    1 point
  26. Не помогло =/ какие лучше Lua файлы для этого exe?
    1 point
  27. The title of the topic.. I think it is not a question anymore
    1 point
×
×
  • Create New...