add game&rawdata

This commit is contained in:
Vasily Petrov 2026-06-17 23:06:51 +03:00
parent 0133cd976c
commit 49b34b5546
45731 changed files with 709831 additions and 0 deletions

View file

@ -0,0 +1,55 @@
[logic@burer]
active = mob_home
suitable = {=check_npc_name(lx8_burer)} true
prior = 100
monster_job = true
on_hit = hit_1
[mob_home]
path_home = burer_home
actor_friendly = false
home_min_radius = 30
home_max_radius = 30
aggressive = true
out_restr = lx8_sr_burer_out_restr
[hit_1]
on_info = {=hit_by_actor !actor_in_zone(lx8_sr_burer_out_restr)} %=restore_health%
[logic@burer_2]
active = mob_home@2
suitable = {=check_npc_name(lx8_burer_2)} true
prior = 100
monster_job = true
on_hit = hit_2
[mob_home@2]
path_home = burer_home
actor_friendly = false
home_min_radius = 30
home_max_radius = 30
aggressive = true
out_restr = lx8_sr_burer_out_restr
[hit_2]
on_info = {=hit_by_actor !actor_in_zone(lx8_sr_burer_out_restr)} %=restore_health%
[logic@burer_3]
active = mob_home@3
suitable = {=check_npc_name(lx8_burer_3)} true
prior = 100
monster_job = true
on_hit = hit_3
[mob_home@3]
path_home = burer_home
actor_friendly = false
home_min_radius = 30
home_max_radius = 30
aggressive = true
out_restr = lx8_sr_burer_out_restr
[hit_3]
on_info = {=hit_by_actor !actor_in_zone(lx8_sr_burer_out_restr)} %=restore_health%

View file

@ -0,0 +1,18 @@
[logic@controller]
active = mob_home
suitable = {=check_npc_name(lx8_controller)} true
prior = 100
monster_job = true
on_death = death
[mob_home]
path_home = controller_home
actor_friendly = false
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_controller_out_restr
combat_ignore_cond = {=check_enemy_name(lx8_snork_1_jump:lx8_snork_2_jump:lx8_snork)} true
[death]
on_info = %+lx8_controller_dead%

View file

@ -0,0 +1,20 @@
[logic]
active = ph_button@no_card
[ph_button@no_card]
anim = idle
tooltip = tip_no_access_card
on_info = {=actor_has_item(zat_a23_labx8_key)} ph_button@has_card
[ph_button@has_card]
anim = idle
tooltip = tip_need_access_card
on_press = ph_button@unlocked
on_info = {!actor_has_item(zat_a23_labx8_key)} ph_button@no_card
[ph_button@unlocked]
anim = idle
tooltip = st_lx8_button_press_true
on_game_timer = 20 | {-lx8_door_open} %+lx8_door_open =anim_obj_forward(lx8_physic_door)%
on_game_timer2 = 10 | {-lx8_green_on} %+lx8_green_on =turn_off(lx8_light_switch_1_red_id) =turn_on(lx8_light_switch_1_green_id)%
on_info = {=actor_in_zone(lx8_sr_actor_in_lab) -lx8_actor_in_lab} %+lx8_actor_in_lab =create_squad(lx8_polter_squad:lx8_smart_terrain)%

View file

@ -0,0 +1,26 @@
[logic]
active = ph_idle@in
[ph_idle@locked]
on_info = {=actor_has_item(zat_a23_labx8_key)} ph_idle@closed
tips = tip_no_access_card
nonscript_usable = true
[ph_idle@closed]
on_info = {!actor_has_item(zat_a23_labx8_key)} ph_idle@locked
on_use = ph_idle@teleport %=scenario_autosave(st_save_uni_labx8_to_pri) =disable_ui =run_postprocess(fade_in)%
tips = st_lx8_lift_button
nonscript_usable = true
[ph_idle@teleport]
on_game_timer = 20 | ph_idle@in %=run_postprocess(black:3009:true) =teleport_actor(lx8_actor_walk:lx8_actor_look)%
[ph_idle@in]
on_info = {!actor_in_zone(labx8_sr_levelchanger)} ph_idle@wait %=run_postprocess(black:3009:true) =disable_ui%
[ph_idle@wait]
on_game_timer = 10 | ph_idle@out %=stop_postprocess(3009)%
[ph_idle@out]
on_game_timer = 10 | ph_idle@locked %=enable_ui%

View file

@ -0,0 +1,29 @@
[logic@polter]
active = mob_home
suitable = {=check_npc_name(lx8_poltergeist)} true
prior = 100
monster_job = true
[mob_home]
path_home = polter_home
actor_friendly = false
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_polter_out_restr
on_timer = 20000 | {!actor_in_zone(lx8_sr_polter_danger_zone)} mob_home@hold %-lx8_polter_ignore%
on_info = {-lx8_polter_ignore =actor_in_zone(lx8_sr_burer_out_restr) =is_alive(lx8_burer) =is_alive(lx8_burer_2) =is_alive(lx8_burer_3)} %+lx8_polter_ignore =polter_actor_ignore(true)%
on_info2 {-lx8_polter_ignore =actor_in_zone(lx8_sr_toilet_burer_out_restr) =is_alive(lx8_toilet_burer)} %+lx8_polter_ignore =polter_actor_ignore(true)%
on_info3 = {+lx8_polter_ignore !actor_in_zone(lx8_sr_burer_out_restr) !actor_in_zone(lx8_sr_toilet_burer_out_restr)} %-lx8_polter_ignore =polter_actor_ignore(false)%
[mob_home@hold]
path_home = polter_home
actor_friendly = true ;false
home_min_radius = 30
home_max_radius = 40
aggressive = false
braindead = true
out_restr = lx8_sr_polter_out_restr
on_timer = 75000 | mob_home
on_info = {=actor_in_zone(lx8_sr_polter_danger_zone)} mob_home
on_info2 = {-lx8_polter_ignore} %+lx8_polter_ignore =polter_actor_ignore(true)%

View file

@ -0,0 +1,6 @@
[logic]
active = ph_idle
[ph_idle]
nonscript_usable = false
tips = lx8_raduga

View file

@ -0,0 +1,27 @@
[logic]
active = ph_door@close
[ph_door@close]
locked = false
closed = true
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
on_use = {-lx8_scentific_door_open} ph_door@open %+lx8_scentific_door_open%, ph_door@open
[ph_door@open]
locked = false
closed = false
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
on_use = ph_door@close
[ph_door@free]
locked = false
closed = false
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
no_force = true
on_use = ph_door@open

View file

@ -0,0 +1,13 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_info = sr_idle@check %=disable_anomaly(lx8_scentific_room_electric_zone)%
[sr_idle@check]
on_info = {+lx8_scentific_door_open} sr_idle@wait %=enable_anomaly(lx8_scentific_room_electric_zone)%
[sr_idle@wait]
on_info = {=actor_has_item(pri_a19_american_experiment_info)} sr_idle@nil %+pri_a19_american_experiment_info =inc_counter(lx8_documents)%
[sr_idle@nil]

View file

@ -0,0 +1,48 @@
[smart_terrain]
arrive_dist = 120
[exclusive]
snork = labx8\lx8_snork_down.ltx
snork_1_jump = labx8\lx8_snork_1_jump.ltx
snork_2_jump = labx8\lx8_snork_2_jump.ltx
polter = labx8\lx8_poltergeist.ltx
burer = labx8\lx8_burers.ltx
burer_2 = labx8\lx8_burers.ltx
burer_3 = labx8\lx8_burers.ltx
toilet_burer = labx8\lx8_toilet_burer.ltx
controller = labx8\lx8_controller.ltx
tushkano_1_1 = labx8\lx8_tushkano_1.ltx
tushkano_1_2 = labx8\lx8_tushkano_1.ltx
tushkano_1_3 = labx8\lx8_tushkano_1.ltx
tushkano_1_4 = labx8\lx8_tushkano_1.ltx
tushkano_2_1 = labx8\lx8_tushkano_2.ltx
tushkano_2_2 = labx8\lx8_tushkano_2.ltx
tushkano_2_3 = labx8\lx8_tushkano_2.ltx
tushkano_2_4 = labx8\lx8_tushkano_2.ltx
tushkano_lab_1 = labx8\lx8_tushkano_lab.ltx
tushkano_lab_2 = labx8\lx8_tushkano_lab.ltx
tushkano_lab_3 = labx8\lx8_tushkano_lab.ltx
tushkano_lab_4 = labx8\lx8_tushkano_lab.ltx
tushkano_lab_5 = labx8\lx8_tushkano_lab.ltx
tushkano_upper_1 = labx8\lx8_tushkano_upper.ltx
tushkano_upper_2 = labx8\lx8_tushkano_upper.ltx
tushkano_upper_3 = labx8\lx8_tushkano_upper.ltx
tushkano_upper_4 = labx8\lx8_tushkano_upper.ltx
tushkano_upper_5 = labx8\lx8_tushkano_upper.ltx
tushkano_lift_1 = labx8\lx8_tushkano_lift.ltx
tushkano_lift_2 = labx8\lx8_tushkano_lift.ltx
tushkano_lift_3 = labx8\lx8_tushkano_lift.ltx
tushkano_lift_4 = labx8\lx8_tushkano_lift.ltx
tushkano_lift_5 = labx8\lx8_tushkano_lift.ltx

View file

@ -0,0 +1,38 @@
[logic@snork_1_jump]
active = mob_walker@stay
suitable = {=check_npc_name(lx8_snork_1_jump)} true
prior = 100
monster_job = true
[hit]
on_info = mob_home@attack
[mob_walker@stay]
path_walk = snork_1_jump_1_walk
path_look = snork_1_jump_1_look
combat_ignore_cond = true
;out_restr = lx8_sr_snork_out_restr
on_actor_in_zone = lx8_sr_down_ladder | mob_walker@run
[mob_walker@run]
path_walk = snork_1_jump_2_walk
path_look = snork_1_jump_2_look
combat_ignore_cond = true
;out_restr = lx8_sr_snork_out_restr
on_signal = jump | mob_jump@01
[mob_jump@01]
path_jump = snork_1_jump
ph_jump_factor = 1
offset = 0,1,0
on_signal = jumped | mob_home@attack
out_restr = lx8_sr_snork_out_restr
combat_ignore_cond = true
[mob_home@attack]
path_home = snork_home
home_min_radius = 20
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_snork_out_restr
combat_ignore_cond = {=check_enemy_name(lx8_controller)} true

View file

@ -0,0 +1,42 @@
[logic@snork_2_jump]
active = mob_walker@jump
suitable = {=check_npc_name(lx8_snork_2_jump)} true
prior = 100
monster_job = true
[hit]
on_info = mob_home@attack
[mob_walker@jump]
path_walk = snork_2_jump_1_walk
path_look = snork_2_jump_1_look
combat_ignore_cond = true
on_info = {=actor_in_zone(lx8_sr_down_ladder)} mob_jump@01
on_info2 = {=actor_in_zone(lx8_sr_close_combat)} mob_home@combat
out_restr = lx8_sr_close_combat
[mob_jump@01]
path_jump = snork_2_jump
ph_jump_factor = 1
offset = 0,2,0
on_signal = jumped | mob_home@attack
;out_restr = lx8_sr_close_combat
[mob_home@attack]
path_home = snork_home
home_min_radius = 20
home_max_radius = 40
braindead = false
aggressive = true
out_restr = lx8_sr_snork_out_restr
combat_ignore_cond = {=check_enemy_name(lx8_controller)} true
[mob_home@combat]
path_home = snork_combat_home
home_min_radius = 20
home_max_radius = 40
braindead = false
aggressive = true
out_restr = lx8_sr_close_combat
on_info = {!actor_in_zone(lx8_sr_close_combat)} mob_walker@jump %+restore_health%
combat_ignore_cond = {=check_enemy_name(lx8_controller)} true

View file

@ -0,0 +1,30 @@
[logic@snork]
active = mob_walker@wait
suitable = {=check_npc_name(lx8_snork)}
prior = 50
monster_job = true
[mob_walker@wait]
path_walk = snork_jump_01_walk
path_look = snork_jump_01_look
combat_ignore_cond = true
on_info = {=actor_in_zone(lx8_sr_up_ladder)} mob_walker@run
on_info2 = {=actor_in_zone(lx8_sr_close_combat)} mob_home@combat
;out_restr = lx8_sr_close_combat
[mob_walker@run]
path_walk = snork_jump_02_walk
path_look = snork_jump_02_look
combat_ignore_cond = true
on_signal = kill | %=kill_npc%
;out_restr = lx8_sr_close_combat
[mob_home@combat]
path_home = snork_combat_home
home_min_radius = 30
home_max_radius = 40
braindead = false
aggressive = true
out_restr = lx8_sr_close_combat
combat_ignore_cond = {=check_enemy_name(lx8_controller)} true

View file

@ -0,0 +1,29 @@
[logic]
active = sr_idle@quest
[sr_idle@quest]
on_actor_in_zone = labx8_sr_quest | sr_idle@one %=set_counter(lx8_documents)%
[sr_idle@one]
on_info = {=counter_equal(lx8_documents:1)} sr_idle@two %+lx8_doc_1%
[sr_idle@two]
on_info = {=counter_equal(lx8_documents:2)} sr_idle@three %+lx8_doc_2%
[sr_idle@three]
on_info = {=counter_equal(lx8_documents:3)} sr_idle@four %+lx8_doc_3%
[sr_idle@four]
on_info = {=counter_equal(lx8_documents:4)} sr_idle@five %+lx8_doc_4%
[sr_idle@five]
on_info = {=counter_equal(lx8_documents:5)} sr_idle@six %+lx8_doc_5%
[sr_idle@six]
on_info = {=counter_equal(lx8_documents:6)} sr_idle@controller %+lx8_doc_6 =anim_obj_backward(lx8_physic_door) =create_squad(lx8_controller_squad:lx8_smart_terrain)%
[sr_idle@controller]
on_info = {+lx8_controller_dead} sr_idle@nil %=anim_obj_forward(lx8_physic_door)%
[sr_idle@nil]

View file

@ -0,0 +1,11 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_actor_in_zone = lx8_sr_toilet_burer_out_restr | sr_idle@stop %=play_sound_looped(labx8_crying)%
[sr_idle@stop]
on_info = {+lx8_toilet_door_open} sr_idle@nil %=stop_sound_looped%
on_info2 = {+pri_a19_lab_x16_info} sr_idle@nil %=stop_sound_looped%
[sr_idle@nil]

View file

@ -0,0 +1,7 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_info = {=actor_has_item(pri_a19_lab_x10_info)} sr_idle@nil %+pri_a19_lab_x10_info =inc_counter(lx8_documents)%
[sr_idle@nil]

View file

@ -0,0 +1,7 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_info = {=actor_has_item(pri_a19_lab_x7_info)} sr_idle@nil %+pri_a19_lab_x7_info =inc_counter(lx8_documents)%
[sr_idle@nil]

View file

@ -0,0 +1,7 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_info = {=actor_has_item(pri_a19_lab_x18_info)} sr_idle@nil %+pri_a19_lab_x18_info =inc_counter(lx8_documents)%
[sr_idle@nil]

View file

@ -0,0 +1,7 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_info = {=actor_has_item(lx8_service_instruction)} sr_idle@nil %=inc_counter(lx8_documents)%
[sr_idle@nil]

View file

@ -0,0 +1,7 @@
[logic]
active = sr_idle@start
[sr_idle@start]
on_info = {=actor_has_item(pri_a19_lab_x16_info)} sr_idle@nil %+pri_a19_lab_x16_info =inc_counter(lx8_documents)%
[sr_idle@nil]

View file

@ -0,0 +1,19 @@
[logic]
active = sr_idle@one
[sr_idle@one]
on_actor_in_zone = lx8_sr_lab | sr_idle@two %+lx8_lab_tushkano_spawn =create_squad(lx8_tushkano_lab_squad:lx8_smart_terrain)%
on_actor_in_zone2 = lx8_sr_upper | sr_idle@two %+lx8_upper_tushkano_spawn =create_squad(lx8_tushkano_upper_squad:lx8_smart_terrain)%
on_actor_in_zone3 = lx8_sr_lift | sr_idle@two %+lx8_lift_tushkano_spawn =create_squad(lx8_tushkano_lift_squad:lx8_smart_terrain)%
[sr_idle@two]
on_actor_in_zone = lx8_sr_lab | {-lx8_lab_tushkano_spawn} sr_idle@three %+lx8_lab_tushkano_spawn =create_squad(lx8_tushkano_lab_squad:lx8_smart_terrain)%
on_actor_in_zone2 = lx8_sr_upper | {-lx8_upper_tushkano_spawn} sr_idle@three %+lx8_upper_tushkano_spawn =create_squad(lx8_tushkano_upper_squad:lx8_smart_terrain)%
on_actor_in_zone3 = lx8_sr_lift | {-lx8_lift_tushkano_spawn} sr_idle@three %+lx8_lift_tushkano_spawn =create_squad(lx8_tushkano_lift_squad:lx8_smart_terrain)%
[sr_idle@three]
on_actor_in_zone = lx8_sr_lab | {-lx8_lab_tushkano_spawn} sr_idle@nil %+lx8_lab_tushkano_spawn =create_squad(lx8_tushkano_lab_squad:lx8_smart_terrain)%
on_actor_in_zone2 = lx8_sr_upper | {-lx8_upper_tushkano_spawn} sr_idle@nil %+lx8_upper_tushkano_spawn =create_squad(lx8_tushkano_upper_squad:lx8_smart_terrain)%
on_actor_in_zone3 = lx8_sr_lift | {-lx8_lift_tushkano_spawn} sr_idle@nil %+lx8_lift_tushkano_spawn =create_squad(lx8_tushkano_lift_squad:lx8_smart_terrain)%
[sr_idle@nil]

View file

@ -0,0 +1,49 @@
[logic@toilet_burer]
active = mob_walker@wait
suitable = {=check_npc_name(lx8_toilet_burer)} true
prior = 100
monster_job = true
on_death = mob_death
[mob_walker@wait]
path_walk = toilet_burer_1_walk
path_look = toilet_burer_1_look
out_restr = lx8_sr_toilet_out_restr
combat_ignore_cond = true
on_info = {+lx8_toilet_door_open} mob_walker@anti_aim ;mob_home
on_info2 = {+pri_a19_lab_x16_info} mob_home
[mob_walker@anti_aim]
path_walk = toilet_burer_1_walk
path_look = toilet_burer_1_look
out_restr = lx8_sr_toilet_out_restr
on_info = {=actor_see_npc =see_actor} mob_walker@timer_gravi_attack %=burer_force_anti_aim%
[mob_walker@timer_gravi_attack]
path_walk = toilet_burer_1_walk
path_look = toilet_burer_1_look
out_restr = lx8_sr_toilet_out_restr
on_timer = 2000 | mob_home@stay %+lx8_toilet_door_close =burer_force_gravi_attack%
[mob_home@stay]
;[mob_walker@stay]
path_home = toilet_burer_1_walk
;path_look = toilet_burer_1_look
out_restr = lx8_sr_toilet_burer_out_restr
;combat_ignore_cond = true
out_restr = lx8_sr_toilet_out_restr
on_info = {+lx8_toilet_door_open_again} mob_home
on_info2 = {+pri_a19_lab_x16_info} mob_home
[mob_home]
path_home = toilet_burer_home
actor_friendly = false
home_min_radius = 20
home_max_radius = 30
aggressive = true
out_restr = lx8_sr_toilet_burer_out_restr
[mob_death]
on_info = %+lx8_toilet_burer_dead%

View file

@ -0,0 +1,61 @@
[logic]
active = ph_door@close
[ph_door@close]
locked = false
closed = true
snd_open_start = metal_small_open ;trader_door_open_start
snd_close_start = metal_small_close_start ;trader_door_close_start
snd_close_stop = metal_small_close_stop ;trader_door_close_stop
on_use = ph_door@open %+lx8_toilet_door_open% ;{-lx8_toilet_door_open} ph_door@open ,
on_info = {+lx8_toilet_burer_dead} ph_door@free
on_info2 = {+pri_a19_lab_x16_info} ph_door@open_2
[ph_door@open]
locked = false
closed = false
snd_open_start = metal_small_open ;trader_door_open_start
snd_close_start = metal_small_close_start ;trader_door_close_start
snd_close_stop = metal_small_close_stop ;trader_door_close_stop
;on_use = ph_door@free
on_info = {+lx8_toilet_door_close} ph_door@locked
on_info2 = {+lx8_toilet_burer_dead} ph_door@free
on_info3 = {+pri_a19_lab_x16_info} ph_door@open_2
[ph_door@locked]
locked = true
closed = true
snd_open_start = metal_small_open
snd_close_start = metal_small_close_start
snd_close_stop = metal_small_close_stop
;on_use = ph_door@open
hit_on_bone = 4 | ph_door@open_2 %+lx8_toilet_door_open_again% | 2 | ph_door@open_2 %+lx8_toilet_door_open_again%
on_info = {+lx8_toilet_burer_dead} ph_door@free
on_info2 = {+pri_a19_lab_x16_info} ph_door@open_2
[ph_door@open_2]
locked = false
closed = false
snd_open_start = metal_small_open
snd_close_start = metal_small_close_start
snd_close_stop = metal_small_close_stop
on_use = {+lx8_toilet_burer_dead} ph_door@close_2
;on_info = {-lx8_toilet_door_open_again} %+lx8_toilet_door_open_again%
[ph_door@close_2]
locked = false
closed = true
snd_open_start = metal_small_open ;trader_door_open_start
snd_close_start = metal_small_close_start ;trader_door_close_start
snd_close_stop = metal_small_close_stop ;trader_door_close_stop
on_use = ph_door@open_2
[ph_door@free]
locked = false
closed = false
snd_open_start = trader_door_open_start
snd_close_start = trader_door_close_start
snd_close_stop = trader_door_close_stop
no_force = true
on_use = ph_door@open_2

View file

@ -0,0 +1,35 @@
[logic]
active = ph_door@no_key
[ph_door@no_key]
locked = false
closed = true
snd_open_start = trader_door_locked
on_info = {=actor_has_item(pri_b35_lab_x8_key)} ph_door@closed
tip_open = tip_no_access_card
[ph_door@closed]
locked = false
closed = true
snd_open_start = metal_small_open
snd_close_start = metal_small_close_start
snd_close_stop = metal_small_close_stop
on_use = ph_door@open %=remove_item(pri_b35_lab_x8_key)%
on_info = {!actor_has_item(pri_b35_lab_x8_key)} ph_door@no_key
tip_open = tip_need_access_card
[ph_door@open]
locked = false
closed = false
snd_open_start = metal_small_open
snd_close_start = metal_small_close_start
snd_close_stop = metal_small_close_stop
on_use = ph_door@closed_regular
[ph_door@closed_regular]
locked = false
closed = true
snd_open_start = metal_small_open
snd_close_start = metal_small_close_start
snd_close_stop = metal_small_close_stop
on_use = ph_door@open

View file

@ -0,0 +1,91 @@
[logic@tushkano_1_1]
suitable = {=check_npc_name(lx8_1_tushkano_1)}
active = mob_home@tushkano_1_1
monster_job = true
prior = 75
[mob_home@tushkano_1_1]
path_home = tushkano_1_home
home_min_radius = 2
home_max_radius = 4
aggressive = false ;true
combat_ignore_cond = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {=actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_11_1
[mob_home@tushkano_11_1]
path_home = tushkano_1_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {!actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_1_1
[logic@tushkano_1_2]
suitable = {=check_npc_name(lx8_1_tushkano_2)}
active = mob_home@tushkano_1_2
monster_job = true
prior = 75
[mob_home@tushkano_1_2]
path_home = tushkano_1_home
home_min_radius = 2
home_max_radius = 4
aggressive = false ;true
combat_ignore_cond = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {=actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_11_2
[mob_home@tushkano_11_2]
path_home = tushkano_1_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {!actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_1_2
[logic@tushkano_1_3]
suitable = {=check_npc_name(lx8_1_tushkano_3)}
active = mob_home@tushkano_1_3
monster_job = true
prior = 75
[mob_home@tushkano_1_3]
path_home = tushkano_1_home
home_min_radius = 2
home_max_radius = 4
aggressive = false ;true
combat_ignore_cond = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {=actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_11_3
[mob_home@tushkano_11_3]
path_home = tushkano_1_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {!actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_1_3
[logic@tushkano_1_4]
suitable = {=check_npc_name(lx8_1_tushkano_4)}
active = mob_home@tushkano_1_4
monster_job = true
prior = 75
[mob_home@tushkano_1_4]
path_home = tushkano_1_home
home_min_radius = 2
home_max_radius = 4
aggressive = false ;true
combat_ignore_cond = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {=actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_11_4
[mob_home@tushkano_11_4]
path_home = tushkano_1_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_1_out_restr
on_info = {!actor_in_zone(lx8_sr_tushkano_1_out_restr)} mob_home@tushkano_1_4

View file

@ -0,0 +1,52 @@
[logic@tushkano_2_1]
suitable = {=check_npc_name(lx8_2_tushkano_1)}
active = mob_home@tushkano_2_1
monster_job = true
prior = 75
[mob_home@tushkano_2_1]
path_home = tushkano_2_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_2_out_restr
[logic@tushkano_2_2]
suitable = {=check_npc_name(lx8_2_tushkano_2)}
active = mob_home@tushkano_2_2
monster_job = true
prior = 75
[mob_home@tushkano_2_2]
path_home = tushkano_2_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_2_out_restr
[logic@tushkano_2_3]
suitable = {=check_npc_name(lx8_2_tushkano_3)}
active = mob_home@tushkano_2_3
monster_job = true
prior = 75
[mob_home@tushkano_2_3]
path_home = tushkano_2_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_2_out_restr
[logic@tushkano_2_4]
suitable = {=check_npc_name(lx8_2_tushkano_4)}
active = mob_home@tushkano_2_4
monster_job = true
prior = 75
[mob_home@tushkano_2_4]
path_home = tushkano_2_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_tushkano_2_out_restr

View file

@ -0,0 +1,116 @@
[logic@tushkano_lab_1]
suitable = {=check_npc_name(lx8_lab_tushkano_1)}
active = mob_home@tushkano_lab_1
monster_job = true
prior = 75
[mob_home@tushkano_lab_1]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_lab_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lab_out_restr)} mob_home@tushkano_lab_1_1
[mob_home@tushkano_lab_1_1]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lab_1
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lab_2]
suitable = {=check_npc_name(lx8_lab_tushkano_2)}
active = mob_home@tushkano_lab_2
monster_job = true
prior = 75
[mob_home@tushkano_lab_2]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_lab_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lab_out_restr)} mob_home@tushkano_lab_2_1
[mob_home@tushkano_lab_2_1]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lab_2
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lab_3]
suitable = {=check_npc_name(lx8_lab_tushkano_3)}
active = mob_home@tushkano_lab_3
monster_job = true
prior = 75
[mob_home@tushkano_lab_3]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_lab_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lab_out_restr)} mob_home@tushkano_lab_3_1
[mob_home@tushkano_lab_3_1]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lab_3
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lab_4]
suitable = {=check_npc_name(lx8_lab_tushkano_4)}
active = mob_home@tushkano_lab_4
monster_job = true
prior = 75
[mob_home@tushkano_lab_4]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_lab_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lab_out_restr)} mob_home@tushkano_lab_4_1
[mob_home@tushkano_lab_4_1]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lab_4
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lab_5]
suitable = {=check_npc_name(lx8_lab_tushkano_5)}
active = mob_home@tushkano_lab_5
monster_job = true
prior = 75
[mob_home@tushkano_lab_5]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_lab_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lab_out_restr)} mob_home@tushkano_lab_5_1
[mob_home@tushkano_lab_5_1]
path_home = lab_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lab_5
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr

View file

@ -0,0 +1,120 @@
[logic@tushkano_lift_1]
suitable = {=check_npc_name(lx8_litf_tushkano_1)}
active = mob_home@tushkano_lift_1
monster_job = true
prior = 75
[mob_home@tushkano_lift_1]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
out_restr = lx8_lift_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lift_out_restr)} mob_home@tushkano_lift_1_1
[mob_home@tushkano_lift_1_1]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lift_1
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lift_2]
suitable = {=check_npc_name(lx8_litf_tushkano_2)}
active = mob_home@tushkano_lift_2
monster_job = true
prior = 75
[mob_home@tushkano_lift_2]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
out_restr = lx8_lift_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lift_out_restr)} mob_home@tushkano_lift_2_1
[mob_home@tushkano_lift_2_1]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lift_2
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lift_3]
suitable = {=check_npc_name(lx8_litf_tushkano_3)}
active = mob_home@tushkano_lift_3
monster_job = true
prior = 75
[mob_home@tushkano_lift_3]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
out_restr = lx8_lift_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lift_out_restr)} mob_home@tushkano_lift_3_1
[mob_home@tushkano_lift_3_1]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lift_3
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lift_4]
suitable = {=check_npc_name(lx8_litf_tushkano_4)}
active = mob_home@tushkano_lift_4
monster_job = true
prior = 75
[mob_home@tushkano_lift_4]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
out_restr = lx8_lift_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lift_out_restr)} mob_home@tushkano_lift_4_1
[mob_home@tushkano_lift_4_1]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lift_4
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_lift_5]
suitable = {=check_npc_name(lx8_litf_tushkano_5)}
active = mob_home@tushkano_lift_5
monster_job = true
prior = 75
[mob_home@tushkano_lift_5]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
out_restr = lx8_lift_out_restr
on_info = {=see_actor !actor_in_zone(lx8_lift_out_restr)} mob_home@tushkano_lift_5_1
[mob_home@tushkano_lift_5_1]
path_home = lift_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_lift_5
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr

View file

@ -0,0 +1,115 @@
[logic@tushkano_upper_1]
suitable = {=check_npc_name(lx8_upper_tushkano_1)}
active = mob_home@tushkano_upper_1
monster_job = true
prior = 75
[mob_home@tushkano_upper_1]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_upper_out_restr
on_info = {=see_actor} mob_home@tushkano_upper_1_1
[mob_home@tushkano_upper_1_1]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_upper_1
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_upper_2]
suitable = {=check_npc_name(lx8_upper_tushkano_2)}
active = mob_home@tushkano_upper_2
monster_job = true
prior = 75
[mob_home@tushkano_upper_2]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_upper_out_restr
on_info = {=see_actor} mob_home@tushkano_upper_2_1
[mob_home@tushkano_upper_2_1]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_upper_2
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_upper_3]
suitable = {=check_npc_name(lx8_upper_tushkano_3)}
active = mob_home@tushkano_upper_3
monster_job = true
prior = 75
[mob_home@tushkano_upper_3]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_upper_out_restr
on_info = {=see_actor} mob_home@tushkano_upper_3_1
[mob_home@tushkano_upper_3_1]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_upper_3
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_upper_4]
suitable = {=check_npc_name(lx8_upper_tushkano_4)}
active = mob_home@tushkano_upper_4
monster_job = true
prior = 75
[mob_home@tushkano_upper_4]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_upper_out_restr
on_info = {=see_actor} mob_home@tushkano_upper_4_1
[mob_home@tushkano_upper_4_1]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_upper_4
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr
[logic@tushkano_upper_5]
suitable = {=check_npc_name(lx8_upper_tushkano_5)}
active = mob_home@tushkano_upper_5
monster_job = true
prior = 75
[mob_home@tushkano_upper_5]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
out_restr = lx8_sr_upper_out_restr
on_info = {=see_actor} mob_home@tushkano_upper_5_1
[mob_home@tushkano_upper_5_1]
path_home = upper_home
home_min_radius = 30
home_max_radius = 40
aggressive = true
actor_friendly = false
on_info = {!see_actor !dist_to_actor_le(10)} mob_home@tushkano_upper_5
in_restr = lx8_sr_snork_out_restr, lx8_sr_close_combat, lx8_sr_toilet_burer_out_restr, lx8_sr_burer_in_restr