Прототип
- Редакторы вики уже ведут работу над данной статьёй.
- Вся информация в данной статье не входит в канон и может быть полностью проигнорирована.
- При желании, вы можете подать заявку на редактора в нашем Discord и тоже принять участие в улучшении статьи.
- Статью ведёт: Chydesniy drakonchik (обсуждение)
Прототип (prototype) — это технический термин в игре для описания способностей и компонентов внутриигрового объекта или сущности. Он содержит набор полей (свойств), которые определяют, как этот объект будет работать. Почти все объекты в игре описаны именно через прототипы.
Игровые мастера используют команду loadprototypes для загрузки собственных прототипов для ивентов на сервера. Эти прототипы сохраняются в игре до перезапуска сервера.
Как их создавать?
Прототипы пишутся на языке разметки YAML. Писать на YAML можно везде, хоть в блокноте (заменив расширение файла с .txt на .yml), но для удобной подсветки синтаксиса лучше использовать что-то вроде Notepad++ или Geany. Типичный прототип выглядит как-то так (прототип плюшевого ядерного оперативника): <syntaxhighlight lang="python" line>
- ---- Resources/Prototypes/Entities/Objects/Fun/toys.yml ----
- type: entity
parent: BasePlushie
id: PlushieNuke
name: nukie plushie
description: A stuffed toy that resembles a syndicate nuclear operative. The tag claims operatives to be purely fictitious.
components:
- type: Sprite
state: plushie_nuke
- type: FoodSequenceElement
entries:
CottonBurger: NukiePlushie
</syntaxhighlight>
Разбор: <syntaxhighlight lang="python" line> - type: entity
# тип прототипа, это может сущность (entity), режим игры (gamerule) и др.
parent: BasePlushie # родительский прототип, от которого наследуются все поля (свойства)
id: PlushieNuke # уникальный ID для данного типа прототипов
name: nukie plushie # название предмета, которое видит игрок (в движке локализуется, игровым мастерам можно сразу писать на русском)
description: A stuffed toy that resembles a syndicate nuclear operative. The tag claims operatives to be purely fictitious. # описание предмета, которое видит игрок (в движке локализуется, игровым мастерам можно сразу писать на русском)
components: # секция описания компонентов (только для сущностей)
- type: Sprite # компонент спрайта state: plushie_nuke # выбранный спрайт в RSI (формат хранения изображений в движке)
- type: FoodSequenceElement # компонент еды
entries:
CottonBurger: NukiePlushie # тип еды - тканевый бутерброд (для ниан)
</syntaxhighlight>