Infest-event.ru

Инфест Эвент
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как сделать текстовый квест

Извечный квест написателя текстов на HTML.

Самые популярные товары с Али по лучшей цене здесь

Извечный квест написателя текстов на HTML.

Сам квест дословно звучит так: «Я не знаю HTML, но писать пост должен на нём. Что мне делать, если я категорически не желаю изучать HTML, ибо западло?»

Поскольку всё на свете меняется, кроме человека, сей квест будет актуален всегда. И каждый раз его как-то надо пройти. Причём самый простой и очевидный совет (да выучи уже наконец этот пяток тегов форматирования текста — абзаца, перевода строки, оформления списками, выделения цветом, болдом, либо как-нибудь ещё) сразу отвергается юзером по религиозным соображениям.

Ну нет так нет — оскорблять чувства верующих себе дороже.

Да, и «простой и очевидный совет» ещё тем нехорош, что написательство сразу на уровне кода (то есть в форме той или иной CMS) создаёт предпосылки для появления опечаток. В стране раздолбанных клавиатур с хреново срабатывающими или залипающими кнопками даже идеально грамотный человек способен невзначай породить ужасное.

А творить непотребство некошерно.
И, стало быть, квест делится на две самостоятельные части:

  1. Написание текста в редакторе с проверкой орфографии.
  2. Конвертирование текста в HTML.

Смешно сказать, но в реальном мире не нашлось готового софта, позволяющего обе эти части Марлезонского балета станцевать силами одной тулзы.

Да, мы все знаем, что всеми любимый Word, Open Office, Libre Office, Google Docs, и прочие редакторы с проверкой орфографии по словарю, замечательно ловят опечатки. Позволяя при этом задействовать пользовательский словарь, ежели в текстах много нишевого жаргона, и словарь общих терминов не сильно помогает. Но с экспортом в HTML у них большие проблемы — результирующий код всё едино приходится править руками.

Что, как мы помним, вступает в конфронтацию с граничными условиями задачи — пользователь не знает, да и не хочет знать HTML.

Как народ выкручивается ?

Местный автор по разным поводам и в разное время контактировал со многими топовыми блогерами, пишущими обильно и разнообразно (что требует знания HTML в объёме несколько большем, нежели на уровне пяти тегов). И каждый раз, проявляя любопытство в рамках рассматриваемого сегодня квеста, очень удивлялся — никто из них не пишет свои вирши прямо в коде.

Да, все эти многочисленные экслеры и прочие звёзды онлайна ведут себя в точности так же, как и простые смертные — сначала сочиняют текст в умном редакторе того или иного офисного приложения с функцией проверки орфографии, а потом сохраняют текст в HTML формате. И применяют ту или иную тулзу по очистке HTML кода от разнообразной хрени, в изобилии там имеющейся. Кто видел код, вылезший из-под Ворда, тот сразу всё поймёт.

Либо отнимают собственно текст у Ворда, и через буфер обмена отдают какому-нибудь визуальному редактору, отобранному из всего многообразия такого рода софтин по критерию чистоты кода на выходе.

Иногда последовательно используются более чем две-три тулзы, что уже смахивает на повод для анекдота. Но такова се ля ви — к чему человек привык, то и будет использовать остаток жизни.

Объективности ради стоит признать, что есть довольно продвинутые и интересные очищальщики HTML кода, с пользовательскими правилами на регулярках. То есть настраиваются под себя, а потому универсальны, и многое умеют.

Но всё равно, имеем парадокс.

Он состоит в том, что в век чуть ли не искусственного интеллекта, когда космические корабли бороздят просторы Большого театра, а автомобильчики ездят по дорогам общего пользования сами по себе, без привлечения водилы, нету простой и удобной тулзы, позволяющей пройти наш квест в один этап, легко и просто.

Каждый вынужден колхозить своё решение 🙂

Колхоз Мастера Ласто.

Он совсем простой и без изысков. Некоторое число интересующихся просили в тот колхоз пустить, так что инструкция по вступлению такая.

Сам местный автор, как приверженец минимализма, пользует совсем простой текстовый редактор, в котором можно лишь набирать текст. Это Q10 в портабельном исполнении, хрен знает сколь древней версии. Не обновлялся никогда.

Там, естественно, нет никакой проверки орфографии, ни единой кнопочки, и ровно ноль панелек. Только буковки, и сам написатель этих буковок по эту сторону экрана. Над концепцией можно ржать, но автор «Игры престолов» пользуется примерно такой же штукой (даже ещё более древней), и ему это ничуть не мешает. Стало быть, и нам можно.

Стиль набора исходного текста прост: абзацы отделены пустой строкой. Не переводом строки, а именно пустой строкой (которая формально состоит из пары переводов подряд).

Первая непустая строка текста потом станет названием статьи.

Три последующих непустых строки впоследствии отформатируются как хайка — таков обычай написания постов в местном колхозе. Это примерно как благодарность за хлеб наш насущный перед чинною трапезой приятельствующих самураев — без хайки тут никак нельзя.

Если хочется в тексте организовать подзаголовок, перед строкой малюется знак равенства. Вся эта строка потом выделится тегом заголовка H3.

Ссылка, ежели будет нужна, пишется в тексте прямо в виде абсолютного адреса. Потом обернётся соответствующим тегом самостоятельно.

Это все правила.

Далее готовый текст копипастом переносится в форму донельзя простой тулзы, которая создаёт из не форматированного текста HTML код поста.

Сама тулза не является секретом — в папочку Блоговой Наны селим файл под любым именем и в расширении .php — код этого файла таков:

php /* Выше этой строки в файле ничего не должно быть */

$_s [ ‘template’ ][ ‘form_editor’ ]= ‘

$_s [ ‘title’ ]= ‘Конвертировать текст в HTML код’ ;

$data = get_post_data ( ‘inp’ , ‘users’ );
$inp =isset( $data [ ‘inp’ ]) ? $data [ ‘inp’ ]: » ;

$_s [ ‘content’ ]=
h2 ( ‘Исходный код:’ ).
tpl_builder (
$_s [ ‘template’ ][ ‘form_editor’ ],
array(
‘===action===’ => $_s [ ‘loc’ ][ ‘here’ ],
‘===text===’ => array(
‘===name===’ => set_sign ( ‘users’ , ‘inp’ ),
‘===title===’ => ‘Исходный код:’ ,
‘===text===’ => $inp ,
),
‘===submit===’ => array(
‘===name===’ => set_sign ( ‘users’ , ‘submit’ ),
‘===value===’ => ‘Конвертировать текст в HTML’ ,
‘=== > => ‘blue’ ,
),
)
);

$inp = explode ( $oslen , trim ( $inp ));
$out = $null ;
foreach ( $inp as $i => $v ) <
$inp [ $i ]= $v = trim ( $v );
if ( $v != » ) <
$w = $null ;
foreach ( explode ( ‘ ‘ , $v ) as $u ) <
$w []= this_url_is_ok ( $u ) ? ‘ . $u . ‘» target=»_blank» >Link’ : $u ;
>
$v = implode ( ‘ ‘ , $w );
if ( preg_match_all ( ‘

Читать еще:  Квест игра путешествие по королевстве микробов

‘ , $v , $n )) $v = $bold [ ‘on’ ]. trim ( $n [ 1 ][ 0 ]). $bold [ ‘off’ ];
if (isset( $inp [ $i — 1 ]) and $inp [ $i — 1 ]!= » ) $v = $cont . $v ;
$out []= $v ;
>
>
unset( $inp );
$titul = count ( $out ) > 0 ? array_shift ( $out ): null ;
$hokky = count ( $out ) > 0 ? ‘

‘ . array_shift ( $out ). ‘
‘ . array_shift ( $out ). ‘
‘ . array_shift ( $out ). ‘

‘ : » ;
$out = str_replace (
array(
‘“’ , ‘”’ , $stop . $oslen . $oslen . $start . $cont ,
),
array(
‘«’ , ‘»’ , $oslen . ‘ ‘ . $cont ,
),
$start . trim ( implode ( $stop . $oslen . $oslen . $start , $out )). $stop . $oslen
);
if ( preg_match_all ( ‘

‘ . $start . $bold [ ‘on’ ]. ‘([^ . $bold [ ‘off’ ]. $stop . ‘

Usi’ , $out , $n )) <
foreach ( $n [ 1 ] as $t ) <
$out = str_replace (
$start . $bold [ ‘on’ ]. $t . $bold [ ‘off’ ]. $stop ,
$oslen . $bold [ ‘on’ ]. $t . $bold [ ‘off’ ]. $oslen ,
$out );
>
>

$_s [ ‘content’ ].=
h2 ( ‘Синтезированный код поста:’ ).
preg_replace (

Usi’ ,
‘ ‘ ,
tpl_builder (
str_replace ( ‘===submit’ . ‘:input_submit===’ , » , $_s [ ‘template’ ][ ‘form_editor’ ]),
array(
‘===action===’ => $_s [ ‘loc’ ][ ‘fold’ ],
‘===text===’ => array(
‘===name===’ => set_sign ( ‘users’ , ‘html’ ),
‘===title===’ => ‘HTML код:’ ,
‘===text===’ => $titul . $hokky . $out ,
),
)
)
).( $titul == null ? » : h2 ( ‘Внешний вид:’ ). $titul . $hokky . $out );

function this_url_is_ok ( $u ) <
if ( preg_replace ( ‘

is’ , » , $u )== $u ) return false ;
$u = preg_replace (array( ‘

is’ ), » , $u );
return ( preg_match ( ‘

/* Ниже этой строки в файле ничего не должно быть. */ ?>

Примечание.

Поскольку в браузерах на основе движка Гугл Хрома предусмотрена проверка орфографии прямо в текстовых полях форм, нет необходимости использовать внешний текстовый редактор офисного уровня. Все опечатки и ошибки подчеркнутся прямо в тексте верхнего поля формы.

Как это работает?

Предельно элементарно — демо.
Можно пихать в форму свой контент.

Другие статьи категории «Маленькие лайфхаки»

Немножко про денежные знаки.

Вся правда о распитии водки напёрстками.

Локальный web-сервер на платформе Андроид.

№ 2 Мало знать, надо.

Согласен с автором, но надо говорить и о том, что понимание, для чего тот или иной тег предназначен, особенно при форматировании текста, очень важно.

Всегда, как поборника чистоты html-кода, удивляло, зачем, если есть тег параграфа — ‹р›, нужно добавлять отбивку между параграфами при помощи тега ‹br›. Проще ведь набрать текст, и отделить абзацы 1-3 тегами ‹br›?

Понятно, что для тех, кто давно пишет в паутине, когда еще не было повального увлечения таблицами стилей и был голый html, ‹br› был панацеей, и через энное количество лет переписывать множество постов — труд по сути никчемный 🙂

Но все равно Мастеру респект, поколению ЕГЭ ой как пригодится 🙂

№ 3 К Мастеру Горди и не только.

Раньше ставил тег ‹br› после ‹/p›, но потом осознал, что можно стилями разделять, исправился. В Опере 12.17, что сейчас трудится как основная (есть RSS и почта встроена, работает портативно), новости от Ласто приходят с двойными переводами строки, ибо ‹/p›, а затем ‹br›.

Если заметили, то форма добавления страницы из первого коммента тоже перевод строки после абзаца не признаёт.

Переделал немного код местного автора под себя — четыре строки сначала под четверостишье, да тег ‹br› удалил.

Правда в коде не хватает ‹h3›, ‹h4› и ‹ul›, но это уже будет наглостью с моей стороны. С ‹hx› справлюсь, а вот со списками — нет.

‹br› появился вынужденно, ибо в RSS без него шла мешанина абзацев, никак и ничем не разделённых. Картина в стиле «вырви глаз», и местный автор не сумел с ней смириться.

Сейчас, действительно, ситуация особого смысла не имеет, но что уж сложилось исторически, то не вытравить дустом.

№ 5 Вообще-то

Вообще-то, для постинга есть LiveWriter и ему подобные, которые честно проверяют орфографию, как в ворде, переводят в html, как душе угодно, и заливают произведение на блог.

Предыдущему мастеру намекали, что для ведения пары тройки ластоблогов продуктивнее использовать десктопные постилки, ибо подготовка и заливка пачки статей происходит быстрее, кроспостинг проходит проще, да и миграция контента с одной платформы на другую становится реальностью.

Нужно лишь малость: иметь плагин для ластоблога реализующий протокол дистанционного постинга.

ТОП 10 Текстовых квестов: лучшие сюжеты, захватывающие истории

Новые игры, оживляющие любимые комиксы и книги, смотрятся неплохо, но обратите внимание на текстовые квесты — вот, что может заставить ваше воображение работать на полную.

Представьте, что вы являетесь разработчиком игр. Задача следующая – из всех жанров игр выбрать жанр, который позволит создать захватывающую историю, но при этом будет обладать низкими системными требованиями, что позволит выпустить его сразу не нескольких платформах.

Оптимальным вариантом будут текстовые квесты на андроид. Во-первых, их можно просто и быстро портировать на другие мобильные операционные системы. Во-вторых, игру можно монетизировать посредством ненавязчивой рекламы, что значительно упрощает продвижение. Во-третьих, текстовой квест на андроид – отличная возможность показать новому поколению, которое не слышало о одноядерных процессорах, во что играли их сверстники лет 15 тому назад.

Пандемия: Дорога домой

Качественный текстовой квест на русском – вполне реальная ситуация, и данная игра тому отличное подтверждение. Сначала всё кажется до ужаса банальным: зомби, мутации, противостояние живых и мёртвых, в общем — тема избита до ужаса. Но разработчики не зря выбрали своим девизом фразу «Нет видеокарты мощнее, чем ваше воображение». И правда, имеющиеся иллюстрации лишь широкими мазками демонстрируют нам мир главного героя, а через пару страниц вы чувствуете себя полноценным участником событий. Главный фокус заключается в том, что этот мир не отличается от повседневной жизни большинства людей, а следовательно – дорисовывать ничего не нужно, ваш мозг автоматически подставит события из жизни.

Читать еще:  Мир квестов ночь квестов

Пандемия позволяет игрокам побыть в шкуре одного из немногих выживших во время всемирной эпидемии, превратившей большую часть населения земли в кровожадных мутантов. Выглядит как банальная история о зомби, но дальнейшее развитие сюжета уже не кажется таким тривиальным – игроки начинают сопереживать герою и даже отождествлять себя с ним, пытаясь любой ценой спастись от нависшей угрозы.

Если вы являетесь поклонником творчества Рея Бредбери – этот текстовый квест на русском обязателен для прохождения. В это же время, если вы не знакомы с рассказами этого культового писателя, то игра поможет понять, стоит ли вам скачивать на читалку все его произведения, или лучше пока повременить. Любопытный исследователь садится в машину времени и отправляется в далекое прошлое, если быть точным, в период мезозоя. Там ему предстоит непродолжительная прогулка, в ходе которой он сделает несколько выборов, оказавших влияние на тысячелетия истории. К сожалению, повествование невероятно короткое, но зато отлично иллюстрирует действия эффекта бабочки в рамках относительно длительного временного отрезка.

Однако, первое, что попадётся вам на глаза – отличительная черта всех текстовых квестов на андроид на русском, а именно: ужаснейшая графика и кривоватый интерфейс. К слову, прохождению это никак не мешает, да и не стоит «судить книгу по обложке». Смиритесь с тем, что после успеха первых игр этого жанра, каждый желающий принялся превращать свою любимую книгу в приложение. Причём, иногда это сделано настолько плохо, что отбивает всякое желание вникать даже в увлекательный сюжет.

Game of Thrones от TellTale

Игра Престолов и её головокружительная популярность стимулировали желание заработать на культовой серии у всех, кто смыслит в инвестициях. Есть РПГ, есть стратегии, есть мобильные файтинги, похоже не хватает только того, чтобы отечественные разработчики выпустили текстовый квест онлайн для русскоязычных пользователей.

И если вы скажете, так есть же Game of Thrones от TellTale, то ошибётесь очень сильно. Данная игрушка, хоть и погружает в сеттинг и отходит от канонов жанра, включая элементы экшена, полностью лишена сюжета. Проблема в том, что эпизоды выходили постепенно, сериал и книга уже об этих событиях рассказали, да и к тому же семья протагонистов ни на что не может повлиять. Так что, если вы просто не можете прожить и дня без Джона Сноу и Тириона, то играть покупайте и не задумывайтесь, а если же вы предпочитаете качественные текстовые квесты на русском языке, то лучше будет пройти мимо.

Отдых за гранью — наверное, лучший текстовой квест на андроид

В этой игре есть всё. Представьте, что вы читаете РПГ. Тут и сайд-линии, и множество вариантов прохождения, и прокачка скилов, и получение новых предметов, и запоминающиеся персонажи. В чём же тогда отличие? Вместо многих лет кропотливой работы дизайнеров, программистов и аниматоров, которые бы заставили вас идти в интернет-магазин за видеокартой помощнее, работает ваше воображение.

Сюжет мало кого оставит равнодушным: Питеру всего-то хотелось отдохнуть в охотничьем домике, но все пошло не по плану, когда он лишился связи с проводником. Теперь он один посреди чащобы и понятия не имеет, куда ему идти и что делать. К счастью, у Питера есть коммуникатор, при помощи которого он наладил связь с вами. Окажите ему помощь и приведите к спасению – под чутким руководством игрока туристу-неудачнику придется обзавестись навыками выживания в дикой природе, находить множественные предметы и эффективно их использовать, а также общаться с различными персонажами, как доброжелательными, так и довольно опасными. В квесте присутствуют случайные события, делающие каждое повторное прохождение уникальным. В первые минуты не захватывает, а уже потом осознаёшь, что серьезно увлекся и пару остановок метро проехал. Стоит отметить качественный перевод и удобные интерфейс. «Отдых за гранью» — доказательство того, что скачать текстовый квест на русском сегодня не составит проблем.

Lifeline

Текстовый квест от автора известной серии комиксов Fables (русскоязычные геймеры знакомы с этой вселенной по игре The Wolf Among Us от студии Telltale). Сюжет повествует о космонавте Тейлоре, потерпевшему кораблекрушение на неизвестной планете. Будучи единственным выжившим из экипажа, он имеет в распоряжении лишь смартфон, при помощи которого и поддерживает связь с игроком – то есть, с вами.

Своевременно отвечая на сообщения и ведя диалог с астронавтом, игрок погрузится в интересную историю с массой захватывающих событий и сюжетных твистов, которые в конечном итоге приведут его к финалу. Каким он будет, это уже зависит от совершенных по ходу прохождения выборов. Кстати, одно из неоспоримых достоинств игры – качественный перевод на русский язык, что для текстовых квестов большая редкость.

Симбионт

Захватывающая история за авторством российского фантаста Николая Бородина. В секретной лаборатории произошла утечка опаснейшего вируса, превращающего людей в кровожадных мутантов. Одному из выживших, нейробиологу Соболеву, придется искать выход из замкнутого пространства и попутно спасти мир от распространяющейся заразы. Игроки берут на себя роль советчика, с которым ученый периодически выходит на связь. От их указаний зависит то, как поступит персонаж в той или иной ситуации – какую дверь откроет, сделает ли привал перед длительным забегом по коридорам и пр.

Разработчики заявляют о нескольких сюжетных линиях и десятках возможных исходов внутриигровых событий, комбинации которых приведут к одной из трех концовок. История довольно продолжительная – более трехсот тысяч символов текста.

Воспоминания: выход из комнаты

Жанр “побег из комнаты” на персональных компьютерах некогда был достаточно популярен, даже сейчас часто выходят трехмерные адвенчуры от инди-разработчиков, позволяющие побродить по замкнутому пространству, разгадывая натыканные через каждые два метра головоломки. Что касается мобильных устройств с преимущественно маленькими экранами, жанр на них не прижился в виду особенностей управления. Однако российские девелоперы придумали отличный выход – побег из комнаты в формате текстового квеста.

Игроки в “Воспоминания” должны помогать персонажу по имени Лео, загадочным образом попавшему в палату заброшенной больницы и совершенно не помнящему своего прошлого. Продвигаясь по сюжету и разгадывая различные головоломки, герой постепенно узнает правду о трагических событиях, ставших причиной его заточения. Игра, стоит отметить, крайне атмосферная – создатели хорошо поработали над звуковым и музыкальным сопровождением, способствующим погружению в историю.

Читать еще:  Квест детские клубы

Бегство Алисы

Игра недоступна для скачивания в Google Play, но .apk можно скачать со сторонних сайтов.

У молодой девушки Алисы возникли реальные проблемы. Поехав на отдых в Турцию и столкнувшись с вооруженной бандитской группировкой, она вынуждена совершить побег из номера отеля. Казалось бы, перед нами достаточно тривиальный и шаблонный сюжет для детективной истории. Но в процессе игры становится понятно, что “Бегство Алисы” способно удивлять даже больших любителей приключенческой литературы. Большое количество неожиданных сюжетных твистов, сцены погонь, насилия и даже сексуальная тематика.

Интерактивную книгу написал профессиональный автор-фантаст, сумевший заставить игроков следить оригинальным сюжетом и динамичным повествованием вплоть до впечатляющей развязки. Доказательством тому служит множество положительных отзывов в Google Play и высокие пользовательские оценки.

Survival Planet

Еще одна игра про злоключения потерпевшего бедствие космонавта. Сюжет разворачивается в мире далекого будущего, ставшем уже достаточно технологичным, чтобы совершать длительные межзвездные перелеты, колонизируя и обживая новые планеты. Одна из таких экспедиций оборачивается полной катастрофой, а вы оказываетесь единственным выжившим в чужом для себя мире. Задача проста – добраться от места приземления спасательного модуля до места кораблекрушения. Вот только многочисленные преграды и трудности явно не способствуют скорому осуществлению задуманного.

Survival Planet выгодно отличается от большинства игр жанра текстовых квестов, так как не ограничивается нелинейностью сюжета. Игрокам также придется заниматься тайм менеджментом, крафтить предметы (их тут более 1.5 сотен) и участвовать в пошаговых боях на манер классических ролевых игр. И все это под эффектное музыкальное сопровождение.

Тайга

Поучаствуйте в удивительной истории молодой русской девушки Нины, которая была похищена неизвестными людьми и совершила побег, очутившись посреди таежного леса с одним лишь смартфоном. По счастливой случайности, ей удалось отправить SMS на телефон главного героя (то есть, вас), и теперь он является единственным ее контактом и шансом на спасение.

Весь игровой процесс в данной истории построен на взаимодействии двух персонажей посредством переписки. Каждый раз игроку на выбор дается несколько вариантов ответа, многие из принятых решений способны оказать существенное влияние на сюжет. Сможете ли вы помочь Нине и пролить свет на обстоятельства ее похищения? Не узнаете, пока не сыграете.

Заключение

Не смотря на то, что эпоха текстовых квестов закончилась еще 20 лет назад, а даже самые бюджетные компьютеры и мобильные устройства научились с легкостью воспроизводить трехмерные игры, среди пользователей сети все еще находится множество любителей текстовых историй. По сути, геймерам предлагают к ознакомлению те же книги, только теперь игрок может стать полноценным участником разворачивающихся событий, влияя на ход сюжета своими решениями. Далеко не каждая RPG с многомиллионным бюджетом похвастается столь развитой нелинейностью. Поэтому даже тем, кого данный жанр обошел стороной, рекомендуется ознакомиться хотя бы с одной игрой из этого списка.

Как начать делать текстовый квест?

Нужно реализовать класс Quest в котором будут хранятся шаги.

Шаги представляют собой класс с каким-то текстом и вариантами выбора. Пользователь сам добавляет шаги и варианты выбора, которые в свою очереди ведут к следующим шагам (сценам) в зависимости от выбора игрока. Как я понимаю каждый выбор должен иметь ссылку на следующий шаг (сцену). Но как это реализовать в коде не понимаю.

В общем, @VladD абсолютно прав, вам нужен конечный автомат (в английской терминологии state machine), и желательно разобраться что это такое подробнее, но я попробую показать простой для понимания пример не используя пока специфическую терминологию.

Вам попадались книги-игры Дмитрия Браславского? В прочем если бы попадались, вопрос бы не возник.

И так, что такое текстовый квест? Это набор параграфов, описывающих некоторые игровые сцены в которых игроку требуется принять некоторое решение, чтобы перейти к другой сцене. Ок, от этого и пойдем.

Пронумеруем все параграфы в произвольном порядке. Для книги нумерация имеет значение, для компьютерного варианта — нет.

Размещаем параграфы в массив согласно сделанной нумерации.

Каждый выбор игрока, фактически, означает выбор следующего параграфа, но выбор в слепую, т.к. игрок не знает содержимое параграфа (во всяком случае в первой игре). Таким образом, необходимо сопоставить предлагаемые игроку действия на текущей сцене с номерами параграфов на который они ведут.

Когда игрок сделал свой выбор, мы просто показываем ему текст следующего параграфа с соответствующим индексом в массиве и ожидаем следующего выбора игрока, разумеется если это выбор у него есть в данной сцене.

Естественно возможен вариант, когда игрок может попасть на одну и туже сцену (параграф) разными путями.

Таким образом, вам достаточно одного единственного класса для описания модели вашего квеста, при этом ни чего мудреного не требуется. Для консольного варианта достаточно базовых знаний C#: синтаксис, условия, массивы, циклы. ну и немного стандартных классов для организации ввода/вывода.

В эту модель прекрасно вписывается и «боевка» с бросанием кубиков, и применение ранее приобретенных вещей, если сцена предполагает возможность их применения.

Какую к данной модели приделать «шкурку»: консоль, или развесистый графический интерфейс с иллюстрациями и музыкой, не имеет значения, т.к. самое сложное в данном типе игр — создать сюжет и написать тексты игровых сцен, чтобы они не были все на одно лицо.

Единственное что я бы посоветовал лично от себя — не показывайте игроку настоящие номера параграфов, спрячьте их за кнопками с текстом, локальными номерами (1,2,3 и т.д. по количеству вариантов выбора в сцене) для консоли, ссылками для Web-версии. Так интереснее, и больше вероятность, что игрок хотя бы прочитает (а может и запомнит) текст над которым вы или ваш сценарист трудились, создавая квест.

Ну и немного кода для иллюстрации возможной (но не единственной) реализации такой модели:

Простейший вариант для консоли с одним классом:

Более сложный пример:

Если знаете что такое направленный граф, то можно еще проще

С кодом ввода выбора игрока и вывода текста на экран, думаю сами справитесь.

Ссылка на основную публикацию
Adblock
detector