Drop Logs & Game Asset System
Advanced Drop Tracking & Path Management Platform
Tutorial Video
What is Drop Logs & Game Asset System?
Drop Logs & Game Asset System is a comprehensive monitoring and management platform that tracks all item drops across your server with detailed filtering capabilities. Monitor player activities, analyze drop patterns, and manage game asset paths with professional precision. Features advanced search filters for degree, rarity, character names, and regions with real-time tracking of every dropped item.
How It Works
Global Activity System
- Real-Time Monitoring: Track all item drops across the entire server instantly
- Comprehensive Data Display: View item name, degree, rarity, character, area, monster, and timestamp
- Advanced Filtering: Filter by item degree, rarity level, date ranges, item names, and character names
- Pagination Support: Navigate through thousands of records with smooth page controls
Drop Item Log Management
- Item Filter Configuration: Define custom item filters using flexible pattern matching (nvarchar 200 characters)
- Description System: Add detailed descriptions for each filter rule (nvarchar 500 characters)
- Enable/Disable Controls: Toggle individual filters on/off without deletion
- Auto-Save Functionality: Changes saved automatically when fields lose focus
Drop Register Log System
- Monster Tracking: Record MonsterRefObjID for every drop event
- Player Attribution: Track killer names for accountability (nvarchar 100)
- Location Data: Store RegionID and 3D coordinates (PosX, PosY, PosZ as floats)
- Timestamp Recording: Automatic DropTime registration with GETDATE()
Game Asset Path Management
- Icon Path System: Manage game asset paths stored in _CustomIcons table
- Auto-Generation Feature: Empty path fields auto-generate sequential paths (nesta\icon\charicon\icon_01.ddj)
- Manual Override: Enter custom paths for specific assets
- Bulk Operations: Add, delete, or delete all icon paths with single clicks
Database Architecture
📊 DropItemLog Table
Purpose: Define and manage item drop filter rules
- ID: INT PRIMARY KEY IDENTITY(1,1) - Unique identifier
- ItemFilter: NVARCHAR(200) NULL - Item pattern matching filter
- Description: NVARCHAR(500) NULL - Detailed filter description
- Enabled: BIT NOT NULL DEFAULT 1 - Filter active status
- CreatedDate: DATETIME NOT NULL DEFAULT GETDATE() - Creation timestamp
Auto-Create: Table automatically created if not exists on system startup
📍 DropRegisterLog Table
Purpose: Record actual drop events with location and player data
- ID: INT PRIMARY KEY IDENTITY(1,1) - Unique identifier
- MonsterRefObjID: INT NOT NULL DEFAULT 0 - Monster that dropped item
- KillerName: NVARCHAR(100) NULL - Player who killed monster
- RegionID: INT NOT NULL DEFAULT 0 - Region/zone identifier
- PosX: FLOAT NOT NULL DEFAULT 0 - X coordinate
- PosY: FLOAT NOT NULL DEFAULT 0 - Y coordinate
- PosZ: FLOAT NOT NULL DEFAULT 0 - Z coordinate
- DropTime: DATETIME NOT NULL DEFAULT GETDATE() - Drop timestamp
Auto-Create: Table automatically created if not exists on system startup
🎨 _CustomIcons Table
Purpose: Manage game asset file paths (icons, images, resources)
- Id: INT PRIMARY KEY - Unique identifier (manually assigned)
- Path: NVARCHAR - Asset file path (e.g., nesta\icon\charicon\icon_01.ddj)
Auto-Generation: Next ID calculated as MAX(Id) + 1, paths auto-generated if empty
Key Features
🔍 Advanced Search & Filter System
- Degree Filter: Dropdown selector for item enhancement levels (10, 11, 12, etc.)
- Rarity Filter: Choose from Normal, Rare, Epic, Legendary, etc.
- Date Filter: Select "All" or specific date ranges for temporal analysis
- Item Name Search: Text input with real-time filtering (Item name...)
- Character Search: Find drops by specific player names (Character name...)
- Instant Results: All filters apply immediately without page reload
📋 Comprehensive Data Display
- Multi-Column View: Item Name, Degree, Rarity, Character, Area, Monster, Date
- Icon Display: Visual item icons for quick recognition
- Formatted Timestamps: Human-readable dates (2026-06-07 01:20:15.113)
- Pagination Controls: Navigate with PREV/NEXT buttons + page counter (Page 1 / 2)
- Total Count: Display total items found (Total Items: 21)
- Refresh Button: Manual refresh to load latest data
⚙️ Admin Panel Management
- Dual-Table System: Switch between DropItem and DropRegister tables via dropdown
- Dynamic Forms: Form fields change based on selected table (formDropItem / formDropRegister)
- Auto-Save on Blur: Fields save automatically when focus lost (LostFocus event)
- CRUD Operations: Add new rows, delete selected rows, refresh data
- Status Feedback: Real-time status messages (✓ Saved, ✓ Added, ⚠ Select a row first)
- Selection Sync: Click list item to populate form fields instantly
🎨 Path Icon Management
- Simple Interface: Two-column display (ID, Path) with selection support
- Auto-Generate Paths: Leave path empty → system generates nesta\icon\charicon\icon_XX.ddj
- Manual Entry: Enter custom paths for specific game assets
- Batch Delete: Delete All button for complete path cleanup
- Individual Delete: Remove specific paths with Delete button
- Auto-Save: Path edits save automatically on field blur
Admin Panel Configuration
DropLog Tab Operations
- Connect to Database: X9 Filter admin panel automatically connects using SQL credentials
- Select Table: Choose "DropItem" or "DropRegister" from dropdown (cmbDropLogTable)
- View Data: All records load automatically in list view (lstDropLog)
- Select Row: Click any list item to populate form fields
- Edit Fields: Modify values (ItemFilter, Description, Enabled, MonsterRefObjID, KillerName, RegionID)
- Auto-Save: Click outside field or press Tab → changes save automatically
- Add New: Fill form fields and click Add button → new record created
- Delete Row: Select row and click Delete → confirmation and removal
- Refresh: Click Refresh button to reload latest data from database
PathIcon Tab Operations
- View Paths: All icon paths display in two-column format (Id, Path)
- Add New Path: Leave txtPathIconPath empty → auto-generates sequential path
- Custom Path: Enter specific path (e.g., custom\ui\button_gold.ddj) and click Add
- Edit Path: Select row, modify txtPathIconPath, click outside → auto-saves
- Delete Single: Select row, click Delete button
- Delete All: Click Delete All button → removes all icon path entries
- Refresh: Click Refresh to reload paths from _CustomIcons table
Professional Tips
For Server Administrators
- Monitor High-Value Drops: Use degree/rarity filters to track +10, +11, +12 items and legendary drops
- Player Activity Analysis: Search by character name to analyze individual player drop patterns
- Bot Detection: Identify suspicious drop patterns (same character, same location, rapid succession)
- Economy Balance: Track drop frequency and adjust monster loot tables accordingly
- Event Monitoring: Use date filters to analyze drop rates during special events
- Regional Analysis: Filter by area/region to balance zone difficulty and rewards
For Database Management
- Filter Configuration: Create ItemFilter patterns for specific item groups (e.g., "SOX_*" for all SOX items)
- Description Best Practices: Write clear descriptions explaining what each filter tracks
- Enable/Disable Strategy: Disable filters temporarily instead of deleting for future reuse
- Regular Cleanup: Archive old DropRegisterLog records to maintain performance
- Backup Strategy: Regular backups of DropItemLog configurations before major changes
For Asset Management
- Naming Convention: Use consistent path patterns (nesta\icon\charicon\icon_XX.ddj)
- Sequential IDs: Let system auto-generate IDs for organized structure
- Path Validation: Verify paths exist in client files before adding to database
- Documentation: Keep external documentation of which IDs correspond to which assets
- Testing: Test new paths in-game before adding multiple entries
Practical Example
Scenario: You want to track all degree 10+ item drops from specific monsters in China region
- Access Global Activity: Open the system and you'll see all recent drops in real-time
- Apply Filters: Select "10" from Degree dropdown, enter "CHINA" in area search
- Review Results: See all degree 10 items dropped in China with character names and timestamps
- Create Filter Rule: Switch to DropItem tab, add filter pattern for specific item types
- Monitor Continuously: Refresh periodically or let auto-refresh track new drops
Technical Implementation
Auto-Create Tables System
System automatically creates required tables on startup if they don't exist:
IF NOT EXISTS (SELECT * FROM sys.tables WHERE name = 'DropItemLog')
BEGIN
CREATE TABLE DropItemLog (
ID INT PRIMARY KEY IDENTITY(1,1),
ItemFilter NVARCHAR(200) NULL,
Description NVARCHAR(500) NULL,
Enabled BIT NOT NULL DEFAULT 1,
CreatedDate DATETIME NOT NULL DEFAULT GETDATE()
)
END
Auto-Save Implementation
Changes save automatically when fields lose focus (LostFocus event):
UPDATE DropItemLog
SET ItemFilter=@filter,
Description=@desc,
Enabled=@enabled
WHERE ID=@id
Path Auto-Generation Logic
Empty path fields trigger sequential path generation:
// Get next ID
SELECT ISNULL(MAX(Id), 0) + 1 FROM [_CustomIcons]
// Auto-generate path if empty
if (string.IsNullOrEmpty(path))
{
path = $"nesta\\icon\\charicon\\icon_{nextId:D2}.ddj";
}
Summary
Drop Logs & Game Asset System provides comprehensive server monitoring with advanced filtering, real-time tracking, and professional asset management capabilities.
Core Benefits
Advanced search filters
Real-time drop tracking
Professional admin tools
Asset path management
Monitor every drop, track every player, manage every asset - complete server visibility in one powerful system.
by X9 Filter New Feature!
Enhancing your Silkroad Online experience
0 Comments