[m_dog_e]:monster_base
GroupControlSection		= spawn_group
SpaceRestrictionSection	= space_restrictor,zone_mosquito_bald
;$spawn					= "monsters\dog"	; option for Level Editor
$npc					= on				; option for Level Editor
$prefetch				= 16

class				= SM_DOG_S
visual				= monsters\dog\dog
corpse_visual		= monsters\dog\dog_dead
icon				= ui_npc_monster_dog

species				= dog

script_binding		= bind_monster.bind


ef_creature_type	= 6		; option for evaluation functions
ef_weapon_type		= 2
ef_detector_type	= 1
panic_threshold		= 0.1


bone_torso			= bip01_spine1		; bone name
bone_head			= bip01_head		; bone name
bone_fire			= bip01_head		; bone name
bone_drag			= bip01_tail2		; bone name

;max_threat_distance	= 10				; для сталкеров, расстояние, до которого не допускается игнор монстра
parts_cut_count			= 150

;------------------------------------------------------------------------
; Offline Alife
;------------------------------------------------------------------------
Scheduled					= on			; option for ALife Simulator
Human						= off			; option for ALife Simulator
Health						= 100			; option for ALife Simulator
MinSpeed					= 1.0			; option for ALife Simulator
MaxSpeed					= 1.5			; option for ALife Simulator
going_speed					= 2.0			; option for ALife Simulator
current_level_going_speed	= 1;2			; option for ALife Simulator
MaxHealthValue				= 100			; range [0..200]
;------------------------------------------------------------------------
; Influences
;------------------------------------------------------------------------
psy_max_distance			= 0
psy_max_power				= -0.03

radiation_max_distance		= 2.2
radiation_max_power			= -0.01
;---------------------------------------------------------------------
; Physics
;---------------------------------------------------------------------
ph_box0_center				= 0.0,  0.3,  0.0
ph_box0_size				= 0.35, 0.3,  0.35
ph_box1_center				= 0.0,  0.3,  0.0
ph_box1_size				= 0.35, 0.3,  0.35
ph_crash_speed_min			= 10
ph_crash_speed_max			= 30
ph_collision_damage_factor	= 0.1
ph_mass						= 40
;actor_restrictor			= medium_monster ;medium_monster,stalker,none
destroyed_vis_name			= physics\dead_body\skelet_crash_monster

;---------------------------------------------------------------------
ph_skeleton_collision_enabled       = true ; Включена ли коллизия тела

ph_skeleton_skin_friction_start     = 0.1   ;Стартовое значение трения для оболочки
ph_skeleton_skin_friction_end       = 0.7   ;Финальное значение трения для оболочки
ph_skeleton_skin_ddelay             = 3.0   ;Время изменения значения трения с момента создания шелла, сек.

ph_skel_fatal_impulse_factor    = 2.5
ph_after_death_velocity_factor  = 1.25
ph_skel_shot_up_factor          = 0.05

;----------------------------------------------------------------------------
; Movement::Velocities & Acceleration
;----------------------------------------------------------------------------
; speed factors            linear | angular_real | angular_path | min |  max
Velocity_Stand				= 0,		2.5,			2.5,		1,		1
Velocity_WalkFwdNormal		= 1.45,		3.2,			3.0,		0.2,	1.5
Velocity_WalkFwdDamaged		= 1.45,		1.0,			1.0,		0.2,	1
Velocity_RunFwdNormal		= 6.3,		3.6,			3.4,		0.21,	1
Velocity_RunFwdDamaged		= 4.5,		1.2,			1.0,		0.18,	1
Velocity_WalkSmelling		= 1.0,		3.2,			1.2,		0.3,	2.3
Velocity_WalkGrowl			= 0.6,		1.5,			1.4,		1,		1
Velocity_Drag				= 0.5,		0.3,			0.3,		1,		1
Velocity_Steal				= 1.05,		1.0,			1.0,		1,		1
Velocity_JumpGround			= 7.0,		2.0,			2.0,		0.5,	1

; acceleration
Accel_Generic			= 1.5
Accel_Calm				= 2.5
Accel_Aggressive		= 14.5
;--------------------------------------------------------------------------
; Attack parameters
;--------------------------------------------------------------------------
MinAttackDist			= 1.7
MaxAttackDist			= 2.0
as_min_dist				= 1.2
as_step					= 0.2

attack_params			= dog_attack_params

Melee_Rotation_Factor	= 2.1
hit_type				= wound
;------------------------------------------------------------------------
; Attack On Move
;------------------------------------------------------------------------
aom_enabled				= 0.7
aom_animation_left		= stand_attack_0
aom_animation_right		= stand_attack_2
aom_far_radius			= 10	;6
aom_max_go_close_time	= 5		;6
aom_prepare_time		= 1		;5
aom_attack_radius		= 0.3
aom_update_side_period	= 3
aom_prediction_factor	= 1.1
aom_can_break			= true
aom_max_fails			= 2
aom_pause_time_min		= 7
aom_pause_time_max		= 12

;--------------------------------------------------------------------------
; Jump parameters
;--------------------------------------------------------------------------
jump_enabled				= 1
jump_delay					= 5000
jump_factor					= 1.5
jump_ground_trace_range		= 1.0
jump_hit_trace_range		= 1.5
jump_min_distance			= 3.0
jump_max_distance			= 6.0
jump_max_angle				= 0.4
jump_max_height				= 3.5
jump_auto_aim_factor		= 0.4
jump_predict_factor			= 1.4
jump_predict_prob			= 1.0

;-------------------------------------------------------------------------
; Entity Conditions
;-------------------------------------------------------------------------
satiety_v				= 0.0001			;скорость уменьшения сытости со временем
radiation_v				= 0.00001			;скорость уменьшения радиации
;satiety_power_v		= 0.005				;увеличение силы при уменьшении сытости
;satiety_health_v		= 0.005				;увеличение здоровья при уменьшении сытости
radiation_health_v		= 0.01				;уменьшение здоровья при воздействии радиации
morale_v				= 0.01				;скорость восстановления морали
health_hit_part			= 0.7				;процент хита, уходящий на отнимание здоровья
power_hit_part			= 0.9				;процент хита, уходящий на отнимание силы
psy_health_v			= 0.1				;скорость восстановления psy-здоровья

immunities_sect			= dog_immunities_weak
protections_sect		= dog_protections
hit_slowdown			= 1.5, 0.75

;открытые раны
bleeding_v				= 0.05		;потеря крови при номинальной ране в секунду
wound_incarnation_v		= 0.002		;заживление ран в игровую секунду
min_wound_size			= 0.005

;Eat settings
eat_freq				= 1.0		; частота укусов в сек
eat_slice				= 0.01		; увеличение сытости при 1 укусе
eat_health				= 0.002		; увеличение здоровья при 1 укусе
eat_slice_weight		= 40		; уменьшение еды у трупа
satiety_threshold		= 0.8		; below this value monster fill hunger

;-------------------------------------------------------------------------
; Morale
;-------------------------------------------------------------------------
Morale_Hit_Quant                = 0.2
Morale_Attack_Success_Quant        = 0.1
Morale_Take_Heart_Speed            = 0.1
Morale_Despondent_Speed            = 0.1
Morale_Stable_Speed                = 0.01
Morale_Despondent_Threashold    = 0.4
;---------------------------------------------------------
; Sounds and sound parameters
;---------------------------------------------------------
sound_idle				= monsters\dog\bdog_idle_
sound_eat				= monsters\dog\bdog_eat_
sound_aggressive		= monsters\dog\bdog_attack_ ; издается, когда монстр преследует противника
; sound_attack			= ; звук для неудачной попытки ударить или укусить (рык)
sound_attack_hit        = monsters\dog\attack_hit_ ; звук для успешной попытки ударить или укусить (рык)
sound_take_damage		= monsters\dog\bdog_hurt_
sound_die				= monsters\dog\bdog_die_
sound_threaten			= monsters\dog\bdog_groan_
sound_steal				= monsters\biting\def_
sound_panic				= monsters\dog\bdog_panic_
;sound_growling			= monsters\biting\def_
sound_die_in_anomaly	= monsters\dog\bdog_die_
sound_distant_idle		= monsters\dog\bdog_distant_    ; только для расстояний свыше distant_idle_sound_range

killer_clsids			= ZS_AMEBA,ZS_HAIRS,ZS_MBALD,ZS_MINEF,ZS_GALAN,ZS_MINCE,ZS_GRAVI,ZS_CAMPF,ZS_TORRD

idle_sound_delay		= 80000
eat_sound_delay			= 2000
attack_sound_delay		= 5000		;2000

distant_idle_sound_delay = 80000
distant_idle_sound_range = 70

SoundThreshold			= 0.04             ; range [0..1]
SoundThreshold_Sleep	= 0.20
max_hear_dist			= 60
;-------------------------------------------------------------------------
; Damages
;-------------------------------------------------------------------------
DamagedThreshold	= 0.2
damage				= m_dog_damage

critical_wound_threshold		= 0.4
critical_wound_decrease_quant	= 0

critical_wound_anim_head		= critical_hit_head_
critical_wound_bones_head		= dog_critical_wound_bones_head

critical_wound_anim_torso		= critical_hit_torso_
critical_wound_bones_torso		= dog_critical_wound_bones_torso

critical_wound_anim_legs		= critical_hit_torso_
critical_wound_bones_legs		= dog_critical_wound_bones_legs

;-------------------------------------------------------------------------
; Other Stuff (refactoring needed)
;-------------------------------------------------------------------------
DayTime_Begin			= 7		; начало дня для монстра
DayTime_End				= 22	; конец дня для монстра
sleep_time				= 7.0	; сколько часов нужно спать

distance_to_corpse		= 1.3	; дист. до трупа, при которой он переходит в состояние еды

terrain					= dogs_terrain

material				= creatures\medium

step_params				= m_dog_step_params
LegsCount				= 4

;-------------------------------------------------------------------------
; Vision
;-------------------------------------------------------------------------
eye_fov				 	= 150	;160
eye_range			 	= 50
eye_rotation			= 0, 0.75

vision_free_section		= dog_vision_free
vision_danger_section	= dog_vision_danger

; ЗНАЧЕНИЯ visibility_threshold ДОЛЖНЫ БЫТЬ РАВНЫ для денжера и фри,
; иначе возникают артефакты с потерей видимости при переходе от денжера во фри.

[dog_vision_free]
min_view_distance   		= 0.5				; коэффициент, который множится на eye_range, в зависимости от угла
max_view_distance	 		= 1.0				; коэффициент, который множится на eye_range, в зависимости от угла
visibility_threshold	 	= 80.0			; значение, при достижении суммой которого объект считается видимым
always_visible_distance 	= 0.2
time_quant					= 0.005
decrease_value				= 0.01				; значение, на которое уменьшается вес, если объект попал в фрустум, но отсёкся по каким-то причинам
velocity_factor		     	= 1.0
luminocity_factor			= 0.7 				; фактор освещения (только для Актёра)
transparency_threshold		= 0.4

[dog_vision_danger]
min_view_distance   		= 0.7				; коэффициент, который множится на eye_range, в зависимости от угла
max_view_distance	 		= 1.0				; коэффициент, который множится на eye_range, в зависимости от угла
visibility_threshold	 	= 40.0				; значение, при достижении суммой которого объект считается видимым
always_visible_distance 	= 0.2
time_quant					= 0.001
decrease_value				= 0.01				; значение, на которое уменьшается вес, если объект попал в фрустум, но отсёкся по каким-то причинам
velocity_factor		     	= 1.0
luminocity_factor			= 0.7 				; фактор освещения (только для Актёра)
transparency_threshold		= 0.4


;===========================================================================
; Step Events
;===========================================================================
[m_dog_step_params];             fwdleftleg       fwdrightleg     backrightleg     backleftleg
;------------------------------------------------------------------------------------------------------------
;    anim            Cycles | time1 | power1 | time2 | power2 | time3 | power3 | time4 | power4 |
;------------------------------------------------------------------------------------------------------------
stand_walk_fwd_0	=	1,		0.35,	0.50,	0.89,	0.50,	0.73,	0.50,	0.23,	0.50
stand_walk_dmg_0	=   1,		0.14,	0.60,	0.71,	0.80,	0.50,	0.60,	1.0,	0.60
stand_run_0			=	1,		0.37,	0.80,	0.28,	0.80,	0.82,	0.80,	1.0,	0.80
stand_run_turn_left_0 =	1,		0.07,	0.80,	0.0,	0.80,	0.45,	0.80,	0.67,	0.80
stand_run_turn_right_0=	1,		0.07,	0.80,	0.0,	0.80,	0.45,	0.80,	0.67,	0.80
stand_run_dmg_0		=	1,		0.24,	0.90,	0.78,	0.0,	0.88,	0.80,	0.78,	0.80
stand_steal_0		=	1,		0.15,	0.1,	0.75,	0.1,	0.37,	0.2,	0.98,	0.2
stand_drag_0		=	1,		0.97,	0.30,	0.49,	0.30,	0.03,	0.30,	0.53,	0.30
stand_drag_1		=	2,		0.97,	0.30,	0.49,	0.30,	0.03,	0.30,	0.53,	0.30
stand_walk_smelling_0 =	2,		0.11,	0.50,	0.58,	0.50,	0.43,	0.50,	0.91,	0.50
stand_growl_walk_0	=	1,		0.94,	0.20,	0.44,	0.20,	0.93,	0.30,	0.41,	0.30
jump_ataka_01		=	1,		0.0,	0.0,	0.0,	0.0,	0.62,	0.80,	0.52,	0.80

;===========================================================================
; Attack Params
;===========================================================================
[dog_attack_params]
;---------------------------------------------------------------------------------------------------------------------------------------------------------
;    anim            | time[0..1] | hit_power | impulse | impulse_dir (x,y,z)  |    Field of hit_test  (left,right, top, bottom) | Test Dist|
;---------------------------------------------------------------------------------------------------------------------------------------------------------
;Bite
stand_attack_0		=		0.35,		0.15,		3,		0.0, 0.1, 1.0,			-1.2, 1.2, -1.2, 1.2,							1.8
stand_attack_1		=		0.4,		0.22,		5,		0.0, 0.1, 1.0,			-1.3, 1.3, -1.2, 1.2,							2.1
stand_attack_2		=		0.35,		0.15,		3,		0.0, 0.1, 1.0,			-1.2, 1.2, -1.2, 1.2,							1.8
stand_attack_3		=		0.4,		0.22,		5,		0.0, 0.1, 1.0,			-1.3, 1.3, -1.2, 1.2,							2.1
;Jump attack
jump_ataka_02		=		0.1,		0.24,		550,	0.0, 1.0, 4.0,			-2.0, 2.0, -1.8, 1.8,							0
;stand_run_attack_0	=		0.5,		0.15,		100,	0.0, 0.2, 1.0,			-1.6, 1.6, -1.6, 1.6,							2.4

;===========================================================================
; IMMUNITIES
;===========================================================================
[dog_protections]
skin_armor = 0.105
hit_fraction_monster = 1.0
;=================================================================================
; DOG Damage
;=================================================================================
[m_Dog_damage]
;bone_name		= <hit_scale>,-1,<wound_scale>
;<hit_scale>	- коэфф. изменения хита (уменьшения здоровья)
;<wound_scale>	- коэфф. изменения величины открытой раны

default			= 0.6, -1, 0.5

bip01_pelvis	= 1.0, -1, 1.0
bip01_spine		= 1.0, -1, 1.0
bip01_spine1	= 1.0, -1, 1.0
bip01_spine2	= 0.8, -1, 1.0
bip01_neck		= 1.5, -1, 2.5, 2.5, 3.0
bip01_head		= 4.0, -1, 1.5, 4.0, 6.0
bip01_ponytail2	= 2.0, -1, 1.0


[dog_critical_wound_bones_head]
bip01_neck
bip01_head
bip01_ponytail2

[dog_critical_wound_bones_torso]
bip01_pelvis
bip01_l_calf
bip01_r_calf
bip01_spine
bip01_spine1
bip01_spine2
bip01_l_clavicle
bip01_r_clavicle
;bip01_tail1
;bip01_tail2

[dog_critical_wound_bones_legs]
bip01_l_horselink
bip01_l_foot
bip01_r_thigh
bip01_r_horselink
bip01_r_foot
bip01_l_upperarm
bip01_l_forearm
bip01_l_hand
bip01_l_finger0
bip01_r_upperarm
bip01_r_forearm
bip01_r_hand
bip01_r_finger0
bip01_l_thigh


;=================================================================================
; DOG Terrain
;=================================================================================
[dogs_terrain]
	255,000,255,255

;*********************************************************************************
; WEAK PROFILE
;*********************************************************************************
[dog_weak]:m_dog_e
$spawn					= "monsters\dogs\dog_01_weak"
visual					= monsters\dog\dog
corpse_visual			= monsters\dog\dog_dead
icon					= ui_npc_monster_dog
panic_threshold			= 0.3
rank					= 0
immunities_sect			= dog_immunities_weak
hit_power_factor		= 0.7
spec_rank				= weak

eye_range				= 30

[dog_immunities_weak]
burn_immunity             = 1.0
strike_immunity           = 1.0
shock_immunity            = 1.0
wound_immunity            = 0.7
radiation_immunity        = 0.0
telepatic_immunity        = 1.0
chemical_burn_immunity    = 1.0
explosion_immunity        = 1.2
fire_wound_immunity       = 0.8

;*********************************************************************************
; NORMAL PROFILE
;*********************************************************************************
[dog_normal]:m_dog_e
$spawn					= "monsters\dogs\dog_02_normal"
visual					= monsters\dog\dog_red
corpse_visual			= monsters\dog\dog_red_dead
icon					= ui_npc_monster_dog
panic_threshold			= 0.2
rank					= 401
immunities_sect			= dog_immunities_normal
hit_power_factor		= 1.0
spec_rank				= normal

[dog_immunities_normal]
burn_immunity             = 0.8
strike_immunity           = 0.8
shock_immunity            = 0.8
wound_immunity            = 0.5
radiation_immunity        = 0.0
telepatic_immunity        = 1.0
chemical_burn_immunity    = 1.0
explosion_immunity        = 1.0
fire_wound_immunity       = 0.75

;*********************************************************************************
; STRONG PROFILE
;*********************************************************************************
[dog_strong]:m_dog_e
$spawn					= "monsters\dogs\dog_03_strong"
visual					= monsters\dog\dog_white
corpse_visual			= monsters\dog\dog_white_dead
icon					= ui_npc_monster_dog_white
panic_threshold			= 0.002
rank					= 801
immunities_sect			= dog_immunities_strong
protections_sect		= dog_protections_strong
hit_power_factor		= 1.25
spec_rank				= strong

[dog_immunities_strong]
burn_immunity             = 0.7
strike_immunity           = 0.7
shock_immunity            = 0.7
wound_immunity            = 0.3
radiation_immunity        = 0.0
telepatic_immunity        = 1.0
chemical_burn_immunity    = 1.0
explosion_immunity        = 0.75
fire_wound_immunity       = 0.75

[dog_protections_strong]
skin_armor				= 0.17
hit_fraction_monster	= 0.9


;*********************************************************************************
; BULTERIER	; jumper
;*********************************************************************************
[dog_bulterier]:dog_normal
$spawn					= "monsters\dogs\dog_bulterier"
visual					= monsters\dog\dog_bulterier
corpse_visual			= monsters\dog\dog_bulterier_dead
icon					= ui_npc_monster_dog_bul
panic_threshold			= 0.05
rank					= 501

aom_enabled				= 0
jump_enabled			= 1
jump_leader_only		= false
jump_delay				= 4000
jump_min_distance		= 2.0
jump_max_distance		= 6.0
