Size: a a a

RU Rust GameDev — русскоговорящее сообщество

2020 October 18

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Учёт разного времени на разные действия более-менее вменяемый был в Jagged Alliance 2, как мне помнится.
источник

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Кажется, где-то был и получше, но не помню что это было. Какая-то полу-пошаговая игра...
источник

AL

Andrey @ozkriff Lesn... in RU Rust GameDev — русскоговорящее сообщество
Roman
Я вот думаю, что мне не нравится в пошаговых боях. Вообще я люблю х-сом и тому подобные вейстленды. Как и героев (кто вообще использует автобитву?).

Так вот. Мне не нравится то что если есть очки действий, то один юнит совершает слишком много всего, пока остальные ждут. Приходится придумывать всякие новые сущности типа attack of opportunity, что б была возможность хоть как-то отбиваться. Хочется что б все юниты совершали только одно действие и передавали ход другому. "Ну как в героях" можете сказать вы. Но получается сто в героях все юниты атакуют с одинаковой скоростью, только бегают с разной. И для стратегии это работает, но если что-то более похожее на рпг, то хотелось бы и атак разных, и что б скорость атак разнилась абстрактным двуручем и кинжалом.
В 5х героях была интересная система с инициативой, которая определяет то как часто юнит ходит. Но получается что прокачка инициативы увеличивает и скорость бега косвенно.

Так вот идея:
У каждого юнита есть параметр "скорость". У каждого действия есть параметр "время".
Так же у каждого юнита аккумулируется "время" от всех совершенных действий.

После каждого действия юнит с наименьшим значением "время/скорость" становится активным. Активный юнит совершает любое одно действие. Юнит добавляет "время" от действия себе в копилку. Следующий ходит юнит у которого теперь "время/скорость" меньше всех.
Это может быть и тот же самый юнит. В начале боя все получают "время = -скорость", что определяет изначальный порядок хода.

Что думаете? Такое может работать?
Звучит как временные системы в большинстве рогаликов, например - там оно +- работает, потому что игрок напрямую управляет только одним агентом
источник

AL

Andrey @ozkriff Lesn... in RU Rust GameDev — русскоговорящее сообщество
У автора cogmind в бложике была неплохая заметка со ссылками на roguebasin https://www.gridsagegames.com/blog/2019/04/turn-time-systems/
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Alexander Tchitchigin
Мне кажется, это будет звездец как непонятно для игрока, потому что время/скорость величина не наблюдаемая (плохо наблюдаемая, не интуитивная).
Наблюдаемость можно пофиксить, если начислять всем агентам их "скорость" что б уменьшить потраченное "время". Математически почти тож на тож, в зависимости от того когда происходит начисление
источник

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Roman
Наблюдаемость можно пофиксить, если начислять всем агентам их "скорость" что б уменьшить потраченное "время". Математически почти тож на тож, в зависимости от того когда происходит начисление
Это всё равно будет трудно понять (интернализировать) для игрока. IMO. 🤷‍♀️
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Либо просто показывать очередь
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Единственноый мутатор очереди - текущий юнит совершает действие и с 1го места отправляется куда-то ближе концу
источник

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Roman
Либо просто показывать очередь
Но игроку всё равно нужно понимать, как она формируется, особенно, если это не round robin.
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Roman
Я вот думаю, что мне не нравится в пошаговых боях. Вообще я люблю х-сом и тому подобные вейстленды. Как и героев (кто вообще использует автобитву?).

Так вот. Мне не нравится то что если есть очки действий, то один юнит совершает слишком много всего, пока остальные ждут. Приходится придумывать всякие новые сущности типа attack of opportunity, что б была возможность хоть как-то отбиваться. Хочется что б все юниты совершали только одно действие и передавали ход другому. "Ну как в героях" можете сказать вы. Но получается сто в героях все юниты атакуют с одинаковой скоростью, только бегают с разной. И для стратегии это работает, но если что-то более похожее на рпг, то хотелось бы и атак разных, и что б скорость атак разнилась абстрактным двуручем и кинжалом.
В 5х героях была интересная система с инициативой, которая определяет то как часто юнит ходит. Но получается что прокачка инициативы увеличивает и скорость бега косвенно.

Так вот идея:
У каждого юнита есть параметр "скорость". У каждого действия есть параметр "время".
Так же у каждого юнита аккумулируется "время" от всех совершенных действий.

После каждого действия юнит с наименьшим значением "время/скорость" становится активным. Активный юнит совершает любое одно действие. Юнит добавляет "время" от действия себе в копилку. Следующий ходит юнит у которого теперь "время/скорость" меньше всех.
Это может быть и тот же самый юнит. В начале боя все получают "время = -скорость", что определяет изначальный порядок хода.

Что думаете? Такое может работать?
Разве это не буквально боёвка хронотриггера?
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Сейчас найду видео
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Alexander Tchitchigin
Но игроку всё равно нужно понимать, как она формируется, особенно, если это не round robin.
Да, нужно все визуализировать. Можно показывать новое место в очереди при выборе действия
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
источник

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Roman
Да, нужно все визуализировать. Можно показывать новое место в очереди при выборе действия
Всё равно останется вопрос "почему, блин, именно это место, а не конец очереди???"
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
"Как она формируется" тоже понятно, чем длительнее действие - тем дальше в очередь тебя откинет.
Чем быстрее персонаж, тем ближе к голове его откидывает
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Roman
"Как она формируется" тоже понятно, чем длительнее действие - тем дальше в очередь тебя откинет.
Чем быстрее персонаж, тем ближе к голове его откидывает
Очередь была в HoMMV, сработало не очень.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
То есть тебе явно показывает, вот смотри, прицельный выстрел из лука стоит N попугаев, тебя перекинет вот туда в очередь.
А прыжок на месте дешевле и стоит M попугаев, тебя перекинет вот сюда
источник

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Игроки не понимали что происходит.
источник

AT

Alexander Tchitchigi... in RU Rust GameDev — русскоговорящее сообщество
Roman
"Как она формируется" тоже понятно, чем длительнее действие - тем дальше в очередь тебя откинет.
Чем быстрее персонаж, тем ближе к голове его откидывает
Вот эту связь нужно будет в голове уложить. В игре действия занимают не то время, что в модели. В пошаговой время действия — это сколько я думал. Субъективно. Это трудно связать со временем в модели.
источник

R

Roman in RU Rust GameDev — русскоговорящее сообщество
Тебя же не смущает когда в X-com выстрел требует столько-то AP?
источник