forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты C++ (http://forum.boolean.name/forumdisplay.php?f=56)
-   -   The Dwarf Adventure (http://forum.boolean.name/showthread.php?t=20514)

St_AnGer 01.02.2018 09:17

Ответ: The Dwarf Adventure
 
Ну вот, ещё один из нас стал рабом системы...

mr.DIMAS 04.02.2018 00:24

Ответ: The Dwarf Adventure
 
Вложений: 1


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

mr.DIMAS 17.02.2018 00:18

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


mr.DIMAS 23.02.2018 21:19

Ответ: The Dwarf Adventure
 
Потихоньку переношу мозги мобов на Behaviour Trees. NPC стали более адекватно себя вести. На текущий момент код мозгов NPC такой.

Код:

mBehaviour = bt::Builder()
    .Parallel()
        .Sequence("Heal")
            .Condition([this] { return NeedHealing(); })
            .Do([this] { return UseHealingPotion(); })
        .End()

        .Selector("Behaviour")               
            .Sequence("Attack")
                .Condition([this] { return !NeedHealing(); })                   
                .Do([this] { return LookForTarget(); })                                   
                .Condition([this] { return IsEnemyCloseEnoughToDefaultPosition(); })
                .Do([this] { return SelectWeapon(); })
                .Selector()
                    .Sequence()
                        .Condition([this] { return IsTooCloseToEnemy(); })
                        .Do([this] { return SetMoveDestinationFarEnoughFromEnemy(); })       
                    .End()                   
                    .Do([this] { return SetMoveDestinationEnemyPosition(); })                   
                .End()
                .Do([this] { return OpenNearbyDoors(); })
                .Do([this] { return MoveToDestination(); })
                .Do([this] { return LookAtActor(); })
                .Do([this] { return AimAtLookPoint(); })
                .Do([this] { return UseWeapons(); })
            .End()
           
            .Sequence("WalkAway")
                .Selector("Position")
                    .Sequence("Danger")
                        .Condition([this] { return IsDefaultPositionTooDangerous(); })
                        .Do([this] { return SetMoveDestinationSafePoint(); })
                    .End()
                    .Do([this] { return SetMoveDestinationDefault(); })
                .End()               
                .Condition([this] { return !ReachDestination(); })
                .Do([this] { return LookAtWaypoint(); })
                .Do([this] { return AimAtLookPoint(); })
                .Do([this] { return OpenNearbyDoors(); })
                .Do([this] { return MoveToDestination(); })
            .End()

            .Sequence("Idle")
                .Condition([this] { return ReachDestination(); })
                .Do([this] { return StayStill(); })
            .End()
        .End()   
    .End()
    .Build();

Самая мякотка в том что при помощи Behaviour Tree я могу рандомизировать еще и поведение мобов, а не только их внешний вид. Больше рандома богу рандома!

mr.DIMAS 01.07.2018 15:53

Ответ: The Dwarf Adventure
 
Вложений: 3
Давненько не писал о прогрессе, а все потому, что медленно все идет :)


Сейчас потихоньку делаю редактор для игры. Вот свеженькие скрины





Редактор предметов:



Ну и напоследок - нодовый редактор диалогов - пока что еще в зачаточном состоянии.


В самой игре изменился генератор мира, я полностью отрефакторил его - а то каждое изменение давалось с трудом.


Также потихоньку правлю баланс, добавляю мобов. Скоро запишу новое видео геймплея.

ABTOMAT 05.07.2018 03:32

Ответ: The Dwarf Adventure
 
> Сделал самодельный редактор для анимации
> Не воспользовался ничем готовым

Такую бы энергию да в мирное русло!

mr.DIMAS 10.07.2018 12:02

Ответ: The Dwarf Adventure
 
Цитата:

Сообщение от ABTOMAT (Сообщение 315307)
>
Такую бы энергию да в мирное русло!

Что за мирное русло такое? :)

ABTOMAT 11.07.2018 05:14

Ответ: The Dwarf Adventure
 
Цитата:

Сообщение от mr.DIMAS (Сообщение 315344)
Что за мирное русло такое? :)

Улучшать саму игру, а не делать то, что уже до тебя миллион раз сделали

mr.DIMAS 11.07.2018 10:09

Ответ: The Dwarf Adventure
 
Вообще я посмотрел не редакторы анимаций готовые - Spine, Dragon Bones. Первый платный, второй бесплатный но с очень кривой интеграцией. В общем-то редактор анимок занял у меня всего неделю. Остальные инструменты тоже делаются из надобности - особенно редактор предметов - очень удобно когда все в виде таблицы, а не json файлик на >6k строк. А вот редактор диалогов скорее всего делать не буду, перенесу их в скрипты - в общем-то на него я много времени не потратил - дня три после работы по 2 часика. А так в основном в игре ковыряюсь.

mr.DIMAS 05.12.2018 17:49

Ответ: The Dwarf Adventure
 
Гномы теперь опенсорс!



Скачать свежий релиз можно тут - https://github.com/mrDIMAS/TheDwarfAdventure/releases

Arton 06.12.2018 02:17

Ответ: The Dwarf Adventure
 
Хотел написать, что мол всё, развитие игры остановилось навсегда... но я поиграл, пять минут.

Честно говоря TrueHorror был куда играбельней. Здесь же всё о-о-очень сыро, даже отдачу в управление почти не чувствую.

И конечно порадовали сохранения размером в 300 Мб, на самом старте игры :-D
Которые можно ужать до, меньше 2 Мб.
У тебя там вся игра дампуется что ли? (как раз в памяти ~400 Мб занято)

Arton 06.12.2018 02:41

Ответ: The Dwarf Adventure
 
P. S. Если интерфейс стилизован под пиксель-арт, то нужно отключить сглаживание.


Часовой пояс GMT +4, время: 04:29.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot