Тема закрыта
Добрый день, друзья.
Мне тут по долгу службы (а компания, где я работаю, сейчас разрабатывает ролевую онлайн-игру) необходимо написать движок для воспроизведения текстовых мини-игр на javascript. Эти мини-игры будут вставлены в основную канву игры в качестве небольших квестов. Ещё один нюанс - эти игры будут писать разные люди, использующие разные ОС и что важно - эти люди ну совсем не программисты. Поэтому всё должно быть наглядно и по-русски.
Twine (Tweebox) неплохо подошёл бы для решения этого вопроса, но, к сожалению, он уже давно не обновлялся и при всех своих достоинствах плохо работает с кириллической кодировкой (возникают ошибки во время редактирования пассажей и при импорте/экспорте текстовых исходников). Тут ещё и узнал, что автор проект забросил. Но идея визуального проектирования повествования, заложенная в Twine, очень хороша, и жаль от неё отказываться.
В общем пришлось написать свой велосипед, обратно совместимый по исходникам с Tweebox и с аналогичным интерфейсом. В настоящее время редактор "допиливается" и тестируется. Есть три сборки - для Windows, Mac OS X и Linux.
Сейчас реализовано следующее:
- визуальное проектирование, аналогичное Twine;
- нативная поддержка любых кодировок (внутри всё крутится в utf-8);
- совместимость с исходными кодами игр Tweebox;
- корректная подсветка синтаксиса во время редактирования;
- собственый компилятор игр в один компактный независимый html-файл;
- адаптация для экранов мобильных браузеров.
Если кому интересно, выложу скриншоты и бета-версию.
Последняя версия всегда лежит по адресу http://sm.axmasoft.com/ru/
По этой ссылке можно посмотреть "Руководство пользователя AXMA Story Maker":
http://sm.axmasoft.com/ru/help.html
Отредактировано DoubleDragon (17.06.2012 10:35)
Неактивен
Макрос actions какой-то стремный. Если использовать его для диалога, то звездочки явно не в тему, но больше меня волнует возможность перейти назад. Даже пример из коробки показывает, что с ним нужно что-то сделать. Если нажмем "продолжить" -> "Об этой истории" в меню -> кнопка "назад" в правом верхнем углу. И теперь, если мы тут:
нажмем "← Назад", то мы опять попадем в "Об этой истории". А если сделать еще и для пункта "Об авторе этой истории" в менюшке свою страницу, то вообще в них можно застрять. Сначала открывает через меню "Об этой истории", а затем "Об авторе этой истории".
То, что переменные не булевые, это хорошо, но тогда бы и макрос random не помешал. Тогда бы, например, можно было делать пошаговые бои.
Еще не очень нравится, что нельзя настроить стартовый экран по своему усмотрению.
И почему бы по аналогии с <<back>> не сделать <<restart>>?
Неактивен
DoubleDragon написал:
То, что переменные не булевые, это хорошо, но тогда бы и макрос random не помешал. Тогда бы, например, можно было делать пошаговые бои.
В общем это можно реализовать и через встроенную функцию Javascript (пример есть в мануале), но можно и отдельным макросом. Каким Вы видите его синтаксис?
Как по мне, не стоит нагружать его. Можно сделать по аналогии с set:
<<random $var = 5>>
и чтобы генерило именно целые числа. Хотя и другие операции не помешали бы: отбрасывание десятичной части, модуль, округление в большую и меньшую сторону. Все бы это можно было бы вынести в отдельную кнопку.
DoubleDragon написал:
Еще не очень нравится, что нельзя настроить стартовый экран по своему усмотрению.
Не очень понял, про что Вы.
Стартовый экран же из себя представляет: автора, название, описание и уже начало игры. И все бы ничего, но форматирование первых трех пунктов никак не настроить.
DoubleDragon написал:
И почему бы по аналогии с <<back>> не сделать <<restart>>?
Можно, но какой будет его смысл, если читатель и сам может нажать кнопку "Начать заново"?
Аналогично можно сказать про <<back>>, но на экранах победы и поражения <<restart>> очень в тему бы смотрелся.
Неактивен
Кстати, не помешал бы макрос по аналогии с actions, но с возможностью выбрать только 1 пункт или сколько мы выберем.
Неактивен
DoubleDragon написал:
Типа options? Но это может дублировать функционал нескольких невозвратных ссылок подряд.
Вот пример боя http://mop-drew.ru/story.html и для каждого хода приходится использовать чуз. А хотелось бы, чтобы как и при актионе выводилось все на одном экране. И нельзя сделать костыль с которым для актионов использовался синтаксис ссылок?
Неактивен
Меня насторожили непонятно откуда взявшиеся переходы на другую строку при использовании макроса чуз и дисплей.
Неактивен
DoubleDragon, прокомментируйте мою жалобу с переносом строк. Вот наглядный пример:
почему-то в первом случае строка перенеслась, а во втором нет. Сам я, конечно, никаких переводов не делал:
Вы можете <<choice 'бой' 'остановиться'>> или <<choice 'игнор' 'проигнорировать'>> просьбы неизвестных господ.
С принтом то же самое, не перенеслась строка только в самом первом случае:
Неактивен
В Опере и ИЕ проблема есть. Кстати, в Опере мобайл тоже прекрасно играется, но опять же есть эти переходы на следующую строку. Благо с ява-скриптом она дружит хорошо.
Неактивен
Тема закрыта