Skocz do zawartości

kmicic0

Weteran
  • Postów

    287
  • Dołączył

  • Ostatnia wizyta

  • Wygrane w rankingu

    3

Treść opublikowana przez kmicic0

  1. Patchu zajrzyj do tematu Plik odpowiadający za schowki w DMX Mod .
  2. Znalazłem plik odpowiadający za pieniądze przy trupach kto chce może to zrobić sobie samemu - działa w przypadku modów z zaimplementowanym skryptem lootmoney.script jak np. Solijanka/DMX.! Otwieramy folder gamedatascripts tam odnajdujemy plik lootmoney.script, a teraz jego zawartość: -- DMX 1.3.4 PL trurl3 & Yurekfunction lootmoney(npc)if monnoroch_options.mone == 0 then return endif dmx_mod.have_lootmany() ~= false then -- äĺřčôđŕňîđif npc ~= nil and not string.find(npc:section(),"arena") and npc:character_community()~="arena_enemy" thenlocal money = npc:money()if money ~= nil and money ~=0 thenlocal deadmoney = moneyif monnoroch_options.money_real == 1 thenlocal npc_ranknpc_rank = ranks.get_obj_rank_name(npc)if npc_rank ~= nil thenif npc_rank == "novice" and deadmoney >=400 then deadmoney=math.random(25,400)elseif npc_rank == "experienced" and deadmoney >=500 then deadmoney=math.random(50,500)elseif npc_rank == "veteran" and deadmoney >=600 then deadmoney=math.random(100,600)elseif npc_rank == "master" and deadmoney >=700 then deadmoney=math.random(200,700)endendendlocal news_texti = "n%c[255,255,0,0]Martwy stalker: %c[default]"..npc:character_name().."n%c[255,255,0,0]Znaleziono pieniędzy: %c[default]"..game.translate_string(tostring(deadmoney).."rub.")db.actor:give_game_news(news_texti, "uiui_iconsTotal", Frect():set(0,0,83,47), 1, 4000)db.actor:give_money(deadmoney)game_stats.money_quest_update(deadmoney)npc:give_money(-money)game_stats.money_quest_update(-money)endendendendWartości stojące przy wpisie poniższym, tj (400, 500, 600, 700): deadmoney >=oraz występujące w drugiej części nawiasu przy parametrze (400, 500, 600, 700): math.randomRozpatrując całościowo linijkę tj. elseif npc_rank == "experienced" and deadmoney >=500 then deadmoney=math.random(50,500)Możemy modyfikować, pamiętając by dany wiersz posiadał w miejscu wymienionych parametrów tę samą wartość. Widzimy iż dla powyższego przykładu jest to 500. Liczby które zaznaczę na kolorowo można zmienić (wartość gotówki). Działa na 100% sprawdziłem. Pamiętajmy o zgodności wpisów dla danej linijki odpowiedzialnej za rangę postaci tj. novice, experienced, veteran, master.
  3. Znalazłem plik odpowiadający za schowki mam prośbę zróbmy burze mózgów może uda nam się go przerobić tak że będzie przy rzadkich schowkach prawdopodobieństwo znalezienia 100% wklejam plik. tytuł task_menager in treasure_manager.ltx") end local n = iniLinesCount("list",iniFileName) local id, value = "","" --' íŕ÷ŕëüíŕ˙ óńňŕíÎâęŕ self.treasure_info = {} for i=0,n-1 do result, id, value = getIniLine("list",i,"","",iniFileName) self.treasure_info[id] = {} self.treasure_info[id].target = utils.cfg_get_number(self.ini, id, "target", nil, true) --self.treasure_info[id].target = getIniValueFloat(id, "target", nil, iniFileName) self.treasure_info[id].name = utils.cfg_get_string(self.ini, id, "name", nil, true, "") --self.treasure_info[id].name = getIniValueString(id, "name", "", iniFileName) self.treasure_info[id].description = utils.cfg_get_string(self.ini, id, "description", nil, true, "") --self.treasure_info[id].description = getIniValueString(id, "description", "", iniFileName) self.treasure_info[id].items = parse_spawns(utils.cfg_get_string(self.ini, id, "items", nil, true, "")) --self.treasure_info[id].items = parse_spawns(getIniValueString(id, "items", "", iniFileName)) local community = parse_names(getIniValueString(id, "community", "stalker, bandit, dolg, freedom", iniFileName)) self.treasure_info[id].community = {} for k,v in pairs(community) do self.treasure_info[id].community[v] = true end if self.treasure_info[id].items == nil then abort("cant find 'items' in %s", id) end self.treasure_info[id].condlist = xr_logic.parse_condlist(db.actor, "treasure_manager", "condlist", getIniValueString(id, "condlist", "", iniFileName)) --' Îňěĺňčě ňŕéíčę ęŕę íÎâűé self.treasure_info[id].active = true self.treasure_info[id].done = true --print_table(self.treasure_info) end --' âńďÎěÎăŕňĺëüíűĺ ňŕáëčöű äë˙ Îáëĺă÷ĺíč˙ ďÎčńęŕ self.treasure_by_target = {} for k,v in pairs(self.treasure_info) do self.treasure_by_target[v.target] = k end end --' Ţçŕíčĺ číčöčŕňÎđŕ (âÎçěÎćíÎńňü âűäŕňü ňŕéíčę) function CTreasure:use(npc) printf("TREASURE USE") --lootmoney start if (npc and db.actor) then lootmoney.lootmoney(npc) end --lootmoney end local rarets if npc ~= nil then n_rank = npc:character_rank() else n_rank = 0 end -- ĺńëč âűáđŕí đĺäęčé ňčď ňŕéíčęÎâ, ňÎ ńíčçčě ÎâĺđÎ˙ňíÎńňü ĺăÎ âűďŕäĺíč˙ if amk.load_variable("option_treasure", 100) == 2 then rarets = 100 else rarets = 100 end if amk.is_debug then rarets=100 end if math.random(100) < rarets then return end --' íóćíÎ đŕíäÎěíÎ âűáđŕňü Îäčí čç ňŕéíčęÎâ. local avail = {} local tr_sum = 100 for k,v in pairs(self.treasure_info) do if v.done == true and v.active == true and v.community[npc:character_community()] == true then local treasure_prob = xr_logic.pick_section_from_condlist(db.actor, npc, v.condlist) if treasure_prob == "" or treasure_prob == nil then treasure_prob = 100 end if tonumber(treasure_prob) >= 100 and v.community[npc:character_community()] == true and v.active == true then if tonumber(treasure_prob) == 100 then self:give_treasure(k) else table.insert(avail, {k = k, prob = treasure_prob}) tr_sum = tr_sum + treasure_prob end end end end if tr_sum == 100 or math.random(100) < 0 then return end local tr_w = math.random(tr_sum) for k,v in pairs(avail) do tr_w = tr_w - v.prob if tr_w <= 0 then --' âűäŕňü ňŕéíčę self:give_treasure(v.k) break end end end --' ŃÎőđŕíĺíčĺ function CTreasure:check() --' ĎđÎâĺđęŕ ňŕéíčęÎâ for k,v in pairs(self.treasure_info) do --' âűäŕňü ňŕéíčę self:give_treasure(k) end end --' âűäŕ÷ŕ ňŕéíčęŕ function CTreasure:give_treasure(k) local v = self.treasure_info[k] local obj = alife():story_object(v.target) if obj ~= nil then news_manager.send_treasure(v.name) --' ĎÎěĺňčňü íŕ ęŕđňĺ local text = "%c[255,238,155,23]"..game.translate_string(v.name).."n".."%c[default]"..game.translate_string(v.description) -- if not level.map_has_object_spot(obj.id,"treasure") then level.map_add_object_spot_ser(obj.id, "treasure", text) -- else -- amk.mylog("Blocking mapspot for "..obj:name()) -- end -- ďđÎâĺđęŕ, ęŕęÎé ňčď ňŕéíčęŕ âűáđŕí -- ĺńëč ňŕéíčę íĺ ęëŕńńč÷ĺńęčé č íĺ čěĺííÎé, ňÎ çŕěĺíčě ńÎäĺđćčěÎĺ if amk.load_variable("option_treasure", 100) ~= 100 and self:named_treasure(v) == true then v.items = self:give_item_list() end --' Ńăĺíĺđčňü âĺůč for kk,vv in pairs(v.items) do if ammo_section[vv.section] == true then se_respawn.create_ammo(vv.section, obj.position, obj.m_level_vertex_id, obj.m_game_vertex_id, obj.id, vv.prob) else for i=1,vv.prob do alife():create(vv.section, obj.position, obj.m_level_vertex_id, obj.m_game_vertex_id, obj.id) end end end --' ĎÎěĺňčě ňŕéíčę ęŕę âűäŕííűé self.treasure_info[k].active = true self.treasure_info[k].done = true -- Îňďđŕâčě ňŕéíčę â Îôôëŕéí local sim = alife () if sim ~= nil and obj.online then sim:set_switch_online (obj.id, true) sim:set_switch_offline (obj.id, true) -- sim:set_switch_online (obj.id, true) -- sim:set_switch_offline (obj.id, true) amk.convert_npc[obj.id]=1 -- ńňŕâčě â Î÷ĺđĺäü íŕ âűâÎä â Îíëŕéí end else printf("TREASURE %s, target doesnt exist", k) end end --' Ńíčěŕĺě Îňěĺňęó ń ňŕéíčęŕ function CTreasure:treasure_empty(box, box_story_id) printf("!!! treasure empty") local k = self.treasure_by_target[box_story_id] if k == nil or self.treasure_info[k] == nil then return end self.treasure_info[k].active = true -- ĺńëč ňŕéíčę íĺ čěĺííÎé, ňÎ ďĺđĺâĺäĺí ĺăÎ â Îíëŕéí äë˙ ńëĺäóţůĺé âűäŕ÷č if self:named_treasure(self.treasure_info[k]) == true then self.treasure_info[k].done = true end level.map_remove_object_spot(box:id(), "treasure") end --' ŃÎőđŕíĺíčĺ function CTreasure:save(p) --' ŃÎőđŕí˙ĺě đŕçěĺđ ňŕáëčöű local size = 0 for k,v in pairs(self.treasure_info) do size = size + 1 end p:w_u16(size) for k,v in pairs(self.treasure_info) do p:w_u16(v.target) p:w_bool(v.active) p:w_bool(v.done) end end --' çŕăđóçęŕ function CTreasure:load(p) local t = p:r_u16() for i = 1,t do local k = self.treasure_by_target[p:r_u16()] self.treasure_info[k].active = p:r_bool() self.treasure_info[k].done = p:r_bool() end end function CTreasure:give_item_list() local rank = 1 local tabla = {} -- ńęÎëüęÎ íŕčěĺíÎâŕíčé ďđĺäěĺňÎâ áóäĺň â ňŕéíčęĺ local i = math.random(1, 4) -- ń÷čňŕĺě íŕńňđÎéęó ďÎëüçÎâŕňĺë˙ local opt = amk.load_variable("option_treasure", 0) --~ -- Îďđĺäĺëčě đŕíă íĺďčń˙ --~ if nepis~= nil then -- rank = n_rank --nepis.character_rank () if n_rank == nil then n_rank = math.random(1, 9)*100 end if n_rank <= 300 then rank = 1 elseif n_rank <=600 then rank = 2 elseif n_rank <= 900 then rank = 3 else rank = 4 end --~ else --~ rank = 1 --~ end for j = 1, i, 1 do local cnt = 0 local spawn = {} -- Îďđĺäĺëčě, čç ęŕęÎé ńĺęöčč áđŕňü ďđĺäěĺňű, č ęŕęčĺ čěĺííÎ if opt == 1 then if rank == 1 then spawn.section = solid_list.novice_section[math.random(table.getn(solid_list.novice_section))] elseif rank == 2 then spawn.section = solid_list.experienced_section[math.random(table.getn(solid_list.experienced_section))] elseif rank == 3 then spawn.section = solid_list.veteran_section[math.random(table.getn(solid_list.veteran_section))] else spawn.section = solid_list.master_section[math.random(table.getn(solid_list.master_section))] end else if rank == 1 then spawn.section = rare_list.novice_section[math.random(table.getn(rare_list.novice_section))] elseif rank == 2 then spawn.section = rare_list.experienced_section[math.random(table.getn(rare_list.experienced_section))] elseif rank == 3 then spawn.section = rare_list.veteran_section[math.random(table.getn(rare_list.veteran_section))] else spawn.section = rare_list.master_section[math.random(table.getn(rare_list.master_section))] end end -- óńňŕíÎâęŕ ęÎë-âŕ ďđĺäěĺňÎâ â çŕâčńčěÎńňč Îň ńĺęöčč if ammo_section[spawn.section] == true then local ini = system_ini() local num_in_box = ini:r_u32(spawn.section, "box_size") local h = math.random(1, 5) -- ďŕňđÎíű âűäŕĺě íĺ řňóęŕěč, ŕ ďŕ÷ęŕěč cnt = math.random(1, h) * num_in_box else local s = tostring(spawn.section) if string.find(s, "outfit") ~= nil or string.find(s, "wpn") ~= nil then cnt = 1 elseif string.find(s, "addon") ~= nil or string.find(s, "af") ~= nil or string.find(s, "mutant") ~= nil then cnt = math.random(1,2) else cnt = math.random(1,5) end end -- ńÎőđŕí˙ĺě číôó Î ňĺęóůĺě ďđĺäěĺňĺ spawn.prob = cnt table.insert(tabla, spawn) end return tabla end function CTreasure:named_treasure(v) -- ďđÎâĺđęŕ, ˙âë˙ĺňń˙ ëč ňŕéíčę čěĺííűě. Ĺńëč äŕ, ňÎ ĺăÎ íŕďÎëíĺíčĺ íĺ ěĺí˙ĺňń˙ if v.name == "agr_secret_0000_name" --Ňŕéíčę ŃĺđÎăÎ or v.name == "bar_secret_0011_name" --Ňŕéíčę Ŕđíč or v.name == "esc_secret_0013_name" --Ňŕéíčę âÎđďŕëŕ or v.name == "gar_secret_0002_name" --âĺůč Ăđčçëč or v.name == "gar_secret_0011_name" --Ńęëŕä ăđóďďű Ńňđĺëęŕ or v.name == "gar_secret_0021_name" --Đţęçŕę äÎőë˙ęŕ or v.name == "pri_secret_0003_name" --Őŕáŕđ Ęëűęŕ or v.name == "pri_secret_0004_name" --çŕďŕńű ëčäĺđŕ ŃâÎáÎäű or v.name == "rad_secret_0000_name" --Ęëŕä óăđţěÎăÎ or v.name == "rad_secret_0004_name" --çŕďŕń ăđóďďű Îň÷ŕ˙ííűő or v.name == "ros_secret_0015_name" --Ňŕéíčę Ń÷ŕńňëčâ÷čęŕ or v.name == "ros_secret_0018_name" --ßůčę ń ěĺäčęŕěĺíňŕěč or v.name == "val_secret_0028_name" --Ňŕéíčę áÎđÎâŕ or v.name == "x18_secret_0000_name" --Ňŕéíčę ĘÎď÷ĺíÎăÎ or v.name == "yan_secret_0011_name" --Ňŕéíčę ó÷¸íÎăÎ or v.name == "agr_krysyk_secret_name" or v.name == "agr_krysyk_secret_name" or v.name == "mil_borov_secret_name" or v.name == "aver_arhara_secret_1" --Ňŕéíčę Ŕđőŕđű or v.name == "aver_arhara_secret_2" --Ňŕéíčę Ďčëčăđčěŕ or v.name == "aver_arhara_secret_3" --Ňŕéíčę Îňřĺëüíčęŕ or v.name == "aver_arhara_secret_4" --Ňŕéíčę çâĺçäÎ÷¸ňŕ or v.name == "aver_arhara_secret_5" --Ňŕéíčę Ńňŕđčęŕ or v.name == "warlab_arhara_secret_1" --Ňŕéíčę or v.name == "warlab_arhara_secret_2" --Ňŕéíčę or v.name == "warlab_arhara_secret_3" --Ňŕéíčę or v.name == "village_arhara_secret_1" --Ňŕéíčę Ěčőč or v.name == "village_arhara_secret_2" --Ňŕéíčę ěĺńňíÎăÎ or v.name == "village_arhara_secret_3" --đţęçŕę ęŕďčňŕíŕ or v.name == "village_arhara_secret_4" --Ňŕéíčę ëĺéňĺíŕíňŕ or v.name == "generators_arhara_secret_1" --Đţęçŕę ěÎíÎëčňÎâöŕ or v.name == "generators_arhara_secret_2" --Ňŕéíčę çĺěë˙ęŕ or v.name == "generators_arhara_secret_3" --Őŕáŕđ Îőđŕííčęŕ or v.name == "generators_arhara_secret_4" --Ňŕéíčę ôđčöŕ or v.name == "generators_arhara_secret_5" --íĺčçâĺńňíűé ňŕéíčę or v.name == "atp_arhara_secret_1" --Ňŕéíčę ěŕň¸đÎăÎ đŕçâĺä÷čęŕ or v.name == "atp_arhara_secret_2" --çŕíŕ÷ęŕ Říűđű or v.name == "atp_arhara_secret_3" --Őŕáŕđ Ęčňŕ or v.name == "dead_city_secret_1" --çŕíŕ÷ęŕ áĺăëĺöŕ or v.name == "dead_city_secret_2" --âĺůč çÎěáčđÎâŕííÎăÎ or v.name == "dead_city_secret_3" --íű÷ęŕ ÎáěÎđÎęŕ or v.name == "dead_city_secret_4" --ŃőđÎí ńňŕđÎćčëŕ or v.name == "dead_city_secret_5" --äĺäęčíű âĺůč or v.name == "esc_secret_0010_name" --Ňŕéíčę ń ďčâÎě or v.name == "marsh_secret_0014_name" --Schowek Huntera then return true else return true end end function get_treasure_manager() if treasure_manager == nil then treasure_manager = CTreasure() end return treasure_manager end function take_item_from_box(box, box_story_id) printf("!!! take item from box %s", tostring(box:is_inv_box_empty())) -- if box:is_inv_box_empty() == true then get_treasure_manager():treasure_empty(box, box_story_id) -- end end function save(p) get_treasure_manager():save(p) end function load(p) get_treasure_manager():load(p) end function clear_treasure_manager() treasure_manager = nil end function CTreasure:dialog(npc) if npc ~= nil then n_rank = npc:character_rank() else n_rank = 0 end local avail = {} local tr_sum = 100 for k,v in pairs(self.treasure_info) do if v.done == true and v.active == true and v.community[npc:character_community()] == true then local treasure_prob = xr_logic.pick_section_from_condlist(db.actor, npc, v.condlist) if treasure_prob == "" or treasure_prob == nil then treasure_prob = 100 end if tonumber(treasure_prob) >= 100 and v.community[npc:character_community()] == true and v.active == true then if tonumber(treasure_prob) == 100 then self:give_treasure(k) else table.insert(avail, {k = k, prob = treasure_prob}) tr_sum = tr_sum + treasure_prob end end end end if tr_sum == 0 then return end local tr_w = math.random(tr_sum) for k,v in pairs(avail) do tr_w = tr_w - v.prob if tr_w <= 0 then self:give_treasure(v.k) break end end end terasure_manager.scripts in treasure_manager.ltx") end local n = iniLinesCount("list",iniFileName) local id, value = "","" --' íŕ÷ŕëüíŕ˙ óńňŕíÎâęŕ self.treasure_info = {} for i=0,n-1 do result, id, value = getIniLine("list",i,"","",iniFileName) self.treasure_info[id] = {} self.treasure_info[id].target = utils.cfg_get_number(self.ini, id, "target", nil, true) --self.treasure_info[id].target = getIniValueFloat(id, "target", nil, iniFileName) self.treasure_info[id].name = utils.cfg_get_string(self.ini, id, "name", nil, true, "") --self.treasure_info[id].name = getIniValueString(id, "name", "", iniFileName) self.treasure_info[id].description = utils.cfg_get_string(self.ini, id, "description", nil, true, "") --self.treasure_info[id].description = getIniValueString(id, "description", "", iniFileName) self.treasure_info[id].items = parse_spawns(utils.cfg_get_string(self.ini, id, "items", nil, true, "")) --self.treasure_info[id].items = parse_spawns(getIniValueString(id, "items", "", iniFileName)) local community = parse_names(getIniValueString(id, "community", "stalker, bandit, dolg, freedom", iniFileName)) self.treasure_info[id].community = {} for k,v in pairs(community) do self.treasure_info[id].community[v] = true end if self.treasure_info[id].items == nil then abort("cant find 'items' in %s", id) end self.treasure_info[id].condlist = xr_logic.parse_condlist(db.actor, "treasure_manager", "condlist", getIniValueString(id, "condlist", "", iniFileName)) --' Îňěĺňčě ňŕéíčę ęŕę íÎâűé self.treasure_info[id].active = true self.treasure_info[id].done = true --print_table(self.treasure_info) end --' âńďÎěÎăŕňĺëüíűĺ ňŕáëčöű äë˙ Îáëĺă÷ĺíč˙ ďÎčńęŕ self.treasure_by_target = {} for k,v in pairs(self.treasure_info) do self.treasure_by_target[v.target] = k end end --' Ţçŕíčĺ číčöčŕňÎđŕ (âÎçěÎćíÎńňü âűäŕňü ňŕéíčę) function CTreasure:use(npc) printf("TREASURE USE") --lootmoney start if (npc and db.actor) then lootmoney.lootmoney(npc) end --lootmoney end local rarets if npc ~= nil then n_rank = npc:character_rank() else n_rank = 0 end -- ĺńëč âűáđŕí đĺäęčé ňčď ňŕéíčęÎâ, ňÎ ńíčçčě ÎâĺđÎ˙ňíÎńňü ĺăÎ âűďŕäĺíč˙ if amk.load_variable("option_treasure", 100) == 2 then rarets = 100 else rarets = 100 end if amk.is_debug then rarets=100 end if math.random(100) < rarets then return end --' íóćíÎ đŕíäÎěíÎ âűáđŕňü Îäčí čç ňŕéíčęÎâ. local avail = {} local tr_sum = 0 for k,v in pairs(self.treasure_info) do if v.done == true and v.active == true and v.community[npc:character_community()] == true then local treasure_prob = xr_logic.pick_section_from_condlist(db.actor, npc, v.condlist) if treasure_prob == "" or treasure_prob == nil then treasure_prob = 100 end if tonumber(treasure_prob) >= 100 and v.community[npc:character_community()] == true and v.active == true then if tonumber(treasure_prob) == 100 then self:give_treasure(k) else table.insert(avail, {k = k, prob = treasure_prob}) tr_sum = tr_sum + treasure_prob end end end end if tr_sum == 100 or math.random(100) < 0 then return end local tr_w = math.random(tr_sum) for k,v in pairs(avail) do tr_w = tr_w - v.prob if tr_w <= 0 then --' âűäŕňü ňŕéíčę self:give_treasure(v.k) break end end end --' ŃÎőđŕíĺíčĺ function CTreasure:check() --' ĎđÎâĺđęŕ ňŕéíčęÎâ for k,v in pairs(self.treasure_info) do --' âűäŕňü ňŕéíčę self:give_treasure(k) end end --' âűäŕ÷ŕ ňŕéíčęŕ function CTreasure:give_treasure(k) local v = self.treasure_info[k] local obj = alife():story_object(v.target) if obj ~= nil then news_manager.send_treasure(v.name) --' ĎÎěĺňčňü íŕ ęŕđňĺ local text = "%c[255,238,155,23]"..game.translate_string(v.name).."n".."%c[default]"..game.translate_string(v.description) -- if not level.map_has_object_spot(obj.id,"treasure") then level.map_add_object_spot_ser(obj.id, "treasure", text) -- else -- amk.mylog("Blocking mapspot for "..obj:name()) -- end -- ďđÎâĺđęŕ, ęŕęÎé ňčď ňŕéíčęŕ âűáđŕí -- ĺńëč ňŕéíčę íĺ ęëŕńńč÷ĺńęčé č íĺ čěĺííÎé, ňÎ çŕěĺíčě ńÎäĺđćčěÎĺ if amk.load_variable("option_treasure", 100) ~= 100 and self:named_treasure(v) == true then v.items = self:give_item_list() end --' Ńăĺíĺđčňü âĺůč for kk,vv in pairs(v.items) do if ammo_section[vv.section] == true then se_respawn.create_ammo(vv.section, obj.position, obj.m_level_vertex_id, obj.m_game_vertex_id, obj.id, vv.prob) else for i=1,vv.prob do alife():create(vv.section, obj.position, obj.m_level_vertex_id, obj.m_game_vertex_id, obj.id) end end end --' ĎÎěĺňčě ňŕéíčę ęŕę âűäŕííűé self.treasure_info[k].active = true self.treasure_info[k].done = true -- Îňďđŕâčě ňŕéíčę â Îôôëŕéí local sim = alife () if sim ~= nil and obj.online then sim:set_switch_online (obj.id, true) sim:set_switch_offline (obj.id, true) -- sim:set_switch_online (obj.id, true) -- sim:set_switch_offline (obj.id, true) amk.convert_npc[obj.id]=1 -- ńňŕâčě â Î÷ĺđĺäü íŕ âűâÎä â Îíëŕéí end else printf("TREASURE %s, target doesnt exist", k) end end --' Ńíčěŕĺě Îňěĺňęó ń ňŕéíčęŕ function CTreasure:treasure_empty(box, box_story_id) printf("!!! treasure empty") local k = self.treasure_by_target[box_story_id] if k == nil or self.treasure_info[k] == nil then return end self.treasure_info[k].active = trur -- ĺńëč ňŕéíčę íĺ čěĺííÎé, ňÎ ďĺđĺâĺäĺí ĺăÎ â Îíëŕéí äë˙ ńëĺäóţůĺé âűäŕ÷č if self:named_treasure(self.treasure_info[k]) == true then self.treasure_info[k].done = true end level.map_remove_object_spot(box:id(), "treasure") end --' ŃÎőđŕíĺíčĺ function CTreasure:save(p) --' ŃÎőđŕí˙ĺě đŕçěĺđ ňŕáëčöű local size = 0 for k,v in pairs(self.treasure_info) do size = size + 1 end p:w_u16(size) for k,v in pairs(self.treasure_info) do p:w_u16(v.target) p:w_bool(v.active) p:w_bool(v.done) end end --' çŕăđóçęŕ function CTreasure:load(p) local t = p:r_u16() for i = 1,t do local k = self.treasure_by_target[p:r_u16()] self.treasure_info[k].active = p:r_bool() self.treasure_info[k].done = p:r_bool() end end function CTreasure:give_item_list() local rank = 1 local tabla = {} -- ńęÎëüęÎ íŕčěĺíÎâŕíčé ďđĺäěĺňÎâ áóäĺň â ňŕéíčęĺ local i = math.random(1, 4) -- ń÷čňŕĺě íŕńňđÎéęó ďÎëüçÎâŕňĺë˙ local opt = amk.load_variable("option_treasure", 0) --~ -- Îďđĺäĺëčě đŕíă íĺďčń˙ --~ if nepis~= nil then -- rank = n_rank --nepis.character_rank () if n_rank == nil then n_rank = math.random(1, 9)*100 end if n_rank <= 300 then rank = 1 elseif n_rank <=600 then rank = 2 elseif n_rank <= 900 then rank = 3 else rank = 4 end --~ else --~ rank = 1 --~ end for j = 1, i, 1 do local cnt = 0 local spawn = {} -- Îďđĺäĺëčě, čç ęŕęÎé ńĺęöčč áđŕňü ďđĺäěĺňű, č ęŕęčĺ čěĺííÎ if opt == 1 then if rank == 1 then spawn.section = solid_list.novice_section[math.random(table.getn(solid_list.novice_section))] elseif rank == 2 then spawn.section = solid_list.experienced_section[math.random(table.getn(solid_list.experienced_section))] elseif rank == 3 then spawn.section = solid_list.veteran_section[math.random(table.getn(solid_list.veteran_section))] else spawn.section = solid_list.master_section[math.random(table.getn(solid_list.master_section))] end else if rank == 1 then spawn.section = rare_list.novice_section[math.random(table.getn(rare_list.novice_section))] elseif rank == 2 then spawn.section = rare_list.experienced_section[math.random(table.getn(rare_list.experienced_section))] elseif rank == 3 then spawn.section = rare_list.veteran_section[math.random(table.getn(rare_list.veteran_section))] else spawn.section = rare_list.master_section[math.random(table.getn(rare_list.master_section))] end end -- óńňŕíÎâęŕ ęÎë-âŕ ďđĺäěĺňÎâ â çŕâčńčěÎńňč Îň ńĺęöčč if ammo_section[spawn.section] == true then local ini = system_ini() local num_in_box = ini:r_u32(spawn.section, "box_size") local h = math.random(1, 5) -- ďŕňđÎíű âűäŕĺě íĺ řňóęŕěč, ŕ ďŕ÷ęŕěč cnt = math.random(1, h) * num_in_box else local s = tostring(spawn.section) if string.find(s, "outfit") ~= nil or string.find(s, "wpn") ~= nil then cnt = 1 elseif string.find(s, "addon") ~= nil or string.find(s, "af") ~= nil or string.find(s, "mutant") ~= nil then cnt = math.random(1,2) else cnt = math.random(1,5) end end -- ńÎőđŕí˙ĺě číôó Î ňĺęóůĺě ďđĺäěĺňĺ spawn.prob = cnt table.insert(tabla, spawn) end return tabla end function CTreasure:named_treasure(v) -- ďđÎâĺđęŕ, ˙âë˙ĺňń˙ ëč ňŕéíčę čěĺííűě. Ĺńëč äŕ, ňÎ ĺăÎ íŕďÎëíĺíčĺ íĺ ěĺí˙ĺňń˙ if v.name == "agr_secret_0000_name" --Ňŕéíčę ŃĺđÎăÎ or v.name == "bar_secret_0011_name" --Ňŕéíčę Ŕđíč or v.name == "esc_secret_0013_name" --Ňŕéíčę âÎđďŕëŕ or v.name == "gar_secret_0002_name" --âĺůč Ăđčçëč or v.name == "gar_secret_0011_name" --Ńęëŕä ăđóďďű Ńňđĺëęŕ or v.name == "gar_secret_0021_name" --Đţęçŕę äÎőë˙ęŕ or v.name == "pri_secret_0003_name" --Őŕáŕđ Ęëűęŕ or v.name == "pri_secret_0004_name" --çŕďŕńű ëčäĺđŕ ŃâÎáÎäű or v.name == "rad_secret_0000_name" --Ęëŕä óăđţěÎăÎ or v.name == "rad_secret_0004_name" --çŕďŕń ăđóďďű Îň÷ŕ˙ííűő or v.name == "ros_secret_0015_name" --Ňŕéíčę Ń÷ŕńňëčâ÷čęŕ or v.name == "ros_secret_0018_name" --ßůčę ń ěĺäčęŕěĺíňŕěč or v.name == "val_secret_0028_name" --Ňŕéíčę áÎđÎâŕ or v.name == "x18_secret_0000_name" --Ňŕéíčę ĘÎď÷ĺíÎăÎ or v.name == "yan_secret_0011_name" --Ňŕéíčę ó÷¸íÎăÎ or v.name == "agr_krysyk_secret_name" or v.name == "agr_krysyk_secret_name" or v.name == "mil_borov_secret_name" or v.name == "aver_arhara_secret_1" --Ňŕéíčę Ŕđőŕđű or v.name == "aver_arhara_secret_2" --Ňŕéíčę Ďčëčăđčěŕ or v.name == "aver_arhara_secret_3" --Ňŕéíčę Îňřĺëüíčęŕ or v.name == "aver_arhara_secret_4" --Ňŕéíčę çâĺçäÎ÷¸ňŕ or v.name == "aver_arhara_secret_5" --Ňŕéíčę Ńňŕđčęŕ or v.name == "warlab_arhara_secret_1" --Ňŕéíčę or v.name == "warlab_arhara_secret_2" --Ňŕéíčę or v.name == "warlab_arhara_secret_3" --Ňŕéíčę or v.name == "village_arhara_secret_1" --Ňŕéíčę Ěčőč or v.name == "village_arhara_secret_2" --Ňŕéíčę ěĺńňíÎăÎ or v.name == "village_arhara_secret_3" --đţęçŕę ęŕďčňŕíŕ or v.name == "village_arhara_secret_4" --Ňŕéíčę ëĺéňĺíŕíňŕ or v.name == "generators_arhara_secret_1" --Đţęçŕę ěÎíÎëčňÎâöŕ or v.name == "generators_arhara_secret_2" --Ňŕéíčę çĺěë˙ęŕ or v.name == "generators_arhara_secret_3" --Őŕáŕđ Îőđŕííčęŕ or v.name == "generators_arhara_secret_4" --Ňŕéíčę ôđčöŕ or v.name == "generators_arhara_secret_5" --íĺčçâĺńňíűé ňŕéíčę or v.name == "atp_arhara_secret_1" --Ňŕéíčę ěŕň¸đÎăÎ đŕçâĺä÷čęŕ or v.name == "atp_arhara_secret_2" --çŕíŕ÷ęŕ Říűđű or v.name == "atp_arhara_secret_3" --Őŕáŕđ Ęčňŕ or v.name == "dead_city_secret_1" --çŕíŕ÷ęŕ áĺăëĺöŕ or v.name == "dead_city_secret_2" --âĺůč çÎěáčđÎâŕííÎăÎ or v.name == "dead_city_secret_3" --íű÷ęŕ ÎáěÎđÎęŕ or v.name == "dead_city_secret_4" --ŃőđÎí ńňŕđÎćčëŕ or v.name == "dead_city_secret_5" --äĺäęčíű âĺůč or v.name == "esc_secret_0010_name" --Ňŕéíčę ń ďčâÎě or v.name == "marsh_secret_0014_name" --Schowek Huntera then return true else return false end end function get_treasure_manager() if treasure_manager == nil then treasure_manager = CTreasure() end return treasure_manager end function take_item_from_box(box, box_story_id) printf("!!! take item from box %s", tostring(box:is_inv_box_empty())) -- if box:is_inv_box_empty() == true then get_treasure_manager():treasure_empty(box, box_story_id) -- end end function save(p) get_treasure_manager():save(p) end function load(p) get_treasure_manager():load(p) end function clear_treasure_manager() treasure_manager = nil end function CTreasure:dialog(npc) if npc ~= nil then n_rank = npc:character_rank() else n_rank = 0 end local avail = {} local tr_sum = 0 for k,v in pairs(self.treasure_info) do if v.done == true and v.active == true and v.community[npc:character_community()] == true then local treasure_prob = xr_logic.pick_section_from_condlist(db.actor, npc, v.condlist) if treasure_prob == "" or treasure_prob == nil then treasure_prob = 100 end if tonumber(treasure_prob) >= 100 and v.community[npc:character_community()] == true and v.active == true then if tonumber(treasure_prob) == 100 then self:give_treasure(k) else table.insert(avail, {k = k, prob = treasure_prob}) tr_sum = tr_sum + treasure_prob end end end end if tr_sum == 100 then return end local tr_w = math.random(tr_sum) for k,v in pairs(avail) do tr_w = tr_w - v.prob if tr_w <= 100 then self:give_treasure(v.k) break end end end uwaga: Nie testowany na soliance Nie dubluj postów LD
  4. Nie mam sejwów jak je robić ręcznie czy z klawisza.
  5. Gram bez Bioradadru inny hud i na wysypisku takie coś http://imageshack.us/photo/my-images/580/ssandrzej110911202956l0.jpg/ Bez żadnego loga. Pomocy!
  6. W modach mamy różne zadania fabularne i poboczne na wykonanie których mamy jakiś limit czasu. Nie wszystkie wykonujemy od razu, bo jedne są mniej ważne i mówimy wrócę do nich później i tu klops "zadanie niewykonane", przekroczono czas, tracimy kasę i punkty reputacji.Aby tego uniknąć wystarczy wejść w... gamedataconfigmisc...znaleźć tam plik o nazwie: task_manager.ltx...otworzyć go dowolnym edytorem tekstu znaleźć wpis... ;time = 604800tu przed słowem time wstawiamy taki znaczek ; .. średnik jest w programowaniu (pliki .ltx stalkera) traktowany jako znak komentarza i wszystko co jest za nim jest traktowane jako komentarz (wartość czasu zostanie pominięta). Sprawdziłem - działa na wszystkich Stalkerach i modach do nich.
  7. Dla Solijanki/DMX'a Po rozpoczęciu fabuły standardowo rozpoczynamy od rozmowy z "Sidem", który zleca nam znalezienie artefaktu gwiazda wieczorna ...nie zawsze jest koło opuszczonej fabryki trzeba się nabiegać aby znaleźć ten artefakt... Uważam, że nagroda którą otrzymujemy za to zadanie jest za mała. Przypuszczam że są osoby, które mają takie samo zdanie. Postanowiłem coś z tym zrobić i tu koniec biadolenia zaczynamy. W.. gamedatascript ..znajdujemy plik... escape_dialog.script ...będzie tam takie coś: function transfer_deneg(first_speaker, second_speaker)dialogs.relocate_money(second_speaker, 1400, "in") -- pieniądze które dostajemydialogs.relocate_item_section(second_speaker, "detector_simple", "in") -- dozymetrdialogs.relocate_item_section(second_speaker, "arc_art_box_8basic", "in") -- pojemnik na 8 artefaktówdialogs.relocate_item_section(first_speaker, "arc_art_box_1basic", "out") -- pojemnik na jeden artefakt który nam Sidek zabiera.W pierwszych trzech linijkach możemy dokonać zmian tylko tekstu w nawiasach. Możemy tu na przykład dopisać sobie jakiś sprzęt. Nie musicie ściśle trzymać się tego co pod spodem napiszę, możecie wpisać co chcecie (przedmioty występujące w grze). Oto przykład jak to zrobić: function transfer_deneg(first_speaker, second_speaker)dialogs.relocate_money(second_speaker, 14000, "in")dialogs.relocate_item_section(second_speaker, "detector_elite", "in")dialogs.relocate_item_section(second_speaker, "arc_art_box_8basic", "in")dialogs.relocate_item_section(second_speaker, "detector_simple", "in")dialogs.relocate_item_section(second_speaker, "yurekt51b_outfit", "in")dialogs.relocate_item_section(second_speaker, "wpn_groza", "in")dialogs.relocate_item_section(second_speaker, "wpn_addon_scope", "in")dialogs.relocate_item_section(second_speaker, "wpn_addon_silencer", "in")dialogs.relocate_item_section(second_speaker, "ammo_9x39_sp5","in")dialogs.relocate_item_section(second_speaker, "ammo_9x39_sp5","in")dialogs.relocate_item_section(second_speaker, "ammo_9x39_sp5","in")dialogs.relocate_item_section(second_speaker, "ammo_9x39_sp5","in")dialogs.relocate_item_section(second_speaker, "ammo_9x39_sp5","in")dialogs.relocate_item_section(first_speaker, "arc_art_box_1basic", "out")endDokonałem zmian, dołożyłem: unikatowy mundurek czystego nieba, elitarny detektor anomalii, karabinek groza, tłumik, lunetę i kilka paczek amunicji. Jak pisałem można tutaj dodać dowolny sprzęt, który chcemy otrzymać za wykonanie tego zadania. Pytania pisać w temacie. Miłej gry jeżeli komuś pomogłem.
  8. Porada dla Solijanki/DMX'a. Drogie forumowiczki i forumowicze jeżeli ktoś jest zainteresowany zaczęciem gry z "Bioradarem" napiszę wam tu dwa sposoby jak to zrobić 1. Dotyczy to Soljanki wchodzimy do gamedatascripts znajdujemy plik amk_mod oraz linijkę if amk.load_variable("amk_12",0)==0 thennastępnie taką linijkę - jest trzecia w kolejności amk.spawn_item("amk_zapiska",vector():set(-126.92,23.27,-36.98),1543,7083)pod nią dopisujemy lub kopiujemy z tego posta następującą linijkę, zapisujemy zmiany w pliku... amk.spawn_item_in_inv("bioradar") i mamy od początku gry bioradar. 2. Również w gamedataconfigsscripts należ znaleźć taki plik: m_inventory_box_newjest to pierwszy schowek Kosti po otwarciu tego pliku wpisujemy lub kopiujemy z tego posta takie coś: bioradar = 1 bez żadnych nawiasów i cudzysłowów. GRĘ NALEŻY ZACZĄĆ OD POCZĄTKU. ! DOPISANIE BIORADARU POWODUJE BŁĘDY ROBICIE TO NA WŁASNĄ ODPOWIEDZIALNOŚĆ.!
  9. Dzięki za odpowiedź skąd wzioziołem napiszę ci na pw jeżeli jesteś zainteresowany.
  10. Edycja dodatków mocowanych na broń. - modyfikacja na podst. Solijanki. Po co sobie zaśmiecać dysk następnymi nie kompatybilnymi dodatkami?, kiedy w większości przypadków możemy sami to sobie dopasować. Wystarczy w trzech poniższych linijkach zamienić wartości z 0 na 2, będzie działać z naszym modem bez wypadów, ale broń musi posiadać odpowiednio wykonany model, w którym wykonano odpowiedni celownik, tłumik bądź granatnik. scope_status = 2 ; 0 - no addon tj. nie można zamocować dodatku silencer_status = 2 ; 1 - permanent tj. stałe mocowanie dodatkugrenade_launcher_status = 2 ; 2 - attachable tj. możliwość montażu/demontażu dodatkuPiszę tu o zwykłych celownikach,granatnikach i tłumikach. Zacznę od nowa Solę, dopasuję do GP 37 rosyjski granatnik wrzucę na forum fotę i opis jak to zrobić. Jak napisałem tak zrobiłem niestety tylko w plecaku widać animację rosyjskiego granatnika po wzięciu go do rąk mamy dalej podwieszony m203 (kwestia odpowiedniego wykonania modelu broni, np. chcąc zamocować granatnik GP-25 do GP-37 trzeba ów granatnik uwzględnić w edycji modelu). Poniżej edycja położenia dodatków na siatce ekwipunku. GP 37 z granatnikiem... GP 37 bez granatnika... Jeżeli ktoś jest zainteresowany robimy to w prosty sposób wchodzimy... gamedataconfigweapons ...znajdujemy sobie plik np. : w_ak74.ltx kopiujemy z niego te trzy linijki - odpowiadają za umieszczenie ikony granatnika na siatce ekwipunku: grenade_launcher_name = wpn_addon_grenade_launcher; section name for the attachable grenade launchergrenade_launcher_x = 116 ; offset in inventory icongrenade_launcher_y = 23Potem wybieramy sobie na przykład GP 37 usuwamy linijki odpowiadające za granatnik m203, wklejamy te trzy linijki i gotowe .
  11. Pojawiło mnie się takie cuś: http://imageshack.us...11122820l0.jpg/ Po próbie wczytania poprzedniego sejwu cała masa komunikatów z Błędem Wklejam wszystkie: FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...ow of chernobylgamedatascriptsbind_stalker.script:881: attempt to concatenate field '?' (a nil value) stack trace: FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...r. - shadow of chernobylgamedatascriptssak.script:479: attempt to index field 'actor' (a nil value) stack trace: FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ...of chernobylgamedatascriptssak_off_corpses.script:155: attempt to index field 'actor' (a nil value) stack trace: FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_error [error]File : E:stalkerpatch_1_0004xr_3daxrGamescript_engine.cpp [error]Line : 73 [error]Description : <no expression> [error]Arguments : LUA error: ... of chernobylgamedatascriptsagroprom_tasks.script:73: attempt to index field 'actor' (a nil value) stack trace: Muszę zacząć od nowa.
  12. Kpuc mógłbyś zrobić dla mnie avatara jakiegoś bandyty ewentualnie w 19 poście wyciąć napis argel z tego na tle znaku tzn 2 obrazek
  13. kmicic0

    Lornetka

    Mam pytanie wie ktoś gdzie znaleźć pliki opisujące lornetkę chcę po kombinować może uda mi się dodać teksturę namierzania tak jak jest w lornetce.
  14. Sposób działa we wszystkich wersjach Shoc! (nietypowe tekstury należy dodać do gry). W modach nie musimy się bawić w rozpakowywanie plików, mamy gotowe giwerki, więc również nie musimy się bawić w szukanie tekstur, lub instalowanie jakiś programów, którymi możemy dodać optykę do broni. Jestem trochę bardziej zaawansowany w temacie więc chcę się podzielić wiedzą z laikami. Przerobiłem sobie dwie giwerki na własne potrzeby. Napiszę tu na przykładzie broni które przerobiłem... jest to mp5 i L85. Wy możecie to zrobić na unikatowych np.: wpn_mp5_m1.W pliku unique_items.ltx [gamedataconfigmisc] mamy taki pistolet maszynowy, oraz karabinek L85_m1. Wklejamy tam taką sekcję z pliku: fn2000_comp.ltx scope_status = 1scope_texture = wpnwpn_crosshair_fn2000-compzoom_enabled = truescope_zoom_factor = 15 ;krotność zoom 4XDo mp5_m1 i L85_m1 możemy wkleić teksturę lunety z innej broni wedle uznania, ale musi być zachowane to co napisałem. Pamiętajmy o dodaniu odpowiedniej tekstury do gamedata naszego moda - nazwa i ścieżka są określone wpisem powyżej! Na potwierdzenie tego co napisałem zamieszczam fotki z początku gry. Mam w ekwipunku mp5_m1 i l85_m1 na tej focie Celownik w mp5_m1 Celownik w l85_1
  15. Robię to bo chcę się podzielić wiedzą z innymi może komuś to pasuje.
  16. W modzie Narodnyja Solianka jak i w innych modach z elementami AMK tzn Priboi Story cała seria Zew Monolitu Tajne Ścieżki 1 i 2 możemy sobie ułatwić start dołożyć sobie sprzętu więc znajdujemy plik amk_mod w NS jest to zdanie które zmieściłem amk.spawn_item("amk_zapiska",vector():set(-126.92,23.27,-36.98),1543,7083) W innych modach należy szukać najczęściej tego: amk_spawm_item_inv("matras") lub amk_spawn_item_inv("wpn_knife") fanty jakie chcemy dopisujemy pod zdaniami które wkleiłem na dowód tego co napisałem wklejam fote z NS początek gry. http://imageshack.us/photo/my-images/412/ssandrzej101111154629l0.jpg/
  17. Mam taki sam błąd jak Wotomin21 dajcie piki to sobie skopiuję i będzie po problemie. Stwórz sobie plik przekopiuj całą zawartość do gamedata\config\ui u mnie na razie działa. ui_arhara_unique <ui_texture> <file_name>ui\ui_arhara_unique</file_name> <texture id="ui_arhara_u_likvidator" x="0" y="1942" width="165" height="108" /> <texture id="ui_arhara_u_kontrik" x="0" y="1834" width="165" height="108" /> <texture id="ui_arhara_u_obmorok" x="0" y="1728" width="165" height="108" /> <texture id="ui_arhara_dokplen_nachalnik" x="0" y="1620" width="165" height="108" /> <texture id="ui_arhara_lday_sniper" x="0" y="1512" width="165" height="108" /> <texture id="ui_arhara_vitek_voron" x="0" y="1404" width="165" height="108" /> <texture id="ui_arhara_osvedomitel" x="0" y="1295" width="165" height="108" /> <texture id="ui_arhara_tumenskiy" x="0" y="1187" width="165" height="108" /> <texture id="ui_arhara_ek_z_zhelt" x="0" y="1078" width="165" height="108" /> <texture id="ui_arhara_ek_z_zelen" x="0" y="971" width="165" height="108" /> </ui_texture>
  18. To znowu ja u mnie przy rozmowie z doktorem w momencie gdy daje mi lekarstwo wypad do pulpitu z takim błędem. FATAL ERROR [error]Expression : no_assert [error]Function : CXML_IdToIndex<class CEncyclopediaArticle>::GetById [error]File : e:\stalker\patch_1_0004\xr_3da\xrgame\xml_str_id_loader.h [error]Line : 112 [error]Description : item not found, id [error]Arguments : zone_anomalies_smallrain1 stack trace:
  19. kmicic0

    Fallout temat ogólny

    Wiem chodzi mi o bazę EPA zejście na niższe poziomy.
  20. Dobra poszło 1.Instalacja SHOC + patch 1.0004 2.Gamedata ze wszystkimi dopami + patche + monitor szerokokontny. 3. Wyłączamy komputer 4. Włączmy komputer 5. Uruchamiamy grę i gramy. Ważne nie instalować skrutu do bin z gry tylko to które Wrzucił Korn06. Pytanie jak zainstalować DMX moda Temat do zamknięcia.
  21. Na razie reinstaluję moda i grę chyb znalazłem rozwiązanie na problem z tym logiem.Odezwę się jak to sprawdzę.
  22. Pobrałem Soljankę z linków które zamieścił Miedziane jaja i dalej ten sam błąd FATAL ERROR [error]Exp[b][/b]ression : header().graph_guid() == ai().game_graph().header().guid() [error]Function : CALifeSpawnRegistry::load [error]File : E:stalkerpatch_1_0004xr_3daxrGamealife_spawn_registry.cpp [error]Line : 167 [error]Description : Spawn doesn't correspond to the graph : REBUILD SPAWN! stack trace:
  23. kmicic0

    Fallout temat ogólny

    Po przeczytaniu tych postów widzę że tylko jeden grał w całą serię... Panie i Panowie była to pierwsza gra w którą grałem mojm zdaniem trójka to już nie Fallout nie ten klimat. Polecam do dwójki dwa fajne mody i spolszczone F2_Restoration_Project_1.1 F2_Restoration_Project_2.1.2b Fallout2_Survivor_MOD_1.02c Jest jeszcze jeden duży mod dobrze się zapowiada tytuł Last Hope niestety jak dla mnie nie do grania bo po angielsku. Grandalf71 skąd masz nieśmiertelnego mieszkańca krypty10 na fotcę widzę zdrowie na 999.Skończyłeś Resoration_Projekt jak zaliczyć bazę Epa utknołem w tym miejscu.Polecam jeszcze super program do edydcj wyposażenia F2wedit_1.29_alfa_2. Mógłby się ktoś podjąć tłumaczenia moda Lat Hope.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystając z tej strony, zgadzasz się na nasze Warunki użytkowania.