#mod_development
1 messages · Page 208 of 1
getName will get the "FrontDoor1" value, correct? Cuz that's the one I was aiming for.
it's not the translation name, it's what is referred to as type in literally every other circumstance 
Excellent
on the Item object specifically though Type is something else
Alright, yeah they are rendering directly to OpenGL
That's "normal/food/weapon" you're referring to there, right?
Which means no way in hell to get that bit data back from lua. 😢
I could if I wanted to make a javamod
Well you can get the rects / shapes and colors, but that same data is in the map file itself
but I don't want to do that
I'll just kill myself writing a crappy AutoHotKey script to do it.
My aversion to that is I do not want to render it myself
Which ones?
Both of those appear to be renders of the actual in game world
not the minimap though
unless I am missing something
I appreciate the insight and help y'all
ty
does PlaySoundWav even work to anyones experience?
i cant seem to be able to get it to
PlaySound with ogg files works just fine however
Interesting
what do i put inside the shared/definitions? trying to make a hair mod
How does added ingredients works for food?
I'm making a new food item which I want it that you can add ingredients such as cheese, vegetables and meat 
Is the EvolvedRecipe line code?
@bronze yoke those fixes worked PERFECTLY. (Thank you)*100
can the result of a recipe be populated by a lua function like the ingredients or does that kinda thing require an onCreate call?
and should I be seeing table-breaking behavior if I mistakenly skip index 3 (so [1] = .., [2] = ..., [4] = ...)
Fixing it because, of course it needs fixing, but it seemed to break population of the list
it's not technically breaking but only the continuous number keys will behave like an array (so ipairs will only loop over those and # will only return the number of those)
That makes sense. So the solution would be to use table.insert anyway, right?
o7
lua tables are essentially half array, half hashmap, but you generally only want to treat a single table as one of those things
BTW - let me know if there's some link where I can "buy you a coffee" or something. I think i owe you a case of beer at this point.
hehe ^-^ i'll dm you my kofi
I'm about to descend into producing a list of salvaged products based on the ingredient list for the original item. Wish me luck.
Very quick question, I know basically nothing about modding this game, but, I want to edit a mod I'm using with my friends, is there a version of ProcessSayMessage but for all chat ?
Guys, which command in Lua would I use to pull up the list of items that are equipped? for example, Im currently using local inventory = player:getInventory():getItems(), but it would be better if I only received equipped items
probably. Server-wide admin messages have code to go out somehow. I'm sure it's accessible freom the lua somehow
I don't know off hand, but if you looked for any code in other mods (or ${zomboid_home}/media/lua I would guess it's some kind of tag or status or other metaparameter that you could check. (maybe even as simple as inventoryItem:equipped() == true ? Look especially at any clothing that offers protection, as it can only do so if it's equipped.
But from a quick scan of the vanilla lua code, you'll need to iterate through a list of inventoryItems and check if isEquipped() == true
Well didn't mean server-announcements just /all chat, since playing on a private server with friends we usually use /all instead of /say
ah - well, you can just disable 'say' in the server config
@bronze yoke they evade my MW-grind on account of a missing DisplayCategory.... for now
is there a version of the character "say" command that can be broadcast from an object or square than will be seen in the local chat window?
or maybe even have it generate a note that drops into the player inventory?
Say is proximity. As is yell. If you want everyone to see, use '/all'.
Anyone figure out a way to get right-click context menu working in a safezone that is not your own?
I reported a bug regarding this long ago but wasnt sure if there was a modder solution out there that I may have missed.
has anyone figured out implementing shaders at all yet? like a drunk filter or anything, haven't seen any on the workshop so wondering if it's very possible. I don't want to get into it if it's too much of a hassle.
funny i was just wondering the same thing 😅 i know the blind mod accomplishes its look through a shader but i have no clue how they do it
funny i actually am looking at that exact same mod
they basically fake it
they use the foraging system and change the saturation values for it
so its not a real shader just the built in one from foraging
they have a REAL shader, but its weird you have to rename the thing to turn it on and off and thats not really something i want to make people do lol
so can we mess with which shader the foraging system uses, or do they just overwrite it?
im not sure but it seems like they just change the values, you can change how desaturated it is and how blurred it is
thats how it gets the black and white
oh i see, it's not a custom shader at all?
that isnt
they use a real custom shader for the gray characters but im not sure how it works
im guessing it wasnt easy or possible for them to turn it on or off in game easily however because it requires a game restart and renaming the file
had a quick look, yeah they just overwrite the foraging shaders
ah that makes sense then
i was looking at the zomboid source and it seemsssssss like there is some sort of a system for implementing your own shaders without that whole shebang
you can use your own shaders for models and stuff but i'm not sure about screen shaders and either way there are some serious limitations
there's no way to pass uniforms to the shader so you're limited to only ones the game already uses
youch, well that shuts down exactly what i wanted to do lol
do you think i could somehow use the in game ones, overwrite them when i need it, and force a shader reload so it doesn't mess with the original?
i'm gonna look more into how the foraging shader is implemented
when i was looking into shaders last i was more interested in how they were rendering models
okay cool i feel like you'd be able to figure it out before me so thank you lol, if you find anything please do tell
i'm not optimistic with how my last look into shaders went so don't get your hopes up
ha its fine, i'm probably going out of the scope of what i need to do anyways here so if you don't find it out thats cool
well this is frustrating, the architecture is actually pretty friendly but no we can't really do anything
thats a bummer, hopefully next update theyll open up the options a bit
so, i was reading back a bit, but maybe i missed it; so can you change shaders? and to what extent if you can?
I saw it said that you couldnt pass uniforms, so im assuming you can, to some extent change the shader, just not whats sent...
you can change some of the details about the shader used for foraging
and thats about it
if you want to do anything further you just have to overwrite the file
but that means its on till you turn it off
which requires a restart
ok so now on the fly shader switching, sad
yea thats what i was looking for too lol
you can use custom shaders for models freely
just not too much you can do without uniforms
oh yea forget about that part
Is there a good way other then hooking one of the update events and checking to tell if a player has entered a specific area?
Afaik it's just check check check frequently
Region is perhaps a better word. Arbitrary rectangular area. THough room and building would be useful as well.
no, not really
No but depending on in-game time settings hooking it to the once a minute event can be 5 seconds IRL for each in game minutes
2 hour days will do that
Yeah I generally hook to every one minute, or do on tick with a counter
Not like counting 1,2,3,4,5 will impact performance in any meaningful way
Depends on how accurate you want your code to be. Higher accuracy, worse performance.
+1 for the OnTick (or other high frequency callback) with a counter (or other finely tuned) condition.
ChatGPT and this page (https://zomboid-javadoc.com/41.78/zombie/scripting/objects/Recipe.html) suggests to me that recipes can be entirely constructed in lua? no script files?
Javadoc Project Zomboid Modding API declaration: package: zombie.scripting.objects, class: Recipe
yo no comprendo. a Lua file is a script...
Hey folks. I've just posted on Reddit and Steam Discussions before remembering discord exists.
I'm making a trait mod, and I've got the lua figured out. Timings, pain areas, moodles, and taking away and adding traits based on different conditions.
But I don't see anywhere in the mod files that I'm examining where I can actually modify skill level. Can anyone point me in the right direction? What am I missing here?
a 'scriptItem' lives and is loaded from media/scripts and consists of defined objects such as items, vehicles, recipes, and some templates for building the others.
AH, you ment a file of a particular folder, not a type of file
they're called 'script files' generally and 'scriptItems' in the code
lua is lua
*just
I didn't pick the nomenclature. i'm just working with it
Ok... looks like Khairi may have answered this 4 days ago. hmm...
The relevant file was in the NPC folder of the trait mods I was examining. So I can copy that.
Literally, the one place I didn't check.
is there an accessible method to loading up an interactive lua shell - with all of the java environment and other media directory contents loaded - but without the game loop and GUI client?
unfortunately the game refers to most of its content formats as scripts so calling lua scripts is inherently confusing in this context
even if technically correct
perhaps if I find a luashell class and replace the contents of this param in the json file?
"mainClass": "zombie/network/GameServer",
hey hey guys
this might b a really dumb question
but is there a way to access or play the function
of a mod
within the game play?
using the Console?
for Example, in a mod called "HereTheyCome", it has a lua file called "HereTheyComeMain.lua"
and in that lua it has a declared function HTC_CheckHordeStatus()
is there a way to manually run this function in a game using console?
I'm cooking now. 🙂 figured out how to make all sorts of custom perk effects based on game conditions.
ah.. since they are written locally
it is not then
local function HTC_pulseOnPlayer(player, _)
local playerLocation = player:getCurrentSquare()
if playerLocation ~= nil and SandboxVars.HereTheyCome.PulsePlayersDuringHorde then
getWorldSoundManager():addSound(player,
playerLocation:getX(),
playerLocation:getY(),
playerLocation:getZ(),
SandboxVars.HereTheyCome.PulseRange,
PULSE_VOLUME);
end
end```
k then one more question
how about accessing into GlobalModData???
like i can get into object moddata by doing
itemname.getModData()
but how about the global ones?
like..
Ty so much
Attempting to make custom roles within my dedicated server!
Current roles are; Observer, GM, Overseer, Moderator, Admin. Is there a change to make more access groups?
Rookie question but how do you make it so you keep an item when you're making a recipe? I know you write keep or K or something but im not sure the right format. What I got:
recipe Craft Hammer
{
Hammerhead=1,
Base.WoodenStick=1,
keep Base.HammerStone=1,
Result:Hammerhead,
Time:200.0,
Category:Cooking,
}
}
nvm that works 🙏 🤦♂️
I just want to see if I am reading this right. I am assuming this function makes zombies randomly look at a direction when in contact with smoke from a smoke bomb?
Image
Also what is "IsoGridSquare"
or perhaps it makes a smoke effect in a random direction?
hard coded in java. u will have to write ur own .jar and rework the whole game. thus.. won't be fun
random is just pulling a random number and is checking what number it produced then perform a functino depending on the number
isoGridsquare is a square of each tile
addspokeonSquare means a parameter sent to the server
to perform a function (likely written in another .lua file in server folder)
Yeah I got that part.
What do you mean square of each tile? Like squared? or what?
So addspokeonSquare is telling the client to communicate with the server via sendClientCommand?
I'm new to zomboid coding, but very familar with GLua.
Basically a square = one tile
sendclientcommand is a function to communicate with the server yes
this is usually done to control zombie hordes, world items and etc
to alter object datas that are saved in the server sides
I got the server-client side stuff down. Is there a wiki with a pz library?
Ah shit
Over the course of testing, I have learned that each character gets their own voice color.
Does anyone know if there's an API to interact with that color?
I can't find anything with google/ reddit/ workshop.
how do i mod the title screen? I wanna mod this gif in whenever the lightning flash hits
yea, if you type, projectzomboid API, they will have website showing up
what do you mean by voice color?
simple, go into project zomboid folder, and change the file
Mptextcolor?
Hmm... I'll try that! thanks
What I mean is when the character coughs, or whispers, or shouts. Or you specifically call the Player:speak() method.
I've found that the color is consistent.
It seems randomly selected, but consistent with each character.
I believe that's mpTextColor or SpeakColor, I messed with it way back with conditional speech.
why? just.... why? tf
media/textures/Item_SMCartonMenthol \342\200\224 \320\272\320\276\320\277\320\270\321\217.png
media/textures/Item_SMCarton\320\241igarettes.png
now, this doesn't make sense to me - how does adding the float value have anything to do with the previously inserted book entry? wouldn't they need to be part of the same object/key=value set?
--Bookstore (BookstoreBooks)
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, "LY_Skillbooks.BookAiming1");
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, 1);
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, "LY_Skillbooks.BookAiming2");
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, 0.8);
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, "LY_Skillbooks.BookAiming3");
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, 0.6);
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, "LY_Skillbooks.BookAiming4");
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, 0.4);
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, "LY_Skillbooks.BookAiming5");
table.insert(ProceduralDistributions["list"]["BookstoreBooks"].items, 0.2);
??
Distributions is a numerically keyed list of items and chance pairs.
that's what I thought. That's not what it looks like is happening here, though
it looks like two different elements are being added to the table, one item name and one float value
So looking at this java code (in IsoPlayer.java, same command data sent elsewhere like in LuaManager.java setAdmin) for how access level is set to try to find how to do something...
public void setAccessLevel(String var1) {
byte var2 = PlayerType.fromString(var1.trim().toLowerCase());
if (var2 == 1) {
GameClient.SendCommandToServer("/setaccesslevel \"" + this.username + "\" \"none\"");
} else {
String var10000 = this.username;
GameClient.SendCommandToServer("/setaccesslevel \"" + var10000 + "\" \"" + PlayerType.toString(var2) + "\"");
}
}
If I want to detect when a player's access level is changed to admin in MP and do something on the client, will this work? Not really messed with client/server netcode scripting before, so I'm not sure I am understanding how to detect a server command correctly.
local onSetAccessLevelAdmin = function(_module, _command, _args)
if not isClient() then return end
local username = getPlayer():getUsername();
if string.find(_command, tostring("/setaccesslevel \""..username.."\" \"admin\"")) ~= nil then
-- do stuff
end
end
Events.OnServerCommand.Add(onSetAccessLevelAdmin);
The syntax you posted is correct even if it looks weird, you are right about what it looks like; item distributions are separate entries of item names and chances rather than object/key=value pairs like you might expect them to be.
it's so the java can parse it faster
My apologies for asking a really general coding question, but what’s an object/key=value pair in Lua?
Is there an event for detecting sandboxvar's changing?
No. However, Change Sandbox Options by Star (https://steamcommunity.com/sharedfiles/filedetails/?id=2894296454) adds the "OnSandboxOptionsChanged" event for singleplayer.
so I would need to get the index of what I want to remove and then remove that and the next?
# pseudo-code
tgt_idx = table.getIndex(target)
table.remove(tgt_idx + 1)
table.remove(tgt_idx)
thisObject = {
thisKey = "thisValue"
}
look at any lua dealing with VehicleZoneDistributions:
; where index corresponds to the skin to use (-1 means random)
VehicleZoneDistribution.zonename.vehicles["VehicleName"] = { index = -1, spawnChance = 100 }
as I'm fixing my tweaks mod:
[12-12-23 16:14:46.545] ERROR: General , 1702419286545> 2,540,096,551> ExceptionLogger.logException> Exception thrown java.lang.NullPointerException: Cannot invoke "java.lang.Double.intValue()" because the return value of "se.krka.kahlua.vm.KahluaUtil.rawTonumber(Object)" is null at TableLib.remove line:247..
[12-12-23 16:14:46.545] ERROR: General , 1702419286545> 2,540,096,551> DebugLogStream.printException> Stack trace:.
[12-12-23 16:14:46.546] LOG : General , 1702419286546> 2,540,096,551> -----------------------------------------
STACK TRACE
-----------------------------------------
Callframe at: table.remove
function: LY_SkillbooksLootSpawnFix.lua -- file: LY_SkillbooksLootSpawnFix.lua line # 46 | MOD: Spectrm's Recipe Tweaks.
for _,dist in ipairs(distributions) do
for _,book in ipairs(removeList) do
table.remove(ProceduralDistributions["list"][dist].items, book);
end
end
guessing I'm mistaking a table for an arrayList again? or vice versa
So an object can be a table (I know a tiny bit of Lua and how the { brackets work at least!), and a key is an item within the table, with the value being the number/parameter attached to the key?
object is a very general term that could really mean anything (which is why I gave two examples). In object oriented code like Java, even integers are their own kind of object in most cases. But the basis of most objects is 'key=value' pairs.
But fundamentally, yes - when you build a table/dictionary/hash/whateverTheyWannaCallIt, some variable has a collection of keys that can be referenced as variable[key] to return the value stored/associated with that key
the behaviors change depending on whether or not keys need to be unique (usually they do) or if there's going to be a lot of forced iteration (in which case you may save it as variale[value] = key (though, usually more useful with numeric indexes as 'key's instead)
for my part, I'm just learning how lua deals with it's disparate array/table/whateverElse objects
it will index them sequentially, yes? (see: #mod_development message)
Discord is the easiest way to communicate over voice, video, and text. Chat, hang out, and stay close with your friends and communities.
There is no wasy that is any plants vs zombies mod in the workshop, right?
Awesome, thank you so much for the help
or do I pull in this function?
media/lua/shared/luautils.lua:function luautils.indexOf(table1, value)
Having relatively little time to learn coding with school and work, this is kind of the best place for me to squeeze in some extra Lua learning
any little bit helps. There are very few jobs today that wouldn't benefit from some computer knowledge, and the more you know, the more options you have generally
@abstract pine so this should work, right?
require("luautils");
...
for _,dist in ipairs(distributions) do
for _,book in ipairs(removeList) do
targetIndex = luautils.indexOf(ProceduralDistributions["list"][dist].items, book);
table.remove(ProceduralDistributions["list"][dist].items, targetIndex + 1);
table.remove(ProceduralDistributions["list"][dist].items, targetIndex);
end
end
I think that should work, it looks like a faster version of what RemoveItemFromDistribution does in SuburbsDistributions.lua. If you're removing items from loot lists, also make sure you run that on the OnPostDistributionMerge event for it to work.
I'll have to look for that. I didn't see it called in the mod I'm amending.
Looking for the code that describes how the Washer/Drier work, if anyone knows where that is?
probably a good place to start:
media/lua/client/TimedActions/ISSetComboWasherDryerMode.lua:
probably touches all of the objects involved in either of the two
That, and the other similar ones in there; ISToggleClothingDryer, ISToggleClothingWasher, ISToggleComboWasherDryer, and the ISSetComboWaserDryerMode all seem to be only meant for the actual timed action for the interaction with that world object :(
So, basically just turning it on/off lol
I am trying to find the code that actually explains how they work
I appreciate you tho <3
they are java
zombie/iso/objects/IsoClothingDryer.class, zombie/iso/objects/ClothingWasherLogic.class, and zombie/iso/object/IsoCombinationWasherDryer.class are what you want
... Ah... Java 😭
So then... I suppose that brings me to my next question.
Anyone have any tips on making a custom world object that the player can put items into, and have something done to them over time? 😅
Similar to washer/drier/oven/etc... Really any of them lmao
look at MoonShineMod for some ideas
OH! and in the Java itself? not just from the perspective of a mod?
beyond my paygrade
No no, that is all good haha! I dont want to mess with the java side. I just want to implement my own object that has its own functionality haha
I think you would just need a tile that's a container, a way to activate it (unless it's always on) such as by context menu or something fancier built into the container UI (no idea about UI modding), the first way I would think to do it would be setting mod data on the isoObject. Then you could do whatever you want to the items in the container through an event running OnTicks/EveryTenMinutes/etc depending on your needs.
the easiest way is to just keep the time the player last interacted with it
then when the player interacts with it, simulate what would have happened from them until now
of course you can't do this if what it does is visible
if it needs to react to certain conditions while it's unloaded (like how rain barrels need to react to whether it's raining) you need to use a global object instead
The main things I am working on rn are a charcoal pit and a rock tumbler. It is going to be a matter of figuring out how I should go about doing both of those things... lmao.
The original idea is to have the charcoal pit be something the player can add wooden items to, ignite, and get charcoal out of after some time. Rock tumbler would ideally work like the drier does, with the items being put in, and then after being in for some time, being swapped with the requisit output materials for the item
So uh... If anyone has any ideas on how I should go about designing that sort of funcitonality in the code, by all means, I am all ears haha
this is unfortunately one of the more complex things to do
you could probably reference campfires for the charcoal pit, the functionality mostly crosses over
they're global objects so they're defined in lua
And, yesh one of the most complext thing to implement
Can someone explain what makes this complex. From my limited modding so far this doesnt seem horribly complex. The only thing I don't know how to do (with the ideas being talked about) currently is support dragging and dropping of an item from inventory to a component in a custom UI window.
Making things work over time isn't easy cause if the area is unloaded nothing will occur. So you have to calculate based on time to make it what you'd expect once you find it. This is also better for performance.
Yea but hat isnt complex or difficult... or maybe that is subjective..
i call it complex because most things don't need to be written from scratch in zomboid
this generally does
That too
Nod. I suppose most people doing modding don't have a solid backround in programming or games either.. so my take is probably slanted.
Then again, sometimes writing from scratch saves you from hitting roadblocks down the road trying to twist the game to do something it wasn't designed for. 😅
you got mouse events and screen 2 iso functions so I do not see the problem.
I did not understand "the problem" either, which is why I asked. I thought perhaps there was some PZ specific architecture issue or something as the reason it was "complex".
Sorry I do not get the context, I'm just refering to your drag and drop that was the "only thing..".
this is one of the most major reasons, yes
Oh yea, I jsut ment I personally dont know how to do it at the moment, as in I havent bothered to try yet. I know its possible though.
Is there a place to commission mods?
There is, but there is a certain way you have to link to it to not get in trouble I think, and I dont know what / how to do it, but I think @sour island was the one who dropped it when I saw it.
#mod_development message
this was a bit of a joke, but it's one way to do it.
and now I'm running into dumb 'wtf' errors:
[12-12-23 21:20:59.269] ERROR: General , 1702437659269> 2,558,469,274> ExceptionLogger.logException> Exception thrown java.lang.NullPointerException: Cannot invoke "se.krka.kahlua.vm.KahluaTable.len()" because "<local2>" is null at TableLib.insert line:217..
[12-12-23 21:20:59.269] ERROR: General , 1702437659269> 2,558,469,274> DebugLogStream.printException> Stack trace:.
[12-12-23 21:20:59.269] LOG : General , 1702437659269> 2,558,469,275> -----------------------------------------
STACK TRACE
-----------------------------------------
Callframe at: table.insert
function: VROSourceItems.lua -- file: VROSourceItems.lua line # 18 | MOD: Spectrm's Recipe Tweaks.
...
local doorItemTypes = {}
local doortItemTypesNot = {}
table.insert(doorItemTypes, "door")
table.insert(doorItemTypes, "cover")
table.insert(doorItemTypes, "hood")
table.insert(doorItemTypes, "lid")
table.insert(doorItemTypesNot, "armor") <---- line 18
table.insert(doorItemTypesNot, "armour")
...
local doortItemTypesNot
@bronze yoke I found THIS stupid error myself. LOL
diff --git a/Contents/mods/spectrm_recipe_tweaks/media/scripts/vehicles/VROSalvageParts.txt b/Contents/mods/spectrm_recipe_tweaks/media/scripts/vehicles/VROSalvageParts.txt
index e52d21a..70b962b 100755
--- a/Contents/mods/spectrm_recipe_tweaks/media/scripts/vehicles/VROSalvageParts.txt
+++ b/Contents/mods/spectrm_recipe_tweaks/media/scripts/vehicles/VROSalvageParts.txt
@@ -240,7 +240,7 @@ recipe Salvage Vehicle Panels
OnGiveXP:Recipe.OnGiveXP.MetalWelding20,
Category:Salvage,
}
-
+}^M
/******************* Salvage Large Container Tanks **********************
@@ -260,7 +260,6 @@ recipe Salvage Large Container Tanks
Category:Salvage,
}
-}
*/
/************************ Misc electrics ***********************
@@ -474,3 +473,4 @@ recipe Salvage Large Container Tanks
Category:Salvage,
}
*/
+}
\ No newline at end of file
I need to start drinking (or smoking) again... I only make these mistakes sober. lol
LOL
Does anyone know what is getPlayerByOnlineID and getOnlineID referring to? Is it the Steam ID? Is it like the player number? Its own thing?
If so, is it persistent?
it's their id on the server, it is not persistent
player != user
when an account logs in they're assigned 4 online ids for their local players to use
(so the first account gets 0-3, second gets 4-7, etc)
they're used for identifying characters across clients/the server
if they log out their ids aren't freed but they use the same ones if they log back in
they're not persistent, when the server restarts they're assigned from zero again
also even within the same session the same online id could refer to a different character (e.g. if they died and made a new character)
it's similar to the player number in that the player number is just the online id % 4
Wait, you can have more than one player per account in MP?
Like at once?
I thought you could only play splitscreen with 2 players, and in some special SP mode (Never even found out how you do it)
you can play splitscreen with up to 4 in any mode, unless the server disables it
Oh wow I did not know that
How do you even enable splitscreen
That just blew my mind,
just press a button on a controller and it'll open a context menu to join
Yeah that must be terrible in a single screen
yeah, the game pauses while they create their character
All this time I thought it was some random addon you had to download!
This is almost a hidden feature smh
Thats what I figured is how it worked. Using a controller isnt great, I havent done it in over 6 years but theres a ton of actions you cant do on it. I couldnt imagine splitting the screen 4 ways
I can finally play with my sibling that doesn't have a PC!
I think it'd be acceptable if it was like a console game, and you had a big TV
me and my Ex use to play that way. Back when the only person who had ever heard of the game was her through me
I met one guy at shcool who played and then showd her and it was like that from the first public build until 41.
now everyone and there mother plays it.
i think most players don't know
😂
The controller is not a good experience to be fair. But if thats all you got then its great.
Sometimes people comment on my mods like "X doesn't work on controller" and I'm like
"You play with a controller?"
What mods did you make?
I want to take a look
Nothing major
Same, I just cursoous
When did you start playing, if you don't mind me asking?
Were you around when zombies were 2D aliens?
Way more then you let on. Ill have to gander tomorrow.
i started playing a couple years ago, when b40 was pretty old but still the 'main' build of the game
so yes, 2d aliens
😆
Im only responsible for the public mod that changes the misplled word Baloney to Bologna.
Hahaha that's awesome actually
The game has quite a few weird namings
Like using UK English for flashlight
I have a few other mods but they were private ones for friends or for me to mess around with.
You're from the UK? 

Panics in English
I love UK English. One day I want to be able to talk with an accent like that
I trained myself to talk the generic murican English so it's hard to recondition oneself
Which coast you near?
Oh I'm not American, I am self taught 😝
i'm tempted to start faking a different british accent myself
😆
My native language, at least in my region, is spoken in how can I say this? A rough, more pronounced way. Like Russian.
English is softer so to speak. And UK English is much softer.
English also seems to cut off vowels
somebody asked me for a 'british translation' mod, i'm all for it but i still haven't gotten around to it...
I unfortunately dont have that simple life Canadian accent and just a muddy french canadian one.
Omg that's sooo true! I have a british friend that is like... You just can't understand them haha
When we're in game group chats, everyone is often asking him to repeat himself
Like it's just so hard to understand 
if you're struggling with england the other countries in the uk are going to be a nightmare

Panics en français
i'm personally a big fan of the french accent
france french...
One is like me saronated and the other is like being assulted
i'm not sure i'm familiar with the quebec accent
French is beautiful too!
Its sounds like spanish but with a lot more mud in the mouth.
Theyre different though in sounds and words.
I like the france french as well, its like theyre speaking molasis
what's the best way to think about if a function should be under lua/server vs lua/client?
Situation: there are a set of functions that CLEARLY are desired on the server end, but I anticipate there will be some operations that ARE meant to be on the client-side, and I need to be able to identify which are which so I can partition them properly
testing 🙃
anything that seems like it should be client-side probably is, but a lot of things that seem like they should be server-side aren't
I try to find a mod similar to the mechanics of what im doing and see how they did it. Along with testing over and over and over again.
This is how you died...This is how you died...This is how you died...This is how you died...This is how you died...This is how you died...This is how you died...This is how you died...This is how you died
are you not running debug? lol
Somethings cant be done by reloading luea
Im always in debug.
I have to quit out of games every single time I play with friends because I forget its in Debug
eh i just leave it on
most servers will kick you if you join in debug
Cant join a multiplayer game with Debug unless you are host
usually when im playing with friends im hosting and im secretly using it as an opportunity to test the mod, so I have the debug on just to see errors or quickly fix anything that goes wrong
I only started playing MP with friends over the past year and the guy who streams it hosts.
that's why i finally got around to doing this
I just make mods and then use them as trogan horses to sneak other mods in under there noses
especially because of local copies of my mods loading over the workshop version and giving me inconsistency until i remove them U_U
I use a taskbar pineed PZ for non debug and steam for debug
ohhh my goddd i hate that lol
smartypants move tho ill have to do that when i get back
pineed?
when it's creating/destroying items or the like, def. server yes?
but taking a cigarette from a pack? (eg. converting a drainable unit to a cigarette) - server, too, yes?
all client 😔
client-side would be UI elements, animations, and behaviors, no? anything that can't be abused to game the item spawn system?
when does the item update make it back to the server, then?
you usually call methods like addItemOnServer/removeItemOnServer
ironically these methods don't work on the server and it's actually extremely cumbersome to replicate them from there
so the mods operate on the honor system... LOL
the game's entire security basically does
fair enough
b42 is moving item stuff to the server so i'm excited for every single mod that interacts with items to be broken
moving this from lua/client to lua/server fixed a missing function error from a script file, though
function Recipe.GetItemTypes.Crowbar(scriptItems)
scriptItems:addAll(getScriptManager():getItemsTag("Crowbar"))
end
server folder loads last, if you define it in client the table gets overwritten
i have a feeling every mod will be broken by build 42 anyhoo lol
because the vanilla table definition is in server
But the systems theyre introducting will spark a renaissance of new types of mods
hrm...
don't get me wrong, i'm not mad they're breaking old mods and i actually think they should do it more often
The secobd they bring in basic character controllers for animals the tables gomna get flipped
"You should completely redesign your system about every 5 years"
-- Intel
how "intel"ligent of them
zomboid pr0n servers... it'll be, like, the 3rd mod to be written. Bet.
everything humans do...
I love the theory on civilization that basically goes: "Skyscrapers are just really elaborate peacock plumes"
The character controlleds and animation systems were not developed enough for progress to keep going.
The community is of course still strangley very active even though no developer has spoken for over a year and development has ceased for 3
did it all just go private/offline?
It was always private
there are some texture mods out there, but I haven't seen anything else otherwise
well it's against tos
Never mentioned on any offical places like discord, steam or the website
This went a lot farther.
They had custom animation frame work before the modding community had cracked the first .fbx character model
@bronze yoke it seems if it's return goes to a recipe parameter, it needs to be under server, which is, like, 90% of the use cases I'm dealing with right now. Is this right?
it can be in the client folder, but if it's in the Recipe table it needs to be in server because that's where the table is declared
okay. That makes sense
iirc, some use cases:
Server:
- Communicating mod data
- Changing world settings
- Doing stuff that Admins can do
- Loot
Client:
- Literally anything that you see on your side. Yes. This includes your inventory, and even managing zombies.
Shared:
- Stuff that needs to be made in client, but acknowledged server side. Like teleporting a Player.
keep in mind that there is no difference in the actual behaviour based on the folder itself
the folder only affects if and when the file is loaded
What I do when I'm unsure where to put what I'm working on, is to write it client side and check in Vanilla files. Often you'll see indications if it's meant to run server side. And in SP server side doesn't matter. So usually server side I only use for what I mentioned.
well, I've already fixed XP gain on some 50 recipes in my modlist, so...
Random question but has anyone made a train mod?
I am working on one
awesome
that would be cool
Dude, braven. Can I just hire you or something? lol
get the little see-saw pump cart, too?
🤐
If only you people saw the amount of crazy stuff I work on that never leaves testing lmao
Lately I've been tackling airplanes too. Very difficult stuff, but I think I can manage it.
What I love about this modding community is that Ill come up with a project to work on during my winter vacation and when my vacation comes someone had already made it.
LMAO
I can relate somewhat. There's a lot of mods people asked me to do, and I was like "Well I am busy right now, but next wee- WTF SOMEONE ALREADY TOOK IT!"
Oh i can image.
I have been thinking on trains, and Im like man.. can you just hijack cars, and make them follow a set path and go "forward and backward" only
I'm the sort to say: Meh... I'll make it better.
I mean, not yet. clearly, I'm still learning this game, but...
All the power to you! Personally I don't do stuff other people already did.
Unless it's just unnacceptable and needs replacement
I was developing a radiation system last winter and stopped when I went back to work to find out a few months ago Radiated Zones was made
yea if your idea isnt original at least go for the goal
try to make it the best version of it
Oh im super cool with it, it means I dont need to do the work and I can build off what theyve done if theyre cool with it
I understand the effort that goes into making a mod and I feel bad basically replacing someone's mod. Like I already felt terrible when another modder released a mod that was literally a feature I had almost ready for one of mine, even though we never communicated or anything. We just both happened to work on the same thing at the same time.
I was making one because the other at the time were trash but Radiated Zones seems really well made
i make mods because i want to use them
I havent tested it yet though. Winter vacation just started and I mainly play PZ during that time.
I think the mod community needs to be a little more open source. So many bugs and misbehaviors that could be corrected quickly - or mod conflicts and overlaps...
Yeah most of my ideas are stuff I was playing the game and was like "Wh... why isn't this in Vanilla?" lol
if my idea overlaps with an existing mod (as it often has) i pledge not to look at their code and try not to follow their ideas too closely (but if i was following them closely why even make my own mod)
Same
i don't really look at other mods' code anymore anyway
Same thing here! Sometimes I am working on something, and someone says "Oh look at that other mod, it has X or Y"
I'm like nuh uh
I do shame face
I mean, nobody can stop you from doing it
So long as you don't straight up copy paste the code
it feels really guilty to do something that someone else has done, especially if you want it done "different"
I do it because my lua coding experience isnt super great so I look at it for structure and syntax
I have a C# background
I'm still in the 'learning enough to patch/fix bugs in other's mods' phase
Yeah!
John Carmack the guy who made Doom let the source code out into the internet immediatley against the wants of his partners to push game development farther
and thats how game development should be
I can tell a lot of mods are written for solo - or only tested there - based on some of the comments y'all made about the differences. I only play MP for the most part, now, so I only ever test in MP
People who gate keep by keeping things secret arel are just holding the community back
Imgaine if Throttlekitty kept his models a secret
how much we wouldnt have
once i get my first mod out i have no cares if people run away with the code or whatever.
I have two good reaons for looking at other mods currently and remaking a few.
- While I can code, I just stared modding PZ a few days ago... only way to learn is to look what others have done since there is no official guide.
- Thematic presentation and appearance. What I am working on needs a cohesive presentation, and one that is more graphical than the vanilla UI and most mods.
they can open it up and stare at it for free anyways
if you're not copy pasting i don't have an issue with it, nobody owns api calls and if your mod concept doesn't overlap you wouldn't be able to copy a significant portion of it anyway
but I dont imahine Ill need to look at mods more than another week or two. i just need to learn how to actually hook the bits and bobs together
I have no problem with people taking a section of code and adapting it to fit something they needed.
but if the mod concept overlaps i personally wouldn't feel good about getting that process from them
You cant really frankenstien code like that anyways with good quality you still have to put in effort
im making a big trait mod which is just allllllll of the worst "wow i found out im doing this thing someone else has done" alll the time
Like one I redid is vending machines. Mine have a very graphical UI, different logic for populating them, and a different currency sytem to be used though, and if you try shaking the machine around, you end up setting of an alarm.
if you are copying them more directly that is a violation of copyright and i would take issue with that, but i don't think that's common
Directly copy and pasting is hard to do something orginal unless you were flipping a mod because code is generally written for an intended purpose.
I stop short of making a patched, full version in my tweaks mod and just overwrite the offending file (with one notable exception that I've just been too lazy to put the work in - no activeMods check for various operations and the scripts files aren't split out into disparate mods in the same WI
Depends on what it is. I don't take issue with like 2-3 lines, you can't copyright a line of code.
Copyright only protects the thing as a whole.
Specially in modding, I'd argue. There's only so many ways you can do this or that.
I've submitted at least 5 patches via comments in the last few months. i don't think any of them have made it into the actual mod
Like even though I had the idea and have worked on a radiation mod I feel like the guy who released radiated zones kind of covered everything I wanted to do so my project is trashed. If anything Ill talk to them about building off it
off the face of the earth, and then its akward if people are able to do anything with what they left behind
Even then its ussualy spit and duct tape
yea lol
Another reason I would prefer to write my own version of some mods for what I am doing even though the funtionality exists out there already
Its also alot more rewarding doing everyhing yourself
But I wouldve never learned how to code if I didnt follow and learn from the works of others.
ideally all mods would be written modularly so that other mods can just build off of them and patch them
I have folders of other peoples code just so I have an idea of what direction I should be heading in so I dont stumble in the dark for hours on end wasting time
of course some authors don't want that and that's fine, but in my experience most do and are just unaware that they can do this
Yeah, ideally there would be "one mod", with modules, and everyone would contrinute to it
when i say modules i mean a specific pattern lua is usually written in
it's industry standard, so of course it is almost never seen in modding
instead of every mod including like a handful or more of duplicate purpose functions
Even then someone is making something along side it that contains orginal content.
i still have yet to find out what the hell the correct standards are for naming in lua
because EVERY MOD uses different ones lol
oh yea, someone explained it to me last year and I was more confused then I was before
PascalCase? camelCase? all lowercase?
what about functions?
do we care if its global?
YouForgotTitleCase
aint that Pascal?
I started basically duplicating my most often used functions for every mod, because I was done with people subscribing to one mod, and not the utilities mod with the functions I needed, or not activating the utilities one, yada yada, then complaining to me.
Pascal I believe is every wordsis captiolized
oh my god
is it actually?
Yeah
shit
Everything
anything you can do with globals you can do better with modules
ive got some work to do lol
LMAO
i just assumed it was local??
I fell for that one too at first
uh oh
there need to be more modules. Everything in base is just... ick
The UI is starting to really be the weakest part of the game
Makes me want to kms when I need to edit a tiny thing and have to either overwrite the whole function, or start from the ground up
It didnt bother me up untill this year
I often get caught in the UI having a specific size, and if I try to add some button to it or something, I have to modify the base function
the ui also is by far the biggest cause of lag
that's why they gave it a separate framerate
90% of the game being buried in context menus 
The recipes 
Ive always been able to juggle it, but now when I play my worlds have gotten more elaborate in set up and take hours of debug work and its become overwhelming
so, I got some snippets from chatGPT that made me wonder...
How plausible/reasonable is it to make recipes exclusively in lua?
i think you can, yeah
i've had success (with a significant caveat) with item scripts created from lua
that was my next question
but i can't see why recipes would run into the same issue
nooooooo howww?
items created this way cannot persist
immediate mode. Pushed to the GPU and redrawn every frame
one question I got was 'but why?'
And the top answer I thought of was "to get rid of all these 'missing mesh' errors in my startup
that makes me frown
You dont like 6 contextual menus while playing?
Couldnt you write a function to output the newly create item to the proper directory as a file as well?
Thus making it persist
Gotta get reminded of Eve Online while playing Zomboid
'cannot persist' - in what sense?
yeah but then you have consistency errors
am i the only one that didnt start this game and be immediatly turned off by the ui?
i find it a bit charming
the instances will not be saved
I found it charming for 10 years. This year ive now become sick of it
I'm looking at a patch to athaulers that will restore the items in the seats and trunk when the vehicle respawns - and maybe even making the despawn/respawn vehicle agnostic
its so overly complex and so much its like funny, a fun slap in the face when you realize there is a whole ass menu for your tempature and thermoregulation
meaning condition and the like will be lost?
the item itself will be lost
Nothing like trying to buld wooden walls/paint and plaster and spend 60% of the time in menus
hrm... but since recipes are ephemeral in nature, that doesn't matter
to recipes, that is
whatever that mod in here i saw that gave icons to context menu stuff
but okay, so items from lua is out
i actually like the ui too
i think it's very consistent and usually easy to follow
there are specific elements i take issue with though
as for the athauler's item respawn, I imagine all of the condition and whatnot could be stored in modData
actually probably just the recipe menu
The only thin I really dont like is inventory, equipment, and containers
Its not bad when youe playing casually. But when your setting something up for an elaborate game kr content it getts a bit much
so, like, 80% of the game? LOL
I wold prefer large icons, no text, let me hover for a tooltip. I should know what it is at a glance after the first day of playing for most things anyways.
i think the inventory could do better with some changes too just because I don't need to scroll past my thousands of cigarettes to check which invisible item is currently in my hand
I mean... lol
i agree but theyd need to make alot more icons for every item
especially books
serialising an entire item is kind of a pain, there isn't an existing method or anything
my god could you imagine trying to find a book with no visible label?
should be fairly easy to truncate the entry to ... and, like, the first 5 or so of the item instances
challenge accepted. I suck at UI and graphics, so backend has to be my focus
1:1 map the item parameters, append the instance information, slap on a uuid, ship it to a table.
bind it to a vehicle serial
i know i do this coding stuff like everyday but everytime i hear someone use terms like that i feel like a real dumbass lol
append container name to the serial to pass on where the item should respawn
"put the thingy in the thingy"
first, you want to truncate/shorthand the UI. Now you want to blow it up. LMAO
we're a lot alike...
Ive been operating like this for years now. Ive created my own personal hell.
15 years of systems engineering until systems became code (puppet, ansible, terraform)
so, here I am
I've always done a fair bit of ruby (and when bash doesn't cut it, it's my go-to). But it's rare I've undertaken whole development projects
after years of telling myself i hate ui i've gotten to that point of writing my renderer and realised i'm actually really looking forward to writing the ui portion... just not actually designing the specific ui elements LOL
Im working on my own game from scratch. Wrote a banging UI system... loathe writing the actual UI still
only UI I like writing for is enlightenment - it's designed as if the devs were considering logistics first (which feels natural to me, and scales better). Everything else feels like a burdern
quartz was nice until apple closed-sourced it
UI an a game this ambitious is always going to be a monumental task. I dont blame them for taking this long.
Other aspects really needed attention first. But now it's getting to the point that UI really needs some love.
Im not certain... but I do know the way the UI works, and some of the API calls are sucpiciously similar to Dear ImGui.
Lmfao!
I love how we all managed to get a pretty cool convo going here besides the usual just ask answer ask answer 😄
I still can't believe that the 'no such mesh' and 'no such model' errors don't break anything...
Well it can't break what it can't load
it's the not loading...
Well it seems like there is a group of people who program because they like to program, lol.
I was supposed to go to bed hours ago because of it 
People who like to code and all are very passionate about the game.
That we keep taking the abuse knowing itll get better
know how many seratonin spikes I've gotten working on these fixes?
makes it all worth it
LMAO
Relatable
Aaaaye I just managed to optimize my mod covers folder from 6GB down to roughly 3.2GB 🥳
Really gotta organize sometimes
Ive got work in 4 hours :( and I only got 4 days left till my 4 month vacation.
Coding is not an addictive drug... i can quit anytime I want. I just dont want to.
I know, but it was the joke
Isn't that good?
Yeah me too
fair
I can quit anytime... aaaanytiime.
It is but I gotta close my company up.
Its the coding hyperfocus thats bad for my health
Been there
I wonder if groovy could be added to the stack...
Lately I've been enjoying more of life and being less of a workaholic
You mean the forget to eat for 12-14 hours and then wonder why you have a headache thing?
hrm....
That one!
Oh im closing for the just season. But im the only person left so its all on me
yup
no idea how anyone could think i'm not autistic
Aw that sucks 
You'll get through it!
autism is the human superpower, imo. It's what made us more than hairless apes
Hmm can autistic people recognize each other? 🤔
Story of my life. I just spent the past four days in a state of hyperfocus for Zomboid content I got planned when im done work.
Yeah, you find them herded together in modding channels in discord for games
My most ambitious project yet
I had no choice but to become outgoing, so...
Huh. I mean I don't see Albion as autistic. It is very hard to tell from online chat messages though lol
🤣 Hey I am on the higher end of the spectrum but I am not confirmed yet
my therapist told me I should do an evaluation. That was enough
ROFL
I have two friends with autism. I think they're great people and should be protected
I see them as normal. I hate when people make fun of them 
Im not autistic, I just get to damn passionate about my creative outlets sometimes.
man i know everything about the codebase and i have a my little pony profile picture what more do you need
I hate when people think I'm making fun of them when I'm extolling them
Hey that's more on the insanity side
i mean it was sebun for a bit
Yeah i mean... looking at all the profile pictures... everyoen kinda checks out 👀
Well yeah we all are crazy
Oh, well I forgot I changed mine.. was evil morty till yesterday
Mines a parody of the Canada Post symbol being the Mailman and all.
i thought it was cake
ROFL
it thought it was a slice of cake
Im just really into the postal service. never stops just like me
Omg I see it now
I thought it was a paper airplane
Fuck now I see it too
Well now I got a new hyper focus in the redesign.
with almost 400 mods:
root@apocrypha:/opt/zomboid-debug# egrep 'ERROR' Zomboid/Logs/*server.txt|wc -l
165
bows
Thanks I needed a another one
I will be adding a santa hat to it for the holidays
ooohhhh... Now that I have a working oven, I need to make cupcakes
and brownies
and maybe some of those chocolate chip cookie brownies
in my all-edges pan
😄
😮
How edgy
I'm a pizza cutter, baby. All edge, no point
Nah, if they are done right the edges are perfect for long term dunking in milk
thinkGeek still sells them if you want to add it to your christmas wishlist
and if you get high and leave them in to long, they turn to glass....
Well the edge pieces are the best like the tops of muffins
7 layer cookies if your feeling fancy
go straight to max difficulty
this demands a google search
omg... this is happening
butterscotch will be switched out for peanutbutter chips (can't stand butterscotch)
Brownies > marshmellow fluff > rice crispy treats (or peanut butter captn crunch treats are even better) > Raspebrry Pie filling, or sliced banans, covered with melted cholate chips and thrown in the freezer for abotu 15 mintues.
Thank me later
they look a bit weird but its 7 layers of sweet goodness
Lasagna dessert
and I love walnuts, but my kids don't, so...
omg its hilarious, this has nothing to do with mod development
pfft... we need our fuel
somebody throw that recipe into a mod real quick
UnhappinessChange = -1000
id be a cook for once in my life in this game if i could indulge in those sweets
Well now I may have to make a logo cake mod to remind myself
reminds me - I need to dig into evolved items stuff... if you put cooked chicken or beef into sapphs lasagna before cooking, it produces a cooked, but uncuttable, lasagna that makes you sick REAL quick
I had to admin-save a server denizen the other day for making lasagna the irl way
with setain, ffs - not even dangerous uncooked.
setain --(meat grinder) --> ground chicken
Oh wow you gave me a weapon to mess with my friend.
Or a good challenge can you gather enough lemon grass to survive in zomboid only eating lasagna
we run sprouts... grow all the lemongrass you want
i actually really enjoy the cooking
RIGHT!?!
i love periodically discovering new recipes that have been in the game literally the whole time
Lmao same
one of my server members, that's his primary enjoyment in-game is gathering the requirements for cooking recipes.
I armor up his vehicles, he bakes me cookies
fair trade
i desperately try to make my friends eat meals instead of ingredients 😭
I specialize in bulldozing zombies hoards with hammers while my friends are cooking and fighting tooth and nail to stay alive.
as much as i wanna say im no min maxer, i feel like there just isnt very much incentive at all to not eat like a raccoon all game instead of cooking lol
and its funny to rummage through peoples stuff and just eat it all
or bite into some raw vegetables because im too lazy
I eat the cans and slowly leave them in my friends room slowly so he doenst notice until theres so many of them.
everytime i make sure that after i eat a canned food in my base, i place it somewhere
so i can feel like a real trashy zombie apocalypse survivor
I do winter challenges to enjoy the slower parts of the game.
I t throw ky butts everywhere..
kentucky butts?
The mod is so inconvenient and annoying but its like a S tier for me
The auto smoke mod
ohhhhhhhhh
'No fire no party' as they say
unrelated i was so mad with my lack of geographic knowledge when i heard the ohio river in real life does NOT border OHIO!
my dumbass lives in ohio and i thought kentucky was below me because of this game lol
it QoLs the auto smole but adds the realism of butts being a byproduct of the trait
But its a toggle automatic option tou dont notice it
Oh thank god
untill people complaine
can you stuff into ash trays?
This is why I make easy stuff enabled by default
at least?
They have toggle options for toss on ground, Inventory? garbage can or ash tray
do you manually have to?
No
all auto matic unless have the auto for storing an inventory
Id rather take that aspect then having to manually smoke a cigarette for my crippling smokers anxiety
i wouldnt be apposed to it if i could feel like a cowboy flicking away ciggy butts
hey your vanilla crippling smoker at least knows how it is
smokes rare anymore
gotta smoke the WHOLE cigarrete
leave no butt behind
Nothing like playing with ridiculously rare and having nothing but 100 packs of cigarettes.
its realistic at least
Oh another thing though is tou can smoke the butts as well.
on the topic of qol
oh i know that mod now i played with it
i turned it off cuz i got sick of having filters
could i be the only person alive with autodrink disabled? 😅
and pulling out ciggys
why?
i need to know the basis for this
blasphemy
stand trial
i guess i dislike thirst management being a purely passive thing
i nearly always play with high thirst, too
okay i was joking before
maybe it's just a matter of immersion but i like having to actually drink
That can get annoying. Its like oh I see smoking a cigarette is more of a priority then loading your shotgun that you need for the hoard coming towards you.
yea at least autodrink has no animation
i can see that
but high thirst?
i played high thirst once
High thirst foe life
i just did not like hoarding so many bottles
Just like real life.
i gotta admit it does feel cool to pull open a fridge steal some drink when youve been out for awhile
and drink it right there
maybe i ought to try autodrink off
i consider high thirst basically free points
Same
you just have to carry two bottles and it's exactly the same
You carry two bottles and your good for a long time
thats 1.1 less weight room i have for all my thousands and thousands of nails
I only started running into issues when I was doing ridiculously rare run with atomic sun
i need my box of nails, my 3 weapons, gun, shotgun, im not sparing room for no hydration
Water sucks...shotgun shells are better
Drink your piss good for another block.
bear grylls knew what he was doing
water is way too easy to manage in general imo
just forget the hotel parts
well, I'm fading. gonna hit the sack. Hasta manana
i made water goes bad because of it but that only addresses the most significant issue
Same. Its been good time, Hope to see you all loitering here again soon.
i saw that, never occured to me that yea i guess water would get old and gross
grimy sinks
S tier mod for hardcore runs
it's probably too fast for that but i justify it with the walking corpses
really bothers me that the water shutoff is basically meaningless when every tap still has a whole reservoir of drinkable water in it
its realistic i thinkish
itd be funny to see a mod where dumb zombies fall into water barrels
contaminate the whole thing
i mean really corpse sickness as well should be soooo much worse
it's in the works...
oh no lol
really the zombies are already corpses, my guy should be vomiting from the horde alone
okay okay one last question
what do people here use for making custom animations if you know?
i really really want to make some but i just cant seem to get an answer on what the consensus on program to use is
i know zomboid uses some weird animation file types
i've always heard fragmotion but it's not my area
wow
this is ancient looking
alright thanks lol, hopefully i can finally get the vomit and door kick animations ive dreamed of
unfortunately the only guy i know of that's good with animations is a massive scumbag
no he's cool
okay good
i like his mods
yea i havent touched 3d animation but i know enough 2d that im confident enough i could figure it out
something i have a little more experience with is that pz's animation definitions use xml files
with things like conditions to trigger an animation and transitions between animations defined there
Yeah it's extremely annoying to make animations
The XMLs are mostly fine when you get the hang of it
But the animation itself just god
I almost drove monkey mad when I asked him if he could make me the bicycle idle animation
thats a bad sign
if i get in there and realize pretty quick its gonna take days just to frame by frame move the characters head over ill be out pretty quick lol
Well if you do succeed, I've always been interested in making a mod where you can bash doors open by sprinting towards them
heeyyyyy i already made that lol
YOU DID?
i just re use the bump animations
Shoowww
yea its not posted
Why not
ah shoot

We need this for yesterday
kay so
gameplay wise
feels great
but logistics i had no idea how to make it work
liek what happens if you charge into a locked door
should we open it or should you bounce off?
You know what mod I want yesterday. Every phone in the game has a phone number, and you can get it by looking at the phone while you are at it. Phones work till the power is off.... call phones to distract zombies
well wouldnt that be annoying because in vanilla full sprinting into a door you dont usually die from headcrackage
and you have NO WAY to tell if a door is gonna be locked
also visually
doors open the same way, every time
so you charge into a door this way and it magically opens your end
also i couldnt figure out tripping at the time but i figured that out so i guess i could finish it
thats actually pretty cool
It has MP use as well
dont think thatd be tooooo hard besides calling a phone in an unloaded area
Ah shame. I hope you can get it finished!
Calling payphones.. get some people to meet you somewhere, around some payphones, and call the phones to bring in the hordes
doing it in an unloaded area would ring the phone like normal on your end, but do nothing otherwise... its not a loaded around... no ones there so who cares
my brain was having a hard time deciding what that consistnecy should be lol
Consitently inconsitent is consitency
But how do you know where to get the other phones to ring to
You're gonna check every square in the world?
well if sprinting into locked doors opens them, locked doors don't exist
You would have to scan on map starup or game startup, whatever, for the specific phone tiles
Give each one a unique phone number, and store it and the phones location
Oh you mean those fixed ones? I thought you meant the mobile phones
Those to, even cooler cause its portable zombie attractor
and reasonable could work after the power goes out.
Yeah but those can be moved around
Sounds like an extreme headache just to check which place has a phone lol
Hmm, yeah im thinking it threw, mobiles could ge tmessy
why craft a noise maker
could jsut not do mobile "sateliites are overloaded" but the hardlines still work cause they go through the switchboards
i mean the engineering stuff is kind of a waste of time as is
but at least it's technically not obsolete yet
I guess I could make a functional electronics mod
Yeah I think just skip mobiles, or they can only call out to landlines but no calls in...
heres a vid
landlines would be cool
Love it!
you can actually justify the vast majority of numbers doing nothing as knox country has been cutoff
dang well now i gotta finish this
exactly, and you can have them ring on the players end, they just dont do jack, and the only way to really make use of it is to check a phoen for its number, and write it down
actually that can justify mobile phones not working either
Yeah it sounds fun but ultimately it'd be much more of a fun little detail than functional gameplay mechanic
okay if you make phones, you need a phone book
Yeah thats what im thinking, satellites are jammed / overloaded
if they've cut off communications it's not like they're going to filter specifically for outside traffic
I dont know, I think it could have PVP purposes... use phones to draw in hordes
landlines stay connected inherently, satellites don't
Think about it, you could have one person sagely keeping a zone loaded, and if you know all the numbers down a street, you could lead a horde
how would you know which number goes to which one?
Don't think there's enough phone sprites for that
or have a meetup somewher you know the numbers at and its a trap
And you need a player nearby anyways
You have to goto the phone, and its a context menu, check phone number
ohhhhhh
pay phones had a code you could dial to get its number back then
so setup beforehand
I forget what it was, but it was a thing
it'd be niche but honestly sick and i don't think it'd be too useless
Could even maybe make a phone book item thats super rare spawn places
and it has some numbers in it for stores in the area
but i suppose you would need to gen that on the fly... or people would know the numerbs ahead of time and be lame.... and we already covered cant do items on the fly so idk
rather than thinking of it as 'there's barely any phones' it's more like you have a special trick you have any time you do see one
good idea would be to spawn flyers around the world for like schools or churchs
and list the phone numbers
so you could call them lol
you wouldn't need to do the item on the fly, you can edit properties pretty much freely so long as the item does exist from a script
oh sweet. Yeah phone book item would be cool. It would be somethin to look for with a cool use. Not vital, but cool.
Like you jsut got the master key to a bunch of phones
but yeah i don't think you could predetermine every phone number
at least without making assumptions
nah, just fo like a handful of them
that assumption being vanilla map and that it hasn't been updated
or, if you want to avoid the map scna on startup, a phone doesnt get assigned a number till you go check it
why not decide the phone number based off something that doesnt likely to change?
like the position on the map?
so itd be the same for every mod
even map mods
yeah could create some position to phone number lookup... the only "downside" to that is, once you know a number.. you know it
no reason to go there in game first, or find the phone book
Yeah, but if the math is based of something that is the same on every play through, like map position, the phone number will always be the same
i dont think thats a bad thing if the phone number is the same, if the house is the same
So the first time I go ther ever, i get it, write it down, and now I never need to go there to get it again... on any playthrough
yeah, maybe an option. I could see people wanting it both ways
i would prefer random per game
I need more reasons to go out an explore
But yeah... this idea is on my "todo list", but if someone wants to make it first, go right ahead... my todo list is long
i mean we cant solve the problem either that despite the player being a "new survivor" they somehow know how to stitch their wounds, and exactly what to do when power shuts off, and where to find all the gun stores in the game lol
Im working on that...
well that last part...
I am working on a fully procedural world generator
psffffh random generation?
goodddd luckkkkkkkkkk
itd be really awesome to see
but that is a monumental task
Procedural generation is my jam. I have all the code to do it already
Im just spending time making a UI and having it export to PZ code and use its tileset
This is the screen for one of the terrain generation modifiers you can use when creating your setup.
huh
To start im gonna jsut do procedural placement, and a handful of buildigns I have, but then full procedural buildings
Nah