Clean up tilesets: retire unused variants and biomes, objects only in object atlases, snow objects and fence; desert object groups, fence plane; mod documentation

This commit is contained in:
cthangover committed 2026-10-29 09:26:25 +01:00
1 parent a23c8e9548
commit f385eebbde
53 files changed
+7603 -248

No files matched your search

+118
View File
@@ -0,0 +1,118 @@
# Village Pack — графика для RPG-карт и боёв
Village Pack — набор графики, на котором стоит мир RPG Plus: тайлсеты для рисования карт, шагающие спрайты героев, жителей и монстров, боевые портреты и фоны сражений. Всё нарисовано в единой живописной 2.5D-стилистике, поэтому карты из него выглядят одним миром.
Это **только графика**. Деревня, дом старейшины, лес и пустыня, по которым можно ходить, — карты и события контентных модов RPG Demo и RPG Plus; ходьба, столкновения и бои — работа RPG-движка. Village Pack поставляет картинки, которыми всё это нарисовано.
![Карта деревни ночью, нарисованная тайлсетом village: коттеджи, мощёная площадь с фонарями, деревья, пруд и жители, нарисованные чарсетами пака.](assets/village-map.jpg)
## Что внутри
### Тайлсет village
Тайлсетом `village` нарисована каждая карта демо-мира. У него две части.
Объекты ставятся на клетки: коттедж, арка святилища, вход в пещеру, деревья, кусты, колодец, костёр, фонарные столбы, забор, указатель, бочки, сундуки (закрытые и открытые), верстак и подбираемые предметы — хворост, камни, гриб. Наверху — интерьер коттеджа, единая картинка комнаты 12 × 10, которую использует дом старейшины.
![Атлас объектов деревни: интерьер коттеджа сверху, ниже — коттедж, арка святилища, пещера и дуб, вдоль низа — мелкие предметы.](assets/village_objects.jpg)
Поверхности — бесшовные текстуры земли, заливающие целые области: трава, мощёная дорожка, земля, светлый каменный пол, деревянный пол, каменистая лесная тропа и вода.
![Семь поверхностей деревни: трава, булыжник, земля, светлый камень, доски, каменистая тропа и вода.](assets/village_surfaces.jpg)
У некоторых тайлов есть свойства для RPG-движка: вода непроходима, а фонари и окна несут источник света, который светится на карте в сумерках и ночью.
![Дом старейшины, собранный из картинки интерьера коттеджа, ночью светится двумя окнами.](assets/elder-house.jpg)
### Сезонная растительность
Четыре тайлсета растительности показывают одни и те же деревья, кусты, пни и цветы летом, осенью, в «голом» позднеосеннем виде и в снежной зиме: дуб, ель, берёза, ива, клён и сосна, круглые и ягодные кусты, спиленные и дуплистые пни, ромашки и фиалки.
![Одна и та же растительность в четырёх сезонах, слева направо: лето, осень, голые ветви и зима.](assets/vegetation.jpg)
На карте используется ровно один тайлсет, и ни одна из готовых карт тайлсеты растительности пока не берёт. Это готовый материал для автора карты.
### Пустыня и снег
- `desert`: песчаные и каменистые поверхности с пустынными объектами — глинобитными постройками, рыночным навесом, пальмами, кактусами и сухой травой. Пустынная карта RPG Plus, Dry March, нарисована им.
- `snow`: свежий снег, лёд и две протоптанные поверхности (`packed_snow` и сильнее истоптанный `trampled_snow`), а также хижина, телега, колодец, камни, кусты и заснеженные ели. Готовые карты его пока не используют.
![Четыре снежные поверхности: свежий снег, лёд, утоптанный снег с неглубокими следами и сильно истоптанный снег.](assets/snow_surfaces.png)
![Пустынная карта с тайлсетом desert: песок, каменистая дорога, навес, пальмы, кактусы, скорпионы и жуки.](assets/desert-map.jpg)
### Чарсеты: шагающие спрайты
Каждый чарсет — лист 3 × 4: три кадра шага для каждого из четырёх направлений (вниз, влево, вправо, вверх). В деревенском наборе есть герой, старейшина, житель, торговец, слайм и волк. Пустынный набор добавляет скорпиона, жука и бочку в закрытом и открытом виде.
![Деревенские чарсеты: герой, старейшина, житель, торговец, слайм и волк, у каждого четыре ряда направлений.](assets/charsets.png)
### Боевые портреты и фоны
Большие портреты показывают сражающихся в бою: героя, слайма и волка, а также пустынных скорпиона и жука.
![Боевые портреты: герой с мечом и щитом, слайм, волк, скорпион и жук.](assets/portraits.jpg)
Три фона — луг, лес и пустынный форпост — служат фоном боя, начавшегося на карте. У луга и леса есть `_depth`-спутники для системы освещения.
![Фоны сражений: луг, лес и пустынный форпост.](assets/backdrops.jpg)
![Бой со слаймом: портрет слайма сверху, героя — слева внизу, на фоне ночного луга.](assets/battle.jpg)
## Где вы это увидите
Village Pack входит в игру `rpg_plus`. В ней:
- деревня, дом старейшины, лес и лесное святилище нарисованы тайлсетом `village`;
- пустынная карта использует `desert`;
- по картам ходят старейшина, торговец, жители, волки, слаймы, скорпионы и жуки — чарсетами пака;
- в боях показываются портреты, а сцены карт берут `village/meadow`, `village/forest` или `desert/outpost` как фон сражения.
Тайловый редактор показывает выбранный тайлсет как свою палитру. Здесь открыт дом старейшины: интерьер коттеджа, объекты и образцы поверхностей — это тайлсет village.
![Редактор RPG-карт с открытым домом старейшины. Палитра слева показывает тайлсет village; в свойствах карты справа — «Tileset: village».](assets/map-editor-palette.jpg)
## Используйте его в своём 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`.