Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 03/20/24 in all areas

  1. Froggo Rö Folder This is a simple RO folder that contains everything you need to run a 2022-04-06 client, the latest publicly available. I have cleaned and compressed the data.grf file to reduce its size from 3.47GB to 2.44GB. I have also compressed the official_data.grf file from 1.24GB to 477MB. Before BGM, the Rö folder has a total size of 2.96GB, after BGM it reaches 3.30GB Screenshots Requirements Server Up & Running with ‎‏‏‎ PACKETVER=20220406 Visual C++ Redistributables DirectX Runtime Features Includes latest RoEnglishRE - 16/mar/2024 Custom Lua Support jRO Enchantment Display Includes rsu-kro-rag-lite (kRO updater) - v4.2.2.1316 Includes opensetup - v3.1.0.627 Includes iRO's Setup.exe, thanks to relzz! Includes AzzyAI 1.55 Includes Packet Viewer Download click here to download a .zip file of this ro-folder Extra Warp Profile for 2022-04-06 used for FroggoClient.exe (mirror) 2022-04-06 Vanilla Ragexe Client Login Screen Creator Official Ragnarok Complete Installer (08/Jan/2024)(mirror) Froggö Ro Folder Gitlab's Repo FAQ Why am I getting CHARACTER_INFO size error when trying to log in? Possible reasons: You are using outdated rAthena which doesn't work with 2022-04-06 client. You haven't set correct PACKETVER or done it with mistakes (skill issue ). You haven't recompiled rAthena. You haven't restarted server after recompilation. Why am I getting errors about MSVCP140.dll, VCRUNTIME140.dll when executing FroggoClient.exe? You haven't installed Visual C++ Redist, check requirements section, if problem persists, try installing this too Visual C++ Redist for VS 2012u4 What is official_data.grf ? official_data.grf is from the ROResourceCollection project, which brings many items, mobs and npc files from other RO Regions and merges it into one convenient grf. Why does the Setup.exe opens instead of the FroggoClient.exe? In your Windows registry there is no data about your selected graphic card, to fix it, just set up your settings in Setup.exe and click on OK, be aware to don't select DirectX9, stay on DirectX7 What was removed from the data.grf? Several unnecessary files were removed from the data.grf . These included residual files such as thumbs.db and stray BMP Screenshots. However, the majority of the cleanup was performed in the mob and npc sprite folders. In these folders, some .spr files contained sprites (images) that were not utilized in their corresponding .act files. For example, the monster katrinn's .spr file contained approximately 140 images, but only 6 of them were actually used. In total, out of nearly 90,000 collective images, around 9,400 were removed alv.
    7 points
  2. Let's continue to explore new horizons in mapping! A seamless map containing the entire island of Angrboda, where the place of worship of the god Odin is located. The island can be used for a Battle Royale in the RO lore, for other events or as a replacement for the standard three locations. The map size is 400x400 tiles or 800x800 cells. .•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•.•°'°•. odin1map video: Lighting and shadows have been completely restored. In addition, local lighting has been added in various places. Since the map was created for special modes, the places available to players have been expanded. So the huge hill between the first and second areas was completely opened, and a coastal zone was added in the second area. Passages, descents and ascents were also added. The bridge connects the areas. Especially for the Battle Royale mode, shooting and using skills from lowlands and hills is allowed.
    4 points
  3. Do you have very old clients or emulators lying around? Maybe that old hard drive with RO stuff? How about those old CD-Rs on the shelf? Or are you simply a RO data hoarder? WE WANT YOU! Hi, I’m vit. I’m developing along with o oldinroplayer a *Ragnarok Online Cross-Episode Database*, called RagnaDB. It’s a db in which you’re able to choose a specific episode and we’ll show you all the info precisely as it was back in the day. The idea is for it to be the “one RO database to rule them all”. For this to exist, there’s a great deal of historical research and digital data scavenging involved. Since we’re committed to historical accuracy, we’re on a journey to finding old files (client and server) to feed the db with, as well as (old) reliable sources for data validation. If you were waiting for the right moment to shine and looking for a group of people who will truly appreciate and see value in those dozens of RO gigabytes collecting dust like no one ever had, this is the moment! We’ll love to have you! If any of the words above piqued your interest, you’re more than welcome here. Join our Discord to hear about the latest updates or just hang around! Our Discord: https://discord.gg/cueAdED64N RagnaDB: https://ragnadb.com/
    4 points
  4. Version 1.0.0

    114 downloads

    [Event] Chess 1.0 By: MihaSenpai About: Hello Everynyan! My name is Mihael and I hope you are all well. I recently found these files in a personal repository and decided to share them with you. The .ZIP Contains the files: Script: NPC programmed for two players to participate in a game of chess. Map: Files containing the original Map of the event. Sprites: Files containing the event's ORIGINAL NPC Sprites. Hope you like it. If you have any questions, you can contact us here on the Forum or via Discord. A belated Happy 2024 to everyone.
    Free
    4 points
  5. 1. rathena/src/map/script.hpp Search: HAT_EF_MAX Replace: /* Custom Hateffects */ HAT_EF_arcane_aura_A, HAT_EF_arcane_aura_B, HAT_EF_gluttony_aura_A, HAT_EF_gluttony_aura_B, HAT_EF_MAX = 9999 2. rathena/src/map/script_constants.hpp Search: export_constant(HAT_EF_EFST_C_20TH_ANNIVERSARY_HAT); Replace: export_constant(HAT_EF_EFST_C_20TH_ANNIVERSARY_HAT); /* Custom Hateffects */ export_constant(HAT_EF_arcane_aura_A); export_constant(HAT_EF_arcane_aura_B); export_constant(HAT_EF_gluttony_aura_A); export_constant(HAT_EF_gluttony_aura_B); 3. Compile you Server. 4. Copy in you Data/texture/effect/(arcane_aura) and (gluttony_aura) Data(Example_Auras).zip 5. Data/luafiles514/lua files/hateffectinfo/hateffectinfo.lub Search: HAT_EF_efst_C_20th_Anniversary_Hat = 176 } Replace: HAT_EF_efst_C_20th_Anniversary_Hat = 176, HAT_EF_arcane_aura_A = 177, HAT_EF_arcane_aura_B = 178, HAT_EF_gluttony_aura_A = 179, HAT_EF_gluttony_aura_B = 180 } resourceFileName: route effect(Data/effect/name you effect folder/name you str file.str) IsIgnoreRiding: if true when mounting a mount or asking for hateffect will not go up, it will ignore this action isRenderBeforeCharacter: If true when using hateffect it will be over the character. hatEffectPos: Position the Y anchor (up and down) of the hateffect hatEffectPosX: Positions hateffect X anchor (left right) isAdjustPositionWhenShrinkState: always true isAdjustSizeWhenShrinkState: always true Search: [HatEFID.HAT_EF_efst_C_20th_Anniversary_Hat] = { resourceFileName = "efst_C_20th_Anniversary_Hat\\20th_f.str", hatEffectPos = -6, hatEffectPosX = 0, isIgnoreRiding = true, isAdjustPositionWhenShrinkState = true, isAdjustSizeWhenShrinkState = true } } Replace: [HatEFID.HAT_EF_efst_C_20th_Anniversary_Hat] = { resourceFileName = "efst_C_20th_Anniversary_Hat\\20th_f.str", hatEffectPos = -6, hatEffectPosX = 0, isIgnoreRiding = true, isAdjustPositionWhenShrinkState = true, isAdjustSizeWhenShrinkState = true }, [HatEFID.HAT_EF_arcane_aura_A] = { resourceFileName = "arcane_aura\\arcane_aura_particle.str", hatEffectPos = -1, hatEffectPosX = 0, isRenderBeforeCharacter = false, isIgnoreRiding = false, isAdjustPositionWhenShrinkState = true, isAdjustSizeWhenShrinkState = true }, [HatEFID.HAT_EF_arcane_aura_B] = { resourceFileName = "arcane_aura\\arcane_aura.str", hatEffectPos = -2, hatEffectPosX = 0.2, isRenderBeforeCharacter = true, isIgnoreRiding = true, isAdjustPositionWhenShrinkState = true, isAdjustSizeWhenShrinkState = true }, [HatEFID.HAT_EF_gluttony_aura_A] = { resourceFileName = "gluttony_aura\\gluttony_aura_particle.str", hatEffectPos = -1, hatEffectPosX = 0, isRenderBeforeCharacter = false, isIgnoreRiding = false, isAdjustPositionWhenShrinkState = true, isAdjustSizeWhenShrinkState = true }, [HatEFID.HAT_EF_gluttony_aura_B] = { resourceFileName = "gluttony_aura\\gluttony_aura.str", hatEffectPos = -2, hatEffectPosX = 0.2, isRenderBeforeCharacter = true, isIgnoreRiding = true, isAdjustPositionWhenShrinkState = true, isAdjustSizeWhenShrinkState = true } } 6. Add Script NPC: rathena\npc\custom\hateffect.txt (Use command @efc in game) - script HATEFFECT -1,{ OnHatEffect: if(getgmlevel()>= 80){ input .@number; if (.@number < 1) end; if (.@number >= 301) end; for(.@i = 1; .@i < 300; ++.@i) hateffect .@i,false; hateffect .@number,true; end; } OnInit: bindatcmd "efc",strnpcinfo(3)+"::OnHatEffect"; end; } 7. Add npc in rathena\npc\scripts_custom.conf npc: npc/custom/hateffect.txt 8. (OPTIONAL) Add Hateffect in item: Example: - Id: 2301 AegisName: Cotton_Shirt Name: Cotton Shirt Type: Armor Buy: 10 Weight: 100 Defense: 1 Locations: Armor: true ArmorLevel: 1 Refineable: true Script: | hateffect HAT_EF_arcane_aura_A,true; hateffect HAT_EF_arcane_aura_B,true; UnEquipScript: | hateffect HAT_EF_arcane_aura_A,false; hateffect HAT_EF_arcane_aura_B,false; Update: My project all Auras. (09/27/2023) - Pack Auras: My Project All Auras Too my project Ragnarok Online Pre-Renewal(Offline) and guide for easy update. - Data Folder + Server: Google Drive or MediaFire - Client RO: Google Drive or MediaFire Guide for start server and Play: 0. Dowloand Client RO and Update. 1. Download Data Folder + Server 2. Copy all files C:/MyServer/Client (In folder Ragnarok Onmline). 3. Run C:/MyServer/UwAmp/UwAmp.exe 4. Start Server C:/MyServer/rathena/runserver.exe Enjoy!!! Gluttony Aura: Arcane Aura: Credits: LCDTheOG Fros
    3 points
  6. Version 1.0.1

    107 downloads

    i recoded older rAthena Serv Monitor by DarkIrata in newer WPF -> Added Multithreading Server Start -> Added 1Click-Restart Server Button -> Added the WebServ -> Errorlogs are working and saving without crashes -> New design the open-src code -> https://github.com/AoShinRO/rAthena-ServMonitor-ByAoShinHo
    Free
    3 points
  7. Prueba cambiando (BaseLevel/2) por status_get_lv(src)
    2 points
  8. src/status.cpp search for: // Skill-related recovery (only when sit) there you can edit the source. ^-^
    2 points
  9. Hey there, fellow Ragnarok enthusiasts! Welcome to RO Artisan Hub, your cozy corner of creativity where we sprinkle a little bit of magic onto your Ragnarok Online server. Are you ready to give your players an eye-popping visual feast that'll have them coming back for more? You're in the right place! Here's a peek at the goodies we've got lined up for you: Custom Patcher Skins - Tired of the same old loading screens? Our patcher skins are like a breath of fresh air, offering a visual treat that'll get your players excited before they even step foot into your world. (CODE INCLUDED!) Interface Designs - Clunky menus are a thing of the past. We'll deck out your UI with a slick, user-friendly design that's not just pretty to look at but also a breeze to navigate. Logo & Branding - First impressions count, and a killer logo sets the stage for your server's identity. Let us craft a branding package that'll make your server the talk of the town (or, in this case, the world of Midgard). Promotional Graphics - Need to spread the word about your server's latest and greatest features? Our promotional graphics are perfect for catching eyes on social media, forums, and beyond. We're all about collaboration here at RO Artisan Hub, so we'll be with you every step of the way to ensure the final product isn't just good; it's exactly what you envisioned. Your satisfaction is our top priority, and we're not happy until you're over the moon with your new designs. So what are you waiting for? Let's get together and make your Ragnarok Online server the envy of them all. Drop us a message, and we'll start spinning those creative gears right away! Happy gaming, The RO Artisan Hub Team Discord Server: https://discord.gg/KpXFFwrE
    2 points
  10. I have multiple generator project, maybe u can try.
    2 points
  11. Here is another fully furbished Morroc Town! Join my Discord Channel: https://discord.gg/AhBjDJnEW3 Cinematic! morom.mp4
    2 points
  12. This is my new work Payon Town ROM! Join my Discord Channel: https://discord.gg/AhBjDJnEW3 Cinematic! payorm.mp4
    2 points
  13. Was having errors running my own 20220406 client, and this saved me. Thanks for this !
    2 points
  14. 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.
    2 points
  15. There are two methods for doing that: Once you have the current frame, click on: Then add the name of the file, like "test.wav". The file should be in data\wav\test.wav You can add a bunch of sound names by editing the list instead: Then select the sound for the frame from the list. If the sound doesn't play when testing the sprite, then it's just because it wasn't found in the resources. That's not really important, but you can add more resources from File > Settings > Sound:
    2 points
  16. Hello, I'm sharing this project, since this might help someone who need to generate this easily. The file that generated = CheckAttendance_EN.lub & attendance.yml Download, extract, add it in your System folder and server file or create a patch or anything. You can access to this simple project here : https://x-files.amirazman.my/attendance. Let me know if you having issues and Ill update it if possible & have some leisure time to play with.
    2 points
  17. Already answered your question in discord.
    2 points
  18. Version 1.0.1

    130 downloads

    ***Include Abyss Lake4**** -IllusionTeddy Bear/Labyrinth base on https://www.divine-pride.net/ (Include Drops Table) -No Portal -Issgard Dun/Frozen scale Field are custom to fit my server. (Custom Drops Table) Install : Put Mob and mob skill to rathena\db\import PutNpcfiles (Custom.txt) to rathena\npc\custom add new line npc: npc/custom/Custom.txt at rathena\npc\scripts_custom.conf
    Free
    2 points
  19. Version 1.0.0

    219 downloads

    Hello everyone! Happy New Year! Here are my handmade gifts, custom maps for you: 2024: navayo (+nav_beach, nav_in01, nav_in02) https://rathena.org/board/topic/116200-showcase-navayo/ anrydrago https://rathena.org/board/topic/124265-showcase-miniquest-anry-dragon/ 2023: x_base https://rathena.org/board/topic/140494-showcase-x-base/ crimea https://rathena.org/board/topic/132870-showcase-crimea/ barcode https://rathena.org/board/topic/116040-showcase-barcode/ ice2xlake https://rathena.org/board/topic/124194-showcase-ice-twice-lake/ lv_beach https://rathena.org/board/topic/116553-showcase-love-beach/ yavin1b https://rathena.org/board/topic/116300-showcase-yavin1b/ mystvil https://rathena.org/board/topic/117187-showcase-mystical-vil/ crystal https://rathena.org/board/topic/116079-showcase-crystal/ 1@scp087 https://rathena.org/board/topic/116223-showcase-scp-087/ mag_dun03_ https://rathena.org/board/topic/127185-showcase-magma-dungeon-lvl-3/ b_book(1,2,3,4) https://rathena.org/board/topic/116491-showcase-four-battle-books/ The size of attachments (30mb) on rAthena does not allow to add map resources. You can find the full materials here: https://mega.nz/folder/8atXmYgC#yJEL_ssWj8D8XwmpgInYiQ ~ Keep calm and use it on your server ~ ~ Don't claim my work as yours please and etc ~ ~ Any requests/reports - https://rathena.org/board/profile/47250-w0wzukubg/ Thanks, Zuku ~
    Free
    2 points
  20. View File Morocc New Hi ! I Present to you my map: Oasis of Morocc I let you watch the video below or the screenshots to get a overview of the project. - What's in the .rar file? Map (Rsw, Gat & Gnd Files) Textures & models - SCREENSHOTS : https://bluff-ro.artstation.com/projects/4XWNg1 INFORMATIONS -You should know that the project took me a long time! -Be indulgent -Do not share or sale this project (It's my work) -if you find any errors contact me so i can correct and update the project You can support my work : putting a "like" on the video & SUBSCRIBE ! React & give your opinion on my work buy the project Pay a cofee : https://www.paypal.com/donate/?hosted_button_id=Q4T6KSYZBPYY8 Submitter Bluff Submitted 04/18/24 Category Maps & 3D Resources Video https://youtu.be/kjHC_BsR93I Content Author Bluff  
    1 point
  21. Hmm, there is an approximation that can be done which will probably be good enough. The point 2 is misleading; what is seen in the UI is a blend of the background + layers. You can't separate them as it's already a final image, if that makes sense. But you could in theory extract a transparency value by using a black and white background version of the composite image. Then do some math magic and approximate the bgra values. I've added the option in 1.1.0, though it's a bit awkward to use (found in File > Export as PNG...).
    1 point
  22. Use the OnPCLoginEvent. Get the VIP State for VIP if(vip_status(VIP_STATUS_ACTIVE) && AGI >= 99)bAspdRate,196;) else {bonus bAspd,195;} It's not rly complicated. I'd like to call upon everyone once again to please read through the Rathena documentation, as it contains all the answers, one just needs to dig a bit. For example, want to find out about the VIP status? Simply use the search function on the site with *vip_status, and you'll get direct hints. I clearly refer to Doc/Script_comments.txt and Doc/item_bonus.txt. it's not much complicated to do research and try cuz' you will learn and it's much better instead of else everyone get the answer directly and just copy paste into his project. This should not to be an offensive or attack against you please don't miss understand this. Rynbef~
    1 point
  23. - We added Shiba BEP20 Token to payments gateway If you have any inquiries, please let us know
    1 point
  24. short description There are 3 different generations of laboratory monsters: 1. Egnigem, Wickebine, Laurell, Errende, Josephina, Kavach, Armeyer 2. Seyren, Eremes, Kathryne, Margaretha, Cecil, Howard 3. Randel, Gertie, Celia, Chen, Trentini, Alphoccio, Flamel I collect them, correct mistakes, add every possible class to each monster, recolor them in 3 official color sets and improve their aura. As a basis, I took the logic of the first implemented sprites at lhz_dun01-03 If you compare the following kRO sprites with corrections in the changelog you will notice that the logic has ceased to be respected and the sprites do not even have sounds! LINK TO FILE: https://mega.nz/file/tGFCxRSL#y5S8uLWw0cMCrLt059ycmZSeeFY1oLYTSVJwa0BoEWs [DONE] 1st class 2nd class advanced class 3rd class 3rd japan edition class 4th class latest expanded classes previous versions of some classes custom extended classes The total number of sprites in the pack: all classes from novice to 4th class (with different types of weapons) x 3 official color sets = 600 sprites changelog: (!) Below are the non-clean gifs recorded using GifCam.exe over the Act Editor (!) So these can brake or accelerate and do not serve as an accurate image. These gifs are added just for reference For clarity, the background of the laboratory is taken, and the sprites are shown in transparent blue 969F9EE7 and with improved aura Seyren Windsor Eremes Guile Kathryne Keyron Margaretha Sorin Cecil Damon Howard Alt-Eisen Randel Lawrence Gertie Wie Celia Alde Chen Lio Trentini Ilaria Alphoccio Basil Flamel Emure Egnigem Chenia Wickebine Tres Laurell Weinder Errende Ebecee Josephina Kavach Icarus Armeyer Dinze
    1 point
  25. It's in PT _BR if I'm right but @Oklonirsend an English one. Maybe u can compare Rynbef~
    1 point
  26. yes it is. I tried making a 5v5v5v5v5 bg script before.
    1 point
  27. This is still working since I add to to my local server few days ago. A "solution" found for the window not being closed, is to run clif_refresh which does same than @refresh I tried many ways but nothing worked, just that..
    1 point
  28. Hello, I'm sharing this project, since this might help someone who need to generate this easily. Right now, this project support custom file generator for : 1. Custom headgear. 2. Custom robe/garment. 3. Custom weapon. 4. Custom NPC. The required file generated depends on which generator that you used. The scenario on how to generate for custom headgear file : 1. Maybe extract data\texture\유저인터페이스\item\ folder and u will have the listed one .BMP that u want to add. 2. Select all the item u want to add, right click mouse and right click, copy as path. Then open notepad, paste it. 3. Get the only .BMP in list, so replace your directory path and replace all with blank/nothing . And lastly the " with blank/nothing. So the result is as below. Copy all of it, insert in https://x-files.amirazman.my/customfilegenerator and change your : - Starting ItemID you want it to start with. Make sure the itemID is supported by your client. - Starting AccessoryID that you didnt use yet. Also make sure the final accessoryID didnt reach the maximum of your client can support/set. - Defense, so you can set all the defense in bulk. - Weight. - Slots. - Script. Insert any scripts or anything that you can replace all easily later on in itemdb and also custom_iteminfo.lua (yes, its generated inside the description). - Item Type for now only support headgears and costume headgears, I will add another item types soon if possible (yes, its generated inside the description). And click Generate. Download, extract, add it in your System folder and server file or create a patch or anything. You can access to this simple project here : https://x-files.amirazman.my/customfilegenerator. Let me know if you having issues and I'll update it if possible & have some leisure time to play with.
    1 point
  29. - script loginnnnnn -1,{ OnPCLoginEvent: announce strcharinfo(0) + " Logged in.",bc_all; end; } -<tab>script<tab>loginnnnnn<tab>-1,{
    1 point
  30. If you're looking for something clientside there are various launchers with some serverside communication. For example rgzlauncher. You'd need to send a custom packet/message to the launcher which exists at the same time as the client and then run the application from that launcher. You could also just create your own launcher which does something similar.
    1 point
  31. Hello, no, but has been merged in https://x-files.amirazman.my/customfilegenerator. I hope you can access it there.
    1 point
  32. It's so amazing. Really great idea a very good alternative to woe or battleground. The doors who slide open/close are rly cool. It's the old office of the HQ of X? Formally known as Twitter? *Joke* Rynbef~
    1 point
  33. Bom galera, eu estava com um problema e não encontrei nenhum tutorial que me ajudou, então descobrir como resolver. Deve ter outras pessoas que passaram ou estão passando pelo mesmo. Irei ensinar a forma correta de configurar o drop de cartas // The rate at which cards are dropped item_rate_card: 500000 // Aqui fica 500k pois no mob_db está 0,01% drop, então faz-se a multiplicação aplicando assim 50% drop. item_rate_card_boss: 50000 // Aqui fica 50k pois no mob_db está 0,01% drop, então faz-se a multiplicação aplicando assim 5% drop. item_rate_card_mvp: 50000 // Igual ao de cima. item_drop_card_min: 1 // Não precisa editar aqui. item_drop_card_max: 500000 // Aqui você irá colocar o valor MAIOR de drop, no meu caso foi o 500k do item_rate_card. // Se lhe foi útil deixa um comentário pra eu ficar sabendo ?
    1 point
  34. I see. I went with the first solution I came up with from the top of my head. But it isn't that hard to do it the way you are showing either. You simply can use an invisible npc with an OnTouchNPC label that teleports the mob back into the desired area. - script EXAMPLE_SPAWN -1,{ OnInit: areamonster("prontera", 151, 149, 155, 143, "", "poring", 2); } - script MOB_BOUNDARY_CELL -1,{ OnTouchNPC: unitwarp(getattachedrid(), "this", 153, 147); } prontera,150,150,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#01 -1,0,0 prontera,151,150,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#02 -1,0,0 prontera,152,150,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#03 -1,0,0 prontera,153,150,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#04 -1,0,0 prontera,154,150,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#05 -1,0,0 prontera,155,150,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#06 -1,0,0 prontera,156,150,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#07 -1,0,0 prontera,150,149,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#08 -1,0,0 prontera,150,148,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#09 -1,0,0 prontera,150,147,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#10 -1,0,0 prontera,150,146,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#11 -1,0,0 prontera,150,145,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#12 -1,0,0 prontera,150,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#13 -1,0,0 prontera,150,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#14 -1,0,0 prontera,151,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#15 -1,0,0 prontera,152,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#16 -1,0,0 prontera,153,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#17 -1,0,0 prontera,154,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#18 -1,0,0 prontera,155,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#19 -1,0,0 prontera,156,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#20 -1,0,0 prontera,156,149,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#21 -1,0,0 prontera,156,148,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#22 -1,0,0 prontera,156,147,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#23 -1,0,0 prontera,156,146,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#24 -1,0,0 prontera,156,145,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#25 -1,0,0 prontera,156,144,0 duplicate(MOB_BOUNDARY_CELL) MOB_BOUNDARY_CELL#26 -1,0,0
    1 point
  35. I was reading this topic yesterday and discovered that most of the requests were not added. Therefore, I am making my debut here to share with you the updated @autoattack function. Added Commands: @autoattack - display all @autoattack commands. @autoattack on/off @autoattack list @autoattack +monsterID @autoattack -monsterID #Edit If you use [ @autoattack on ] without adding monster targets will attack all the monsters (DEFAULT setting.) Auto-attack can be toggled on or off using the @autoattack on/off command. Specific mobs can be added or removed from the target list using @autoattack +<mobID> or @autoattack -<mobID> respectively. Since I'm using the latest version, applying the patch shouldn't be a problem.(I also removed the struct warnings from the map_session_data). Attached(Updated): atcommand[remix]
    1 point
  36. Need the latest kRO Install folder for your private server? Look no further! ----> Download <---- Latest: 2023-04-04 Installation: Official kRO Updated: 04/04/2023 Download Link: https://mega.nz/folder/jUsDgRxQ#ttLmLjPY9p9cfU5_ShWVCw Package contains RSU RO Patcher Lite for kRO and kRO RE by [Ai4rei] This package is maintained by [Akkarin] Note: Due to continued abuse of my webservers, the files have been moved to MEGA. You can download an extractable .zip of an installed kRO directory, or you can download the official installer from kRO's website. Note: If you require older maps that are compatible with 2021 and older clients, download the 2021 .zip. A fan of this topic? Hit the rep button
    1 point
  37. Most of you who use fishing scripts on your server have probably checked out my Fishing Script before...Well I've been working on currently enhancing it. Changelog: v1.2 Shortened most of the script Added Sounds and Effects to make it a bit more lively Added two new Configurations - Auto Fish, Auto Fish on fail Enhanced map announce to work with where-ever the script is located Enhanced randomizing caught junk to enable a lot more to be added Removed Chat menu so the script has less clicking Fishing 1.2.txt This one is slightly different then the one below. Fishing 1.2.txt Please read Optional-Addons before using this script. Optional Add-ons Upcoming Changes This script has been abandoned to start work on a Profession System.
    1 point
  38. Greetings rAthena, Here's a release for a SQL-based Race to 99 Event script that I made recently. This script follows these rules --- 1. Only 2 winners for each TRANSCENDENT Class 2. If you won once already, you may not win another one (account-based) If you there are any issues or bugs, feel free to post and I'll fix it up when I can. raceto99.txt
    1 point
  39. Version 4.1

    2219 downloads

    A NPC that allow your Characters to Switch Build from time to time. Players are able to save his current status build , so that he/she can switch back to the saved build whenever he/she want. Players no need to keep memorize their status build upon changed. Configuration : // maximum build player can store (0 = disable) .max_build = 3; // check player weight limit before switching stat (0 = disable) .check_weight_limit = 1;
    Free
    1 point
  40. The Sage of Six Path Naruto The Sage of Six Path Cloak The legendary Super Saiyan Luminous Wings Ancient Dragon Wings Lucifer Wings Touka's Kagune (Might change this animation) Merged Zamasu's Set Super Saiyan Aura.rar
    1 point
  41. try link https://drive.google.com/drive/folders/1NKzHYH4o2KUMxR5yFeVxV6iKkD11MLSr from Checkmate, above your post.
    1 point
  42. For a while I hear "the ragnarok client can't do anything, it's very limited", so I decided to focus 1 year on learning reverse engineering, learning to read the code and invent my own ways, I learned methods to find the shapes and colors, and every day I was perfecting myself, today I can modify basically anything, when I can't, I set a goal to try a little more, here is my showcase and I hope you like it. when I started it was 2021, so 20200401 was my focus. Today I'm already upgrading to 20211117+ Change GM/Player/Mob/npc color? yes! very small npc box? yes I increased (I like space) MENU? YES! AP BAR for all jobs? YES! NEW WARP? yes! CUSTOM BASIC INFO? oh yes!! Custom LoadingBar? Yes! recover the old menu? yes Others mods: New Collection Night mode: Chat: Hp bar colors: others colors Text effects: Select Service Login Screen new position. Updates: I created a diff nemo that allows me to change the style, color, and direction. Original portal My custom
    1 point
  43. Hello people~ I am Adel and this is my updated sprite showcase. ❤ ❤ ❤ Hope you enjoy ❤ ❤ ❤ Note: Please do not steal the display images. Some of the references for my sprites were taken from other game sources. Mob Sprites Other Sprites
    1 point
  44. Version 1.0.0

    1266 downloads

    STAFF SIGN CUSTOM HEADGEAR BUNDLE Greetings again, rAthena! I'm Haziel, you might know me from the work I've done for the past years, I'm now posting new releases every week. Staff Signs is a bundle of Custom Headgears, it has all necessary files to be appropriately implemented, such as Equip Sprites, Icon and Collection files! This package contains four different Headgears to represent each Staff position, such as Community Manager, Event Manager, Game Master and Administrator! Let me know in the comments below if I'm missing any other! I hope you enjoy the final product! If you're interested in my work, Contact me on hyering or through one of the channels below! By downloading this file, you agree to my Terms of Service: • YOU WILL NOT remove my signature from any of the included files. • YOU WILL NOT alter, edit, recolour any of my files unless for your personal use. • YOU WILL NOT repost, repass or mirror my work nor edited versions of it anywhere. • YOU WILL NOT sell, resell or in any manner, ask money or rewards using my work as an exchange. • YOU WILL NOT claim my work as yours.
    Free
    1 point
  45. Hello there @Questune09, >>>>> step 1: after finshing the quest, under getitem ( the prize ) add this : set CooldownQuest,gettimetick(2); step 2: and before taking the quest add time check: if(gettimetick(2) - CooldownQuest < (60 * 60 * 24)) { next; mes "[ Daily Quest ]"; mes "^FF0000Sorry you have to wait 24 Hours until you can do the Quest again!^000000"; close; } <<<<< or use this prt_in,82,93,2 script Daily Quest 513,{ if (getgmlevel() >= 80) goto GM_Menu; L_START: if (getgmlevel() >= 80) next; mes "[ Daily Quest ]"; mes "Total Daily Quests Finished: ^008800"+$DailyQuestTotal+"^000000."; mes "Today Daily Quests Finished: ^0000FF"+$DailyQuestToday+"^000000."; next; mes "[Daily Quest]"; mes "Hello "+strcharinfo(0)+"!"; mes "Do you want to start today's Quest?"; mes " "; menu "Yes!",-,"Nahh",L_Close; if(gettimetick(2) - CooldownQuest < (60 * 60 * 24)) { next; mes "[ Daily Quest ]"; mes "^FF0000Sorry you have to wait 24 Hours until you can do the Quest again!^000000"; close; } next; mes "[Daily Quest]"; mes "You'll need these item for Today's Quest:"; mes "^FF0000"+getitemname($QuestItem1)+"^000000 x "+$QuestItem1HM+""; mes "^FF0000"+getitemname($QuestItem2)+"^000000 x "+$QuestItem2HM+""; mes "^FF0000"+getitemname($QuestItem3)+"^000000 x "+$QuestItem3HM+""; mes "In exchange you will get ^0000FF"+getitemname($DailyQuestPrize)+"^000000 x "+$DailyQuestPrizeHM+""; next; mes "[Daily Quest]"; mes "Do you have the items?"; menu "Yes! I do.",-,"Gimme some time.",L_Close; if(countitem($QuestItem1) >= $QuestItem1HM) && (countitem($QuestItem2) >= $QuestItem2HM) && (countitem($QuestItem3) >= $QuestItem3HM) goto FinishQuest; next; mes "[Daily Quest]"; mes "You only have "+countitem($QuestItem1HM)+" of ^FF0000"+getitemname($QuestItem1)+"^000000, "+countitem($QuestItem2HM)+" of ^FF0000"+getitemname($QuestItem2)+"^000000, "+countitem($QuestItem3HM)+" of ^FF0000"+getitemname($QuestItem3)+"^000000."; mes "Come back when you have it! Better get the items quickly. It's gonna change in a Day!"; close; L_Close: next; mes "[Daily Quest]"; mes "Come back again! Get the Items!"; mes "Goodbye!"; close; GM_Menu: mes "[Daily Quest]"; mes "Hello GM "+strcharinfo(0)+"!"; mes "What can I do for you today?"; menu "Player Menu",L_START,"Change Today's Quest/Prize",L_ChangeQuest,"Close",L_Close; L_ChangeQuest: next; mes "[Daily Quest]"; mes "What will you like to change?"; next; menu "Go back.",GM_Menu,"Prize [^0000FF"+getitemname($DailyQuestPrize)+"^000000 x "+$DailyQuestPrizeHM+"]",L_ChangePrize,"Change Quest Randomly",L_ChangeQuestRandom,"Change Quest by Myself",L_ChangeQuestMyself; L_ChangeQuestMyself: next; mes "[Daily Quest]"; mes "Which item would you like to change first?"; menu "Go Back.",L_ChangeQuest,"Item 1 [^FF0000"+getitemname($QuestItem1)+"^000000 x "+$QuestItem1HM+"]",L_ChangeItem1,"Item 2 [^FF0000"+getitemname($QuestItem2)+"^000000 x "+$QuestItem2HM+"]",L_ChangeItem2,"Item 3 [^FF0000"+getitemname($QuestItem3)+"^000000 x "+$QuestItem3HM+"]",L_ChangeItem3; L_ChangeItem1: next; mes "[Daily Quest]"; mes "Alright. What will be the item?"; next; input $QuestItem1; next; L_ChangeItem12: mes "[Daily Quest]"; mes "How much of ^ff0000"+getitemname($QuestItem1)+"^000000 do you want?"; mes "It must be in the range of ^0088001 ~ 200^000000."; next; input $QuestItem1HM; next; if ($QuestItem1HM > 200) goto L_HMItem1Denied; mes "[Daily Quest]"; mes "Item 1 Set."; set $DailyQuestToday,0; mes "^FF0000"+getitemname($QuestItem1)+"^000000 x "+$QuestItem1HM+"."; next; goto L_ChangeQuest; L_HMItem1Denied: mes "[Daily Quest]"; mes "This item (^ff0000"+getitemname($QuestItem1)+"^000000) must be in a range of ^0088001 ~ 200^000000."; next; goto L_ChangeItem12; L_ChangeItem2: next; mes "[Daily Quest]"; mes "Alright. What will be the item?"; next; input $QuestItem2; next; L_ChangeItem22: mes "[Daily Quest]"; mes "How much of ^ff0000"+getitemname($QuestItem2)+"^000000 do you want?"; mes "It must be in the range of ^0088001 ~ 150^000000."; next; input $QuestItem2HM; next; if ($QuestItem2HM > 150) goto L_HMItem2Denied; mes "[Daily Quest]"; mes "Item 2 Set."; set $DailyQuestToday,0; mes "^FF0000"+getitemname($QuestItem2)+"^000000 x "+$QuestItem2HM+"."; next; goto L_ChangeQuest; L_HMItem2Denied: mes "[Daily Quest]"; mes "This item (^ff0000"+getitemname($QuestItem2)+"^000000) must be in a range of ^0088001 ~ 150^000000."; next; goto L_ChangeItem22; L_ChangeItem3: next; mes "[Daily Quest]"; mes "Alright. What will be the item?"; next; input $QuestItem3; next; L_ChangeItem32: mes "[Daily Quest]"; mes "How much of ^ff0000"+getitemname($QuestItem3)+"^000000 do you want?"; mes "It must be in the range of ^0088001 ~ 50^000000."; next; input $QuestItem3HM; next; if ($QuestItem3HM > 50) goto L_HMItem3Denied; mes "[Daily Quest]"; mes "Item 3 Set."; set $DailyQuestToday,0; mes "^FF0000"+getitemname($QuestItem3)+"^000000 x "+$QuestItem3HM+"."; next; goto L_ChangeQuest; L_HMItem3Denied: mes "[Daily Quest]"; mes "This item (^ff0000"+getitemname($QuestItem3)+"^000000) must be in a range of ^0088001 ~ 50^000000."; next; goto L_ChangeItem32; L_ChangeQuestRandom: set $QuestItem1, rand(701,1065); set $QuestItem1HM, rand(1,200); set $QuestItem2, rand(701,1065); set $QuestItem2HM, rand(1,150); set $QuestItem3, rand(701,1065); set $QuestItem3HM, rand(1,50); set $DailyQuestToday,0; mes "[Daily Quest]"; mes "This is the Daily Quest:"; mes "^FF0000"+getitemname($QuestItem1)+"^000000 x "+$QuestItem1HM+""; mes "^FF0000"+getitemname($QuestItem2)+"^000000 x "+$QuestItem2HM+""; mes "^FF0000"+getitemname($QuestItem3)+"^000000 x "+$QuestItem3HM+""; next; goto GM_Menu; L_ChangePrize: next; mes "[Daily Quest]"; mes "Input the Prize"; next; input $DailyQuestPrize; next; mes "[Daily Quest]"; mes "The Prize: "+getitemname($DailyQuestPrize)+" x How many?"; next; input $DailyQuestPrizeHM; next; mes "[Daily Quest]"; mes "This is what you like?"; mes "^0000ff"+getitemname($DailyQuestPrize)+"^000000 x "+$DailyQuestPrizeHM+"."; menu "Yup, Thanks.",GM_Menu,"Noo! I made a mistake!",L_ChangePrize; FinishQuest: next; mes "[Daily Quest]"; mes "You got ^0000FF"+getitemname($DailyQuestPrize)+"^000000 x "+$DailyQuestPrizeHM+"."; delitem $QuestItem1,$QuestItem1HM; delitem $QuestItem2,$QuestItem2HM; delitem $QuestItem3,$QuestItem3HM; getitem $DailyQuestPrize,$DailyQuestPrizeHM; set CooldownQuest,gettimetick(2); set $DailyQuestTotal,$DailyQuestTotal +1; set $DailyQuestToday,$DailyQuestToday +1; close; } - script DailyQuestItemChanger -1,{ OnInit: OnClock0000: while ( getitemname( set( $QuestItem1, rand(701,1065) ) ) == "null" ); set $QuestItem1HM, rand(1,200); while ( getitemname( set( $QuestItem2, rand(701,1065) ) ) == "null" ); set $QuestItem2HM, rand(1,150); while ( getitemname( set( $QuestItem3, rand(701,1065) ) ) == "null" ); set $QuestItem3HM, rand(1,50); set $DailyQuestToday,0; end; } i recommend do adding the codes manually
    1 point
  46. Version 1.0.0

    280 downloads

    ¦¦¦¦¦¦ ¦¦¦¦¦¦ ¦¦¦¦¦¦ ¦¦¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦ ¦¦ ¦¦ ¦¦¦ ¦¦ ¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦¦¦ ¦¦ ¦¦¦ ¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦ ¦¦¦ ¦¦¦ ¦¦¦ ¦¦¦¦¦¦ ¦¦¦¦¦¦ ¦¦ ¦¦ ¦¦ ¦¦ ¦¦¦¦¦¦¦ @command pack. (@runlabel, @allchat, @emo, @allemo, @alleffect) //////////////////////////////////////////////////////////////////////////////////////////////// [src/map/atcommand.c] is the only file needed to be editted. Set your account group permissions as desired. You're assumed to know how to implement these. However, if you have further questions, feel free to contact me. //////////////////////////////////////////////////////////////////////////////////////////////// ACMD_DEF(runlabel), //rootKid ACMD_DEF(allchat), //rootKid ACMD_DEF(emo), //rootKid ACMD_DEF(allemo), //rootKid ACMD_DEF(alleffect), //rootKid /*========================================== * @runlabel by [rootKid] * Makes invoker run an 'On' label from within an npc * @runlabel Healer#OnMinute44 *------------------------------------------*/ ACMD_FUNC(runlabel) { char label_output[256],npcname[100],label[100]; nullpo_retr(-1, sd); if (!message || !*message) { sprintf(atcmd_output, "Usage: @runlabel <npc name>, <label>"); clif_displaymessage(fd, atcmd_output); return -1; } if (sscanf(message, "%23[^,], %99[^\n]", npcname, label) < 2) { clif_displaymessage(fd, "Please, enter the correct info (usage: @runlabel <npc name>, <label>)."); return -1; } if (npc_name2id(npcname) != NULL) { sprintf(label_output, "%s::%s", npcname, label); npc_event( sd, label_output, 0 ); clif_displaymessage(fd, "Label was triggered."); return 0; } else { clif_displaymessage(fd, "NPC doesn't exist."); return -1; } } /*========================================== * @allchat by [rootKid] * Makes all players, except the invoker, send out a desired message * eg. @allchat blahblah *------------------------------------------*/ ACMD_FUNC(allchat) { struct map_session_data* iter_sd; struct s_mapiterator* iter; char tempmes[200]; iter = mapit_getallusers(); nullpo_retr(-1, sd); memset(tempmes, '\0', sizeof(tempmes)); memset(atcmd_output, '\0', sizeof(atcmd_output)); if (!message || !*message || sscanf(message, "%199[^\n]", tempmes) < 0) { clif_displaymessage(fd, "Please, enter a message (usage: @me <message>)."); return -1; } for (iter_sd = (TBL_PC*)mapit_first(iter); mapit_exists(iter); iter_sd = (TBL_PC*)mapit_next(iter)) if (iter_sd != sd){ //Triggers on all players except the one who initiates it. sprintf(atcmd_output, "%s : %s", iter_sd->status.name, tempmes); // *%s %s* clif_disp_overhead(&iter_sd->bl, atcmd_output); } mapit_free(iter); return 0; } /*========================================== * @emo by [rootKid] * Makes invoker send out an emote * @emo 3 *------------------------------------------*/ ACMD_FUNC(emo) { if (!message || !*message) { clif_displaymessage(fd, "Usage: @emo 1-81"); return -1; } clif_emotion(&sd->bl, atoi(message)); return 0; } /*========================================== * @allemo by [rootKid] * Makes all players, except the invoker, send out a desired emote * eg. @allemo 1 *------------------------------------------*/ ACMD_FUNC(allemo) { struct map_session_data* iter_sd; struct s_mapiterator* iter; iter = mapit_getallusers(); if (!message || !*message) { clif_displaymessage(fd, "Usage: @emo 1-81"); return -1; } for (iter_sd = (TBL_PC*)mapit_first(iter); mapit_exists(iter); iter_sd = (TBL_PC*)mapit_next(iter)) if (iter_sd != sd){ //Triggers on all players except the one who initiates it. clif_emotion(&iter_sd->bl, atoi(message)); } mapit_free(iter); return 0; } /*========================================== * @alleffect by [rootKid] * Makes all players, except the invoker, send out a desired special effect * eg. @alleffect 89 *------------------------------------------*/ ACMD_FUNC(alleffect) { struct map_session_data* iter_sd; struct s_mapiterator* iter; int type = 0, flag = 0; iter = mapit_getallusers(); nullpo_retr(-1, sd); if (!message || !*message || sscanf(message, "%d", &type) < 1) { clif_displaymessage(fd, "Please, enter an effect number (usage: @effect <effect number>)."); return -1; } for (iter_sd = (TBL_PC*)mapit_first(iter); mapit_exists(iter); iter_sd = (TBL_PC*)mapit_next(iter)) if (iter_sd != sd){ //Triggers on all players except the one who initiates it. clif_specialeffect(&iter_sd->bl, type, (send_target)flag); } mapit_free(iter); return 0; }
    Free
    1 point
  47. specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,620000,10; specialeffect2 EF_BLESSING; sc_start SC_BLESSING,620000,10; here.
    1 point
×
×
  • Create New...