#╙🖇mods-making-discussion

1 messages · Page 109 of 1

desert tinsel
#

mhhm ive got it set as 1, however pressing it nothing happens

#

but the moment i pull out my knife it also draws the detector

#

so clearly it is pulling it out, but not with the weapon

main plover
#

And it might not work on already spawned weapons idk if that's true but it should work

desert tinsel
#

says it should work midsave

#

i have the part down for it fitting and being taken out in the pistol slot
just seemed the one handed part wasn't working the best

#

okay what i think is happening

#

maybe i need to imput an animation like the p90 has in order for the detector to pop out

main plover
desert tinsel
#

guh

desert tinsel
#

i didnt' read the fine text
"may have issues with pre-existing items, find or spawn a new one"

desert tinsel
#

i have now made an abomination

#

i have created a branched upgrade for the pp-2000 to be converted to 45 TROLLED

desert tinsel
#

i have arised a new question
how might one look at/change the value of certain ammo?
not crafting, but damage wise

#

and armor penetration aswell

alpine wraith
#

anyone know how i can edit a weapon so it can go in melee/vision slot

desert tinsel
#

actually yea, what weapon?

alpine wraith
desert tinsel
#

i just did that lol

#

like 15 messages up

alpine wraith
desert tinsel
#

do you want to make a fresh mod in your mo2 for it?

#

as i can just pass you the file

alpine wraith
#

yea thatd be sweet

desert tinsel
#

should be able to slap it right into the bottom of your mo2, restart your game, and should work

alpine wraith
#

awesome ima try it out thanks again dude

desert tinsel
#

ye, get back to me as it SHOULD work

#

(i just got mine to do it)

alpine wraith
#

can u point me to where those weapon files are in case i wanna do another one

desert tinsel
#

BUT
if you do, do all that
it's configs\items\weapons

#

it was a pain in the ass to get unpacked (im stupid) but thats where i got the pp-2000 ltx file from

#

i also do have those unpacked files in a zip if you want those too

alpine wraith
desert tinsel
#

kekcorn enjoy your guns

north coral
#

Hey guys, So I want to use Grass And trees by PanceRide summer edition however I can't find any installation instructions, any help would be appreciated

alpine wraith
#

lmk if u want the file

desert tinsel
noble temple
#

https://imgsli.com/Mzg0NjE3 made a quick comparison for the effect the bump# rgb channels have on the normal map - basically it's the inverse of the DXT texture compression of the normal map to try and smooth out some of the blockiness post compression

#

might look into a way to generate them without having to use the actor editor since the sdk is kinda cumbersome nowadays if you don't need it for your usecase

alpine wraith
#

anyone know where the vz68 weapon ltx is? i find vz61 but when i change the slot and onehandedness nothing happens

desert tinsel
#

i had to do that with my pp2000 for one handed to work

alpine wraith
#

lord forgive me

#

im bouta make the drozd a pistol slot

rare sage
#

i should make a diseases mod

#

eating raw or non purified food gives u diseases

#

stalker aids 2025

desert tinsel
#

cannablism mod 💯 💯

rare sage
#

15% chance for humans to have meat on them

#

Kuru in stalker

lucid spindle
rare sage
#

never played misery

lucid spindle
#

that mod is like billion years old

#

alot of survival mechanics in gamma are from that mod

desert tinsel
lean moth
#

is there a mod that adds the coughing and low health noises from eft to gamma?

rare sage
#

ohh

#

eft

#

not efp

#

its in efp probably tho

lean moth
#

idk i thought it would be a cool little feature

#

ill gladly make a mod like that but idk where to start

slow bolt
#

that one adds coughing

#

low health noises are also in gamma as well

#

so idk what you mean

undone spruce
lean moth
noble temple
#

i already figured out a way to replicate the bump# rgb error correction with substance designer, just need to polish it up, so i can do that very easily anyways

summer stream
#

they updated the plugin? CluelessBlind

bold gyro
#

After playing Military for a while, I would love a mod that allowed you to call in a helicopter for support - like the other soldiers who get attacked in Great Swamps or Cordon. You could use it when assaulting heavily occupied places. However, the trade off is that you'd need high reputation and you'd also need routinely wire bribes to high-ranking NPCs. It'd be a nice tool considering most factions want you dead.

mighty locust
#

@celest forge how do i make a gun skin?

celest forge
#

Depends on what you mean by "Skin"

mighty locust
#

yeah, like the sanrio skin haha

#

it works with uv texturing and uv wraps?

celest forge
#

Ah yeah just edit the texture

#

That's what I did for the BRN

#

Which admittedly was very lazy, I just color swapped the OG texture

mighty locust
#

i see, where do i find the files and sh ?

celest forge
#

Depends on the gun

mighty locust
#

the brn 180 ?

#

oh must be this one

main plover
dawn token
mighty locust
mighty locust
#

i think ill go for something like this

mighty locust
rare sage
dawn token
fair canopy
dawn token
jade oxide
eternal agate
#

any mod that lets vendors/mechanics purchase broken/damaged weapons?

#

or a way to enable that

drifting moat
#

This isn't the right channel for these kind of questions. You get an answer faster in the ones I linked

trim blaze
#

Can someone help me. I’m very new and confused to modding. I was told to export a file into a .ogf. I’m on X-ray Cop SDK. I don’t know how to load in the mutant and export it into a .OGF file

bold gyro
main plover
#

idk how it works never used it but there is definetly keybinding for helicopter attack

barren spruce
#

juan made it so it cant possibly be good shrug

fair pollen
#

I hate that he fucked up the reload ohno

#

You can literally see that there are a few added frames compared to the original reload.

#

Which is making it look worse, Imho.

undone spruce
#

i dont look at the gun

#

i look at the mf target

#

besides my gpu be butchering the frame for me to be looking at anims

celest forge
#

I didn't add any frames, just edited the left hand to fit the model

#

It was a bit sloppy, I would probably just make the anims myself if I was to make it today

fair pollen
#

It looks that way to me, but again, maybe someone can explain it better.
Perhaps it is what you are saying.

celest forge
#

Oh gamma changes the animations

#

In that case it's not a thing I made

fair pollen
#

Now that is confusing KekSkew

celest forge
#

In my version the grip is a normal rifle grip by the picatinny at the side of the handguard

#

Not by the magwell

fair pollen
#

Eh, I see the same thing from the moddb version, posted by you.

#

Unless there is sth in gamma that literally fucks this all up kek1

fair canopy
celest forge
#

Very possibly

fair pollen
#

Reload stayed the same.

tribal pike
#

What's the possibility of ever getting a Vr Mod for stalker gamma?

#

Into the radius exists but for some reason doesnt like my pc

#

And simply does not feel like stalker enough

celest forge
#

Near to none

fair canopy
#

ive heard that if you dm grok enough with your request he'll eventually add it

#

so the legend goes

tribal pike
#

Im not gonna pester grok

fair canopy
tribal pike
#

I cannot

#

It would be an undertaking

#

It would require some systems for all the extra inputs GAMMA adds, some type of decent inventory system/screen

undone spruce
#

upped the dam a bit more

random fulcrum
#

cause you got gbo'd

undone spruce
#

or i just let it dogass low

#

but semi autos are gonna be ass, i think i achieved a good balance, i just dont want a 1300rpm machine gun be op while 22lr

undone spruce
rare sage
#

#╓☢stalker-chat message @drifting moat
for some reason the trader restock call back activates when ever you talk to an npc, i assume this is due to you being able to trade with all npcs in vanilla anomaly

rare sage
#

when ever i talk to an npc i get a crash due to it trying to get m_game_vertex_id, an id of offline entities, on an online entity, the npc being talked to

drifting moat
#

I think there is a fairly simple fix for that. IIRC if you do npc.id it will return nil for online NPCs, but for offline ones it returns the ID

#

You could use this to determine how you have to handle the map querying

rare sage
#

i also need to determine if an npc is online/offline

drifting moat
#

+I think there is a flag indicating if NPCs are traders

drifting moat
rare sage
#

i will look into this

drifting moat
#

I suggest you join the Anomaly DC too

#

The modding chat there can help too with these types of questions. There are engine modders there too

rare sage
#

yay it works
i now know if someones a trader

#

no more crashes

#

:D

#

for now

#

ok

#

so

#

now

#

fix npc determination

#

ok why does map always return invalid

#

it DOES get the right maps

drifting moat
rare sage
#


local cfg = trade_manager.get_trade_profile(npc:id(), "cfg_ltx")
    local is_trader = cfg and cfg ~= "items\\trade\\trade_generic.ltx" and cfg ~= "items\\trade\\trade_companion.ltx"```
quasi narwhal
rare sage
#

ok thats why it doesnt work

#

ok

#

agroprom is nearby but isnt a valid map

#

this should get it right?

#

fixed it

#

chat

#

we have mutant counting

#

now to iterate through said mutants and determine their kind

drifting moat
rare sage
#

this worked

drifting moat
rare sage
drifting moat
# rare sage

Not compatible with redone, idk if there is an API call or lua function call to get back all mutants. Maybe an ltx contains them

rare sage
#

those names are taken from an ltx
i dont think redone adds any cookable items does it?

drifting moat
#

If you want to try and be dynamic you could check how/where mutants are added, but you would need to know ehat parts they can drop too

#

It is probably a hassle

rare sage
#

dont think this will work but worth a shot

drifting moat
rare sage
#

it didnt crash

drifting moat
# rare sage

I would move this out of the function to a constant. No reason to instantiate it for each call of the function

rare sage
#

true

#

do i push

#

id to mutants

#

or

#

the sim object

#

oooo

#

theres functions to check if its a specific mutant

#

thatll be easier than doing the mutant_ids

#

oh only for some mutants

#

ok so it uses

#

class ids

#

to determine what is what

drifting moat
#

I would just push the Id. You can always get the object later. Better for performance for sure

rare sage
#

ohh true

#

@drifting moat it works

#

20 food producing mutants found

#

dont ask why it runs 6392 times

drifting moat
#

Isn't because you iterate all ids?

rare sage
#

nope this is just mutants

drifting moat
#

What is the function that runs a lot show me

rare sage
#

i got it to only run

#

210 times

rare sage
#
function iterate_trader_items()
    local total_bloodsuckers = 0
    local total_boars = 0
    local total_chimeras = 0
    local total_dogs = 0
    local total_fleshes = 0
    local total_snorks = 0
    local total_tushankos = 0
    local total_no_id = 0

    local sim = alife()
    for key, value in pairs(mutants) do
        local mutant = sim:object(value)

        if mutant:clsid() == clsid.bloodsucker_s then
            total_bloodsuckers = total_bloodsuckers + 1
        elseif mutant:clsid() == clsid.boar_s then
            total_boars = total_boars + 1
        elseif
            mutant:clsid() == clsid.dog_s
            or mutant:clsid() == clsid.psy_dog_s
            or mutant:clsid() == clsid.pseudodog_s
        then
            total_dogs = total_dogs + 1
        elseif mutant:clsid() == clsid.chimera_s then
            total_chimeras = total_chimeras + 1
        elseif mutant:clsid() == clsid.flesh_s then
            total_fleshes = total_fleshes + 1
        elseif mutant:clsid() == clsid.snork_s then
            total_snorks = total_snorks + 1
        elseif mutant:clsid() == clsid.tushkano_s then
            total_tushankos = total_tushankos + 1
        else
            total_no_id = total_no_id + 1
        end
    end

    FileLogger.log("bloodsuckers: %s", total_bloodsuckers)
    FileLogger.log("boars: %s", total_boars)
    FileLogger.log("chimeras: %s", total_chimeras)
    FileLogger.log("dogs: %s", total_dogs)
    FileLogger.log("fleshes: %s", total_fleshes)
    FileLogger.log("snorks: %s", total_snorks)
    FileLogger.log("tushankos: %s", total_tushankos)
    FileLogger.log("mutants without id: %s", total_no_id)
end```
#

waitttt

#

this iterates over all items

#

im a dumbass

#

this hsouldnt be in iterate

rare sage
#

thats MUCH better

#

mutants without ids is uh

#

psysuckers
lurkers
and any modded in mutant

#

as they dont have clsids

drifting moat
rare sage
#

:3

#

another victim of my code

#

this script would kill you

#

ok

#

so

#

now

#

to iterate over the items

#

and determine if they have a food item

#

and set its amount ot what it should be

#

actually no

#

i just need to add the items to the trader

drifting moat
#

After refactoring the above script of course 😇

rare sage
#

functional first
refactor after

drifting moat
#

The above script is functional

rare sage
#

i mean the entire thing

drifting moat
#

Future Rain will love you more if you do it now

rare sage
#

ehhhhh

drifting moat
#

But sure develop as you seem fit. It's your mod after all

rare sage
#

ill release as is

#

that can only go well

rare sage
#
    total_mutants = {
        -- blood suckers
        0,
        -- boars
        0,
        -- chimeras
        0,
        -- dogs
        0,
        -- fleshes
        0,
        -- snorks
        0,
        -- tushankos
        0,
        -- no ids
        0,
    }

    local sim = alife()
    for key, value in pairs(mutants) do
        local mutant = sim:object(value)

        if mutant:clsid() == clsid.bloodsucker_s then
            total_mutants[0] = total_mutants[0] + 1
        elseif mutant:clsid() == clsid.boar_s then
            total_mutants[1] = total_mutants[1] + 1
        elseif mutant:clsid() == clsid.chimera_s then
            total_mutants[2] = total_mutants[2] + 1
        elseif
            mutant:clsid() == clsid.dog_s
            or mutant:clsid() == clsid.psy_dog_s
            or mutant:clsid() == clsid.pseudodog_s
        then
            total_mutants[3] = total_mutants[3] + 1
        elseif mutant:clsid() == clsid.flesh_s then
            total_mutants[4] = total_mutants[4] + 1
        elseif mutant:clsid() == clsid.snork_s then
            total_mutants[5] = total_mutants[5] + 1
        elseif mutant:clsid() == clsid.tushkano_s then
            total_mutants[6] = total_mutants[6] + 1
        else
            total_mutants[7] = total_mutants[7] + 1
        end
    end

    -- convert the total amounts to the food amounts
    for key, value in pairs(total_mutants) do
        value = value / amount_per_food[key]
    end```
#

technically a refactor

#

the determining what mutant is what is the worst part

#

of FUCK ME

#

😭

#

i forgot

#

arrays start at 1

#

for some fucking reason

drifting moat
#

total_mutants[tostring(mutant:clsid())] = total_mutants[tostring(mutant:clsid())] + 1

rare sage
#

what'd the table look like?

    total_mutants = {
          {"bloodsucker", 0}
          ....
        }```?
drifting moat
#

total_mutants
{
["bloodsucker"] = 0
}

rare sage
#

ooo

#

okay

drifting moat
#

It can crash if the entry does not exist

#

So check if it does before adding to it

#

If doesn't exist imstantiate it with 1.

#

Sry I'm from phone

rare sage
#

something like this?

#

just incase the clsid doesnt exist

#

or well

#

the entry

drifting moat
#

Ni

#

No

#

Replace "others" with the same mutant clsid thing, but instead of +1 do = 1

#

You can keep the no clsid fallback tho, but I think everything must have one

rare sage
#

like this?

drifting moat
#

Replace "others" with tostring(mutant:clsid())

#

If entry doesn't exist you create it with 1. If it does exist you increment it by 1

rare sage
#

ohhh

drifting moat
#

Also you might not need to convert clsid to string

rare sage
#

i believe theyre an enum so i might?

#

i mean it didnt crash

#

so

#

it seems to work

#

ok now to

#

spawn the items

#

how

rare sage
#

we hit 600 lines

#

dont ask how

#

i just did

#

ill just post this

drifting moat
rare sage
#

its now just this

#

from 400 lines to 30

#

wish there was command to reload a script

#

closing the game is getting annoying

drifting moat
drifting moat
rare sage
#

THAT RELOADS SCRIPTS?

drifting moat
#

What about supply levels other than 1?

drifting moat
rare sage
#

OMFG

drifting moat
#

In anomaly it also reloads XMLs

rare sage
#

so i cna

#

load up

#

test something

#

change code

#

f9

#

and the new code is there

drifting moat
#

rare sage
#

my lord

rare sage
#

ive been exiting the game any time i edit anything

drifting moat
#

No. You're injecting info for supply lvl 1 to the trader

#

I don't know how the trader_autoinject works actually, but from the code context it looks like that

rare sage
#

ok wait i have to test this

drifting moat
#

Juat make sure to tesr with higher supply levels though for your mod it shouldn't change a thing

rare sage
drifting moat
#

Actually no wait. You're good I think

rare sage
#

it works

#

if

#

it

#

fuckiung works

#

I CAN JUST F9

drifting moat
#

You can ditch this whole supply level thing if you don't want it to affect stock

rare sage
#

i cant imagine how long ive wasted closing the game and waiting 2 minutes to reload

#

ltx's dont overwrite what items can be added do they?

#

holy shit

#

i can reload ltx files with f9

#

also no they dont

drifting moat
#

But keep in mind. If you add a new file or change XML files you have to restart the game for them to work

rare sage
#

yea

#

issue

#

uh

#

tostring(mutant:clsid()) seems to be wrong

#

returns a number

#

not the name

#

returns like 133 not bloodsucker_s (idk if it maps to that just an example)

drifting moat
#

Okay. Why are you using clsid?

#

Just use id

#

Wait no

#

section?

misty mulch
#

that's section

lament current
#

hey, is there a way to surpass the 1 amount for mutant and stalker population. via ltx file etc.
the issue is im running RE:SPAWN mod. so i cant use ZCP. however. i want more to kill. 🙂

rare sage
#

am i

#

going to have to

#

manually put in

#

each variant of a mutant

rare sage
#

yes

barren spruce
#

not crediting author

#

classic stalker modder

rare sage
barren spruce
#

not even mine

rare sage
drifting moat
#

Hmm you're righ. You actually chose the right approach with clsid

drifting moat
#

And do you need the tostring even?

rare sage
#

and

#

idk how

#

or why

#

this si the entire thing

function get_mutant_amounts()
    total_mutants = {
        ["bloodsucker_s"] = 0,
        ["boar_s"] = 0,
        ["chimera_s"] = 0,
        ["dog_s"] = 0,
        ["psy_dog_s"] = 0,
        ["pseudodog_s"] = 0,
        ["flesh_s"] = 0,
        ["snork_s"] = 0,
        ["tushkano_s"] = 0,
        ["others"] = 0,
    }

    local sim = alife()
    for key, value in pairs(mutants) do
        local mutant = sim:object(value)

        if total_mutants[mutant:clsid()] then
            total_mutants[mutant:clsid()] = total_mutants[mutant:clsid()] + 1
            FileLogger.log("%s amount %s", mutant:clsid(), total_mutants[mutant:clsid()])
        else
            total_mutants[mutant:clsid()] = 1
            amount_per_food[mutant:clsid()] = 3
        end
    end

    -- convert the total amounts to the food amounts
    for key, value in pairs(amount_of_food) do
        value = total_mutants[key] / amount_per_food[key]
        FileLogger.log("%s amounts for food %s", key, amount_of_food[key])
    end
end
-- Trader stuff
function spawn_food(npc)
    local trade_table = {
        [1] = {
            ["meat_tushkano"] = amount_of_food["tushkano_s"],
            ["meat_dog"] = amount_of_food["dog_s"],
            ["meat_pseudodog"] = amount_of_food["pseudodog_s"],
            ["meat_flesh"] = amount_of_food["flesh_s"],
            ["meat_boar"] = amount_of_food["boar_s"],
            ["meat_snork"] = amount_of_food["snork_s"],
            ["meat_chimera"] = amount_of_food["chimera_s"],
        },
    }

    local trader_table = trade_table
    local supply_level = clamp(trader_autoinject.supply_level(npc, true) or 1, 1, 3)

    if trader_table[supply_level] then
        trader_autoinject.spawn_items(npc, trader_table[supply_level], false)
    end
end```
drifting moat
rare sage
#

mobile moment

drifting moat
#

Indeed

rare sage
#

clsid returns the int value not the name of it

drifting moat
#

Much better POGGIES1

#

What does this return?
mutant:name()

#

@rare sage

rare sage
rare sage
rare sage
#

apparently we have to write up a design document for the project
we we're told this the week before it was due
on the day i was off due to being sick

drifting moat
#

Better check the contract

rare sage
drifting moat
rare sage
#

okai

rare sage
drifting moat
#

Ah yeah. Got carried away

drifting moat
#

I guess we ran out of options

rare sage
#

conceptg

#
  if char == '0' or '1' or '2' or '3' or '4' or '5' or '6' or '7' or '8' or '9'
    clsid.remove(char)
  end
end```
drifting moat
#

but that would still get you the wrong string

rare sage
drifting moat
#

Ahh okay got it

#

Okay so

#

clsid is an enum you're right. The string part is the key and the number at the end is the value

drifting moat
#

That means. When collecting the entities you can just define the key as the enum name and then compare entity clsid against that name

rare sage
#

:clsid() seems to get the clsid + the entities id

#

as itll be like dog_s1234

drifting moat
#
    total_mutants = {
        [clsid.bloodsucker] = 0,
        [clsid.boar] = 0,
        ["chimera_s"] = 0, --same for all
        ["dog_s"] = 0,
        ["psy_dog_s"] = 0,
        ["pseudodog_s"] = 0,
        ["flesh_s"] = 0,
        ["snork_s"] = 0,
        ["tushkano_s"] = 0,
        ["others"] = 0,
    }
drifting moat
rare sage
#

i think im going insane

#

cause im stupid and cant code

#

i put :name not :clsid and was wondering where i went rwong

drifting moat
drifting moat
rare sage
#

😭

drifting moat
#

So now you're good to go

rare sage
#

it fucking works

#

IT WORKSSSS

#

i spawned a bunch of boars

#

and he had more food

#

it FUKCING WORKS

drifting moat
#

Also. How do you force restock trader?

rare sage
#

F7 -> restock trader

drifting moat
#

Of course it's there

rare sage
#

mr mechanic why do you haev food

drifting moat
rare sage
#

i need to specify which onesss

drifting moat
#

Twas too good to be true

drifting moat
rare sage
#

is there a place i can find which traders are which ingame?

random fulcrum
rare sage
#

theres "trade_monolith" and "trade_monolith_basic"

drifting moat
#

xr_conditions.check_npc_barman is what you need

rare sage
#

ahhh ok

random fulcrum
rare sage
#

i think barman is barkeep

drifting moat
#

@random fulcrum

rare sage
#

or im using the function wrong

random fulcrum
#

unused is such a weird name for it then

#

i'm crashing out

rare sage
drifting moat
drifting moat
# rare sage

Try passing db.actor() as first param. I have no idea why some have that, but try it

rare sage
#

whats passed for the first value of db actor

#

its a const but idk what one

random fulcrum
#

printf(db.actor())
looks inside
userdata
clueless

drifting moat
#

Call it like this: xr_conditions.check_npc_trader(db.actor, npc)

#

Idk why it's treated as warfare specific

rare sage
#

ahh ok

drifting moat
summer girder
main plover
#

Nice necro response KEK But surprisingly this rule of 15 only affects ammo parts idk why, and using not even number as amount of part like 1.2 works just fine so crafting recipe asks for like 18 parts instead of 15. And I added non ammo part item to recipe it just sacks with 1 for example file

random fulcrum
#

could be because ammo parts are coded in as ammo

main plover
#

And number at start of recipe should dicate x amount of items you get but It doesnt matter for ammo

ammo_9x19_pbp_bad              = 5, recipe_ammo_1, casing_p,4,powder_2,4,bullet_pistol,4,rasp_tool,1

I just overwritten box_stack for this ammo to 60.

misty mulch
main plover
misty mulch
dawn flare
#

hey, is the sway of weapons when scoped in controlled by a variable in the files? or is it tied to the animations?

main plover
#

Anyway

misty mulch
#

also i found out the hard way that all crafting recipes can only have between 2 and 4 inputs

main plover
#

it works as it shoul so shrudge

main plover
#

So it would be good change but it's so base mechanic that everyone is used to it's not worth a hassle

drifting moat
#

It wouldn't be that incredibly hard to extend though. The other route is complex items that consist of components

random fulcrum
#

instead of every 15th one

#

you can see how this is a problem

drifting moat
#

So you have to craft A, B, C, D item and item E's recipe is ABCD. This way you can extend recipes, but make it more complex also

random fulcrum
#

even if the id limit is sort of like the minecraft farlands

#

instead of walking there you're now sprinting

drifting moat
main plover
#

What if we could get engine edit that would be rounding up decimal numbers thonk

#

because when I put 1.333 it just asked for 19.9995 of bullets KEK

main plover
random fulcrum
#

simply edit MAX_ITEM_ID to a number bigger than 65536 in game.c

drifting moat
#

Maybe it wouldn't even need engine edits. Those ltx files are read by lua scripts

drifting moat
#
  • legend says someone already tried it and didn't end well
random fulcrum
#

that change was for max use count for items

#

not item id

#

which yes it did break any existing save files

main plover
random fulcrum
#

but worked fine on new games

misty mulch
drifting moat
#

But I would say it's fine as is

#

To extend ppl can implement complex recipes the ABCD way as I just theorized

drifting moat
dim spade
#

Is it possible for to add different versions of the M4 Tactical (from BAS) alongside the original M4 Tactical? For example one with the 30rnd mags and different grip or add one that is compatible with M203?

main plover
dim spade
#

I see

#

I'll try it out thanks

undone spruce
#

create a new ogf model the way you want it, then declare a new weapon in the ltx file that parents the original gun, and declaring the new ogf path for it

dim spade
#

Any guide videos I can watch?

dim spade
undone spruce
#

there is one specially about that, but i cant recall it

rare sage
#

check npc trader crashed me

#

LUA error: ...stalker/anomaly/bin/..\gamedata\scripts\tscs_main.script:124: attempt to call field 'check_npc_trader' (a nil value)

#

ok check_npc_trader didnt work i dont thnk

#

it doesnt

drifting moat
#

Did you call it like this? -> xr_conditions.check_npc_trader

rare sage
#

yesp

drifting moat
#

And it threw the nil error?

#

Look this is how it does that

#

Check npc:name() by logging it

rare sage
#

it seems to work now

#

no clu ehow

drifting moat
rare sage
#

its jus tthis

#

but like

#

i dont seem to be having an issue

drifting moat
#

Me = confused

#

So it works now with the script you sent and don't know why?

rare sage
#

yep

#

just checking merchants rn

drifting moat
#

👌

drifting moat
#

Glad it does

dim spade
#

I can take a weapon and add exact copy of it with altered stats but I cannot make it so that it uses different attachments

dim spade
#

Do I need to edit ogf files for that?

faint sable
#

Yep

#

to add new scopes and sights

dim spade
#

Damn

faint sable
#

you'd need to add more ogf huds

lethal garden
#

So, what do i need to add to LTX in order for a scope to change magnification like the elcan spectre does?

dim spade
#

New stuff to learn

dim spade
#

I assume I can swap magazines as well with this method?

faint sable
#

if by meaning the model no

#

if by meaning the ltx ammo type yea

dim spade
#

I meant model

#

Angled grips looks better with 60 rounder mags

faint sable
#

you'd have to add it as a model to the ogfs, also animation might not be good with the mag if it's a large one or too different from the original models size

dim spade
#

😄

#

I see

#

I was thinking something along the line of giving angled grip to butchers M4

faint sable
#

yea sadly unless you got an animation to hold the angle grip, it won't look good in game

lilac vessel
#

hey, question, is there any way to make tools rarer to find? i hate having advanced tools on day 1 hellonewstalker3

dim spade
faint sable
#

it'd not be able to use the 60 rnd since it doesn't exist animation wise

dim spade
#

This guy gave M4 Tactical angled grip but it uses 40 rounders

faint sable
#

that one just uses an angled foregrip or standard foregrip

#

mag size is relatively the same

dim spade
#

Does butchers M4 uses some other animation for reload then?

faint sable
#

the one with the 60 rounder probably uses the BAS animation which racks the charging handle and flips the hatch open and has barely no inspect animation

#

but has the 60 round

#

no animation exists to use that and an angled grip

dim spade
#

One of our tacticool M4's also uses angled grip

#

With 40 rounders XD

faint sable
#

yea but not the 60 drum

dim spade
#

Yeah

#

Gucci M4's use drum mags but they look too advanced for the most part

#

I always sue your ports btw

faint sable
#

what's guccis m4

dim spade
#

I meant use not sue lol

faint sable
#

lmao

dim spade
#

"Gucci" M4 lol

faint sable
#

that's basically the sai gry I did but a bit different

dim spade
#

As I said I use your mods but lack of GL for high end AR15s makes me sad

faint sable
#

yea no gl since the animations didn't use one

dim spade
#

Yeah

#

only freedom one has GL compatibility

faint sable
#

ah yea that one used the gl

#

however with a foregrip it can't

#

it's two separate animations

fair canopy
#

it could

#

but it requires some knowledge

faint sable
#

yea it can

#

athi teach them

fair canopy
#

hah no

faint sable
fair canopy
#

all my knoweldge is in video form

dim spade
#

@faint sable I cannot message in the mod-posting page so I'm asking here but does your weapons and modular attachment system work together?

#

It says I have to be a friend lol

faint sable
#

nope

#

mas does not work on fwp

dim spade
#

🤙

fair canopy
#

you should just put a txt file in the zip that say it as the file name

#

FWP DOES NOT WORK WITH MAS.txt

random fulcrum
#

donate the first two or three copies to any trader

#

donating doesn't give you any rewards at all

#

and it gets rid of the item

lilac vessel
rough lion
#

DOOM game on 3D PDA Interactive

undone spruce
#

hmm

im thinking of ditching 2 variations of my pistols because i fucked up the anims

#

actually, the bones that i made the anims on

#

check your rolls

#

nah i think i can salvage it

lethal garden
#

Any advice about my visuals? Is it just me, or does the shotgun seem off to you also? Foilage is very dark, the shadows inside Rostok Bar are VERY Dark.

random fulcrum
lilac vessel
#

anyone know how textures work for hands? i don't understand where the models and textures link in T.H.A.P PepeHandsPepeHandsPepeHandsPepeHands

undone spruce
#

i think it depends for every mesh

#

what i know is that importing them on blender setting the thap gamedata folder works flawlessly

undone spruce
#

it just does

#

if your problem is that the color is black, try go to shading menu and set the metallic for each material to 1

lilac vessel
#

alr thanks

mighty locust
#

Hey I have a problem with the UI texture of a gun, whenever I try to save the DDS it loses transparency and gets replaced by some weird artifacts

fair canopy
#

@summer girder bot alert/scam

verbal siren
novel ruin
lilac idol
#

also make sure that you don't have mip maps

summer stream
#

i keep saving mine in bc3

#

people keep saying its not working on dx8 and 9

#

dude

#

what the fuck

#

am i special or something

lilac idol
summer stream
#

dude wtf

#

is it because im using photoshop or what

lilac idol
#

it isn't

summer stream
#

then what's the matter

#

even thm uses BC3

#

anyways time to make it compatible

#

t h i c c

lilac idol
#

stretched uv final boss

summer stream
#

true

#

we just need to make it fit

#

that's all

mighty locust
#

@lilac idol@novel ruin@verbal siren thank you for your answes, most likely i' having the issue because i'm working the textures with photoshop, what software is better for texturing ?

lilac idol
#

photoshop

mighty locust
#

:(

barren spruce
#

wait this is dx9

#

nvm

steady brook
#

Guys, can I enable this? Will it work?

fair canopy
#

Why is that off?

#

It should be on

#

Unless you're dx8/9

undone spruce
#

11 should be good to DXT7

summer stream
summer stream
undone spruce
#

But are you talking about textures or icons?

summer stream
#

BC7 is broken

summer stream
#

icons has different textures

undone spruce
#

I have sometime misconverted to bc7

#

And it worked

summer stream
#

i meant format

#

its 32.32.32 for me

undone spruce
#

i think ive ought to test properly

summer stream
#

32 bit CluelessBlind

#

nvidia stuff is confusing

lethal garden
#

Guys, what steps should I take/what all needs to be disabled if I want to disable SSS, & Enhanced Shaders?

summer stream
#

enable dx8/9 list

#

look at what shaders it have disabled

#

do the same

#

and then clean shader cache

lethal garden
#

Gotcha

upper zenith
#

@misty mulch

#

do I need to do something potentially to make sure my thing has priority and is actually overwriting otherstuff?

random fulcrum
#

yeah go figure you're editing the base ltx file

#

do dltx

#

veer has a idiot proof guide on that

#

no matter where you put a base ltx file in the load order it will always lose to dltx no matter what

#

because of dltx's design

#

i'm on phone how many z's does the k98 dltx have

#

damn it has not a singular z

#

good ending

#

gamma is healing

misty mulch
upper zenith
#

yes I was attempting to read through this already, currently struggling with the LTXDiff

misty mulch
upper zenith
#

oh.
so mod_system_wk98.ltx should do what I want?

misty mulch
#

it would beat the DLTX file from GAMMA Weapon Pack, so yes, it should

#

remember that you also need to put it in the same folder, gamedata/config, i strongly recommend you make your own empty mod (go to GAMMA/mods, make a folder and call it whatever you want, inside it create gamedata, inside gamedata create configs, slap your DLTX file in that configs folder)

#

then in MO2 refresh (F5) and you should see your folder appear as a mod at the very bottom of the modlist

upper zenith
#

I copied the gamma weapon pack and ripped out everything but the config folder already

misty mulch
#

...don't do that

#

you do not want to duplicate all its other dltx files

random fulcrum
#

way way way easier to just create the new folder

misty mulch
#

the principle here is only change what needs to be changed

#

also because by doing that you will create two identically named "mods" in MO2

random fulcrum
#

less involved than copying a folder and manually cleaning it out

misty mulch
#

and the modlist does not like that. just make your own folder called "my weapon edits" or some shit like that

misty mulch
#

then yeah you did more work than "create three folders"

upper zenith
#

I'm only very stupid, thank you very much

misty mulch
#

assuming you also removed every single file in the config folder? (e: before making your own DLTX file)

#

which you should

#

ok imma guess from the gap that you're about to go do that

upper zenith
#

yes

misty mulch
#

again the principle is always, "only change what needs to be changed", and nothing else, which is why you want to start new

#

||not doing that is what leads to GMTOP||

upper zenith
#

yes I definitely know what this means

#

well my edit is causing the game to not want to start up, so we're one step closer I think

upper zenith
#

I don't see one popping up, would the anomaly logs have it?

misty mulch
misty mulch
# upper zenith yes I definitely know what this means

gmtop = "gamma massive text overhaul project", which was supposed to be a copy edit + typo fix project. it is also responsible for random weapon renaming and added typos such as the infamous "Wastern" RF package. this is because it just makes a copy paste of every single text config in the game.

#

wrong file. the .log, text document.

#

NOT the mdmp

upper zenith
#

ah

misty mulch
upper zenith
random fulcrum
#

bro

misty mulch
# upper zenith

remember what i said about "only changing what needs to be changed"?

misty mulch
# upper zenith

your ENTIRE ltx file should consist of exactly this:

![wpn_k98]
hit_power = 1.45
upper zenith
#

oh

misty mulch
#

also you fucked up and didn't include the ! at the start of the section

#

and this is exactly why you start clean and not by copying the like, 5gb weapon changing mod

random fulcrum
#

this is why you read guides

misty mulch
#

you need the ! in front of [wpn_k98] to tell the game, "ok I am overwriting this section"

#

and since the only thing you are changing is hit_power, only include that parameter and nothing else.

misty mulch
# upper zenith

also that file name won't overwrite mod_system_weapons_damage_GAMMA.ltx lmao

fair canopy
#

Finna' make Gamma Improved Massive (text) Project after 3dss is updated

misty mulch
#

it's just that there IS a lot of valuable work but also a lot of shit you could hack out. fortunately a simple XML overwrite would work, you wouldn't even necessarily need DXML

random fulcrum
#

why tho

misty mulch
random fulcrum
#

no i mean why blame grok on this

upper zenith
#

because it's funny

misty mulch
#

oh lol yeah this one isn't on grok

#

this is on you not knowing how computers sort files according to the alphabet ngl

upper zenith
#

mod_system_weapons_damage_GAMMA.ltx so I just need to make one of these that changes k98 as well

#

only, changes the k98

misty mulch
#

ironically mod_system_wk98.ltx (no extra underscore) WOULD overwrite it

#

you do not need to put _w_ in the middle. that's just a cute convention.

#

you could call it mod_system_wtfk98fuckyou.ltx and it would overwrite.

fair canopy
#

You could name it mod_system_z_farts

misty mulch
#

because wt comes AFTER we if you sort alphabetically

upper zenith
#

oh

misty mulch
#

(wk also comes after we because. you know. k comes after e in the alphabet.)

upper zenith
#

now the z comment makes sense

misty mulch
#

yeah, and you shouldn't over use it, because that's how you get stupid amounts of z in the names of these files.

fair canopy
misty mulch
#

anyway re-upload your DLTX file when you're done with your edits so we can double check

upper zenith
#

looks like it worky to me

celest forge
#

Just name it mod_system_zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzkarchange to be sure

misty mulch
#

22.8 KB to 28 bytes chat we did it

#

yeah there you go

upper zenith
#

so the name doesn't really matter as long as it's loading last, so I can put other changes in the same file as well, right?

#

for guns, meaning

misty mulch
#

you can, remember they need ! before the section name

upper zenith
#

right

misty mulch
#

and at that point i'd probably tell you not to call it wk98, probably sthing like wpn_edits

upper zenith
#

also right

misty mulch
#

but that's just to keep track of things neatly, not a hard technical requirement

#

and also, yes: you cannot "mass assign" a single change to multiple guns, meaning you can't do this if you wanted to change hit_power for three guns:

![gun_1]
![gun_2]
![gun_3]
hit_power = 2.0

Instead you must do this:

![gun_1]
hit_power = 2.0
![gun_2]
hit_power = 2.0
![gun_3]
hit_power = 2.0
upper zenith
#

also good to know

random fulcrum
#

that's interesting

#

like i mean it makes sense yeah i just never wanted to try it out

upper zenith
#

which strikes me as a little weird because even the weapons_damage_gamma one lists out all 4?

random fulcrum
#

ye one for each difficulty

misty mulch
#

as i understand it, if there's one, it uses that one for all difficulties

fair canopy
misty mulch
#

example from basegame is w_m82.ltx

hit_power                   = 3.0
#

ngl i don't know why they keep listing out all four if they have this fallback because in every example i can find, it's always the same across all difficulties (in basegame)

#

there's 0 evidence of per-difficulty hit_power tuning

#

quite possibly an unintended consequence of however the script reads that config, idfk

#

as in I think it just splits the string on , but obv. If there are no , it just returns the number by itself

lethal garden
#

But disabling ES & SSS, helped out with all the shadow funk.

#

Cant stand getting ragged on, instead of getting any 'assistance'

#

but thanks for trying.

random fulcrum
#

but yeah like it makes perfect sense that only one suffices

upper zenith
#

I've made an mod do I get to be orange now

#

(do not make me orange)

random fulcrum
#

give my alpha to serious

drifting moat
#

No need for you to lose it. It's not like it's limited anyways what3

upper zenith
#

the alpha modder role operates on necromonger rules

misty mulch
random fulcrum
#

ye

#

vanilla anomaly's this is inside the source code

#

i should have notes on that from when i was working on the damage framework

#

since i wanted to emulate vanilla anomaly's damage entirely in the script layer

upper zenith
#

also how does boar/flesh head damage reduction work, is it just a flat reduction for hits on that area?

random fulcrum
#

open m_boar.ltx

#

all mutants have hitbox damage modifiers

#

i don't really remember the structure of the file

#

i'm at uni

upper zenith
#

think I found it

#
; Boar Damage
;=================================================================================
[m_Boar_damage]
;bone_name         = <hit_scale>,-1,<wound_scale>
;<hit_scale>    -      .                (                   )
;<wound_scale>    -      .                                 

default                = 0.75, -1, 0.2

bip01_pelvis         = 2.25, -1, 0.45
bip01_spine         = 1.5, -1, 0.25
bip01_spine1         = 1.1, -1, 0.25
bip01_spine2        = 1.1, -1, 0.25
bip01_l_upperarm    = 0.8, -1, 0.08
bip01_r_upperarm    = 0.8, -1, 0.08
bip01_l_thigh        = 1.5, -1, 0.07
bip01_r_thigh        = 1.5, -1, 0.07
bip01_neck             = 0.65, -1, 2.0
bip01_head             = 0.75, -1, 0.4```
#

gee bill, three spines?

random fulcrum
#

you know how vertices (and by extension, triangles) are assigned to certain bones for animation purposes

#

the spine is divided into 3 for animation

#

but yeah those are the numbers you care about

upper zenith
#

yeah, it's just funnier to imagine boars just have redundant nervous systems, don't worry about it

random fulcrum
#

it's mutated alright

misty mulch
#

the only thing that is important is hit_scale

#

fyi

upper zenith
#

I figured, but what do the other two do

misty mulch
#

the -1, no one knows. wound_scale afaik affects the size of the damage decal applied on hit

#

and/or something about ragdolling?

#

maybe?

rare sage
#

physical compass mod

#

more fps mod

undone spruce
#

Dont fps shame

#

Some rigs are just born that way

wide bobcat
#

Can anybody tell me what these do in NPC loadout? The 0s and Rs, I want to readd in some old guns and this is the thing that's eluding me.

celest forge
wide bobcat
# celest forge

so the first number stands for attachment flag while the next one is ammo type?

#

and I add another it will be chance?

celest forge
#

Yes

wide bobcat
#

and by adding up attachment numbers so like say 1 for scope then 2 for gl it will make three?

#

cause it says +1 or +2

faint sable
#

It’s different in gamma however

#

Let me find the text that helped me

wide bobcat
#

So basically repeat the same gun entry since it ignores normal probability

faint sable
#

Yea

#

spawn more = more entries, spawn less = less entries

#

is how I do mine

#

If you want the exact number, just go by what veer told me

#

I just guess on mine though

#

I do however find more of my fwp guns in game consistently, back then all my guns had just a 1% or less spawn rate chance due to me not knowing how the system worked

#

but we learn

wide bobcat
#

now the next important part is figuring out how to get guns to show up in black market addon, I want to add in some removed guns.

steady brook
#

Can I turn it on?

fair canopy
#

yes

nocturne night
#

is there a way for me to change the first person hands of a specific suit?

steady brook
verbal siren
#

Or was it XML?

#

Anyway, it wasn't hard.

#

The moddb page has a link to a spreadsheet with all hands models and their IDs.

lilac idol
misty mulch
#

thap dltx file yes

nocturne night
#

Thx

mossy lintel
#

how to change the image on the photo of your beloved woman?

worthy mortar
#

What is basically happening: Equipped Grenade Launchers cause the weapon to ignore blend_move_anims value

steady apex
#

post it in mods page

worthy mortar
#

Did that already. Was just wondering if I should poke them directly too. That's all

nocturne night
# nocturne night Thx

So I can change in fact the hands of the armors for another type except for the exo skeletons

#

it looks like there a limitation that prevents me from changing it to one of the regular arms stuff so I would need to do that custom ogf file overwrite that Pillii said

tulip magnet
#

How do I adjust the player damage system now?

I was wanting to adjust the damage from anomalies to be a bit more tame but make bullets more of a danger. I tried adding in an actor.itx file with immunities tweaked but it doesn't seem to have any effects.

drifting moat
#

You need to use DLTX

#

By just adding an LTX file with stuff in it it won't get read by any scripts

trim blaze
#

can someone help me. I'm trying to make a retexture mod and I am almost done but one part

trim blaze
#

github

random fulcrum
#

github

main plover
#

github

summer stream
#

github

summer stream
#

@undone spruce question,
what do i do if i have LEGACY version of substance painter jokerge

verbal siren
fringe marsh
#

how would someone make a dual wielding guns mod?

#

im thinking if there is a way to have 2 of the same one handed weapon (pistols and smgs mostly) as a separate item and then just have it act like a dual wield version

#

i dont really care about the realism part im just curious since i havent seen a mod like that yet

jade oxide
#

it's doable, just coming with a lot of issues

fringe marsh
#

how did you make it?

#

and is it uploaded anywhere/

#

?

verbal siren
#

Something has been on my mind lately: if you add new items to the game, such as guns, you cannot remove the mod if the new item has been spawned somewhere in the world in your save. I don't think the engine has a problem with items that are loose on the ground or in the player's inventory — they just disappear — but if an NPC is carrying an item or it's in a stash, the game crashes due to missing files.

How would you change the logic so that, instead of crashing, the game just removes the problematic item from the NPC/stash or re-rolls for another item?

novel ruin
verbal siren
drifting moat
jade oxide
drifting moat
#

What you say would require engine edits for sure

fringe marsh
#

and it works in anomaly?

#

oh wait nvm its cop

#

realistically cant there be a weapon that has animations of a pistol on 2 hands

#

arent weapons just a class of objects

jade oxide
#

if u edit the configs properly i don't see a reason for it not to work

fringe marsh
#

if i replace the model of an ak i can make it as absurd as i can think

drifting moat
#

Then you would lose the ability to equip anything on the left hand. Or it would make a 3rd hand appear based on the workaround

#

I think

fringe marsh
#

i mean yea thats the point

#

it turns from a one handed weapon to a two handed one

#

no longer able to be placed in one handed slot either due to that limitation too

drifting moat
fringe marsh
#

basically im thinking a drag and drop of 2 pms one onto another and that creates a "dual pm" weapon item that is basically a two handed weapon

#

true but in that case its the person changing the ltx fault for doing that

#

as far as i understand (i may be completely wrong) you have to manually do that for the specific weapon

drifting moat
#

I don't know the limitations of this. I am no gun modder, but with scripting and workarounds it would be possible IMO

fringe marsh
#

im just curious about modding and had this idea and thought it would be interesting

#

realistically i can have any model be replaced with any model i want same as in any other game

drifting moat
#

But how would you handle the shooting animation?

fringe marsh
#

every weapon pack basically adds a gun item that has specific stats including upgrades/fire mode etc and then an associated model

#

as in firing 1 shot from left hand and then 1 from the right hand changing every time?

drifting moat
#

yes

fringe marsh
#

that can be easily just not be the case and just have them both fire at once

#

set the accuracy down to 30% of the original accuracy

#

and just fire 2 bullets in a "burst" fire

drifting moat
#

kinda defeats the purpose I think. At least I would feel like it's lame and pretty sure I'm not alone on that

fringe marsh
#

i was thinking about it in a max payne style mod

#

i see how it can be interpreted as lame though

#

im thinking more of a spray and pray thing

drifting moat
#

I think you might be able to set firepos from script though. So with even more scripting you could switch that, but the animation would still be an issue

fringe marsh
#

ye ive looked into firepos which is why i actually kind of began to think about a mod like this

summer stream
serene plinth
#

did anyone ever think of adding the daewoo k7

#

its pretty unique

summer stream
#

do it yourself

serene plinth
#

im not that talented ..

summer stream
#

to insert a model, find correct animation for it and then just simply put it on correct vertex models?

#

there is GUIDES for that

misty mulch
#

fwiw the "safely remove magazines" "mod" does something like what you're Serious is describing - runs a script to delete every instance of magazine items in the game, so that you can remove the mod after

faint sable
serene plinth
#

my mistake

noble temple
celest forge
#

Are you the same Millennia that used to make New Vegas mods?

fair canopy
faint sable
abstract schooner
#

Someone make a mod that makes it so targets of quests don't spawn till you're actually nearby so emissions don't just wipe them out and give you free money for doing nothing. Thanks.

fair canopy
barren spruce
abstract schooner
#

I would if I wasn't completely unskilled in the matter and it would take a long time for me to acquire the skills to see it happen

#

Sorry

fair canopy
#

Well then perhaps don't write your idea like a demand

abstract schooner
#

Don't make a problem where there isn't one, settle down.

fair canopy
summer stream
drifting moat
misty mulch
abstract schooner
#

@misty mulch Yeah, just a suggestion in case anyone else feels like taking up problem. not a big deal.

#

MB if it came off as an order or something.

drifting moat
#

Good. Now ATHI and Bugsy hug eachother

rare sage
#

physical map/compass mod

main plover
misty mulch
#

can you pack up just this bit of your mod and send it to me? i wanna copy your homework for sthing i'm doing for tougher gun repair