Icon & NameTag Customization

Dynamic Character Name Decoration & Icon System

Tutorial Video

What is Icon & NameTag Customization?

Icon & NameTag Customization is a dynamic character personalization system that allows players to decorate their character names with custom symbols and icons. Choose from 20+ pre-configured decorations (brackets, stars, hearts, etc.) or add unlimited custom decorations via database. Features live preview showing "< NESTA3 >" format with your chosen decoration!

How It Works

🏷️ Name Tags Tab Interface

  • 6-Tab Navigation: Titles, Icons, Colors, Guild Color, Name Tags, NPC Shop
  • Name Tags Tab: Golden highlight when active (right side of interface)
  • X9 Coins Display: Balance shown at top (X9 Coins: 68425)
  • Choose Decoration Section: Large scrollable list on left side
  • Payment Options Section: Right side with payment dropdown and preview
  • Close Button: X button in top-right corner for quick dismissal

📋 Decoration List System

  • Scrollable List: Large box on left showing all available decorations
  • Format Display: Shows decoration applied to character name (e.g., "< NESTA3 >")
  • 20+ Default Options: Brackets (<>), Square ([]), Curly ({}), Parentheses (()), Stars (**), Plus (++), Hash (##), At (@@), Dollar ($$), Percent (%%), Ampersand (&&), Equals (==), Tilde (~~), Pipe (||), Slash (//), Backslash (\\\\), Unicode (★★, ♥♥, ◆◆, ♣♣, ♠♠)
  • Dynamic Loading: List loaded from NameTags database table
  • Single Click Selection: Click decoration to select and populate preview
  • Scroll Support: Vertical scrollbar for browsing long decoration lists

👁️ Live Preview System

  • Preview Section: Right side panel showing selected decoration
  • Decoration Name: "Decoration: Brackets" label in gray text
  • Visual Example: Golden text showing "< NESTA3 >" format
  • Description: "This is how your name will look!" subtitle
  • Real Character Name: Preview uses your actual character name dynamically
  • Instant Update: Preview updates immediately when clicking different decorations

💰 Payment & Purchase

  • Payment Method Dropdown: Select from available currencies (Silk: 10, X9 Coin: 500, etc.)
  • 11 Currency Types: X9 Coins, Silk (Own/Gift/Premium), Arena Coin, 5 Game Coins, Gold, Honor Points
  • Dynamic Pricing: NULL prices hide currency from dropdown
  • Buy Button: "Buy Name Decoration" button with golden border
  • Permanent Storage: Decoration saved to _Color_Storage table (NameDecoration column)
  • Instant Application: Decoration applies immediately after successful purchase

Database Architecture

🏷️ NameTags Table (Decoration List)

Purpose: Store available name decorations (dynamic list)

  • ID: INT IDENTITY PRIMARY KEY - Unique identifier
  • DecorationName: NVARCHAR(50) NOT NULL - Display name (e.g., "Brackets", "Stars")
  • DecorationSymbol: NVARCHAR(50) NOT NULL - Actual symbols (e.g., "<>", "★★")
  • Enabled: BIT NOT NULL DEFAULT 1 - Enable/disable decoration

Dynamic System: Add/remove decorations without changing code - just INSERT/UPDATE database!

💰 X9NameDecoration Table (Pricing)

Purpose: Define pricing for name decoration purchases (single row)

  • ID: INT IDENTITY PRIMARY KEY
  • Enabled: BIT NOT NULL DEFAULT 1 - Enable/disable feature globally
  • X9Coin_Price: INT NULL - Price in X9 Coins (default: 500)
  • Silk_Price: INT NULL - Price in Silk (Own)
  • ArenaCoin_Price: INT NULL - Price in Arena Coins
  • CopperCoin_Price / IronCoin_Price / SilverCoin_Price / GoldCoin_Price: INT NULL
  • Gold_Price: BIGINT NULL - Price in in-game gold
  • GiftSilk_Price / PremiumSilk_Price: INT NULL
  • HonorPoint_Price: INT NULL - Price in Honor Points

Single Row Config: Only one pricing row (ID=1), NULL = currency hidden from dropdown

💾 _Color_Storage.NameDecoration Column

Purpose: Store purchased character name decorations permanently

  • NameDecoration: NVARCHAR(50) NULL - Stores decoration symbol (e.g., "<>", "★★")
  • Character Key: CharName VARCHAR(64) PRIMARY KEY links to character
  • NULL Value: Normal name with no decoration
  • Unicode Support: NVARCHAR type supports Unicode characters (★, ♥, ◆, etc.)
  • Auto-Load: Decoration automatically applied when character enters game

Format Examples: "<>" = < Ahmed >, "[]" = [ Ahmed ], "★★" = ★ Ahmed ★

🎨 _CustomIcons Table (Icon Paths)

Purpose: Store game asset paths for custom icons

  • Id: INT PRIMARY KEY - Icon ID (manually assigned)
  • Path: NVARCHAR - Icon file path (e.g., nesta\icon\charicon\icon_01.ddj)
  • Next ID Logic: System calculates MAX(Id) + 1 for new entries
  • Auto-Generate: Empty path auto-generates sequential path
  • Manual Override: Enter custom path for specific icons

Managed via: PathIcon tab in X9 Filter admin panel

Key Features

📋 Dynamic Decoration System

  • 20+ Default Decorations: Brackets, Stars, Hearts, Diamonds, and more pre-configured
  • Unlimited Additions: Add custom decorations via simple database INSERT
  • Enable/Disable Control: Toggle decorations on/off without deletion
  • Unicode Support: Full Unicode character support (★, ♥, ◆, ♣, ♠, ⚔, ♔, etc.)
  • Database-Driven: No code changes needed to add/remove decorations
  • Scrollable List: Large browse list with vertical scrollbar for many decorations

👁️ Advanced Preview System

  • Real-Time Preview: Shows exactly how name will look with decoration
  • Decoration Label: Displays selected decoration name (e.g., "Decoration: Brackets")
  • Visual Example: Golden text preview (< NESTA3 >) using actual character name
  • Format Explanation: "This is how your name will look!" helper text
  • Instant Updates: Preview changes immediately when clicking different decorations
  • Character-Specific: Preview dynamically uses logged-in character's name

💰 Flexible Payment System

  • 11 Currency Options: X9 Coin, Silk (3 types), Arena Coin, 5 Game Coins, Gold, Honor Point
  • Single Payment Per Purchase: Choose one currency type from dropdown
  • Dynamic Dropdown: Only non-NULL prices appear in Payment Method list
  • Default Price: 500 X9 Coins (configurable via admin panel or database)
  • Admin Control: Set prices per currency type or disable (NULL) specific currencies
  • Instant Deduction: Currency deducted automatically on successful purchase

💾 Permanent Storage & Management

  • Permanent Decoration: Once purchased, decoration saved permanently to _Color_Storage
  • Auto-Load on Login: Decoration automatically applies when character enters game
  • Change Anytime: Buy different decoration to replace current one
  • No Expiration: Decorations never expire or require renewal
  • Admin Override: Administrators can manually edit decorations in LogColor tab
  • Remove Decoration: Set to NULL in database to return to normal name display

Admin Panel Configuration

Adding New Decorations (NameTags Table)

-- Add new decoration via SQL
INSERT INTO NameTags (DecorationName, DecorationSymbol, Enabled) 
VALUES ('Swords', '⚔⚔', 1);

INSERT INTO NameTags (DecorationName, DecorationSymbol, Enabled) 
VALUES ('Crowns', '♔♔', 1);

INSERT INTO NameTags (DecorationName, DecorationSymbol, Enabled) 
VALUES ('Arrows', '»«', 1);

-- Result in-game:
-- ⚔ NESTA3 ⚔
-- ♔ NESTA3 ♔
-- » NESTA3 «

Pricing Configuration (Dynamic Shop Tab)

  1. Access Admin Panel: Open X9 Filter admin application
  2. Navigate to Dynamic Shop: Click Dynamic Shop in main menu
  3. Select Name Tags Tab: Choose "NameTags" from tab dropdown
  4. View Pricing Row: Shows single configuration row (ID=1) with 11 price columns
  5. Edit Prices: Modify price fields (X9Coin_Price default: 500)
  6. Disable Currencies: Type "OFF" or NULL to hide currency from dropdown
  7. Auto-Save: Changes save automatically when field loses focus
  8. Enable Feature: Toggle Enabled checkbox (1 = On, 0 = Off)
  9. Verify: Click Refresh to confirm price updates

Managing Purchased Decorations (LogColor Tab)

  1. Access LogColor Tab: Navigate to LogColor in admin panel
  2. View Decorations: NameDecoration column shows purchased decorations
  3. Select Character: Click row to view character's decoration data
  4. Manual Edit: Modify NameDecoration field directly (type decoration symbol)
  5. Remove Decoration: Clear field or set to NULL to remove decoration
  6. Add Manually: Use Add button to give decoration to specific character
  7. Delete Entry: Remove entire character entry with Delete button
  8. Auto-Save: Changes save automatically on field blur
  9. Refresh: Click Refresh to load latest decoration data

Professional Tips

For Players - Decoration Selection

  • Browse All Options: Scroll through entire decoration list before choosing
  • Use Preview: Check "Decoration: [Name]" preview to see exact format
  • Unicode Decorations: Stars (★), Hearts (♥), Diamonds (◆) stand out more than symbols
  • Match Style: Coordinate decoration with name color for cohesive look
  • Consider Readability: Some decorations (==, ~~) may be less visible on certain backgrounds
  • Clan Coordination: Guild members can use same decoration for unified appearance

For Players - Using the System

  • Access Dynamic Shop: Open via F9 Filter PlayerBox → Dynamic Shop
  • Check Balance: Verify X9 Coins or other currency balance at top
  • Select Name Tags Tab: Click "Name Tags" tab (golden highlight when active)
  • Browse Decorations: Scroll through list on left side, click to select
  • Check Preview: Right side shows "< NESTA3 >" format with your character name
  • Choose Payment: Select currency from Payment Method dropdown (e.g., Silk: 10)
  • Purchase: Click "Buy Name Decoration" button to complete purchase
  • Instant Effect: Decoration applies immediately - name changes in-game

For Administrators - System Management

  • Starter Pack: 20+ default decorations included (no setup required)
  • Add Decorations: Simple SQL INSERT to add new options (no code changes)
  • Unicode Characters: Use Unicode symbols (★ ♥ ◆ ♣ ♠ ⚔ ♔) for premium decorations
  • Pricing Strategy: Name decorations typically cheaper than colors (default: 500 X9 Coins)
  • Multiple Currencies: Offer 2-3 payment options for player flexibility
  • Enable/Disable: Use Enabled bit in NameTags to hide specific decorations temporarily
  • Monitor Usage: Check _Color_Storage.NameDecoration column to see popular choices
  • Custom Sets: Create themed decoration sets (e.g., VIP decorations with rare Unicode)

Practical Examples

Scenario 1: Buying Star Decoration

  1. Open Dynamic Shop: Via F9 Filter PlayerBox menu
  2. Check Balance: See X9 Coins: 68425 at top of window
  3. Click Name Tags Tab: Tab highlights golden color
  4. Browse Decorations: Scroll through left-side list
  5. Select Stars: Click "** NESTA3 **" option in list
  6. Check Preview: Right side shows "Decoration: Stars" with "** NESTA3 **"
  7. Select Payment: Choose "Silk: 10" from Payment Method dropdown
  8. Purchase: Click "Buy Name Decoration" button
  9. Success! Your character name now displays as ** NESTA3 ** in-game

Scenario 2: Admin Adding Custom Decoration

  1. Identify Need: Players request sword decoration (⚔) for warrior theme
  2. Open SQL Management Studio: Connect to X9FILTER database
  3. Run INSERT Query: INSERT INTO NameTags (DecorationName, DecorationSymbol, Enabled) VALUES ('Swords', '⚔⚔', 1)
  4. Verify: SELECT * FROM NameTags - new row appears with ID
  5. No Server Restart: Decoration immediately available in Dynamic Shop
  6. Players See It: "⚔ NESTA3 ⚔" option appears in Name Tags list
  7. Test Purchase: Buy decoration to verify it works correctly
  8. Result: Warriors can now use ⚔ NESTA3 ⚔ decoration!

Technical Implementation

Decoration Storage Format

-- NameDecoration stored as NVARCHAR(50) in _Color_Storage
-- Format: decoration symbols only (system adds spaces and character name)

Examples:
'<>'   → displays as: < Ahmed >
'[]'   → displays as: [ Ahmed ]
'★★'   → displays as: ★ Ahmed ★
'⚔⚔'   → displays as: ⚔ Ahmed ⚔
'»«'   → displays as: » Ahmed «
NULL   → displays as: Ahmed (no decoration)

-- Stored in database:
UPDATE _Color_Storage 
SET NameDecoration = '★★' 
WHERE CharName = 'NESTA3'

Adding Decorations (SQL)

-- Add new decoration to NameTags table
INSERT INTO NameTags (DecorationName, DecorationSymbol, Enabled) 
VALUES 
    ('Swords', '⚔⚔', 1),
    ('Crowns', '♔♔', 1),
    ('Shields', '🛡🛡', 1),
    ('Fire', '🔥🔥', 1);

-- Disable decoration temporarily
UPDATE NameTags 
SET Enabled = 0 
WHERE DecorationName = 'Swords';

-- Delete decoration permanently
DELETE FROM NameTags 
WHERE ID = 25;

Price Configuration (SQL)

-- Set Name Decoration price to 500 X9 Coins
UPDATE X9NameDecoration 
SET X9Coin_Price = 500, 
    Enabled = 1

-- Enable multiple payment methods
UPDATE X9NameDecoration 
SET X9Coin_Price = 500, 
    Silk_Price = 10, 
    Gold_Price = 250000

-- Disable specific currency (hide from dropdown)
UPDATE X9NameDecoration 
SET ArenaCoin_Price = NULL

Summary

Icon & NameTag Customization provides unlimited decoration possibilities with 20+ defaults, Unicode support, live preview, and database-driven flexibility - no code changes ever needed!

Core Benefits

🏷️

20+ default decorations

♾️

Unlimited additions

👁️

Live preview system

💾

Permanent storage

Decorate your name with ★ stars ★, ♥ hearts ♥, or ⚔ swords ⚔ - add unlimited decorations via simple SQL!

by X9 Filter New Feature!

Enhancing your Silkroad Online experience