# Рекомендации по использованию движка ## Наименование контента ### ID контент-паков Идентификатор контент-пака должен следовать следующим требованиям: - название может состоять только из букв латиницы, цифр и символа подчёркивания '\_' - название не может начинаться с цифры - длина названия должна находиться в пределах от 2 до 24 включительно ### Блоки и предметы - id блоков и предметов следуют тем же требованиям, что и ID контент-пака. - окончание `.item` добавляется только для замены сгенерированного для блока предмета. Пример: `base:stone.item` - предмет сгенерированный для блока камня. - поле **caption**, предназначенное для отображения названия в инвентаре, не указывается с заглавной буквы, без необходимости. Движок автоматически повышает регистр при отображении в интерфейсе. ## Хранение файлов ### Данные контент-паков #### Данные в мире Состояние, которое нужно сохранять в мире, должны находиться в `world:data/id_пака/`. Путь следует получать через специальную функцию: ```lua local path = pack.data_file(PACK_ID, "имя_файла") file.write(path, данные) -- запишет данные в файл world:data/PACK_ID/имя_файла ``` Здесь PACK_ID является доступной константой, т.е не нужно вписывать имя пака самостоятельно. Папка `world:data/PACK_ID` будет создана при вызове `pack.data_file`. #### Общие данные Настройки и иные данные, что должны быть доступны из всех миров, где используется пак, должны находиться в `config:id_пака/`. Можно использовать специальную функцию: ```lua local path = pack.shared_file(PACK_ID, "имя_файла") file.write(path, данные) -- запишет данные в файл config:PACK_ID/имя_файла ```