Сделать базовый функционал задач Универсо
Версия
0.4.0 (2020-03-02), текущее состояние ветки develop
d4bb364a
Резюме
Нужно реализовать базовый функционал по работе с задачами, для начала для того чтобы пользователи могли конфигурировать логику автоматической работы.
Описание улучшения
Базовую логику работы задач я реализовал в джанго-бэкенде, сейчас @VasMih (Василий) делает к нему АПИ. Модели с логикой если что можно посмотреть вот тут по ссылке. Но когда Василий сделает АПИ, он скажет какие там получаются запросы для разных случаев.
Суть текущей реализации функционала задач, в том что есть проекты, в них входят задачи, у проектов и задач есть категории и типы, а так же есть шаблоны на основе которых можно будет пользователям себе получать уже готовые проекты с набором задач. Так же есть модели владельцев проектов и задач. И статусы этого всего.
Благородя выше озвученному функционалу задач можно будет выстраивать как игровые проекты / задачи, например, на производство, на автоматическую добычу минералов и так далее, так и формировать задачи, которые являются нашей уникальной фишкой, связанные с выходом из виртуального мира в реальный, например, пользователи смогут подключиться к проекту по созданию народного предприятия, профсоюза, Совета и так далее, начав действия в виртуальном мире, познакомившись там, получив базовые знание в интересной игровой форме и потом по задачам которые будут созданы на основе подготовленных шаблонов, перейти в реальный мир.
Но начнём с реализации первого шага. Я создам в бэкенде, через админку в шаблонах проектов / задач несколько шаблонов, например, на автоматический полёт от точки до точки и на добычу минералов. Со стороны клиентского приложения на Godot нужно будет вывести пользовательский интерфейс в который будет выводиться информация о существующих шаблонах действий и можно будет из них конфигурировать Рабочий план для какого-то объекта, ну по умолчанию для первого космического корабля.
На стороны серверного приложения на Godot нужно будет реализовать базовые механизмы обработки инструкций от бэкенда. Ну то есть там будет базовый файл и в нём будет прописано, как обрабатывать каждый шаблонный проект / задачу, а различать их будут по полю ID. Ну то есть там будет логика, типа что если ID 1 то запускать вот такой скрипт, если ID 2 то вот такой и так далее.
А вот в этих скриптах которые будут запускаться уже и будет основная логика. Пока у нас нет рабочего космоса, то там будет эмуляция действий. Когда будет рабочий космос то по этим скриптам будет выполняться уже более сложная работа в рамках которой уже будет выполняться некоторое взаимодействие, постепенно усложняющиеся.
В целом основную информацию по логике написал. Теперь дождёмся от Василия доделки АПИ, я создам уже конкретные задачи и более подробнее опишу логику как они должны обрабатываться, что должен пользователь видеть в клиентском приложении и что будет происходить в серверном приложении.