Планы развития

Обозначения:          

  • Уже реализовано
  • В высокой степени готовности(будет доступно в следующем патче)

В этом разделе я опишу что мне бы хотелось добавить в эту программу еще. Но прежде, хотелось бы сказать несколько слов о насущном:

            Строительство этой программы заняло у меня несколько лет, или в чистом времени не менее полугода. Мне нравится заниматься этим проектом, и я хотел бы делать это и далее. Но на текущий момент, я исчерпал все ресурсы для этого, и вынужден вернутся к основной работе. Поэтому дело даже не в том, что мне хотелось бы отбить вложенные ресурсы, а в том что без пользователей готовых реально поддерживать развитие данного продукта невозможно рассчитывать на скорое осуществление даже текущих планов. Поэтому только от Вас зависит будет ли проект активно развиваться и превратится по настоящему в мощную и профессиональную среду для разработки, или так и останется заготовкой.

Планы развития:

      Доработки, которые будут сделаны до релиза:

            1. Доведение до ума эмулятора движений мыши на низком уровне, а также создание аналогичного эмулятора для клавиатуры. 
            2. Добавить в алфавит настройки: Количество пикселей между символами, количество пикселей между словами, символ разделитель строк. На данный момент эти параметры заданы по умолчанию и не настраиваются, что сильно ограничивает возможность использования этого функционала.
            3. Исправление выявленных багов.

      Доработки, которые скорее всего будут выполнены в любом случае:

            4. Механизм поиска окна по имени, с запоминанием хендла и дальнейшим обращением по хендлу, в т.ч. Скриншоты скрытого окна (задвинутого за экран) и применение функций анализа изображения к этим скриншотам.
            5. Отправка нажатий кнопок мыши и клавиатуры в конкретное окно (не будет возможности эмуляции на низком уровне для этого режима). Для возможности создания программ работающих с окнами задвинутыми за экран.
            6. Поиск картинки по 4м фрагментам (для поиска таблиц которые могут менять размеры)
            7. Функции прямого доступа к памяти.
            8. Хранение созданных скриптов на сервере с возможностью запуска их без сохранения на жестком диске.

      Доработки, которые очень наврядли будут сделаны без реальной поддержки со стороны пользователей:

            9. Возможность отлаживать код программы в реальном времени. (т.е. устанавливать точки остановки в текстовом редакторе и в режиме исполнения смотреть значения переменных на момент нахождения в этих точках).
            10. Возможность создавать множество форм и модулей и использовать в модулях функции из других модулей.
            11. Возможность вывода сообщений, комментариев, отладочной информации, рамок обводящих найденные шаблоны поверх всех окон и таким образом, чтобы они не попадали в скриншоты. (т.е. все это не будет мешать работе программы).
            12. Доработка текстового редактора — добавление выравнивания текста, возможность сворачивать текст процедур в одну строку, дополнительные подсказки и т.п.
            13. Перевод алгоритмов анализа изображений на новые технологии, которые позволят увеличить скорость их работы на порядки. (Задача объемная и если делать ее параллельно с основной работой, то скорей китайцы высадятся на марс, чем я это закончу).
            14. Переработка алгоритма сегментации при распознавании текста, которая позволит сделать этот механизм более гибким, т.к. сейчас корректно распознается только строго структурированный текст.
            15. Сегментация изображения отфильтрованного по какому то цвету с возможностью доступа в цикле к каждому сегменту, как это сделано сейчас с динамическими объектами.
            16. Разработка упрощенного режима программирования
            17. Разработка встроенных средств по работе с базами данных в файловом и серверном вариантах (возможность создавать собственную бд с возможностью одновременного доступа нескольких клиентов к ней).
            18. Добавление возможности сохранять скрипты в *.exe файл. При запуске файла будет запускаться инсталлятор скрипта,который предложит выбрать папку в которую необходимо развернуть базу со скриптом, а также автоматически добавит развернутый скрипт в список скриптов в Launcher.

      Доработки, которые будут реализованы только в случае хорошей окупаемости приложенных усилий:

            19. Любые доработки интерпретатора, так хотелось бы иметь возможность создавать функции с параметрами по умолчанию(параметры функции можно указывать, а можно не указывать и тогда им будут присвоены значения по умолчанию). Возможность перегрузки функций (функция с одним названием, но с разным набором параметров). Своими руками я этим стану заниматься только в страшном сне, т.е. кому-то нужно будет заплатить. Но это позволило бы сделать создаваемые скрипты еще более простыми и удобочитаемыми (сейчас вместо одной функции используются несколько, которые по сути делают одно и тоже, но имеют разный набор параметров, причем все параметры обязательны, и сделано так из-за ограничений накладываемыми интерпретатором).
            20. Разработка инструмента по программному созданию таблиц с возможностью добавления колонок и строк, сортировки, сворачивания, копирования. (позволяет обрабатывать массивы данных подобно Excel, но непосредственно в коде программы без обращения к сторонним программам и базам данных).
            21. Возможность создания элементов управления из кода программы, а также доступ ко ВСЕМ их свойствам. По идее это должно работать и сейчас, а на практике мне этого почемуто не удается сделать. Т.к. интерфейс не самая критичная часть программы, то приоритет у этой задачи низкий.
            22. Расширение перечня доступных элементов управления и их свойств и событий в инспекторе объектов.
            23. Создание нового интерфейса программы, а также возможность из скрипта создавать интерфейс, который не будет мешать работе программы (не будет попадать в скриншоты).
            24. Возможность захвата изображения с видеокамеры (веб камеры), и анализ кадров на видео, подобно как сейчас анализируются скриншоты экрана.
            25. Дальнейшее развитие и введение новых алгоритмов анализа изображений, распознавания текста и т.д. В том числе внедрение новых инструментов основанных на иных принципах работы.

Bot Development Engine