Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
xandudex authored Nov 5, 2024
1 parent 0b91e58 commit fb33f0f
Showing 1 changed file with 11 additions and 7 deletions.
18 changes: 11 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,22 @@
# Написать симуляцию игры:
# Пару слов о проекте
Проект выполнен для тестового задания, он периодически обновляется для поправления архитектуры, чтобы показать мои текущие навыки.<br>
Прошу не обращать внимание на визуальну состовляющую, она не является целью проекта (правда, в планах есть её обновление).<br>
Программная часть игры находится по пути <b>"Assets/_Game/_Code"</b>

* Есть игровое поле размером N на N, на нём есть M животных (M <= N * N / 2) и M еды. Каждое из животных ест только свою еду, остальную игнорирует. Чужая еда не является препятствием для перемещения, однако другие животные должны мешать перемещению (колизиться).
## в проекте использовались дополнительные библиотеки:
<b>R3</b> - реактивное программирование, наследник UniRx но для .net экосистемы в целом <br>
<b>MessagePipe</b> - брокер сообщений (PublisherSubscriber, но с использованием DI)<br>
<b>VContainer</b> - DI контейнер<br>
<b>UniTask</b><br>

# Текст задания:
* Есть игровое поле размером N на N, на нём есть M животных (M <= N * N / 2) и M еды. Каждое из животных ест только свою еду, остальную игнорирует. Чужая еда не является препятствием для перемещения, однако другие животные должны мешать перемещению (колизиться).
* При появлении животного одновременно на карте появляется еда для него в случайной свободной точке поля (не должна наслаиваться на существующую еду, но может наслаиваться на животных которые эту еду не едят), на расстоянии не большем чем животное может пройти за 5 секунд.

* Животное идёт к своей еде со скоростью V, алгоритм поиска пути выбрать самостоятельно (никаких ускорений, юнит моментально умеет менять направление, и движется равномерно). Когда оно с ней колизится — еда исчезает, играется визуальный эффект (любая партикл система время жизни 1 секунда), и появляется новая, по тем же правилам. И так до бесконечности.

* При создании новой симуляции — появляется менюшка с ползунками для:
* N (2…1000)
* M (1.N * N / 2)
* V (1…100) юнитов в секунду

* Во время симуляции должен быть ползунок, скорости симуляции (по дефолту 1,0…1000), 0 = пауза.

* В качестве животных и еды, подойдут обычные кубы. Необходимо реализовать 3Д версию.

* Хорошим дополнением будет сделать кнопку сохранить текущее состояние симуляции — а при старте приложения должно быть две кнопки — начать новую симуляцию или продолжить старую;

0 comments on commit fb33f0f

Please sign in to comment.