- Added ConfigController with 4 endpoints:
- getGameConfig: Server config, feature flags, URLs
- getServerTime: UTC timestamps
- getFeatureFlags: Feature toggles
- getServerStatus: Health check
- Added save/load system to ProgressionController:
- POST /save/{synergyId}: Save JSON blob
- GET /save/{synergyId}/load: Load JSON blob
- Version tracking and timestamps
- Added PlayerSave entity to database:
- Stores arbitrary JSON game state
- Version tracking (increments on save)
- LastModified timestamps
- Updated appsettings.json:
- ServerSettings section (version, URLs, MOTD)
- FeatureFlags section (7 feature toggles)
- Created migration: AddPlayerSavesAndConfig
- Updated ApiModels with new DTOs
- All endpoints tested and working
Phase 1 objectives complete:
✅ Synergy ID generation (already existed)
✅ Configuration endpoints (new)
✅ Save/load system (new)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
47 lines
1.3 KiB
JSON
47 lines
1.3 KiB
JSON
{
|
|
"Logging": {
|
|
"LogLevel": {
|
|
"Default": "Information",
|
|
"Microsoft.AspNetCore": "Warning"
|
|
}
|
|
},
|
|
"AllowedHosts": "*",
|
|
"Jwt": {
|
|
"Secret": "RR3CommunityServer_SecureJwtSecret_ChangeThisInProduction_MinimumLength32Characters",
|
|
"Issuer": "RR3CommunityServer",
|
|
"Audience": "RR3Community",
|
|
"ExpiryDays": 30
|
|
},
|
|
"AssetsBasePath": "Assets/downloaded",
|
|
"CustomAssetsPath": "Assets/custom",
|
|
"ModsPath": "Assets/mods",
|
|
"ServerSettings": {
|
|
"AllowSelfSignedCerts": true,
|
|
"EnableAssetDownloads": true,
|
|
"FreeGoldPurchases": true,
|
|
"UnlockAllCars": false,
|
|
"UnlimitedCurrency": false,
|
|
"EnableModding": true,
|
|
"MaxCustomCarUploadSizeMB": 100,
|
|
"MaxCustomTrackUploadSizeMB": 200,
|
|
"Version": "1.0.0",
|
|
"GameVersion": "14.0.1",
|
|
"MaintenanceMode": false,
|
|
"MessageOfTheDay": "Welcome to RR3 Community Server! 🏁",
|
|
"BaseUrl": "http://localhost:5001",
|
|
"AssetsUrl": "http://localhost:5001/content/api",
|
|
"LeaderboardsUrl": "http://localhost:5001/leaderboards/api",
|
|
"MultiplayerUrl": "http://localhost:5001/multiplayer/api"
|
|
},
|
|
"FeatureFlags": {
|
|
"MultiplayerEnabled": false,
|
|
"LeaderboardsEnabled": true,
|
|
"DailyRewardsEnabled": true,
|
|
"TimeTrialsEnabled": true,
|
|
"CustomContentEnabled": true,
|
|
"SpecialEventsEnabled": true,
|
|
"AllItemsFree": true
|
|
}
|
|
}
|
|
|