Выложил версию 0.4.9.
Как обычно здесь: http://sm.axmasoft.com/ru/
Изменений немного, так сказать минорный апдейт: добавил кнопку "Назад" при переходе по ссылке, меню по правому клику в основном окне / навигаторе + багфиксы.
Ближайшие дни буду заниматься компилятором.
Отредактировано DoubleDragon (13.05.2012 09:36)
Неактивен
В процессе написания компилятора возник вопрос - нужны ли невозвратные линки? Другими словами такие ссылки, которые после их выбора не позволяют пользователю вернуться на предыдущую локацию кнопкой "назад"? В Twee есть подобие этого в виде макроса <<choice>>, но мне показалось, что там это не совсем доведено до ума.
С одной стороны наличие таких ссылок позволит автору подталкивать игрока по конкретной сюжетной линии, не давая использовать тупой перебор, с другой стороны - при их злоупотреблении играбельность может значительно ухудшиться.
Как думаете?
Неактивен
Ещё вопросик.
Не врублюсь, как макрос << actions >> работает.
Нашёл фразу << actions "Passage name 1" "Passage name 2" "Passage name N">> - prints another passage inside the current one.
Т.е. выводятся ссылки на локации, а при нажатии на одну из ссылок подгружается соответствующая локация прямо внутрь текущей локации, а ссылка скрывается - так что ли? Или по другому как-то работает? Не могу найти живой пример, чтобы посмотреть.
В мануале Twee тоже как-то невнятно написано: http://gimcrackd.com/etc/doc/#code,actions
Отредактировано DoubleDragon (19.05.2012 09:50)
Неактивен
Ну вроде все макросы реализовал. Компилятор в целом готов, теперь надо известные мне ошибки подчищать. Пару дней буду этим заниматься, потом выложу версию с компилятором на ваш суд.
А пока суть да дело, обновил образец скомпилированной истории. Там из второй локации есть ссылка на примеры макросов: http://sm.axmasoft.com/examples/story.html
Неактивен
Выкладываю первую бета-версию с разблокированным компилятором (v 0.5.0) http://sm.axmasoft.com/ru/.
Компилятор поддерживает все макросы Twee, за исключением <<silently>> и <html></html>, которые игнорируются.
Вот список макросов:
<<back>>
<<set $var = expression>>
<<if $var>> One <<else>> Two <<endif>>
<<display 'Passage name'>>
<<print 'text'>>
<<actions 'Passage name 1' 'Passage name 2' 'Passage name N'>>
<<choice 'Passage name' 'Link text'>>
В принципе программой уже можно пользоваться, но это пока не релиз (см. ниже ToDo). И ошибки наверняка найдутся.
В текущей версии добавлено:
1. Компиляция истории (Ctrl+R или по кнопке "Тестировать").
2. Сохранение скомпилированной истории в локальный HTML-файл (кнопка "Публикация").
3. Вставка шаблонов макросов (см. в окне редактирования параграфа по кнопке <>).
4. Уведомление о лицензии программы.
5. Багфиксы.
С завтрашнего дня я буду в отпуске, в Москву вернусь 3 июня и продолжу.
ToDo на сразу после отпуска:
1. Прикрутить Undo.
2. Написать Help.
3. Публикация на сайт.
4. Сохранение состояния.
5. Возврат назад более чем на один параграф.
Буду рад услышать очередные пожелания и разумную критику ![]()
Отредактировано DoubleDragon (04.06.2012 08:31)
Неактивен
Да, планы по музыкальным возможностям есть. Думаю, как сделать это удобно. Если есть идеи - с удовольствием выслушаю.
Синтаксис будет позже в Help, сейчас проще всего разобраться в нём - это смотреть примеры и юзать шаблоны макросов (в окне редактора параграфов по кнопке <>).
Неактивен
Ну тогда уже в начале июня. А вообще в тех тестовых нескольких параграфах, которые создаются при запуске всё это есть ![]()
Неактивен
2Евг. Спасибо за добрые слова.
Есть тут у нас ещё одна идея по популяризации жанра IF. После отпуска напишу тебе в личку. Если получится запустить процесс, тогда обнародуем идею.
Неактивен
Сорри, но сейчас нашёл одну глупую ошибку и не удержался - поправил и перезалил как версию 0.5.1. Ничего серьёзного, но мне глаза мозолило ![]()
Неактивен
Вернулся в Москву. Пишу хелп. В конце недели кину ссылку на то, что получится.
Неактивен
Да, я знаю. Просто из-за некоторых мероприятий все планы сдвинулись на недельку, но всё обещанное в силе.
Неактивен
Завтра выложу онлайн хелп - на него чуток больше время ушло, чем планировали. Через дней пять - новую версию. Всё идёт по плану ![]()
Неактивен
Ну вот. Двухнедельные мучения
вроде закончены. По этой ссылке можно посмотреть "Руководство пользователя AXMA Story Maker":
http://sm.axmasoft.com/ru/help.html
Возможно, мы что-то упустили из виду, возможно есть ошибки, если что-то найдёте - пишите сюда.
Теперь буду заниматься самой программой.
Неактивен
Да, ссылки на описания макросов расставим, просто торопились выложить то, что есть.
Про белку. Да, ты прав. Имелось в виду, что белка по-любому уже в локации, хотя зачем тогда проверка на название зверя
. Но это же просто пример операторов, хотя если подскажешь, как его красиво изменить, буду рад.
Про выделение - очень хороший вопрос. Надо думать, чтобы этот момент всех устроил. Нам-то проще снять запрет выделения, а как авторам? Хотя понятно, что это не панацея.
Неактивен
Может сделать настройку при компиляции?
да, наверное, это самое правильное.
Неактивен
С elseif проблем особых нет, думаю сделаем на днях. Про StoryMenu - всё это можно, вопрос только интерфейсный, не хочется загромождать экран, тем более для мобильных утройств.
Неактивен
sosiskin написал:
А, и по макросам, можно ли использовать старый твяшный макрос очистки экрана?
Код:
:: Hello macro [script] macros['clrscr'] = { handler: function() { removeChildren($('passages')); } }
Нет, но в нём и смысла нет, т.к. каждая локация и так очищает экран.
Неактивен
Сорри, но наше мнение противоположное. Мы думаем, что это хуже.
Неактивен
Думаю да. Хочу прояснить нашу позицию по этому вопросу. Засорять экран читателя старой информацией - это плохо. В конце-концов можно воспользоваться кнопкой назад и посмотреть, что было ранее. Это как в истории - переход от свитков к переплётной книге - читатель сделал свой выбор уже давно, имхо.
Да, и есть же макрос actions.
Отредактировано DoubleDragon (18.06.2012 17:51)
Неактивен
Спасибо за замечание, пофиксим.
Неактивен
Ну а actions чем плох?
Неактивен
Обещаю подумать. Только про "сверхмелкий" шрифт не очень понял -- его же изменять можно?
Да, и elseif уже сделал.
Лучше сделать ещё один макрос, чтобы можно было вывести другой параграф по клику, не убирая предыдущий текст.
Это можно. С тебя -- название макроса.
Отредактировано DoubleDragon (19.06.2012 13:03)
Неактивен
Я имел в виду шрифт на визуальных листиках-квадратиках. Его тоже можно изменять?
Да, внизу-справа есть регулятор размера.
Неактивен
Есть ещё идея насчёт внутреннего времени.
Т.е. сделать специальную переменную (только на чтение значения), которая будет содержать количество секунд с момента запуска истории. Имеет это смысл?
Отредактировано DoubleDragon (19.06.2012 16:48)
Неактивен
Также можно в сторименю выводить (опционально) время проведенное в игре.
good idea!
Про ограничение времени на решение -- это другая история ![]()
Тут события по таймеру нужны, т. к. юзер может тянуть время не переходя в проверяющий параграф, а проверка на время сработает только когда он зайдёт туда.
Отредактировано DoubleDragon (19.06.2012 17:23)
Неактивен