Перейти к контенту

Оружейка


НаноБот

Рекомендуемые сообщения

Ньюбский совершенно вопрос, внезапно, но тема все равно не шибко загружена:

 

Есть автомат. Ставим в стрельбу одиночными, стреляем - дырка от пули там, куда целились. Жмем правую мышу (зум) - дырка от пули заметно выше прицела. Стреляем - дырка там, где и предыдущая.

Целимся в зуме, стреляем - пуля улетела выше. Зум выключаем - прицел стоит на дырке от пули.

 

Вот не помню, как такое лечится, и найти не могу. Конфигами ? Как именно ? Или это модель кривая ?

  • Полезно 1

Поделиться этим сообщением


Ссылка на сообщение

Сейчас внимательно перечитал скрытые посты в теме про геймплэй, ну и заодно еще про rx_wmgr. А также по следам одной свежей горячей дискуссии в скайпе.

 

В оружейных конфигах имеются следующие параметры:

ef_main_weapon_type =

ef_weapon_type =

holder_range_modifier =

holder_fov_modifier =

min_radius =

max_radius =

 

Это все параметры для неписей.

Судя по некоторым описаниям ряда прохождений ОРИГИНАЛА ТЧ, в ряде случаев они работают.

Если заданы правильно, и если не вступают в конфликт с чем-то еще.

А вот исследований того, КАК они работают - ни одного не видел. Хотя, в общем-то, и не особо искал.

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

Поделиться этим сообщением


Ссылка на сообщение

Ну и напомню хрестоматийный случай с АКСУ и АК длинным в тайнике Стрелка.

Поделиться этим сообщением


Ссылка на сообщение

Гм, попробую тогда расшифровать. Правда, не уверен, что еще больше запутаю.
у мну иногда проблемы с изложением бывают.

По вопросу n1: как минимум часть настроек "отдачи" и иже с ними - оверрайдится моделями. То есть, как анимация запустилась - так и отыгрывает. Другое дело, что, например, при отстреле одиночными, когда настраивал кривые точки прицеливания - ваще не заметил "увода".
То есть, если очередью - унесет нафиг. Если один выстрел - возвращается.

pdm же - по ходу, неписевые параметры. По крайней мере, на это - они реагируют, а вот дырка от пули и возврат ствола при отстреле - нет.

Однако, говорят, что нет. Значит это я просто сильно хотел увидеть - вот и увидел.

 

И, да, нифига не понял, кто отвечает за гуляние ствола в зуме. Просто не интересно было.

То есть, да: из 3-х (как минимум) разных историй. И требует бобровольца, который проведет отстрел, меняя что попало как попало, а потом составит отчет. Или просто опубликует уже готовое здесь, а не где-то в теме на тыщу постов.

По второму: имеет место смесь пысорудиментов и реально имеющих значение явлений. Пысорудимент - несомненно, различение стволов по clsid, а не по секциям. Ну, как это было с брониками, но выпилено. Со стволами - не выпилено.
Одновременно с этим, модель, конечно, не при чем, но при чем - поддержка очередей, подствольников, типа перезарядки/боеприпасов и черт знает чего еще. То есть, на уровне нетпакета как минимум различия. И будешь менять кондишн - а получишь - гранаты в подствольнике. И наоборот.
Не удивлюсь также другим эффектам.

При этом, да, есть еще и ограничения модели. Но, если ты прописал подствольник модели, у у которой его нет - получишь проблемы в онлайне, однако в офф ни что не мешает твоему творению спокойно существовать.
Поменяешь класс стволу, который прописан в олспавне - огребешь "укороченный автомат Стрелка" с кондишн в нуле, или еще чего хуже. А скриптово потом исправлять это переспавном - вот даже не пытайся.

Изменено пользователем Dennis_Chikin
  • Спасибо 1

Поделиться этим сообщением


Ссылка на сообщение

Тогда вопрос такой будет: как экспериментально увидеть, на что действует это самое pdm ?

 

2 shahvkit: он имеет в виду config\creatures\*

disp_walk_stand = и т.д.

 

Но было ощущение, что с параметрами из конфигов стволов оно таки перемножается/суммируется.

 

 

Гм, так для актора - что можно написать, и на что смотреть, чтобы было сразу НАГЛЯДНО ?

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

Изменено пользователем Dennis_Chikin

Поделиться этим сообщением


Ссылка на сообщение

Британские учОные изобрели компьютер, который, наконец, прошел тест Тьюринга:

на любой вопрос он отвечает: "Нет !" и загадочно улыбается.

 

Похоже, в этой теме, как и у мапперов, тоже пора вводить дополнительное правило про дыбу и испанский сапог.

Изменено пользователем Dennis_Chikin

Поделиться этим сообщением


Ссылка на сообщение

Исходники - большие. Продемонстрировать - изменили строку такую, получили такой вот эффект - давно бы уже. Кстати, что там за миф с глушителями, и что с ним не так ?

Поделиться этим сообщением


Ссылка на сообщение

Очередной идиотский вопрос: как можно узнать время перезарядки оружия ?

 

1. Изнутри игры.

2. Вообще, в принципе, с применением внешнего инструментария. Какого именно ?

 

Ну и коль на то пошло, какие существуют методы относительно безболезненного его изменения ?

 

 

Чтоб 3 раза не вставать, заодно уже спрошу и про убирание оружия. Вот например, есть бинокль. Очень хороший бинокль. Не знаю, где первоначально взят, и кто автор, но расползлось широко. Одна маленькая проблемка - стоим мы себе с биноклем, такие красивые, и тут, вдруг, набегают враги. Все, переигрываем с сэйва, когда у нас бинокля в рука не было, ибо пока уберется - в реале успеют не только убить, но провести похороны, да потом еще и поминки. Вот где это лечится (опять же, наименее болезненно для людей, не знающх, чем отличается фотошоп от 3ds, но умеющих пользоваться hex editor) ?

Поделиться этим сообщением


Ссылка на сообщение

https://www.dropbox.com/s/n1szevhzjtlunzs/ss_dc_03-02-18_17-19-52_(l04u_labx18).jpg?dl=0

Вот это можно как-то поправить для конкретного оружия или конкретного патрона ? Там кроме дыма еще и куча щебенки - просто плохо захватилась.

Желательно, для ВСЕХ материалов убрать эффект.

 

Поделиться этим сообщением


Ссылка на сообщение

Ну, во-первых, не дробовиком, во-вторых, бывают и другие стволы. Вопрос именно в этих эффектах отбойного молотка. Все эти дымы, щебенка и прочие дырки...

На какую кнопку нажимать ? (С) ;)

Поделиться этим сообщением


Ссылка на сообщение

Не, все равно порнуха какая-то.

 

И вообще, друзья мои, я опечален. 100500 бессмысленных совершенно конфигов, которые находятся поиском, и среди всего этого - ничего, где смысл "вбейте вот эти цифры" был бы объяснен человеческими словами.

 

Я понимаю, что, к примеру, fire_point - это - точка выстрела, и для того, чтобы прочитать подобный "перевод" - ну вот совершенно не надо сталкер-вики и всех остальных 100500 конфигов.

ЧТО НАДО СДЕЛАТЬ чтобы партикля при выстреле рисовалась от ствола и летела в сторону цели ? Ась ?

 

И как, все-таки, отключить чертов отбойный молоток ? Ни хит, ни скорость, ни "количество дробин", не влияют вообще никак. И, да, заинтересовавшись "рикошетом", обнаружил, что даже выставив скорость пули в 1, "рикошет" все равно будет, и будет отрисован черт знает где.

 

На закуску, обнаружилось, что пресловутая "разрывная пуля" рисует партикл не там, куда попала, а куда после этого УПАЛА. Совсем зашибись...

 

Вот как вот все это называется ?

Изменено пользователем Dennis_Chikin
  • Смешно 1

Поделиться этим сообщением


Ссылка на сообщение

Вообще, есть "гравипушка". Принцип - абсолютно тот же, вообще без всяких снарядов. Просто партиклы и демедж. Но, это ж делать надо...

 

А вот то, что касается обычной стрельбы - при внимательном рассмотрении, там не только с огнеметом ахтунг: очередь по трупу, из чего угодно, или просто в землю/стену/дерево прямо перед собой - все, что описано выше. И еще эти дырки/кровищща - они и fps нехило жрут.

Поделиться этим сообщением


Ссылка на сообщение

Примерно так:

//возвращает текуший разброс стрельбы (в радианах)с учетом движения
float CActor::GetWeaponAccuracy() const
{
    CWeapon* W    = smart_cast<CWeapon*>(inventory().ActiveItem());
    

    if(m_bZoomAimingMode&&W&&!GetWeaponParam(W, IsRotatingToZoom(), false))
        return m_fDispAim;

    float dispersion = m_fDispBase*GetWeaponParam(W, Get_PDM_Base(), 1.0f);

    CEntity::SEntityState state;
    if (g_State(state))
    {
        // angular factor
        dispersion *= (1.f + (state.fAVelocity/VEL_A_MAX)*m_fDispVelFactor*GetWeaponParam(W, Get_PDM_Vel_F(), 1.0f));
//        Msg("--- base=[%f] angular disp=[%f]",m_fDispBase, dispersion);
        // linear movement factor
        bool bAccelerated = isActorAccelerated(mstate_real, IsZoomAimingMode());
        if( bAccelerated )
            dispersion *= (1.f + (state.fVelocity/VEL_MAX)*m_fDispVelFactor*GetWeaponParam(W, Get_PDM_Vel_F(), 1.0f)*(1.f + m_fDispAccelFactor*GetWeaponParam(W, Get_PDM_Accel_F(), 1.0f)));
        else
            dispersion *= (1.f + (state.fVelocity/VEL_MAX)*m_fDispVelFactor*GetWeaponParam(W, Get_PDM_Vel_F(), 1.0f));

        if (state.bCrouch){    
            dispersion *= (1.f + m_fDispCrouchFactor*GetWeaponParam(W, Get_PDM_Crouch(), 1.0f));

            if(!bAccelerated )
                dispersion *= (1.f + m_fDispCrouchNoAccelFactor*GetWeaponParam(W, Get_PDM_Crouch_NA(), 1.0f));
        }
    }

    return dispersion;
}

 

Касательно огнемета:

function generic_object_binder:hit_callback( victim, amount, dir, who, bone_idx )

...

        local wpn = who:active_item()
        if wpn and wpn:section() == "wpn_flame" then
            if self.burn_hit == -1 then self.burn_hit, self.burn_id = false, false
            else
                self.burn_hit = ( self.burn_hit or 0 ) + 1
                self.burn_id = who:id()
            end

 

function generic_object_binder:update( delta )

...

        if self.burn_hit then    -- отложенный вред от огнемета -- дохлые
            play_particle( mob, { ["obj"] = mob, ["particle"] = "amk\\flame" } )
            self.burn_hit = false
        end

...

    if self.burn_hit and self.burn_hit ~= -1 then    -- отложенный вред от огнемета -- живые
        local h = hit()
        h.draftsman = ( self.burn_id and level.object_by_id( self.burn_id ) ) or mob
        h.type = hit.burn
        h.direction = vector():set( 0, 1, 0 )
        if self.c_zomb and mob.health < 0.21 then h.power = 100
        else h.power = self.burn_hit * 0.5
        end

        h.impulse = 0

        self.burn_hit = -1
        -- log( "info", "(%s):update, burn (%s:%s)", self.mob_name, h.draftsman:name(), h.power )
            
        mob:hit( h )
        play_particle( mob, { ["obj"] = mob, ["particle"] = "amk\\flame" } )
    end

Это если на скорую руку в целях борьбы с тормозами.

Но дело не в этом, а в кровище/осколках/рикошетах от пуль, любых.

 

То есть, не трогая движок, надо просто проверять: в фокусе/не в фокусе и расстояние, и тогда  взводить "хит от огнемета", а собственно пулю - резать сразу при выстреле.

  • Полезно 1

Поделиться этим сообщением


Ссылка на сообщение

А вообще - в чем выражается это самое выше ? Ствол задирают высоко по ходу стрельбы, вспышка не там, сам ствол вообще не там, что-то еще ?

Поделиться этим сообщением


Ссылка на сообщение

Ну вот это как бы не сам партикл крутить пришлось, в редакторе.

Поделиться этим сообщением


Ссылка на сообщение

https://www.dropbox.com/s/rirmc1ir4kay4oo/ss_dc_06-19-18_08-39-45_(puzir).jpg?dl=0

https://www.dropbox.com/s/t3lldstffvtiqqc/ss_dc_06-19-18_08-39-49_(puzir).jpg?dl=0

Что здесь надо подкрутить, и в какую сторону ? Вроде все почти так, но что-то не так: мушка какая-то "кривая".

zoom_rotate_x, zoom_rotate_y или в zoom_offset первую-вторую цифры в третьем-четвертом знаке ?

 

И еще вопрос: партиклы вспышки как-то кривовато либо в зуме, либо в нормальной позиции: в зуме, соотвественно, левее, чем надо, в обычной - правее. Что с этим можно сделать ? Приблизить (третья цифра в fire_point) ?

Поделиться этим сообщением


Ссылка на сообщение

То-есть,  я правильно понял, что зад у него левее, чем надо, при том что собственно точка вылета пули - почти правильно ?

 

"при прицеливании эта вспышка сместится немного влево. " - да, я про этот эффект.

По z ни кто не пробовал крутить ? Вроде,  как раз тогда в нормальном положении, без зума, она должна субьективно смещаться  по диагонали, оставаясь на месте в режиме зума (в нем только крупнее/мельче, если не смещена), нет ?

Поделиться этим сообщением


Ссылка на сообщение

Попробовал таки подвигать "вперед-назад". С партиклами выстрела - получилось. То есть, несоответствие позиции "зум"-"обычная" - лечится.

С прицелом получилось странное - правый внутренний край прорези - "дрожит".

 

 

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...