[PYTANIE] Fizyka uszkodzeń pojazdów.

Regulamin forum
Dział "Tworzenie Modyfikacji" służy do zadawania pytań odnośnie tworzenia modyfikacji, edytowania plików gry, oraz pisania tzw. tutoriali, czyli poradników odnośnie modyfikowania gry.
Nie zadajemy tutaj pytań odnośnie modyfikacji gotowych (nie dyskutujemy o nich!), prócz prób ich połączenia etc.


Przy cytowaniu plików *.LTX stosować tag [SYNTAX="ini"], przy cytowaniu plików *.script [SYNTAX="lua"] a przy cytowaniu plików *.xml - [SYNTAX="xml"].

[PYTANIE] Fizyka uszkodzeń pojazdów.

Postprzez Freeman w 07 Gru 2009, 21:06

Na pewno niejednego z was denerwowała fizyka pojazdów w Stalkerze, mój problem dotyczy systemu ich uszkodzeń - do rzeczy. Zespawnowałem w jednostce wojskowej w kordonie 2 BTR'y, mam odpowiedni skrypt dzięki któremu te transportery strzelają do nas i to z dobrym efektem - problem w tym że są za słabe, udało mi się do nich podejść - uderzyłem nożem tylko raz w poszycie i to wystarczyło by zniszczyć transporter, ale gdybym strzelał z RPG 7 wówczas muszę oddać 3 strzały - ten bug psuje realizm a że akurat znam sposób na podejście pod BTR'a dodatkowo irytuje. Screeny dla jasności sytuacji : 01 i 02
Poniżej podaje config tego transportera (z DM:F - tam jest ten sam bug), zaznaczam iż parametr istotny dla tego systemu uszkodzeń - wound_immunity ustawiony jest na 0.0 i zmiana na inny nie pomaga.
Plik veh_btr_u_01.ltx (gamedata\config\models\vehicles)

Kod: Zaznacz wszystko
[disable]
linear_factor         = 0.5
angular_factor          = 0.5
               
;-------------------------------------------------------------------------------
;-------------------------------------------------------------------------------

[car_definition]

camera_pos              = -0.4, 1.75, 2.4

driving_wheels          = front_left_wheel,front_right_wheel,front_left_wheel2,front_right_wheel2,back_left_wheel,back_right_wheel,back_left_wheel2,back_right_wheel2     ; âĺäóůčĺ ęîë¸ńŕ
steering_wheels         = front_left_wheel,front_right_wheel,front_left_wheel2,front_right_wheel2,back_left_wheel,back_right_wheel ; đóëĺâűĺ ęîë¸ńŕ
breaking_wheels         = front_left_wheel,front_right_wheel,front_left_wheel2,front_right_wheel2,back_left_wheel,back_right_wheel,back_left_wheel2,back_right_wheel2   ; ňîđěîç˙ůčĺ ęîë¸ńŕ
doors                   = left_door,right_door,front_left_door,front_right_door    ; äâĺđč
steer                   = stearing_wheel                ; đóëü
driver_place            = seat_left                   ; ěĺńňî âîäčňĺë˙
exhausts                = exhausts                      ; âűőëîďíŕ˙ ňđóáŕ
exhaust_particles       = vehiclefx\exhaust_1
damage                 = damage_bones

;-------------------------------------------------------------------------------
;------ Factory parameters of Engine -------------------------------------------

fuel_tank               = 250.            ; L
fuel_consumption        = 0             ; L / (100k R); liters per 100 000 rotations
engine_power            = 325           ; horse_power (kW=hp*0.808) max power
max_power_rpm           = 2300           ; (nominal rpm ) on this rpm value engine power reaches maximum
max_torque_rpm          = 1600.          ; on this rpm engine torque reaches maximum

power_increment_factor   = 0.01
power_decrement_factor   = 0.1
rpm_increment_factor   = 0.02
rpm_decrement_factor   = 0.02
m_power_neutral_factor   = 0.75

; additional engine parameters

max_engine_rpm          = 3000         ; rpm (5000) rpm will never be more
idling_engine_rpm      = 750          ; rpm (750) min rpm - starts from this rpm value

;-------------------------------------------------------------------------------
;------ Adjustment a wheel -----------------------------------------------------

reference_radius        = 0.65         ; Đŕäčóń ęîëĺńŕ, čńďîëüçóĺěűé ďđč ďđîń÷¸ňĺ äâčăŕňĺë˙
axle_friction           = 0.0001          ; Îńëŕáëĺíčĺ ńęîđîńňč â íĺĺňđŕëüíîé ďîçčöčč. (N*m)
steering_speed          = 0.5            ; Âđĺě˙ ďîâîđîňŕ đóëĺâîăî ęîëĺńŕ, â ěŕęńčěóě. rps (1)
steering_torque         = 900000.       ; Ńčëŕ ăčäđîóńčëčňĺë˙ đóë˙. (N*m)
break_torque            = 0.06           ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m)
break_time              = 1.0            ; âđĺě˙ íŕđŕńňŕíč˙ ńčëű ňîđěîćĺíč˙ äî ěŕęńčěóěŕ, ďđč ďîäňîđěŕćčâŕíčč (ńňđĺëęŕ íŕçŕä)
hand_break_torque       = 0.06           ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)

;-------------------------------------------------------------------------------
;------ Gearbox ----------------------------------------------------------------

main_gear_ratio          = 20.0           ; Ďĺđĺäŕňî÷íîĺ îňíîřĺíčĺ
auto_transmission        = on            ; Ŕâňîěŕňč÷ĺńęŕ˙ ęîđîáęŕ (on/off)

[transmission_gear_ratio]
                              ; shift down/ shift up. (rpm, íĺîáőîäčěîĺ äë˙ ďĺđĺęëţ÷ĺíč˙)
R                        = 2.0, 1500,2450   
N1                       = 2.0, 1500,2450
N2                       = 1.0, 1500,2450
;N3                       = 1.71, 2200,2850
;N4                       = 1.00, 2200,2850

;-------------------------------------------------------------------------------
;------ Rest Adjustment --------------------------------------------------------

[lights]
headlights               = f1,f2

[f1]
bone                     = front_left_door
color                    = 1.0,1.0,1.0,0.8
range                    = 25
cone_angle               = 50
spot_texture             = lights\lights_blamplight
glow_texture             = glow\glow_Yellow
glow_radius              = 1.5

[f2]
bone                     = front_right_door
color                    = 1.0,1.0,1.0,0.8
range                    = 25
cone_angle               = 50
spot_texture             = lights\lights_blamplight
glow_texture             = glow\glow_Yellow
glow_radius              = 1.5

[car_sound]
snd_volume               = 1.0
snd_name                 = car\apc_run
engine_sound_start_dellay   = 0.5
engine_start         = car\apc_start
engine_stop            = car\apc_stop
transmission_switch      = car\car_gearchange
explosion_sound          = weapons\heli_explosion
relative_pos             = 0.0,0.5,3.0.

;-------------------------------------------------------------------------------
;------ animations params ------------------------------------------------------

[doors]
open_torque_factor       = 10   ;ěíîćčňĺëü ěîěĺíňŕ ńčë äë˙ îňęđűâŕíč˙ äâĺđč (default = 2)

[animations]

driver_animation_type    = 0   ;ňčď ŕíčěŕöčé ŕęňĺđŕ äë˙ äŕííîé ěŕřčíű.

;-------------------------------------------------------------------------------
;------ damage params ----------------------------------------------------------

[damage_particles]

explosion_particles     = explosions\expl_mushroom_01
car_damage_particles1   = explosions\expl_car_smoke_small
car_damage_particles2   = explosions\expl_car_smoke_big
wheels_damage_particles1 = vehiclefx\exhaust_1
wheels_damage_particles2 = vehiclefx\exhaust_1

particle_bones1                 = kabina
particle_bones2                 = root

;-------------------------------------------------------------------------------
;------ particle bones ---------------------------------------------------------

[particle_bones]
root                  =  1.5,-0.5,1
back_left_wheel       =  0,0,0
back_right_wheel      =  0,0,0
front_left_wheel      =  0,0,0
front_right_wheel     =  0,0,0
kabina                =  1.3,-0.5,-1
left_door             =  0,0,0
right_door            =  0,0,0

;-------------------------------------------------------------------------------
;------ damage items -----------------------------------------------------------

[damage_items]
front_left_wheel      = 5000
front_right_wheel     = 5000
front_left_wheel2     = 5000
front_right_wheel2    = 5000
back_left_wheel       = 5000
back_right_wheel      = 5000
back_left_wheel2      = 5000
back_right_wheel2     = 5000
left_door             = 2000
right_door            = 2000

;-------------------------------------------------------------------------------
;------ collisiondamage --------------------------------------------------------

[collision_damage]
root                  = 0
kabina                = 0
back_left_wheel       = 0
back_right_wheel      = 0
back_left_wheel2      = 0
back_right_wheel2     = 0
front_left_wheel      = 0
front_right_wheel     = 0
front_left_wheel2     = 0
front_right_wheel2    = 0

;-------------------------------------------------------------------------------
;------ damage bones -----------------------------------------------------------

[damage_bones]          ;ŕíŕëîăč÷íî ńĺęöčč â ŕęňĺđĺ, íî áĺç ŕíčěŕöčé
;bone_name              = <hit_scale>,<-1>,<wound_scale>
;<hit_scale>          - ęîýôô. čçěĺíĺíč˙ őčňŕ (óěĺíüřĺíč˙ çäîđîâü˙)
;<wound_scale>          - ęîýôô. čçěĺíĺíč˙ âĺëč÷číű îňęđűňîé đŕíű - íĺçŕäĺéńňâîâŕí

default                = 1, -1, 0.1

[immunities]
burn_immunity            = 0.5       ;ęîýôôčöčĺíňű čěěóíčňĺňŕ
strike_immunity          = 0.0
shock_immunity           = 0.0
wound_immunity           = 0.0
radiation_immunity       = 0.0
telepatic_immunity       = 0.0
chemical_burn_immunity    = 0.0
explosion_immunity       = 0.2
fire_wound_immunity      = 0.0001


;-------------------------------------------------------------------------------
;----------------explosion params-----------------------------------------------

[explosion]
blast               = 1
blast_r               = 15
blast_impulse         = 350
frags                 = 15
frags_r               = 30
frag_hit            = 0.5
frag_hit_impulse      = 350
hit_type_blast         = explosion
hit_type_frag         = fire_wound
up_throw_factor         = 0.25
wm_size                = 0.1
explode_particles      = explosions\expl_mushroom_01
light_color            = 0.6,0.5,0.3
light_range            = 15.0
light_time             = 0.5

;ňđŕńńű îň îńęîëęîâ
fragment_speed            = 76
fragment_tracer_max_length   = 3
explode_duration          = 50         ;ďîäîëćčňĺëüíîńňü âçđűâŕ (ń)

;çâóęč
snd_explode          = weapons\heli_explosion
;wallmarks
wallmark_section      = explosion_marks

[explode_effector]
effect_sect_name= effector_explode_hit

;-------------------------------------------------------------------------------
;------ Others params ----------------------------------------------------------

[air_resistance]
linear_factor           = 500.f      ;
angular_factor          = 2500.f   ;

[wheels_params]
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 2.4      ;

[front_left_wheel]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

[front_right_wheel]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

[front_left_wheel2]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

[front_right_wheel2]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

[back_left_wheel]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

[back_right_wheel]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

[back_left_wheel2]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque))
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

[back_right_wheel2]
break_torque         = 0.060      ; Ńčëŕ ňîđěîçíűő ęîëîäîę. (N*m
hand_break_torque      = 0.060      ; ńčëŕ ňîđěîćĺíč˙ ďđîáĺëîě (ďî óěîë÷ŕíčţ = break_torque)
damping_factor          = 20      ;
spring_factor           = 0.8      ;
friction_factor         = 1.4      ;

;-------------------------------------------------------------------------------
;------ Weapons params ---------------------------------------------------------

[mounted_weapon_definition]
fire_bone       = mashine_gun_fire_point ; fire bone name
rotate_x_bone   = mashine_gun            ; rotate X-axis(pitch) bone name
rotate_y_bone   = mashine_gun_tower      ; rotate Y-axis(head)  bone name
min_gun_speed   = 0.5
max_gun_speed   = 2.5
wpn_section     = stationary_mgun

;-------------------------------------------------------------------------------
;------ destroyed part ---------------------------------------------------------

[destroyed]
physics\vehicles\btr\parts\pt1
physics\vehicles\btr\parts\pt2
physics\vehicles\btr\parts\pt3
physics\vehicles\btr\parts\pt4
physics\vehicles\btr\parts\pt5
physics\vehicles\btr\parts\pt6
physics\vehicles\btr\parts\pt7
physics\vehicles\btr\parts\pt8
physics\vehicles\btr\parts\pt9
physics\vehicles\btr\parts\pt10

;weapons\pkm\pkm
[autoremove_parts]
time                = 30000

;-------------------------------------------------------------------------------
;--- part impulse_transition ---------------------------------------------------

[impulse_transition_to_parts]
random_min               = 10.0    ; âĺëč÷číŕ ńëó÷ŕéíî íŕďđŕâëĺííîăî čěďóëüńŕ ďđîďîđöčîíŕëüíî ěŕńńĺ íîâîăî îáúĺęňŕ
random_hit_imp           = 1.0     ; âĺëč÷číŕ ńëó÷ŕéíî íŕďđŕâëĺííîăî čěďóëüńŕ ďđîďîđöčîíŕëüíî đŕçđóřŕţůĺěó őčňó
;ref_bone                 =         ; ęîńňü čç ďî ęîňîđîé îďđĺäĺë˙ĺňń˙ ńęîđîńňü äë˙ ÷ŕńňĺé ó ęîňîđűé ńâ˙çü íĺ çŕäŕíŕ, ďî óěîë÷ŕíčţ đóň
imp_transition_factor    = 1.0     ; ôŕęňîđ ń ęîňîđűě ďđčęëŕäűâŕĺňń˙ őčň ďî čńőîäíîěó îáúĺęňó ęî âńĺě ÷ŕńň˙ě
lv_transition_factor     = 0.5     ; ęîýôôčöčĺíň ďĺđĺäŕ÷č ëčíĺéíîé ńęîđîńňč
av_transition_factor     = 0.5     ; ęîýôôčöčĺíň ďĺđĺäŕ÷č óăëîâîé ńęîđîńňč

;-------------------------------------------------------------------------------
;------ End params -------------------------------------------------------------



Jeżeli ktokolwiek zetknął się z tym problemem lub/i potrafi temu zaradzić będę wdzięczny.
Pozdrawiam.
EDIT:
udało mi się rozwiązać ten problem - okazuje się że w pliku noża (w_knife.ltx) są 2 typy obrażeń :
- wound
oraz wound_2
Ten drugi typ nie jest zdefiniowany w parametrach ochrony - jest tylko wound_immunity , więc na ten drugi rodzaj obrażeń nie ma poprawki - dlatego drugi tryb ataku jest tak skuteczny, nawet przeciwko wozom opancerzonym - zmieniłem config noża dla drugiego typu ataku na ten pierwszy i pomogło.
P.S. Co do sensowności trzymania tego tematu - wybór podejmie moderator - jeżeli uzna że w przyszłości może się przydać, jeśli nie .....wiadomo - kosz.
Awatar użytkownika
Freeman
Stalker

Posty: 140
Dołączenie: 23 Lip 2009, 19:17
Ostatnio był: 26 Maj 2010, 20:34
Miejscowość: Terra
Frakcja: Samotnicy
Ulubiona broń: VLA Special Assault Rifle
Kozaki: 3

Reklamy Google

Re: [PYTANIE] Fizyka uszkodzeń pojazdów.

Postprzez pzengota w 10 Gru 2009, 21:19

Ja też przyłączam się do prośby i czy jest możliwość żeby samochody działały na 1.0004 i w górę? A tak przy okazji jak zrobiłeś ze BTR strzela?
Z góry dzięki i pozdrawiam.
:

Jeżeli w moim poście nie ma słowa "Pozdrawiam" znaczy że jest coś ze mną nie tak :D
Awatar użytkownika
pzengota
Stalker

Posty: 198
Dołączenie: 09 Lut 2008, 10:08
Ostatnio był: 08 Sie 2021, 14:59
Miejscowość: Gdynia
Frakcja: Samotnicy
Ulubiona broń: Gauss Gun
Kozaki: 10

Re: [PYTANIE] Fizyka uszkodzeń pojazdów.

Postprzez utak3r w 11 Gru 2009, 02:33

Dublujesz posty!
Tak, jest możliwość, masz przykład w Priboi Story.
Image
Awatar użytkownika
utak3r
Modder

Posty: 2200
Dołączenie: 11 Lis 2009, 18:15
Ostatnio był: 31 Lip 2023, 16:01
Miejscowość: Szczecin
Frakcja: Powinność
Ulubiona broń: GP 37
Kozaki: 376

Re: [PYTANIE] Fizyka uszkodzeń pojazdów.

Postprzez Freeman w 11 Gru 2009, 22:55

Co do pierwszego pytania - odpowiedź jest jasna: żeby wszelkie pojazdy, mutanty, przedmioty, itp. znalazły się w grze trzeba właściwie zedytować plik all.spawn. Wszelkie wątpliwości natury technicznej rozwiewa TEN tutorial.
W przypadku drugiego pytania - poniżej podaje config BTR'a (wrzucamy zgodnie z zasadami tutka ACDC do odpowiedniego pliku .ltx - ten dodany jest w kordonie: plik alife_l01_escape.ltx).

Kod: Zaznacz wszystko
[9000]
; cse_abstract properties
section_name = m_car
name = esc_btr_01
position = -103.60,-13.63,-173.09
direction = 0,0,0

; cse_alife_object properties
game_vertex_id = 0
distance = 0
level_vertex_id = 594270
object_flags = 0xfffffffa
custom_data = <<END
[logic]
active = ph_car@idle
on_hit = hit

[hit]
on_info = %+esc_blockpost_alarm%

[ph_car@idle]
target=actor
fire_range=125
fire_repeat=50
auto_fire=true
track_target=true
on_info = {=gulag_casualities_ge(esc_blokpost:5)} ph_car@eliminate, {+esc_blockpost_alarm} ph_car@eliminate

[ph_car@eliminate]
target=actor
fire_range=140
fire_repeat=50
auto_fire=true
track_target=true
on_info = {+esc_blockpost_normal} ph_car@idle
END

; cse_visual properties
visual_name = physics\vehicles\btr\veh_btr_script_u_01
visual_flags = 0x1

; cse_ph_skeleton properties

; cse_alife_car properties
health = 1


Spawnujemy transporter i zapisujemy zmiany, ale żeby wszystko działało trzeba jeszcze dodać szereg plików począwszy od modelu, tekstury, configu itp...jest trochę roboty.
Pozdrawiam.
Awatar użytkownika
Freeman
Stalker

Posty: 140
Dołączenie: 23 Lip 2009, 19:17
Ostatnio był: 26 Maj 2010, 20:34
Miejscowość: Terra
Frakcja: Samotnicy
Ulubiona broń: VLA Special Assault Rifle
Kozaki: 3


Powróć do Cień Czarnobyla

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 3 gości