Metadata & Grading
Every Card Is Unique
Metadata tracks condition, grading history, rarity, brand, stats, colors, and effects so a CVG 10 Gem Mint version is valued differently than a worn copy of the same card. All metadata uses version 2 format for compatibility.
Condition System Configuration
Every card rolls condition (1–100) which drives grading value and sell price. The system uses weighted presets for realistic distribution.
Config.Condition = {
enabled = true, -- Must remain true for economy
preset = 'strict', -- strict/balanced/generous
presets = {
-- Strict: Lower conditions more common (CVG 5-8 average)
strict = {
[0]=12, [10]=12, [20]=10, [30]=9, [40]=8, [50]=7,
[60]=6, [70]=5, [80]=3, [90]=2, [100]=1
},
-- Balanced: Even distribution across all conditions
balanced = {
[0]=2, [10]=3, [20]=5, [30]=7, [40]=9, [50]=10,
[60]=10, [70]=9, [80]=7, [90]=5, [100]=3
},
-- Generous: Higher conditions more common (CVG 8-10 frequent)
generous = {
[0]=1, [10]=2, [20]=3, [30]=4, [40]=5, [50]=7,
[60]=9, [70]=12, [80]=16, [90]=19, [100]=22
}
}
}Card Metadata Schema
When a card is generated (opened or created), the server assigns standardized metadata. If metadata is missing, the script rolls condition using Config.Condition weights.
Core Fields
- • condition: 1–100 (card condition)
- • description: Auto-generated "Condition X%"
- • rarity: Normal/Uncommon/Rare/Epic/Legendary/Holo/OriginalArt
- • brand: jg_warlords, jg_shin_genesis, etc.
- • style: Normal, OriginalArt, etc.
- • effectType: VStar, Rainbow_Rare, etc.
Optional Fields
- • stats: level, hp, attack, defense
- • colors: color1, color2, color3, color4, color5
- • grade: CVG grade (1-10) for graded cards
- • gradeLabel: CVG label (e.g., "CVG Gem Mint 10")
- • serial: Unique case serial number
- • gradeDate: Grading timestamp (DD/MM/YYYY)
CVG Grading System (Card Vault Grading)
Submitting a card to the grading shop requires an empty grading case and returns a slabbed case item containing the original card metadata with CVG grade.
Grading Process Requirements
- • Empty grading case item required for submission
- • Time-based grading varies by rarity (6-15 seconds)
- • 40/60 weighted gamble based on condition ranges
- • Holo cards cannot get CVG 10 unless condition is 100%
- • Unique serial number generated for each graded case
CVG Grade Labels
- • CVG 10: Gem Mint 10
- • CVG 9: Mint 9
- • CVG 8: NM-MT 8
- • CVG 7: NM 7
- • CVG 6: EX-MT 6
- • CVG 5: EX 5
- • CVG 4: VG-EX 4
- • CVG 3: VG 3
- • CVG 2: Good 2
- • CVG 1: Poor 1
Grading Shop Configuration
The grading shop uses time-based pricing where higher rarity cards cost more and take longer to grade. Requires empty grading cases for submission.
Time-Based Pricing Structure
Config.GradingShop = {
enabled = true,
currency = 'cash',
prices = {
Normal = { price = 500, timeSec = 6 },
Uncommon = { price = 1200, timeSec = 8 },
Rare = { price = 2500, timeSec = 9 },
Epic = { price = 4000, timeSec = 10 },
Legendary = { price = 6000, timeSec = 12 },
Holo = { price = 8000, timeSec = 14 },
OriginalArt = { price = 9000, timeSec = 15 }
}
}Grading Case Images
Config.GradingCase = {
case_pack = 'jim_g_trading_cards_grading_pack.webp',
case_label = 'jim_g_trading_cards_grading_pack_label.webp',
case_texture = 'jim_g_trading_cards_grading_pack_t.webp'
}Economy & Pricing System
Sell Shop Dynamic Pricing
Calculates value on the fly from rarity and condition using dynamicSellPriceWithMeta function.
- • Base value multiplied by rarity factor
- • Condition factor: 0.6 + 0.09 × grade (1-10 scale)
- • CVG grade significantly impacts sell value
- • Real-time market fluctuations available
CVG Grade Sell Multipliers
When selling graded slabs, the CVG grade applies a multiplier to the base sell price. Higher grades yield significantly more value.
Config.CVG.gradeMultipliers = {
[1] = 0.5, -- Poor: half base value
[2] = 0.7, -- Good
[3] = 0.85, -- VG
[4] = 1.0, -- VG-EX: base value
[5] = 1.2, -- EX
[6] = 1.5, -- EX-MT
[7] = 2.0, -- NM: double base value
[8] = 3.0, -- NM-MT: triple
[9] = 5.0, -- Mint: 5x
[10] = 10.0 -- Gem Mint: 10x base value
}CVG Binder & Case Splitter
CVG Binder
A dedicated binder for storing and displaying graded CVG slabs. Works like a standard binder but exclusively holds slabbed items.
- • Stores graded CVG slabs only
- • Displays grade, serial, and grade date
- • Same theme and checklist features as card binders
- • Preserves all slab metadata when stored
CVG Case Splitter
A consumable tool that breaks open a graded slab to retrieve the original card inside.
- • Splits a CVG slab back into the raw card
- • Card retains original condition and metadata
- • CVG grade, serial, and gradeDate are removed
- • Splitter item consumed on use (configurable)
Data Persistence
Binder System Storage
- • Removing a card from binder reconstructs item from stored metadata
- • Using cards decrements condition and persists via SetMetadata
- • SQL-free metadata storage using inventory system
- • All metadata uses version 2 format — legacy items auto-migrate on first use
🎯 Next Steps
After understanding the metadata and grading system: