ТОМ 0.9 бета: различия между версиями
Содержимое удалено Содержимое добавлено
ASBer (обсуждение | вклад) |
ASBer (обсуждение | вклад) |
||
Строка 154:
==Changelog==
===Версия v.0.9.2.3 бета===
*добавлено наследование объектов action от action, что позволяет создавать дейстия по подобию существующих.
*добавлена возможность вводить составные команды:
Строка 166:
* исправлены мелкие ошибки
===Версия v.0.9.2.3 бета и Версия v.0.9.2.2 бета===▼
▲Версия v.0.9.2.3 бета
Версия v.0.9.2.2 бета▼
*исправление ошибок, мелкие косметические улучшения.
Версия v.0.9.2.1 бета▼
*Изменен способ для первичного размещения объектов внутри друг-друга. Теперь при первом объявлении объекта в теле другого объекта, объявляемый объект автоматитески попадает внутрь этого объекта.
unique заяц
Строка 189 ⟶ 181 :
}
}
*Добавлен механизм уточнения команд:
Строка 212 ⟶ 203 :
*исправлены некоторые мелкие ошибки в движке и демоигре.
Версия v.0.9.2.0 бета▼
*Изменен синтаксис языка. Изменен формат описания объектов и доступ к свойствам объектов. В целом язык приблизился к C++ и стал выглядеть еще более привычно для программистов. Очень надеюсь что до выхода версии 1.0 синтаксис меняться более не будет.
*Доведена до ума речевая модель. Определены речевые роли и их распределение в различных типах речевых актов. Реализация поддержки речевых ролей на уровне платформы позволяет автоматически определять лица и правильно подставлять/определять личные и возвратные местоимения при генерации/парсинге текста. Проверить это можно играя за различных персонажей - для мамы игра идет в 1 лице, для мышонка во 2м, и для крота в 3 лице. (О речевой модели в ТОМе обязательно напишу подробнее, т.к. тема интересна и требует дальнейшего развития)
*Проект полность перебран заново. Исправлена архитектура движка. Это позволило избавиться от детских болезней роста и исправить множество ошибок. Теперь ТОМ мне представляется логически цельным и завершенным (в рамках разумных ограничений версии 1.0)
===Версия v.0.9.1.4 бета (bugfix)===▼
▲Версия v.0.9.1.4 бета (bugfix)
*исправлены ошибки предыдущей версии
▲Версия v.0.9.1.3 бета
*убраны синонимы для объектов (будут реализованы позже и на других принципах)
*добавлен предопределенный метод CalcKey() для расчета переменной части морфологического ключа в зависимости от свойств объекта или других измечивых обстоятельств.
Строка 236 ⟶ 217 :
*исправлены найденные ошибки
▲Версия v.0.9.1.2 бета
*произведен рефакторинг движка;
*вызовы обработчиков событий и парсерных проверок приведены к стандарту Си;
Строка 244 ⟶ 223 :
*исправлены найденные ошибки.
▲Версия v.0.9.1.1 бета
*существенно упрощена работа с числительными - для любого объекта в команде можно указать его число. Проверки на согласование с числительными теперь выполняются парсером.
*для объектов, возвращаемых парсером, свойство .num теперь содержит число, указанное игроком;
Строка 253 ⟶ 230 :
*добавлены специальные константы для указания количества - "все", "несколько", "половина", "треть", "четверть".
Версия v.0.9.1.0 бета ▼
*в дополнение к шаблонному парсеру добавлен подбор действий и фраз по ключевым словам и ключевым объектам с оценкой по весу (см. keyword);
*конструкция задания лексем для парсера .lex = "строка" признана устаревшей и впоследствии будет удалена;
Строка 262 ⟶ 237 :
*исправлены ошибки.
▲Версия v.0.9.0.2 бета
*добавлены глобальные переменные token и secret;
*добавлено сообщение парсера object_select;
Строка 274 ⟶ 247 :
*исправлены найденные ошибки.
▲Версия v.0.9.0.1 бета
*для локаций добавлен обработчик события [[TOM: язык программирования#.OnEnter( ) / .НаВход( )|OnEnter()]]
*убран обработчик события onChangePers() за ненадобностью
Строка 282 ⟶ 253 :
*исправлены найденные ошибки в движке и игре.
Версия v.0.9.0.0 бета ▼
*дополнительная поддержка интерфейсов - добавлена константа [[TOM: язык программирования#frontend|frontend]];
*добавлена функция input();
Строка 290 ⟶ 259 :
*исправлены найденные баги.
▲Версия v.0.2.4.1 альфа
*добавлены средства для организации диалогов и событий;
*сообщений об ошибках в парсере вынесены в переменные и могут быть изменены;
Строка 299 ⟶ 266 :
*исправлены найденные баги.
Версия v.0.2.4.0 альфа ▼
*добавлена возможность сохранения/восстановления игры;
*исправлены найденные баги;
▲Версия v.0.2.3.3 альфа
Доработки платформы:
*существенно доработан парсер;
Строка 320 ⟶ 282 :
*вероятно еще что-то… эээ не помню :)
▲Версия v.0.2.3.2 альфа
Добавлены [[TOM: язык программирования#Относительные свойства объектов|относительные свойства]] объектов и ключевые слова actor и act.
Строка 330 ⟶ 289 :
В демоигре восстановлена возможность игры любым персонажем.
▲Версия v.0.2.3.1 альфа
Исправлена работа конструкций языка if-else, for, while, switch-case. Фигурные скобки {} теперь необходимы только для объединения многострочных блоков. Все конструкции (за исключением switch-case) работают аналогично C. Принцип работы switch-case мною изменен, надеюсь, в лучшую сторону.
Строка 343 ⟶ 299 :
Документирование системы пока не начато, но начиная с этой версии в папке "Примеры" можно найти простые файлы с подробными комментариями, позволяющие освоить принципы работы платформы. Файлы, имеющие расширение .tom, открываются текстовым редактором.
Изменения в интерпретаторе:
| |||