Большая просьба, если у Вас есть собственные варианты действий, глаголов и синонимов, которые я упустил в демке - присылайте, постараюсь добавить.
То, что на данной версии платформы реализовать нельзя:
- несколько действий в одной команде: >стрельни и убегай
- несколько объектов в одной команде: >возьми горох и чечевицу
- прилагательное+существительное в команде: >возьми сушеный горох (реализовать можно, но пока слишком громоздко)
Особенно интересны действия с 2мя и более объектами.
Также буду благодарен за любые замечания и конструктивную критику
Неактивен
Korwin написал:
"метнуть бумеранг в голову кенгуру"
я над этим думаю...
Korwin написал:
А по игре - ты может ее на БуКо 2008 выставишь? Или другую, на своем движке?
БуКо 2008 соблазнительно. Только мышек я уже засветил, да и проходится игра за 5-7 ходов. Хотя есть одна мысль... осталось придумать с какого боку там бумеранг. ))))))))
Неактивен
noname написал:
и ещё:
один из многих вариантов организации общения с персонажами, которым могут захотеть воспользоваться авторы- менюшные диалоги. собираешься ли ты их реализовать?
Меню есть и изначально создавалось для быстрого доступа к выходам из локации.
Организовать диалоги на таком меню вполне реально -
по команде "поговори с Васей" мы переносим персонаж в виртуальную локацию "разговор с Васей", где элементы меню обозначают темы разговора.
По команде меню "Попрощаться" персонаж переносится обратно в реальную локацию.
Также можно использовать фиктивный персонаж, созданный только для ведения диалогов.
Отредактировано ASBer (05.05.2008 13:47)
Неактивен
Korwin написал:
А примерчик кода?
вот примерно так:
location Комната .title="Комната" .description="в комнате Вася и Петя (для разговора с Васей введите 'говорить с Васей')" unique Вася.title="Вася" unique Петя.title="Петя" unique ПетяГоворящийСВасей.title="Петя" pers=Петя action Поговорить .pat="поговорить=говорить=поговори=говори с Васей" .pat="спросить=спроси Васю" Петя.Поговорить(){ РазговорСВасей+ПетяГоворящийСВасей pers=ПетяГоворящийСВасей } location РазговорСВасей .title="Разговор с Васей" .description="Слушай, Вася, давно тебя хотел спросить...<15>{.menu()}</15>" .menu_name=" " //не показываем наименование меню .menu_item( __про рыбалку){ %- Вася, а как ты относишься к рыбалке? %- да не рыбак я совсем... %- жаль, очень жаль.<15>{loc.menu()}</15> } .menu_item( __прощай){ %- пока Вася, было приятно поболтать. %- пока Петя. pers=Петя //возвращаемся в комнату } //отдельная тема сокровищ unique ПроСокровища .menu_item( __а где ты хранишь свои сокровища?){ global + ПроСокровища //2й раз про сокровища спросить несудьба %- а где ты хранишь свои сокровища? %- в тумбочке под столом... %- спасибо, ты мне очень помог!<15>{loc.menu()}</15> }
Отредактировано ASBer (08.05.2008 14:05)
Неактивен
Версия 0.2.2.1 alpha
проигрыватель+демоигра
Исправлены некоторые ошибки в движке и игре;
Расширена демка - теперь можно поиграть за крота (2 линии прохождения, короткая для меня была неожиданностью );
Парсер научился понимать числа - > взять 5 горошин (правда пока нет мыслей как это лучше обыграть в демке)
Отредактировано ASBer (16.06.2008 10:01)
Неактивен
noname написал:
невозможно ВЗЯТЬ ОЧКИ
более того, невозможно ВЗЯТЬ 1 ОЧКИ
и вообще никак не получается их взять.
...
>взять очки
- this + Obj*N
-очки number!
Упс! а это уже нелогичность в движке вылезла...
Суть в следующем:
Очки являются уникальным объектом, а для них количество всегда =1.
Чтобы количество не менялось, запрещены арифметические действия с уникальными объектами.
Вероятно нужно разрешить арифметику и контролировать сам результат действия, тогда умножение Очков на 1 не будет вызывать ошибку.
noname написал:
найденные некорректности (по памяти):
>осм кровати
- слово кровати употреблено в неверной форме
Для кроватей не заданы формы множественного числа... добавлю.
noname написал:
за маму истории нет (вот уж не стоило тогда этот пунктик вставлять)
эт на вырост...
noname написал:
за крота: играть не особенно интересно, но попробую таки всё обтестить в чём собственно фишка игры за него? использует ли он какие-то новые навороты движка?
Крот в основном нужен для лабиринта - а слабо пройти лабиринт слепым кротом? Кроме того одни и те же действия кротом и мышонком выполняются по-разному, +есть задумки на будущее...
noname написал:
в общем и целом дальнейший тестинг пока новых ошибок не выявил,
вопросов к автору движка пока нет,
а вопросы к автору сюжета здесь не по теме...
Сюжет будет развиваться вместе с движком. Не планируется ввод новых локаций и персонажей, зато планируется углубление интерактивности паралельно наращиванию возможностей движка. Естественно, любые идей, комментарии и замечания по сюжету приветствуются!
P.S. за тестинг огромное спасибо!
Неактивен
проигрыватель+демоигра
исправлены баги с очками и кроватями.
Отредактировано ASBer (16.06.2008 13:08)
Неактивен
Анонос версии 0.2.3.0 альфа
Новое:
+ оконный интерфейс с графикой;
+ конструкции for(), while(), switch();
~ слегка улучшенный парсер.
Неактивен
http://www.rapidshare.ru/762288 - ТОМ версии 0.2.3.0 альфа.
В составе консольный/оконный интерфейсы и демоигра про мышек.
Изменения в интерпретаторе:
- добавлены конструкции циклов for и while;
- добавлена конструкция switch - case;
- изменена обработка событий, добавлены функции CheckMove, BefMove, AftMove;
- добавлена команда restart;
- формируется лог-файл, прошу присылать логи
Изменения в демоигре:
- добавлена система помощи, мышонок научился думать;
- добавлено ведение счета;
- возможность игры за разных персонажей временно убрана.
PS: оконный интерфейс пока крайне сырой...
Отредактировано ASBer (08.09.2008 22:47)
Неактивен
План разработки на ближайшее будущее
v.0.2.3.1 альфа
- исправление работы конструкций if-else, for, while, switch-case;
+ ключевае слова return, break, continue;
(TOM-язык окончательно сформирован)
v.0.2.3.2 альфа
+ ключевое слово actor
+ относительные свойства объектов;
- исправление известных багов;
(модель ООП окончательно сформирована)
v.0.2.4.0 альфа
+ возможность сохранения/восстановления игры;
+ возможность отката на один ход;
(базовая функциональность ТОМа полностью разработана)
v.0.2.4.1 альфа
- исправление найденных багов;
v.0.9.0.0 бета
+ документирование;
+ примеры;
- бета тестирование;
v.1.0.0.0 - релиз базовой версии.
Отредактировано ASBer (10.09.2008 14:04)
Неактивен
Огромное спасибо за отзыв!
Все замечания надеюсь исправить в ближайшей публикации v.0.2.3.1.
По пунктам необходимо:
1. исправить сообщение парсера, в игре добавить действие "выйди".
2. пока не знаю что тут можно сделать... буду думать.
3. системная команда "Помощь" была переопределена в игре действием "Подсказка", как пример переопределения команд это интересно, но в данном случае неуместно. Убрал.
Неактивен
В версии v.0.2.3.1 альфа исправлена работа конструкций языка if-else, for, while, switch-case. Фигурные скобки {} теперь необходимы только для объединения многострочных блоков. Все конструкции (за исключением switch-case) работают аналогично C. Принцип работы switch-case мною изменен, надеюсь, в лучшую сторону.
Также добавлены ключевые слова return, break, continue, работающие аналогично C.
Теперь язык платформы окончательно сформирован и позволяет разрабатывать алгоритмы любой сложности.
Документирование системы пока не начато, но начиная с этой версии в папке "Примеры" можно найти простые файлы с подробными комментариями, позволяющие освоить принципы работы платформы. Файлы, имеющие расширение .tom, открываются текстовым редактором.
Отредактировано ASBer (09.09.2008 09:33)
Неактивен
noname написал:
извиняюсь, что я ещё на старой версии, но вот захотел проверить реакцию
на ввод одиночного слова
В новой версии на ввод любого неизвестного слова выдается "Мышонок не может это сделать!". Так как в игре заложен весьма ограниченный словарь, я не вижу возможности для любой произвольной строки провести анализ на бред/мат/команду/прочее, поэтому предполагается, что любая введенная строка - это команда к действию.
noname написал:
а вот на слово взять было бы неплохо выдать
какое-нить другое сообщение, типа:укажите, что Вы хотите взять. например:
взять яблоко
Для этого парсер должен иметь механизм подстановки умолчаний и механизм уточняющих вопросов. Например как здесь https://forum.ifiction.ru/viewtopic.php … 171#p13171
Когда нибудь дорастем и до этого...
Неактивен
Версия 0.2.3.2 альфа доступна для скачивания: http://ifwiki.ru/ТОМ
Неактивен
В версии v.0.2.3.2 альфа добавлены относительные свойства объектов и ключевые слова actor и act.
В демоигре восстановлена возможность игры любым персонажем.
Неактивен
fireton написал:
а как же changelog?
добавил
Неактивен
Мне в вики было бы удобно.
Совсем не хочется тратить время на создание еще одного малопосещаемого ил-сайта.
Неактивен
случайно наткнулся на ошибку:
мама-мышь> взять горох
Мама-мышь взяла горох из мешка
В лесу страшно ухнул филин.
мама-мышь> брось
Мышь не может это сделать!
Брось отсутствует.
Дооооолго смеялсо
Отредактировано ASBer (03.10.2008 22:22)
Неактивен
Удивительно много ошибок вылезло на поверхность. Сижу в глубокой отладке, убиваю баги...
Неактивен
Korwin написал:
А я тут уже вставил ТОМ в FAQ. Поторопился?
Нет, все идет по плану. Ошибки не критичные и легко правятся.
Я сейчас добавляю в игру бантики, функциональность под которые давно разработана, но не тестировалась из-за своей второстепенности. Вот жучки и повылазили.
Неактивен
Анонс версии 0.2.3.3.альфа
Доработки платформы:
- существенно доработан парсер;
- изменены управляющие теги;
- исправлена масса ошибок.
Доработки демоигры:
- добавлены новые объекты (ягоды и грядки во дворе)
- добавлены шаблоны для действий с объектами упомянутыми ранее:
мышонок> брось рогатку
Мышонок бросил рогатку на пол.
мышонок> подними
Мышонок взял рогатку с пола.
- добавлены действия с классовыми именами:
мышонок> позвать зверьков
- мама-мышь! - закричал мышонок.
- дядюшка-крот! - закричал мышонок.
- что тебе нужно, мышонок? - спросил дядюшка-крот.
- что тебе нужно, мышонок? - спросила мама-мышь.
- вероятно еще что-то… эээ не помню
Неактивен
Версия 0.2.3.3 альфа доступна для скачивания: http://ifwiki.ru/ТОМ
Неактивен
Анонс версии 0.2.4.0 альфа
+ команды save/сохранить и load/загрузить. Теперь можно сохранять игры.
+ исправлены найденные баги.
- команды undo/отменить в версии 1.0 не будет. Нормальная реализация undo требует глубокой переработки ядра платформы с введением некоторого подобия транзакций и их отката. Команда undo будет реализована в одной из следующих версий 1.х
Бета не за горами!
Неактивен
Это чин такой навроде Тайный советник.
Неактивен
Новая версия 0.2.4.0 альфа доступна для скачивания: http://ifwiki.ru/ТОМ
Добавлены команды save/сохранить и load/загрузить. Теперь можно сохранять игры.
Также исправлены найденные ошибки.
Как дополнительный бонус, в демоигре добавилась возможность командовать другими персонажами, например: крот, возьми горох из мешка
Отредактировано ASBer (20.11.2008 09:48)
Неактивен