;===========================================================================
; CAT
;===========================================================================
[cat_test]:monster_base
GroupControlSection	= spawn_group
SpaceRestrictionSection = space_restrictor,zone_mosquito_bald
$spawn              = "monsters\cat"			; option for Level Editor
$npc			    = on						; option for Level Editor
$prefetch 			= 16
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         = 1.0                      ; option for ALife Simulator
current_level_going_speed		= 3;2					; option for ALife Simulator
search_speed        = .5                       ; option for ALife Simulator
visual				= monsters\cat\cat
corpse_visual		= monsters\cat\cat
icon				 = ui_npc_monster_cat
MaxHealthValue		= 165			; range [0..200]
DynamicObjectsCount	= 8
smart_terrain_choose_interval	= 00:15:00

Spawn_Inventory_Item_Section = mutant_cat_tail
Spawn_Inventory_Item_Probability = 0.0

ef_creature_type	 = 21			; option for evaluation functions
ef_weapon_type		 = 2
ef_detector_type	 = 1
panic_threshold		 = 0.045

cform                = skeleton					; collision class
class                = SM_CAT_S					; AI class
script_binding  	 = bind_monster.bind

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

weapon_usage		 = 0						; boolean

;------------------------------------------------------------------------
; Influences
;------------------------------------------------------------------------

fire_max_distance			=	0
fire_max_power				=	5
fire_linear_factor			=	0
fire_quadratic_factor		=	0.025

psy_max_distance			=	0
psy_max_power				=	5
psy_linear_factor			=	0.05
psy_quadratic_factor		=	0

radiation_max_distance		=	0
radiation_max_power			=	0.01
radiation_linear_factor		=	1
radiation_quadratic_factor	=	1
radiation_pp_effector_name	= 	postprocess_rad
radiation_pp_highest_at		= 	0.02

;---------------------------------------------------------------------
; Physics
;---------------------------------------------------------------------
; movement
ph_box0_center 		        = 0.0,  0.3,  0.0
ph_box0_size 		        = 0.30, 0.3,  0.30
ph_box1_center 		        = 0.0,  0.3,  0.0
ph_box1_size 		        = 0.30, 0.3,  0.30
ph_crash_speed_min			= 10
ph_crash_speed_max			= 30
ph_collision_damage_factor	= 0.1
ph_mass 		            = 50;30						; also it's the food

destroyed_vis_name	 = dynamics\Dead_Body\skelet_crash_monster

;---------------------------------------------------------------------
ph_skeleton_airr_lin_factor   = 2.0 ;550.0 (������� ��-�� ����, ��� ������ ���������� ����������� 0.002 �� ����)
ph_skeleton_airr_ang_factor   = 0.0 ;0.0 (������� ��-�� ����, ��� ������ ���������� �� ����������� 0.3 �� ���� (0.0*0.3=0.0))
ph_skeleton_hinger_factor1    = 1.0 ;1.0 (������� ��-�� ����, ��� ������ ���������� �� ����������� 5.0 �� ����)
ph_skeleton_ddelay	     	  = 15.0 ;����� ��������� �������� ������ � ������� � ������� �������� �����, ���

ph_skel_fatal_impulse_factor  = 6.0
ph_after_death_velocity_factor= 0.75
ph_skel_shot_up_factor        = 0.25
;---------------------------------------------------------------------

;----------------------------------------------------------------------------
; Movement::Velocities & Acceleration
;----------------------------------------------------------------------------

; speed factors			linear | angular_real | angular_path | min |  max
Velocity_Stand			= 0,		3.0,			3.0,		1,		1		;0,	1.79,	1,		1
Velocity_WalkFwdNormal	= 1.2,		1.5,			1.5,		0.2,	2.0
Velocity_WalkFwdDamaged	= 1.2,		2.14,			2.14,		0.2,	2.0
Velocity_RunFwdNormal	= 8.5,		2.5,			2.5,		0.2,	1
Velocity_RunFwdDamaged	= 4.5,  	3.0,			3.0,		0.2,	1
Velocity_Drag			= 1.5,		2.14,			2.14,		1,		1
Velocity_Steal			= 1.3,		2.14,			2.14,		1,		1

; acceleration
Accel_Generic			= 1.5
Accel_Calm				= 2.5
Accel_Aggressive		= 20.5

;--------------------------------------------------------------------------
; Attack parameters
;--------------------------------------------------------------------------
hit_type                = wound

MinAttackDist		    = 1.4
MaxAttackDist		    = 2.0

as_min_dist				= 0.3
as_step					= 0.4

DayTime_Begin		    = 3			; ����� ��� ��� �������
DayTime_End			    = 22		; ����� ��� ��� �������
Min_Satiety		        = 0.00055	;0.6		; ���. ����� �v����� (������ - ��� ������v�)
Max_Satiety		        = 0.9		; ����. ����� �v����� (������ - ����� �v�v�)

distance_to_corpse	    = 1.8		; ����. �� �����, ��� ������� �� ��������� � ��������� ��v

;------------------------------------------------------------------------
; Attack On Move
;------------------------------------------------------------------------
aom_enabled								=	1
aom_animation_left         				=	stand_run_attack_
aom_animation_right       				=	stand_run_attack_
aom_far_radius							=	7
aom_max_go_close_time					=	8
aom_prepare_time						=	2
aom_attack_radius						=	1
aom_update_side_period					=	3
aom_prediction_factor					=	1.2

;-------------------------------------------------------------------------
; Entity Conditions
;-------------------------------------------------------------------------
satiety_v 		                = 0.0001				;0.01			;�������� ���������� �v����� �� ��������
radiation_v 		            = 0.00001		;0.004			;�������� ���������� ��������
satiety_power_v 	            = 0.005		;0.01			;���������� ���v ��� ���������� �v�����
satiety_health_v 	            = 0.00001	;0.03			;���������� �������� ��� ���������� �v�����
satiety_critical 	            = -1.0		;0.25			;����������� �������� �v����� (� ��������� �� 0..1) ����� �������� ��������� �����������
radiation_health_v 	            = 0.01	;0.006			;���������� �������� ��� ����������� ��������
morale_v		                = 0.1					;�������� �������������� ������
health_hit_part 	            = 0.8		;0.8			;������� ����, �����	�� �� ��������� ��������
power_hit_part 		            = 1.0		;0.9			;������� ����, �����	�� �� ��������� ���v
psy_health_v                    = 0.1						;�������� �������������� psy-��������
health_restore_v                = 0.00002

;����v�v� ���v
bleeding_v					    = 0.0105					;������ ����� ��� ����������� ���� � �������
wound_incarnation_v			    = 0.0025			;�������� ������ ���������� (����� ������� ���� ��������� ����� ���������� � ������� �������)
min_wound_size				    = 0.009

sleep_health 					= 1.0				;�����������v ��������� ��������� ��������� �� ���� ���
sleep_power 					= 1.0
sleep_satiety 					= 1.0
sleep_radiation 				= 1.0
sleep_psy_health			    = 1.0

eat_freq						= 5.0	; ����� ������ � ���
eat_slice						= 0.01	; ���������� �v����� ��� 1 �����
eat_slice_weight				= 10.0	; ���������� ��v � �����

satiety_threshold	            = 0.5							; below this value monster fill hunger

ImpulseMin			 = 2.0
ImpulseMax			 = 4.0

;---------------------------------------------------------
; Sounds and sound parameters
;---------------------------------------------------------
sound_idle				= monsters\cat\c2_idle_
sound_eat				= monsters\cat\c_eat_
sound_aggressive		= monsters\cat\c2_attack_
sound_attack_hit		= monsters\cat\c2_attack_
sound_take_damage		= monsters\cat\c2_hit_
sound_die				= monsters\cat\c2_die_
sound_threaten			= monsters\cat\c2_threat
sound_landing			= monsters\cat\c2_idle_
sound_steal				= monsters\cat\c2_attack_
sound_panic				= monsters\cat\c2_threat_
sound_growling			= monsters\cat\c2_attack_
sound_die_in_anomaly	= monsters\cat\c2_die_

killer_clsids			= Z_MINCER,Z_GALANT,ZS_BFUZZ,ZS_MBALD,ZS_GALAN,ZS_MINCE


idle_sound_delay		= 120000
eat_sound_delay			= 3000
attack_sound_delay		= 6000

sound_distant_idle  = ambient\soundscape\mutants\cat\distant_
distant_idle_sound_delay  = 50000
distant_idle_sound_range		= 50.0


SoundThreshold		 = 0.06						; range [0..1]
max_hear_dist		 = 95

;-------------------------------------------------------------------------
; Morale
;-------------------------------------------------------------------------
Morale_Hit_Quant				= 0.12
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.45

;----------------------------------------------------------------------------
; Jump Parameters
;----------------------------------------------------------------------------
; jump parameters
jump_delay					= 2500
jump_factor					= 2.0
jump_ground_trace_range		= 1.5
jump_hit_trace_range		= 2.0
jump_build_line_distance	= 5.0
jump_min_distance			= 2.0
jump_max_distance			= 8.0
jump_max_angle				= 0.33
jump_max_height				= 5.0
jump_auto_aim_factor		= 0.6

;-------------------------------------------------------------------------
; Other Stuff (refactoring needed)
;-------------------------------------------------------------------------
DamagedThreshold		= 0.35
critical_wound_threshold		= -1
critical_wound_decrease_quant	= 0.


material				= creatures\medium
DynamicObjectsCount		= 8

squad_attack_algorithm	= 1
attack_effector			= cat_attack_effector
damage					= cat_damage

attack_params			= cat_attack_params
step_params				= cat_step_params

LegsCount				= 4

;species of monster
species					= cat
spec_rank				= normal
community				= cat

terrain				 = cat_terrain

protections_sect 		= cat_protections
immunities_sect			= cat_immunities


;-------------------------------------------------------------------------
; Vision
;-------------------------------------------------------------------------
eye_fov				 = 220
eye_range			 = 120

vision_free_section			= cat_vision_free
vision_danger_section		= cat_vision_danger

; �������� visibility_threshold ������ ���� ����� ��� ������� � ���,
; ����� ��������� ��������� � ������� ��������� ��� �������� �� ������� �� ���.

[cat_vision_free]
min_view_distance   		= 0.75				; �����������, ������� �������� �� eye_range, � ����������� �� ����
max_view_distance	 		= 1.0				; �����������, ������� �������� �� eye_range, � ����������� �� ����
visibility_threshold	 	= 170.0				; ��������, ��� ���������� ������ �������� ������ ��������� �������
always_visible_distance 	= 0.7
time_quant					= 0.0007
decrease_value				= 0.01				; ��������, �� ������� ����������� ���, ���� ������ ����� � �������, �� ������ �� �����-�� ��������
velocity_factor		     	= 0.5
luminocity_factor			= 0.5 				; ������ ��������� (������ ��� �����)
transparency_threshold		= 0.15

[cat_vision_danger]
min_view_distance   		= 1.4				; �����������, ������� �������� �� eye_range, � ����������� �� ����
max_view_distance	 		= 1.8				; �����������, ������� �������� �� eye_range, � ����������� �� ����
visibility_threshold	 	= 90.0				; ��������, ��� ���������� ������ �������� ������ ��������� �������
always_visible_distance 	= 0.7
time_quant					= 0.0007
decrease_value				= 0.01				; ��������, �� ������� ����������� ���, ���� ������ ����� � �������, �� ������ �� �����-�� ��������
velocity_factor		     	= 0.4
luminocity_factor			= 0.1 				; ������ ��������� (������ ��� �����)
transparency_threshold		= 0.15

feel_enemy_who_just_hit_max_distance = 350

[cat_attack_params]
;---------------------------------------------------------------------------------------------------------------------------------------------
;	anim			| time[0..1] | hit_power | impulse | impulse_dir (x,y,z)  |	Field of hit_test  (left,right, top, bottom) |	Test Dist
;---------------------------------------------------------------------------------------------------------------------------------------------
;Left leg strike
stand_attack_0 =	  	0.25,		0.52,		    30,         0.0, 0.5, 1.0,		 -1.2, 1.2, -1.2, 1.2,						2.5
;Both leg strike
stand_attack_1 =	  	0.30,		0.52,		    30,       	0.0, 0.5, 1.0,		 -1.2, 1.2, -1.2, 1.2,						3.5
stand_attack_rat_0  =	0.40,		0.52,			30,			0.0, -0.5,1.0,       -0.6, 0.6, -1.6, 0.6,						2.0
jump_attack_2		=	0.50,		0.85,			80,			0.0, -0.5,1.0,       -0.6, 0.6, -1.6, 0.6,						2.0
;Run attack
stand_run_attack_0 =  	0.25,		0.5,		    60,         0.0, 0.5, 1.0,		 -1.2, 1.2, -1.2, 1.2,						2.0

;===========================================================================
; SPECIAL EFFECTORS
;===========================================================================
[cat_attack_effector]

duality_h		= 0.01
duality_v		= 0.01
blur			= 0.01
gray			= 0.5
noise_intensity = 0.0
noise_grain		= 1
noise_fps		= 30
color_base		= 0.65,0.15,0.1
color_gray		= 0.333,0.333,0.333
color_add		= 0,0,0
time			= 0.3
time_attack		= 0.05		; fade in
time_release    = 0.25		; fade out

; camera effects
ce_time				= 0.45	;time
ce_amplitude		= -10.0
ce_period_number	= 2.0
ce_power			= 1.5	; power

;===========================================================================
; Step Events
;===========================================================================
[cat_step_params]
;-------------------------------------------------------------------------------------------------------------
;	anim			| cycles | time1 | power1 | time2 | power2 | time3 | power3 | time4 | power4 |
;-------------------------------------------------------------------------------------------------------------
stand_walk_fwd_0	=	   8,	    0.2,     1,	    0.25,    0.7,    0.5,     1.0,     0.7,    1.0
stand_walk_dmg_0	=      7,	    0.2,     1,	    0.25,    0.7,    0.5,     1.0,     0.7,    1.0
stand_run_0			=	   6,	    0.2,     1,	    0.25,    0.7,    0.5,     1.0,     0.7,    1.0
stand_run_dmg_0		=	   6,	    0.2,     1,	    0.25,    0.7,    0.7,     1.0,     0.7,    1.0
stand_steal_0		=	   1,	    0.2,     1,	    0.25,    0.7,    0.7,     1.0,     0.7,    1.0
stand_drag_0		=	   1,	    0.2,     1,	    0.25,    0.7,    0.7,     1.0,     0.7,    1.0

;*********************************************************************************
; PROTECTIONS
;*********************************************************************************
[cat_protections]
skin_armor = 0.01
hit_fraction_monster = 0.9

;===========================================================================
; IMMUNITIES
;===========================================================================
[cat_immunities]
burn_immunity           = 3.0 ; 		= 0.9				;�����������v ����������
strike_immunity 	    = 0.85
shock_immunity          = 3.0 ; 		= 0.65
wound_immunity 		    = 1.3	;0.75	;1.0
radiation_immunity 	    = 0.0	;1.0
telepatic_immunity 	    = 0.0
chemical_burn_immunity  = 5.55 ; = 3.0 ; 	= 0.65
explosion_immunity 	    = 1
fire_wound_immunity  	= 2

;=================================================================================
; CAT Damage
;=================================================================================
[cat_damage]
;bone_name		 = <hit_scale>,-1,<wound_scale>
;<hit_scale>	- �����. ��������� ���� (���������� ��������)
;<wound_scale>	- �����. ��������� �������� �������� ����

default				= 0.75, -1, 0.3

bip01_pelvis 		= 1.0, -1, 0.4
bip01_spine 		= 1.0, -1, 0.4
bip01_spine1 		= 1.0, -1, 0.4
bip01_neck 			= 1.0, -1, 1.0
bip01_head 			= 2.0, -1, 0.5
bone01 				= 1.9, -1, 0.4
bone03 				= 1.9, -1, 0.4
bone05 				= 1.9, -1, 0.4
bip01_ponytail1 	= 0.3, -1, 0.1
bip01_ponytail2		= 0.3, -1, 0.1

;=================================================================================
; CAT Terrain
;=================================================================================
[cat_terrain]
255,000,255,255

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------- Normal -------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

[cat_normal_a]:cat_test
$spawn        = "monsters\cat\cat_normal_a"
visual = monsters\cat\cat_normal
spec_rank				= normal
MaxHealthValue		= 1			; range [0..200

[cat_normal_b]:cat_test
$spawn        = "monsters\cat\cat_normal_b"
visual = monsters\cat\cat_normal2
spec_rank				= normal
MaxHealthValue		= 1			; range [0..200

[cat_normal_c]:cat_test
$spawn        = "monsters\cat\cat_normal_c"
visual = monsters\cat\cat_normal3
spec_rank				= normal
MaxHealthValue		= 1			; range [0..200

[cat_normal_d]:cat_test
$spawn        = "monsters\cat\cat_normal_d"
visual = monsters\cat\cat_normal4
spec_rank				= normal
MaxHealthValue		= 1			; range [0..200

[cat_normal_e]:cat_test
$spawn        = "monsters\cat\cat_normal_e"
visual = monsters\cat\cat_normal5
spec_rank				= normal
MaxHealthValue		= 1			; range [0..200

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------- Weak ---------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[cat_weak_base]:cat_test
$spawn        = "monsters\cat\cat_weak_base"
visual = monsters\cat\cat_weak
spec_rank				= weak

;immunities_sect					= cat_weak_immunities
;attack_params			= cat_weak_attack_params


[cat_weak_a]:cat_weak_base
$spawn        = "monsters\cat\cat_weak_a"
visual = monsters\cat\cat_weak

[cat_weak_b]:cat_weak_base
$spawn        = "monsters\cat\cat_weak_b"
visual = monsters\cat\cat_weak2

[cat_weak_c]:cat_weak_base
$spawn        = "monsters\cat\cat_weak_c"
visual = monsters\cat\cat_weak3

[cat_weak_d]:cat_weak_base
$spawn        = "monsters\cat\cat_weak_d"
visual = monsters\cat\cat_weak4

[cat_weak_e]:cat_weak_base
$spawn        = "monsters\cat\cat_weak_e"
visual = monsters\cat\cat_weak5

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;------------- Strong ---------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[cat_strong_base]:cat_test
$spawn        = "monsters\cat\cat_strong_base"
visual = monsters\cat\cat_strong
spec_rank				= strong



[cat_strong_a]:cat_strong_base
$spawn        = "monsters\cat\cat_strong_a"
visual = monsters\cat\cat_strong


[cat_strong_b]:cat_strong_base
$spawn        = "monsters\cat\cat_strong_b"
visual = monsters\cat\cat_strong2

[cat_strong_c]:cat_strong_base
$spawn        = "monsters\cat\cat_strong_c"
visual = monsters\cat\cat_strong3


[cat_strong_d]:cat_strong_base
$spawn        = "monsters\cat\cat_strong_d"
visual = monsters\cat\cat_strong4


[cat_strong_e]:cat_strong_base
$spawn        = "monsters\cat\cat_strong_e"
visual = monsters\cat\cat_strong5


[cat_strong_afro]:cat_strong_base
$spawn        = "monsters\cat\cat_strong_afro"
visual = monsters\cat\afro_cat_1