119 lines
11 KiB
Markdown
119 lines
11 KiB
Markdown
# Village Pack — графика для RPG-карт и боёв
|
||
|
||
Village Pack — набор графики, на котором стоит мир RPG Plus: тайлсеты для рисования карт, шагающие спрайты героев, жителей и монстров, боевые портреты и фоны сражений. Всё нарисовано в единой живописной 2.5D-стилистике, поэтому карты из него выглядят одним миром.
|
||
|
||
Это **только графика**. Деревня, дом старейшины, лес и пустыня, по которым можно ходить, — карты и события контентных модов RPG Demo и RPG Plus; ходьба, столкновения и бои — работа RPG-движка. Village Pack поставляет картинки, которыми всё это нарисовано.
|
||
|
||

|
||
|
||
## Что внутри
|
||
|
||
### Тайлсет village
|
||
|
||
Тайлсетом `village` нарисована каждая карта демо-мира. У него две части.
|
||
|
||
Объекты ставятся на клетки: коттедж, арка святилища, вход в пещеру, деревья, кусты, колодец, костёр, фонарные столбы, забор, указатель, бочки, сундуки (закрытые и открытые), верстак и подбираемые предметы — хворост, камни, гриб. Наверху — интерьер коттеджа, единая картинка комнаты 12 × 10, которую использует дом старейшины.
|
||
|
||

|
||
|
||
Поверхности — бесшовные текстуры земли, заливающие целые области: трава, мощёная дорожка, земля, светлый каменный пол, деревянный пол, каменистая лесная тропа и вода.
|
||
|
||

|
||
|
||
У некоторых тайлов есть свойства для RPG-движка: вода непроходима, а фонари и окна несут источник света, который светится на карте в сумерках и ночью.
|
||
|
||

|
||
|
||
### Сезонная растительность
|
||
|
||
Четыре тайлсета растительности показывают одни и те же деревья, кусты, пни и цветы летом, осенью, в «голом» позднеосеннем виде и в снежной зиме: дуб, ель, берёза, ива, клён и сосна, круглые и ягодные кусты, спиленные и дуплистые пни, ромашки и фиалки.
|
||
|
||

|
||
|
||
На карте используется ровно один тайлсет, и ни одна из готовых карт тайлсеты растительности пока не берёт. Это готовый материал для автора карты.
|
||
|
||
### Пустыня и снег
|
||
|
||
- `desert`: песчаные и каменистые поверхности с пустынными объектами — глинобитными постройками, рыночным навесом, пальмами, кактусами и сухой травой. Пустынная карта RPG Plus, Dry March, нарисована им.
|
||
- `snow`: свежий снег, лёд и две протоптанные поверхности (`packed_snow` и сильнее истоптанный `trampled_snow`), а также хижина, телега, колодец, камни, кусты и заснеженные ели. Готовые карты его пока не используют.
|
||
|
||

|
||
|
||

|
||
|
||
### Чарсеты: шагающие спрайты
|
||
|
||
Каждый чарсет — лист 3 × 4: три кадра шага для каждого из четырёх направлений (вниз, влево, вправо, вверх). В деревенском наборе есть герой, старейшина, житель, торговец, слайм и волк. Пустынный набор добавляет скорпиона, жука и бочку в закрытом и открытом виде.
|
||
|
||

|
||
|
||
### Боевые портреты и фоны
|
||
|
||
Большие портреты показывают сражающихся в бою: героя, слайма и волка, а также пустынных скорпиона и жука.
|
||
|
||

|
||
|
||
Три фона — луг, лес и пустынный форпост — служат фоном боя, начавшегося на карте. У луга и леса есть `_depth`-спутники для системы освещения.
|
||
|
||

|
||
|
||

|
||
|
||
## Где вы это увидите
|
||
|
||
Village Pack входит в игру `rpg_plus`. В ней:
|
||
|
||
- деревня, дом старейшины, лес и лесное святилище нарисованы тайлсетом `village`;
|
||
- пустынная карта использует `desert`;
|
||
- по картам ходят старейшина, торговец, жители, волки, слаймы, скорпионы и жуки — чарсетами пака;
|
||
- в боях показываются портреты, а сцены карт берут `village/meadow`, `village/forest` или `desert/outpost` как фон сражения.
|
||
|
||
Тайловый редактор показывает выбранный тайлсет как свою палитру. Здесь открыт дом старейшины: интерьер коттеджа, объекты и образцы поверхностей — это тайлсет village.
|
||
|
||

|
||
|
||
## Используйте его в своём RPG-контенте
|
||
|
||
1. Включите `village_pack` в коллекцию своей игры. Он требует движковый мод `rpg`.
|
||
2. Добавьте `village_pack>=1` в список `depends` контентного мода, который пользуется его графикой.
|
||
3. Обращайтесь к графике по имени:
|
||
|
||
```jsonc
|
||
// Карта: один тайлсет на всю карту
|
||
{ "Kind": "rpg_map", "Items": [ { "Id": "my_glade", "Tileset": "village" /* … */ } ] }
|
||
```
|
||
|
||
```jsonc
|
||
// Событие карты, нарисованное чарсетом
|
||
{ "Id": "old_man", "X": 5, "Y": 3, "Sprite": "village/elder" }
|
||
```
|
||
|
||
```jsonc
|
||
// Боевой портрет персонажа
|
||
{ "Id": "my_wolf", "Image": "characters/village/wolf" }
|
||
```
|
||
|
||
```json
|
||
{
|
||
"name": "my_glade",
|
||
"defaultBackground": "village/meadow"
|
||
}
|
||
```
|
||
|
||
Имена тайлсетов — `village`, `vegetation_summer`, `vegetation_autumn`, `vegetation_bare`, `vegetation_winter`, `desert` и `snow`. Чарсеты — `village/<name>` и `desert/<name>`; фоны боёв — `village/meadow`, `village/forest` и `desert/outpost`.
|
||
|
||
Проще всего рисовать в редакторе RPG-карт: выберите `village` тайлсетом карты и рисуйте палитрой вместо ручного ввода номеров тайлов.
|
||
|
||
## Ограничения и замена
|
||
|
||
- Один тайлсет на карту. Смешать тайлсет village и тайлсет растительности на одной карте нельзя.
|
||
- У графики запечённые свет и перспектива. Она нарисована под 2.5D-вид; изометрический рендерер переиспользует те же картинки, поэтому очень высокие объекты сохраняют нарисованный ракурс.
|
||
- Чтобы заменить картинку для своей игры, положите в свой мод файл с тем же относительным именем и объявите зависимость от `village_pack`. Побеждает загруженный позже зависимый мод.
|
||
- Исходные генерации, промпты и редактируемые исходники хранятся в архиве вне игры; в моде — только готовые картинки и определения тайлсетов.
|
||
|
||
## Если картинка выглядит неправильно
|
||
|
||
1. Карта без земли или объектов обычно означает опечатку в имени `Tileset` или пропавшую зависимость.
|
||
2. Невидимый персонаж: проверьте имя `Sprite` и что лист чарсета — 3 × 4 кадра.
|
||
3. Бой с однотонным фоном: у сцены карты нет `defaultBackground`.
|