#mod_development

1 messages ยท Page 341 of 1

bronze yoke
#

nice

queen oasis
#

and it's not persistent if I pick up the fridge and move it...

#

something to ponder after a nap

bright fog
#

Ok I see

bright fog
queen oasis
#

that was my thought. just need to refresh the brain before I dig in to that

fleet bridge
#

If container:AddItem() is run on client, only the client will see the added item? If the server is restarted or the chunk is reloaded the item will disappear?

bright fog
fleet bridge
#

Admins can observe player inventories

#

But other players cannot

#

Was wondering if I could populate a container in a building to only show an item for that specific player

#

Figured additem on client might do the trick

bright fog
fleet bridge
bronze yoke
#

the server has the save file and the server doesn't know about the item

fleet bridge
#

Is there any way to get all the isoobject containers in a room or building?

#

I forget if getcontainer in a room returns all containers or not

bright fog
fleet bridge
ancient grail
# queen oasis possessed fridge

people would have to time it properly and put stuff when capacity is high

"ill just shove the corpse in the fridge"

"theres lots of room"

"oh no wait it wont fit"

"huh?"
ancient grail
teal citrus
#

So I've checked the flow from ISWorldObjectContextMenu => ISChopTreeCursor:new =>I SWorldObjectContextMenu.doChopTree => ISChopTreeAction:new , and implementations of Base.Log, but I cannot find how the logs get added to the ground after a tree gets chopped down. Anyone aware of how this happens or if it's even in an overrideable file?

ancient grail
teal citrus
#

yea that's in the other file, after some more digging i think it's based in OnObjectAdded call from ISMoveableSpriteProps... might just pivot to a different method for now, that seems a bit much to override lol

teal citrus
#

just added it as a forageable like i was gonna do in the first place - first thought best thought anyway, thanks though glytcher!

burnt kelp
#

I am trying to fix the CDC rapid response 2 mod and I've been looking at this error for a while and navigating through the lua code to the best of my abilities but I haven't been able to figure out how to fix this bug:

Callframe at: se.krka.kahlua.integration.expose.MultiLuaJavaInvoker@d47f127a
function: init -- file: forageSystem.lua line # 722 | Vanilla

ERROR: General      f:0, t:1753913897610> ExceptionLogger.logException> Exception thrown
    java.lang.RuntimeException: attempted index of non-table at KahluaUtil.fail(KahluaUtil.java:100).
    Stack trace:
        se.krka.kahlua.vm.KahluaUtil.fail(KahluaUtil.java:100)```
#
    local global_chance = 3
    if SandboxVars.CDCRR.ForageLoot then
        if SandboxVars.CDCRR.HardcoreMode then
            global_chance = 1
        end
    
        categoryDefinitions["Airdrops"] = {
            name                    = "Airdrops",
            typeCategory            = "Airdrops",
            identifyCategoryPerk    = "PlantScavenging",
            identifyCategoryLevel   = 0,
--            chance = global_chance,
            categoryHidden          = false,
            validFloors             = { "ANY" },
            zoneChance              = {
                DeepForest      = 1 * (SandboxVars.CDCRR.LootReductionModifierForaging),
                Forest          = 2 * (SandboxVars.CDCRR.LootReductionModifierForaging),
                Vegitation      = 2 * (SandboxVars.CDCRR.LootReductionModifierForaging),
                FarmLand        = 4 * (SandboxVars.CDCRR.LootReductionModifierForaging),
                Farm            = 7 * (SandboxVars.CDCRR.LootReductionModifierForaging),
                TrailerPark     = 9 * (SandboxVars.CDCRR.LootReductionModifierForaging),
                TownZone        = 10 * (SandboxVars.CDCRR.LootReductionModifierForaging),
                Nav             = 3 * (SandboxVars.CDCRR.LootReductionModifierForaging),
            },
            chanceToMoveIcon        = 20.0,
            chanceToCreateIcon      = 10.0,
            focusChanceMin            = 5.0,
            focusChanceMax            = 10.0
        }
    end
end```
#

line 45 points to the last "}"

static reef
#

Hey y'all want sentient ai npcs in pz?

burnt kelp
#

I pass

bright fog
oak rune
#

hey I'm new to making mods how do I change where an item spawns?

bright fog
oak rune
#

the tutorial I'm following says to use the default distribution file but mine is different from the turorial and I'm lost here

#

it is from 2020

bright fog
#

What tutorial are you following ?

oak rune
bright fog
#

Oof

#

I'm not sure how accurate the info in the video are

oak rune
#

it's the only one I could fine

#

find*

bright fog
#

I suggest looking at the wiki

oak rune
#

I'm just tryna add bloxy colatired

oak rune
oak rune
#

thx

#

what does like the 10 20 and numbers mean

#

is that the chance out of 100

#

to spawn

bright fog
#

The wiki explains it ^^

#

It's not chances

oak rune
#

so I would add the item to the file?

bright fog
#

No

#

Make a file from scratch, don't modify vanilla files

#

You will add to a vanilla table however

oak rune
#

so I'd make something like this (screenshot from the wiki)

bright fog
#

No not exactly

#

Tho, I don't have the full article content in mind, but you should have a proper example of code to use

queen oasis
#

realizing I don't have a clue how to transfer mod data when picking up an object and then placing it

burnt kelp
agile nacelle
#

Attempted to index of non-table

burnt kelp
#

that's the table am trying to reference

burnt kelp
#

thank you the mod broke in some update and I wanted to try my hand at fixing it

agile nacelle
#

no problem

bright fog
spark sandal
#

hi everyone quick question, where can i get the list of all the sound avaialable in the game

    self.sound = self.character:getEmitter():playSound("object_generator_connect_loop_01")
    print("here : " .. tostring(self.sound))

its print 0 all the time, and my sound dont play, i tried every string possible but no sounds

wraith frigate
#

Looking to make some personal changes to a weapon mod and trying to figure out something. What settings determine what weapon will show up attached to a zombie? I understand there exists a sandbox option for the player, but how exactly do modders determine that?

queen oasis
autumn bluff
#

anyone know of a LUA method i can use to get the exact age of a food item?

#

making a conditional that checks if a food item is older than 1 ingame day

#

nvm, found it

queen oasis
queen oasis
#

might be a bug, I don't know if it's intentional but line 1235 in ISMoveableSpriteProps.lua

-- original code
if _object:hasModData() and _object:getModData().movableData then
  item:getModData().movableData = copyTable(_object:getModData().movableData)
end

-- modified code
if _object:hasModData() then -- and _object:getModData().movableData then
  item:getModData().movableData = copyTable(_object:getModData().movableData)
end

I don't think _object:getModData().movableData will ever be true/populated here

bronze yoke
#

looks intentional but i'm not sure what the point is

queen oasis
#

I'm trying to find a not so heavy fix that doesn't involve overwriting a couple of functions in ISMoveableSpriteProps

#

even the modified code I have above will lose the mod data for some reason

#

it's hit or miss if it keeps it

#

I think I see why it's doing that now. I'll just stick with my initial thought, copy the mod data myself and try to figure out a better way.

queen oasis
#

that's the second time I almost asked a really stupid question and figured it out while I was typing

#

nope, I'm stupid. I thought it was the way I did the tooltip update

burnt kelp
#

like file wise

night pawn
#

Hello, Well I have a problem that I haven't been able to solve for several days! I made a 4-tile of a 2x2 tent on a custom map. I have (normally) configured my SpritGridPos correctly and I have checked "ForceSingleItem". However when I am in game and I want to retrieve my item, I can't retrieve it in one block. My 4 tiles are separated and I end up with 4 parts in my inventory. Help me please, I can't take it anymore not finding the solution xD

bright fog
#

You'll have to make a custom system if you want an item like vanilla tents

night pawn
#

with a .lua?

#

@bright fog Normally I have configured my def.tiles correctly. I have the .pack ready. However, I think I have a big gap in the necessary .txt and .lua... I don't have any particular knowledge in this area and I can't find a tutorial to teach me this.

ancient grail
ancient grail
# spark sandal hi everyone quick question, where can i get the list of all the sound avaialable...
local function clipSfx()
    local sfxTable = {}
    local categories = GameSounds.getCategories()
    for i = 0, categories:size() - 1 do
        local cat = categories:get(i)
        local sounds = GameSounds.getSoundsInCategory(cat)
        for j = 0, sounds:size() - 1 do
            local sfx = sounds:get(j)
            table.insert(sfxTable, sfx:getName())
        end
    end
    local toClip = table.concat(sfxTable, ",\n ")
    Clipboard.setClipboard(toClip)
    print(toClip)
    return sfxTable
end
clipSfx()

bright fog
night pawn
#

erf... this is starting to be beyond my skills. Do you have a video to teach you the mechanisms?

bright fog
#

Guides for Lua are rare because it's always extremely specific stuff

night pawn
#

Well, I'll have to find someone to help me with Lua then x)

#

thank you for the help :p

north estuary
night pawn
#

I tried ChatGPT and Kimini but frankly, I feel like it creates more problems for me than anything else.

balmy dust
#

I'm interested in making a very small occupation mod that adds serial killer as an option. What files do i need to look for so i can get started?

azure crane
balmy dust
#

Aight thanks, will do.

tulip valve
#

I have been searching for the forage code that handles which months Rose hips or Acorn can appear and when they have bonus month etc, it used to by in ForageSystem but I cant find it there anymore

#

where did they move that? T_T

#

oh its in shared/Foraging/Categories

verbal sparrow
#

roblox ahh code

thin swan
# bright fog You'll have to make a custom system if you want an item like vanilla tents

Correct me if I'm wrong, but wouldn't it be possible to set it up like other multi-tile structures?
Where you add multiple sprites in the same layer (example from advanced forge):

component SpriteConfig
        {
            face E
            {
                layer
                {
                    row = crafted_02_25 crafted_01_18 crafted_01_39,
                    row = crafted_02_24,
                    row = crafted_02_32,
                }
            }
            face S
            {
                layer
                {
                    row = crafted_02_26 crafted_02_27 crafted_02_33,
                    row = crafted_01_35,
                    row = crafted_01_55,
                }
            }
        }

I haven't played much with it so not sure if I'm missing something

bronze yoke
#

can these be picked up and moved?

thin swan
#

Oh that I'm not too sure about. Maybe it's not possible to have a multi-tile entity also be a moveable, but it should work because couches are pretty much that right?

#

I haven't experimented much with it. I just made a quick craft recipe that let me build a multi-tile entity using the building menu and it worked, but I didn't do anything beyond that

bronze yoke
#

i didn't think couches had entity scripts

#

and i'm fairly sure they do drop into separate pieces

#

there are some movable entities (i can think of water coolers at least) but i can't think of a multitile one so i don't know how that behaves

thin swan
#

Ah yeah you're absolutely right, couches are not entities.
I guess at least making it into a multi-tile entity would simplify the custom code needed a bit, since it would count as one object right?

true nova
#

is there not a way to scale UI font?

bright fog
#

What UI element are you trying to scale the font of ?

#

You should be able to chose small medium or large I believe ?

#

Tho that's different fonts

bronze yoke
#

what the game considers a font is really a pairing of font and size

#

you can probably do more with the size using AngelCodeFont but i haven't done much with that

#

it won't be proper scaling, fonts are bitmaps so they can't be scaled properly, but it would let you at least stretch the bitmap, i don't think the regular rendering functions let you do that

true nova
#

i found one that is passable. each font is restricted to its size and i need to stretch it to fit a box

sleek tusk
#

is that correct?

#

is it preview or poster here?

somber spoke
#

Time to update my mod again! after a decent while Cry

ancient grail
# tulip valve I have been searching for the forage code that handles which months Rose hips or...
shared\Foraging\Categories\WildPlants.lua




        Rosehips = {
            type = "Base.Rosehips",
            minCount = 3,
            maxCount = 6,
            skill = 4,
            xp = 5,
            rainChance = 20,
            snowChance = -100,
            categories = { "WildPlants" },
            zones = {
                BirchForest      = 15,
                DeepForest      = 10,
                FarmLand        = 10,
                Forest          = 10,
                OrganicForest      = 7,
                Vegitation      = 15,
            },
            months = { 1, 2, 5, 6, 7, 8, 9, 10, 11, 12, },
            bonusMonths = { 9, 10, 11 },
            malusMonths = { 5, 6 },
            spawnFuncs = { forageSystem.doWildFoodSpawn, forageSystem.doRandomAgeSpawn },
            altWorldTexture = forageSystem.worldSprites.shrubs,
        },
        Acorn = {
            type = "Base.Acorn",
            minCount = 3,
            maxCount = 6,
            xp = 5,
            categories = { "WildPlants" },
            zones = {
                BirchForest      = 15,
                DeepForest      = 10,
                FarmLand        = 5,
                Forest          = 10,
                OrganicForest      = 15,
                PHForest          = 15,
                PRForest          = 15,
                Vegitation      = 5,
            },
            months = { 3, 4, 5, 6, 7, 8, 9, 10, 11 },
            bonusMonths = { 5, 6, 7 },
            malusMonths = { 3, 4 },
            spawnFuncs = { forageSystem.doWildFoodSpawn, forageSystem.doRandomAgeSpawn },
            itemSizeModifier = 1.0,
            isItemOverrideSize = true,
        },
slim swan
tulip valve
thin swan
slim swan
thin swan
slim swan
#

like this Brazier

#

use isProp can make it to be fireplace,when u right click the vanilla map spawn Brazier,it didn't show any fireplace contextmenu

burnt quartz
#

how do we play zombie anims with code

thin swan
# burnt quartz how do we play zombie anims with code

Pretty sure you can't. There's no easy way to force a zombie into one specific state to play a custom animation. You have to use the states already available and write your .xml in a way so that it overrides the vanilla animation with the custom animation you want.

So you can essentially just make animations for idle, walking, running, attacking, getting attacked, falling down, getting knocked back, etc. etc.

What are you trying to achieve? I can point you in the right direction based on that

burnt quartz
thin swan
burnt quartz
#

It can be any similar animation, as long as the zombie falls.

#

somehow

thin swan
#

Maybe something like zombieObj:knockDown(true) could work.
I haven't done anything directly with zombies yet, but if you have a scroll through the available methods on the zombie object there might be something that allows you to stagger it using just lua

burnt quartz
#

okay , thanks

thin swan
#

Maybe setStaggerBack(true)

bright fog
#

Yea

#

stagger back I believe

#

I got a code that triggers such a reaction

#

Sec

burnt quartz
#

it workks , thanks guys

bright fog
#

I'm curious, what did you use to stop doors from being opened actually ?

burnt quartz
#

I patch ISOpenCloseDoor:isValid(). The hooked function checks for zombies on the door's square and simply returns false to cancel the action.

bright fog
#

Nice

#

I'm always surprised that opening doors is not Java locked haha

flat bluff
#

Can someone tell me what is the correct encoding for russian files translation?
I've been messing around with UTF-8 and some users report my mod is not correctly showing the russian translation, while others say it works.
Someone suggested using ASCII. Anyone knows for sure what is the right encoding for russian translations?
ASCII afaik is crap for Cyrillic.

hollow sage
#

I'm looking to get into making something that will heavily involve the radio and TV.
Can someone point me in the direction I need to be in to put custom "stories" and music for specific radio frequencies and creating television channels?

#

keywords, anything that I can eyeball myself, I'm not looking for a tutor unless I honest to god get stuck on something I cannot solve myself.

#

maybe a basic "plugin" interface

bright fog
hollow sage
bright fog
#

There's a few mods that add such similar stuff

hollow sage
#

When I fiddled with it before, I noticed there was a tool that could create these, but life got the better of me. One of the biggest concerns I had getting back into it is whether or not I could endlessly loop these.

bright fog
#

Yes

#

Maybe that ?

#

Or maybe you're thinking of one of the mods that add media voice acting

#

And the looping of media is something completely different from the voice acting

hollow sage
#

That's going to involve lua I know.

bright fog
#

Voice acting is just triggered alongside the medias triggering in-game

#

Tho idk the details of it

hollow sage
#

I can figure it out on my own by looking through other's mods. I'm just gathering the basic tools I need to do so before I get investigative about it.

#

Yeah I don't have faith in any of these tools. They feel like deadware.

#

Oh well. I'll do it myself then.

bright fog
#

There's the decompiled code of these tools, if you want to update them tho

bronze yoke
#

they're not really out of date, they're for a system that hasn't been updated longer than they've existed

#

they're only a couple years old

drifting ore
#

Announcing the rebirth of a mod I really enjoyed tremendously from B41 and before that was sadly broken and unfixable due to the passing of it's previous modder, Stalhansch. RIP.

#

It's my hope going forward that this mod will add more historical armors from similar periods as the weapons, but that's turned out to be a much bigger undertaking than expected.

shy mantle
#

What's the big roadblock that's stopping car exhausts from functioning like generators (to a lesser extent of course)?

#

Just curious, because it looks like it was in the game for a bit then removed.

bright fog
tranquil kindle
#

I feel like it used to be in game at least at some point

tight elm
#

If it was removed, than it was done for balance / immersion / whatever

bright fog
#

Yea that sounds annoying as shit whenever you want to park in a garage

drifting ore
bright fog
drifting ore
#

Oooooooh, yeah. My bad! ๐Ÿ˜‚

bright fog
solar rover
#

@nimble spoke your discord is under attack.

solar rover
#

7 NSFW spam links in every channel. They don't seem to like you.

#

Or they really do?

bright fog
slim swan
#

If u stack creates on a table, you can keep stacking them all the way up to the sky.๐Ÿ˜†

bright fog
#

B42 ?

#

And can you access all the crates from the bottom tile ?

coarse sinew
next marlin
#

Hi all- I'm working on a super simple mod atm (first time) and I'd like to test what I have done currently, but for some reason, the mod isn't showing up as a mod I can enable in game. Could anyone tell what I'm doing wrong? Here's the file structure- the workshop folder is in the area where the saves are

#

the common folder is empty besides the folders which have nothing inside of them

#

Nevermind, I'm so dumb, it's just because I never updated the mod.info

untold radish
#

Anyone know where the files that deal with shoving and stomping are located? I've found the animation xmls but Im trying to make it so zombies can only be pushed, but not pushed completely over

main swan
#

Hi all, I have two recent mods that I'm trying to publish for B41 but both fail to download on the server's side.

I've published a few basic mods in the past, and I'm not really sure what's going wrong here...

Only "new" thing with these ones are that they use translation files in the shared directory. Any advice on where I'm possiblly going wrong?

#

Has something changed in the way B41 should be published since B42 released?

slim swan
#

Did someone know how to use moveable items on craftrecipe?

stable marsh
#

Anyone having issues with enabling debug mode? Yells about script load errors but I got no mods enabled or whatever, just the unstable branch, don't know if that may be why?

drifting ore
#

Debug mode on vanilla 42 should not cause problems like this

main swan
stable marsh
#

Noticed that the reset-mods file for public build was still present which is what I'm guessing caused it, even while all mods were disabled CB_kek

main swan
#

Follow up question: Didn't realise io read/write doesn't work in PZ lua. Is there a simple way to read external files (even if only simple text) into your lua code?

#

Does getFileReader() get there?

thin swan
#

at least on b42, didn't test on b41

#

The file has to be in C:\Users\YourUsername\Zomboid\Lua

main swan
#

Thank you

stiff fiber
#

Hey guys! Since releasing my Mitsubishi Pajero mod, a few people asked me to make armor for it or make it compatible with the Standardized Vehicle Upgrades mod. Could any of you give me some pointers on how to do it please as I haven't a clue how to go about it?

small topaz
#

Hi! In a clothing item's xml file, what is the difference between <textureChoices> and <m_BaseTextures>?

tranquil kindle
small topaz
#

@tranquil kindle @drifting ore thanks for the info!!

flat bluff
indigo hound
stable marsh
#

What could be a reason for an item to show up as an icon instead of its 3D model when placed in the world?

  • Mesh and textures paths are correct, checked spelling too
  • Model file is CookieBoxOne.fbx
  • Screenshot 1 : CookieCollectionModels.txt
  • Screenshot 2 : CookieCollectionItems.txt
tranquil kindle
#

Try Module Base in model txt and see if it works

bright fog
#

Ah yea

#

It doesn't reference the model properly

stable marsh
stable marsh
bright fog
small topaz
#

Hi! Where do clothing items get their weight value defined?

bright fog
#

Their weight model wise you mean ?

small topaz
#

Just their inventory weight. Wasn't this defined in their script txt-entry?

bronze yoke
#

yeah

small topaz
#

maybe I am stupid but I cannot find it there:

```item Shirt_CamoGreen
{
    DisplayName = Military Shirt - Green Camo,
    DisplayCategory = Clothing,
    Type = Clothing,
    Icon = Shirt_CamoGreen,
    BloodLocation = ShirtLongSleeves,
    BodyLocation = Shirt,
    ClothingItem = Shirt_CamoGreen,
    FabricType = Cotton,
    Insulation = 0.25,
    WindResistance = 0.15,
    WorldStaticModel = Shirt_Ground,
    Tags = RipClothingCotton,
    ResearchableRecipes = SewShirt;SewShirtSleeveless,
}```
bright fog
#

My guess is it uses a default weight

small topaz
#

So weird. Did they change this somehow? The whole clothing_shirt.txt does not have a single weight value there.

bright fog
small topaz
#

Maybe it is by default attached to the FabricType or smth?

bright fog
#

Maybe

#

Aren't like all clothings weighted 0.3 or some shit ?

small topaz
#

Also possible that it was always this way and I just didn't notice.

bright fog
#

Highly possible

small topaz
bright fog
#

yea

bronze yoke
#

the default weight is 1

queen oasis
#

Fixed corpses reanimating if a player reloads a save while dragging. aww, no more zombie pals?

storm trench
#

Someone just told me the ZuperCarts Fork animations broke cuz of the latest update. Can anyone confirm? I'm literally wayyy too busy with work to be messing with modding anymore. At least without knowing what I'm jumping in to fix and why it broke. Thanks for any help, appreciate yall!!! Play some PZ for me too!

queen oasis
#

I gotta check mine. I'll give yours a whirl too

storm trench
#

The only info about it I have is that the player now carries it like a weapon. Someone reached out to me on Discord otherwise I'd have no idea.

#

Thank you!!!

queen oasis
#

looks fine to me

storm trench
#

Interesting. Well, I'll let em know. Thank you!!!

sinful parrot
#

Is it possible to have a txt file stored on the server and have a mod read from that, parse it, and then send data to the client?

bright fog
#

That's a method used by a bunch of mods to have server informations which can be updated outside of mods

#

With other means

sinful parrot
bright fog
#

No documentation regarding that for now

#

As for example uuuh not sure

#

Sec

#

I used it in a project

sinful parrot
#

Hell yeah, I'll check this out. Thank you so much, you're awesome

queen oasis
#

did I get lucky pre 42.11 and onCreatePlayer event ran every time the game started? I don't see where else I load up mod data besides that event and everything was fine before today not drunk btw, yet

bright fog
#

No idea

#

I don't remember if it ran everytime

#

(Client) OnCreatePlayer: Fires every time a local player loads into the world.

#

Runs everytime yea

#

It doesn't anymore ?

queen oasis
#

testing now. I might other issues related to skill and logic

drifting ore
#

I also used it before, let me check

queen oasis
#

too early for a print maybe

drifting ore
#

Mine prints right up near the top, like 10 lines down

bronze yoke
#

oncreateplayer is very late in the process

queen oasis
#

I was expecting it near the bottom

#

it has to work at least once, because it doesn't error on the first run. It's on a reload but but even force setting the table I get from mod data gives me an error

#

good grief, I think I'm working on the wrong file

#

didn't know I was subscribed to my mod. ugh

#

local version works fine. which is worrying. what's different....

queen oasis
#

just odd. so on a new game, everything works fine. If I quit and reload, I get an error. if after a reload, I use the color picker, or force set the table, it works fine until I quit and load.

Events.OnCreatePlayer.Add(function()
    if getPlayer():getModData() and getPlayer():getModData().highlightColorData then
        print("SETTING COLOR FROM THE DAMN MOD DATA")
        JBSelectUtils.highlightColorData = getPlayer():getModData().highlightColorData
    else
        print("INITIAL COLOR SETUP IS THIS WORKING???")
        JBSelectUtils.highlightColorData = { red = 0.2, green = 0.5, blue = 0.7 }
        getPlayer():getModData().highlightColorData = JBSelectUtils.highlightColorData
    end
end)```
It does spit out the "SETTING COLOR FROM THE DAMN MOD DATA" print after reload also.
#

the error is on:

addAreaHighlight(x, y, x + 1, y + 1, z, JBSelectUtils.highlightColorData.red, JBSelectUtils.highlightColorData.green, JBSelectUtils.highlightColorData.blue, 0)```
#

and if I hard set JBSelectUtils.highlightColorData right before calling that, it works. or if I use the color picker, which sets that and the modData, it works. until a restart that is

queen oasis
#

it's like it's not keeping the reference

queen oasis
#

<@&671452400221159444>

queen oasis
#

all good now. skill issue for sure

#

really need to containerize my mod data better

swift goblet
#

Im trying to make a mod that adds a poster to build 42 but when i try to upload it it says "there are unrecognized folders in your Contents/ folder. The following folders are the only ones permitted in Contents/: buildings/ creative/ mods/"

bright fog
#

You did a mistake with your mod structure

ancient grail
#

how many floors does b42 have?

bright fog
#

32 to -31

ancient grail
#

i wish theres a getSize() or something

thnx ill look into it more when i actually need to know this

bright fog
#

This won't change anyway

#

Also technically there is a current number of floors for a chunk

ancient grail
# bright fog What are you trying to do ?

oh its cuz i have an old functio that fetches the highest z with a solid floor

was used for mortar mod
so that the explosion happens on the top floor instead of the ground(as if it phased thru the roof)

i wanted to use this function now
to determine if theres a floor above the player so that if it returns true then the player wont recieve sunlight damage(making another vampire mod)

bright fog
#

That you're sure to never check too far

#

Outputs the top and bottom level with IsoGridSquares present

bronze yoke
#

you can just use square:haveRoofFull()

bright fog
#

Perhaps he wanted to check if there's squares at any level above you ?

bronze yoke
#

he said he wanted to check if there's any ceilings above the player

bright fog
#

Ah I guess

ancient grail
bronze yoke
#

it's used for determining if rain can reach a tile so anything that blocks rain counts

ancient grail
#

nice

#

seems useful for some other stuff too like for crops

drifting ore
#

I definitely will need that for solar charging

torn igloo
#

Is there a way to get animNode by name in lua, then grab the m_BlendTime?

bright fog
#

I don't think you can no

#

Why do you need to get that in Lua ?

torn igloo
#

Cheat detection

bright fog
#

People cheat by changing the blend time ?

torn igloo
#

Yep, you can cut short the time thus the animation time thus....every go faster.

bright fog
#

Best you can do is parse the game files from Lua

#

At least you can do that

#

You can parse every AnimNodes that are defined in the AnimSets folder

torn igloo
#

How?

tranquil kindle
#

Cheating in zomboid....

torn igloo
#

I see these file reader etc, well, will test if it can read vanilla files. I thought it couldn't.

bronze yoke
#

getGameFilesTextInput can be used to read vanilla files

swift goblet
bright fog
#

You just did a very obvious fuck up in your mod structure, I'm 100% sure of it

swift goblet
#

yeah i guess chatgpt wasnt much of help

#

plus im trying to make it for b42

#

I've just seen the pinned messages

#

hahaha

#

im sorry

alpine hazel
#

Hey there! I'm trying to check if the custom item I added to the game is spawning in zombies, I can give myself the item and use it but cant find a zombie with the item in them no matter how much I spawn. Not sure if I'm doing it correctly cant find much info about it

This is how I try to do it (screenshot below)

alpine hazel
#

Nvm forgot to add the require, now I'm wondering if I can set the chance to a custom value instead of the one in AttachedWeaponDefinitions.lua for "spearStomach"

wide ermine
#

How hard would it be to make a mod that adds different variants and styles of the wooden window barricades that like randomizes each time?

true nova
wide ermine
#

๐Ÿ‘

silent zealot
swift goblet
manic sequoia
#

Hello, me and my friend are trying to make our first test mod, but we have run into an issue with the 3d textures.
Does anyone know to export the blender .obj file as the .x file, like the ones the game uses?
Thank you in advance!

manic sequoia
#

ok, is there anything which needs to be changed in the script if .fbx is used?

mellow frigate
#

for details on animations, you should ask in modeling channel. there are the experts.

manic sequoia
#

just did that, currently trying to get it to work, but the 3d textures don't show up

bright fog
#

In case

#

Simply ask for more detailed help in #modeling

manic sequoia
bright fog
#

But regarding DirectX, it will never be the solution, just so you know and don't try anything more in this direction

shy mantle
#

I was just toying around with the vehicle mass and it is VERY fun to set all the mass to 1 and drive through cars, just like with zombie ragdolls lol

wheat charm
#

I'm using onTick to call zombie:getOutfitName(), but it always returns nil.
After I kill a zombie, zombie:getOutfitName() returns the dead zombie's outfit name, not the target zombie's.
I've confirmed that the zombie information I need is indeed for living zombies; it's only the outfit name that's causing this issue.

bright fog
#

Show your code

wheat charm
# bright fog OnTick doesn't return any zombies

I deleted all my code except for getOutfitName() and print(), and it seems to work now. Perhaps I was writing too much to modData. As long as I know it's working, I'll try it again to see where the problem is. Thanks for your response.

bright fog
#

Mod structure on the wiki

Based on some feedback on the mapping Discord, I added more details regarding mod structures. Now each individual Modding field pages will have detail regarding their mod structure and each subfolders to the media folder for each modding fields are detailed in this section. The modding field pages will have a section "Folder structure":

wheat charm
# bright fog # Mod structure on the wiki Based on some feedback on the mapping Discord, I add...

I've already searched all the wikis, Lua API, Java API, and even asked ChatGPT, but no one has answered this question.

Now Iโ€™ve tested and discovered that there seems to be some leftover data in the modData system. For some reason, it doesnโ€™t get cleared when the zombie is removed. Currently, I wrote some data into the modData of a single zombie โ€” the data only contains information specific to that one zombie. Then I deleted that zombie and reloaded my script, keeping only the part that prints out the modData โ€” everything else was removed.

After deleting all zombies in the game and spawning a new one, the modData read from it is still from the previous zombie. No matter how many times I delete or respawn zombies, it always reads the modData from the last zombie before I reloaded the script.

bright fog
bright fog
#

You can't properly use mod data on zombies

#

The page explains why

wheat charm
silent zealot
#

There are some tricks you can do... what is your goal with storing modData on a Zombie?

#

We might be able to suggest a different approach

bronze yoke
#

<@&671452400221159444>

vagrant ledge
#

Hullo! Just messing around with creating UI panels, had a question:

    ISCollapsableWindow.createChildren(self)
    
    local buttonW = (self:getWidth() - 50)
    local buttonH = 25

    for i = 1, 20 do
        local newButt = ISButton:new(25, yPad, buttonW, buttonH, "=)", self, self.onClicked )
        newButt:initialise()
        self:addChild(newButt)
        yPad = yPad + 35
    end


end

function TestPanel:onClicked(button)
    local i = (ZombRand(6) + 1)
    button.title = self.strings[i]
    print("I'm just a funny little guy")

end 

function TestPanel:new(x, y, width, height)

    local o = ISCollapsableWindow:new(x, y, width, height)
    setmetatable(o, self)
    self.__index = self
    o.title = "Test Panel :)"
    o.strings = {"Ow!", "Stop!", "That hurts!", "Quit it!", "Enough!", "Stop that!"}
    o.yPad = nil
    return o 
end

How would one go about making this panel scrollable, since the buttons extend past the bottom of the panel?

slim swan
silver mountain
#

I'm trying to make a custom weapon (StoneSword) for my mod, and everything works except repairing.

The weapon spawns, can be equipped, used, and breaks after some use โ€” but when I right-click on the broken weapon, there's no "Repair" option.

Here's my fixing definition in scripts:

module Base
{
fixing Fix StoneSword
{
Require : StoneSword,

    Fixer : Woodglue=2; Woodwork=2,
    Fixer : DuctTape=2,
    Fixer : Glue=2,
    Fixer : Scotchtape=4
}

}

(problem solved)

silver mountain
thin swan
# silver mountain B41

Ah I think you need the trailing comma after Fixer : Scotchtape=4 so try doing Fixer : Scotchtape=4, instead

silver mountain
silver mountain
thin swan
silver mountain
thin swan
silver mountain
bright fog
#

Better highlight for parameters

I'm trying to fix an issue in my wiki pages where parameters were put in between <> and led to some confusion from some that they had to be kept. So instead, by using colors to highlight the various parameters, this should fix this issue
https://pzwiki.net/wiki/Inputs

bright fog
zenith lava
#

I will pay if someone undoes what PZ devs did and put barricading back to normal
Build menu is so stupid

#

Fuckin

A mod just called "Less Tedium" would be a godsend.

thin swan
# zenith lava I will pay if someone undoes what PZ devs did and put barricading back to normal...

I think more and more stuff will move away from context menu, so if you get Roccos The Shortcut and neat build UI and then use the new keybind settings to quickly open the build menu, it's not too bad. Probably best to get used to this new way of building stuff.

With that said, if you want to commission it you could go to the PZ Modding Community sever and make a most in the #requests channel, you'd be more likely to find someone to pick it up

bright fog
#

Ah to not having the right click options ?

#

Sadly they were right to modify how building overall works, but it's true it's not very flexible to add context menu options

slim swan
#

I support and understand the devsโ€™ decision to start removing a lot of things from the context menu โ€” itโ€™s already overloaded with too many options.
What I donโ€™t agree with, though, is removing some options while still adding new ones at the same time.
Maybe their real goal is just to streamline the world context menu specifically.

zenith lava
#

I just do not like how it's now

#

Open menu select thing build repeat

#

Before it was "HAve items, right click on window, boom."

#

It's just tedium now.

modern dune
#

Looking to commission a hairstyle if any artists are around/free. Hope to see a portfolio.

torn igloo
#

Is there a way to get the absolute path to steamapp PZ folder?

bright fog
#

For security reasons I believe

#

yup no

#

You need to read from mod ID or vanilla folders directly

median prairie
#

I'm trying to locate the part of the code that determines what items (scrap wood etc) are dropped when a player-built wall is destroyed so we might be able to apply that to player built barricades. Any ideas would be greatly appreciated.

true nova
#

look for ISMoveableDefinitions.lua

median prairie
#

Much love, thank you!

silver mountain
torn igloo
# bright fog yup no

Sadge, so no way to do some form of animation xml integrity check. Guess I can only do a check that is less reliable and limited.

bright fog
#

If you ask to be able to read the files

#

I think you can access them

thin swan
torn igloo
bright fog
torn igloo
# bright fog You sure ? Isn't there a reader like for mod files ?

I don't know about mod files, I am looking at vanilla files.
getGameFilesTextInput only works on debug mode. getGameFilesInput works outside debug mode but need absolute path. getGameFilesTextInput also use absolute path, the different between them is BufferedReader and DataInputStream

bright fog
#

Hmm

#

@bronze yoke wait was it you that needed users to reference their game path in a mod ?

bright fog
bronze yoke
#

i did it before but i don't remember how

shy mantle
#

I just wanted to share that I just had my mod show up as a big part in nurse's stream yesterday. That's a first for me

bronze yoke
bright fog
#

What does that output exactly ?

bronze yoke
#

paths of loaded lua files

bright fog
#

The media/lua folder ?

bronze yoke
#

yeah, absolute paths

bright fog
#

Ok ok pretty cool

atomic hare
ancient grail
true shuttle
#

Is there anyway to share code between build 41 and build 42 implementations of a mod? I have the mod structure that supports both versions, but I'm unsure how I can share some generic code between them.

bronze yoke
#

no

#

you can't share anything between 41 and 42

#

there are some very specific tricks for very specific things but it's best to just think of them as separate copies of the mod

warm remnant
#

I'm making a personal mod that led to me using ZomboidDecompiler to edit some java. I've made the changes, I just have no idea how to recompile to class files while satisfying dependencies. Any tips?

warm remnant
#

I think the closest I've gotten is javac -d [path to output] -cp [path to jars] -classpath [path to PZ root] [path to java file I'm trying to compile] but the output complains about trying to convert an object to a bool in sections of code I didn't touch

bright fog
#

Actually, technically you can also use the poster and icon in B41 from B42

small topaz
#

Hi! I just noticed that in Echo Creek, in (almost) all bathrooms, there is a missing collision for toilets and sinks. Is this intentional?

bright fog
#

Report it on the bug report in the forums

lofty frigate
wooden saffron
#

heyo! quick and hopefully not silly question - anyone know where I can find the sprites/PNGs for the game's particle effects -- like the smoke from a smoke-bomb, and/or fire?

I may just be blind because it's late, but I can't find them in the expected media/textures folder, - the fire and smoke PNGs in there are totally different from in-game ๐Ÿคจ

bright fog
tulip valve
#

Is there anyway to get FullSuitHead to allow Backpacks? Only way can get it to work is the remove it from the original BodyLocations.lua file lol

tranquil kindle
#

I haven't heard of clothing like full body suit that would not allow you to wear backpacks

tulip valve
#

Hazmat suits

terse delta
#

Not PZ question, but do you know the way to crack unity il2cpp?

ancient grail
tulip valve
#

Won't that cause lots of other problems?

#

I'll try that, thanks ^^

ancient grail
tulip valve
#

I'd have to add every clothing type with my new body location I suppose

ancient grail
#

its actually the other way around

you actually tell the bodylocation what parts it overwrites/replace

so not declaring anything at all means you can wear it together with anything and wont have any issues

wooden saffron
# bright fog Did you check inside the .pack files ?

Yes, albeit maybe not in the way you intended(?)
I checked, both by skimming them in notepad (in case I found a pointer,) and also by attempting to open the .pack files in Tilezed's pack viewer, but either I did that wrong, or I may not know how pack viewer works

atomic hare
#

where i can find the values for vanilla clothing?

#

like, i renember the wiki had a decompiled (i think) before but i cant find anymore

#

cause i want to grab the vanilla values for shoes, but cant find them anywhere

stable marsh
#

Sooo I'm trying to migrate my B41 WIP mod to B42 and ran into an issue- Adding crowbar variants, for some reason, it only shows half the model. Could it be miss-aligned texture? In blender it looks fine

bright fog
atomic hare
# bright fog Wdym by values ?
    {
        DisplayName = Socks,
        DisplayCategory = Clothing,
        Type = Clothing,
        Weight = 0.1,
        Icon = SocksAnkleWhite,
        BloodLocation = Shoes,
        BodyLocation = Socks,
        ClothingItem = Socks_Ankle,
        FabricType = Cotton,
        Insulation = 0.15,
        WindResistance = 0.1,
        BiteDefense = 5,
        ScratchDefense = 5,
        WorldStaticModel = Sock_Ankle_Ground,
        Tags = noRope,```
Like these (i grabbed these from a mod)
bright fog
#

Simply search for the shoe ID

#

In the scripts folder

atomic hare
#

i am still confused, i need to decompile it first?

bright fog
#

Nop

#

It's in the game media folder

#

Inside the scripts folder

#

This folder

#

media/scripts

#

So in VSCode you simply search inside this folder for key terms to find the boots

atomic hare
#

oh!

bronze yoke
#

i don't remember the details but there's changes to how b42 handles ngons that causes stuff like this a lot

stable marsh
#

It was indeed that!

slim swan
#

Wait,what?

cold skiff
#

i have this script with this recipe item:
module Base
{
craftRecipe AssembleLegendaryBackpack_Grey
{
timedAction = SewingCloth,
Time = 1200,
xpAward = Tailoring:100,
AllowBatchCraft = False,
Tags = AnySurfaceCraft,
category = Tailoring,
SkillRequired = Tailoring:4,
NeedToBeLearn = True,
AutoLearnAny = Tailoring:6,
inputs
{
item 1 tags[Scissors;SharpKnife] mode:keep flags[IsNotDull;MayDegradeLight],
item 1 tags[SewingNeedle] mode:keep flags[MayDegradeLight],
item 1 tags[Awl] mode:keep flags[MayDegradeLight],
item 5 [Base.DenimStrips;] mode:destroy,
item 4 tags[HeavyThread],
item 2 [Base.LeatherStrips] mode:destroy,
item 3 [Base.Twine;5:Base.DuctTape;2:Base.Rope] flags[DontReplace],
item 5 [Base.WoodenStick2],
}
outputs
{
item 1 LB.Bag_LegendaryBackpack_Grey,
}
}
]

and Recipes_ES.txt
RecipesES =
{
/Fabricar Mochila Legendaria/
Recipe_AssembleLegendaryBackpack_Grey = "Fabricar Mochila Legendaria Gris",
Recipe_AssembleLegendaryBackpack_Pink = "Fabricar Mochila Legendaria Rosa",
Recipe_AssembleLegendaryBackpack_Black = "Fabricar Mochila Legendaria Negra",
Recipe_AssembleLegendaryBackpack_Green = "Fabricar Mochila Legendaria Verde",
Recipe_AssembleLegendaryBackpack_Brown = "Fabricar Mochila Legendaria Marrรณn",
}
But the game does not locate what is failing!!!
PLS NEED HELP

bright fog
#

Is that the original mod ? (clearly is from the amount of votes)

bright fog
#

The recipe doesn't load ? Your translation isn't used ?

#

We CAN'T locate what is failing if you yourself don't even tell us what you expect from this and what you are getting or not getting

young trellis
#

I'm having an issue with not being able to see my mod in my user/zomboid/mods folder, When I open the gmae up to enable it I can't see it what might be causing this issue?

bronze yoke
young trellis
#

I've got it in there

bright fog
#

You're not showing us anything here dude

#

:|

#

We don't know what folder all of this is actually in

#

Nor can we see the whole folder structure

young trellis
#

It's in the named modded folder in Zomboid/mods/mymod

bright fog
#

What game versions ?

young trellis
#

Current

bright fog
#

That can be both B41 and B42

young trellis
#

B42 unstable*

bright fog
#

So that's wrong then

#

I invite you to go read the wiki page Albion sent

#

Mod structure

#

You're currently using the B41 structure

#

Also your poster is 0 KB, idk if that's normal

#

Not sure it matters either but if it's a blank png maybe the game won't like it ?

bronze yoke
#

it's fine if the poster doesn't work, game won't break, mod won't disappear

young trellis
#

I'm not sure, I was seeing it earlier then I changed something and now I can't see any mod I try to put

young trellis
#

local LOG = function(m) print("[LRRP Vet] "..tostring(m)) end

local PROF_ID   = "lrrp_veterinarian"
local PROF_NAME = getText("UI_prof_LRRP_Veterinarian")
local PROF_ICON = "LRRP_Vet_Icon"
local PROF_COST = -2

local FirstAidPerk = Perks.FirstAid or Perks.Doctor
local AnimalPerk   = Perks.AnimalHandling
                  or Perks.Animals
                  or Perks.AnimalHusbandry
                  or (Perks.FromString and (Perks.FromString("AnimalHandling") or Perks.FromString("AnimalCare")))

local function ensureRegistered()
    if not ProfessionFactory or not ProfessionFactory.addProfession then
        LOG("ProfessionFactory not ready yet")
        return false
    end

    local prof = ProfessionFactory.getProfession(PROF_ID)
    if not prof then
        prof = ProfessionFactory.addProfession(PROF_ID, PROF_NAME, PROF_ICON)
        LOG("Created new profession")
    else
        LOG("Updated existing profession")
    end

    prof:setCost(PROF_COST)
    if FirstAidPerk then prof:addXPBoost(FirstAidPerk, 2) end
    if AnimalPerk   then prof:addXPBoost(AnimalPerk,   2) end

    LOG("Cost set to "..PROF_COST)
    return true
end

local function applyStartingLevels(player)
    if not player then return end
    local desc = player:getDescriptor()
    if not desc or desc:getProfession() ~= PROF_ID then return end

    local function add2(perk) if perk then player:LevelPerk(perk); player:LevelPerk(perk) end end
    add2(FirstAidPerk)
    add2(AnimalPerk)

    local inv = player:getInventory()
    inv:AddItem("Base.Tweezers")
    inv:AddItem("Base.Bandage")
    inv:AddItem("Base.Disinfectant")

    LOG("Applied +2 levels and starter kit")
end

local okNow = pcall(ensureRegistered)
Events.OnGameBoot.Add(function() if not okNow then ensureRegistered() end end)
Events.OnInitWorld.Add(function() ensureRegistered() end)
Events.OnGameStart.Add(function() ensureRegistered() end)
Events.OnNewGame.Add(applyStartingLevels)
Events.OnCreatePlayer.Add(function(_, p) applyStartingLevels(p) end)

What is animal handling called in game? I see animal care and handling flung around I want to give skills in both first aid and animal handling but I also want the occupation to make it so the player is at a 2 point deficit what needs changing here?

sonic needle
true shuttle
#

What is the proper way to implement admin tools, like say you wanted to change another player's thirst as an example.

red tiger
stable marsh
#

The comments are filling with Chinese(?) comments talking about exposing or smth?

#

If the translators online are correct these are some problematic comments wth-

#

There's also someone saying in those comments several of the biggest/well-known mods for PZ have been reported sophia_think

red tiger
#

Obvious ToS violation.

stable marsh
#

Does sound like it yeah if it's multiple mods

red tiger
#

Dark ambient focus music designed for late-night study sessions, deep work, and background BGMโ€”an hour of immersive study music built for
sustained concentration.

Immerse yourself in the signal remnants of a collapsed system as we journey through shadowed corridors of consciousness with this 1-hour transmission from the Void Signal series.

...

โ–ถ Play video
true shuttle
true shuttle
red tiger
true shuttle
#

cool thanks

#

Jab, tell me the basics on multiplayerifying I know you know ๐Ÿ˜„

red tiger
#

I've been waking up after midnight and spending some time writing a superset language and tokenizer.

true shuttle
#

you were telling me the other day

#

about that

#

i have a little shrine in the corner of my room

#

that's dedicated to appealing to the gods to influence you to update pipewrench instead

#

๐Ÿคž

red tiger
#

Well Server / Client commands in Lua. That API + client-side ISUI stuff yeah

true shuttle
#

hehe

red tiger
#

I consider all of my API / type-discovery code to be part of a larger project.

true shuttle
#

the jabbiverse

red tiger
#

In this case I'm writing a language that doesn't run but compiles to Lua.

true shuttle
#

sure a transpile like ts

red tiger
#

Coolua is the name of this one.

#

Coolua code -> [Lua 5.1 code with boilerplate baked in, Lua 5.1 type-annotations]

#

Very much like Typescript although inspired by Java.

true shuttle
#

what do you mean server/client commands? i would write some server/ code that is listening for some kind of command, and the client/ ui would need to send commands to the server (probably also doing some kind of authorization / permission checking), and I guess that PZ has a system for this kind of messaging already?

red tiger
true shuttle
#

I see.

#

What's the send end? If you know

red tiger
#

It's table-throwing with player args.

#

If you have Umbrella it should populate the function body with params to use.

#

OnClientCommand = C2S, OnServerCommand = S2C.

true shuttle
#

what i mean is, where / what does the sending api look like

red tiger
#

It's an arbitrary KahluaTable / Lua table.

#

All you're doing is bouncing table data.

true shuttle
#

OnClientCommand and OnServerCommand seem like the events for setting up receiver handlers

#

how do you actually send those tables though

red tiger
#

Use this with Lua files that checks if isServer() and isClient()

true shuttle
#

Is there a "SendToServer" function somewhere

red tiger
#

You'll see these in Umbrella.

true shuttle
#

ahh ok perfect bless you

red tiger
#

Grab lua language server extension on vscode and hit F1 and type install addon and then search for Umbrella

true shuttle
#

i do have that setup

red tiger
#

Umbrella (Unstable) === build 42

red tiger
#

More music

#

Planet: Aegron-9
System: Vallis Cephei
Sector: Fathom Reach

"Solitude is the salt of the wilderness โ€” it seasons the perception."
โ€” Tej Aravind, Explorerโ€™s Codex, Vol. III

The transport touched down thirteen hours ago. The sandstorm hasn't relented since. The winds here carry not just dust, but memory โ€” as if the planet itself resists ...

โ–ถ Play video
#

Good for le code

#

Deep in the abstract

#
export type NumericLiteral = Expression & {
  readonly type: "NumericLiteral";
  readonly value: number;
};

export type ArithmaticOperation = Expression & {
  readonly type: "ArithmaticOperation";
  readonly left: Expression;
  readonly right: Expression;
  readonly operator: "+" | "-" | "/" | "*" | "%";
};
#

It's 5:20 AM and where's my 2nd cup of coffee?

#

Everything in life is a sequence of operative expressions in the organization of void statements.

azure crane
#

Mkay

silent zealot
red tiger
#

In order to write the code I'm working on ATM I need to be up at night.

ancient grail
tulip valve
#

group:getOrCreateLocation("FullSuitHeadNew")```
#

then update the clothing to use FullSuitHeadNew

#

right?

tulip valve
#

Thank you, it works, altough the backpack is invisible with the clothing, I kinda like it xD

#

Any idea how I make the backpack to show? It's invisible for some reason

abstract saddle
#

Hi guys, Im new here and trying to update square room data, trying to merge one room with the other. Through checking on the debug menu the squares are now merged into the same room, but when I quit and reload the save files the squares reset to its original room. Is this by game design?

        local squ = squares:get(i)
        print("squ: " .. tostring(squ))
        if squ then
            squ:setRoom(masterRoom)
            squ:setRoomID(RoomMergerUtils.masterRoom.id)
            slaveRoom:removeSquare(squ)
            masterRoom:addSquare(squ)

            moved = moved + 1
        end
    end```
bright fog
abstract saddle
bright fog
#

Idk

#

idk any details of it, in fact I didn't knew you could do what you did here

bronze yoke
#

you probably can't yeah

#

i've tried to do similar things a bunch and never had any luck

abstract saddle
#

This is as far as I can get, but no it wont persist through a save and load

bright fog
#

Bcs if not, you could make something that recreates the interior room every time that area is loaded in

#

Also does the room disappear if you move away by unloaded then reloading the area ?

mellow frigate
bright fog
#

Steam Uploader tool

Standalone uploader tool for workshop items, you can individually upload different elements of the mod (content, description, preview...). The tool is still WIP and I will appreciate any feedback.

Currently untested for Windows but should work.

https://pzwiki.net/wiki/Steam_Uploader
https://github.com/SirDoggyJvla/Steam-Uploader

GitHub

Contribute to SirDoggyJvla/Steam-Uploader development by creating an account on GitHub.

ancient grail
bright fog
#

The only limitations are the Steam API ones, which are the norms compared to the in-game uploader

ancient grail
torpid mountain
#

Hello! I am new to Project Zomboid and saw this mod is broken (and abandoned)

#

Is it too hard to fix this kind of stuff?

#

I am willing to give it a try

bright fog
stable marsh
#

How would I go about adding more barbed wire weapons to this within a custom module? Do I need to import base for it to work? Just add an item to the mapper?

/* BARBED-WIRE */
    craftRecipe BarbedWireWeapon
    {
        time            = 600,
        tags            = AnySurfaceCraft,
        category = Weaponry,
        needTobeLearn = true,
        SkillRequired = Maintenance:1,
        timedAction = CraftWeapon2H,
        xpAward = Maintenance:10,
        AutoLearnAny = Maintenance:3;Blunt:3,
        inputs
        {
            item 1 tags[Pliers] mode:keep flags[MayDegradeLight],
            item 1 [Base.Broom;Base.IceHockeyStick;Base.Plunger] mappers[BarbedWireMapper] flags[Prop2;InheritCondition],
            item 1 [Base.BarbedWire],
        }
        outputs
        {
            item 1 mapper:BarbedWireMapper,
        }
        itemMapper BarbedWireMapper
        {
            Base.Broom_BarbedWire = Base.Broom,
            Base.IceHockeyStick_BarbedWire = Base.IceHockeyStick,
            Base.Plunger_BarbedWire = Base.Plunger,

            default = Base.Broom_BarbedWire,
        }
    }
torpid mountain
bright fog
#

I suppose it wouldn't be too hard because first off:

  • it's recent
  • it's already B42 so most of the work should have been done
    But that's if the mod worked in the first place too
bright fog
#

So uh ...

#

Your best method here seems to be to make your own recipe similar to this one

stable marsh
#

Oof, oh well guess I'll do that for now until hopefully a way to add to them will be added

bright fog
torpid mountain
torpid mountain
#

But now its broken

#

I tried it out as well

#

Instead of diving through the window, you just crash against it

#

Shattering it and injuring yourself severely

pearl prism
true shuttle
stable marsh
bright fog
stable marsh
#

Yup

bright fog
#

Can you show your full script ?

stable marsh
#

Yeah one sec

#

recipes_improvised_weapons.txt (dunno if script file name might cause it)

module PNAdditions
{
    /* BARBED-WIRE */
    craftRecipe TestBarbedWireWeapon
    {
        time            = 600,
        tags            = AnySurfaceCraft,
        category = Weaponry,
        needTobeLearn = false,
        SkillRequired = Maintenance:2,
        timedAction = CraftWeapon2H,
        xpAward = Maintenance:10,
        AutoLearnAny = Maintenance:3;Blunt:3,
        inputs
        {
            item 1 tags[Pliers] mode:keep flags[MayDegradeLight],
            item 1 [PNAdditions.PNABroomRed] mappers[TestBarbedWireMapper] flags[Prop2;InheritCondition],
            item 1 [Base.BarbedWire],
        }
        outputs
        {
            item 1 mapper:TestBarbedWireMapper,
        }
        itemMapper TestBarbedWireMapper
        {
            PNAdditions.PNABroomRed_BarbedWire = PNAdditions.PNABroomRed,

            default = PNAdditions.PNABroomRed_BarbedWire,
        }
    }
    
}
bronze yoke
#

it would cause it yeah

#

make sure the path of any script file your mod adds is completely unique or it will override the vanilla file

#

this also affects things like lua files, models, textures, etc

stable marsh
#

Good to know ๐Ÿ™

alpine hazel
bright fog
#

I'll add this explanation to the README

alpine hazel
#

Getting this trying to execute on windows 10, says "didnt find libstdc++-6.dll"

bright fog
#

Only that ?

#

What's the full message please ?

alpine hazel
#

Full message says "The execution of the code cant continue because libstdc++-6.dll wasnt found. This issue can be fixed reinstalling the program"

bright fog
#

You downloaded the .zip from releases right ?

alpine hazel
#

Yeah

bright fog
#

What command did you run ?

#

Ah wait you're not trying to open it as a classic .exe are you ? ๐Ÿ˜…

alpine hazel
#

None didnt even get to use a command or anything

bright fog
#

It's not a .exe

#

I mean

#

It is but you use command lines to use it

alpine hazel
#

Oh wait I'm dumb sorry to late didnt notice lmao

bronze yoke
#

that kind of error does imply it wouldn't work either way

bright fog
#

Tho I have no idea why that error would happen, I looked it up and apparently is linked to a library to install which seems to be used for compilation ? Which uh ... well you don't compile here

alpine hazel
#

Yeah through command line same error

bright fog
#

@bronze yoke have you tried running it ?

bronze yoke
#

no i haven't had a chance yet

bright fog
#

I suppose it's due to a package I was supposed to properly package in the soft, from quick reads

#

I really need to get to setup that virtual machine for windows on my PC I think lol

alpine hazel
#

Im about to do the same but with linux ๐Ÿ˜‚

#

If you need me to test something lemme know I'm down to help

bright fog
#

I mean thx for your feedback at least, I need it since it's my first C++ program ever and I don't have any experience with compilers

bright fog
alpine hazel
#

I didnt mean right now like if you want to test something of the program or anything @ me I'll be glad to help with it ๐Ÿ‘Œ

bright fog
#

Alright thx !

stable marsh
#

For some reason the recipe name is not changing from the recipeID to the name in the translate file- Pretty sure I've followed the wiki on-point

#

Apparently it's Recipes_EN according to another mod-

#

The wiki has an error in it if that's the case

bright fog
#

As for your issue, you didn't name your recipe the same as another mod ?

#

Also where did you place the Recipe_EN.txt file ?

#

Also I'm interested in getting your feedback on the wiki pages you've read if you don't mind, always good to have some feedback from new modders especially

bronze yoke
#

the file should be named Recipes_EN.txt though, that does matter

stable marsh
bright fog
stable marsh
bright fog
#

Wait no what

#

Oh wait yes !

#

Oh god I see my confusion I think

stable marsh
#

AH yeah xD

#

I can see how that can get confusing

bright fog
#

Yup

#

Ok fixed it

stable marsh
#

Awesome

#

Other than that so far the wiki pages are nice and also well followable ๐Ÿ‘

#

The examples are also very nice to have

#

Things seem a lot better explained than for Starsector that's for sure

bright fog
stable marsh
bright fog
#

I will reformat a tiny bit the CraftRecipe page to take the new changes I've made to some stuff like in the inputs page

#

Using colors for parameters

#

That will reduce confusion on symbols that I tend to use to show parameters, that new modders sometimes end up keeping

#

like <RecipeID>

stable marsh
bright fog
#

Yea sadly making a modding wiki involves quite a lot of effort, and I'm lucky we got a good modding community too

stable marsh
bright fog
#

Ah yea that doesn't help

stable marsh
#

The ones that can make such a thing are all unwilling

bright fog
stable marsh
bright fog
#

But yea making documentation isn't always fun, I can understand that

stable marsh
bright fog
#

I see

open drum
#

Hi guys

#

quick question

#

In build41 debug mode, there's UI for player ModData

#

is it gone in build 42?

#

or it's found in some other place?

abstract saddle
abstract saddle
abstract saddle
shy mantle
#

Is there any way to customize the debug option, slow loading? It would be cool to have it only enabled while driving to load cells directly in front of the car, for the most part. It multiplies my fps by 10x, which is absolutely insane, so that's why I'm asking.

stable marsh
thin swan
#

Hey did you ever end up releasing this mod? I was just talking to someone today that mentioned wanting license plates and remembered you were working on it a while ago, but can't find anything in the workshop

bright fog
#

You can check how it's triggered I suppose and maybe trigger it on your own

bright fog
#

Also I don't remember that in vanilla, only in the community debug tools

bright fog
open drum
#

hmm maybe im not right clicking the right spot

#

XD

#

nope still can't find it

main pasture
thin swan
# open drum nope still can't find it

You have to hit F2 and then click on the square that your player is on, and then select the player object in the top left window, then it will show the mod data

thin swan
main pasture
alpine hazel
#

I would 100% this kind of stuff adds a cool touch to the game imo, a thing lot of games have forgotten these days drunk

broken briar
#

i have a question, is it possible to create a mod based on the rage virus from 28 days later?

#

like have the virus turn someone into 10 to 20 seconds

#

have an animation of them turning

#

and have a different sounds

#

almost human-like sounds

bright fog
bright fog
broken briar
bright fog
#

But all of that is possible yes

broken briar
#

I'm also thinking about changing the lore slightly..

bright fog
#

For the zombie sounds you have two solutions:

  • modify the .bank files which hold the zombies but player have to manually install the modified file
  • manually trigger the zpmbie sounds based on some actions
bright fog
broken briar
bright fog
#

I would suggest going step by step

#

For B41 or B42 ?

broken briar
#

B42

bright fog
# broken briar B42

Yea so modifying the lore would involve modifying every in-game items that add lore + all the media

#

The work amount is soooo much higher than the other things you want to do combined

broken briar
#

mhm..

bright fog
#

Don't put too much on your shoulders to do, especially if you're new to modding

#

You won't see results and will demotivate yourself

regal umbra
#

Yay, I'm legit happy, managed to release my first mod, finally

grim cedar
#

๐Ÿ”œ ๐Ÿ’ฐ

regal umbra
# thin swan Sick! What is it?

So, you know Monkey's RV Spawn for B41? Yeah I tried to make something like it in B42 so people can use it with the RV Interior mod that released for B42 recently. I named it Vanvival

#

Planning on adding a few more features, so it comes at least anywhere close to Monkey's one lmao

#

Right now it only really allows you to spawn with a vehicle, in a few custom spawn points, and I added the purge function too so zombies around you get well purged. I also added support for a few custom vehicles that Mickey's included in the RV Interior Mod

#

Figured people would miss Monkey's RV Spawn and not sure if Monkey's is active anymore so decided to challenge myself to make it happen in B42

bright fog
thin swan
bright fog
#

If someone on windows can test it out, I'd appreciate ๐Ÿ˜„

regal umbra
regal umbra
#

Or to be tested really

wise plank
#

Sup yall, I'm a novice when it comes to coding but I've recently started learning Unity and some basic game dev and I thought of a mod idea that could be fun and a challenging learning experience for me. How difficult is the UI to work with in PZ? I've done some simple stuff in Unity but I've seen plenty of complaints about the way Unity does UI stuff. I'm wanting to make some "skill minigames" and I'd imagine most of it would be UI work.

bright fog
regal umbra
thin swan
bright fog
wise plank
bright fog
bright fog
#

There's a very recent one

#

Wait

#

Yes it should be that one

#

Tho idk why he removed screenshots of it !

#

There were screenshots of it in-game and shit

#

@coarse sinew also did a looooot of UI work and made a lot of minigames in his computer system, tho I believe it's private for now

wise plank
#

S'all good! I'll play around with it in-game a bit before digging through it's code. Thank you for helping!

bright fog
#

๐Ÿ‘Œ

drifting ore
#

Iโ€™m guessing non English

#

And far from it

bright fog
#

Yea I think it was already an AI generated description

#

But there were screenshots of it in-game before !

#

I don't understand why they removed it

#

Now their mod looks like AI garbage !

drifting ore
#

Either you know or you donโ€™t

#

The author literally could not care less if youโ€™re using his mod ๐Ÿ˜‚

#

To each their own I guess

bright fog
#

Even the mod preview wasn't AI generated

#

It was an in-game screenshot I believe, with a sort of screen border if I remember correctly and the name of the mod

#

Now it's just AI garbage :(

bronze yoke
#

they had a trailer before

bright fog
#

Oh yea I think you're right

drifting ore
#

So weird

bright fog
#

I did remember a video of it !

#

One of the guy is french

#

Other one idk

drifting ore
#

The only other mod is a true music addon?

regal umbra
#

@bright fog Alright so, not sure if it's me being dumb or not. But for PatchNotes and Visibility I'm getting no arguments found, can't really test for content and preview right now, I dont have any extra workshop project to test it on besides the only one I published. Title and description are working flawlessly

#

Mb

#

All parameters are empty*

bright fog
regal umbra
bright fog
#

-v is verbose

#

-V is visibility

#

Wait no

#

Sorry I'm wrong

#

Jesus I need to remove verbose

regal umbra
#

lmao

bright fog
#

uh

regal umbra
#

yeah also did it with patchnotes, caps P, normal p, same error

bright fog
#

Can you try

app-windows-latest -w workshopID -v 2 ?
regal umbra
#

sure

bright fog
regal umbra
bright fog
#

It does get the appID, so that's a good sign

#

Ooooh !

#

I know my mistake !

#

Yea ok so if visibility is alone, it won't do jackshit lol

#

I'll fix that

regal umbra
#

Well glad to have helped out, wish I could try content and preview, but I do not really want to mess with the project i have on the workshop now ๐Ÿ˜ญ

#

At least with stuff i can't easily revert

bright fog
#

Yea that's ok thx ! At least I know you can use it, just got to test uploading something to see if it works fully but that at least means the fix I pushed works for others

regal umbra
#

Well whenever I have new content for the mod, which might be as soon as tomorrow, I'll use the tool to upload

bright fog
#

Alright thank you !

regal umbra
bright fog
#

That'll be perfect to add in the details section

alpine hazel
#

@bright fog Works fine so far, will try updating actual content and using other parameters to see how it goes, oh and my os version is Windows 10 Pro 22H2

bright fog
#

Alright perfect !

regal umbra
#

Nearly perfect cross-os software lmao

bright fog
#

<@&671452400221159444>

bright fog
#

I wanted to make it work on Windows too since I made it for the modders and I know most are on Windows

alpine hazel
bright fog
#

Buuuuut idk if I will

regal umbra
#

Honestly ^^^. UI would make it way easier for people that do too well with the command line

#

that do not*

bright fog
#

Yea I suppose and I can keep the command line version

#

Tho that's my first C++ project ever so uh, going to go slow here LMAO

#

I'll see, I'll consider it

alpine hazel
#

Thats awesome, a friend of mine works making UI and stuff so if anything I can put him in contact with you in case you consider doing so

regal umbra
#

Well if you need any help count me in, I'm a UI/UX designer by craft lmao

bright fog
#

Nice

#

Tbf if you want to contribute to the project, feel free

regal umbra
#

Ngl I would, if I had an idea of C++ at all lmao. My last C++ project was in unreal and was mainly using blueprints

#

Kinda cooked on that one chief

bright fog
#

Thx, I wanted to learn a C language so that was a motivation too, tho I was going with the SteamCMD first but it's very limited

regal umbra
#

Well you're clearly doing great so far

#

So keep at it :)

true shuttle
#

I've been building a reusable data-table in PZ UI and it's not the best system I've had to work with.

#

I remember someone was working on a TypeScript React based UI for PZ, that would've been bonkers.

bronze yoke
#

were you using ISUI or XUI? XUI is a little easier to work with

coarse sinew
# wise plank Oh real shit? Do you have any in mind that I could try dissecting?

The UI in PZ is actually very flexible compared to what you might expect. It's all Lua-based with the ISUI framework, so you can stack custom panels, draw primitives (rectangles, text, textures) in real time, and even bind them to custom logic. You don't have full 3D widget freedom like Unity's canvas system, but you can absolutely make interactive minigames from scratch.

For example, my terminal implementation - I made in it a super lightweight 'Doom' clone running entirely inside a PZ UI panel, built with primitive draw calls and a small set of input hooks. I also added a custom theme system for the terminal, including a rainbow mode where the colors update every render tick.

Point is: as long as you're comfortable manually handling input, rendering, and a state management, you can push the UI way beyond inventory windows and HUD tweaks.

coarse sinew
red tiger
wise plank
regal umbra
#

Someone make a mod where you can play PZ on a computer inside PZ, it would just be bonkers

bright fog
#

True lol

modern dune
#

Trying to identify "VehicleKnowledge" in b42.

#

It's not keying.

#

" local keenhearing1 = TraitFactory.addTrait("KeenHearing1", getText("UI_trait_keenhearing"), 0, getText("UI_trait_keenhearingdesc"), true)
TraitFactory.setMutualExclusive("KeenHearing1", "KeenHearing")

local eagleeyed1 = TraitFactory.addTrait("EagleEyed1", getText("UI_trait_eagleeyed"), 0, getText("UI_trait_eagleeyeddesc"), true)
TraitFactory.setMutualExclusive("EagleEyed1", "EagleEyed")

local vehicleknowledge1 = TraitFactory.addTrait("VehicleKnowledge1", getText("UI_trait_vehicleknowledge"), 0, getText("UI_trait_vehicleknowledgedesc"), true)
TraitFactory.setMutualExclusive("VehicleKnowledge1", "VehicleKnowledge")"

Eagle Eye and Keen Hearing all work, and Vehicle Knowledge follows the same format... yet it's not calling in the trait menu.

#

Here's the errors I'm getting:

"Callframe at: setMutualExclusive function: initProfessions -- file: HandleProfessions.lua line # 14 | MOD: Hearts OC Professions function: Add -- file: HandleProfessions.lua line # 58 | MOD: Hearts OC Professions Callframe at: se.krka.kahlua.integration.expose.MultiLuaJavaInvoker@13c1dbdb function: createAvatar -- file: CharacterCreationMain.lua line # 2240 | Vanilla function: create -- file: CharacterCreationMain.lua line # 233 | Vanilla function: instantiate -- file: MainScreen.lua line # 689 | Vanilla function: instantiate -- file: Disabl_Welcome_Message.lua line # 7 | MOD: Disable Welcome Message function: addToUIManager -- file: ISUIElement.lua line # 1368 | Vanilla function: LoadMainScreenPanelInt -- file: MainScreen.lua line # 2114 | Vanilla function: LoadMainScreenPanel -- file: MainScreen.lua line # 2004 | Vanilla "

coarse sinew
modern dune
#

Apparently, they reverted the Translation for those who are curious in the future and use Discord to find the history.

#

UI_trait_VehicleKnowledge is actually UI_trait_Mechanics again.

bright fog
#

Steam Uploader v0.2.0

Added ability to update tags of the Workshop item.
Added checks stopping uploads of specific parameters if their limitations are not respected:

GitHub

Added ability to update tags of the Workshop item
Added checks stopping uploads of specific parameters if their limitations are not respected:

description is max 8000 character
preview needs to ha...

steady copper
#

can any send me there mod pack i have 4 hours and trying to get an easer experence on thjis game thanks so much

bright fog
steady copper
#

THNAKS

#

MUCH LOV

bright fog
#

Sophie's modpacks are good

#

They have lightly modded versions too I believe

#

Tho idk if they have B42

steady copper
#

b42?

bright fog
#

Build 42

#

You're not aware of Build 42 ?

#

Probably start there then lol

steady copper
#

ok thanks

craggy delta
#

anyone know where compost is controlled? i.e. how to configure items to be compostable and if possible if we can control the length of time for compost? (I know about config in game, I am asking where in the lua)

true nova
true nova
#

it looks like the time is determined by a food compost time value set in java. this should be changeable with setCompostTime() and read with getCompostTime() with the food item

bright wolf
#

i'm not sure why my mod isn't showing up in the mods page? i was able to see it in the mods when it was name \ workshop structure, but i wasn't able to access my traits or profession in game, so i've moved it over to the mods folder. any suggestions?

#

ah, the wiki is saying to put it into the workshop folder. will check back if that doesn't fix anything during dev

#

possibly stupid question, though i'm not seeing any answers to it anywhere else, does my working folder in the Zomboid\workshop folder literally have to be named MyExampleMod?

bronze yoke
#

no

molten grail
#

I'm working on adding a new ring to my mod. I don't care much about what it looks like (currently, just a simple gold band would be plenty). I took the code as it is in vanilla for gold rings, added 4 variants for the ring slots, added xml clothing items files with guids.

When I spawn the item in using debug, it randomly shows different color variations and throws errors saying the visual is nil. Is there a mod that adds rings that I can look at the code of to get an idea of what I am doing wrong here?

willow tulip
#

mods\beefcake, when moved to a workshop mods goes into
Workshop\BeefCake\Contents\mods\Beefcake\

bright fog
#

But it is preffered to use the workshop folder for multiple reasons:

  • has extra folders for you to store assets related to your mod without uploading them
  • you won't have to make a copy of your mod in mods/ into workshop/ when needing to upload, thus reducing the risk of having two copies which can confuse you during dev and cause issues on your side
true shuttle
#

Is there a system like bepinex for .net that lets us load jar classes which hook the java code?

bright fog
#

For Java mods ? No

#

If you want to do Java modding either you recompile the Java files every single game update and have users manually download the mod files
Or you use Leaf

stable marsh
#

So I'm working on a mod that (one of things it does) adds different bell peppers. Is there a way to allow only 1 type of bell pepper to be selected? It's for a recipe that has jarred bell peppers of the same variant/color. Is it based on item name, something else, or is it not possible (at this point in time)?

bright fog
#

You mean in the 6 bell peppers have the same type right ?

#

IsExclusive Whenever multiple possible inputs are available but only a single type can be used, to not mix multiple different items.

#

This is a flag

#

You can also use ItemMappers to output the corresponding output item

stable marsh
bright fog
#

๐Ÿ‘Œ

stable marsh
#

I checked flags but somehow missed that one

bright fog
#

Like a week ago

stable marsh
#

Ah fair

bright fog
#

Tbf the list like that doesn't help finding specifically what you want

#

Bcs it was in the Unknow flags table

stable marsh
#

Riiight

regal umbra
#

<@&671452400221159444>

regal umbra
#

@bright fog Hey, just letting you know the content upload works flawlessly in windows, had to release a quick hotfix for my mod today. Forgot to test Patchnotes but oh well, amazing work!

bright fog
#

Which version of windows ?

regal umbra
bright fog
#

Sorry someone else gave me a version of windows, wasn't sure if it was you

regal umbra
#

Oh yeah the Windows 10 person

#

I saw it lmao

bright fog
#

<@&671452400221159444>

#

jeez they are back

lost slate
#

bruh

#

how many

regal umbra
bright fog
#

Yea it's like before I guess

#

There was a week or two where there weren't any

regal umbra
#

Poor mods being overworked lmao

bright fog
#

Now they're back in force

molten grail
regal umbra
#

<@&671452400221159444> Jeez

#

They don't stop lmao

lost slate
#

-_-

regal umbra
# lost slate -_-

Do y'all want us to keep pinging you or like no need for a good while?

lost slate
#

just ping, no need to create a ticket

finite dune
#

my god...

regal umbra
#

Just asking since I mean it's obvious it gonna be for a while and pinging the mod role every 15 minutes might get a bit annoying lol

finite dune
small topaz
#

Hi! B42 made a lot of changes to Muldraugh, it also changed some parts of the city layout as well as the layout of some of the houses. Does anyone know whether they made similar changes to the other old vanilla cities (West Point, Riverside and Rosewood)? Or are they the same as B41?

bronze yoke
#

there's some changes to the entire map but muldraugh is the only town that was reworked in that way

sour island
#

There's a bot invasion or something?

alpine hazel
sour island
#

What is the message? Anything creative or just a boring steamgift thing?