-
Posts
14 -
Joined
-
Last visited
Content Type
Profiles
Forums
Downloads
Jobs Available
Server Database
Third-Party Services
Top Guides
Store
Crowdfunding
Files posted by adeptfrog
-
Equipment Upgrade System
A multi-level upgrade system for your equipment similar to ROM:EL equipment upgrades. Easily manage the upgrade bonuses of your equipment without duplicating them. The only downside is, the upgrade system doesn't support any 4 slotted equipment.
For easy explanation, we will go with 2 equipment samples:
Equipment 50103 (Costume Fate Magic Book) and Equipment 50107 (Costume Fate Wand)
How to Use:
Go and edit your file equipment_upgrades.txt
1. You add your upgrade bonuses at section II. EQUIPMENT BONUSES and list the item bonus just like the 2 samples.
2. Enumerate all the requirements for upgrading the equipment at section III. EQUIPMENT REQUIREMENTS and list it just like the 2 samples.
(3.) Optional. If you are planning to add more than 5 upgrades or if you modified the item ID of enchant stones, you must also update the section I. EQUIPMENT UPGRADE LEVEL MODIFIERS.
Go and edit your file item_db.yml
1. You must add this first:
# UPGRADE ENCHANT CARD SLOTS - Id: 50108 AegisName: S_Upgrade_I Name: Upgrade - I Type: Card SubType: Enchant - Id: 50109 AegisName: S_Upgrade_II Name: Upgrade - II Type: Card SubType: Enchant - Id: 50110 AegisName: S_Upgrade_III Name: Upgrade - III Type: Card SubType: Enchant - Id: 50111 AegisName: S_Upgrade_IV Name: Upgrade - IV Type: Card SubType: Enchant - Id: 50112 AegisName: S_Upgrade_V Name: Upgrade - V Type: Card SubType: Enchant (2.) Optional. If you are planning to add more than 5 upgrades or if you modified the item ID of enchant stones, you must add/update the necessary item_db entry for those just like the above entries. (with the correct enchantIDs of course)
3. IMPORTANT: Every time you add an equipment upgrade bonus to an item, you must also add this line: callfunc("GetUpgradeBonus");
Here are some sample entry using the 2 equipment samples for your reference:
- Id: 50103 AegisName: C_Fate_MagicBook Name: Costume Fate Magic Book Type: ShadowGear Weight: 100 View: 115 Jobs: Sage: true Locations: Shadow_Weapon: true Script: | bonus bAspdRate,50; bonus2 bSubEle,Ele_Ghost,5; bonus3 bAutoSpell,"MG_THUNDERSTORM",10,200; callfunc("GetUpgradeBonus"); - Id: 50107 AegisName: C_Fate_Wand Name: Costume Fate Wand Type: ShadowGear Weight: 100 View: 119 Jobs: SoulLinker: true Locations: Shadow_Weapon: true Script: | bonus bAspdRate,50; bonus2 bSubEle,Ele_Neutral,5; bonus2 bMagicAtkEle,Ele_Dark,5; callfunc("GetUpgradeBonus"); Lastly, go and edit your file iteminfo.lua
1. You must add this first:
[50108] = { unidentifiedDisplayName = "Upgrade - I", unidentifiedResourceName = "Wolf_Orb_M_Counter_1", unidentifiedDescriptionName = { "" }, identifiedDisplayName = "Upgrade - I", identifiedResourceName = "Wolf_Orb_M_Counter_1", identifiedDescriptionName = { "^0066FFThis equipment is currently at Upgrade - I^000000" }, slotCount = 0, ClassNum = 0, costume = false }, [50109] = { unidentifiedDisplayName = "Upgrade - II", unidentifiedResourceName = "Wolf_Orb_Mag_1", unidentifiedDescriptionName = { "" }, identifiedDisplayName = "Upgrade - II", identifiedResourceName = "Wolf_Orb_Mag_1", identifiedDescriptionName = { "^404DD9This equipment is currently at Upgrade - II^000000" }, slotCount = 0, ClassNum = 0, costume = false }, [50110] = { unidentifiedDisplayName = "Upgrade - III", unidentifiedResourceName = "Wolf_Orb_Robust_1", unidentifiedDescriptionName = { "" }, identifiedDisplayName = "Upgrade - III", identifiedResourceName = "Wolf_Orb_Robust_1", identifiedDescriptionName = { "^8033B3This equipment is currently at Upgrade - III^000000" }, slotCount = 0, ClassNum = 0, costume = false }, [50111] = { unidentifiedDisplayName = "Upgrade - IV", unidentifiedResourceName = "Wolf_Orb_Str_1", unidentifiedDescriptionName = { "" }, identifiedDisplayName = "Upgrade - IV", identifiedResourceName = "Wolf_Orb_Str_1", identifiedDescriptionName = { "^BF1A8CThis equipment is currently at Upgrade - IV^000000" }, slotCount = 0, ClassNum = 0, costume = false }, [50112] = { unidentifiedDisplayName = "Upgrade - V", unidentifiedResourceName = "Wolf_Orb_Hp_1", unidentifiedDescriptionName = { "" }, identifiedDisplayName = "Upgrade - V", identifiedResourceName = "Wolf_Orb_Hp_1", identifiedDescriptionName = { "^FF0066This equipment is currently at Upgrade - V^000000" }, slotCount = 0, ClassNum = 0, costume = false }, (2.) Optional. If you are planning to add more than 5 upgrades or if you modified the item ID of enchant stones, you must add/update the necessary iteminfo entry for those just like the above entries. (with the correct enchantIDs of course)
3. Then add your equipment upgrade description. Here are some sample entry using the 2 equipment samples for your reference:
[50103] = { unidentifiedDisplayName = "Costume Fate Magic Book", unidentifiedResourceName = "Fate_MagicBook", unidentifiedDescriptionName = { "Unknown Item, can be identified by using a ^6666CCMagnifier^000000." }, identifiedDisplayName = "Costume Fate Magic Book", identifiedResourceName = "Fate_MagicBook", identifiedDescriptionName = { "Slightly increase attack speed", "+5% Resistance to Ghost element", "Adds a chance of autocasting Thunder Storm when physically attacking", "+1% Matk per ^0000FFupgrade^000000", "+1 Allstats per ^0000FFupgrade^000000", "________________________", "^0000FF[Upgrades]", "^0066FFI: +2% Ignore Mdef", "^404DD9II: +4 Attack Range", "^8033B3III: Adds a chance of autocasting Heaven's Drive when physically attacking", "^BF1A8CIV: +3% Ignore Mdef", "^FF0066V: Has a low chance of autocasting Spider Web when physically attacking, +5% Ghost Resistance", "^000000________________________", "Class:^6666CC Costume Weapon^000000", "Weight:^009900 10^000000", "Jobs:^6666CC Sage^000000" }, slotCount = 0, ClassNum = 115, costume = true }, [50107] = { unidentifiedDisplayName = "Costume Fate Wand", unidentifiedResourceName = "Fate_Wand", unidentifiedDescriptionName = { "Unknown Item, can be identified by using a ^6666CCMagnifier^000000." }, identifiedDisplayName = "Costume Fate Wand", identifiedResourceName = "Fate_Wand", identifiedDescriptionName = { "Slightly increase attack speed", "+5% Resistance to Neutral element", "+5% Shadow Magical DMG", "+1% Matk per ^0000FFupgrade^000000", "+1 Allstats per ^0000FFupgrade^000000", "________________________", "^0000FF[Upgrades]", "^0066FFI: +5% Shadow Magical DMG", "^404DD9II: +5% Demi-Human Resistance", "^8033B3III: +10% Shadow Magical DMG", "^BF1A8CIV: Reduces any reflected damage from enemies by 50%", "^FF0066V: +20% Ignore Mdef, +5% Neutral Resistance", "^000000________________________", "Class:^6666CC Costume Weapon^000000", "Weight:^009900 10^000000", "Jobs:^6666CC Soul Linker^000000" }, slotCount = 0, ClassNum = 119, costume = true }, That's basically it! You may implement it to an existing equipment to make it more relevant and usable 🙂
DM me on Discord for questions and clarification.
194 downloads
Updated
-
Guild Package Manager
An automated guild package manager that will help your server manage the distribution of guild package. Currently the script checks the following:
Must be a new guild on the server Must have at least {.@min-1} Guild Members ({.@min} including the Guild Leader) Guild Members must be online Guild Members must have a unique IP (duals are not counted and won't be receiving any rewards) {.@bypassipcheck == 0} Both Guild Leader and Guild Members must be at their maximum level {.@blvl}/{.@jlvl} Both Guild Leader and Guild Members must not participated on any Guild Recruitment on the past Configurations:
.@min = 5; // Minimum Guild Count Requirement
.@blvl = 255; // Required Base Level
.@jlvl = 120; // Required Job Level
.@bypassipcheck = 0; // Bypass IP Check
Notes:
» All contents must be Guild-bounded
» Sharable within the guild by using @gstorage or trading guildmates
» Guildmates who left the guild will have their guild-bounded items automatically transfer into @gstorage (including compounded cards)
Example Packages: (feel free to modify the packages in functions getrlp, getrap, getrwp, always use getitembound/getitembound2 with Bound_Guild flag)
» Recruitment Leader Pack (for Guild Leader only) - 1x BTS Armor Set
» Recruitment Armor Pack (for Guild Members only) - 1x Quest Valkyrie Set of choice
» Recruitment Weapon Pack (for All) - 1x +7 Custom Weapon of choice (Quest Weapon)
ItemDB Packages:
- Id: {YOUR .@rlpid ID HERE} AegisName: Recruitment_Leader_Pack Name: Recruitment Leader Pack Type: Delayconsume Buy: 2 Script: | callfunc "getrlp"; - Id: {YOUR .@rapid ID HERE} AegisName: Recruitment_Armor_Pack Name: Recruitment Armor Pack Type: Delayconsume Buy: 2 Script: | callfunc "getrap"; - Id: {YOUR .@rwpid ID HERE} AegisName: Recruitment_Weapon_Pack Name: Recruitment Weapon Pack Type: Delayconsume Buy: 2 Script: | callfunc "getrwp";175 downloads
Updated
-
Advanced Safe Refiner
Just sharing my own safe refiner NPC that mimics the Safe Refinement System of ROM:EL. As the item increases its refinement level, the materials required will grow exponentially as it requires the copy of the item you are refining based on its next refinement level. The NPC can only refine the item if its next refinement process is not safe anymore for Hollgrehenn.
Settings:
.@npc_name$ = Name of your NPC
.@price - The required zeny for refining.
.@canfail - Refining can fail but keeps the target equipment and stays at the current refinement level (0 = disabled; 1 = enabled)
.@same - Check if the materials has the same refinement level (0 = disabled; 1 = enabled)
.@startsafe - Start counting materials after the safe refine on Hollgrehenn (0 = disabled; 1 = enabled)
.@mineralcostmultiplier - The Oridecon/Elunium required per refine based on [.@startsafe] settings (0 = disabled)
[ START SAFE TABLE ]
At Weapon Lvl 4 / Armor Lvl 1
+4 -> +5 = 1 copy
+5 -> +6 = 2 copies
+6 -> +7 = 3 copies
+7 -> +8 = 4 copies
+8 -> +9 = 5 copies
+9 -> +10 = 6 copies
475 downloads
Updated
-
VPatcher
Just sharing my own Ragnarok Patcher for your server. A simple Ragnarok Client Patcher with rsumerge GRF Merge support powered by .NET Framework written in C#.
INSTRUCTION
1. Serve your files using the built-in php server on the server
2. Create your new patch folder inside "patches" folder, add "list.txt" inside the newly created patch folder and enumerate all the files inside the folder with the following format:
[File Name][tab][File Path]([tab][Patch Target])[newline]
(parentheses indicates that the argument is optional, do not include the characters on formatting)
(even though [File Path] is required, leave blank after the tab if the path is the root)
Ex: RagnarokOnline.exe[tab][newline]
OptionInfo.lua[tab]savedata/[newline]
iteminfo.lua[tab]System/[newline]
patch.grf[tab][tab]mygrf.grf[newline]
Important Note: When naming your patch folders, it is important to consider its alphabetical order. With this, the last patch folder detected will override all the patches.
3. Replace the background skin of the WinForm in the Designer tab
420 downloads
Updated