XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > StarCraft (только чтение)> Галактическая академия
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

 
yellyex

offline
Опыт: 4,267
Активность:
Реалистичное поведение
Мне нужно знать, возможно ли сделать так, чтобы солдат мог стрелять не целенаправленно в юнита, а мог промахиваться? И в стрельбе обозначить части тела: Голова, туловище, правая и левая руки, правая и левая ноги. Есть ли критерии по которым можно обозначить, чтобы юнит мог целиться в другого юнита? Если вы меня поняли, то просто скажите да или нет? Я уже хочу начать делать свою игру, в которой не будет абсурда (DotA), в которой будет настоящая война (Operation Flashpoint). И для этого мне нужно, чтобы юниты могли ложиться, целииться, менять оружие, ориентироваться по карте. Не думайте, что мне это не по силам. Мне нужно просто знать, можно так сделать в редакторе старкрафта 2 или нет. Заранее спасибо за ответы.
Старый 20.02.2011, 04:31
yellyex

offline
Опыт: 4,267
Активность:
Скажите, а можно сделать так, чтобы юнит реально подпрыгнул в воздух, а не сделал вид анимации?
То есть юнит приподнимается примерно на высоту своего роста и нижнее пространство свободно.
Старый 20.02.2011, 10:20
H
hello world
offline
Опыт: 130,675
Активность:
  1. Стрелять по частям тела можно, но придется писать несколько математических формул )
  1. Можно, поднимать юнита (анимацией) или просто по высоте, а также перестраивать коллизион боксы.
Старый 20.02.2011, 10:43
yellyex

offline
Опыт: 4,267
Активность:
Hellcore, Спасибо. Трудности это не проблема. Главное возможности. То есть можно сделать так, чтобы юнит подпрыгнул, а под ним проехал броневик?
Старый 20.02.2011, 10:56
H
hello world
offline
Опыт: 130,675
Активность:
Да, нужно писать систему коллизий ;)
Стандартная тут не очень подходит. Ну или применить свойство "летаюший" не время прыжка.
Старый 20.02.2011, 10:58
yellyex

offline
Опыт: 4,267
Активность:
Что за система коллизий? :) Не очень понимаю. Что делают эти коллизии?
yellyex добавил:
Возможно ли сделать, чтобы юнит мог лечь или сесть? Нужно для этого делать свои модели?
Старый 20.02.2011, 11:09
H
hello world
offline
Опыт: 130,675
Активность:
Коллизия - проверка столкновений. В данном случае нужно будет представить квадраты на каждой из частей тела. Дальше через векторы проверять где именно находится пуля, и какой из квадратов она задевает.
Во общем надо знать математику и геометрию, чуть лучше, чем отлично :)
Старый 20.02.2011, 11:09
yellyex

offline
Опыт: 4,267
Активность:
Hellcore, Я понял. То есть ты предлагаешь создавать теоретического юнита в квадратиках, по которым будет определятся, где юнит находится в данный момент? То есть ты хочешь сказать, что физически юнит никуда не подпрыгнет?
Старый 20.02.2011, 11:14
H
hello world
offline
Опыт: 130,675
Активность:
Почему же, подпрыгнет )
Старый 20.02.2011, 11:41
yellyex

offline
Опыт: 4,267
Активность:
Hellcore, мне нужно точно знать, что он в мире старкрафта 2 поднимется над землёй :)
Я знаю там есть трансформации, как у викингов. Но то ли это? Не просто ли анимация, пока физически один юнит заменяется другим?
Старый 20.02.2011, 11:54
laViper

offline
Опыт: 10,883
Активность:
yellyex, объясняй задачу более конкретно.
То есть юнит приподнимается примерно на высоту своего роста и нижнее пространство свободно.
Есть например антигравитация фениксов, она поднимает юнита и место под ним свободно вроде бы.
А если ты хочешь что бы было как в 3D-шутерах, то это совсем другое дело.
Если ты знаешь сколько плоскостей у тебя будет - например юнит может подняться на 0 роста, 1 рост, 2 роста и 3 своих роста, то можно сделать дубликаты юнитов которые будут каждый на своей высоте и находиться в отдельной плоскости.
Порсмотри пример - каждый бегает в своей плоскости, но два юнита в одной плоскости сталкиваются с друг другом. Таких плоскостей может быть до 16
Прикрепленные файлы
Тип файла: sc2map яукп сфт адн.SC2Map (21.9 Кбайт, 17 просмотров )

Отредактировано laViper, 20.02.2011 в 13:33.
Старый 20.02.2011, 13:25
yellyex

offline
Опыт: 4,267
Активность:
laViper, спасибо тебе, ты отлично показал примеры :) Мне надо как в 3D шутерах. Я был испуган тем, юнит на самом деле не подлетает в высоту, а просто делает вид, а физически переноситься в астрал и с большей скоростью перемещается на расстоние прыжка. Toss Tiny в Доте.
yellyex добавил:
И ещё вопрос. Поднялись то они поднялись. Вот как быть с прыжком? Ну чтобы он реально подпрыгнул и приземлился.
yellyex добавил:
С этим я разберусь :)
Старый 20.02.2011, 14:44
Тонг

offline
Опыт: 15,315
Активность:
yellyex, с прыжком либо через агент прописывать (реакция на применение спелла) либо через тригер (по усмотрению)
Старый 20.02.2011, 14:58
Grog

offline
Опыт: 540
Активность:
yellyex
Вобщем я недавно занимался шутером, но с видом сверху. Там реализовано все было и с прышками и с пролетом снарядов под юнитом.
Сейчас в старе можно отслеживать высоту полета юнита от самого низа карты. В старе есть уровни, про которые наверно и говорил laViper. Между уровнями разница в высоте примерно в 2 единицы старовского расстояния. Таким образом, если снаряд летит на высоте выше или ниже врага на какойто диапазон, то попадание не защитывать. Поднимать юнит можно напрямую изменяя его высоту.
Но, я от всего этого дела отказался, т.к. в батле есть два фактора, которые просто убийственны для такого жанра:
  1. Задержка, которая обуславливается банальной дальностью комьютера игрока от серверов батлы. Поэтому существует задержка 0.5 - 1 секунды. Естественно адекватно играть на скорость будет невозможно. Проверялось - запускалась карта через батлу с 1м мариком и полным отсутствием триггеров, задержка оставалась.
  2. Такой движок 3д шутера кушает много ресурсов и при игре с количеством человек более 4х, появляются жесткие лаги.
поэтому сейчас в своей карте ушел в 2d, изменил движок движения и стрельбу снарядов реализую через Data Editor для облегчения програмной части.
Впринципе, могу кинуть тебе движок своей старой карты, там где реализованны прыжки.
И наконец, сразу хочу предупредить. Реализовать на движке стара можно многое, очень многое. Но будут ли в это играть - совсем другой вопрос. Сейчас на батле висит один 3д шутер и пока большой популярности и хороших отзывов я не слышал. Людям незачем играть в шутеры в старкрафе, когда можно поиграть в реальные шутеры. Поэтому советую поработать над идеей и лучше вообще уйти от жанра 3д шутера с видом от первого/третьего лица, игроки (именно игроки, а не другие мепмейкеры) это не ценят. Просто убьешь кучу времени.
Старый 21.02.2011, 10:21
yellyex

offline
Опыт: 4,267
Активность:
Grog, Спасибо тебе большое. Избавил от кучи мороки. Моя идея заключалась в том, чтобы юниты не просто бегали и стреляли, а как бы жили. То есть могли промахиваться, могли ложиться или сидеть (стрелять), прыгали, уворачивались от ракет, то есть сами сражались в силу своих умений (которые я запрограмирую). Но видимо с прыжками дело туго, так что приёдтся делать части тела и возможность промахнуться. А точнее, чтобы небыло самонаводящихся пуль и ракет и юнит, если и не прыгал, то хотябы менял место положения в битве.
Старый 21.02.2011, 11:23
Grog

offline
Опыт: 540
Активность:
т.е ты например хочешь, чтобы если подвести группу стрелков к барикаде, они сами приседали, прячась за ней, и увеличивали точность попадания. Вообще идея довольно интересная и такая карта имеет место быть. Посоветую тебе не муаятся с частями тела, а просто сделать юнитам разную точность попадания в разных положених корпуса. Например на твоих мариков бежит отряд вражеских, а твои разбросаны и лежат за камнями, в итоге твой немногочисленный отряд расстрелял превосходящий по численности вражеский.
Старый 21.02.2011, 11:41
yellyex

offline
Опыт: 4,267
Активность:
Grog, Да, ты всё правильно понял. Своего рода живые существа ха ха :). Толко точность попадания должна быть не в шансах попасть, а в том, чтобы юнит целился и стрелял. И если цель отбежала, то юнит может промахнуться. Как боты в контр-страйке. Одним словом - реальность.
И главное не просто мои не много численные войска убили превосходящие, а убили из за того, что по стоящим и ничего не подозревающим приближающимся противникам, легче попасть :) А не потому что они за укрытием, а враги тупые боты, которые в тупую стоят и стреляют в забор.

Отредактировано yellyex, 21.02.2011 в 12:02.
Старый 21.02.2011, 11:56
F3n1kz

offline
Опыт: 4,548
Активность:
yellyex, ты одинаковые ситуации описал :)
а так - согласен что физически корректную систему лучше не делать, просто прописать шансы попадания намного эффективнее
Старый 21.02.2011, 16:01
Toadcop

offline
Опыт: 54,313
Активность:
Задержка, которая обуславливается банальной дальностью комьютера игрока от серверов батлы.
нет принцыпом синхронизацыи клиентов ваще то =О
Старый 21.02.2011, 16:05
Grog

offline
Опыт: 540
Активность:
Toadcop:
Задержка, которая обуславливается банальной дальностью комьютера игрока от серверов батлы.
нет принцыпом синхронизацыи клиентов ваще то =О
И этим тоже. Как то на офф форуме кто то ругался на задержку, ему близзы ответили, что ваш сервер находится на расстоянии более 5 000 км от серверов батлнета.
Так или иначе с этой задержкой ничего не поделаешь.
Старый 21.02.2011, 17:30

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 14:02.