Чет все-равно не понимаю что ты имееш ввиду. Поставил на торлан везде spma-ы... да нормально они палят. Стреляют по узлам, по танкам стреляют тоже правильно, просто снаряд настолько медленный, что от него увернутса просто. Если ты имееш ввиду обстрел на опережение с тактическим учетом того, как будет двигатса жертва то.... алгоритм замутить мне и самому интересно, но совместь это не ухудшая остальных аспектов будет сложновато. Я имею ввиду что это это надо было делать в коде бота, заодно для всего оружея с использованием проэктилей и прочего.
ЦитатаUberSoldier ()
И это тоже можно, такая хрень есть у ситанелей, они стреляют наперед. (Такая фишка полезна против вертов) танкам тоже можно применить такой алгоритм, будет сложнее играть с ботами.
кх-кхем... повторюсь:
ЦитатаGP ()
Чет все-равно не понимаю что ты имееш ввиду. Поставил на торлан везде spma-ы... да нормально они палят. Стреляют по узлам, по танкам стреляют тоже правильно, просто снаряд настолько медленный, что от него увернутса просто.
Я не понимаю что ты хочеш сделать, думал что опережение, но оказываетса оно
Короче, проще говоря.... Для этого возьми стандарт арту, убери ей все фаеры и проектили, создай новый фаер (можешь взять от танка) и проектиль, в нем уже вставь в дефолт физфалл и ноу ориент веслосисти. (это даст дальше летать снарядам от скорости по навесной) Далее проверь эту арту с ботами...( увидишь что боты не достреливают по навесной до цели т.к. целятся в нее, а не на перед) Увиденное отпиши.
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
Ха... так вон оно что. Ты просто стандартный код со своими проэктилями не связал, если вообще его не затер. Его просто упростить надо, отрезать всю хрень с камерой и условия подправить. Как-нить сделаю. Я смотрю там даже функцыя PredictTrget есть, ничем не хуже чем бы я делал.
Вот, я бы может и допедрил, но слишком много до чего ещё педрить приходится и что бы время экономить я спрашиваю на твоем опыте.
Добавлено (09 Марта 16, 23:32) --------------------------------------------- Еще оч интересный ход придумал, это сброс техники с самолета, ну типа танковый десант. В виде как обычный вехикл это довольно не сложно, а вот как вехикл под управлением ИИ это уже другой вопрос. Помниш я кидал видео с тем тригером который ты мне вправил, на вызов вертолётов? Так вот тоже самое можно припелить к танку который сбросит самолет. Т.е. таким методом на поле боя можно сбросить отряд танков под управлением ИИ, но беда в том что ИИ под танк допилить я так и не смог, т.к. это в другую сторону от обычного кода про танки который мне никак не под силу. Но главное что это возможно. А уж модель на парашут и эффекты простое дело.
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
Как так которого не видно? Если я допустим в сети хочу это сделать, то тупо в симулятед добовляю бота? Тип он днлает автоматом энтрю вехикл и го кататся?
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
можно сделать просто плоскостью (браш sheet), она всегда будет проходитса. Но это годитса если в проеме. Если нужен обьемный браш, то в принцыпе за это отвечают флажки solidity, или как-то так. Нужно выбрать non-solid.
В общем я тут помучал трасеры с выстрелов и вник в одну вещь... Когда стреляет танк, вылетает трасер/снаряд(эмитер) и летит рывками со скоростью 20000, будто сама текстура вызывается тиком каждые 0.2 сек где то. В общем на 20-30фпс это не так заметно, а вот на больше 40 да. С чем связано, как править?
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
Ну, что лучи что трейсеры не исключение из остальной графики - просто текстуры на "пластинах". Если скорость очень большая то и пластины получаютса длинные. Надо просто сделать больше партиклов, чтоб они спавнились чаще, следовательно на одну и ту же длинну будет больше партиклов а сами куски-шаги меньше.
GP, а как тогда работает инстагиб или след на ногах при бусте? Точно так же? Я тут просто в другой игре, Warframe, которая от части имеет движок УТ, но изменённый, очень удивился, когда они сделали оружие стреляющее дробью, которое в принципе должно выглядеть как снаряды флаки с трейсерами огненными, но вместо этого они сделали дымок (маленькие точки вдоль пути полёта снаряда) я ещё удивился тогда почему они простой трейсер не сделали, движок-то мол тоже. Вот, можешь глянуть как это выглядело(на полный экран смотри и с высоким качеством, а то и так там мелкие частицы) Это я им ещё в багрепорт отправлял. Собственно просаженный FPS я тоже думаю только из-за того что это отдельные частицы, а не один трейсер. Ибо без него и выглядит убого и нагрузка больше.
В конечном итоге разрабы ради оптимизации уменьшили количество этого дымка в 4-5 раз и стало смотреться ещё убожественнее.
И да, на зелёный цвет не смотри, это потому что там всё красится, даже цвет снарядов, но по умолчанию цвет дымка оранжевый, как и у флаки.
Мой IP сменился с 89.113.234.78/185.42.146.32 на 83.167.1.167. Теперь будет этот. Надолго. Порты те же. http-сервер .do impossible beat unbeatable
как тогда работает инстагиб или след на ногах при бусте
Так это вопревых разные классы (Emitter и xEmitter), настраиваютса по-разному. У инстагиба например или лайты это простот луч, он весь сразу, а не строитаса постепенно. Трейсер от следов вроде как помню xEmitter, но сделать норм тоже можно.
GP, по поводу разрухи танков, 1 вопрос, есть корпус и пушка, это все отдельно конечно же. Так вот когда танк взрывается -> спавнится корпус и пушка исходя из DestroyAppearance в танке.Что бы долго не объяснять, как мне сделать все это отдельно? При взрыве меш танка спавнится в танке, пушка в пушке. В противном случае это черевато тем, что меш корпуса спавнится нормально, а вот пушка спавнится в таком же направлении куда смотрит корпус, а нужно в направлении пушки. (Проще говоря какую функцию вписать в пушке что бы при её исчезновении/уничтожении спавнился меш и этот меш смотрел при спавне в тоже направление куда смотрела пушка?)
Infinite War v5.0.2 construction UIP 2.0 - UIPP(UIP 2.1)
native(278) final function actor Spawn ( class<actor> SpawnClass, optional actor SpawnOwner, optional name SpawnTag, optional vector SpawnLocation, optional rotator SpawnRotation );
SpawnLocation и SpawnRotation береш у башни и все. Зависимо в каком месте кода будеш спавнить и будут зависеть промежуточные части в строчке. Если сама пушка не крутитса а крутитса ее кость, то можна взять от кости:
Код
native final function rotator GetBoneRotation( name BoneName, optional int Space );
class ACTION_TeleportToPoint extends LatentScriptedAction;
var(Action) name DestinationTag; // tag of destination - if none, then use the ScriptedSequence var(Action) bool bPlaySpawnEffect;
var Actor Dest;
function bool InitActionFor(ScriptedController C) { local Pawn P; Dest = C.SequenceScript.GetMoveTarget();
if ( DestinationTag != '' ) { ForEach C.AllActors(class'Actor',Dest,DestinationTag) break; } P = C.GetInstigator(); P.SetLocation(Dest.Location); P.SetRotation(Dest.Rotation); P.OldRotYaw = P.Rotation.Yaw; if ( bPlaySpawnEffect ) P.PlayTeleportEffect(false,true); return false; }
Мне нужно его модифицировать, чтобы при телепортации сохранялся оффсет относительно определенного пункта (у меня лифты работают на телепортах, нужно чтобы игроку казалось, что он остается в той же кабинке). Если не сложно, допиши недостающее
Код
class ACTION_TeleportToPointWithOffset extends LatentScriptedAction;
var(Action) name DestinationTag; // tag of destination - if none, then use the ScriptedSequence var(Action) bool bPlaySpawnEffect; var(Action) name SourceTag; //тэг исходной точки, если не указано, то используется ScriptedSequence
var Actor Dest; var Actor Source;
function bool InitActionFor(ScriptedController C) { local Pawn P; local ?? locationOffset; //какой тип?
Dest = C.SequenceScript.GetMoveTarget(); Source = C.SequenceScript.GetMoveTarget(); //это сам ScriptedSequence
P = C.GetInstigator(); //P.SetLocation(Dest.Location+locationOffset); как это должно выглядеть? P.SetRotation(Dest.Rotation); P.OldRotYaw = P.Rotation.Yaw;
if ( bPlaySpawnEffect ) P.PlayTeleportEffect(false,true); return false; }
Если кабинки расположэны одинаково (двери или что там смотрят в одну сторону) то угол можно не менять - SetRotation убираем. По логике я понял что кабинки с виду идентичеы, а значит конечную точку для SetLocation получаем просто добавляя к фактическому положению игрока смещение между кабинками. Проверку по тегу заменил на прямой выбор акторов, но если там теги меняютса из вне в процэссе то вернуть обязательно.
Код
class ACTION_TeleportToPointWithOffset extends LatentScriptedAction;
var edfindable Actor Departure, Destination;
function bool InitActionFor(ScriptedController C) { local Pawn P; local Vector FinalLocation;