Wawka 5 Опубликовано 25 Марта 2009 (изменено) Дима! Пора и мне поворчать. Почисти пожалуйста личку. Ну или вот: Странно, что у тебя накрылся гулаг... И кстати, правка не поможет - сразу говорю. Уже не правильно, что в логике, в путях прописал первую часть названия пути. А именно, содержащую имя_гулага. Пример: path_walk = esc_fabrika_sniper_sniper_esc_respawn_1_walk path_look = esc_fabrika_sniper_sniper_esc_respawn_1_look И вылет у всех, с руганью на скрипт amk_mod, именно из-за этого. Заселят гулаги, всего 2 вида охотников, из spawn_sections - stalker_green1 и stalker_green2 (они прописаны в респавнере. То ли на Баре, то ли на Ростоке - не помню). И, насколько я понял слова Kolmogora, респавнер "родит" именно столько болванчиков, сколько потребуется гулагу - точнее начнёт спавнить охотников в том случае, если гулагу требуются жители, а не "4 виртуальных неписи". Вот, полностью переделал им гулаги (оптимизировал и привёл количество работ к максимально разрешённому количеству жителей): СКРИПТ gulag_new: local t = {} function load_job(sj, gname, type, squad, groups) -- ГУЛАГ ЗЕЛЕНЫХ НА ФАБРИКЕ if type == "esc_fabrika_sniper" then t = { section = "logic@esc_fabrika_sniper_man1", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_fabrika_sniper_man2", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_fabrika_sniper_man3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_fabrika_sniper_man4", idle = 0, prior = 15, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_fabrika_sniper_kamp", idle = 0, prior = 2, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_fabrika_sniper_kamp", idle = 0, prior = 2, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@esc_fabrika_sniper_kamp", idle = 0, prior = 2, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end -- ГУЛАГ ЗЕЛЕНЫХ В БАРЕ if type == "dal_green" then t = { section = "logic@dal_green_man1", idle = 0, prior = 10, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@dal_green_man2", idle = 0, prior = 10, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@dal_green_man3", idle = 0, prior = 10, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@dal_green_man4", idle = 0, prior = 10, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@dal_green_kamp", idle = 0, prior = 2, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@dal_green_kamp", idle = 0, prior = 2, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@dal_green_kamp", idle = 0, prior = 2, state = {0}, online = true, in_rest = "", out_rest = "" } table.insert(sj, t) end -- ГУЛАГ ЗЕЛЕНЫХ НА РОСТОКЕ if type == "rost_green" then t = { section = "logic@rost_green_man1", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@rost_green_man2", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@rost_green_man3", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@rost_green_man4", idle = 0, prior = 10, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@rost_green_man5", idle = 10, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@rost_green_kamp", idle = 0, prior = 2, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@rost_green_kamp", idle = 0, prior = 2, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end -- ГУЛАГ НАЕМНИКОВ НА СВАЛКЕ if type == "killer_garbage_lager" then t = { section = "logic@killer_garbage_lager_man1", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_man2", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_man3", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_man4", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_man5", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_man6", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_man7", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_man8", idle = 0, prior = 5, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_kamp", idle = 0, prior = 2, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) t = { section = "logic@killer_garbage_lager_kamp", idle = 0, prior = 2, state = {0}, in_rest = "", out_rest = "" } table.insert(sj, t) end end function load_states(gname, type) if type == "esc_fabrika_sniper" then return function(gulag) return 0 end end if type == "dal_green" then return function(gulag) return 0 end end if type == "rost_green" then return function(gulag) return 0 end end if type == "killer_garbage_lager" then return function(gulag) return 0 end end end function load_ltx(gname, type) return nil end function checkStalker(npc_community, gulag_type, npc_rank, se_obj) if gulag_type == "esc_fabrika_sniper" then return npc_community == "green" end if gulag_type == "dal_green" then return npc_community == "green" end if gulag_type == "rost_green" then return npc_community == "green" end if gulag_type == "killer_garbage_lager" then return npc_community == "killer" end return false end function checkMonster(npc_community, gulag_type) return false end ЛОГИКА (gulag_new): ;************************************************** ;*************** ESCAPE GREEN ******************* ;************************************************** [logic@esc_fabrika_sniper_man1] active = walker@esc_fabrika_sniper_man1 [walker@esc_fabrika_sniper_man1] path_walk = man1_walk path_look = man1_look [logic@esc_fabrika_sniper_man2] active = walker@esc_fabrika_sniper_man2 [walker@esc_fabrika_sniper_man2] path_walk = man2_walk path_look = man2_look [logic@esc_fabrika_sniper_man3] active = walker@esc_fabrika_sniper_man3 [walker@esc_fabrika_sniper_man3] path_walk = man3_walk path_look = man3_look [logic@esc_fabrika_sniper_man4] active = walker@esc_fabrika_sniper_man4 [walker@esc_fabrika_sniper_man4] path_walk = man4_walk path_look = man4_look [logic@esc_fabrika_sniper_kamp] active = kamp@esc_fabrika_sniper [kamp@esc_fabrika_sniper] center_point = kamp ;************************************************** ;*************** BAR GREEN ******************* ;************************************************** [logic@dal_green_man1] active = walker@dal_green_man1 [walker@dal_green_man1] path_walk = man1_walk path_look = man1_look [logic@dal_green_man2] active = walker@dal_green_man2 [walker@dal_green_man2] path_walk = man2_walk path_look = man2_look [logic@dal_green_man3] active = walker@dal_green_man3 trade = misc\new_trader\trade_zahar.ltx [walker@dal_green_man3] path_walk = man3_walk path_look = man3_look [logic@dal_green_man4] active = walker@dal_green_man4 [walker@dal_green_man4] path_walk = man4_walk path_look = man4_look [logic@dal_green_kamp] active = kamp@dal_green [kamp@dal_green] center_point = kamp ;************************************************** ;*************** ROSTOK GREEN ******************* ;************************************************** [logic@rost_green_man1] active = walker@rost_green_man1 [walker@rost_green_man1] path_walk = man1_walk path_look = man1_look [logic@rost_green_man2] active = walker@rost_green_man2 [walker@rost_green_man2] path_walk = man2_walk path_look = man2_look [logic@rost_green_man3] active = walker@rost_green_man3 [walker@rost_green_man3] path_walk = man3_walk path_look = man3_look [logic@rost_green_man4] active = walker@rost_green_man4 [walker@rost_green_man4] path_walk = man4_walk path_look = man4_look [logic@rost_green_man5] active = walker@rost_green_man5 [walker@rost_green_man5] path_walk = man5_walk path_look = man5_look [logic@rost_green] active = kamp@rost_green [kamp@rost_green] center_point = kamp ;************************************************** ;*************** GARBAGE KILLER ******************* ;************************************************** [logic@killer_garbage_lager_man1] active = walker@killer_garbage_lager_man1 [walker@killer_garbage_lager_man1] path_walk = man1_walk path_look = man1_look [logic@killer_garbage_lager_man2] active = walker@killer_garbage_lager_man2 [walker@killer_garbage_lager_man2] path_walk = man2_walk path_look = man2_look [logic@killer_garbage_lager_man3] active = walker@killer_garbage_lager_man3 [walker@killer_garbage_lager_man3] path_walk = man3_walk path_look = man3_look [logic@killer_garbage_lager_man4] active = walker@killer_garbage_lager_man4 [walker@killer_garbage_lager_man4] path_walk = man4_walk path_look = man4_look [logic@killer_garbage_lager_man5] active = walker@killer_garbage_lager_man5 [walker@killer_garbage_lager_man5] path_walk = man5_walk path_look = man5_look [logic@killer_garbage_lager_man6] active = walker@killer_garbage_lager_man6 [walker@killer_garbage_lager_man6] path_walk = man6_walk path_look = man6_look [logic@killer_garbage_lager_man7] active = walker@killer_garbage_lager_man7 [walker@killer_garbage_lager_man7] path_walk = man7_walk path_look = man7_look [logic@killer_garbage_lager_man8] active = walker@killer_garbage_lager_man8 [walker@killer_garbage_lager_man8] path_walk = man8_walk path_look = man8_look [logic@killer_garbage_lager_kamp] active = kamp@killer_garbage_lager [kamp@killer_garbage_lager] center_point = kamp ПУТИ (way_l01_escape): [esc_fabrika_sniper_man1_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 4.78273487091064,2.51998591423035,64.8772659301758 p0:game_vertex_id = 89 p0:level_vertex_id = 281628 [esc_fabrika_sniper_man1_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 26.6241645812988,2.85847949981689,54.7389602661133 p0:game_vertex_id = 89 p0:level_vertex_id = 305876 [esc_fabrika_sniper_man2_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = -8.8234977722168,2.51814985275269,70.6662673950195 p0:game_vertex_id = 88 p0:level_vertex_id = 267836 [esc_fabrika_sniper_man2_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 24.5567188262939,2.53544425964355,86.2309875488281 p0:game_vertex_id = 93 p0:level_vertex_id = 300324 [esc_fabrika_sniper_man3_walk] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = 40.3325271606445,2.30778431892395,67.0837707519531 p0:game_vertex_id = 91 p0:level_vertex_id = 322624 p0:links = p0(1) p1:name = wp01 p1:flags = 0x1 p1:position = -15.4386434555054,2.47858500480652,63.9446029663086 p1:game_vertex_id = 88 p1:level_vertex_id = 261712 p1:links = p1(1) [esc_fabrika_sniper_man3_look] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = 29.5175094604492,2.78236865997314,46.6411552429199 p0:game_vertex_id = 90 p0:level_vertex_id = 309152 p0:links = p0(1) p1:name = wp01 p1:flags = 0x1 p1:position = 43.3632850646973,1.37818467617035,77.8303909301758 p1:game_vertex_id = 91 p1:level_vertex_id = 326131 p1:links = p1(1) [esc_fabrika_sniper_man4_walk] points = p0 p0:name = wp00|a=guard p0:flags = 0x1 p0:position = -15.3101539611816,2.47990345954895,66.4883041381836 p0:game_vertex_id = 88 p0:level_vertex_id = 261716 [esc_fabrika_sniper_man4_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 2.70045185089111,2.47895240783691,64.6791305541992 p0:game_vertex_id = 89 p0:level_vertex_id = 279501 [esc_fabrika_sniper_kamp] points = p0 p0:name = wp00 p0:position = -11.5954151153564,2.47992181777954,63.8473892211914 p0:game_vertex_id = 88 p0:level_vertex_id = 265096 ПУТИ (way_l02_garbage): [killer_garbage_lager_man1_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 243.591430664063,-3.48172521591187,-141.016632080078 p0:game_vertex_id = 404 p0:level_vertex_id = 365302 [killer_garbage_lager_man1_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 220.022491455078,0.313336700201035,-142.879989624023 p0:game_vertex_id = 404 p0:level_vertex_id = 354961 [killer_garbage_lager_man2_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 212.771423339844,-0.114106416702271,-148.844329833984 p0:game_vertex_id = 404 p0:level_vertex_id = 351184 [killer_garbage_lager_man2_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 166.100128173828,0.227841347455978,-136.183227539063 p0:game_vertex_id = 400 p0:level_vertex_id = 318392 [killer_garbage_lager_man3_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 216.068740844727,-1.77071523666382,-162.555816650391 p0:game_vertex_id = 402 p0:level_vertex_id = 353122 [killer_garbage_lager_man3_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 166.100128173828,0.227841347455978,-136.183227539063 p0:game_vertex_id = 400 p0:level_vertex_id = 318392 [killer_garbage_lager_man4_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 195.761322021484,-0.646659255027771,-151.352645874023 p0:game_vertex_id = 400 p0:level_vertex_id = 340470 [killer_garbage_lager_man4_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 166.100128173828,0.227841347455978,-136.183227539063 p0:game_vertex_id = 400 p0:level_vertex_id = 318392 [killer_garbage_lager_man5_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 204.845886230469,-0.151163429021835,-142.211410522461 p0:game_vertex_id = 401 p0:level_vertex_id = 346374 [killer_garbage_lager_man5_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 143.754470825195,-0.806380271911621,-149.688064575195 p0:game_vertex_id = 398 p0:level_vertex_id = 300429 [killer_garbage_lager_man6_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 203.425674438477,0.585452079772949,-133.533737182617 p0:game_vertex_id = 401 p0:level_vertex_id = 345475 [killer_garbage_lager_man6_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 143.754470825195,-0.806380271911621,-149.688064575195 p0:game_vertex_id = 398 p0:level_vertex_id = 300429 [killer_garbage_lager_man7_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 183.514099121094,-0.860148787498474,-127.438102722168 p0:game_vertex_id = 401 p0:level_vertex_id = 331840 [killer_garbage_lager_man7_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 143.754470825195,-0.806380271911621,-149.688064575195 p0:game_vertex_id = 398 p0:level_vertex_id = 300429 [killer_garbage_lager_man8_walk] points = p0 p0:name = wp00|a=hide p0:flags = 0x1 p0:position = 182.498046875,0.351537257432938,-139.416168212891 p0:game_vertex_id = 400 p0:level_vertex_id = 331320 [killer_garbage_lager_man8_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 143.754470825195,-0.806380271911621,-149.688064575195 p0:game_vertex_id = 398 p0:level_vertex_id = 300429 [killer_garbage_lager_kamp] points = p0 p0:name = wp00 p0:position = 261.245391845703,-9.77476692199707,-136.760925292969 p0:game_vertex_id = 404 p0:level_vertex_id = 373343 ПУТИ (way_l05_bar): [dal_green_man1_walk] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 110.324813842773,-1.70014035701752,78.2722625732422 p0:game_vertex_id = 1251 p0:level_vertex_id = 33120 [dal_green_man1_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 108.97477722168,-1.70521759986877,96.9429244995117 p0:game_vertex_id = 1250 p0:level_vertex_id = 32882 [dal_green_man2_walk] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 132.683120727539,-0.00685206055641174,70.4081420898438 p0:game_vertex_id = 1229 p0:level_vertex_id = 36359 [dal_green_man2_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 152.065521240234,-0.0440400242805481,62.6008338928223 p0:game_vertex_id = 1228 p0:level_vertex_id = 40428 [dal_green_man3_walk] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 111.887573242188,0.0996692776679993,74.2647323608398 p0:game_vertex_id = 1225 p0:level_vertex_id = 33195 [dal_green_man3_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = 107.70775604248,0.0984236896038055,64.9615707397461 p0:game_vertex_id = 1225 p0:level_vertex_id = 32739 [dal_green_man4_walk] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = 170.895065307617,-0.00493207573890686,66.5693435668945 p0:game_vertex_id = 1256 p0:level_vertex_id = 43507 p0:links = p1(1) p1:name = wp01 p1:flags = 0x1 p1:position = 116.801429748535,-1.70390939712524,78.1662139892578 p1:game_vertex_id = 1216 p1:level_vertex_id = 34101 p1:links = p0(1) [dal_green_man4_look] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = 172.124816894531,-8.44299793243408e-005,88.5153045654297 p0:game_vertex_id = 1186 p0:level_vertex_id = 43780 p1:name = wp01 p1:flags = 0x1 p1:position = 115.973098754883,-1.70096504688263,93.8033142089844 p1:game_vertex_id = 1215 p1:level_vertex_id = 33985 p1:links = p0(1) [dal_green_kamp] points = p0 p0:name = wp00 p0:position = 113.633193969727,0.0980699956417084,67.0182723999023 p0:game_vertex_id = 1225 p0:level_vertex_id = 33413 ПУТИ (way_l06_rostok): [rost_green_man1_walk] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = -40.3492889404297,0.00625172257423401,145.003662109375 p0:game_vertex_id = 1417 p0:level_vertex_id = 60510 [rost_green_man1_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = -101.403358459473,0.0308345854282379,143.839935302734 p0:game_vertex_id = 1311 p0:level_vertex_id = 45013 [rost_green_man2_walk] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = -41.988410949707,-0.000307679176330566,138.181015014648 p0:game_vertex_id = 1417 p0:level_vertex_id = 59965 [rost_green_man2_look] points = p0 p0:name = wp00 p0:flags = 0x1 p0:position = -101.403358459473,0.0308345854282379,143.839935302734 p0:game_vertex_id = 1311 p0:level_vertex_id = 45013 [rost_green_man3_walk] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = -96.6743240356445,-0.0132719278335571,148.932800292969 p0:game_vertex_id = 1422 p0:level_vertex_id = 45540 p0:links = p1(1) p1:name = wp01 p1:flags = 0x1 p1:position = -28.94753074646,-0.000433266162872314,139.398773193359 p1:game_vertex_id = 1417 p1:level_vertex_id = 63121 p1:links = p0(1) [rost_green_man3_look] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = -101.403358459473,0.0308345854282379,143.839935302734 p0:game_vertex_id = 1311 p0:level_vertex_id = 45013 p0:links = p1(1) p1:name = wp01 p1:flags = 0x1 p1:position = -119.316230773926,-0.0618303120136261,144.411209106445 p1:game_vertex_id = 1312 p1:level_vertex_id = 42897 p1:links = p0(1) [rost_green_man4_walk] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = -100.589378356934,0.081830769777298,143.10563659668 p0:game_vertex_id = 1311 p0:level_vertex_id = 45072 p0:links = p1(1) p1:name = wp01 p1:flags = 0x1 p1:position = -31.1060791015625,0.00289511680603027,152.133972167969 p1:game_vertex_id = 1417 p1:level_vertex_id = 62718 p1:links = p0(1) [rost_green_man4_look] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = -101.403358459473,0.0308345854282379,143.839935302734 p0:game_vertex_id = 1311 p0:level_vertex_id = 45013 p0:links = p1(1) p1:name = wp01 p1:flags = 0x1 p1:position = -119.316230773926,-0.0618303120136261,144.411209106445 p1:game_vertex_id = 1312 p1:level_vertex_id = 42897 p1:links = p0(1) [rost_green_man5_walk] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = -106.48055267334,-0.00268679857254028,141.991058349609 p0:game_vertex_id = 1311 p0:level_vertex_id = 44468 p0:links = p1(1) p1:name = wp01 p1:flags = 0x1 p1:position = -46.2657318115234,-0.00220659375190735,142.241394042969 p1:game_vertex_id = 1309 p1:level_vertex_id = 58882 p1:links = p0(1) [rost_green_man5_look] points = p0,p1 p0:name = wp00 p0:flags = 0x1 p0:position = -101.403358459473,0.0308345854282379,143.839935302734 p0:game_vertex_id = 1311 p0:level_vertex_id = 45013 p0:links = p1(1) p1:name = wp01 p1:flags = 0x1 p1:position = -119.316230773926,-0.0618303120136261,144.411209106445 p1:game_vertex_id = 1312 p1:level_vertex_id = 42897 p1:links = p0(1) [rost_green_kamp] points = p0 p0:name = wp00 p0:position = -29.8411464691162,9.24468040466309e-005,144.819564819336 p0:game_vertex_id = 1417 p0:level_vertex_id = 62851 СМАРТЫ (escape): [13] ; cse_abstract properties section_name = smart_terrain name = esc_fabrika_sniper position = -11.5954151153564,2.47992181777954,63.8473892211914 direction = 0,0,0 ; cse_alife_object properties game_vertex_id = 88 distance = 1 level_vertex_id = 265096 object_flags = 0xffffff3e custom_data = <<END [smart_terrain] type = esc_fabrika_sniper capacity = 7 communities = green groups = 2 preset = l01_escape_green END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 1 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties Помойка: [880] ; cse_abstract properties section_name = smart_terrain name = killer_garbage_lager position = 261.245391845703,-9.77476692199707,-136.760925292969 direction = -0.773886740207672,0,-0.633324027061462 ; cse_alife_object properties game_vertex_id = 404 distance = 1 level_vertex_id = 373343 object_flags = 0xffffff3e custom_data = <<END [smart_terrain] type = killer_garbage_lager capacity = 10 communities = killer cond = {+prizrak_tainiy_begin} groups = 2 preset = l02_garbage_killer END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 1 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties Бар: [1371] ; cse_abstract properties section_name = smart_terrain name = dal_green position = 113.633193969727,0.0980699956417084,67.0182723999023 direction = 0.998010098934174,0,0.0630538985133171 ; cse_alife_object properties game_vertex_id = 1225 distance = 1 level_vertex_id = 33413 object_flags = 0xffffff3e custom_data = <<END [smart_terrain] type = dal_green capacity = 7 communities = green groups = 2 preset = l05_bar_green END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 1 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties Росток: [7004] ; cse_abstract properties section_name = smart_terrain name = rost_green position = -29.8411464691162,9.24468040466309e-005,144.819564819336 direction = -0.501070976257324,0,0.865406215190887 ; cse_alife_object properties game_vertex_id = 1417 distance = 1 level_vertex_id = 62851 object_flags = 0xffffff3e custom_data = <<END [smart_terrain] type = rost_green capacity = 7 communities = green cond = {+zahar_naemnik_done} groups = 2 preset = l06_rostok_green END ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 1 ; cse_alife_space_restrictor properties restrictor_type = 3 ; se_smart_terrain properties Кастом дата Дэна: custom_data = <<END [smart_terrains] esc_fabrika_sniper = true END Всё лишнее - дополнительную логику и т.п. - убери! На свалке и на ростоке не тестил. Не успел посмотреть. Обрати внимание - переименовал гулаг на помойке. Был killer_garbage_larger, стал killer_garbage_lager. То есть, надо в alife_l02_garbage найти у наёмов: killer_garbage_laRger = true И заменить на: killer_garbage_lager = true И ещё... Может быть проблема в том, что неписи "подбираются" из скриптового псевдогулага (gamedata\config\scripts\amk\) rost_green. Хотя и не факт. Изменено 25 Марта 2009 пользователем WAWKA Поделиться этим сообщением Ссылка на сообщение
Wawka 5 Опубликовано 26 Марта 2009 Да в принципе, и луки и валки гулаг находил, иначе, абсолютно у всех бы вылетало с логом, наподобии: [error]Arguments : LUA error: ...ishing\s.t.a.l.k.e.r\gamedata\scripts\amk_mod.script:4299: attempt to index local 'respawner' (a function value) Да и с логикой всё в порядке было...почти. Единственное, что не правильно было - несоответствие количества работ + неправильно расставлен приоритет этих самых работ. Ладно бы если у тех же 5ти работ приоритет был высоким, а у двух неиспользуемых 0 или 1 (как в гулаге круглова на ростоке, у лишней 6-ой работы был низкий приоритет, относительно 5-ти других). А здесь вышло, что и численности населения гулага меньше, чем работ, да и все работы, относительно друг друга, с высоким приоритетом (строка prio =). Вот и пытался скрипт загрузки работ взять к себе непися, а смарт не разрешал, из-за превышения capacity. Такая вот байда. На кордоне (esc_fabrika_sniper): численность населения смарта - 5 тел, а загружаемых работ - 7; На помойке (killer_garbage_larger): численность населения смарта - 8 тел, а загружаемых работ - 10; В баре (dal_green): численность населения смарта - 5 тел, а загружаемых работ - 7; На Ростоке (rost_green): численность населения смарта - 5 тел, а загружаемых работ - 7. Вот и вся арифметика. Поделиться этим сообщением Ссылка на сообщение
Wawka 5 Опубликовано 26 Марта 2009 Держи: http://wawka.ifolder.ru/11252897 Готовый вариант гулага. Только чуток усовершенствовал (прописал predicate для Дэна на кордоне и Захара в баре). all.spawn брал из фулл версии 23.03.09, с торрента, который Адреналин выкладывал. Здесь все переделанные гулаги Дэна. Все пути есть. У меня эти же самые гулаги прописаны, но проверить удалось лишь кордон и бар. Если хочешь проверить и два других, закомментируй в all.spawn строки cond = {+условие_появления_гулага} в смартах на ростоке и помойке. Ещё... Для полной уверенности, отключи в amk_respawns.ltx псевдогулаг rost_green. Чтобы точно быть уверенным, что он точно ни причём. Если найдутся добровольцы, которые попробуют мою правку, то в случае если охотники с Дэном на кордоне и Захар в баре не заспавнятся, отпишитесь мне в личку. Поделиться этим сообщением Ссылка на сообщение
Wawka 5 Опубликовано 29 Марта 2009 (изменено) activate_by_section: section 'mob_home1' does not existВ файле peshera_burer (gamedata\config\scripts\amk\logic\), надо удалить строку: on_timer = 240000 | mob_home1 Здесь попытка перейти на несуществующий блок логики, отсюда и ругань (а в оригинале - знаменитый вылет 1121). Да, забыл я его подправить... Один фиг - вылета не будет, может только притормозить... Там ещё и в последней строке единичку убрать придётся. А, да, ещё и здесь надо убрать: on_timer = 15000 | mob_home1 Сплю на ходу К вылету не приведёт, но лишний сбой ни к чему, я думаю. Да, подправлю. Там ещё и в Забытом лесу есть такое. Как насобирается недочётов побольше - выпущу патчик маленький Изменено 30 Марта 2009 пользователем Arhara Поделиться этим сообщением Ссылка на сообщение