Langkau tajuk talian

Renewal to Pre-Renewal Migration Guide

Purpose: Documentation for importing Renewal items and mobs into Pre-Renewal server with proper balancing.


Table of Contents

  1. Overview
  2. Key Differences RE vs Pre-RE
  3. Item Migration
  4. Mob Migration
  5. Bonus Conversion Table
  6. Balancing Guidelines
  7. Implementation Checklist
  8. Testing Protocol

Overview

Migration Goals

Goal Description
Expand Content Add new items/mobs from Renewal
Maintain Balance Adjust values for Pre-RE mechanics
Avoid Crashes Skip incompatible bonuses
Player Experience Items should work as expected

Risk Assessment

Risk Level Category Action
HIGH Renewal-only bonuses Convert or skip
MEDIUM Stat differences Adjust values
LOW Visual/cosmetic Import directly

Key Differences

Formula Differences

Mechanic Pre-Renewal Renewal
ATK Calculation STR-based, Min~Max Weapon ATK + Equip ATK
MATK Calculation INT-based Weapon MATK + Equip MATK
DEF Formula Flat reduction % reduction
Cast Time Single cast time Variable + Fixed
ASPD Formula AGI + DEX based Different coefficients
Critical +40% damage +40% damage (same)
Flee AGI + LUK based Different formula

Player Stats Comparison (Level 99)

Stat Pre-RE Typical Renewal Typical
HP 10,000 - 30,000 30,000 - 150,000
SP 500 - 2,000 1,000 - 5,000
ATK 300 - 800 500 - 2,000+
DEF 50 - 150 100 - 500

Monster Stats Comparison

Stat Pre-RE Renewal Ratio
HP Base ~1.5-3x higher 0.5-0.7x
ATK Min~Max Base ATK Different
DEF Flat Higher values 0.6-0.8x
EXP Base Often higher Adjust

Item Migration

Bonus Compatibility Matrix

Fully Compatible (No Changes Needed)

bStr, bAgi, bVit, bInt, bDex, bLuk
bAllStats
bMaxHP, bMaxSP, bMaxHPrate, bMaxSPrate
bHPrecovRate, bSPrecovRate
bBaseAtk, bAtk, bAtk2
bMatk
bDef, bDef2, bMdef, bMdef2
bHit, bFlee, bFlee2
bCritical, bAspd, bAspdRate
bAddRace, bAddEle, bAddSize, bAddClass
bSubRace, bSubEle, bSubSize, bSubClass
bMagicAddRace, bMagicAddEle, bMagicAddSize
bLongAtkRate, bShortAtkRate, bCritAtkRate
bIgnoreDefRace, bIgnoreDefEle
bIgnoreMdefRace, bIgnoreMdefEle
bAddEff, bAddEffWhenHit, bResEff
bNoKnockback, bNoGemstone
bUnbreakableWeapon, bUnbreakableArmor
bHealPower, bHealPower2
bAddItemHealRate, bAddItemGroupHealRate
bSkillAtk, bSkillHeal
bDelayrate
bCastrate (maps to total cast)
bUseSPrate
bSPDrainValue, bHPDrainValue
bAutoSpell, bAutoSpellWhenHit

Requires Conversion

RE Bonus Issue Conversion
bAtkRate RE formula only bBaseAtk or bAddClass
bWeaponMatkRate RE formula only bMatk
bFixedCastrate No fixed cast → Skip or bCastrate
bFixedCast No fixed cast → Skip
bSkillFixedCast No fixed cast → Skip
bVariableCastrate Same as bCastrate bCastrate

Skip Completely

bFixedCastrate      - Fixed cast tidak exist
bFixedCast          - Fixed cast tidak exist
bSkillFixedCast     - Fixed cast tidak exist
bAddFixedCast       - Fixed cast tidak exist

Item Import Workflow

┌─────────────────────────────────────────────────────────────┐
│                    ITEM IMPORT PROCESS                       │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│  1. SELECT ITEM                                              │
│     └── Check if item already exists in Pre-RE DB            │
│                                                              │
│  2. SCAN BONUSES                                             │
│     ├── List all bonuses in item script                      │
│     ├── Flag incompatible bonuses                            │
│     └── Flag bonuses needing conversion                      │
│                                                              │
│  3. CONVERT BONUSES                                          │
│     ├── bAtkRate,X → bBaseAtk,Y or bAddClass,Class_All,Z     │
│     ├── bWeaponMatkRate,X → bMatk,Y                          │
│     ├── bVariableCastrate,X → bCastrate,X                    │
│     └── bFixedCast* → SKIP                                   │
│                                                              │
│  4. BALANCE VALUES                                           │
│     ├── Reduce % bonuses by 50-70%                           │
│     ├── Cap maximum values                                   │
│     └── Consider item tier/rarity                            │
│                                                              │
│  5. TEST ITEM                                                │
│     ├── Equip and check stats                                │
│     ├── Test in combat                                       │
│     └── Compare with similar Pre-RE items                    │
│                                                              │
│  6. DOCUMENT CHANGES                                         │
│     └── Log original vs converted values                     │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Mob Migration

Stat Conversion Guidelines

HP Conversion

RE Mob Type Conversion Factor Example
Normal mob ×0.5 - 0.7 10,000 → 5,000-7,000
Mini-boss ×0.6 - 0.8 100,000 → 60,000-80,000
MVP ×0.5 - 0.7 1,000,000 → 500,000-700,000
Instance MVP ×0.4 - 0.6 Custom balance

ATK Conversion

Renewal uses Attack (base) and Attack2 (magic base). Pre-RE uses Attack (min) and Attack2 (max).

# Renewal Format
Attack: 500      # Base physical
Attack2: 200     # Base magical

# Pre-RE Conversion
Attack: 400      # Minimum ATK (base × 0.8)
Attack2: 600     # Maximum ATK (base × 1.2)

Conversion Formula:

Pre-RE Min ATK = RE Attack × 0.7 - 0.8
Pre-RE Max ATK = RE Attack × 1.1 - 1.3

DEF/MDEF Conversion

RE Value Pre-RE Value Notes
0-50 Same Low DEF mobs
50-100 ×0.8 Medium DEF
100-200 ×0.6 High DEF
200+ ×0.5 + cap 150 Very high DEF

EXP Conversion

Factor Adjustment
Base EXP ×0.7 - 0.9
Job EXP ×0.7 - 0.9
MVP EXP ×0.5 - 0.7

Renewal-Only Mob Fields

These fields exist in RE but not Pre-RE:

Field Action
Resistance Remove (RE only)
MagicResistance Remove (RE only)

Mob Skills Compatibility

Check Before Import

┌─────────────────────────────────────────────────────────────┐
│                 MOB SKILL COMPATIBILITY                      │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│  SAFE TO IMPORT:                                             │
│  ├── 1st/2nd class skills                                    │
│  ├── Basic monster skills (NPC_*)                            │
│  └── Pre-RE era boss skills                                  │
│                                                              │
│  NEEDS VERIFICATION:                                         │
│  ├── 3rd class skills (may not exist)                        │
│  ├── 4th class skills (definitely not exist)                 │
│  └── Episode 13+ skills                                      │
│                                                              │
│  LIKELY INCOMPATIBLE:                                        │
│  ├── Renewal-specific mechanics                              │
│  ├── Fixed cast skills                                       │
│  └── 4th job skills                                          │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Mob Import Workflow

┌─────────────────────────────────────────────────────────────┐
│                    MOB IMPORT PROCESS                        │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│  1. SELECT MOB                                               │
│     ├── Check if mob ID conflicts with existing              │
│     └── Verify sprite exists in client                       │
│                                                              │
│  2. CONVERT STATS                                            │
│     ├── HP: Apply conversion factor                          │
│     ├── ATK: Convert base → min/max                          │
│     ├── DEF/MDEF: Apply reduction                            │
│     ├── Remove: Resistance, MagicResistance                  │
│     └── EXP: Adjust for Pre-RE rates                         │
│                                                              │
│  3. CHECK SKILLS                                             │
│     ├── List all mob skills from mob_skill_db                │
│     ├── Verify each skill exists in Pre-RE                   │
│     └── Remove or replace incompatible skills                │
│                                                              │
│  4. CHECK DROPS                                              │
│     ├── Verify all drop items exist                          │
│     ├── Adjust drop rates if needed                          │
│     └── Replace RE-only items with alternatives              │
│                                                              │
│  5. TEST MOB                                                 │
│     ├── Spawn and check stats display                        │
│     ├── Test combat (damage given/received)                  │
│     ├── Test skill usage                                     │
│     └── Verify drops                                         │
│                                                              │
│  6. BALANCE CHECK                                            │
│     ├── Compare with similar level Pre-RE mobs               │
│     ├── Test with typical Pre-RE geared player               │
│     └── Adjust if too easy/hard                              │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Bonus Conversion Table

bAtkRate Conversion

RE Value Pre-RE Option A Pre-RE Option B
1-5% bBaseAtk,5-15 bAddClass,Class_All,1-2
5-10% bBaseAtk,15-30 bAddClass,Class_All,2-4
10-15% bBaseAtk,30-50 bAddClass,Class_All,4-6
15-25% bBaseAtk,50-80 bAddClass,Class_All,6-10
25-50% bBaseAtk,80-120 bAddClass,Class_All,10-15

Recommendation: Use bAddClass,Class_All,X for % damage increase.

bMatkRate (Works in Pre-RE)

Already compatible - no conversion needed.

Cast Time Conversion

RE Bonus Pre-RE Equivalent
bVariableCastrate,-10 bCastrate,-10
bFixedCastrate,-50 SKIP
bFixedCast,-500 SKIP
bCastrate,-10 bCastrate,-10 (same)

Comprehensive Conversion Examples

Example 1: Weapon with bAtkRate

# RENEWAL ORIGINAL
- Id: 12345
  AegisName: Sample_Sword
  Script: |
    bonus bAtkRate,15;
    bonus bCritical,10;
    bonus bAspdRate,5;

# PRE-RE CONVERTED
- Id: 12345
  AegisName: Sample_Sword
  Script: |
    bonus bAddClass,Class_All,6;  # 15% → 6% (reduced)
    bonus bCritical,10;           # unchanged
    bonus bAspdRate,5;            # unchanged

Example 2: Armor with Cast Reduction

# RENEWAL ORIGINAL
- Id: 23456
  AegisName: Sample_Armor
  Script: |
    bonus bMdef,5;
    bonus bVariableCastrate,-10;
    bonus bFixedCastrate,-20;

# PRE-RE CONVERTED
- Id: 23456
  AegisName: Sample_Armor
  Script: |
    bonus bMdef,5;           # unchanged
    bonus bCastrate,-10;     # Variable → total cast
    # bFixedCastrate SKIPPED (not applicable)

Example 3: Accessory with Multiple Bonuses

# RENEWAL ORIGINAL
- Id: 34567
  AegisName: Sample_Ring
  Script: |
    bonus bAtkRate,10;
    bonus bMatkRate,10;
    bonus bMaxHPrate,5;
    bonus bDelayrate,-5;

# PRE-RE CONVERTED
- Id: 34567
  AegisName: Sample_Ring
  Script: |
    bonus bAddClass,Class_All,4;  # bAtkRate 10% → 4%
    bonus bMatkRate,10;           # unchanged (works in Pre-RE)
    bonus bMaxHPrate,5;           # unchanged
    bonus bDelayrate,-5;          # unchanged

Balancing Guidelines

Item Tier System

Tier bAtkRate Equivalent bAddClass Max Drop Source
Common 1-2% 1-2% Normal mobs
Uncommon 3-5% 2-4% Mini-boss
Rare 5-8% 4-6% MVP
Epic 8-12% 6-10% Hard MVP/Instance
Legendary 12-15% 10-15% Special event/quest
Bonus Type Soft Cap Hard Cap
bAddClass,Class_All 10% 15%
bAtkRate (if implemented) 10% 15%
bMatkRate 15% 20%
bCastrate -30% -50%
bAspdRate 15% 20%
bCritAtkRate 20% 30%
bLongAtkRate 15% 25%
bShortAtkRate 15% 25%

Class Balance Considerations

Class Sensitivity Watch For
Champion HIGH Asura damage scaling
Sniper HIGH DS/Auto-attack builds
High Wizard MEDIUM MATK scaling
Lord Knight MEDIUM Spiral/BB damage
Paladin LOW Tanky, less affected
High Priest LOW Support class

PvP vs PvM Balance

Content Priority Notes
PvM (Leveling) Allow stronger items Quality of life
PvM (MVP) Moderate balance Competition
PvP (Duel) Strict balance Fairness
WoE Very strict Server health

Implementation Checklist

Phase 1: Preparation

  • [ ] Backup current database files
  • [ ] Create import folder structure
  • [ ] Document target items/mobs list
  • [ ] Verify client has required sprites/effects

Phase 2: Item Migration

  • [ ] Scan all target items for incompatible bonuses
  • [ ] Create conversion mapping document
  • [ ] Convert item scripts
  • [ ] Add items to db/import/item_db.yml
  • [ ] Test each item individually

Phase 3: Mob Migration

  • [ ] Scan all target mobs for stats
  • [ ] Apply stat conversion formulas
  • [ ] Check mob skills compatibility
  • [ ] Verify drop items exist
  • [ ] Add mobs to db/import/mob_db.yml
  • [ ] Add mob skills to db/import/mob_skill_db.yml
  • [ ] Test each mob individually

Phase 4: Balance Testing

  • [ ] Test items on multiple classes
  • [ ] Test mobs with typical Pre-RE gear
  • [ ] Compare with existing Pre-RE content
  • [ ] Gather feedback from test players
  • [ ] Adjust values as needed

Phase 5: Documentation

  • [ ] Update player-facing documentation
  • [ ] Document all converted items/mobs
  • [ ] Create changelog
  • [ ] Prepare announcement

Testing Protocol

Item Testing Checklist

For each imported item:

[ ] Item equips without error
[ ] Stats display correctly in equipment window
[ ] Bonuses apply correctly (check with @battlestats)
[ ] Works with existing set bonuses (if any)
[ ] No console errors/warnings
[ ] Compare damage before/after equip
[ ] Test with relevant skills

Mob Testing Checklist

For each imported mob:

[ ] Mob spawns without error
[ ] Stats match expected values (@mobinfo)
[ ] Takes appropriate damage from players
[ ] Deals appropriate damage to players
[ ] Uses skills correctly
[ ] Drops items correctly
[ ] EXP reward is appropriate
[ ] No console errors/warnings

Balance Test Scenarios

Scenario 1: Fresh Level 99 Character

  • Basic gears (+4 to +7)
  • No cards
  • Should be able to kill mob in reasonable time

Scenario 2: Mid-Geared Character

  • Good gears (+7 to +9)
  • Some cards
  • Should kill efficiently

Scenario 3: End-Game Character

  • Best gears (+10)
  • Full cards
  • Should not trivialize content

Appendix

Quick Reference: Safe Bonuses

bStr bAgi bVit bInt bDex bLuk bAllStats
bMaxHP bMaxSP bMaxHPrate bMaxSPrate
bBaseAtk bAtk bMatk bMatkRate
bDef bMdef bHit bFlee bCritical
bAspd bAspdRate bCastrate bDelayrate
bAddRace bAddEle bAddSize bAddClass
bSubRace bSubEle bSubSize
bLongAtkRate bShortAtkRate bCritAtkRate
bHealPower bHealPower2
bAddEff bResEff
bAutoSpell bAutoSpellWhenHit
bSkillAtk bSkillHeal
bNoGemstone bNoKnockback
bUnbreakableWeapon bUnbreakableArmor

Quick Reference: Convert/Skip

CONVERT:
  bAtkRate → bAddClass,Class_All,X (reduced)
  bWeaponMatkRate → bMatk,X
  bVariableCastrate → bCastrate

SKIP:
  bFixedCastrate
  bFixedCast
  bSkillFixedCast
  bAddFixedCast

Useful Commands for Testing

@item <id>           - Get item
@mobinfo <id>        - Check mob stats
@battlestats         - View current stats
@monster <name>      - Spawn mob
@reloaditemdb        - Reload items
@reloadmobdb         - Reload mobs

Changelog

Date Version Changes
2024-XX-XX 1.0 Initial documentation

Note: This is a living document. Update as you discover new compatibility issues or better conversion methods.