diff --git a/Database Updates/010_furnidata_edit_log.sql b/Database Updates/010_furnidata_edit_log.sql index 04603727..0aae35e0 100644 --- a/Database Updates/010_furnidata_edit_log.sql +++ b/Database Updates/010_furnidata_edit_log.sql @@ -32,3 +32,37 @@ INSERT IGNORE INTO `emulator_settings` (`key`,`value`) VALUES -- Furni editor: import official names/descriptions from Habbo ('furni.editor.import.url','https://www.habbo.com/gamedata/furnidata_json/1'), ('furni.editor.import.cache.ms','600000'); + +START TRANSACTION; +DROP TEMPORARY TABLE IF EXISTS cleanup_furnidata_settings; +CREATE TEMPORARY TABLE cleanup_furnidata_settings ( + `key` VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL PRIMARY KEY +); +INSERT INTO cleanup_furnidata_settings (`key`) VALUES + ('items.furnidata.names.enabled'), + ('items.furnidata.path'), + ('items.furnidata.max.bytes'), + ('items.furnidata.watch.enabled'), + ('items.furnidata.watch.debounce.ms'), + ('items.furnidata.watch.min.interval.ms'), + ('items.furnidata.delta.cap'), + ('furni.editor.import.url'), + ('furni.editor.import.cache.ms'); + +-- Preview rows that will be removed. +SELECT es.`key`, es.`value` +FROM emulator_settings es +JOIN cleanup_furnidata_settings cfs ON cfs.`key` = es.`key` +ORDER BY es.`key`; + +DELETE es +FROM emulator_settings es +JOIN cleanup_furnidata_settings cfs ON cfs.`key` = es.`key`; + +-- Preview remaining matching rows inside the transaction. +SELECT COUNT(*) AS remaining_furnidata_settings +FROM emulator_settings es +JOIN cleanup_furnidata_settings cfs ON cfs.`key` = es.`key`; + +-- Safe default. Change to COMMIT after reviewing the preview. +ROLLBACK; diff --git a/Database Updates/021_furnidata_config.sql b/Database Updates/021_furnidata_config.sql deleted file mode 100644 index 87b989be..00000000 --- a/Database Updates/021_furnidata_config.sql +++ /dev/null @@ -1,27 +0,0 @@ --- 021_furnidata_config.sql --- Seeds the furnidata feature config keys read at runtime by --- FurnitureTextProvider / FurnidataReader / FurnidataWatcher and --- FurniEditorImportTextEvent. Without these rows a fresh install logs --- "Config key not found" for each (ConfigurationManager logs ERROR even --- when a default is supplied) and the values are not editable from the DB. --- --- Notes: --- * *.enabled keys are read via Boolean.parseBoolean → use true/false (NOT 1/0). --- * items.furnidata.path is intentionally empty: when blank the source is --- derived from furni.editor.asset.base.path (seeded by 004_furni_editor.sql) --- → /furnidata (split-tier) or /FurnitureData.json (single file). --- * Editor write-path keys (items.furnidata.edit.*) are seeded by 020. - -INSERT IGNORE INTO `emulator_settings` (`key`,`value`) VALUES --- Server-authoritative furni names (source of truth = furnidata JSON) -('items.furnidata.names.enabled','true'), -('items.furnidata.path',''), -('items.furnidata.max.bytes','67108864'), --- Live-reload watcher -('items.furnidata.watch.enabled','true'), -('items.furnidata.watch.debounce.ms','750'), -('items.furnidata.watch.min.interval.ms','5000'), -('items.furnidata.delta.cap','500'), --- Furni editor: import official names/descriptions from Habbo -('furni.editor.import.url','https://www.habbo.com/gamedata/furnidata_json/1'), -('furni.editor.import.cache.ms','600000');