Gulag General info

User avatar
Alundaio
S.T.A.L.K.E.R.
Posts: 1371
Joined: 26 May 2012, 22:26

Gulag General info

Postby Alundaio » 14 Mar 2017, 16:39

Gulag is dynamically generated in CoP and CoC, rather then handwritten for each smart terrain. This is only infomation on creating simulation jobs, not exclusive jobs for unique NPCs, that is done differently.

  • Exclusive jobs share the same table as the auto-generated jobs. So priority is important. Here is the current prior list:
    -----------------------------------------------------
    Job | Prior
    -----------------------------------------------------

    Code: Select all

    animpoint                           15
    beh                                 30
    beh_surge                           60
    camper                              45
    campfire_point                  10
    collector                           25
    cover                         3
    guard                              25
    patrol                              25 (-1 per follower)
    sleep                              20
    sniper                              30
    surge                              60
    walker                              15


    So if you want an exclusive job to ignore the priority of all other jobs set prior at 61+
    If you want an exclusive job to take priority over all other jobs except surge jobs, set prior at 50.
    Exclusive jobs should be used for jobs you want everyone else locked out of, such as simulation squads.
    They are also useful for filling up jobs with a specific character or squad type. Like a faction smart.

  • Never use the same logic section names (ex. 'logic@walker_1') between exclusive jobs and auto-generated jobs for each smart.
    There is a table that a smart_terrain uses called 'npc_by_job_section' which would require that every logic section is uniquely named.
    To avoid this simply give exclusive jobs a prefix, like 'logic@exclusive_walker_1_walk_1'
  • Squad smart max population should be based on sim squad count multiplied by 3. Do not count jobs for squads with target_smart as a field in squad descriptions.

Naming Conventions for dynamic gulag jobs
    animpoint - <smart>_animpoint_<index> (ex. yan_smart_terrain_4_6_animpoint_1)
    animpoint_surge - <smart>_surge_animpoint_<index> (ex. yan_smart_terrain_4_6_surge_animpoint_1)
    beh - <smart>_beh_<index> (ex. esc_smart_terrain_1_5_beh_1)
    beh_surge - <smart>_beh_surge_<index> (ex. esc_smart_terrain_1_5_beh_surge_1)
    beh_trader - <smart>_beh_trade_<index> (ex. esc_smart_terrain_1_5_beh_trade_1)
    camper - <smart>_camper_<index>_walk (ex. yan_smart_terrain_4_6_camper_1_walk) look path: yan_smart_terrain_4_6_camper_1_look
    campfire_point - <smart>_campfire_point_<index> (ex. yan_smart_terrain_4_6_campfire_point_1)
    cover - <smart>_point_<index> (ex. yan_smart_terrain_4_6_point_1)
    collector - <smart>_collector_<index>_walk (ex. yan_smart_terrain_4_6_collector_1_walk) look path: yan_smart_terrain_4_6_collector_1_look
    guard - <smart>_guard_<index>_walk (ex. yan_smart_terrain_4_6_guard_1_walk) look path: yan_smart_terrain_4_6_guard_1_look
    mob_home - <smart>_home_<index> (ex. yan_smart_terrain_4_6_home_1)
    patrol - <smart>_patrol_<index>_walk (ex. yan_smart_terrain_4_6_patrol_1_walk) look path: yan_smart_terrain_4_6_patrol_1_look
    point - <smart>_point_<index> (ex. yan_smart_terrain_4_6_point_1)
    sleeper - <smart>_sleep_<index> (ex. yan_smart_terrain_4_6_sleep_1)
    sniper - <smart>_sniper_<index>_walk (ex. yan_smart_terrain_4_6_sniper_1_walk) look path: yan_smart_terrain_4_6_sniper_1_look
    surge - <smart>_surge_<index>_walk (ex. yan_smart_terrain_4_6_surge_1_walk) look path: yan_smart_terrain_4_6_surge_1_look
    walker - <smart>_walker_<index>_walk (ex. yan_smart_terrain_4_6_walker_1_walk) look path: yan_smart_terrain_4_6_walker_1_look


HOW TO ADD HELI JOBS:
  • create a new path <smart>_heli_<index>_fly for each smart terrain available to heli (army bases in sim_board)

    In smart logic create a helicopter respawn section
    ie.

    Code: Select all

    respawn_params = respawn@mar_smart_terrain_11_11
    respawn_idle = 600

    [respawn@mar_smart_terrain_11_11]
    spawn_heli

    [spawn_heli]
    spawn_helicopter = helicopter
    spawn_num = 1
  • create <level_name>_heli_hide waypoint under map near edge
  • create <level_name>_goto_hide path above map that leads to map edge. Heli will teleport to heli hide from this path
If there is a heli hide waypoint helicopter will spawn here instead of over smart terrain that spawned them in
"I have a dream that one day this community will rise up and live out the true meaning of its creed: "We hold these truths to be self-evident; that all mods are created equal."

Return to “Modding Tutorials”

Who is online

Users browsing this forum: No registered users and 1 guest