From 11ccee572b771b7ad9367abcbf8c22689cdf6db1 Mon Sep 17 00:00:00 2001 From: Bastiaan <17990055+bbassie@users.noreply.github.com> Date: Sun, 11 Oct 2026 19:29:11 +0200 Subject: [PATCH] Drop exp_legacy player data that inventory_sync covers (#491) Inventory sync already stores the player colour, tag, quickbar and alt view (game view settings), so the legacy alt-view, quickbar and tag modules and the colour persistence are removed along with /save-quickbar and its quickbar presets. The /tag, /tag-color and /tag-clear commands move to exp_scenario and write player.tag directly, which inventory sync then carries between servers. /tag-color reads the current text back out of the tag, so it now needs a tag to be set first. It also used to concatenate the colour table into the tag and error, it now formats it as rich text. player-colours keeps giving new players their preset or a random colour on creation, inventory sync replaces it with the stored one for anyone who has played before. Co-authored-by: Claude Opus 5.5 --- exp_legacy/module/config/_file_loader.lua | 3 - .../module/config/preset_player_quickbar.lua | 6 -- exp_legacy/module/locale/en.cfg | 18 ---- exp_legacy/module/locale/zh-CN.cfg | 18 ---- exp_legacy/module/locale/zh-TW.cfg | 18 ---- exp_legacy/module/module.json | 1 - exp_legacy/module/modules/data/alt-view.lua | 26 ------ .../module/modules/data/player-colours.lua | 61 +++----------- exp_legacy/module/modules/data/quickbar.lua | 64 --------------- exp_legacy/module/modules/data/tag.lua | 82 ------------------- exp_scenario/module/commands/tag.lua | 62 ++++++++++++++ exp_scenario/module/control.lua | 1 + exp_scenario/module/locale/en.cfg | 9 ++ exp_scenario/module/locale/zh-CN.cfg | 9 ++ exp_scenario/module/locale/zh-TW.cfg | 9 ++ exp_scenario/permissions.ts | 1 - exp_scenario/seed.ts | 1 - 17 files changed, 103 insertions(+), 286 deletions(-) delete mode 100644 exp_legacy/module/config/preset_player_quickbar.lua delete mode 100644 exp_legacy/module/modules/data/alt-view.lua delete mode 100644 exp_legacy/module/modules/data/quickbar.lua delete mode 100644 exp_legacy/module/modules/data/tag.lua create mode 100644 exp_scenario/module/commands/tag.lua diff --git a/exp_legacy/module/config/_file_loader.lua b/exp_legacy/module/config/_file_loader.lua index 8d642629..0e6fa332 100644 --- a/exp_legacy/module/config/_file_loader.lua +++ b/exp_legacy/module/config/_file_loader.lua @@ -10,8 +10,5 @@ return { "modules.data.statistics", "modules.data.player-colours", "modules.data.greetings", - "modules.data.quickbar", - "modules.data.alt-view", - "modules.data.tag", "modules.data.language", } diff --git a/exp_legacy/module/config/preset_player_quickbar.lua b/exp_legacy/module/config/preset_player_quickbar.lua deleted file mode 100644 index 2e5f80f4..00000000 --- a/exp_legacy/module/config/preset_player_quickbar.lua +++ /dev/null @@ -1,6 +0,0 @@ ---- Preset quickbar items that players can load --- @config Preset-Player-Quickbar - -return { - dangerarea = { "transport-belt", "underground-belt", "splitter", "pipe", "pipe-to-ground", "inserter", "fast-inserter", "long-handed-inserter", "stack-inserter", "roboport", "small-electric-pole", "medium-electric-pole", "big-electric-pole", "substation", nil, "rail", "rail-signal", "rail-chain-signal", "landfill", "cliff-explosives", "fast-transport-belt", "fast-underground-belt", "fast-splitter", "pipe", "pipe-to-ground", "fast-inserter", "long-handed-inserter", "stack-inserter", "stack-filter-inserter", "roboport", [81] = "red-wire", [82] = "green-wire", [83] = "arithmetic-combinator", [84] = "decider-combinator", [85] = "constant-combinator", [86] = "power-switch", [91] = "active-provider-chest", [92] = "passive-provider-chest", [93] = "storage-chest", [94] = "buffer-chest", [95] = "requester-chest", [96] = "roboport" }, -} diff --git a/exp_legacy/module/locale/en.cfg b/exp_legacy/module/locale/en.cfg index 58870d42..ef68c6c2 100644 --- a/exp_legacy/module/locale/en.cfg +++ b/exp_legacy/module/locale/en.cfg @@ -23,31 +23,13 @@ message-set=Your join message has been updated. message-get=Your join message is: __1__ message-cleared=Your join message has been cleared. -[quickbar] -saved=Your quickbar filters have been saved. - [exp-settings] -Colour=Colour -Colour-tooltip=Your player colour -Colour-value-tooltip=Change by using /color JoinMessage=Join Message JoinMessage-tooltip=The message displayed when you join JoinMessage-value-tooltip=Change by using /join-message -QuickbarFilters=Quickbar Filters -QuickbarFilters-tooltip=The filters on your quickbar -QuickbarFilters-value-tooltip=Change by using /save-quickbar -UsesAlt=Alt View -UsesAlt-tooltip=Whether you use alt view when you play -UsesAlt-value-tooltip=Change by pressing __CONTROL__show-info__ UsesServerUps=Server UPS UsesServerUps-tooltip=Whether the current server UPS is shown UsesServerUps-value-tooltip=Change by using /server-ups -Tag=Player Tag -Tag-tooltip=The tag shown after your name -Tag-value-tooltip=Change by using /tag -TagColor=Player Tag color -TagColor-tooltip=The color of the tag shown after your name -TagColor-value-tooltip=Change by using /tag-color Bonus=Player Bonus Bonus-tooltip=The bonus given to your character Bonus-value-tooltip=Change by using /bonus diff --git a/exp_legacy/module/locale/zh-CN.cfg b/exp_legacy/module/locale/zh-CN.cfg index c86023f1..bf97ce3f 100644 --- a/exp_legacy/module/locale/zh-CN.cfg +++ b/exp_legacy/module/locale/zh-CN.cfg @@ -23,31 +23,13 @@ message-set=你的加入信息已更新。 message-get=你的加入信息為: __1__ message-cleared=你的加入信息已清除。 -[quickbar] -saved=你的工具列已儲存。 - [exp-settings] -Colour=顏色 -Colour-tooltip=你的人物顏色 -Colour-value-tooltip=使用 /color 來更換你的人物顏色 JoinMessage=加入信息 JoinMessage-tooltip=你加入時所顯示的信息 JoinMessage-value-tooltip=使用 /join-message 來更換加入信息 -QuickbarFilters=快捷欄 -QuickbarFilters-tooltip=快捷欄的選項 -QuickbarFilters-value-tooltip=使用 /save-quickbar 來更換快捷欄的選項 -UsesAlt=細節模式 -UsesAlt-tooltip=你加入時是否使用細節模式 -UsesAlt-value-tooltip=按下 __CONTROL__show-info__ 來更改 UsesServerUps=服務器更新數 (SUPS) UsesServerUps-tooltip=現在是否顯示服務器更新數 (SUPS) UsesServerUps-value-tooltip=使用 /server-ups 來更換顯示 -Tag=你的人物標籤 -Tag-tooltip=你的人物標籤 -Tag-value-tooltip=使用 /tag 來更換你的人物標籤 -TagColor=人物標籤顏色 -TagColor-tooltip=你的人物標籤顏色 -TagColor-value-tooltip=使用 /tag-color 來更換你的人物標籤顏色 Bonus=人物附加屬性 Bonus-tooltip=你的人物附加屬性 Bonus-value-tooltip=使用 /bonus 來更改 diff --git a/exp_legacy/module/locale/zh-TW.cfg b/exp_legacy/module/locale/zh-TW.cfg index c86023f1..bf97ce3f 100644 --- a/exp_legacy/module/locale/zh-TW.cfg +++ b/exp_legacy/module/locale/zh-TW.cfg @@ -23,31 +23,13 @@ message-set=你的加入信息已更新。 message-get=你的加入信息為: __1__ message-cleared=你的加入信息已清除。 -[quickbar] -saved=你的工具列已儲存。 - [exp-settings] -Colour=顏色 -Colour-tooltip=你的人物顏色 -Colour-value-tooltip=使用 /color 來更換你的人物顏色 JoinMessage=加入信息 JoinMessage-tooltip=你加入時所顯示的信息 JoinMessage-value-tooltip=使用 /join-message 來更換加入信息 -QuickbarFilters=快捷欄 -QuickbarFilters-tooltip=快捷欄的選項 -QuickbarFilters-value-tooltip=使用 /save-quickbar 來更換快捷欄的選項 -UsesAlt=細節模式 -UsesAlt-tooltip=你加入時是否使用細節模式 -UsesAlt-value-tooltip=按下 __CONTROL__show-info__ 來更改 UsesServerUps=服務器更新數 (SUPS) UsesServerUps-tooltip=現在是否顯示服務器更新數 (SUPS) UsesServerUps-value-tooltip=使用 /server-ups 來更換顯示 -Tag=你的人物標籤 -Tag-tooltip=你的人物標籤 -Tag-value-tooltip=使用 /tag 來更換你的人物標籤 -TagColor=人物標籤顏色 -TagColor-tooltip=你的人物標籤顏色 -TagColor-value-tooltip=使用 /tag-color 來更換你的人物標籤顏色 Bonus=人物附加屬性 Bonus-tooltip=你的人物附加屬性 Bonus-value-tooltip=使用 /bonus 來更改 diff --git a/exp_legacy/module/module.json b/exp_legacy/module/module.json index bf21f097..2a2ec59e 100644 --- a/exp_legacy/module/module.json +++ b/exp_legacy/module/module.json @@ -8,7 +8,6 @@ "dependencies": { "clusterio": "*", "exp_util": "*", - "exp_roles": "*", "exp_gui": "*" } } diff --git a/exp_legacy/module/modules/data/alt-view.lua b/exp_legacy/module/modules/data/alt-view.lua deleted file mode 100644 index c6b47e66..00000000 --- a/exp_legacy/module/modules/data/alt-view.lua +++ /dev/null @@ -1,26 +0,0 @@ ---- Stores if you use alt mode or not and auto applies it --- @data Alt-View - -local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event - ---- Stores the visible state of alt mode -local PlayerData = require("modules.exp_legacy.expcore.player_data") --- @dep expcore.player_data -local UsesAlt = PlayerData.Settings:combine("UsesAlt") -UsesAlt:set_default(false) -UsesAlt:set_metadata{ - stringify = function(value) return value and "Visible" or "Hidden" end, -} - ---- When your data loads apply alt view if you have it enabled -UsesAlt:on_load(function(player_name, uses_alt) - local player = game.players[player_name] - if uses_alt ~= nil then - player.game_view_settings.show_entity_info = uses_alt - end -end) - ---- When alt view is toggled update this -Event.add(defines.events.on_player_toggled_alt_mode, function(event) - local player = game.players[event.player_index] - UsesAlt:set(player, player.game_view_settings.show_entity_info) -end) diff --git a/exp_legacy/module/modules/data/player-colours.lua b/exp_legacy/module/modules/data/player-colours.lua index 15417845..97a4a66d 100644 --- a/exp_legacy/module/modules/data/player-colours.lua +++ b/exp_legacy/module/modules/data/player-colours.lua @@ -1,63 +1,28 @@ ---- Gives players random colours when they join, also applies preset colours to those who have them +--- Gives players random colours when they are created, also applies preset colours to those who have them +--- Inventory sync restores the colour of players who have played before -- @data Player-Colours local Event = require("modules/exp_legacy/utils/event") --- @dep utils.event local Colours = require("modules/exp_util/include/color") local config = require("modules.exp_legacy.config.preset_player_colours") --- @dep config.preset_player_colours ---- Stores the colour that the player wants -local PlayerData = require("modules.exp_legacy.expcore.player_data") --- @dep expcore.player_data -local PlayerColours = PlayerData.Settings:combine("Colour") -PlayerColours:set_metadata{ - stringify = function(value) - if not value then return "None set" end - local c = value[1] - return string.format("Red: %d Green: %d Blue: %d", c[1], c[2], c[3]) - end, -} - ---- Used to compact player colours to take less space -local floor = math.floor -local function compact(colour) - return { - floor(colour.r * 255), - floor(colour.g * 255), - floor(colour.b * 255), - } -end - --- Returns a colour that is a bit lighter than the one given local function lighten(c) return { r = 255 - (255 - c.r) * 0.5, g = 255 - (255 - c.g) * 0.5, b = 255 - (255 - c.b) * 0.5, a = 255 } end ---- When your data loads apply the players colour, or a random on if none is saved -PlayerColours:on_load(function(player_name, player_colour) - if not player_colour then - local preset = config.players[player_name] - if preset then - player_colour = { preset, lighten(preset) } - else - local colour_name = "white" - while config.disallow[colour_name] do - colour_name = table.get_random(Colours, true) - end - - player_colour = { Colours[colour_name], lighten(Colours[colour_name]) } +--- Apply the preset colour of the player, or a random one if there is none +Event.add(defines.events.on_player_created, function(event) + local player = game.players[event.player_index] + local colour = config.players[player.name] + if not colour then + local colour_name = "white" + while config.disallow[colour_name] do + colour_name = table.get_random(Colours, true) end + colour = Colours[colour_name] end - local player = game.players[player_name] - player.color = player_colour[1] - player.chat_color = player_colour[2] -end) - ---- Save the players color when they use the color command -Event.add(defines.events.on_console_command, function(event) - if event.command ~= "color" then return end - if event.parameters == "" then return end - if not event.player_index then return end - local player = game.players[event.player_index] - if not player or not player.valid then return end - PlayerColours:set(player, { compact(player.color), compact(player.chat_color) }) + player.color = colour + player.chat_color = lighten(colour) end) diff --git a/exp_legacy/module/modules/data/quickbar.lua b/exp_legacy/module/modules/data/quickbar.lua deleted file mode 100644 index 0db8e846..00000000 --- a/exp_legacy/module/modules/data/quickbar.lua +++ /dev/null @@ -1,64 +0,0 @@ ---[[-- Commands Module - Quickbar - - Adds a command that allows players to load Quickbar presets - @data Quickbar -]] - -local Commands = require("modules/exp_commands") -local config = require("modules.exp_legacy.config.preset_player_quickbar") --- @dep config.preset_player_quickbar - ---- Stores the quickbar filters for a player -local PlayerData = require("modules.exp_legacy.expcore.player_data") --- @dep expcore.player_data -local PlayerFilters = PlayerData.Settings:combine("QuickbarFilters") -PlayerFilters:set_metadata{ - permission = "exp_scenario.command.save_quickbar", - stringify = function(value) - if not value then return "No filters set" end - local count = 0 - for _ in pairs(value) do count = count + 1 end - - return count .. " filters set" - end, -} - ---- Filters are stored by a single index across the ten pages of ten slots -local total_page_count = 10 -local slots_per_page = 10 - ---- Loads your quickbar preset -PlayerFilters:on_load(function(player_name, filters) - if not filters then filters = config[player_name] end - if not filters then return end - local player = game.players[player_name] - for index, item_name in pairs(filters) do - if item_name ~= nil and item_name ~= "" then - local page = math.ceil(index / slots_per_page) - local slot = (index - 1) % slots_per_page + 1 - player.set_quick_bar_slot(page, slot, item_name) - end - end -end) - ---- Saves your quickbar preset, only plain item filters can be saved -Commands.new("save-quickbar", "Saves your Quickbar preset items to file") - :add_aliases{ "save-toolbar" } - :register(function(player) - local filters = {} - - for page = 1, total_page_count do - for slot = 1, slots_per_page do - -- Records, remotes and specific item instances hold data which can not be saved by name - local quick_bar_slot = player.get_quick_bar_slot(page, slot) - if quick_bar_slot and quick_bar_slot.type == "filter" then - filters[(page - 1) * slots_per_page + slot] = assert(quick_bar_slot.filter).name - end - end - end - - if next(filters) then - PlayerFilters:set(player, filters) - else - PlayerFilters:remove(player) - end - - return Commands.status.success{ "quickbar.saved" } - end) diff --git a/exp_legacy/module/modules/data/tag.lua b/exp_legacy/module/modules/data/tag.lua deleted file mode 100644 index e12e4229..00000000 --- a/exp_legacy/module/modules/data/tag.lua +++ /dev/null @@ -1,82 +0,0 @@ ---[[-- Commands Module - Tag - - Adds a command that allows players to have a custom tag after their name - @data Tag -]] - -local Commands = require("modules/exp_commands") -local Roles = require("modules/exp_roles") - ---- Stores the tag for a player -local PlayerData = require("modules.exp_legacy.expcore.player_data") --- @dep expcore.player_data -local PlayerTags = PlayerData.Settings:combine("Tag") -local PlayerTagColors = PlayerData.Settings:combine("TagColor") -PlayerTags:set_metadata{ - permission = "exp_scenario.command.tag", -} -PlayerTagColors:set_metadata{ - permission = "exp_scenario.command.tag_color", -} - -local set_tag = function(player, tag, color) - if tag == nil or tag == "" then - player.tag = "" - elseif color then - player.tag = "- [color=" .. color .. "]" .. tag .. "[/color]" - else - player.tag = "- " .. tag - end -end - ---- When your tag is updated then apply the changes -PlayerTags:on_update(function(player_name, player_tag) - local player = game.players[player_name] - local player_tag_color = PlayerTagColors:get(player) - - set_tag(player, player_tag, player_tag_color) -end) - ---- When your tag color is updated then apply the changes -PlayerTagColors:on_update(function(player_name, player_tag_color) - local player = game.players[player_name] - local player_tag = PlayerTags:get(player) - - set_tag(player, player_tag, player_tag_color) -end) - ---- Sets your player tag. -Commands.new("tag", "Sets your player tag.") - :argument("tag", "", Commands.types.string_max_length(20)) - :enable_auto_concatenation() - :register(function(player, tag) - --- @cast tag string - PlayerTags:set(player, tag) - end) - ---- Sets your player tag color. -Commands.new("tag-color", "Sets your player tag color.") - :argument("color", "", Commands.types.color) - :enable_auto_concatenation() - :register(function(player, color) - --- @cast color Color - PlayerTagColors:set(player, color) - end) - ---- Clears your tag. Or another player if you are admin. -Commands.new("tag-clear", "Clears your tag. Or another player if you are admin.") - :optional("player", "", Commands.types.lower_role_player) - :defaults{ - player = function(player) return player end - } - :register(function(player, other_player) - --- @cast other_player LuaPlayer - if other_player == player then - -- No player given so removes your tag - PlayerTags:remove(other_player) - elseif Roles.player_has_permission(player, "exp_scenario.command.tag_clear.always") then - -- Player given and user is admin so clears that player's tag - PlayerTags:remove(other_player) - else - -- User is not admin and tried to clear another users tag - return Commands.status.unauthorised() - end - end) diff --git a/exp_scenario/module/commands/tag.lua b/exp_scenario/module/commands/tag.lua new file mode 100644 index 00000000..7584c897 --- /dev/null +++ b/exp_scenario/module/commands/tag.lua @@ -0,0 +1,62 @@ +--[[-- Commands - Tag +Adds commands to set the tag shown after your name, inventory sync keeps it between servers +]] + +local Commands = require("modules/exp_commands") +local format_text = Commands.format_rich_text_color +local Roles = require("modules/exp_roles") +local player_has_permission = Roles.player_has_permission + +--- Split a player tag into its text and colour +--- @param tag string +--- @return string, string? +local function parse_tag(tag) + local color, text = tag:match("^%- %[color=([^%]]*)%](.*)%[/color%]$") + if color then + --- @cast text string + return text, color + end + return tag:match("^%- (.*)$") or tag, nil +end + +--- Sets your player tag +Commands.new("tag", { "exp-commands_tag.description" }) + :argument("tag", { "exp-commands_tag.arg-tag" }, Commands.types.string_max_length(20)) + :enable_auto_concatenation() + :register(function(player, tag) + --- @cast tag string + local _, color = parse_tag(player.tag) + if tag == "" then + player.tag = "" + elseif color then + player.tag = "- [color=" .. color .. "]" .. tag .. "[/color]" + else + player.tag = "- " .. tag + end + end) + +--- Sets your player tag colour +Commands.new("tag-color", { "exp-commands_tag.description-color" }) + :argument("color", { "exp-commands_tag.arg-color" }, Commands.types.color) + :register(function(player, color) + --- @cast color Color + local text = parse_tag(player.tag) + if text == "" then + return Commands.status.error{ "exp-commands_tag.no-tag" } + end + player.tag = "- " .. format_text(text, color) + end) + +--- Clears your tag, or the tag of another player +Commands.new("tag-clear", { "exp-commands_tag.description-clear" }) + :optional("player", { "exp-commands_tag.arg-player" }, Commands.types.lower_role_player) + :defaults{ + player = function(player) return player end + } + :register(function(player, other_player) + --- @cast other_player LuaPlayer + if other_player ~= player and not player_has_permission(player, "exp_scenario.command.tag_clear.always") then + return Commands.status.unauthorised() + end + other_player.tag = "" + end) diff --git a/exp_scenario/module/control.lua b/exp_scenario/module/control.lua index a7702f6d..873dddeb 100644 --- a/exp_scenario/module/control.lua +++ b/exp_scenario/module/control.lua @@ -34,6 +34,7 @@ require("modules/exp_scenario/commands/roles") require("modules/exp_scenario/commands/search") require("modules/exp_scenario/commands/spectate") require("modules/exp_scenario/commands/surface") +require("modules/exp_scenario/commands/tag") require("modules/exp_scenario/commands/teleport") require("modules/exp_scenario/commands/trains") require("modules/exp_scenario/commands/vlayer") diff --git a/exp_scenario/module/locale/en.cfg b/exp_scenario/module/locale/en.cfg index 1917b254..d5d4c923 100644 --- a/exp_scenario/module/locale/en.cfg +++ b/exp_scenario/module/locale/en.cfg @@ -147,6 +147,15 @@ description=Sends an rainbow message in the chat arg-message=Message to send in chat. response=__1__: __2__ +[exp-commands_tag] +description=Sets your player tag. +arg-tag=The tag shown after your name, leave empty to clear it. +description-color=Sets your player tag colour. +arg-color=Name of the colour to use. +description-clear=Clears your tag, or the tag of another player. +arg-player=Player whose tag to clear, defaults to you. +no-tag=You need to set a tag with /tag first. + [exp-commands_ratio] description=This command will give the input and output ratios of the selected machine. Use the parameter for calculating the machines needed for that amount of items per second. arg-items-per-second=Target items per second, defaults to output of a single machine. diff --git a/exp_scenario/module/locale/zh-CN.cfg b/exp_scenario/module/locale/zh-CN.cfg index 18b97723..39601920 100644 --- a/exp_scenario/module/locale/zh-CN.cfg +++ b/exp_scenario/module/locale/zh-CN.cfg @@ -146,6 +146,15 @@ description=在聊天中發送多色訊息 arg-message=訊息 response=__1__: __2__ +[exp-commands_tag] +description=設定你的玩家標籤。 +arg-tag=顯示在你名字後面的標籤,留空以清除。 +description-color=設定你的玩家標籤顏色。 +arg-color=要使用的顏色名稱。 +description-clear=清除你或其他玩家的標籤。 +arg-player=要清除標籤的玩家,預設為你。 +no-tag=請先使用 /tag 設定標籤。 + [exp-commands_ratio] description=此指令將給出所選機器的輸入和輸出比率。使用此參數來計算每秒處理該數量的物品所需的機器。 arg-items-per-second=物品所需 diff --git a/exp_scenario/module/locale/zh-TW.cfg b/exp_scenario/module/locale/zh-TW.cfg index 18b97723..39601920 100644 --- a/exp_scenario/module/locale/zh-TW.cfg +++ b/exp_scenario/module/locale/zh-TW.cfg @@ -146,6 +146,15 @@ description=在聊天中發送多色訊息 arg-message=訊息 response=__1__: __2__ +[exp-commands_tag] +description=設定你的玩家標籤。 +arg-tag=顯示在你名字後面的標籤,留空以清除。 +description-color=設定你的玩家標籤顏色。 +arg-color=要使用的顏色名稱。 +description-clear=清除你或其他玩家的標籤。 +arg-player=要清除標籤的玩家,預設為你。 +no-tag=請先使用 /tag 設定標籤。 + [exp-commands_ratio] description=此指令將給出所選機器的輸入和輸出比率。使用此參數來計算每秒處理該數量的物品所需的機器。 arg-items-per-second=物品所需 diff --git a/exp_scenario/permissions.ts b/exp_scenario/permissions.ts index 5fc7aa52..c7cc576b 100644 --- a/exp_scenario/permissions.ts +++ b/exp_scenario/permissions.ts @@ -60,7 +60,6 @@ const definitions = [ ["exp_scenario.command.research_all", "/research-all", "Research all technology for your force, or another force."], ["exp_scenario.command.return", "/return", "Teleports you to previous location."], ["exp_scenario.command.save_data", "/save-data", "Writes all your player data to a file on your computer.", true], - ["exp_scenario.command.save_quickbar", "/save-quickbar", "Saves your Quickbar preset items to file."], ["exp_scenario.command.search", "/search", "Display players sorted by the quantity of an item held and playtime."], ["exp_scenario.command.search_amount", "/search-amount", "Display players sorted by the quantity of an item held."], ["exp_scenario.command.search_online", "/search-online", "Display online players sorted by item count and playtime."], diff --git a/exp_scenario/seed.ts b/exp_scenario/seed.ts index 64b34550..ea62cbf7 100644 --- a/exp_scenario/seed.ts +++ b/exp_scenario/seed.ts @@ -236,7 +236,6 @@ export const seedRoles: SeedRole[] = [ "exp_scenario.gui.surveillance", "exp_scenario.gui.vlayer_edit", "exp_scenario.gui.tool", - "exp_scenario.command.save_quickbar", "exp_scenario.command.vlayer_info", "exp_scenario.command.lawnmower", "exp_scenario.command.waterfill",