Leaderboard


Popular Content

Showing content with the highest reputation since 12/11/2018 in Posts

  1. 10 points
    Hello folks Still around making graphics. No much time to make a fancy presentation ... you know me; I know you so ... Here is a Prontera renewal map. Whats new? well I did it in 3 days. Right only 3 days. With a method that combines a bit of coding, a scup of 3D... hexing and a pinch of photography (psst I work as photographer IRL ) ... so I can melt all of that and make themed prontera maps very fast. Very fast. I tried my luck updating the very old valentines prontera with a renewal look. Some melted cocoa, bars of chocolate on floor, powdered chocolate on roofs and topping... Who can't love topping? The screenshots below. Happy Valentines; love you all
  2. 9 points
    December Digest 2018 The following digest covers the month of December 2018. Staff Changes: None Development Highlights: CORE: Fixed possible string out of bounds in configurations (9dbd3cb) Corrected White Imprison and reflected damage (40a4edc4) Corrected vector issue (2f5e1203) Fixed Renewal bBaseAtk readparam returning wrong value (32c68c73) Fixed clearing of sp_vanish_race (4cff45b8) Fixed missing login date for guild members (18f9574a) Fixed Skill Damage Database parsing (2d4a5949) Fixed pre-renewal atk (e8a7daec) Fixed homunculus auto feed for broken luas (9183a54a) Fixed SU_GROOMING while being frozen (7fa903ce) Fixed CN Meteor and Lunatic Carrot Beat damage (faee0cde) Fixed zero termination for bg messages (742232d5) Corrected some Summoner skills (570c07d5) Removed deprecated SI constants from src (e3dd6238) Fixed wrong replacements of CD_CURRENT_ECONOMY (732059ac) Unified infinite tick usage (016d15b7) Corrected AutospellOnSkill (75aef6a5) Fixed autobonus removal (fb81e2d7) Switched supported client to Ragexe (ec3b7077) Fixed unknown map in character select (1c987de7) Added support for viewpointvalue command (49444912) Corrected some statuses and Mado Gear interaction (0d816975) Added support for 64bit ticks (01f61cfa, 46138645) Added a missing check to TK_HIGHJUMP (63bfd611) Fixed reloadmobdb status calculation (8e58f2ce) Initial Release of Equipment Switch (818ff109, f5f377a7) DATABASE: Updated Lasagna Boss spawn (9f24814a) Changed equippable jobs for some items in pre-re/item_db.txt (93cf1881) Changed Thanatos gears to Thanos in item_db.txt (f5b546d6) Corrected job mask of some items (818f35ab) SCRIPT: Ghost Palace instance NPC name fixes (b87a1758) Fixed Taekwon Jobchanger Location (200b55e0) OTHERS: Fixed a documentation typo for bDropAddClass (9f880768) Disabled iterator sanity checks on VS (7c271d7e) Added epoll support on linux (eb2e40c3) List of Contributors: @4144, @admkakaroto, @aleos89, @Atemo, @AzarthMZintos, @Balferian, @Encon21, @Everade, @exneval, @Haikenz, @laziem, @Lemongrass3310, @MathReaper, @mrjnumber1, @nubspixel, @Playtester, @RadianFord, @reunite-ro, @Rolfxx, @secretdataz, @teededung, @Tokeiburu, @vstumpf, @whupdo, @yoonjunho72, @zackdreaver January Digest 2019 The following digest covers the month of January 2019 Staff Changes: None Development Highlights: CORE: Fixed Full Blast delay on attack and using items (4ec0c010) Corrected item bonus FixedCastRate (59593652) Fixed Reflect Damage not reflecting damage (7282dd87) Adjusted reload item database (444d7394) Refactored achievement conditions (4706115d) Fixed points command using negative numbers (6c1d1a84) Fixed a few more leftovers from 64bit tick (a5fc39e0) Corrected skills that give bonuses while sitting (b1865b31) Fixed CDP not failing when haven't met the requirements (a9f868f8) Corrected a few potential crash points (6c864927) Fixed a crash from MVP Ladder Warper (db3267a8) Updated Quagmire status removal list (626c2b7f) Disconnect player on map-server switch failure (19eef173c) Corrected status attack's element (298cfefd2) DATABASE: Corrected Honor Token weight (246dd2aa) Corrected Faceworm Larva Card bonus (1d0a2238) Corrected Cat Ear Beret bonus (6c6baff1) Fixed Costume Pocketwatch Hair Ornament location (394b16b8) Corrected Palace Guard Cap bonus (24c121b7) Added missing Costume Flying Galapago (f49c68f7) Fixed duration for items 12274 and 12275 (39906dac2) Corrected Shadow Staff script error (8839fe95) Corrected Owl Viscount Silk Hat script error (ec305337) Fixed pre-re Barricade HP value (d5ca1c73) Corrected Card/Enchant Combos (6bea2da3) Item db update (9cd9cab2) Update re/item_trade.txt based on itemmoveinfov5 (54b2cf32) Corrected Sarah's Battle Robe bonus (9d272f8f) Corrected Sling Item bonuses (fe12d6f0) SCRIPT: Added Clothing Effect Removal Service (8ed8fd1a) Change Magic Gear Master NPC name to Mado Gear Armourer for Renter Merchants (02c69f64) Added new Rebellion Shops (f3bb7e4b) Fixed wrong exp values on 13.1 and 13.2 quests and other minor fixes (c96671fc) Removed noicewall mapflag from several instance maps (79dffbd7) Updated OnTouch Royal messenger NPC (53498865) Updated NPC locations according client's navi file (b1b9720f) Fixed variable typo in agit_main_se.txt (43b3bc08) Fixed Hunting Missions (ad960e47) OTHERS: Allow increasing connection limit on linux (8ae788b6) Add missing unit type documentation (de70e498) Added MS support for the function macro (e415e642) Changed skip into error (de8c707f) List of Contributors: @aleos89, @Angelic234, @Atemo, @attackjom, @Badarosk0, @Balferian, @bgamez23, @BrOgBr, @cydh, @Daegaladh, @danielbernard, @darhylism, @Everade, @Indigo000, @Kezzo, @laziem, @Lemongrass3110, @LunarSHINING, @mrjnumber1, @Normynator, @nubspixel, @RadianFord, @rAthenaCN, @sigtus, @teededung, @Tokeiburu, @zackdreaver
  3. 7 points
    Bonus Expansion Pack Introduction As some of you may know, a long time ago I made a patch for eAthena which included an expanded collection of bonus script commands which could be used on items. I'm guessing this was somewhere in the region of 10 years ago now, so I think it's probably fitting that a newer version be developed. So, development hasn't started yet as I need to dig up the old list and identify which ones haven't already been implemented/which ones can actually be implemented against the new code base. Requests This topic will serve as the base for any and all requests. The purpose of this project is to develop new bonus script commands, or augment existing ones by adding more specific or extra versions. I'm open to the community for any suggestions and requests for the bonuses which will be introduced. Please don't request things like new at-commands or new script commands as I'd like to keep this project specific to bonuses, however I might end up developing some script commands if I find that they're necessary to accomplish a bonus. Pending Implemented Usage The development will take place on a fork of rAthena under a separate branch. Once the initial version is complete I will generate a patch file which can be applied against the master branch of an rAthena repository. Please be advised that I won't be providing support for previous revisions (for example, if you're running a version of rAthena which was available 4 months prior to my patch.) My intention is to keep the forked branch up-to-date with periodic merges of the master branch, and produce new patch files whenever this takes place (and keep historical patches) Thanks
  4. 6 points
    Hola a todos!, despues de un tiempo he decidido hacer una montura para GM ya que son los unicos que no he visto que tengan uno. Obiamente es personalizado, espero que les guste!. ------------------------------------------------------------------------------ English Hello everyone, after a while I decided to make a mount for GM because they are the only ones I have not seen that have one. Obviously it is personalized, I hope you like it!. Personalmente no me comvencio del todo la montura de la GM femenina, ya que su postura no coincide perfectamente con los perfiles, es decir la manera o la pose en la que esta sentada... me gustaria modificarle o crear otro cuerpo con una pose distinta pero no tengo mucho talento en el pixel art, si alguien desea ayudarme bienvenido sea! Tambien quisiera modificarle el radio o el tamaño de la sombra de bajo de sus monturas para que se vean acorde a la dimension de la misma, pero nose donde es que se configura, alguna sugerencia? Tengo otros detalles y proyectos en mente tambien que me gustaria hacer y compartir, pero necesito una mano jeje. Saludos! ----------------------------------------------------------------------------------------------- English Personally I do not fully commend the female GM's mount, since her posture does not perfectly match the profiles, that is, the way or the pose she is sitting in ... I would like to modify her or create another body with a different pose but I do not have much talent in pixel art, if someone wants to help me, be welcome! I would also like to modify the radius or size of the bass shadow of their frames so that they look according to the size of the frame, but I do not know where it is configured, any suggestions? I have other details and projects in mind too that I would like to do and share, but I need a hand hehe. Regards!
  5. 5 points
    View File Ragnarok Emojis v2.0 __________***PLEASE READ***__________ I updated a variety of ragnarok emojis. Example: became > Feel free to do whatever with the graphics. Use parts of it or fully, use them as a base or else - but please follow these rules: ________________________________________ Rules: Do not sell these graphics to anyone. Do not ask me to fix, adjust or change something unless you're willing to pay for it. If you upload them somewhere for others to download, please credit me and/or link back to herc.ws's download section. Contains: Ragnarok Emojis Contact Discord: 방탄#4526 Submitter Daifuku Submitted 02/10/2019 Category Other Video Content Author Daifuku  
  6. 5 points
    View File Customize your iteminfo with import this an example and template on how you Customize your iteminfo read the ReadMe!! file before you ask anything this work as the import folders in rathena (if you don't know what i mean than i suggest you use rathena search or google) ALL THE FILES MUST BE .lua !!! the way it work: you add your custom and edited items in the import iteminfo file you add kro iteminfo file you add the server url in the function file the client will read the iteminfo import first than the kro iteminfo than you can update your kro iteminfo at anytime you need without any edit to it without the need to re-add your custom and edited items to a new kro iteminfo the kro_iteminfo included is from https://github.com/zackdreaver/ROenglishRE this file is added for example on how you use it i suggest you get the last iteminfo after you make sure there is no error! i would highly suggest you check out his great project every time you want to update your iteminfo! Please report any error in the forum post not in the PM , Thanks. Submitter sader1992 Submitted 02/21/2019 Category Client Resources Video Content Author sader1992 , zackdreaver  
  7. 5 points
    Latest Version : Version 2 Second Upload ( 02/20/2019 ) Version 1 : First Upload ( 09/18/2017 ) I hope someone upload this on our forum to make it easier to find This is not MINE but credits to the OWNER ! collection of RO Chibi from Web (c) Gravity Co., Ltd. & Lee MyoungJin(studio DTDS). All rights reserved.(c) GungHo Online Entertainment, Inc. All Rights Reserved.当コンテンツの再利用(再転載・配布など)は、禁止しています。
  8. 5 points
    View File Sader's File Verifier Sader's Files Verifier Version 2.0.1: Adding Pre-Compiled Version so Visual Studio is not needed if you only want it to run without any customization . Version 2.0: Adding Design . Adding support for Multiple folder layer . Adding Pre-Compiled Version pre_compiled_generator.zip no need for visual studio , you just need to fill out the information and generate the file >> it will build Sader Files Verifier.exe and get_information.exe in the directory you run the program from this how it look an application that check the files you want to check and download if they are missing or corrupt this program in C# , Visual Studio 2019 , and need .Net 4.5 (you can lower the version if you put some work in to it) https://github.com/sader1992/sader_files_verifier Video on how to setup (slow it down if you can't follow my steps) [This video with the non design version 1.0 but it's the same thing] this file made for Ragnarok private servers community you better not add the data.grf and rdata.grf as files as the player better just re-download the full client again do not add your custom.grf as you will edit it every update , unless you are planing to generate new information file every update same thing for your .dat from Thor Patcher don't add it if you have custom.grf that you will never change with the updates , you can add it i would recommend that DO NOT ADD THE PROGRAM IT SELF TO THE information FILE!!! this to do list i may or may not do it , however you are free to do it your self! TODO: Encrypt information.txt Compress uploaded files and decompress after download Submitter sader1992 Submitted 02/23/2019 Category Client Tools Video https://youtu.be/-tL8g4JS6PU Content Author sader1992  
  9. 5 points
    Hi, If interest, wanted to introduces you rAthena Studio. Is a Cross-Platform tool for manage, setting and configuring rAthena Server. Written in Qt C++. Compatible 100% for Windows, Linux and Mac. and OpenSource. Actually is in progress. But are available for testing and configure simple 4 step to run rAthena in public ip. Screen: Reposity is public and open for all future Developer and more. and Join on Discord Next, more feature, client patch and more....
  10. 5 points
    Greetings, everyone. New content for Valentine's Day were added: Valentine's Day 32bit Headgear Auras All of them available in 12 colours. And if you haven't had the time, I've also recently added a new freebie:
  11. 4 points
    It will be fixed in next update. New update for Extended Battleground (still pending approval): - Updated to Git Hash: f6ed415 - Added emblem visualization in Flags. - Fixed BG/WoE items usage in BG/WoE maps (thanks @Haruka Mayumi) - Big Update in NPC Repository: https://github.com/xEasycore/ExtendedBG: - Added Happy Hour system - Added @bghappyhour command to Enable/Disable Happy Hour - Added configuration for Happy Hour in bg_common.txt - Fixed Flag Emblem in Triple Inferno/Conquest - Fixed noemergencycall mapflag - Rewrote code-style - Minor bugs fix
  12. 4 points
    Script to solve various functions by chat 채팅으로 여러가지가 가능합니다 very THX to "pajodex & annieruru & n0tttt" "pajodex & annieruru & n0tttt" 세 명에게 감사하다는 인사를 전합니다
  13. 4 points
    @Eros @Haruka Mayumi You can remove ID of this effect from "..\data\luafiles514\lua files\effecttool\forcerendereffect.lub" Fury Cast Animation == 261
  14. 3 points
    Hi, i began to script and edit src since 2 years now, for french pserv, i decided to share you this. It's a small feature inspired by pc_update_last_action function of eAthena. I don't have bring together all changes yet, i just poste a video to show you what it look like, and if someone is interested, i'll post a file. And sorry if the topic is not in the good place. I don't know if somethings like this exist actualy AFK MODE: A npc will check every 1 minute, can be change, the idle time of all online player. If the player is idle since to long, he's considired AFK, and all can see a Afk Hat on is head. Afk state is automaticaly set to 0 when the player active idle_time trigger, that can be configurate in ./conf/battle/player.conf There is also a @afk command, and pcisafk command script: @afk make the player in Afk state. pcisafk is used by the npc to check or change the afk state. So here the package (Source modification + Script) : Afk_Mode.rar Edit: Something like that has been made before, it's not the same release but i put it here:
  15. 3 points
    Hello friends, I want to introduce my simple craft system, here you can collect resources for your farm, city, or mission. My game is based on a medieval time where workers (players) need to collect things to stay strong
  16. 3 points
    100% scripting btw scripting is my absolute strong point https://irowiki.org/wiki/War_of_Emperium#Benefits - script ksdjfs FAKE_NPC,{ OnMinute00: for ( [email protected] = 0; [email protected] < 20; [email protected] ) { if ( getcastledata( .castle$[[email protected]], CD_GUILD_ID ) ) { if ( rand(100) < 50 ) { // 50% chance setcastledata .castle$[[email protected]], CD_GUILD_ID, 0; donpcevent "Agit#"+ .castle$[[email protected]] +"::OnStartArena"; } } else { if ( rand(100) < 50 ) // 50% chance setcastledata .castle$[[email protected]], CD_CURRENT_ECONOMY, getcastledata( .castle$[[email protected]], CD_CURRENT_ECONOMY ) - 5; } } end; OnInit: setarray .castle$[0], "aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05", "gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05", "payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05", "prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05"; end; } npc/guild/agit_main.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/npc/guild/agit_main.txt b/npc/guild/agit_main.txt index c2925487c..964e701fb 100644 --- a/npc/guild/agit_main.txt +++ b/npc/guild/agit_main.txt @@ -1135,8 +1135,8 @@ OnClock0001: set [email protected], GetCastleData(strnpcinfo(2),CD_GUILD_ID); - // If there is no owner, do nothing. - if ([email protected]) end; + // only spawn treasure chest when there is no owner + if ([email protected]) end; // Is there Economy in this castle? set [email protected],GetCastleData(strnpcinfo(2),CD_CURRENT_ECONOMY)/5+4; npc/guild/agit_main.txt | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/npc/guild/agit_main.txt b/npc/guild/agit_main.txt index c2925487c..abe5c3cda 100644 --- a/npc/guild/agit_main.txt +++ b/npc/guild/agit_main.txt @@ -657,22 +657,18 @@ OnRecvCastle: else if (([email protected] >= 86) && ([email protected] <= 90)) { set [email protected]_invest,770000; } else if (([email protected] >= 91) && ([email protected] <= 95)) { set [email protected]_invest,860000; } else if (([email protected] >= 96) && ([email protected] <= 100)) { set [email protected]_invest,955000; } - //Quadruple the cost of investing if you've already invested once. - if (GetCastleData(strnpcinfo(2),CD_INVESTED_ECONOMY)) { - set [email protected]_invest,[email protected]_invest*4; - } mes "["+strnpcinfo(1)+"]"; mes "If you invest in commercial growth, the quantity of goods made by the guild will increase. Therfore, if you consider our future, investments will be a necessity."; mes " "; - mes "Initially, you are able to invest just once but if you pay more money, you will be able to invest twice."; + mes "You are able to invest just once."; if ([email protected] >= 100) { mes " "; mes "^ff0000The commercial growth level of our Castle is at it's highest, 100%. No more investments are needed. Just as I have expected from a great economist like you, Master.^000000"; close; } - if (GetCastleData(strnpcinfo(2),CD_INVESTED_ECONOMY) >= 2) { + if (GetCastleData(strnpcinfo(2),CD_INVESTED_ECONOMY) >= 1) { mes " "; - mes "^ff0000You have already invested twice today. You cannot invest any more.^000000 I expect riches of the guild to grow at a high rate."; + mes "^ff0000You have already invested today. You cannot invest any more.^000000 I expect riches of the guild to grow at a high rate."; close; } if (GetCastleData(strnpcinfo(2),CD_INVESTED_ECONOMY) == 0) { npc/guild/agit_main.txt | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/npc/guild/agit_main.txt b/npc/guild/agit_main.txt index c2925487c..fd76a0582 100644 --- a/npc/guild/agit_main.txt +++ b/npc/guild/agit_main.txt @@ -177,17 +177,57 @@ OnRecvCastle: if (compare(strnpcinfo(2),"aldeg")) { // Normal Spawns monster strnpcinfo(2),0,0,"Evil Druid",1117,10; + for ( [email protected] = 0; [email protected] < 10; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1117, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1117, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Khalitzburg",1132,4; + for ( [email protected] = 0; [email protected] < 4; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1132, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1132, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Abysmal Knight",1219,2; + for ( [email protected] = 0; [email protected] < 2; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1219, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1219, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Executioner",1205,1; + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1205, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1205, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; monster strnpcinfo(2),0,0,"Penomena",1216,10; + for ( [email protected] = 0; [email protected] < 10; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1216, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1216, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Alarm",1193,18; + for ( [email protected] = 0; [email protected] < 18; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1193, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1193, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Clock",1269,9; + for ( [email protected] = 0; [email protected] < 9; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1269, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1269, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Raydric Archer",1276,7; + for ( [email protected] = 0; [email protected] < 7; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1276, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1276, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Wanderer",1208,3; + for ( [email protected] = 0; [email protected] < 3; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1208, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1208, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + } monster strnpcinfo(2),0,0,"Alice",1275,1; + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1275, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1275, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; monster strnpcinfo(2),0,0,"Bloody Knight",1268,1; + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1268, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1268, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; monster strnpcinfo(2),0,0,"Dark Lord",1272,1; + setunitdata [email protected][[email protected]], UMOB_MAXHP, getmonsterinfo( 1272, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; + setunitdata [email protected][[email protected]], UMOB_HP, getmonsterinfo( 1272, MOB_MAXHP ) * getcastledata( strnpcinfo(2), CD_CURRENT_ECONOMY ) / 100; // Set Emperium room spawn coordinates and spawn monsters. if (strnpcinfo(2) == "aldeg_cas01") { setarray [email protected][0],216,23; } else if (strnpcinfo(2) == "aldeg_cas02") { setarray [email protected][0],213,23; } lazy to do the rest ... anyway you get the point disable the npc/guild/agit_controller.txt file and use this - script ksdjfs FAKE_NPC,{ OnInit: agitstart; end; } npc/guild/agit_main.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/npc/guild/agit_main.txt b/npc/guild/agit_main.txt index c2925487c..d979649fa 100644 --- a/npc/guild/agit_main.txt +++ b/npc/guild/agit_main.txt @@ -769,6 +769,8 @@ OnRecvCastle: } case 4: mes "["+strnpcinfo(1)+"]"; + mes "Summon a Guardian is disabled"; + close; mes "Will you summon a Guardian? It'll be a protector to defend us loyally."; mes "Please select a guardian to defend us."; next; for me, it is easy as 1 2 3 , A B C npc/guild/agit_main.txt | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/npc/guild/agit_main.txt b/npc/guild/agit_main.txt index c2925487c..133012e87 100644 --- a/npc/guild/agit_main.txt +++ b/npc/guild/agit_main.txt @@ -177,17 +177,45 @@ OnRecvCastle: if (compare(strnpcinfo(2),"aldeg")) { // Normal Spawns monster strnpcinfo(2),0,0,"Evil Druid",1117,10; + for ( [email protected] = 0; [email protected] < 10; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Khalitzburg",1132,4; + for ( [email protected] = 0; [email protected] < 4; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Abysmal Knight",1219,2; + for ( [email protected] = 0; [email protected] < 2; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Executioner",1205,1; + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; monster strnpcinfo(2),0,0,"Penomena",1216,10; + for ( [email protected] = 0; [email protected] < 10; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Alarm",1193,18; + for ( [email protected] = 0; [email protected] < 18; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Clock",1269,9; + for ( [email protected] = 0; [email protected] < 9; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Raydric Archer",1276,7; + for ( [email protected] = 0; [email protected] < 7; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Wanderer",1208,3; + for ( [email protected] = 0; [email protected] < 3; [email protected] ) { + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; + } monster strnpcinfo(2),0,0,"Alice",1275,1; + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; monster strnpcinfo(2),0,0,"Bloody Knight",1268,1; + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; monster strnpcinfo(2),0,0,"Dark Lord",1272,1; + setunitdata [email protected][[email protected]], UMOB_LEVEL, 99; // Set Emperium room spawn coordinates and spawn monsters. if (strnpcinfo(2) == "aldeg_cas01") { setarray [email protected][0],216,23; } else if (strnpcinfo(2) == "aldeg_cas02") { setarray [email protected][0],213,23; } change all monsters to level 99 yes, 1. it happens to be using agitstart2 ... 2. use npc\guild2 folder ... 3. rathena also has woe training edition ... btw you ask too many question at once
  17. 3 points
    That's because Hercules doesn't have it properly implemented. (See Git Hash: 842e30e). Using progressbar in an item script isn't something I would suggest as there is a bit of logic behind it that will break any bonuses after the progressbar if the player walks.
  18. 3 points
    Hi guys! Maybe someone translate it and pull to our git Recently, there are requests for missing NPCs and I decided to help the project a bit with updating the NPCs like this issue: Issue: 3916, Issue: 3681, Issue: 3772, Issue: 3498 Not all scripts are complited yet, but i will update it when I find more information/test it in kRo. Missed shop with hats prt_in,117,79,5 shop 장난감상인#prt 715,2239:-1,2201:-1,2243:-1,2212:-1,2242:-1,2241:-1 Character Position Change Coupon seller prt_in,211,173,3 script 슬롯 이동 카드 판매#slo 4_F_01,{ // 885 mes "[판매원]"; mes "안녕하세요."; mes "<ITEM>[슬롯 이동 카드]<INFO>12786</INFO></ITEM>를 판매하고 있습니다."; mes "^4d4dff카드를 사용한 캐릭터의 슬롯 위치를 변경^000000할 수 있습니다."; next; mes "[판매원]"; mes "매 주 한정 수량으로 판매하고 있으므로, 아무것도 보이지 않는다면"; mes "물품이 모두 소진 된 것이니 다음에 다시 와주세요."; close2; callshop "change_slot#slo"; end; OnClock0000: if (gettime(DT_DAYOFWEEK) == 1) npcshopupdate "change_slot#slo",12786,0,9999; end; } - marketshop change_slot#slo FAKE_NPC,12786:100000:9999 Emperium seller prt_in,212,169,3 script 길드 사무직원 4_M_04,{ // 1890 if (gettime(DT_DAYOFWEEK) >= 1 && gettime(DT_DAYOFWEEK) <= 6 && gettime(DT_HOUR) >= 18 && gettime(DT_HOUR) <= 23) { mes "[길드 사무직원]"; mes "길드 사무소에 오늘 하루 배포될 엠펠리움이 도착했습니다. 구매를 원하시면 원하는 만큼 담아주세요~"; next; mes "[길드 사무직원]"; mes "오늘은 왠지 엠펠리움을 찾는분들이 많을 것 같군요. 그냥 개인적인 기분입니다."; close2; callshop "emp_seller#slo"; end; } mes "[길드 사무직원]"; mes "저희 길드 사무소에서는 모험가님들의 원활한 모임을 적극 지지합니다"; next; mes "[길드 사무직원]"; mes "그 일환으로 ^0000ff월요일~토요일^000000"; mes "매일 100개 한정수량의 <ITEM>엠펠리움<INFO>714</INFO></ITEM>을"; mes "오후 ^0000ff18:00~23:59^000000 까지 판매하고 있습니다."; next; mes "[길드 사무직원]"; mes "이외의 시간에는 저희 길드사무소도 엠펠리움 수급을 위해서 뛰어다녀야 하기 때문에 판매를 하지 않으니 참고하십시오."; close; OnClock0000: if (gettime(DT_DAYOFWEEK) == 1) npcshopupdate "emp_seller#slo",714,0,100; end; } - marketshop emp_seller#slo FAKE_NPC,714:1000000:100 // Need to check item price Wedding shop dealer (changed coordinate & added ring for sell) link prt_in,211,169,0 shop Wedding Shop Dealer#prt 71,744:-1,745:-1,2338:-1,2206:-1,7170:-1 changed to: prt_in,285,169,0 shop Wedding Shop Dealer#prt 71,744:-1,745:-1,2338:-1,2206:-1,7170:-1,2613:-1 Family relationship guide - in progress prt_in,285,167,3 script 인지와 반지각인#we 4_DR_F_01,{ // 1936 mes "[에밀리]"; mes "안녕하십니까, 선생님. 무엇을 도와드릴까요?"; next; switch(select("여기선 뭘 하나요??:인지 구입:반지에 이름을 새겨 주세요.")) { case 1: mes "[디탈리]"; mes "어떤 것에 대한 안내가 필요하십니까?"; next; switch(select("인지:반지에 각인:안내는 필요 없어요.")) { case 1: mes "[디탈리]"; mes "이곳에서는 인지가 부착된 혼인 서약서와 독립 인증서를 발급하고 있습니다."; next; mes "[디탈리]"; mes "^0000cd결혼식에는 혼인 서약서^000000가, ^0000cd세대 분리에는 독립 인증서^000000를 소지하고 있어야 민원이 진행됩니다."; next; mes "[디탈리]"; mes "필요하신 증서를 확인하신 후에 저에게 신청을 하시면 인지가 부착된 증서를 드립니다."; next; mes "[디탈리]"; mes "어떤 것에 대한 안내가 필요하십니까?"; close; case 2: mes "[디탈리]"; mes "결혼식을 마치고 정식으로 부부가 되신 분들이 나눠 끼신 ^0000cd결혼 반지^000000를 가지고 오시면 ^0000cd소정의 비용만^000000을 받고 ^0000cd배우자분의 이름^000000을 새겨드립니다."; next; mes "[디탈리]"; mes "평생을 간직할 소중한 추억이 되실 겁니다."; next; mes "[디탈리]"; mes "어떤 것에 대한 안내가 필요하십니까?"; close; case 3: mes "[디탈리]"; mes "도움이 필요하면 언제든지 찾아 주시길 바랍니다."; close; } case 2: mes "[디탈리]"; mes "어떤 인지의 구매를 도와드릴까요?"; next; switch(select("혼인 서약서:독립 인증서")) { case 1: mes "[디탈리]"; mes "죄송하지만 소지하신 금액이 부족합니다."; next; mes "[디탈리]"; mes "인지가 부착된 혼인 서약서의 가격은 ^0000cd1,500,000제니^000000입니다."; next; mes "[디탈리]"; mes "소지금을 확인하신 후 다시 이용해 주십시오."; close; case 2: mes "[디탈리]"; mes "죄송하지만 독립 인증서는 자녀분이 있는 ^0000cd부모^000000이거나 독립 대상자인 ^0000cd베이비^000000인 경우에만 구입하실 수 있습니다."; close; } case 3: mes "[디탈리]"; mes "죄송합니다. 결혼반지에 이름을 새겨드리는 서비스는 ^0000cd기혼자를 대상^000000으로 합니다."; close; } } Written Oath Of Marriage prt_in,285,167,3 script 인지와 반지각인#we 4_DR_F_01,{ // 1936 mes "[에밀리]"; mes "안녕하십니까, 선생님. 무엇을 도와드릴까요?"; next; switch(select("여기선 뭘 하나요??:인지 구입:반지에 이름을 새겨 주세요.")) { case 1: mes "[디탈리]"; mes "어떤 것에 대한 안내가 필요하십니까?"; next; switch(select("인지:반지에 각인:안내는 필요 없어요.")) { case 1: mes "[디탈리]"; mes "이곳에서는 인지가 부착된 혼인 서약서와 독립 인증서를 발급하고 있습니다."; next; mes "[디탈리]"; mes "^0000cd결혼식에는 혼인 서약서^000000가, ^0000cd세대 분리에는 독립 인증서^000000를 소지하고 있어야 민원이 진행됩니다."; next; mes "[디탈리]"; mes "필요하신 증서를 확인하신 후에 저에게 신청을 하시면 인지가 부착된 증서를 드립니다."; next; mes "[디탈리]"; mes "어떤 것에 대한 안내가 필요하십니까?"; close; case 2: mes "[디탈리]"; mes "결혼식을 마치고 정식으로 부부가 되신 분들이 나눠 끼신 ^0000cd결혼 반지^000000를 가지고 오시면 ^0000cd소정의 비용만^000000을 받고 ^0000cd배우자분의 이름^000000을 새겨드립니다."; next; mes "[디탈리]"; mes "평생을 간직할 소중한 추억이 되실 겁니다."; next; mes "[디탈리]"; mes "어떤 것에 대한 안내가 필요하십니까?"; close; case 3: mes "[디탈리]"; mes "도움이 필요하면 언제든지 찾아 주시길 바랍니다."; close; } case 2: mes "[디탈리]"; mes "어떤 인지의 구매를 도와드릴까요?"; next; switch(select("혼인 서약서:독립 인증서")) { case 1: mes "[디탈리]"; mes "죄송하지만 소지하신 금액이 부족합니다."; next; mes "[디탈리]"; mes "인지가 부착된 혼인 서약서의 가격은 ^0000cd1,500,000제니^000000입니다."; next; mes "[디탈리]"; mes "소지금을 확인하신 후 다시 이용해 주십시오."; close; case 2: mes "[디탈리]"; mes "죄송하지만 독립 인증서는 자녀분이 있는 ^0000cd부모^000000이거나 독립 대상자인 ^0000cd베이비^000000인 경우에만 구입하실 수 있습니다."; close; } case 3: mes "[디탈리]"; mes "죄송합니다. 결혼반지에 이름을 새겨드리는 서비스는 ^0000cd기혼자를 대상^000000으로 합니다."; close; } } Divirce information prt_in,285,165,5 script 이혼 안내#wedd 1_M_SIGNART,{ // 1935 mes "[노튼]"; mes "결혼도 안 한 사람이 이혼에 먼저 관심을 가지면 어떡하나요?"; close; } Insurance heart changer, item: 계약의 심장 its working like Life Insurance but it is etc item and no need to use it, item disappears when the character dies and its duration time is unlimited. prt_in,82,108,5 script 심장 상인#life01 4_M_NFDEADMAN2,5,5,{ // 884 mes "[심장 상인]"; mes "안녕하신가! 심장을 배 밖으로 내놓고, 대륙 곳곳을 누비며 위험천만한 스릴을 만끽하시는 모험가!"; next; mes "[심장 상인]"; mes "혹시 가지고 있는 <ITEM>["+getitemname(12209)+"]<INFO>12209</INFO></ITEM>를 더 좋은 물건으로 바꿀 생각 없어? 이를테면... <ITEM>["+getitemname(6413)+"]<INFO>6413</INFO></ITEM> 같은 걸로. 어때?"; next; switch(select("그게 뭔데요?:교환해 주세요!:관심 없어요.")) { case 1: mes "[심장 상인]"; mes "<ITEM>["+getitemname(12209)+"]<INFO>12209</INFO></ITEM>는 너희 산 자들이 사용 후 30분간 1회에 한해 사망시 경험치 감소를 받지 않게 해주는 물건이었지."; next; mes "[심장 상인]"; mes "하지만 많은 사람들이 시간에 대한 부분을 아쉬워 하더라? 그래서 내가 그걸 보고 <ITEM>["+getitemname(6413)+"]<INFO>6413</INFO></ITEM>을 준비했지."; next; mes "[심장 상인]"; mes "이 <ITEM>["+getitemname(6413)+"]<INFO>6413</INFO></ITEM>은 ^EE0000시간에 상관 없이 소지하는 것만으로도^000000 1회에 한해 사망시 경험치 감소를 받지 않게 해주는 물건이야. 물론 사망 후에 계약의 심장은 사라지지만 말이야."; next; select("왜 바꿔 주시나요?"); mes "[심장 상인]"; mes "그런게 궁금해? 나는 상인이야. 죽어서도 살아서도 물건을 사고 파는 것이 숙명이지. 돈이 될 일이 생겼는데 이런 기회를 내가 놓치겠어? 나는 돈을 벌고, 산 자들은 죽음의 고통에서 조금이라도 벗어나고. 좋은 거래잖아?"; next; mes "[심장 상인]"; mes "이쯤에서 궁금한 거 있지? 교환 비율 말이야. <ITEM>["+getitemname(12209)+"]<INFO>12209</INFO></ITEM> 5장당 <ITEM>["+getitemname(6413)+"]<INFO>6413</INFO></ITEM> 1개로 바꿔 줄게."; next; mes "[심장 상인]"; mes "어때? 손해 보는 조건은 아니잖아? 굳이 시간에 신경 쓸 필요 있어? 아찔짜릿한 모험을 즐기는 모험가라면 필수로 갖춰야 하는 물건 이지. 암~"; close; case 2: mes "[심장 상인]"; mes "그래, 그래. 잘 생각했어. 이왕 가지고 있는 걸 더 좋은 물건으로 교환하는 것이 낫지. 안그래?"; next; mes "[심장 상인]"; mes "^0000cd기존 증서 5장으로 계약의 심장 1개로^000000 바꿀 수 있어."; next; mes "[심장 상인]"; mes "다만 ^EE0000[비매품]생명보험 증서는 교환 대상에서 제외^000000되니까 그걸 가지고 와서 바꿔 달라고 해도 소용 없어."; next; mes "[심장 상인]"; mes "그럼 이제 교환해 볼까?"; next; switch(select("교환해 주세요!:교환 안할래요.")) { case 1: mes "[심장 상인]"; mes "몇 장 교환하고 싶어? ^0000cd한 번에 최대 10장까지 교환 가능^000000한데."; next; input [email protected]; if ([email protected] == 0) { mes "[심장 상인]"; mes "음? 별로 관심 없나? 이거 정말 좋은 물건인데, 정말 좋은데. 그치만 살 사람이 싫다면 나도 강요는 안해."; close; } else if ([email protected] > 10) { mes "[심장 상인]"; mes "^0000cd한 번에 최대 10장^000000까지 바꿀 수 있댔잖아. 수량을 다시 확인해 봐."; close; } else { if (countitem(12209) < ([email protected]*5)) { mes "[심장 상인]"; mes "음, 저기... 네가 가진 생명보험 증서가 부족한데? <ITEM>[생명보험 증서]<INFO>12209</INFO></ITEM> 5장당 <ITEM>[계약의 심장]<INFO>6413</INFO></ITEM> 1개야. 수량을 확인해 봐."; close; } mes "[심장 상인]"; mes "자, 이걸로 네가 가지고 있던 ^0000cd생명보험 증서^000000를 ^EE0000계약의 심장^000000으로 교환했다!! 좋은 거래였지, 그치? 다음에 증서가 생기면 또 찾아 오라고!"; delitem 12209,[email protected]*5; getitem 6413,[email protected]; close; } case 2: mes "[심장 상인]"; mes "이거 정말 좋은 조건인데! 모험가, 너처럼 이 위험천만한 곳에서 모험을 즐기려면 반드시 필요한 물건이라고!"; next; mes "[심장 상인]"; mes "나중에라도 관심이 생기면 꼭 교환하러 오기야. 알았지?"; close; } case 3: mes "[심장 상인]"; mes "이거 정말 좋은 조건인데! 모험가, 너처럼 이 위험천만한 곳에서 모험을 즐기려면 반드시 필요한 물건이라고!"; next; mes "[심장 상인]"; mes "나중에라도 관심이 생기면 꼭 교환하러 오기야. 알았지?"; close; } OnTouch: npctalk "좋은 걸 가지고 있구나. 가지고 있는 생명보험 증서를 새로운 걸로 바꿔 줄까?", "", bc_self; end; } need to modify src code: add to itemdb.hpp ITEMID_INSURANCE_HEART = 6413, // Custom name pc.cpp int pc_dead(struct map_session_data *sd,struct block_list *src) line 7917 change from if (base_penalty || job_penalty) pc_lostexp(sd, base_penalty, job_penalty); to if (base_penalty || job_penalty) { short item_position = pc_search_inventory(sd, ITEMID_INSURANCE_HEART); if (item_position < 0) pc_lostexp(sd, base_penalty, job_penalty); else pc_delitem(sd, item_position, 1, 0, 1, LOG_TYPE_CONSUME); } Pet coupons changer // Need to change coupons check function Issue: 3498 prontera,210,209,5 script 펫 교환상인#wanderman 4_M_JPNOJI,{ mes "[펫 교환상인]"; mes "장사란 건 정말 쉬운일이 아니야."; mes "나는 멀미가 심한데 이번에는 오는 길에 풍랑까지 만났지 뭔가!"; next; mes "[펫 교환상인]"; mes "아찔한 경험이었지. 덕분에 아직까지도 속이 좋지 않아. 크으……"; next; mes "[펫 교환상인]"; mes "그 보다 자네 큐펫이 필요해서 온 겐가?"; mes "티켓은 가지고 있겠지?"; next; switch(select("소유한 티켓을 검사:취소")) { case 1: // custom simple dialogs and function setarray [email protected][0],6116, 6117, 6118, 6129, 6130, 6131, 6132, 6133, 6134, 6135, 6136, 6137, 6138, 6139, 6140, 6141, 6142, 6143, 6157, 6158, 6159, 6160, 6161, 6162, 6163, 6164, 6165, 6166, 6167, 6168, 6169, 6170, 6171, 6172, 6173, 6174, 6175, 6176, 6177, 6178, 6179, 6180, 6181, 6182, 6183, 6184, 6185, 7550, 7551, 7552, 7581, 7588, 7775; setarray [email protected][0],9055, 9056, 9030, 9054, 9042, 9046, 9052, 9048, 9045, 9047, 9050, 9051, 9043, 9041, 9049, 9044, 9053, 9040, 9001, 9002, 9003, 9004, 9005, 9014, 9009, 9012, 9013, 9006, 9007, 9022, 9023, 9021, 9015, 9019, 9010, 9016, 9020, 9011, 9008, 9017, 9024, 9018, 9025, 9029, 9028, 9026, 9027, 9037, 9036, 9098, 9034, 9032, 9031; getinventorylist; // Need to change funktion to check for what coupons player have for([email protected] = 0;[email protected] < @inventorylist_count;[email protected]++){ if (compare(getitemname(@inventorylist_id[[email protected]])," Pet ")) { [email protected]$ = [email protected]$ + getitemname(@inventorylist_id[[email protected]])+":"; [email protected]_id[[email protected]] = @inventorylist_id[[email protected]]; [email protected]++; } } if ([email protected]) { mes "[펫 교환상인]"; mes "내가 원하는 물건은 없는 것 같네."; close; } mes "[펫 교환상인]"; mes "What coupon you want to change?"; next; [email protected] = select([email protected]$ + "Cancel") - 1; if ([email protected]_id[[email protected]] == 0) { mes "[펫 교환상인]"; mes "Good luck!"; close; } mes "[펫 교환상인]"; mes "Great!"; mes getitemname([email protected][inarray([email protected][0], [email protected]_id[[email protected]])]); mes "Are you shure to want this pet?"; next; if (select("Yes:No") == 2) close; mes "[펫 교환상인]"; mes "Here your pet~"; if (countitem([email protected]_id[[email protected]]) < 1) close; delitem [email protected][inarray([email protected][0], [email protected]_id[[email protected]])],1; getitem [email protected][inarray([email protected][0], [email protected]_id[[email protected]])],1; close; case 2: mes "[펫 교환상인]"; mes "바다 건너 얘기라도 듣고 싶은 모양이네만 속이 영 좋지 않구먼."; close; } } Sorry if i post it in wrong section >_<"
  19. 3 points
    I'm developing a server based on a game called Harvest Moon. Conclude the Farm system, it will accept trees, vegetables and animals. What do you think? Any suggestions? Content of the video in Portuguese.
  20. 2 points
    View File Fairy Feria Greetings rAthena! I hope you enjoy this npc of Trickster Online, it is the seventh I have done. Please do not claim my work as yours. Please do not sell it or resell it. Submitter Mael Submitted 02/15/2019 Category NPC Sprites Video Content Author Mael & Trickster Online  
  21. 2 points
    *getskilllist({<char_id>}); This command sets a bunch of arrays with a complete list of skills the invoking character has. Here's what you get: @skilllist_id[] - skill ids. @skilllist_lv[] - skill levels. @skilllist_flag[] - see 'skill' for the meaning of skill flags. @skilllist_count - number of skills in the above arrays. While 'getskillv' is probably more useful for most situations, this is the easiest way to store all the skills and make the character something else for a while. Advanced job for a day? This could also be useful to see how many skills a character has. This command does not count skills which are set as flag 4 (permament granted) (ALL_BUYING_STORE/ALL_INCCARRY) This should be a good starting point. Bind the command to a script and use getarg() to parse the char's name/ID and output the results using dispbottom. Moving to Script Requests.
  22. 2 points
    - You can use all of my artwork for free. (Google Drive) - If you like please donate, Thank you a lot! - If you want me to draw for you contact me on Discord Start#1356 ========================== This is my all Ragnarok Online 1 artwork. I draw it for my players. (Private server) Whole time at Prontera - pixiv Gullutine Cross (Female)(jRO) - pixiv Gullutine Cross (Male)(kRO) - pixiv Ranger (Male)(kRO) - pixiv Ranger (Female)(jRO) - pixiv Guillotine Cross (Male)(kRO) - pixiv
  23. 2 points
    @CyberDevil, you can safely ignore those warnings unless it is affecting the actual intended behavior of the emulator. GCC-7 should be okay.
  24. 2 points
    The title matches the description at least. izlude,100,100,0 script I need a script that will 56,{ disablenpc "lock the castle doors I wish"; end; } ordeal_1-1,100,150,0 warp lock the castle doors I wish 1,1,ordeal_1-1,128,150
  25. 2 points
    Primeiro você vai ter que colocar o mapa pvp_y_2-2 numa Zone separada dos outros mapas. Edite o arquivo /rAthena/npc/mapflag/restricted.txt e acrescente essa nova linha: pvp_y_2-2 mapflag restricted 8 Agora seu mapa faz parte da Zone 8. Lembrando que o espaço entre as palavras é feito com TAB nesse caso, assim: MAPA<tab>mapflag<tab>restricted<tab>8 Agora, para desativar Desencantar nesse mapa, vá até o arquivo /rAthena/db/pre(-re)/skill_nocast_db.txt e acrecente, no final do arquivo: //---------------------------------------------------------------------------- // Zone 8 - Mapa pvp_y_2-2 //---------------------------------------------------------------------------- 289,4096 //SA_DISPELL Para reduzir o dano das habilidades, você deve editar o arquivo /rAthena/db/skill_damage_db.txt. Siga os exemplos no arquivo, e aí na coluna "MAP" você vai colocar 4096, que é o número responsável para mapas da Restricted Zone 8. // Examples: // MC_MAMMONITE,BL_PC,1,50 // In normal maps, players deal +50% damage to other players with Mammonite. // MO_EXTREMITYFIST,BL_PC,6,-50 // In PVP and GVG, players deal -50% (half) damage to other players with Asura Strike. // AB_ADORAMUS,BL_PC,6,50,0,10,15 // In PVP and GVG, players deal +50% damage to other players, +0% to mobs, +10% to bosses, and +15% to other with Adoramus. Para que as mudanças tenham efeito, você deve reiniciar seu servidor, pois as mapflags restrict não são aplicadas com @reload Script. Lembrando também que a conta ADM ignora qualquer tipo de restrição desses arquivos, então teste em contas Player comum. Se ajudei, me ajuda com um Upvote!
  26. 2 points
    switch(select((countitem(34996))?"Insertar Ticket Clase C":"" , (countitem(34995)) ? "Insertar Ticket Clase B":"", (countitem(34994)) ? "Insertar Ticket Clase A":"", (countitem(34993)) ? "Insertar Ticket Clase S":"", "Cancelar"))
  27. 2 points
    Try this: case RG_STRIPWEAPON: status_change_end( bl, SC_CP_WEAPON, INVALID_TIMER ); sc_start(src,bl,SC_STRIPWEAPON,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; case RG_STRIPSHIELD: status_change_end( bl, SC_CP_SHIELD, INVALID_TIMER ); sc_start(src,bl,SC_STRIPSHIELD,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; case RG_STRIPARMOR: status_change_end( bl, SC_CP_ARMOR, INVALID_TIMER ); sc_start(src,bl,SC_STRIPARMOR,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; case RG_STRIPHELM: status_change_end( bl, SC_CP_HELM, INVALID_TIMER ); sc_start(src,bl,SC_STRIPHELM,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; You can ignore the warnings when compiling. P.S Sorry if I'm necro'ing a thread from 2 years ago, but nobody has answered this yet.
  28. 2 points
    View File Straw Target Dummy Greetings rAthena! I hope you enjoy this npc of Maple Story, it is the second I have done. Please do not claim my work as yours. Please do not sell it or resell it. Submitter Mael Submitted 02/18/2019 Category Monster Sprites Video Content Author Mael & Maple Story  
  29. 2 points
    View File Yeti Greetings rAthena! I hope you enjoy this npc of Maple Story, it is the third I have done. Please do not claim my work as yours. Please do not sell it or resell it. Submitter Mael Submitted 02/19/2019 Category Monster Sprites Video Content Author Mael & Maple Story  
  30. 2 points
    View File Guild Storage & Guild Storage log npc you need at least 55acdb9863382d8935d9df25e1462d5d1ebd7d54 or above this npc let the players check the guild storage log to access the guild storage log the player must have guild storage permission Submitter sader1992 Submitted 02/15/2019 Category Utilities Video Content Author sader1992  
  31. 2 points
    View File New Wood Fire Greetings rAthena! I hope you enjoy this npc of Trickster Online, it is the fifth I have done. A fire camp or wood fire, feel free to use it. Please do not claim my work as yours. Please do not sell it or resell it. Submitter Mael Submitted 02/14/2019 Category NPC Sprites Video Content Author Mael & Trickster Online  
  32. 2 points
    View File Cooking Pot Greetings rAthena! I hope you enjoy this npc, i do not remember the exact name of the frame creator or the game to which it belongs , whatever this it's the third I've done. Feel free to use it in cooking systems or something else. Please do not claim my work as yours. Please do not sell it or resell it. Do remain any credits of the respective author if you know. Submitter Mael Submitted 02/13/2019 Category NPC Sprites Video Content Author Mael & Unknown  
  33. 2 points
    View File New Cluckers Greetings rAthena! I hope you enjoy this npc from Trickster Online, it's the second one I've done. A new Cluckers, feel free to use it in events. Please do not claim my work as yours. Please do not sell it or resell it. Submitter Mael Submitted 02/13/2019 Category NPC Sprites Video Content Author Mael  
  34. 2 points
    View File New Potions Greetings rAthena! I hope and enjoy these blue and red potions from Trickster Online. Please do not claim my work as yours. Please do not sell it or resell it. Submitter Mael Submitted 02/12/2019 Category Inventory Content Author Mael  
  35. 2 points
  36. 2 points
    First update in this year: 12 Feb 2019. All links in the first topic updated. Changelog: almost everything in the package updated to actual current versions up to the current date all links updated (download one) added a short guide on how to make the server "online" for your friends only (check topic) fixed really a lot of problems.
  37. 2 points
  38. 2 points
    Hope you guys don't hate me for using spoiler the code box is slow to loading on a slow internet speed. credit to nott: I only restructured the script based on (Checking all array values).
  39. 2 points
    Like this? prontera,155,175,4 script TestScript 69,{ setarray [email protected]_id, 1002, 1004, 1005; setarray [email protected]_qt, 1, 3, 8; setarray [email protected]_req, 7, 8, 10; for(; [email protected] < getarraysize([email protected]_id); [email protected]++){ if([email protected]_qt[[email protected]] >= [email protected]_req[[email protected]]) { dispbottom "You hunted down all the monsters on that map."; } else { dispbottom "You still have to hunt down the following monsters:"; dispbottom "MonsterID: "[email protected]_id[[email protected]]+" Amount: "[email protected]_qt[[email protected]]+" Required quantity: "[email protected]_req[[email protected]]; [email protected] += ([email protected]_req[[email protected]] - [email protected]_qt[[email protected]]); } } if([email protected]) dispbottom "You still need to hunt "+F_InsertPlural([email protected],"monster")+"."; end; }
  40. 2 points
    Does anyone have this mod? or do you know where I can find it?
  41. 2 points
    2.5 add F_MesItemInfo https://drive.google.com/file/d/1qwY8ZZFhEsLd28OZYaQvSIhyX2dVe8IJ/view I also add into item requirement field, just because I feel like it =/
  42. 2 points
    Fixed using this: skillinfoz.rar
  43. 2 points
    1. Make a plant vs zombie then if you did that plant thing and make custom seed to plant those plant to defend against zombie... that would make a new event or game mode if you do finish this project of farm system 2. Climate is missing?? since you are doing plant thing .. weather is important eg. when raining fewer produce? or can't use fertilizer or anything? 3. limit specific cell to which you can plant anything on. or certain map you so that people won't plant everywhere.. 4. Day night cycle missing... faster growth day? no produce night??
  44. 2 points
    My client will crash after I feed my homunculus. No missing sprites shown or error on map server. My hash version is : 54b2cf3215e6f2eeeb6ff304be11dd9ee3e13b3f My client version is : 2018-06-20eRagexeRE Hopefully someone can help me with this problem. Thanks.
  45. 2 points
    LMAO !!! this script was made for over 4 years, and only today I found out it has a bug http://herc.ws/board/topic/11445-sameip-command-for-rathena/ [email protected] = query_sql( "select name, char_id, account_id as aaa, ( select last_ip from login where account_id = aaa ) from `char` where online = 1", [email protected]$, [email protected], [email protected], [email protected]$ ); look closely, name, char_id, account_id, === BUT [email protected]$, [email protected], [email protected] up version 0.3 //===== Hercules Script ====================================== //= @sameip //===== By: ================================================== //= AnnieRuru //===== Current Version: ===================================== //= 0.3 //===== Compatible With: ===================================== //= Hercules 2019-02-01 //===== Description: ========================================= //= list all players with same ip address //===== Topic ================================================ //= https://rathena.org/board/topic/118137-error-buildin_getmapxy/ //===== Additional Comments: ================================= //= it always list all players online, unable to limit to a single map currently //============================================================ - script kjdshfksfj FAKE_NPC,{ OnInit: bindatcmd "sameip", strnpcinfo(0)+"::Onaaa"; end; Onaaa: freeloop true; [email protected] = query_sql( "select name, char_id, account_id as aaa, ( select last_ip from login where account_id = aaa ) from `char` where online = 1", [email protected]$, [email protected], [email protected], [email protected]$ ); for ( [email protected] = 0; [email protected] < [email protected]; [email protected] ) { for ( [email protected] = 0; [email protected] < [email protected]_list; [email protected] ) if ( [email protected]_ip$[[email protected]] == [email protected]$[[email protected]] ) break; if ( [email protected] == [email protected]_list ) { [email protected]_ip$[[email protected]] = [email protected]$[[email protected]]; [email protected]_list; } setd "[email protected]_ip"+ [email protected] +"_name$["+ [email protected]_ip_size[[email protected]] +"]", [email protected]$[[email protected]]; setd "[email protected]_ip"+ [email protected] +"_cid["+ [email protected]_ip_size[[email protected]] +"]", [email protected][[email protected]]; setd "[email protected]_ip"+ [email protected] +"_aid["+ [email protected]_ip_size[[email protected]] +"]", [email protected][[email protected]]; [email protected]_ip_size[[email protected]]; } dispbottom "===== SAME IP Searching ====="; for ( [email protected] = 0; [email protected] < [email protected]_list; [email protected] ) { if ( [email protected]_ip_size[[email protected]] > 1 ) { dispbottom " == The IP ["+ [email protected]_ip$[[email protected]] +"] has "+ [email protected]_ip_size[[email protected]] +" players."; for ( [email protected] = 0; [email protected] < [email protected]_ip_size[[email protected]]; [email protected] ) { getmapxy [email protected]$, [email protected], [email protected], UNITTYPE_PC, getd( "[email protected]_ip"+ [email protected] +"_aid["+ [email protected] +"]"); dispbottom " = "+( [email protected] +1 )+". ("+ getd( "[email protected]_ip"+ [email protected] +"_cid["+ [email protected] +"]" ) +") "+ getd( "[email protected]_ip"+ [email protected] +"_name$["+ [email protected] +"]") +" -> "+ [email protected]$ +" "+ [email protected] +" "+ [email protected]; } [email protected]; } } dispbottom ">>> "+ [email protected] +" results found."; end; } EDIT: I think should write another version 0.4 since rathena has already upgrade the script engine quite some time ago the only optimization I can think of is using inarray script command, so nah
  46. 1 point
    Your request is very ambiguous. How is the page being called? Is it through the client? Have you looked at how <url> works? From script_commands.txt URLs ---- Similarly, you can create links to websites that launch in a new window: <URL>Display Name<INFO>http://www.example.com/</INFO></URL>";
  47. 1 point
    Incremental update sounds like a great idea - makes it easier for server owners to decide which of the skill updates they do (not) want.
  48. 1 point
    What language you used? seen /src/common/msg_conf.hpp // Multilanguage System. // Define which languages to enable (bitmask). // 0xFFF will enable all, while 0x000 will enable English only. enum lang_types { LANG_RUS = 0x01, LANG_SPN = 0x02, LANG_GRM = 0x04, LANG_CHN = 0x08, LANG_MAL = 0x10, LANG_IDN = 0x20, LANG_FRN = 0x40, LANG_POR = 0x80, LANG_THA = 0x100, LANG_MAX }; #ifndef LANG_ENABLE // Multilanguage System. // Define which languages to enable (bitmask). // 0xFFF will enable all, while 0x000 will enable English only. #define LANG_ENABLE 0x000 #endif
  49. 1 point
    reminds me when I played The Sims 3 XD yeah all the vegetables that I plant in sims ... this reminds me, The sims 3 has sprinkles https://www.carls-sims-3-guide.com/skills/gardening/ so if we install a sprinkles then we don't have to water it every day other than that, yeah, this would be awesome if this is part of housing instance script
  50. 1 point
    Just walked by and fixed some bugs: http://roworkshop.com/Browedit.rar You need to put this EXE into the latest BrowEdit from github's "vs2015" subfolder. And don't forget to download "blib" git repository contents into the "blib" subfolder of BrowEdit, or you will experience a gray square bug like @vBrenth did Bugs fixed: - data directory is now read with higher priority than GRF files which fixes the bug when BrowEdit loaded an unmodified map after modification and saving into data folder - implemented a (custom and basic) colors support when generating light map from light objects - fixed not reading / not saving light objects "range" param - fixed not saving light object "color" param after object edit - fixed crash when selecting any light in object edit mode - note: custom light intensity parameter is now ignored Source code: https://github.com/Bynsu/browedit https://github.com/Bynsu/blib
  • Newsletter

    Want to keep up to date with all our latest news and information?
    Sign Up