Как я hexcrawl делал 5, Мысли о энкаунтерах
Начал было я думать, о том, что бы расписать ряд энкаунтеров для пустыни. И начали мне в голову лесть «нехорошие». Во первых, не столь однозначная связь с типами поверхности. На самом деле, это произошло, когда у меня появились «страны», и желание привязать некоторые вещи не столько к типу поверхности, сколько именно к этим странам. А точнее, захотелось учесть и то и другое. Впрочем было кое-что еще, что меня смущало в подходе, который я описывал(в зависимости от типа местности, кидаем кубик и смотрим по соответствующей табличке). Пример – я хочу сделать лагерь разбойников. И логично было бы, что бы вокруг него они встречались почаще!
В общем покурил я эту тему, и так и сяк. Разные варианты перебрал и пришел к одной идеи. Она не идеальна, есть у нее пара недостатков, о которых я тоже скажу.
Итак, основная концепция заключается в том, что по некоторым правилам я генерю так называемые «гнезда»(«очаги») энкаунтеров. Т.е. выбираю точки на карте, где они будут располагаться. Что такое гнезда? Это сосредоточение некого энкаунтера. Например:
Гнездо скорпионов
Лагерь разбойников
Центр разрушенного города(руины)
Затем я определяю радиус влияния этого самого гезда. В зависимости от типа от 0 до 3 например. И теперь я могу сказать, что в радиусе 2 от гнезда скорпионов их можно встретить. Что в радиусе 1 от центра разрушенного города можно встретить руины этого самого города. Таким образом, каждый гекс на карте превращается в некую уникальную сущности, как раз таки пересечения этих самых энкаунтеров. И я планирую сделать, что бы как максимальное, так и среднее значение их в пределах одной клетки было около 5.
Причем, если эти самые энкаунтеры, для каждого гекса еще и случайно перемешать, то можно будет смело кидать на каждый гекс 1d6, даже не пряча бросок от игроков. Потому-что видимой системы тут не будет. Нет однозначного соответствия о том, что 1- плохо, а 6 – хорошо. В каждой клетке ситуация уникальная по своей сути!
Первая проблема с которой я столкнулся – это каким образом описать содержимое каждого гекса? Самое очивидное – каждый гекс имеет координаты, для каждой координаты есть список из нескольких энкаунтеров(до 6).
Решение очевидное – но отвратительное. Для карты 30 на 30 тайлов – это 900 строк текста только для того, что бы описать список для каждого гекса. Т.е. текста по песочнице будет вагон. Постоянно придется рыться, икать соответствующие таблички. А ведь еще надо описание самих энкаунтеров сделать(их, к слову, все равно делать).
Но решение нашлось, и оно оказалось довольно простое и наглядное.
Итак, у мастера есть своя карта, и на каждом гексе у него может быть до 7 обозначений и подписей. Подпись представляет собой набор цифр вида: XY/Z. X- типа энкаунтера, Y- подтип энкаунтера. Z- удаленность от «гнезда». Это для обозначений по граням гекса, которых ровно 6 штук. По числу граней на d6 ;) Слева внизу – соответствие этих граней значениям на кубике.
В центра нариосован тип поверхности, и закодировано X/Y. X- все тот же тип поверхности, а Y – номер государства. Так сказать – все под рукой. Количество значений, конечно ограничено. Но как минимум 35 значений у нас есть. Цифры от 0 до 9 и латинский символы, с исключенным и последовательности символов О, что бы не путать его с 0.
Т.е. мы можем закодировать до 1225 энкаунтеров(это явно намного больше, чем надо), 35 типов поверхностей и 35 государств. Более чем достаточно!
На примере тайла который я нарисовал:
Змея – тип – животные(0), порядковый номер 1, до гнезда 1 гекс(т.е. в соседнем гексе). Скорпион – тип – животные(0), порядковый номер 6, до гнезда 3 гекса. Торговцы(5), 1 – горцы, например. 2 – всяческие «достопримечательности», 3 – некая разновидность руин. Ну и так далее. На грани 4 – ничего нет. Игроки ничего не встретили, если выпало это значение на кубике.
В центра – 7 – типовая песчаная пустыня, 3 – государство зеленых и чешуйчатых.
Причем, вот например торговцы. Их можно было бы и по другому принципу расставить, не с радиусом, а например вдоль типового следования их пути из города А в город Б.
Какие то энкаунтеры могут, например, не иметь радиуса, т.е. дистанция всегда 0. В общем – вариантов много. Но главное – все это будет выглядить куда более естественно и правдоподобно.
Из минусов, что я упоминал. Ну, ручками я бы такое делать не взялся! Тут явно просится кастомизируемый генератор, иначе можно просто погрязнуть в разработке этой самой карты. Но для меня, как можно догадаться, это не проблема. И этот генератор я уже даже начал писать.
Вторая проблема – это изменение мира. Вприцнипе эта проблема была бы при любом раскладе. Давайте представим, что приключенцы нашли гнездо скорпионов, и уничтожили его. По истечению времени – по хорошему, из того района должны скорпионы исчезнуть. Можно учитывать ручками, но может быть немного напряжно.
Решение?
Все то же. Генератор должен уметь не только создавать карту, он должен уметь ее развивать. Т.е. в электронной карте я нахожу нужный гекс и убираю гнездо скорпионов. И карта сразу меняется с учетом этого фактора.
Вот такая идея для гекскраулера, проблемы и решения. Ваше мнение?
З.Ы.
Пример «карты», в оригинале 32*32, на котором было сгенерировано 10 гнезд песчаных змей. Причем для них было пропасаны правила:
1) Они живут только на песке и в каньонах
2) Они не пересекаются, даже на дистанции 3
3) Радиус круга 3, включая гнездо
Сами змеи нарисованы полупрозрачной градацией, гнездо — черное, само прозрачное — 3 гекс от гнезда.
Когда типов таких вот энкаунтеров будет намного больше, кроме прочего, в клетке может сгенерится более 6 элементов. В этом случае, приоритет, вероятно, будет определятся по удаленности от гнезда.
29 комментариев
Особняком, конечно, стоят населенные пункты. Тут еще надо будет думать. Но есть мнение, что это должна быть отдельная, маленькая карта, с гексами=район города/деревни. Еще, мелькала странная мысль(после прочтения тут коммента про карты), о том, что город можно делать банально из карт. Просто берем колоду и раскладываем несколько штук. Каждая карта — «район». Отдельно можно раписать табличку для этих самых карт. Что за что отвечает. Опять же, это может быть не такой большой объем. Например тип района — это номинал карты. Масть может либо не иметь значение, либо определять что-то еще по отдельной таблицы, например для каждого государства.
Я вот пока склонен к карте размером где-то 50*50, при эффективности гекса 2/3(т.е. где-то на глаз, треть поверхности — океан). Это выходит где-то 1666 тайлов. Когда я рисую карту, мне кажется, что это слишком маленький размер. Когда я вижу число гексов, наоборот, мне кажется — это слишком много. С другой стороны, при наличии генератора — на объем работы над картой, к-во гексов роли играть не будет. Но остается вопрос «юзабилити». Что вы думаете по этому поводу?
Без ответа на эти вопросы лично я ничего не думаю по этому поводу.
Впрочем, в глубине души я думаю, что тебе стоило бы для первого раза последовать проверенному алгоритму Роба Конли:
batintheattic.blogspot.ru/2009/08/how-to-make-fantasy-sandbox.html
Гекс 10 кс или 6 миль. По крайней мере именно из этого я исходил. Но тут вопрос именно юзабилити. На сколько листов а4 на столе удобно работать с картой, какой размер гекса удобен для «фишки» и вообще комфортно игры за столом. Это факторы… А в конечном итоге — имеет значение результат. С какой картой удобно играть за столом. А какая будет слишком большая?
Бумажную карту формата больше А3 тебе, скорее всего, в любом случае будет неудобно разворачивать за столом так, чтобы она не была видна игрокам. Лично мне кажется вполне удобным использовать несколько перекрывающихся карт формата А4.
За день партия проходит два гекса. если горы — то один, если речка по течению — то три. Сколько это в километрах или милях — убей не знаю.
По темпу, я бы хотел сделать где-то в 2 раза быстрее(2 горы, до 4 «дружелюбных», если без особых приключений). Хотя это во многом связанно с тем, что я именно долго долбался с маштабами и скоростью движения, после того как прочел статью «реалистичная демография», или типа того.
А вообще, мне что-то уже кажется, что это никому не интересно :(
А насчет минусов — не заморачивайся)
И кстати, спасибо за ссылку на девианарт с картами — классные!
Может проще просто сделать универсальную таблицу встреч (на основе Мифика): бросаешь д100 и определяешь характер встречи: очень плохо, плохо, нейтрально, хорошо и очень хорошо (условно). Затем смотришь на карту и прикыдываешь, какие роды опастностей могут быть. Например, у нас «плохая встреча», дело происходит в пустыне, на текущем тайле есть логово скорпионов, на соседнем есть гробница с нежитью, и еще на соседнем есть поселение дикарей. Дальше просто выбираешь одну из этих опастностей (или снова используешь д100 для рандома). В итоге на героев напало с десяток скелетов, выбравшихся из гробницы.
+ к этому всему можно сделать лист особых встреч (10-20), вроде особых событий в фоллаутах 1-2
Мне кажется, это значительно проще и быстрее, чем ваять кучу страниц для генерации.
1) Внутри гекса практически не остаётся места для обозначения объектов рельефа. (Вообще это решение годится только для карт, изначально составленных из шестиугольников, которые я в принципе плохо перевариваю).
2) Без генератора это
не меньшебольше усилий, чем просто писать строчку энкаунтера для каждого гекса, а как писать генератор, пока не очень понятно.3) Система получается довольно негибкой. При выпиливании какого-либо гнезда или, особенно, генерации нового (скажем, если персонажи доиграются с каким-нибудь магическим экспериментом и посреди пустыни возникнет портал, вокруг которого начнут встречаться демоны из иных миров, ранее вообще никак в игре не фигурировавшие), то карту придётся переделывать.
4) Не очень понятно, так ли это вообще нужно. При использовании предложенного алгоритма табличка случайных энкаунтеров для конкретного гекса более-менее однозначно определяется его ближайшим окружением. Окинуть взором 19 соседних гексов, отметить по себя все логова и наличие торгового пути, да мысленно упорядочить их в табличку из 6 строчек — секундное дело. Получается довольно много технической работы ради весьма скромной экономии времени и усилий на игре.
Если интересно, я потом довольно подробно могу описать, как это будет делаться. Собственно я уже придумал, но пока не реализовал. Но в целом, это будет не слишком сложно. Если конечно не сильно заморачиваться на «торговые пути». Тут же посложнее, хотя тоже все сведется к банальному поиску пути с весами — где вес — в том числе уровень опасности гекса.
Да, что-то подобное и меня немного смутило. Но тут есть разные варианты решения. Во первых, надо понимать, что речь идет о ДМ карте. В принципе она вообще может быть офорилена в виде простого приложения, в том числе для планшета, и тогда эта проблема не актуальна. Но есть и другие варианты. Например, для каких-то особых случаев, вроде сильного влияния на мир порталом, на карту может «ложиться» звездочка из 7 гексов(что-то вроде того, как это сделано в одной из версий Small World).
Одно время я вообще всерьез размышлял о карте из таких вот блоков, которые генерятся(выкладываются на стол), в процессе игры. Но это еще больший «хаоса», чем мой изначальный вариант. А мне, почему-то, захотелшось от него уйти. На ум, напротив, приходит Far Cry 3 с «местами» и охотой.
Может ты и прав, но я не уверен. Мне кажется такая карта будет куда более «правдоподобной». Основные усилия при этом одноразовые, сделав настраиваемый генератор, я смогу делать потом сколько угодно много и сколь угодно сложные карты такого типа. Причем, я мгу довольно хорошо сбалансировать сложности, события и прочие такие вещи. При этом, количество сущностей(конкретно разновидностей энкаунтеров), будет не так уж и много. Если честно, в каком-то смысле я пытаюсь сйчас применяить опыт балансрования компьютерной игры, которым сейчас занимаюсь, для вот этой задачи. Там все совсем по другому, естественно(там вообще Хидден Обжект фри ту плей), но некоторые подходы тут дейстсительно применимы.
По остальным пунктам — понял, звучит разумно. В любом случае, интересное направление приложения усилий.
Но у меня такой подход отторжения не вызывает. Красивая карта на столе добавляет некого антуража и настроение — имхо. А это, мне кажется, довольно важная составляющая НРИ, да и вообще РИ.
Красивая карта на столе добавляет антуража и настроения, но зачем она при этом отбирает у меня часть собственно ролевой игры? Почему я должен видеть, что во-он за той горой — озеро, если мой персонаж там никогда не был, а с его местоположения этого не видно? Хорошо, когда есть креативные и неленивые люди, готовые создавать всякий вспомогательный стафф для игры, но когда этот кружок «умелые руки» начинает ставиться выше самой игры, у меня это не находит понимания. Я не люблю, когда средство затмевает цель.
Если персонажи знают, где этот хребет — пусть об этом знают игроки.
Если персонажи находятся достаточно близко — GM им опишет: «Вдалеке на востоке, за рекой и лесом, вы смутно различаете тёмно-синюю дымку вдоль горизонта, не иначе там протянулся горный хребет».
Если персонажам представится иная возможность узнать о местоположении хребта, они тоже могут ею воспользоваться: «Отпусти моя, люди добрая! Моя есть Ушлугх с Восточная гора, туда ходи три дня солнце смотри, река переплывай!»
А не «тыкаются на совершенно пустой карте», простихосподи.
Понимаешь, я хочу играть по миру, который состоит из высоких гор, стремительных рек, дремучих лесов, вересковых пустошей, ревущих водопадов, раскалённых пустынь, нехоженых дорог, мрачных замков, толчеи городов, весёлых ярмарок, заброшенных храмов, скачущих в бой рыцарей, плетущих интриги царедворцев, готовящих зловещие ритуалы чернокнижников, и так далее. А если игроки чувствуют, что мир состоит из 1000 гексов, значит, у мастера кривые руки, и я не хочу у такого мастера водиться. А пустые это гексы или полные — уже не важно.