ТОМ 0.9 бета: различия между версиями

Содержимое удалено Содержимое добавлено
Пожалуй, можно считать платформу заброшенной ввиду перехода автора к разработке ТОМ 2
 
(не показаны 183 промежуточные версии 4 участников)
Строка 7:
Расшифровка названия: ТОМ - ''Текстовая Основа Миростроения.''
 
Период разработки: 2008-2011гг.
Текущая версия: [[Медиа:ConTOM.rar|0.9.2.4 бета]] (консоль).
 
Последняя версия: [[Медиа:Tom_094.rar|0.9.4.11 бета]], версии [[ТОМ 0.9 бета#Отказ от выпуска версии 1.0|1.0]] не будет.
Графический интерфейс: [[Медиа:TOMilena.rar|ТОМ+Милена]].
 
Продолжение разработки: [[ТОМ 2]].
Если у Вас есть вопросы по платформе - посмотрите [[ТОМ: FAQ]]
 
[[:Категория:Игры на TOM|Игры на платформе ТОМ]].
==Язык программирования==
 
Автор: [[Участник:ASBer|ASBer]]
 
[http://tom.userforum.ru/ Официальный форум] платформы.
 
Есть набор простых [[Медиа:tom_sample.rar|примеров]] по программированию.
 
Для углубленного изучения посетите [[:Категория:Документация ТОМ|раздел документации]].
 
Если у Вас есть вопросы по платформе - посмотрите [http://forum.ifiction.ru/viewtopic.php?id=1258 FAQ].
 
 
===Язык программирования===
ТОМ имеет [[wikipedia:Скриптовый язык|скриптовый]] [[TOM: язык программирования|язык программирования]] [[wikipedia:Высокоуровневый язык программирования|высокого уровня]], по синтаксису близкий к [[wikipedia:С++|С++]], а по идеологии напоминающий [[wikipedia:Ruby|Ruby]].
 
Строка 20 ⟶ 33 :
Есть возможность обработки событий и фоновых действий.
 
===Парсер команд на русском языке===
[[Парсер]] изначально ориентирован на русский язык, не имеет ограничений на количество слов в команде, команды описываются с помощью шаблонов. Парсинг управляется функциями-проверками к шаблонам.
 
===Модульный принцип построения платформы===
==Консольный интерфейс: constom.exe==
Платформа ТОМ строится по модульному принципу и состоит из нескольких частей:
[[Изображение:Constom.GIF]]
 
1. Текстовый парсерный движок реализован в виде динамической библиотеки tom.dll
Консольный интерфейс поддерживает тег смены цвета шрифта и несколько служебных тегов.
 
2. Интерфейсная оболочка (Front-end) служит для отображения текста и ввода команд игрока.
Constom является простым примером для разработки интерфейсов к ТОМу.
 
3. Начиная с версии 0.9.4.х используются плагины, расширяющие возможности языка ТОМ и обогащающие его мультимедийные возможности.
Исходный модуль консольного интерфейса [[Медиа:ConTOM_s.rar|constom.cpp]] на языке C доступен для свободного [[Медиа:ConTOM_s.rar|скачивания]].
 
При желании авторы могут создавать и использовать свои собственные интерфейсы и плагины. API движка открыты.
==Поддержка HTML и прочих тегов==
 
Ядро ТОМа позволяет использовать как HTML разметку, так и любые другие теги. Текст, заключенный в < > прозрачен для ядра ТОМа и может быть обработан программой-интерфейсом при разборе текста перед его выводом.
===Поддержка HTML и прочих тегов===
ТОМ позволяет использовать как HTML разметку, так и любые другие теги. Текст, заключенный в < > прозрачен для ядра ТОМа и может быть обработан интерфейсом при разборе текста перед его выводом.
 
Вся тяжесть обработки HTML тегов и прочей разметки ложится на front-end.
Полнота поддержки HTML зависит от конкретного front-end-аинтерфейса.
 
==Версия 0.9.3.1==
==Интеграция с другими программами==
[[Медиа:ConTOM.rar|скачать]]
Платформа состоит из 2х частей:
 
===Консольный интерфейс: constom.exe===
[[Изображение:Constom.GIF]]
 
Консольный интерфейс является простым примером для разработки front-end приложений к ТОМу версии 0.9.3.1.
 
Исходный модуль консольного интерфейса [[Медиа:ConTOM_s.rar|constom.cpp]] на языке C доступен для свободного [[Медиа:ConTOM_s.rar|скачивания]].
 
Constom поддерживает тег смены цвета шрифта и несколько служебных тегов.
1. Ядро - реализовано в виде динамической библиотеки .dll
 
===TOM API 0.9.3.1===
2. Интерфейсная оболочка (Front-end)
Интерфейс между ядром версии 0.9.3.1 и оболочкой достаточно прост, построен на нескольких функциях ядра. Любой желающий может использовать ядро платформы в своих разработках.
 
Интерфейс между ядром и оболочкой достаточно прост, построен на нескольких функциях ядра. Любой желающий может использовать ядро платформы в своих разработках.
Для этого необходимо подключить tom.dll и его функции: RunFile(); RunText(); Command();
===экспортные функции===
Назначение функций:
*char* RunFile(char*FileName)
Строка 59 ⟶ 79 :
**Возвращает текст, сгенерированный при выполненнии команды.
 
===МиленаТОМилена===
Первым удачным примером интеграции движка ТОМ является платформа [[Милена]].
 
Строка 84 ⟶ 104 :
%<music name="главная тема" event="stop">//Эта строка останавливает воспроизведение музыки с условным именем "главная тема"
 
==Версия 0.9.4.х==
[[Медиа:Tom_094.rar|скачать]]
 
Для версий 0.9.4.х декларируется обратная совместимость* с v.0.9.3.1, что гарантирует возможность проигрывания игр, сделанных для версии 0.9.3.1 и использование разработанных для неё библиотек.
==Библиотеки==
*''*совместимость не полная - возможности, которые никогда не были использованы, в v.0.9.4.х могут отсутствовать.''
[[Медиа:Libs4TOM.rar|Пакет библиотек]] включает в себя стандартную библиотеку ТОМ, тест для модулей стандартной библиотеки, примеры разработки с использованием стандартной библиотеки, а также портированные с рТАДС игры - Плащ Тьмы и Золотой череп.
 
Библиотека находится в состоянии разработки и будет периодически обновляться.
 
'''В плюсе:'''
===Стандартная библиотека===
*новый графический интерфейс и новый механизм взаимодействия движка с интерфейсом;
Стандартная библиотека строится по модульному принципу.
*основной цикл игры убран внутрь dll и выполняется в отдельном потоке;
К каждому модулю разработан свой тест, демонстрирующий его работу.
*регистрация внешних функций, система плагинов;
Автор сам будет решать, какие модули использовать в игре, а какие можно выкинуть.
*поддержка музыки и речи вынесена из движка в отдельные плагины;
*вычисление выражений непосредственно в командной строке (удобно для отладки);
*тестировать можно на старых играх - мышках и спелеологисте.
 
''Модули стандартной библиотеки:''
====Main.tml====
*содержит минимально-необходимый набор функциональности.
 
===Интерфейс на основе HGE===
(Модуль необходим для работы остальных модулей)
[[Изображение:TOMonHGE.JPG]]
 
Интерфейс реализован на основе полноценного графического движка [http://hge.relishgames.com/overview.html HGE], что в будущем позволяет нарастить графические возможности платформы и использовать различные спецэффекты.
====Map.tml====
*позволяет размещать локации на карте;
*поддерживает перемещения по компасным направлениям - [[сзюв]]
 
====UnusVerbТОМ API 0.tml=9.4.х===
ТОМ API состоит из нескольких функций tom.dll:
*содержит список неиспользуемых глаголов
*'''RegFunction()''' - регистрирует дополнительные внешние функции;
*генерит осмысленные сообщения для комманд с глаголами из списка
*'''Init()''' - запускает движок;
*не зависит от библиотеки Main.tml
*'''RunText()''' - выполняет переданный текст, возвращает результат;
*'''Exit()''' - останавливает движок.
 
Еще есть альтернативные функции, на случай если ваш интерфейс или плагин не использует UNICODE:
===Порт библиотеки rTADS===
*'''RegFunctionANSI()''' - работает аналогично RegFunction();
в разработке...
*'''RunTextANSI()''' - работает аналогично RunText();
 
====Внешние функции====
==Текущее состояние разработки==
ТОМ позволяет подключать неограниченное количество внешних функций, расположенных в интерфейсе или в плагинах и расширяющих стандартный набор функций ТОМа.
Доступна [[Медиа:ConTOM.rar|версия 0.9.2.4 бета]].
К платформе прилагается короткая демо-игра, адаптированная для проигрывания в Милене.
 
После регистрации внешней функции её можно вызвать из командной строки '''>MyFunction Arg''' или из кода игры: '''MyFunction(Arg)'''.
Также имеется набор простых [[Медиа:tom_sample.rar|файлов-примеров]] по программированию.
 
 
Существует 5 специальных внешних функций, необходимых для работы ТОМа:
Идет бета-тестирование и разработка документации.
*'''print''' - выводит текст на экран;
*'''input''' - ввод из командной строки;
*'''error''' - выводит информацию об ошибке;
*'''debug''' - выводит отладочную информацию;
*'''speech''' - читает переданный текст голосом.
Обязательными являются только функции print и input.
 
Эти 5 функций также можно вызывать из командной строки и из кода игры, хотя особого смысла в этом нет - движок сам вызывает их когда это необходимо.
==План развития платформы==
бета-тестирование:
 
===Плагины===
~ разработка [[TOM: язык программирования|документации]];
Плагины - это специализированные dll.
Имя файла плагина должно соответствовать маске *.plg.dll
 
Плагины грузятся при старте платформы из папки движка и из подпапки plugins\ в каталоге движка, а также при запуске игры из папки игры и из подпапки plugins\ в каталоге игры.
~ разработка примеров по программированию;
 
В момент загрузки плагины регистрируют свои собственные функции, которые расширяют набор стандартных функций ТОМа.
+ разработка стандартной библиотеки;
 
+ портирование стандартной библиотеки [[RTADS]]
 
В комплект поставки включены два плагина:
~ доработка и обкатка отладочного режима;
*'''tommci.plg.dll''' обеспечивающий проигрывание музыки;
*'''speech.plg.dll''' обеспечивающий проговаривание выводимого текста.
 
==Общее для 0.9.x.x==
~ выявление и исправление ошибок;
Совместимость версий делает возможным использование общих библиотек и инструментов.
 
''(Последние версии стандартной библиотеки могут некорректно работать на платформе v.0.9.3.1, рекомендуется использовать последнюю версию платформы 0.9.4.х)''
 
===Библиотеки===
v.1.0 - релиз базовой версии.
В [[Медиа:Libs4TOM.rar|пакет библиотек]] входят:
 
'''Стандартная библиотека ТОМ:'''
*модули стандартной библиотеки (каталог ''Libs4TOM\std.lib'');
*демо для стандартной библиотеки (файл ''Libs4TOM\std_test.tom'');
*портированные на стандартную библиотеку ТОМ игры рТАДС - [[Плащ тьмы (RTADS)|Плащ Тьмы]] и [[Золотой череп]] (файлы ''Cloak_of_Darkness.tom'' и ''GOLDSKLR_std.tom'').
 
====Стандартная библиотека====
v.1.x.x.x - развитие базовой версии.
[[Медиа:Libs4TOM.rar|Стандартная библиотека]] строится по модульному принципу.
К каждому модулю разработан свой тест, демонстрирующий его работу.
Автор сам решает, какие модули необходимы в его игре, а какие можно выкинуть.
 
Смотрите также [[ТОМ: Стандартная библиотека|подробное описание библиотеки]] и [[ТОМ: Уроки|пошаговые уроки создания игры на основе стандартной библиотеки]].
+ новая категория объектов для лексем
 
+ транскрипция для записи лексем
 
''Модули стандартной библиотеки:''
+ типизация аргументов методов и перегрузка (overload) методов объектов
 
*'''UnusVerb.tml''' Содержит список неиспользуемых глаголов, генерит осмысленные сообщения для комманд с глаголами из списка.
 
*'''Main.tml''' Содержит минимально-необходимый набор функциональности - классы для ''локаций, предметов, персонажей'' и ''декораций'', действия ''осмотреться, осмотреть, взять, дать, положить, идти, войти, выйти, сказать'',
v.2.0 - вторая версия - парсер с динамическими шаблонами.
 
*'''Physics.tml'''
 
*'''Map.tml''' Позволяет размещать локации на карте, поддерживает перемещения по компасным направлениям - [[сзюв]]
==Changelog==
Версия v.0.9.2.3 бета
*добавлено наследование объектов action от action, что позволяет создавать дейстия по подобию существующих.
*добавлена возможность вводить составные команды:
> войди в лифт и нажми 5 кнопку
Ты вошел в лифт.
Лифт
Самая обычная кабинка лифта.
Здесь есть кнопки. Ты находишься тут и лифтер находится тут.
Ты нажал кнопку 5.
Лифт поднял тебя на 5 этаж.
----
 
*'''Containers.tml'''
Версия v.0.9.2.3 бета
 
*'''Light.tml'''
Версия v.0.9.2.2 бета
*исправление ошибок, мелкие косметические улучшения.
----
Версия v.0.9.2.1 бета
 
===Инструменты===
*Изменен способ для первичного размещения объектов внутри друг-друга. Теперь при первом объявлении объекта в теле другого объекта, объявляемый объект автоматитески попадает внутрь этого объекта.
====Генератор словоформ====
unique заяц
Удобный [[Медиа:tom_Gener.rar|генератор словоформ]] от Александра:
{ //... описание зайца
unique утка
{ //... описание утки
unique яйцо
{ //... описание яйца
// и т.д. до самой смерти Кощея
}
}
}
 
[[Изображение:tom_g.PNG]]
 
Текущая версия 0.8.2.158
*Добавлен механизм уточнения команд:
 
==Отказ от выпуска версии 1.0==
''> возьми еду''
Направление развития 0.9 признано неудачным. Выявленные в ходе бета-тестирования сложность разработки игр, недостаточный уровень поддержки русского языка, и отсутствие авторов, желающих писать на этой платформе, наглядно это подтвердили.
 
В настоящее время идёт разработка [[ТОМ 2]].
''Стручок на грядке или малину на кустах?''
 
Принципы работы движка серьезно пересмотрены. В новую версию вложен весь боевой опыт, приобретенный за время создания и использования платформы, а также новые идеи, внедрить которые в архитектуру первого ТОМа было уже невозможно.
''?> горох с грядки''
 
==Changelog==
''Ты сорвал стручок с грядки.''
===Версия v.0.9.4.11 beta===
 
[[Медиа:Tom_094.rar|лежит здесь]]
 
*В демоигру добавлены притяжательные местоимения. Сравните варианты ответов при игре за мышонка:
 
''> осмотри крота''
 
и при игре за крота:
 
''> мышонок, осмотри меня''
 
 
*исправлены некоторые мелкие ошибки в движке и демоигре.
----
 
Версия v.0.9.2.0 бета
 
*Изменен синтаксис языка. Изменен формат описания объектов и доступ к свойствам объектов. В целом язык приблизился к C++ и стал выглядеть еще более привычно для программистов. Очень надеюсь что до выхода версии 1.0 синтаксис меняться более не будет.
*Доведена до ума речевая модель. Определены речевые роли и их распределение в различных типах речевых актов. Реализация поддержки речевых ролей на уровне платформы позволяет автоматически определять лица и правильно подставлять/определять личные и возвратные местоимения при генерации/парсинге текста. Проверить это можно играя за различных персонажей - для мамы игра идет в 1 лице, для мышонка во 2м, и для крота в 3 лице. (О речевой модели в ТОМе обязательно напишу подробнее, т.к. тема интересна и требует дальнейшего развития)
*Проект полность перебран заново. Исправлена архитектура движка. Это позволило избавиться от детских болезней роста и исправить множество ошибок. Теперь ТОМ мне представляется логически цельным и завершенным (в рамках разумных ограничений версии 1.0)
----
 
Версия v.0.9.1.4 бета (bugfix)
*исправлены ошибки предыдущей версии
----
 
Новое в версии:
Версия v.0.9.1.3 бета
*загрузка/выгрузка плагинов перенесена из движка в интерфейс и доработана;
*убраны синонимы для объектов (будут реализованы позже и на других принципах)
*плагин '''speech.plg.dll''' (чтение текста голосом) доработан и возвращен в архив;
*добавлен предопределенный метод CalcKey() для расчета переменной части морфологического ключа в зависимости от свойств объекта или других измечивых обстоятельств.
*плагин '''tommsi.plg.dll''' (воспроизведение музыки и звуков) требует доработки и временно исключен из архива;
*добавлен предопределенный метод Redirect() для перенаправления действия с одного объекта на другой.
*исправлены пути для загрузки фоновых картинок - теперь пути берутся относительно каталога игры;
*исправлены найденные ошибки
*в тэге '''<body>''' теперь работает параметр '''bgcolor=''' пример: '''<body background=bg.jpg bgcolor=red>'''
*можно задавать произвольные цвета текста и фона с помощью шестнадцатеричных чисел в формате RGB; пример: '''<body text=F94500>'''
*небольшое улучшение парсера: при неоднозначности между объектом и локацией предпочтение отдаётся объекту.
 
===Версия v.0.9.4.10 beta===
----
*ударение в лексемах более не влияет на парсер;
Версия v.0.9.1.2 бета
*в тэге <body> теперь работают стандартные параметры "text", "link", "topmargin", "bottommargin", "leftmargin", "rightmargin"
*произведен рефакторинг движка;
например:
*вызовы обработчиков событий и парсерных проверок приведены к стандарту Си;
%<body background=foto\bgStart.jpg text=aqua leftmargin=100 rightmargin=80 topmargin=50>
*изменена логика для значения null;
еще пока не сделано:
*исправлены найденные ошибки.
*не исправлена ошибка, возникающая при выгрузке плагинов.
*пути файлов в тегах берутся относительно папки движка, а не игры.
 
===Версия v.0.9.4.9 beta (багфикс)===
----
*исправлено сохранение игр;
Версия v.0.9.1.1 бета
*добавлен выбор значения свойств по локации (предмет_по_месту);
*существенно упрощена работа с числительными - для любого объекта в команде можно указать его число. Проверки на согласование с числительными теперь выполняются парсером.
*интерфейс переписан с учётом потокобезопасности.
*для объектов, возвращаемых парсером, свойство .num теперь содержит число, указанное игроком;
*речевой плагин временно убран из архива - не корректно завершает работу.
*числовые переменные в парсерных шаблонах убраны за ненадобностью;
*для чисел стало возможным задавать строковые синонимы - "100"="сто";
*добавлены специальные константы для указания количества - "все", "несколько", "половина", "треть", "четверть".
 
===Версия v.0.9.4.8 beta===
----
*финальная версия в этом направлении.
Версия v.0.9.1.0 бета
*в дополнение к шаблонному парсеру добавлен подбор действий и фраз по ключевым словам и ключевым объектам с оценкой по весу (см. keyword);
*конструкция задания лексем для парсера .lex = "строка" признана устаревшей и впоследствии будет удалена;
*для объектов, возвращаемых парсером, свойство .lex теперь содержит лексему, названную игроком в команде;
*любое свойство объекта, содержащее строку в формате лексемы и имеющее в основе одно слово, теперь может быть использовано как имя объекта в команде (альтернатива .lex=)
*исправлены ошибки.
 
----
Версия v.0.9.0.2 бета
*добавлены глобальные переменные token и secret;
*добавлено сообщение парсера object_select;
*для объектов добавлены предопределенные свойства in_dialog и as_variant
*системные команды теперь могут использоваться в коде игры.
Например
global < "exit"
приводит к выходу из программы.
*исправлены найденные ошибки.
 
'''Версия v.0.9.4.7 альфа'''
----
*Сделана загрузка плагинов.
Версия v.0.9.0.1 бета
*Добавлена интерфейсная функция pause() / пауза(). Рекомендуется использовать вместо тэга <pause>.
*для локаций добавлен обработчик события [[TOM: язык программирования#.OnEnter( ) / .НаВход( )|OnEnter()]]
*Доработана обработка ошибки с незакрытыми скобками в коде игры.
*убран обработчик события onChangePers() за ненадобностью
*добавлен тег для очистки экрана <clear>
*исправлены найденные ошибки в движке и игре.
 
----
Версия v.0.9.0.0 бета
*дополнительная поддержка интерфейсов - добавлена константа [[TOM: язык программирования#frontend|frontend]];
*добавлена функция input();
*демоигра адаптирована под Милену, добавлены картинки;
*исправлены найденные баги.
 
'''Версия v.0.9.4.6 альфа'''
----
*доделана нормализация знаков препинания;
Версия v.0.2.4.1 альфа
*исправлены некоторые ошибки.
*добавлены средства для организации диалогов и событий;
Версии присвоен статус "альфа". Всё основное, что планировалось в ветке 0.9.4.х, сделано.
*сообщений об ошибках в парсере вынесены в переменные и могут быть изменены;
Осталось доделать небольшие фичи, после чего эта версия перейдет в "бету" и будет рекомендована как основная официальная версия.
*оптимизирован парсер;
*доработано сохранение игр;
*исправлены найденные баги.
 
----
Версия v.0.2.4.0 альфа
*добавлена возможность сохранения/восстановления игры;
*исправлены найденные баги;
 
'''Версия v.0.9.4.5 (багфикс)'''
----
*Исправлен ряд ошибок, критичных и не очень. Спасибо '''Александру'''.
Версия v.0.2.3.3 альфа
 
Доработки платформы:
*существенно доработан парсер;
*изменены [[TOM: язык программирования#Теги|управляющие теги]];
*исправлена масса ошибок.
 
'''Версия v.0.9.4.4 dev'''
Доработки демоигры:
*Добавлена speech.dll для чтения текста.
*добавлены новые объекты (ягоды и грядки во дворе)
*добавлены шаблоны для действий с объектами упомянутыми ранее;
*добавлены действия с классовыми именами;
*вероятно еще что-то… эээ не помню :)
 
----
Версия v.0.2.3.2 альфа
 
'''Версия v.0.9.4.3 (багфикс)'''
Добавлены [[TOM: язык программирования#Относительные свойства объектов|относительные свойства]] объектов и ключевые слова actor и act.
*Исправлена критическая ошибка. В остальном без изменений.
 
Объектная модель платформы окончательно сформирована.
 
'''Версия v.0.9.4.2 dev'''
В демоигре восстановлена возможность игры любым персонажем.
*Доделана система ввода-вывода (за исключением голоса и коррекции знаков препинания)
*Исправлены старые ошибки
*Добавлены новые ошибки
 
----
Версия v.0.2.3.1 альфа
 
'''Версия v.0.9.4.1 dev'''
Исправлена работа конструкций языка if-else, for, while, switch-case. Фигурные скобки {} теперь необходимы только для объединения многострочных блоков. Все конструкции (за исключением switch-case) работают аналогично C. Принцип работы switch-case мною изменен, надеюсь, в лучшую сторону.
 
*Исправлено несколько мелких ошибок.
Также добавлены ключевые слова return, break, continue, работающие аналогично C.
*Воспроизведение музыки приведено к полной совместимости с версией 0.9.3.1
 
Теперь язык платформы окончательно сформирован и позволяет разрабатывать алгоритмы любой сложности.
 
'''Версия v.0.9.4.0 dev'''
 
В плюсе:
Документирование системы пока не начато, но начиная с этой версии в папке "Примеры" можно найти простые файлы с подробными комментариями, позволяющие освоить принципы работы платформы. Файлы, имеющие расширение .tom, открываются текстовым редактором.
 
+ новый графический интерфейс и новый механизм взаимодействия движка с интерфейсом.
----
Версия v.0.2.3.0 альфа
 
+ основной цикл убран внутрь dll и выполняется в отдельном потоке.
Изменения в интерпретаторе:
 
+ система регистрации внешних функций.
- добавлены конструкции циклов for и while;
 
+ вычисление выражений непосредственно в командной строке (удобно для отладки)
- добавлена конструкция switch-case;
 
+ проигрывание музыки реализовано в отдельной dll, независимой от текстового движка.
- изменена обработка событий, добавлены функции CheckMove, BefMove, AftMove;
 
+ тестить можно на старых играх - мышках и спелеологисте.
- добавлена команда restart;
 
- формируется лог-файл, прошу присылать логи
 
В минусе:
 
- синтез речи - будет реализован отдельно от текстового движка.
Изменения в демоигре:
 
- пост-обработка текста пока отсутствует, будет переделываться.
- добавлена система помощи, мышонок научился думать;
 
===Версия v.0.9.3.1 бета===
- добавлено ведение счета;
[[Медиа:ConTOM.rar|лежит здесь]]
 
*Изменен принцип подстановки произношения - оно теперь подставляется непосредственно в тексте в квадратных скобках:
- возможность игры за разных персонажей временно убрана.
слово[правильное произношение слова]
*добавлена команда "повторить", которая повторяет последний произнесенный текст (работает только если в системе установлен голос)
*усовершенствован механизм подстановки альтенативных форм предлогов ("с"->"со", "из"->"изо" и т.д.).
 
 
[[ТОМ: Changelog|Архив по старым версиям]]
PS: оконный интерфейс пока крайне сырой...
 
[[Категория:ПлатформыПарсерные платформы]] [[Категория:ПарсерныеДокументация платформыТОМ]]
[[Категория:Заброшенные платформы]]