| 20:57:08 5 September 2009
On forum: 11/12/2008
Message edited by:
Yep, seems to be working fine, all you need to change is the first line:|
if npc:story_id()~=501 or zombi then
story_id 501 is the "red_bridge_comander_restr". I'll also look into sorting out the Yantar mission in the same way, as that has caused problems for me before (maybe the DV factory mission too).
EDIT: Actually, ignore what I just said, that code seems to break the script entirely, so no NPC's loot anything
Still working on it though...
Powered By Booze™
| 10:26:40 5 September 2009
Whos got the Kokoretsi?
On forum: 07/07/2009
can you be abit more specific on the problem, il see what i can do, i havnt reached there yet, in fact i should later on, just takeing breaks in-between.
Sure, the problem with that mission is that all the squads tend to go off looting the dead bandits instead of doing what they're supposed to be doing. The CS squad also tend to walk across thin-air (where the bridge would be if it had been lowered) trying to get to the bodies on the other side.
The best way I can think of fixing it would be to somehow stop those squads from looting at all, although how you would do that I don't know
do the zombied loot or zombies, nope.
check this line out, you could add to it, who you add makes them not loot, i think.
local zombi=npc:character_community()=="zombied" or npc:character_community()=="trader" or npc:character_community()=="arena_enemy" or npc:name()=="mil_stalker0012" or npc:name()=="yantar_ecolog_general" or npc:name()=="mil_freedom_member0021"
you can check gameplay desc for that map, and add to the line, makes them not loot,
somewhere in here...
if bgwith(act_sec,"camper" then
local busy=bgwith(act_sec,"walker" or bgwith(act_sec,"combat" or bgwith(act_sec,"danger"
if res and self.st.block_search then
timed(self.st,"tm1",5000+math.random()*10000, function () local min_dist=100000 local function check_item(o) local obj=o bject() if obj_owner[obj:id()] and (level.object_by_id(obj_owner[obj:id()])==nil or level.object_by_id(obj_owner[obj:id()]):alive()==false) then obj_owner[obj:id()]=nil end if (not self.st.disabled_objects[obj:id()]) and (obj arent()==nil or not IsStalker(obj arent())) and (obj_owner[obj:id()]==nil or obj_owner[obj:id()]==npc:id()) and npc:accessible(obj:level_vertex_id()) and (db.actor==nil or db.actor:alive()==false or db.actor osition():distance_to_sqr(obj osition())>6) then local valuable,corpse=isValuable(obj) if valuable then local value=3000 if not corpse then value=objValue(obj) end if value<=0 then value=0 end local max_dist=5+math.sqrt(value) if busy then max_dist=max_dist/5 end local dist=level.vertex_position(obj:level_vertex_id()):distance_to(npc osition()) local corrected_dist=dist if dist>5 then corrected_dist=5+(dist-5)/math.sqrt(value) end if dist<max_dist and corrected_dist<min_dist and dist<dist_limit then min_dist=corrected_dist claimGObject(npc,self.st,obj) res=true end end end end for o in npc:memory_visible_objects() do check_item(o) end for o in npc:memory_sound_objects() do check_item(o) end if res then end end ) return res end
as for the other prob, im still on it, wont be long.
"DC Beta v0.65.5" & "Patch Build 4".
Currently working on
"The Lions Roar v1.0" (TLR v1.0 Estimated 2012).