ExpansionTrader Converter - Browser Edition
A browser-based converter that transforms ExpansionTrader configuration files into TBDynamicTrader format. No server required - everything runs in your browser!
Features
- 🌐 100% Browser-Based - No server, no Node.js installation needed
- 📤 File Upload - Drag & drop or click to upload multiple files
- 📦 Automatic ZIP Creation - All converted files packaged in a single ZIP
- 📊 Progress Tracking - Real-time progress bar and status updates
- 🎨 Modern UI - Clean, responsive interface
- ⚡ Fast Processing - Efficient client-side processing
Usage
- Open
index.htmlin any modern web browser - Upload your ExpansionTrader files:
- Category Files: JSON files containing items (e.g.,
Gardening.json,Assault_Rifles.json) - Collection Files: JSON files containing category references (e.g.,
BuildingSupplies.json) - Map Files:
.mapfiles containing dealer point data (e.g.,Maik.map,MyTrader.map)
- Category Files: JSON files containing items (e.g.,
- Configure options (optional):
- Set the default sell tax for dealer points
- Click "Convert & Download ZIP"
- Wait for processing (progress bar will show status)
- ZIP file will automatically download when complete
File Format
Input Files
Category Files (e.g., Gardening.json, Assault_Rifles.json)
JSON files containing items with the following structure:
json
{
"m_Version": 12,
"DisplayName": "Category Name",
"Items": [
{
"ClassName": "itemname",
"MaxPriceThreshold": 595,
"MinPriceThreshold": 355,
"SellPricePercent": -1.0,
"MaxStockThreshold": 100,
"MinStockThreshold": 1,
"QuantityPercent": -1,
"SpawnAttachments": [],
"Variants": []
}
]
}Collection Files (e.g., BuildingSupplies.json)
JSON files that reference categories:
json
{
"m_Version": 12,
"DisplayName": "Collection Name",
"Categories": [
"Gardening",
"Assault_Rifles"
]
}Map Files (e.g., Maik.map, MyTrader.map)
Text files containing dealer point definitions:
{DealerPointUniqueName.UsedCategoryCollection}|{position}|{orientation}|{optional items}Example:
ExpansionTraderDenis.BuildingSupplies|11833.576 140.605 12469.492|110 0 0|Jeans_Blue,TSHirt_Blue
ExpansionTraderGuo.BuildingSupplies|8599.360352 14.725300 10492.200195|-72.760590 0.000000 0.000000Format explanation:
{DealerPointUniqueName.UsedCategoryCollection}- Dealer point name and category collection to use{position}- X Y Z coordinates (space-separated){orientation}- Yaw Pitch Roll (space-separated){optional items}- Comma-separated list of additional items (optional)
Output
ExpansionTraderConverted_YYYY-MM-DD.zip- ZIP file containing:TraderItemConfigs/- Individual item JSON filesDealerPoints/- Individual dealer point JSON filesDealerPoints.json- Main dealer points configuration file
Windows Security Warning
If you see a Windows Security Warning when extracting the ZIP file, this is normal. Windows blocks files downloaded from the internet for security. To fix this:
- Right-click on the downloaded ZIP file
- Select Properties
- At the bottom, check the "Unblock" checkbox (if available)
- Click OK
- Now you can extract the ZIP file normally
Requirements
- Modern web browser (Chrome, Firefox, Edge, Safari)
- No additional software or server needed
- JSZip library is loaded from CDN automatically
Technical Details
- Uses JSZip library (loaded from CDN) for ZIP creation
- All processing happens client-side using JavaScript
- No data is sent to any server - complete privacy
- Handles trailing commas in JSON automatically
- Converts ExpansionTrader item properties to TBDynamicTrader format:
MaxPriceThreshold/MinPriceThreshold→maxBuyPrice/buyPriceSellPricePercent→sellPrice/maxSellPriceMaxStockThreshold/MinStockThreshold→maxStorageSpawnAttachments→attachmentUniqueNamesQuantityPercent→quantity
Conversion Logic
- Category Processing: Reads all category JSON files and converts each item to TBDynamicTrader format
- Collection Processing: Maps category collections to their referenced categories
- Dealer Point Processing:
- Parses map files to extract dealer point information
- Resolves category collections to actual items
- Creates dealer point configurations with matched items
- Includes optional items specified in map files
