Дата-файлы
Дата-файлы нужны плагинам, чтобы хранить данные между перезапусками сервера: статистику игроков, временные события и другую важную информацию.
Где хранятся дата-файлы?
Дата-файлы плагинов лежат в папке carbon/data. Обычно плагин создаёт там свой файл в формате .json. Сложные плагины могут создавать несколько файлов, отдельную папку или даже отдельный файл для каждого игрока.
Файлы прав
В этой же папке Carbon хранит группы и права игроков: файлы oxide.users.data и oxide.groups.data. Это не JSON, открывать и редактировать их вручную нельзя. Для работы с правами используйте команды из статьи разрешения.
Какие бывают структуры
- Простой дата-файл, например у плагина Vanish:
carbon
├── configs
├── data
│ └── VanishPlayers.json
├── lang
├── logs
└── plugins- Дата-файлы в отдельной папке. Например, плагин IQChat из набора IQSystem хранит данные игроков и модераторов в своей папке:
carbon
└── data
└── IQSystem
└── IQChat
├── UserInfo.json
└── Moderators.json- Дата-файлы вместе с другими файлами, например изображениями:
carbon
└── data
└── IQSystem
└── IQChat
├── Images
│ ├── Icon.png
│ └── Background.png
├── UserInfo.json
└── Moderators.jsonЭто самые распространённые варианты.
Что внутри дата-файла?
Дата-файл - это хранилище плагина. Обычно администратор его не трогает: одна ошибка в синтаксисе, и можно потерять все сохранённые данные.
Дата-файлы бывают разными. Простой дата-файл:
{
"76561198000000000": 5,
"76561198000000001": 12
}Более сложная структура:
{
"76561198000000000": {
"Info": {
"Prefix": "<color=#CC99FF>[PLAYER]</color>",
"ColorNick": "#0099FF",
"ColorMessage": "#eee",
"Rank": "",
"CustomColorNick": null,
"CustomColorMessage": null,
"PrefixList": []
},
"Settings": {
"TurnPM": true,
"TurnAlert": true,
"TurnBroadcast": true,
"TurnSound": true,
"IgnoreUsers": []
},
"MuteInfo": {
"TimeMuteChat": 0.0,
"TimeMuteVoice": 0.0
}
}
}Как изменить или очистить дата-файл
Если вы всё же решили изменить данные или удалить один или несколько файлов, обязательно выполните шаги по порядку:
- Выгрузите плагин:
c.unload PluginName - Сделайте резервную копию дата-файлов.
- Внесите изменения, проверьте синтаксис JSON и сохраните файл.
- Загрузите плагин:
c.load PluginName
Очень важно!
Перед правкой плагин должен быть выгружен. Пока плагин работает, он держит данные в памяти и при сохранении записывает их в файл. Если править файл при работающем плагине, он перезапишет ваши изменения или вернёт удалённый файл.
TIP
Резервная копия дата-файлов сэкономит много времени и сохранит данные ваших игроков!