Никогда особо не увлекался текстовыми играми, но решил попробовать.
Дело в том, что изучаю программирование и решил написать свой движок для текстовой игры. Проблема в том, что не знаю, какой функционал требуется.
Основные идеи:
1) Возможность свободно переключаться между локациями по клику мышки.
2) Отсутствие текстового парсера (все варианты ответов заранее прописаны).
Я так понимаю, что требуется базовая память на переменные (взял/не взял предмет, посетил/не посетил место), а также возможность их менять.
Может ещё какие то техники стоит предусмотреть?
P.S. Пишу на python, работа среды предполагается в вебе.
Неактивен
Зачем вообще писать еще один текстовый движок?
Говорю же, как дополнительная практика. Вообще у меня есть определённые задумки для текстовой игры, но там нет ничего особо сложного. 50% мотивации это просто практика программирования. Поэтому я пишу строго только на стандартной библиотеке. Т.е. вообще без дополнительных библиотек. Ни о каких годах разработки речи не идёт, как я уже говорил, я не собираюсь писать текстовый процессор. По сути это будет граф из XML документов, по которым можно двигаться в произвольном направлении.
Для текстовой игры с выбором вариантов достаточно вывода текста, ввода номеров вариантов и кучи условий if-then-else. Это интересно как упражнение в программировании, но не очень полезно остальным.
Собственно этот вопрос меня и беспокоит. У меня уже есть более-менее работающий набросок с условиями и всем таким. Просто я опасаюсь, что в середине процесса окажется, что какая то важная вещь не предусмотрена. В частности мне бы хотелось иметь возможность открытого перемещения по локациям со стационарными персонажами. Соответственно у них должна быть какая-никакая логика поведения, видели ли они игрока раньше или нет и тому подобное. По идее это всё реализуется кучей переменных и условиями, но я опасаюсь, что сильно много условий придётся руками писать.
Ну так, просто размышления на тему. Я недавно поменял область деятельности и заделался python-разраотчиком. На работе то я пишу код как положено, а это просто pet-project для себя.
Ну, собстенно наброски я сюда склыдваю:
https://github.com/IgorZyktin/Essence
Неактивен
Основная мысль, лежащая под всем этим делом, помимо собственно практики, это старое аниме из 80-х под названием Bubblegum crisis. Мне давно хотелось сделать игру на его тему, но после нескольких попыток я понял, что никаких других вариантов кроме текстовых я реализовать не смогу. По нему есть куча фанфиков, но 99,9% из них на английском языке. Я подумывал прикрутить возможность автоматического перевода через google-translate. Т.е. в самом базовом варианте это пролистывалка страниц с автоматическим переводом текста. В качестве первичного варианта я просто возьму фанфик и нарежу его на отдельные страницы. Будет только кнопка "Далее" .
У RenPy кстати классный формат документа. Я сначала пытался такой сделать, но устал и перешёл на xml. Сейчас подумал что зря, надо добить эту тему, так гораздо удобнее.
Неактивен
Мне не нужен готовый движок, мне свой нужен.
Неактивен
A) будет ли это CYOA, вроде "найди лучшую из 20 концовок" где игрок видит текст + варианты выбора, кликает на один из вариантов и получает следующую порцию текста + варианты выбора. Продвинутые CYOA-игры, могут включать собирание и использование предметов, боёвку, учёт и изменение каких-то характеристик игрока, скрытые триггеры и прочее.
Нечто среднее. Я не планирую делать строго кишку сюжета, т.к. сюжета как такового нет у меня. Просто хочу возможность бродить по локациям. Но большого количества инвертаря тоже не планирую. Основа для меня это старый квест Blade Runner. Можно свободно ходить по локациям, хотя предметов игре всего несколько штук.
Пока только создаётся впечатление, что без графического редактора узлов тяжко управлять графом локаций. Сильно много надо в голове держать.
Неактивен
Работа продвигается медленно. Собрал вот бинарник для пробы, можно немного погонять.
https://yadi.sk/d/8f32pjfW-rjl3w
Неактивен