#mod_development
1 messages ยท Page 136 of 1
the weapon has all transforms reset in blender., the texture linked in blender is the same exact one linked in my files, there is no typoss in any of my ifles, the fucking thign is just inviisbler
its making me really mad because everything that usualyl works isnt
and theres zero errors in the log so I KNOW ITS SOMETHING SIMPEL
but it wont FUCKING WORk
or even give me an error so ic an figure out wtf the problem is
what types of timed actions can you make besides recipes?
there a keyword or something that will always reference the player regardless sp/mp for the client? this.. self.. ??
I was trying to make a virus like a cold and with custom moodles but i don't know where to start. Can someone tell me where to start.
Thank you ๐
no fucking errors, texture size is 254x254
help me please
god
we4ghrbjni90omosdkm,
iu cant fuckign do this anymore its making me so upset
finally it gives me a fucking error
MeshAssetManager.loadCallback> Failed to load asset: AssetPath{ "rengokunichirin" }.
whta the hell does this mean
ModelScript.check> no such model "rengokunichirin" for Cosplay.rengokunichirin.
{
model rengokunichirin
{
mesh = Weapons/2handed/rengokunichirin,
texture = Weapons/2handed/rengokunichirin,
attachment world
{
offset = 0.0000 0.0000 0.0000,
rotate = 0.0000 0.0000 0.0000,
}
}
}
{
item rengokunichirin
{
MaxRange = 1.4,
WeaponSprite = rengokunichirin,
MinAngle = 0.65,
Type = Weapon,
MinimumSwingTime = 3.5,
KnockBackOnNoDeath = TRUE,
SwingAmountBeforeImpact = 0.02,
Categories = LongBlade,
ConditionLowerChanceOneIn = 25,
Weight = 1.3,
SplatNumber = 3,
PushBackMod = 0.7,
SubCategory = Swinging,
ConditionMax = 130,
MaxHitCount = 5,
DoorDamage = 10,
SwingAnim = Bat,
DisplayName = Rengoku Kyojurou's Nichirin Katana,
MinRange = 0.80,
SwingTime = 4,
KnockdownMod = 2,
SplatBloodOnNoDeath = FALSE,
Icon = rengokunichirin,
BreakSound = BreakMetalItem,
TreeDamage = 1,
CriticalChance = 45,
CritDmgMultiplier = 6,
MinDamage = 11,
MaxDamage = 12,
BaseSpeed = 1,
WeaponLength = 0.4,
DamageCategory = Slash,
DamageMakeHole = TRUE,
AttachmentType = BigBlade,
Tags = CutPlant;SharpKnife,
TwoHandWeapon = TRUE,
RunAnim = Run_Weapon2,
DoorHitSound = MacheteHit,
HitSound = MacheteHit,
HitFloorSound = MacheteHit,
BreakSound = MacheteBreak,
SwingSound = MacheteSwing,
}
recipe Kyojurou's Katana {
keep WeldingMask,
keep BlowTorch,
keep Sledgehammer/Sledgehammer2,
BlowTorch=10,
SheetMetal=10,
SmallSheetMetal=2,
WeldingRods=4,
LeatherStrips=1,
Stake=1,
Woodglue=1,
Result:rengokunichirin,
OnGiveXP:Recipe.OnGiveXP.MetalWelding25,
SkillRequired:MetalWelding=6,
Time:360.0,
Category: Sankese,
Sound:BlowTorch,
NeedToBeLearn:FALSE,
}
}
```
media\models_X\weapons\2handed\rengokunichirin.fbx
Is there a way to detect when a player performs shout but only when the player starts shouting?
I cant use detecting Q keypress since it doesnt work well in case of holding Q and it doesnt work when I use shout from radial menu
Ok, I noticed something more interesting. When I read the health of the door damaged by zombies with getHealth() on the server side, it shows wrong, but when I read it on the client side, it shows correct. I'm more confused lol.
Does anyone think it's possible to make trains work in this game?
i think it is possible
Looking for where the car takes damage when colliding with stuff
Mainly when running over a zombie on the ground
Its determined by the tile property
Its tile related not vehicle related which is weird but it makes sense
Guys does editing mods from workshop completely stop them from working? I added one line to one mod and i wasn't working so i deleted that line and it didn't start working again
I guess it has something to do with steam verifying files but idk
Why would you directly edit?
Is it cux you dont know the. Modding file structures? Or you know but just wanted to test?
But anyways check the threads on this channel look for mod resources if you want to start doing mods
Might as well do it the properway
It's my first time doing this so i don't know to.much about it
But that means that if I want do edit someone's mod to suit my playthrough i need to post it on the workshop and then subscribe?
search for -nosteam, it's an option that might suit you
thanks, also fuck
sorry my first (shit) question, does a recipe name NEED to be relevant to the ingredients when making "item"Recipes.txt script. Example taken from FWolfe git guide.
recipe Open Box of Nails ///*** Would it matter if this said recipe Random Shiitt///***
{
NailsBox,
Result:Nails=20,
Sound:PutItemInBag,
Time:5.0,
}
Hm.
No, the recipe name does not necessarily need to be directly relevant to the ingredients when creating a recipe in the Recipes.txt script. The recipe name is mainly used as a way to identify the recipe in-game and to display it in the crafting menu.
Hope that helps
is there no way to derive from or require the ISHealthPanel file so i don't have to copy a bunch of different sections and make it incompatible with other mods that use the health panel?
i cant even add a context menu option
p much what i got from other mods is that there is no way to avoid copying the entire section of BaseHandler
so i did that, but after adding the functions for inspecting a bite, it still doesnt appear as an option
Can I modify them with Lua?
https://discord.com/channels/136501320340209664/232196827577974784/ /1075068509811380334
Basehandler hook
Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.
I wonder if anonymous finished his vehicles events. If he had you could use those.
this is used to prevent myself from needing to copy the entire BaseHandler section? or to make copying it work?
This is how to grab it and then derive from it. Just an example.
ah, well i think i have that part then, cuz that's sorta how it was written in the vanilla code
i'll experiment with that tho
thanks
i'll have to go with a recipe and script for now. it seems way beyond me to add to the health panel
maybe in build 42 they'll add modding support for first aid
can i chain timed actions using functions that lead to functions?
like a recipe that will do a short timed action, followed by a long timed action if criteria is met
Yeah, I kick off an ISInventoryTransferAction at the end of search actions in my mod.
how would you do it? is there a statement that calls a timed action?
is there even a function for a timed action? or the function is always the result of a timed action?
when i was attempting to make a health panel context menu option, i gave up after too many hours, but i learned there was a function that gave out the definitions of a timed action for health actions. would it be similar to how i would make any other timed action?
Hello everyone do you know what is the code linked to the crouched zombie camouflage?
I would like to give this feature to a certain animation (crawl) so when it's triggered the character benefits from the same camouflage as if he was crouched
you could try queueing them up maybe? Maybe even make your own new timed action?
I would presume so. I simply derived my action from ISBaseTimedAction: https://github.com/TheCrimsonKing92/pz-item-searcher/blob/master/media/lua/client/TimedActions/SearchRoomContainerAction.lua, and while the creation is shaded by one of my utils (https://github.com/TheCrimsonKing92/pz-item-searcher/blob/master/media/lua/client/TimedActions/SearchRoomContainerAction.lua#L279) it basically just has to be added to the action queue (https://github.com/TheCrimsonKing92/pz-item-searcher/blob/master/media/lua/client/TimedActions/SearchRoomContainerAction.lua#L238).
I use this chaining with my own action as well, to make the character search not just one room container, but all of them: https://github.com/TheCrimsonKing92/pz-item-searcher/blob/master/media/lua/client/TimedActions/SearchRoomContainerAction.lua#L188
local function setSneakInvi(player)
player:setZombiesDontAttack(player:isSneaking())
player:setGhostMode(player:isSneaking())
end
Events.OnPlayerUpdate.Add(setSneakInvi)
Insane thanks
i'm really new to modding. How do I set how long it takes to eat an item?
{
DisplayCategory = Junk,
Count = 12,
HungerChange = -3,
StressChange = -3,
UnhappyChange = -3,
Weight = 0.001,
RequireInHandOrInventory = Matches/Lighter,
Type = Food,
DisplayName = Clove cigarettes,
Icon = cloves,
Tooltip = Get lung cancer in the edgiest way,
CustomContextMenu = Smoke,
CantBeFrozen = TRUE,
OnEat = OnSmoke_Blunt,
StaticModel = Blunt,
EatType = Cigarettes,
WorldStaticModel = Blunt_Ground,
CustomEatSound = ,
}```
this is what I have so far. I just want it to take longer than smoking a regular cigarette
Can someone PLEASE help, I can't get my mods to work.
I enable them, but they don't DO anything.
new or existing save
when you go to load the save, click "more" then click "mods"
But it just doesn't work, no matter what I do.
how many mods? did it just happen suddenly after installing a new mod?
No, no, I make my own mods, and they just don't work.
I can't get them to do anything.
Here are the steps to do it:
Navigate to the "media" folder in your Project Zomboid directory.
Locate the "items" folder and open it.
Find the .txt file for the item you want to adjust the eating time for. For example, if you want to adjust the eating time for a can of beans, you would look for the "cannedbeans" file.
Open the .txt file in a text editor.
Locate the "EatTime" parameter in the file. This should be expressed in seconds.
Change the value of the "EatTime" parameter to the desired value.
Save the changes to the .txt file.
After adjusting the "EatTime" parameter, the item will now take the specified amount of time to consume in-game.
I was writing that out.
oh wow thank you i really appreciate that
i just made my first mod yesterday so now i'm wanting to learn more
Nice!
its been fun
first mod ive ever made for a game
already got 40 subscribers too so i'm happy lol
It looks cool.
can anyone recommend me client sided quality of life mods
Good job!
@fading horizon
item CloveCigarettes
{
DisplayCategory = Junk,
Count = 12,
HungerChange = -3,
StressChange = -3,
UnhappyChange = -3,
Weight = 0.001,
RequireInHandOrInventory = Matches/Lighter,
Type = Food,
DisplayName = Clove cigarettes,
Icon = cloves,
Tooltip = Get lung cancer in the edgiest way,
CustomContextMenu = Smoke,
CantBeFrozen = TRUE,
OnEat = OnSmoke_Blunt,
StaticModel = Blunt,
EatType = Cigarettes,
WorldStaticModel = Blunt_Ground,
CustomEatSound = ,
EatTime = 2, // set the EatTime to 2 seconds
}
Guys how to get key
You can adjust the EatTime, it's been added to the bottom.
I think it's in seconds.
On Project PZ strong muscle guys help
No problem.
can i ask?
This is for modding.
now i have to learn 3d modeling 
Yeah, one moment
can i get key
A steamkey?
what are you asking for
I ASK FOR STRONGMUSCLE GAMES SCRIPT KEY
Alright/
can i have the key
But I don't know what strongmuscle is...
crediting you in the mod file for your help @warm prawn
its dumb but ive been searching the documentation for like an hour trying to find that
lol
I don't need the credit.
Thanks, though.
The most I'll let you do is add it to the changelog if you have one.
hasnt been uploaded to workshop yet
only the mod i made yesterday has
my eventual goal for what I want to make that I think would be a cool mod is a diabetes mod
managing insulin ratios dependent on the carb count in what you eat
idk how hard that will be, but I think it would be a cool mod
If you need help with it, ask me. I'd love to help.
will do. I have a ton to learn before I can get to that point so i appreciate the help
i'm used to making websites, not this type of coding lol
I tried to learn HTML, failed miserably.
unfortunately HTML is the easy part ๐ญ
imo at least
I just like using CSS to make things look pretty haha
There's a tool called ChatGPT that can help you with development on most coding languages.
Like if you need a basic design template, too.
god bless chatgpt
when will the mods start making themselves
chatgpt could get NPCs here in a day
lol
I'll stick with my AW laptop for work.
Oh I have a beefy laptop from work too.
It's also cool to see 3 installs for my first VSCode extension. =)
Will need to post it on the forums when I get a chance.
What is the max texture resolution that zomboid vehicle can use?
thats okay I just was visiting the worst first 2/3rd of that name VS....
Probably 4096.
I heard something about 512. I really hope, that 4k is reality
This game doesn't scale well with UI with large monitor resolutions..
It's preferred to use low resolution textures.
dont count on Ultrawide either.
Jab, would you be able to help?
I was commissioned a moodle mod to make it support 4K.
Thx
Any result that won't blow my computer is fine
Probably some AI for Lua but probably it.
I wouldn't see PZ being something AI could chomp.
I'd rather do manual code templates and push them through an extension.
Eh, good enough.
Most code in PZ is terrible.
Do you know much about modding?
I do but my time is increasingly limited.
My mods won't work.
I help with small questions here and post too much about my own work.
They're enabled, both mainly, and on individual saves.
Are these yours, as in you wrote them?
However, they don't seem to launch properly.
Yes
Does your code initialize through event functions?
Yes, I even tried to have a print("mod - Loaded") or something like that that initializes with Events.OnGameBoot.Add(); or something
But it doesn't work if I add code after that.
I just can't get it to work.
The print function works until I add code.
You need to take some time and study what your trying to do and which events to hook. Perhaps find similar mods that displays a GitHub repository for their code and see what they're doing to perform tasks similar to what you're trying.
Yes, but, it SHOULD be working, but it doesn't.
It sounds like logical / syntactic error.
Maybe..
We all have that mindset, even if we act like we don't. The machine will always win in a case of who doesn't work. ;-)
i tried everythinggg :((
I don't know why it's torturing meeee
But on a serious note, I don't know your level of expertise in programming in general so I can't honestly help you any further.
All I know is it doesn't work. ;P
I'm generally okay at Lua.
Study what people do with PZ.
Alright.
There's a guide I can pull up.
Sure.
Why we don't have bookmark command bots here I don't know...
This one should be !modguide
neither of these options have worked unfortunately
my media/items folder only has a single .xml file with very little in it, too
Alright, one moment
Even if you somehow end up using TypeScript to mod PZ (As there is an alternative that I wrote since I'm not a major Lua programmer), You'll need to understand what Lua is in PZ's environment, which is very different in a lot of scenarios.
do i need to make it a recipe instead so I can use the time parameter?
Good luck, though.
Is it a .txt file?
dumb question, but still
wdym
it works fine, models show up and everything
i'm just trying to change the action time
Alright.
basically it uses the default eat cigarettes action
i want it to do that but just make the action like 10 seconds longer
like how when you eat some big items, you eat them slower
{
DisplayCategory = Junk,
Count = 12,
HungerChange = -3,
StressChange = -3,
UnhappyChange = -3,
Weight = 0.001,
RequireInHandOrInventory = Matches/Lighter,
Type = Food,
DisplayName = Clove cigarettes,
Icon = cloves,
Tooltip = Get lung cancer in the edgiest way,
CustomContextMenu = Smoke,
CantBeFrozen = TRUE,
OnEat = OnSmoke_Blunt,
StaticModel = Blunt,
EatType = Cigarettes,
WorldStaticModel = Blunt_Ground,
CustomEatSound = ,
EatTime = 2
}
Maybe it was the // that caused problems.
testing now
There's also a possibility EatTime is no longer supported, but we'll find out soon enough.
Tell me if it works, by the way.
damn
that should make a difference
Only slightly!!
function ISEatFoodAction:new (character, item, percentage)
local o = {}
setmetatable(o, self)
self.__index = self
o.character = character;
o.item = item;
o.stopOnWalk = false;
o.stopOnRun = true;
o.percentage = percentage;
if not o.percentage then
o.percentage = 1;
end
o.maxTime = math.abs(item:getBaseHunger() * 150 * o.percentage) * 8;
if o.maxTime > math.abs(item:getHungerChange() * 150 * 8) then
o.maxTime = math.abs(item:getHungerChange() * 150 * 8);
end
local hungerConsumed = math.abs(item:getBaseHunger() * o.percentage * 100);
local eatingLoop = 1;
if hungerConsumed >= 30 then
eatingLoop = 2;
end
if hungerConsumed >= 80 then
eatingLoop = 3;
end
local timerForOne = 232;
if o.item:getCustomMenuOption() == getText("ContextMenu_Drink") then
hungerConsumed = math.abs(item:getThirstChange() * o.percentage * 100);
timerForOne = 171;
if hungerConsumed >= 3 then
eatingLoop = 2;
end
if hungerConsumed >= 6 then
eatingLoop = 3;
end
end
o.maxTime = timerForOne * eatingLoop;
-- Cigarettes don't reduce hunger
if hungerConsumed == 0 then o.maxTime = 460 end
if item:getEatType() == "popcan" then
o.maxTime = 160;
end```
My only beef with zomboid modding is that it takes forever to boot.
just found this while i'm waiting for it to load
can i do something with this maybe
Hm.
ISEatFoodAction.lua
Okay, now I know what I'm looking at.
Hm, alright.
I'll see what I can do with what you provided
I think I can do it.
@fading horizon TRY this.
function ISEatFoodAction:new (character, item, percentage, eatTime)
local o = {}
setmetatable(o, self)
self.__index = self
o.character = character;
o.item = item;
o.stopOnWalk = false;
o.stopOnRun = true;
o.percentage = percentage;
o.eatTime = eatTime or nil;
if not o.percentage then
o.percentage = 1;
end
o.maxTime = math.abs(item:getBaseHunger() * 150 * o.percentage) * 8;
if o.maxTime > math.abs(item:getHungerChange() * 150 * 8) then
o.maxTime = math.abs(item:getHungerChange() * 150 * 8);
end
local hungerConsumed = math.abs(item:getBaseHunger() * o.percentage * 100);
local eatingLoop = 1;
if hungerConsumed >= 30 then
eatingLoop = 2;
end
if hungerConsumed >= 80 then
eatingLoop = 3;
end
local timerForOne = 232;
if o.item:getCustomMenuOption() == getText("ContextMenu_Drink") then
hungerConsumed = math.abs(item:getThirstChange() * o.percentage * 100);
timerForOne = 171;
if hungerConsumed >= 3 then
eatingLoop = 2;
end
if hungerConsumed >= 6 then
eatingLoop = 3;
end
end
if o.eatTime ~= nil then
o.maxTime = o.eatTime;
else
o.maxTime = timerForOne * eatingLoop;
end
if hungerConsumed == 0 then o.maxTime = 460 end
if item:getEatType() == "popcan" then
o.maxTime = 160;
end
If that doesn't work, I don't know how to help.
On a scale of 1-10, how difficult is it to make an addon for True Music to add 2 songs as someone who has never made a mod before?
Shouldn't be ridiculous.
Alright
Iโll come back here in about 7 hours to get started when I get home
Okay.
I don't guarantee the code will work, I'm not that good at the project zomboid engine
Oh, yeah, uhm
My knowledge is from build 40
So, implement the code with caution.
Keep a backup of the script
hi
i was reading through some guides and found this and remembered your message
idk if you're still looking for resources but maybe this will help
For future reference: you can wrap code in three backticks for code block formatting on Discord. If you follow the first set of backticks with a supported language, it will also perform syntax highlighting. That is:
```lua
-- code
```
becomes
-- code
I'm aware, thanks.
wow I didn't know discord had syntax highlighting. I knew about code blocks
that's awesome
I just don't do it, because it looks so strange to me
It looks much better to pretty much everyone else, but to each their own I suppose
Have anyone faced error: steam failed to create workshop item, result=15?
So, quick question, does a grid square only need a roof to be considered inside???
Alright @abstract raptor @hot patrol I Finished my automation script for my Voiced Radios and TVs mod, and Im satisified with the results
The first woodcraft episode was done by hand, the following Exposure Survival and cookshow were completely done by my automated script with little to none intervention from my part (I Just told it where to add certain sound effects)
Right now I have 5647 characters left on my ElevenLabs account, so I guess I'll be able to make the transcript of 10 more Life and living episodes (Im skipping the adds)
I will also record a video showing how to use the automation script, And once it is done I'll Upload the mod + automated script, so that the community may help with this project.
(The automated script is capable of overwritting already edited lines so If you don't like certain voices or want to change them, you can)
https://steamcommunity.com/sharedfiles/filedetails/?id=2950163636
Hello,this is the first mod i made.which add a portable heater in the game. It can always keep your tempertaure always in 37 celslus and does not need any electricity.(ok,I'm just new to this game.It is a little diffcult for me to make some fantastic mod)๐คฃ
Congrats
Tho why not use a heater for the image instead of a thermometer ๐ก๏ธ
emmm,may be i didn't think that when i pick a image๐คฃ
I doubt
my first mod got up to 50 subs in a day i'm so hype rn
This should be posted
#mod_support
Since truemusic addons is for the userbase. Its not really nod development related stuff
Nice congrats
https://steamcommunity.com/sharedfiles/filedetails/?id=2949818236&searchtext=
The mod, if anyone is interested
also if there's a better way to swap textures than just straight up replacing them or there's a better way to just do this in general, please let me know
not sure if this one was answered
if getPlayer():isSpeaking() then
does anybody know if anybody has been working on or made progress on a fix/mod for the VOIP over walkie talkies being broken?
Hey guys!
I uploaded a mod but I cannot see the Mod name? Is it the same as the folder? Because if it is the server cannot find it.
I believe it is set somewhere in one of the files in the folder, let me check
so in the mod folder you should have 3 items
you can edit the name of the mod in the Workshop text file
What?
I don't have a workshop file?
How did you upload a mod?
Generally mods you upload will go into C:/Users/(You)/Zomboid/Workshop , even if you upload them through the game and you can now see what the name is there
Ohh I see it now
Could it be because I just uploaded it and the server could not find it? It takes a bit before mod is uploaded? @queen sail
there are a few things it could be that i know of did you add both the title and the mod id to the server? I'm guessing you're running the server through the in game client rather than editing the INI
I believe steam does have to like check it for malware before it will distribute the mod
I saw that message before and afterwards I removed it otherwise I could not start the server
which message and also what
it gives me a error
MeshAssetManager.loadCallback> Failed to load asset: AssetPath{ "rengokunichirin" }.
whta the hell does this mean
ModelScript.check> no such model "rengokunichirin" for Cosplay.rengokunichirin.
module Cosplay
{
model rengokunichirin
{
mesh = Weapons/2handed/rengokunichirin,
texture = Weapons/2handed/rengokunichirin,
attachment world
{
offset = 0.0000 0.0000 0.0000,
rotate = 0.0000 0.0000 0.0000,
}
}
}
module Cosplay
{
item rengokunichirin
{
MaxRange = 1.4,
WeaponSprite = rengokunichirin,
MinAngle = 0.65,
Type = Weapon,
MinimumSwingTime = 3.5,
KnockBackOnNoDeath = TRUE,
SwingAmountBeforeImpact = 0.02,
Categories = LongBlade,
ConditionLowerChanceOneIn = 25,
Weight = 1.3,
SplatNumber = 3,
PushBackMod = 0.7,
SubCategory = Swinging,
ConditionMax = 130,
MaxHitCount = 5,
DoorDamage = 10,
SwingAnim = Bat,
DisplayName = Rengoku Kyojurou's Nichirin Katana,
MinRange = 0.80,
SwingTime = 4,
KnockdownMod = 2,
SplatBloodOnNoDeath = FALSE,
Icon = rengokunichirin,
BreakSound = BreakMetalItem,
TreeDamage = 1,
CriticalChance = 45,
CritDmgMultiplier = 6,
MinDamage = 11,
MaxDamage = 12,
BaseSpeed = 1,
WeaponLength = 0.4,
DamageCategory = Slash,
DamageMakeHole = TRUE,
AttachmentType = BigBlade,
Tags = CutPlant;SharpKnife,
TwoHandWeapon = TRUE,
RunAnim = Run_Weapon2,
DoorHitSound = MacheteHit,
HitSound = MacheteHit,
HitFloorSound = MacheteHit,
BreakSound = MacheteBreak,
SwingSound = MacheteSwing,
}
recipe Kyojurou's Katana {
keep WeldingMask,
keep BlowTorch,
keep Sledgehammer/Sledgehammer2,
BlowTorch=10,
SheetMetal=10,
SmallSheetMetal=2,
WeldingRods=4,
LeatherStrips=1,
Stake=1,
Woodglue=1,
Result:rengokunichirin,
OnGiveXP:Recipe.OnGiveXP.MetalWelding25,
SkillRequired:MetalWelding=6,
Time:360.0,
Category: Sankese,
Sound:BlowTorch,
NeedToBeLearn:FALSE,
}
}
media\models_X\weapons\2handed\rengokunichirin.fbx
is this something you're writing or an error your server console gave you
if its just in the server console and its not preventing you from playing or otherwise visibly causing issues i'd ignore it lmao i get those messages from map mods and it hasn't caused me issue yet
Note: Uploading files actually keeps posting walls of text clean and optional to expand.
Can't I made a mod hidden without server be able to find it ?
Friends-only workshop item IIRC.
The mod I uploaded .. can I just upload it to my server and put it there?
I tried it with solo mode on PZ and it worked
But I cannot get it to work on my server
Simple answer: No.
Complex answer: You can but it requires some technical work.
So how do people do with custom made mods?
Well how I've made server-exclusive mods is through creating a server-side provider for Lua code that is executed on the client to complete the mod from a workshop.
Also, it's funny how I posted my template here and two people were eager to test yet never got back to me 2 months later.
So yeah, you can definitely set a mod to be server-exclusive, but it requires some boilerplate framework to do.
I think that's what you're after?
Well yeah
But was hoping it could be easier
So for a mod to work from steamworkshop, it needs to be visable? = public
Well I wrote one so it can be easily done.
It's funny that people who were interested in doing the same thing then never got back to me.
@brave ruin Check out these two repositories.
So this is what you put on the server host?
This is my implementation.
I haven't heard of anyone else in the past ten years do it. I think I'm the only one who did.
So if someone grabs the workshop item for a mod implementing this approach for loading, it wouldn't work in single-player and any other server that does not have the loader in place.
im a little new to this
am i understanding correctly that basically what that does is like
workshop mod is visible but only part of the actual mod, the rest of the mod is delivered to the user when they join the server via your custom lua provider?
that's cool as hell
honestly really smart workaround
I used to do a lot of commissions and run a server that had people stealing our works.
Also, there's some security to my implementation. It's all run anonymously so there's no file overriding.
running a server seems fun. I've only ever played single player because i like having full control over the mods
2 layers of loading and executing code.
Boot loading basically.
Anyone can fork this and modify it to have custom security.
what counts as "stealing" in terms of content creation here? I only made my first mod yesterday.
Right now i'm working on a mod that adds different kinds of cigarettes. I'm using the greenfire mod's blunt item as a template for how to make new cigarette items. I'm changing the icons / 3d models / names and all that of everything, but does that count as stealing?
Imagine paying someone (as a service), to make custom content for your server. Some other server uses it for free.
any help? I'm trying upload map that I made to workshop
This is up to the original mod's author and what they say you can and can't do with their works.
So if I'm a server and I paid for custom content and mods and say not to use my works on other servers, how am I going to stop that from happening?
your implementation definitely seems like the logical way to go about it
i just don't wanna step on any toes or anything. I've seen some drama on the workshop before
My solution simply serves part of the code for the mod that otherwise doesn't exist on the workshop item so even if someone tried to use it, it wouldn't work.
What's funny is that I rewrote this solution for a server admin who asked for it as comm work and then vanished.
Then I had a couple people here who wanted to try / use it and then did nothing with it.
People always bitch about workshop drama.
Yet they can't even run code that works out of the box.
if I had more knowledge on the subject / ran a server, I'd test it out for you
This is why I don't care about the drama.
but idk any of that stuff
They love it.
They love to bitch and moan and even when they have a solution they choose to keep bitching and moaning.
i'm just sad bc apparently there was a bicycle mod that got removed before I came back to the game over some dumb stuff
That's somewhat why I work on tools now.
it didn't help me much because I don't use any sound files and names of my files were generated by worlded but thanks
ive been reading lua documentation all morning ; my eyes hurt
Giving me the uguUEHDASH .. Why does the mod work on a solo start up but not when adding the mod name and ID to a server -.-' angry noises
Anyways, I should probably write a guide for it.
Anyone happen to know if the game tracks when a players last death was?
So, like they died at x date and started a new character?
Trying to prevent people from rerolling characters too quickly.
i think you'd need to record it yourself
yea, I was afraid of that
probably not worth the trouble and we'll just have to police it via admin
the error is MeshAssetManager.loadCallback> Failed to load asset: AssetPath{ "rengokunichirin" }.
whta the hell does this mean
ModelScript.check> no such model "rengokunichirin" for Cosplay.rengokunichirin.
the code is
{
model rengokunichirin
{
mesh = Weapons/2handed/rengokunichirin,
texture = Weapons/2handed/rengokunichirin,
attachment world
{
offset = 0.0000 0.0000 0.0000,
rotate = 0.0000 0.0000 0.0000,
}
}
}
module Cosplay
{
item rengokunichirin
{
MaxRange = 1.4,
WeaponSprite = rengokunichirin,
MinAngle = 0.65,
Type = Weapon,
MinimumSwingTime = 3.5,
KnockBackOnNoDeath = TRUE,
SwingAmountBeforeImpact = 0.02,
Categories = LongBlade,
ConditionLowerChanceOneIn = 25,
Weight = 1.3,
SplatNumber = 3,
PushBackMod = 0.7,
SubCategory = Swinging,
ConditionMax = 130,
MaxHitCount = 5,
DoorDamage = 10,
SwingAnim = Bat,
DisplayName = Rengoku Kyojurou's Nichirin Katana,
MinRange = 0.80,
SwingTime = 4,
KnockdownMod = 2,
SplatBloodOnNoDeath = FALSE,
Icon = rengokunichirin,
BreakSound = BreakMetalItem,
TreeDamage = 1,
CriticalChance = 45,
CritDmgMultiplier = 6,
MinDamage = 11,
MaxDamage = 12,
BaseSpeed = 1,
WeaponLength = 0.4,
DamageCategory = Slash,
DamageMakeHole = TRUE,
AttachmentType = BigBlade,
Tags = CutPlant;SharpKnife,
TwoHandWeapon = TRUE,
RunAnim = Run_Weapon2,
DoorHitSound = MacheteHit,
HitSound = MacheteHit,
HitFloorSound = MacheteHit,
BreakSound = MacheteBreak,
SwingSound = MacheteSwing,
}
recipe Kyojurou's Katana {
keep WeldingMask,
keep BlowTorch,
keep Sledgehammer/Sledgehammer2,
BlowTorch=10,
SheetMetal=10,
SmallSheetMetal=2,
WeldingRods=4,
LeatherStrips=1,
Stake=1,
Woodglue=1,
Result:rengokunichirin,
OnGiveXP:Recipe.OnGiveXP.MetalWelding25,
SkillRequired:MetalWelding=6,
Time:360.0,
Category: Sankese,
Sound:BlowTorch,
NeedToBeLearn:FALSE,
}
}
So happy we got featured https://www.youtube.com/v/H9Ktwrt8eEE
@tacit plover @glass basalt
Woot more successful mods to come
If I make a custom item, do they automatic spawn into the games and zombies?
On a multiplayer server
@thick karma or someone that knows about controller support on context menu
how do i confirm option on context using controller?
If you add options to a context menu they are automatically controller compatible
The function for the menu entry gets fired when a player presses Cross / A while that entry is selected.
true, i bought a controller logitech f310, to improve my controller support,
i think the same, automatically controller compatible, but when i go try it, it doesnt works x.x
dont catch when i press confirm button on controller
it works when i try sit on ground, and other options (on main menu), and teleport on submenu works too,
but @thick karma when im on my created submenu, my options doesnt works
i discover that maybe is because the ISBuildMenu.cursor
how controllers use build cursor?
thanks! i solved
there was a line that was not allowing controllers o0
if Firetrail.playerObj:getJoypadBind() ~= -1 then return end
are you making a cursor?
Burryaga told the are bad by default. I still tried though.
:3 :)))
did you manage to make it? someday i will need it
when im going to try do a mini RTS using zomboid hahaha
Mine is on ISA GitHub if you need it.
can you send/dm me the link? i will check it some day (oooh i dont get the sigla, is not indiestone?)
i imagine that is possible to do rts using superb survivors or the vanilla npc update, it will be funny to play age of empires like, in zomboid xDD
Put campfire: blocks square
Light campfire,
Put out campfire
place object on campfire!
now to do the commands to replicate this wonder
uuuh i find out now that you are the dev from ISA, wow! well done! @livid gale
i want to do a wind energy, inspired on William Kamkwamba
Netflix's 'The Boy Who Harnessed the Wind' is a True Story
i saw some people working in windturbine too, on 3d
Sorry was watching stuff with someone but the build cursor has controller support ordinarily using d-pad.
can anyone help me
MeshAssetManager.loadCallback> Failed to load asset: AssetPath{ "rengokunichirin" }.
whta the hell does this mean
ModelScript.check> no such model "rengokunichirin" for Cosplay.rengokunichirin.
https://steamcommunity.com/sharedfiles/filedetails/?id=2762648316 can this mod be fixed for MP? 
The "stream generator" can be crafted and goes into the inventory, but when placing it, the character gets stuck in the animation and places a regular gas generator.
Im so angry. I would have finished my mod today, but I lost internet access to my house for the last 5 hours
My pc doesnt have a wifi port so I cant use 3G/4G + hotspot with my phone to continue
And to develop my mod I need internet access to Eleven Apps, so im stuck
is crusin' in his 64, for a six four is what'de got.
Does anyone have a list of shaders to use for vehicles, If not does anyone know which ones provide transparency? I've been searching for a good few minutes and don't have any ideas, and I'd want to leave making my own shader as a last resort
none of the vehicle shaders support transparency
Welp, Darn. Guess I'll have to figure out out to make a transparent shader
does anyone have the permanent invite link to this discord server? I want to embed it in my mod descriptions
ah I found it. here it is below
https://discord.com/invite/theindiestone
would anybody like to give me a quote for a mod commission? i think its pretty small but idk
try pinging Glytch3r ;)
hi whatsup
btw, Pano, i managed to find the files i was looking for the last time i asked you 
ah, did I answer your question from back then? I don't remember, my head is a mess lol
Made a simple mod to solve a problem that probably bothers very few others: https://steamcommunity.com/sharedfiles/filedetails/?id=2950437306
we totally need to unite a bunch of qol modders to make one massive qol mod
would it be theoretically possible to impliment a CCTV camera mod?
we should allow players to select the things they desire, which can be accomplished with a collection of mods 
does anybody have experience with adding community versioning to your mods?
I want to allow the community to be able to run a couple of py scripts to help develop the mod faster
Here is a video of me showing how the automation script works. I had an issue with a 429 TooMantyRequests error from the API but I kinda patched (Just put a sleep(2) after a try catch : P)
In the end it shows the final result of running the script, and how it looks like on PZ
@rancid panther I agree with Riko here. What we could do instead is a curated list of changes that all cumulate into a complete qol experience
and people can then pick and change based on their preferences and priorities
although I guess this is kinda already a thing with mod collections lol
im wondering if for my immunity mod i should get rid of the waiting period altogether and just make players have to do a really long timed action so they have to check on their bite while they have downtime
other idea was a self inspection would produce an item that they do a test with
for scalability, better to have it tied to the time in-game than with timed actions. Some timed actions do scale with the length of day, but others don't.
unless you want it to be the same amount of time regardless of how fast the day is ๐คทโโ๏ธ
by timed action i just meant the recipe
recipes are special timed actions technically
but also, is there a way to let a recipe time scale with a skill level?
you mean having different recipes per skill level? probably
oh just have a dif skill level requirement per level?
actually, making it a timed action to scale it with skill level would be easier to implement
i was hoping so
because Lua vs Java Zedscript crap
just a simple check of what a character's certain level is to do different functionality
but the recipe time is in the script, not the function
you can change it to be a context menu action to activate the timed action (as an alternative to doing a recipe)
when i was trying to make it work through the health panel i saw how to make a timed action scale with skill level that way, but i gave up cuz of how uncooperative the health panel is
i dont think health panel uses recipes
I'd continue trying to make it work with the health panel. it can be done with a generous amount of patience
it's the best fit for the mod tbh
no rush to update the mod too
it would be but i realized you have to copy the entire base handler and then some other stuff
and it was just stressing me out
i was trying for like 12 hours yesterday
like until 5 am. not healthy
you need to copy the entirety? doesn't seem right, especially if its lua
yea i even read another conversation between Burryaga and sioyth when they were working on the Replace Bandage mod
they copied the entire BaseHandler
and the really popular health mod Immersive Medicine copies the entire BaseHandler section of the health panel as well
those are the only 2 mods that i have seen that directly add new context menu options to the health panel
if they all copy the entire base handler, how are the medicine mods compatible with each other? one mod would have to overwrite the other's
The Only Cure adds a button which leads to its own UI
and, Replace Bandages is not compatible with The Only Cure
hmm alright
i dont think my mod could be compatible with other health panel mods unless someone made a framework that all health mods united under
since BaseHandler is local in the ISHealthPanel file
so im just gonna give up on that until they either change the health panel or someone makes a framework for all health mods to use
do you think it makes sense to have to wait a couple hours before confirming if a bite is infected or not?
to me it makes sense in a way, but it makes me unsure of what to do if someone is infected from a laceration
i finally got my mod in a working alpha state

what a pain in the ass it has been
like if they get bitten they know for a fact that they should be infected
but if they get a laceration, then if they have symptoms they would probably know for a fact that they are really infected, unlike getting a fake infection if you are bitten and immune
should i keep it that way? does it make sense in your perspective
Personally I like the anxiety of having to wait a little
yeah it will piss you off a little bit like playing mario kart and getting blue shelled before the finish line, but that's part of the game imo
and how do you feel about relatively quickly knowing from a laceration?
i would say knowing within 12 hours would be a good time estimate
but i also only play SP so idk how that will mesh with MP
like if ur bitten and ur feeling symptoms, then u could have a fake infection, and you wait for 8 hours until you can test it
yeah I don't think you should be able to tell immediately
but if u get laceration and start feeling symptoms, you know it is real, since it wasnt from a bite, if that makes sense
gotta let it fester
does the middle icon look too squished / bad?
i think it looks kinda too wide
idk
i'm not great at this
it looks nice, but it could probably not touch the borders
that's really good advice, thank you
np
i'd center the icon yeah
i still keep it 32 x 32, just add margins, correct?
oh good grief, probably something that should be done, huh
i wouldn't say margins, simply use a utility in a photo editor to center the defined pixels
i can do it with yours and show what I did as an example
heey people, if server spawn a vehicle, how do i send or get the vehicle object on client?
local vehicle = addVehicleDebug(args.model, args.spawn_direction, nil, sq)
sendServerCommand(player,"RTR", "ReceiveSpawnedBus_fromServer", data)
im just thinking how i could balance the laceration and scratch infections
should i just give immune players a chance of getting a fake infection from zombie damage? i feel like if ur immune you wouldnt even feel anxious over a scratch, even if you dont know you are immune
since you could just think you got lucky again
open one of my vehicle mods, it has everything ready for you to handle vehicle spawning
many ppl get lucky too many times from lacerations
tbh i'd keep the fake infection to bites
i was thinking that too. so should i just let players who get infected from lacerations and scratches immediately know based on their symptoms?
heres the image file
if you want to
vehicle:getId() and then getVehicleById() (thanks albion :))) )
do you use other approach/ways?
I've got it open in photoshop rn
should i let the self test even produce results if you aren't bitten?
i don't remember how to center it in photoshop, but i'll use piskelapp.com
when I spawn the vehicle, i get the ID to make sure the server knows which vehicle I am referring to
function ISInspectBite(items, result, player)
local testData = player:getModData()
local playerBody = player:getBodyDamage()
local testtime = SandboxVars.TomaroSOAT.TestTime
if testData.testStatus == "ready" and testData.immune == true then
print("You are immune.")
player:Say(getText("IGUI_Say_ResultImmune"))
playerBody:setIsFakeInfected(false)
if not player:HasTrait("Immune") then
player:getTraits():add("Immune")
end
testData.testStatus = "tested"
elseif testData.testStatus == "ready" and testData.immune == false and playerBody:isInfected() then
print ("You are infected.")
player:Say(getText("IGUI_Say_ResultInfected"))
playerBody:setIsFakeInfected(false)
testData.testStatus = "tested"
elseif testData.testStatus == "untested" and playerBody:isInfected() then
print ("You are infected.")
player:Say(getText("IGUI_Say_ResultInfected"))
playerBody:setIsFakeInfected(false)
testData.testStatus = "tested"
else
print("Criteria not met.")
if testData.testStatus == "testing" then
print("Hours Since Bite: " .. (testData.testStage))
player:Say((testData.testStage) .. (getText("IGUI_Say_HoursSince1")))
player:Say((getText("IGUI_Say_HoursSince2")) .. (testtime - (testData.testStage)) .. (getText("IGUI_Say_HoursSince3")))
end
end
end
ah, if the new one is 32x32 then you should be good
although a bit blurry, the size is better
should be fine, icons are blurry as shit anyways
isnt there a way to change the type of anti-aliasing on resizing?
i might just try to find a new reference photo altogether
in GIMP you can choose to resize it directly, without filtering or scaling
interesting, i can spawn on client and server update for all others?
no, the vehicle must spawn on server
the bitten trait is just antibiotics shrunken down
aah ok
but use the client to tell the vehicle where to spawn
relative to the player
okay i think i'll keep it this way then, with the recipe.
it'll be my last update for the immunity mod until i figure out the health panel
pain.
but i also figured out the translation for IGUI
the string names are "IGUI_"
but the file name is "IG_UI_" ๐
that's why it didnt work before
hmmm, the file name and string names can still work while different
lemme pull up a translation file that I confirmed works
it works now
the first time i tried a few weeks ago it didnt work cuz the file was named "IGUI_EN"
all that stuff is super hard coded, so slight mistakes like that break it
so i thought the names were the problem but it was the file itself
e-cigs?
i feel like left has a better contrast between box and cig
a mini organ
they're clove cigarettes
i thought it was an electronic device ๐
yeah def the newer, slim icon
the left looks nicer
yes, one mod leads to more mods
don't even get me started
i wonder how many ppl get annoyed when i completely change how my mod works
the game runs fine with 700 ๐
likely server owners but otherwise eh
700?
impressive
how many fps do you get when driving in a vehicle while zoomed out
๐
i don't play with 700, but i've seen people with that many
my current modlist stutters a bit when im fully zoomed out (default values) driving 60mph in a vehicle through new cells
but playable
i use 100
how does one control where like table:save or getfilewriter... saves.
random side question but does anyone else have issues with sapphs cooking / arsenal ( i think ) & MREs?
When I open the MRE and choose "heat MRE" or whatever the relevant option is, the MRE disappears and I get nothing.
I haven't had time to delve into debugging it yet because it doesn't bother me really
figured it was worth an ask tho
it's a patch to punish MRE enjoyers ๐คฃ

goodbye scuffed checking system, now it is a recipe just like every other health mod that ended up using scripts because the health panel is nigh unmoddable
i am now a victim of the same fate
Im tracking something down like that. seems options for this mod get saved as a lone file in the main folder but then you have all your different save folders for game table lua files written in there but I see nothing saying oh this goes here this goes there only the filenames..
you don't have very much control
and also like to fix this because having one lone options setting for the mod not per save sucks.
you can use subdirectories etc and you can use modfilewriter or sandboxfilewriter to get some different directories but overall you don't control it
I just wanna jump into the save folder Im already using for the options file
getfilewriter saves to Zomboid/Lua
well this seems to be saving to the mod top folder. and like I said the tables then going into a folder named after the savegame to store all the NPC data (in the mod folder)
i would highlight one cigarette poking out of the box
not really enough room
unless i tilted the whole image like the default cigs
i guess
looks good imo
you could try recoloring the vanilla cigarette box to match the cloves ones
there's a modfilewriter but it's used less often
idk why i didn't think of this
but that's probably the move
happens to me all the time lol
thank you v much
still not seeing how the tables know to get put in teh savegame folder lol. wonder if I can do the options as a table to bypass this problem.
Smoker has good icons too. I think they are different though
i haven't seen pixelated cigarettes in a long while
lol what
it might be in a PACK file
check pzwiki.net, they have extracted PNGs
thats how I do it
table.save(tabletoSave,"SurvivorGroup"..tostring(self.ID).."metaData") 
another genius tip
u tha best
here you go, ickysticks.png
https://pzwiki.net/w/images/7/71/IckySticks.png
yap i just got it
mod hacks ๐
there's a table.save??
if it isn't broken and it works, don't fix it or reinvent the wheel
thats what they using...
table.save looks Java, but why tf
generally if you want a save-specific persistent table, you use global moddata
like I said they saving data... but I cant figure out how they getting the folder...
how do you call this, actually?
usually local modData = ModData.getOrCreate("string key")
gotcha, so its ModData
function table.save( tbl,fileName )
local destFile = getWorld():getWorld()..getFileSeparator()..fileName..".lua"
--print("table.saving:".. destFile)
local writeFile = getModFileWriter("SuperSurvivors", destFile, true, false)
for i = 1,#tbl do
writeFile:write(tbl[i].."\r\n");
--print(tbl[i])
end
writeFile:close();
end
it's part of superb survivors
adding to the standard lib like this seems really irresponsible
superb survivors has been worked on by at least four different mod devs, the consistency seems likely to be terrible
exactly why Im enjoying dicing thru it
code archaeology becoming a relevant field? lmao
at some point you have to know when to refactor
oh Im not scared of that cept for like ummm option names saved and renaming them..
here prob the most actual changes other then just fixing typos and nonsense..
if(IsoPlayer.getCoopPVP() == true) then
getSpecificPlayer(0):Say(getContextMenuText("PVPDisabled"));
IsoPlayer.setCoopPVP(false);
getSpecificPlayer(0):getModData().PVP = false;
PVPDefault = false;
PVPButton:setImage(PVPTextureOff)
elseif(IsoPlayer.getCoopPVP() == false) then
IsoPlayer.setCoopPVP(true);
if(ForcePVPOn ~= true) then
getSpecificPlayer(0):getModData().PVP = true;
PVPDefault = true;
getSpecificPlayer(0):Say(getContextMenuText("PVPEnabled"));
else
getSpecificPlayer(0):Say(getContextMenuText("PVPForced"));
end
ForcePVPOn = false;
PVPButton:setImage(PVPTextureOn)
end
end```
now its...
local player = getSpecificPlayer(0);
if (ForcePVPOn) then
-- PVP is forced. 2 logics 1 check. Regardless of current PVP mode, turn it on.
IsoPlayer.setCoopPVP(true);
player:getModData().PVP = true;
ForcePVPOn = false;
PVPButton:setImage(PVPTextureOn)
player:Say(getContextMenuText("PVPForced"));
elseif (IsoPlayer.getCoopPVP()) then
IsoPlayer.setCoopPVP(false);
player:getModData().PVP = false;
PVPButton:setImage(PVPTextureOff)
player:Say(getContextMenuText("PVPDisabled"));
else
IsoPlayer.setCoopPVP(true);
player:getModData().PVP = true;
PVPButton:setImage(PVPTextureOn)
player:Say(getContextMenuText("PVPEnabled"));
end
end```
btw do I need dem dang semicolons?
nope
unless you're using them to have two lines on one line they do literally nothing
now just tracking down why the default pvp option not working
Im just throwing my changes up on a git page incase anyone feels like playing with it or the authors actually do something
be funny if I put like actual real fixes and get it somewhat working good it be called SSS...
okay last time ill ask then ill shut up about it lol
which of these looks best?
if the bottom one was not as anti-aliased, it'd be good
bottom one is a recolor of the OG
what does the vanilla cigarette box look like in comparison
brush size can't go smaller than 1px so its hard to color it
let me give you a free tool to use
that's vanilla
and no, i don't really know anything about graphics
i'm new to all this
this gives you full control over pixel art
https://www.piskelapp.com/
Piskel, free online sprite editor. A simple web-based tool for Spriting and Pixel art. Create pixel art, game sprites and animated GIFs. Free and open-source.
try recoloring in here
okay yeah this is a hell of a lot easier
I'm glad
you're welcome
at least I can give some knowledge, as opposed to how much I don't understand about this damn game lmfao
Is there a recipe command that let's you craft while walking?
StopOnWalk:false,
Thank you!
gosh this was so much easier with that tool
that's about as good as its gonna get i think
is this a legit bug? I see modulo defined/detected in Kahlua2 with a case for % but when i use it in a lua script i get an error of __mod not defined for operands
in java it would be something like Math.floorMod(v1, v2)
If I would create a mod with an axe with a special name and special things added to it. Once I got the mod added to a MP server, does the item appear around the world then and even on zombies? Or do I need to add that item name somewjere else?
need to edit the distribution files
can you show your usage? modulo does work
local gt = getGameTime() % 18720;
I am very new to this, so what am I looking at?
getGameTime() returns a GameTime object, not a number
oOOooo k
declaration: package: zombie, class: GameTime
when you want to spawn an item into leveled lists, you need a distribution file in media / lua / server / items / yourmod-distribution.lua
go check another similar mods files for their distribution lists to see how they've set theirs up
Alright, I'll note it down and do that. I want to make custom items and few stuff for my own server ๐ But I am very new to server hosting and zomboid owning etc. So hard to understand what I need and whats need to be done ๐
i understand the feeling. I only made my first mod yesterday lol
its slowly getting easier to understand
I tried to make my own mod but getting an error ever day ( only used on solo for testing ) ๐
mines just a simple texture replacement
i'm making a mod that adds new cigarettes rn tho
But I think making an item with custom attributes should be a bit easier ๐ Just need to figure out how to solve the adding item to the world, custom % loot rate and what zombies to put it on ๐
This tutorial video will show you how to make a simple drink in Project Zomboid. I will go into the steps involved from start to finish. Read more below.
0:00 intro
1:08 Start
1:44 Searching for images to use in game
2:30 Searching for the Sound Effect
3:06 Creating mod file directory
3:54 Creating mod.info
4:34 Creating a poster
7:14 Adding ne...
this is somewhat outdated but its what i used as a reference
Thanks, I check that out ๐
but really if you're not doing any 3d models its pretty easy
basically you have a texture for the item
you create a text file in scripts to define the items attributes
then you distribute it with a lua file
and that's it
If I list the things is.
- Custom name
- Custom attributes like ( a bit stronger or etc )
- Custom spawn rate like it's should be more rare
- Custom zombies so it only maybe spawns on military zombies and etc
yeah that's all easily doable
As for an start at least and maybe to be able to craft it later on with a special magazine ๐
Maybe easier for you but not for me ๐ hahah
like i said, i only started yesterday
idk how to exactly do all that but I know how I would start attacking the problem at least
I spent a lot of today just reading .lua documentation though
1 & 2 are in the definitions file
3 & 4 the distribution file
As you said you are also new with this, but would you mind if I could DM you later if there is something I have problem with or seek help? It's okay if you say No ๐
sure I don't mind at all
Thank you ๐
https://steamcommunity.com/sharedfiles/filedetails/?id=2941971399
this is my complete immunity mod. i think i can consider it complete now until health panel modding support is added
i'll probably work on adding more new features in my private mod that i will upload as standalone mods until it is done
also thinking of making a mod that makes players have a chance to fall if they get jumpscared
Hello everyone.
I have a simple repair script for 2 weapons but can't seem to get the repair option in game. I've tripple checked the weapon names and cna't work out why this isn't working. Could anyone help a noob please? ๐
{
fixing Repair Wooden Baton
{
Require : Woodbaton,
Fixer : Woodglue=2; Woodwork=2,
Fixer : DuctTape=2,
Fixer : Glue=2,
Fixer : Scotchtape=4,
}
fixing Repair Plated Baton
{
Require : Platedbaton,
Fixer : Woodglue=2; Woodwork=2,
Fixer : DuctTape=2,
Fixer : Glue=2,
Fixer : Scotchtape=4,
}
}```
where is the file?
tru, that was the reason my script didnt work originally
in your own mod?
yes
I have the weapons etc. working
but this just won't have it ๐
are there any attributes on the weapon that MUST be set to allow a repair?
I didn't notice anything from nosing around core game files
I've even checked the file itself in notepad to make sure all the formatting is correct coming out of VS code
Oh dear...
hang on
testing something.
SOrry @rancid panther ... ๐ณ Ty @bronze yoke - Super embarrassing moment. All Fixed ๐
Blank file extension not txt....
๐
๐คซ ๐
i should update the image for my immunity mod, since the system is probably more interesting than the trait
maybe if you manage to turn it a svg, resize (big) color it, resize (small), convert from svg to original filetype, you can deal better with coloring (suggestion)
piskel recommended by panopticon solved
@sour island could you make the contextmenu toggle-able
On the community api
Like when u right click it should show
Objects on the tiles right ?
maybe that feature is better if we can turn it off when we are doing our own context menu stuff it gets crowded fast
Or maybe put everything on a submenu instead
Tbh I haven't tested it but i know it has modified aud so yeah
Also you asked me for stuff we can add
Ill send you the code ๐
Thnx
uuuh i find out that exists a community api now, nice! developed by chuck, aiteron, poltergeistzx, konijima, quarantin, nice to see glytch3r soon there too
thx for listing it Glytch3r!
#1070858800501891172 message
Features i will send
-vehicle nudge/flip
-auto fully reload primary equipped firearm
-turn on and off world zed spawning
-add lamp post
-global power and water toggle
-save coordinates to clipboard
-despawn trees and grass
-remove all inventory and equipped stuff
-fully levelup all perks
-get all positive traits (could be improved due to mutual traits thing)
-remove all traits
-toggle non-pvp zone visibility
-spawn random vehicle
-suicide
-Etc
I am new to all this and why do some people have 2 Mod ID? Do you need to add both of them or how does it work?
it's cuz there r 2 mod folders
i put them both in one workshop upload so they can be selected separately
Ohh okay ๐
maybe we gotta have another framework for context menu so that all the mod contexts can be united in the same tab
some modders and users dont like frameworks tho which is understandable
but unifying things can be a lot better for UX in some cases
Community api is moddong tool not intended to be used as framework
No worries
the true user experience is if the game itself made things easier to modify or debug
oh yeah, other mod idea i had: flickering lights
i wanna make it for my shadow sprinters preset
need to add ambient light humming sounds with flickers, and make lights flicker or go out occasionally
Check debug tools on my server . I posted something like that
o rly? nice
This exact thing youre saying is what i initially suggested nippytime to add to his mod
Imagine dark alley then the vanilla open signage

Flickering the code i have is different from this tho but you can take the ticker from that
And replace the set with sprite codes
@rancid panther
yea i just searched flicker in ur mod and saw that

i probably would want to have all light sources around the player be flickering in my case
at least street lamps and ceiling lights
i can probably also use the vanilla humming sound and power outage noise too
That might be heavy tho but when you get working you cn post the code here in hopes of other would help you refactor it to optimize it i guess
ofc. i cant do any of that by myself
i might settle with ceiling lights and street lamps since those make more sense flickering
and better for the overall vibe
a hallway with flickering lights, but the vending machine is still on
Nippy should know how to get the light
Which i think isnt an obj ? Cuz vishnya had a problem deleting them before
also gotta look at the base brightness of lights
cuz for always night runs, indoor lights r too bright
i think brightness indoors works different from outdoors
I suggest make this local only and effects work only for a certain negative trait
Idk im suggesting you keep on doing negative traits
As it adds game balance
Imho
i could make it a trait but it is specifically for the shadow sprinters collection
gotta have the perfect horror experience
Also hard to code but you can do it for sure
i originally had the power off at the start, but having it on has a better atmosphere
i think i need a break from modding, so i'll take a research break and focus on school
50 hours in the game these last two weeks and i know none of it was spent playing for real
in mp
if client permanentRemove a vehicle, it got updated to everybody from server?
or similar to spawn, the remove also need to be handled by server?
asking this because server was not able to get vehicle id, if got deleted by client
You'd have to confirm with the java side of things
Generally stuff named "remove" or that would cause issues if not syncd -- is probably syncd internally and send out updates to server and other clients
And yes im trying to get a community API rolling
It's technically already launched -- so far there's just debugging tools
It auto uploads to the workshop every Friday, unless there's a push to a branch with hotfix in the name - then it's immediate.
I don't really have a strict standard of setting up code as there's just my own work. I just ask that things are modularized when possible.
If you have an idea or suggestion you can also slap an issue on the repo -- that's what I've been doing for when I have time.
Might be a stupid question but when there's a mod that for example adds the possibility to open cans with a knife, wouldn't it be easier and more mod friendly to write a code that'd get names of all the weapons that are short blade type instead of adding every single one manually?
can you open a can with a butterknife?
Irl yeah at least with the ones that i have
hey guys! I have a question. Is there a reason why there is no mod to increase the weight of crates, shelfs etc?
There are a lot of mods increasing backpack weight and what not but nothing to edit crates holding weight?
as i investigate someday, on mod that create crates with 1000 weight, i find out that is hardcoded stuff, that is why you cant see mods doing that, the info is stored in a bin file, or similar stuff, that is not easy to modify, i conclude this, its is a hardcoded stuff than is not accessible to write from mods
Okay that is what I have been ending up to as well as a reason why. I have been looking in all the files to search for anything crate or shelf related and I cannot find anything, I can see backpacks etc but no actual container furniture
different from bags (that are items), that is stored in .txt, and can be modified by many forms, like setvariable, or script
Do we know of any mod that adds adds a new storage with more weight?
yea that is what I meant
in current state, furniture data is stored in "closed" / not modified by lua scripts files
yes, there is the mod that i mention that stores literally 1000, i dont remember the name
but they are metal shelves with high storage capacity
and uses an "custom file" not txt to do it
you can read the contents of the file if try to, one notepad++, and there are stored the capacity in decimal number, is readable from notepad (is not true binary, its was a example, or at least you can read on notepad++)
Hmm..
yea if i cant find it and download it i am gonna try making something similar. I do have coding experience but nothing PZ related (I am pretty new)
Are you modifying .txt scripts?
i dont recognize what type of the file is
is it a .txt file?
its is no extension file
๐ https://marketplace.visualstudio.com/items?itemName=asledgehammer.zedscript-vscode
This is a thing if you use VSCode and are working with scripts for PZ. (Not Lua)
Ah ok.
i dont remember well, but is not .txt item script format
jabs jab
it was 1 mod only that does that, and i cant remember the name
This is a thing already -- ingredients can be global functions. There's a few, and I believe Blair added more recently (๐).
You'll see them as [get types.bluntknife] etc
im trying to remove, by server side, but didnt work x.x
yeah its is that one, i check the local files here
Did you manage to find the right-click-remove from debug?
nice! that was my first try, but then i try the server side hahah
nice approach too
Thank you!
It should include checks for client / player inventories, and send stuff accordingly
wish the game didnt just blow up moment I try and call nil from console... just tell me its nil.
I didn't have time to sit down yesterday :"(
Im currently trying to make a profession with a custom trait using Prof framework. can anyone familiar tell me if this looks correct? ```
ProfessionFramework.addTrait('Blade', {
name = "UI_trait_Blade",
description = "UI_trait_Blade",
profession = true,
xp = {
[Perks.LongBlade] = 2,
inventory = {
["Base.Katana"] = 1,
})
ProfessionFramework.addProfession('Weeb', {
name = "Weeb",
description = "anime obsessed degenerate.",
icon = "proff_Weeb",
cost = 4,
xp = {
[Perks.Fitness] = -2,
[Perks.Strength] = -2,
},
traits = {"Blade"},
inventory = {
["Base.Dakimakura1"] = 1,
},
OnNewGame = function(player, square, profession)
local player = getPlayer()
local Hat = player:getInventory():AddItem(" Base.Hat_Fedora")
local Jacket = player:getInventory():AddItem("Base.JacketLong_Random
")
local Shorts = player:getInventory():AddItem("Shorts_CamoGreenLong")
local Hands = player:getInventory():AddItem("Base.Gloves_FingerlessGloves")
player:setClothingItem_Head(Hat)
player:setClothingItem_Torso(Jacket)
player:setClothingItem_Legs(Shorts)
player:setClothingItem_Feet(Hands)
end,
})
here, the capacity is stored in .tiles
that is why cant be modified by mods, this setup is done outside, "precompiled", from tileset modding tools
ContainerCapacity
9000
CustomName
LMetalBox
GroupName
Box
IsMoveAble
ContainerCapacity
1000
CustomName
DropOff
Facing
S
GroupName
Bin
IsMoveAble
got that already. wanted something for indoor!
if mods handle to modify tiles attributes, can be done changeables furniture, nobody tried it yet, dont know if it is possible, i try to change color of tiles only, and the original color is hardcoded cant be customized, maybe the tiles attributes are too
need to change ContainerCapacity atribbute, from a tile
that is the challenge to do mods for that
oh you want to take a look at the infamous lightswitches?
is hardcodded or not implemented yet
what on or off?
nice! you can :Set("ContainerCapacity", customValue, false) ?
did anyone actually create real entries for zdoc-lua and got them like sitting on a git or something?
there's a check box to not pause on error
that's a long message ๐
Im not typing?
polter, i conclude another mp compatibility, can you host a server to verify with me if its all set up?
i will release that mod in 1 hour or 2
or someone? i did test in my dedicated server
well maybe thats where I make my niche... actually creating something more useful then...
---@param arg0 String
---@param arg1 boolean
---@param arg2 boolean
---@return LuaManager.GlobalObject.LuaFileWriter
function getFileWriter(arg0, arg1, arg2) end```
and its is working, but im not sure on the remove vehicle part, its working in practice and theory confimed by chuck too, but i need to check if its working with more players
at max 6 players
im going to release a mod that can tp 6 players at once, on mp, using vehicles
it is my bus tp travel mod :))
that will be an uber later soon too
can you host a mp server @frank lintel ?
me? maybe never tried to
if my rig can handle it, shouldnt be an issue with a threadripper
you need to like try and test something on a dedi?
it can be the in-game host option too
its is just a online server with more people, you and me basically, i will see if someone of my lab discord is avaiable
good luck
do you need me to like just start up my game and self host or you wanting me to install mod(s) also
this mod is listed to friends, but i can set it on not listed too
the server owner that i test my mp compatibility is not available atm x.x
yeah I'd have to decline on that mainly because of security reasons. its not like my network is protected.
im trying to see if my pc is capable to that 2 clients right now, its really slow but i think it is going
that and actually would take work to set it up.... never did yet.
gateways routing etc
there settings for that I passed them somewhere
but zomboid can host a steam server too, is that safe right?
somewhat but still need to do all the networking crap and then that leaves the hole of port forwarding
aah, one day i saw a non-advanced code streamer manage to host a server in-game, and i suppose that was easy to setup
i didnt know that need to deal with port forwarding
yes but that person is likely not directly tied to an ISP network bridge.
did you mean the xmax java parameters to consume less ram?
yes? like I said flipped by it. my brain forgets these things because Im too busy digging thru jars that and Im old. :P
I havent even touched MP/hosting yet for PZ so really dont know anything about that part or where settings are etc
:))
it will be nice, to have a steam guide with it, configs to low specs
with javaparams and server.ini
i read on the wiki i think something similar, by telling what args do
I'd rather have proper javadoc like info other then just oh this is arg1 this arg2... like tell me wtf it does.
but it will be a nice to have a guide to just copy paste
its nice to have both
i mean to be able to be user friendly too, non-technical
yeah but if you dont say what the arg does behind a 'exposed' method kinda pointless since I dont know what the arg does.. lol
haha true
so then Im looking up the actual method that isnt exposed to figure out what its doing...
i think i manage to do better records on my pc, i was using ffmpeg and the output feels laggy, but that not happens using obs
is not 4k ultra mega blaster like your video file output
but manage to do an 1080p or 900p at least xD
well I'd like to see anyone stream over 1080p anyway when ya limited to a 6meg upload/intake
I dont stream to anywhere other then twitch cuz it supports surround sound (albeit this game dont?)
i need to check if is capable to true 1080p, or is capped by desktop/max resolution note 900p
but my monitor is bigger than that, but i think it doesnt matter to the output... dont know
bandwidth is everything regarding streaming. thats like ppl saying their 240hz monitor matters for COD online lol
xD
omg you should hear my boss and his discord friends... and I just destroy them by saying divide 1/refresh then look at your ping...
xDDD
but seriously I wonder if thats maybe something I should do is start actually writing up annotations with actual descriptions
the only thing i know that in fps games, you need to match your 144hz to your 144fps and more than that is not humanable distinguish
120hz 120fps is okay too
well point goes back to ping, if your host isnt responding fast enough no point...
xD true
playing some local game. totally different story but online... no.
and have the display response time too 1ms
but the bottleneck is always your ping
that you dont live inside the server to get 0ms 1ms 4ms
local network maybe like at a competition or something...
true
twitch I stream 2560x1080 barely cuz of bandwidth cap.
anyhoot time to think of how to maybe make this automated so if I change anything that when a new ver comes out it just does a diff and keep the old only add in new entries...
i hate being that guy but i can def tell the difference between 144 and 240. what i can tell that is different i couldnt exactly say, but it's noticeable for sure. i think it's more about how those frames are treated though than the refresh rate itself
shoot i can tell the diff between 144 and 165
rebuilding my rig with mostly enthusiast parts in a couple days when the 4090 comes in. i'm doing a crap ton of testing to see if the upgrade was even worth it and how noticeable monitor refresh rates are
my rig can run my HP Reverb in DCS good enough for me...
xP
what is DCS lol
digital combat simulator a very hardcore VR supporing flight simulator
basically demand wise its same level as MSFS
oh shiat
i haven't tested on games but i tested on training AI and that shit takes like 15gb vram and 50-60gb ram
yeah its basically like MSFS but combat with legit modeled real planes
do they have a benchmark in this game?
i used to use crysis for testing. i dont like regular bnenchmarks
others use those all the time haha
i like real example benchmarks like games that people play. DCS seems like it may be the play lol
watch me get low fps on a 4090 and 7950x3d
well msfs just the same
ms flight sim?
yeah
damn i never played a flight sim before...
i have played pilotwings 64 though
๐
LOL
both them dope AF in realism, if I want game flying thats Arma for me
oh hell yea
i gta rp a lot so i've come to enjoy flying in that game
i havent touched arma for years also haha
I say no on that because GTA's dont support 'sticks' only gamepads
but I do love gta
that would be another good one for benching
you can use a stick with windows ds4 or w/e right
