#mod_development

1 messages · Page 398 of 1

upper bough
#

let me dig up my code really quickly

placid delta
#

could you reference me the mod where you do this so i can look at it

pine vigil
#

I just remember some big kerfluffle over some IO class that was used causing concerns and ultimately being disabled.

upper bough
#

I'll send you the files, just finding them quickly. just a few .lua files

#

@pine vigil might have been me, if it was about it spamming the hard disk.

pine vigil
#

Maybe, this was during my time of being a community member, not a dev. Not even a moderator! Was quite a while ago. So details in my mind are fuzzy.

upper bough
#
CheatCoreCM.readFile = function(modID, fileName)
    local fileTable = {}
    local readFile = getModFileReader(modID, fileName, true)
    local scanLine = readFile:readLine()
    while scanLine do
        fileTable[#fileTable+1] = scanLine
        scanLine = readFile:readLine()
        if not scanLine then break end
    end
    readFile:close()
    return fileTable
end
    local writeFile = getModFileWriter(modID, fileName, true, false)
    for i = 1,#tableToWrite do
        writeFile:write(tableToWrite[i].."\r\n");
    end
    writeFile:close();
end
#

for reading and writing

#

you have to scan each line of the file individually

placid delta
#

so tables in and tables out. looks good

upper bough
#

yup

#

keep in mind you have to read and write each line separately, or at least that's what worked for me.

placid delta
#

oh i see

#

i have tables within tables so

#

gonna need nested loop

upper bough
#

it might still be possible, might need a lot of icky iterators though

placid delta
#

or serialize it into one line before saving

upper bough
#

I think line breaks work when writing, not sure

#

yeah you can

stuck kayak
#

it works but windows is \r\n while mac is \n

upper bough
#

\n worked fine for me and I'm on Windows.

stuck kayak
#

just that notepad display sux.

upper bough
#

lua's a rather high level language so there's probably a lot of sterilization involved, i.e it automatically converts newlines when it processes

stuck kayak
#

I usually serialize lua table into json before saving files. it works like a charm.

placid delta
#

getModFileWriter is returning nil. hmm what could be wrong

#

if (new File(filename).isAbsolute())) {
return null;

#

why i cant use absolute path?

pine vigil
#

Why would you want to use an Absolute path for a mod, that would be going to different file systems?

placid delta
#

i want to save in the save dir

upper bough
#

i don't think you can save outside of the mod's folder

placid delta
#

been using getSaveDir()

upper bough
#

you used to be able to, but security concerns stopped that. there's two file writers now, one for mods and one used internally for everything else

pine vigil
#

Hmm.

#

I could modify to accept the save dir, but I don't know how I feel about that.

placid delta
#

so where can i save? in mod dir?

pine vigil
#

In your mods dir, I would think so.

placid delta
#

or i dont specify path, just file name, and it goes there by default with getModFileWriter ()?

upper bough
#

you can specify a path but that path can only be within the mod folder

placid delta
#

though this will mean my mod can only support 1 active save at a time

upper bough
#

for example, by default getModFileWriter points to the root directory of the mod

#

you can specify another folder within that root directory, but that's it

#

@placid delta just curious, which mod is this for?

placid delta
#

right i suppose i could make a file structure within the writable mod folder

upper bough
#

maybe numbering the saves would work. I don't have PZ installed right now but perhaps you could iterate through getModFileWriter?

#

I'm thinking that it might have a :Size() attribute or somesuch

placid delta
#

but how to put some kind of identifier on a single player save

#

when you make a sp game, you give it a name. how to gat that name string?

upper bough
#

saves are timestamped right?

placid delta
#

ya by default its a timestamp thing

upper bough
#

I remember using a function to "stick" an identifier to a character, hang on

placid delta
#

getSaveName

#

in luautilities

upper bough
#

getPlayer():getModData() returns a table

pine vigil
#

Has a file parameter.

#

getModData would probably be the simplest way.

upper bough
#

just wondering, what's the identifier for?

pine vigil
#

But will get lost if the player dies no?

#

And they decided to continue the save.

#

So would need to account for that I think.

upper bough
#

hmm, good point

pine vigil
#

What identifier?

placid delta
#

getWorld():getWorld() actually reutns the name you choose when making a sp game

upper bough
#

just wondering, what is it this mod does?

placid delta
#

i guess you could call it Survivors 2.0?

#

gtg for a bit, thanks for the info

upper bough
#

kk

upper bough
#

getLatestSave() from LuaManager.Class works, it returns a table of the timestamp, difficulty and scenario. the timestamp doesn't change at all so you might be able to use that as an identifier

placid delta
#

it seems i got the saving working.

#

if io is disabled. then why does loadfile also have to be disabled

gilded orchid
pine vigil
#

Oh wow that looks cool.

kindred bear
#

ok just finished my first mod and it seems to be working

quaint nightBOT
astral junco
#

Why the game does not read my protected .luac format?( @pine vigil maybe you know?

#

With this format, scripts would load faster than usual

pine vigil
#

I don't know. Perhaps the game does not look for .luac files. Maybe kahlua doesn't support it. I don't know.

astral junco
#

@pine vigil
Yeah, as I understand it, the game only captures the .lua format, is there any chance that you will include .luac format? I'll be glad if you ask those who can add this) Compiled lua is much better than just lua, he gives a little protection and reading goes much faster

ashen fern
#

I think the coolest part of having indie devs that are near the community is that people can make suggestions like this, for better or worse

dark peak
#

The update is out. Farmoid now has plant pots and 2 new traits!

placid delta
#

.mod Farmoid

quaint nightBOT
#

@placid delta

Project Farmoid by Kurogo
Top Rated Rank #76
Total unique visitors: 18862
Total unique subscribers: 9379
Total favorites: 118

Expanding the farming in Project Zomboid with new farming methods and traits!

Workshop ID: 605729572
Mod ID: Farmoid08...

placid delta
#

.modder kurogo

quaint nightBOT
#

@placid delta

Modder kurogo Ranked #64 in Total Subscribers
Has published a total of 1 Mod(s)
With a total of 9379 Subcribers
And a total of 18862 Visitors
And a total of 118 Favorites

kurogo's top ranking mod Project Farmoid is ranked #76 with:
4/5 Stars
Total unique subscribers: 9379
Total unique visitors: 18862
Total favorites: 118

dark peak
#

Oooo! I'm #76? 😄

#

Or rather, my mod is 76, sweet I'm 64. /fistpump

astral junco
#

Who can tell me how to find out what kind of beard and hair I have now? 😁

scenic sigil
placid delta
#

anyone know if OnGameStart triggers beefore or after surrounding gridsquares are loaded?

placid delta
#

I need event that triggers sometime after game save selected but before any gridsquares are loaded

astral junco
#

@placid delta I think it works right after clicking "start the game." In the priority, your script will be launched earlier than the grid

#

@scenic sigil Спасибо)

#

зачем их так много, или один из них не официальный?)

scenic sigil
#

другой старый, другой новый

astral junco
#

Все нашел, getHairSprite()

#

только бороду не могу найти

placid delta
#

OnGameStart does not seem to be triggering before gridsquares are loaded

static minnow
#

does setDrag() not work anymore? I'm using getCell():setDrag(variable, player) and I keep getting a callframe error at the setDrag part.

quaint nightBOT
#
There has been a new Mod Published!
placid delta
#

anyone know what the bx and by fields in IsoMovingObject are for? are they like screen relative coords or something?

placid delta
#

nvm figured it out

static minnow
#

What was it used for?

placid delta
#

haha well i didnt figure THAT out, but i figured out what i was trying to do at the time i was wondering

#

if that makes sence

static minnow
#

ahhh, ok

#

Yeah, it makes perfect sense, lmao

placid delta
#

bc my error in the end did not have anything to do with that, though i thought it did

static minnow
#

Dude that's hilarious

#

Does it apply to Zombies too or just survivors?

placid delta
#

it happens sometimes randomly after loading a IsoPlayer from a save file (IsoPlayer:load). can any provide insight as to why this might happen? maybe @inland gull

#

as you can see, it does not happen to all the IsoPlayers on the screen. just some randomly. but often

#

setting clothes, pants and weapon to nil and re setting can correct the models as the refresh from the re-equip but not always and no way to detect whether its screwed up like that or not so dont know how many times to refresh

placid delta
#

This is with current si build btw

static minnow
#

Anyone have any clues why ```require "BuildingObjects/ISBuildingObject"

Name = ISBuildingObject:derive("Name");```
is suddenly throwing up a fatal error whenever I launch PZ?

inland gull
#

@placid delta is it in vehicles build or current public?

cursive roost
#

@inland gull he said si build

inland gull
#

ah... never had this then 😄

placid delta
#

even if i force them all to be naked. their facial hair floats in front of them

static minnow
#

I would 100% use that mod just for the giggles.

placid delta
#

the buzz from giggles disappears after a few minutes and then its just annoying ...

#

the model glitch is triggered by using setPrimaryHandItem()

placid delta
quaint nightBOT
#
There has been a new Mod Published!
placid delta
#

ISInventoryTransferAction always ask for src and destination Itemcontainer objects. in the case of a WorldItem object that is on the floor. What is the source container? how do you get the container object? if an item is on the ground then IventoryItem:getCOntaier() just returns nil

pine vigil
#

ISInventoryPage.floorContainer seems to have something to do with it.

#

I notice in the code it has a ISInventoryPage.floorContainer[player + 1] which, I'm not entirely sure the purpose of.

#

But ISInventoryPage.floorContainer seems to be the world container. If you go to the ISInventoryPane.lua and look at how the game handles, item dropping. That might help.

placid delta
#

it seems like the floor container only exists in a temporary state when a real local player is hover near by that square. otherwise it does not exist. so that wont work for my purposes. i'll just stick to my make shift method than. would have been nice if i could have used the ISInventoryTransferAction though

nimble spoke
#

@dark peak Did you use my compatibility system?

quaint nightBOT
#
There has been a new Mod Published!
placid delta
quaint nightBOT
placid delta
#

horray, i figured out how to put settings and key bindings in the real main menu:

pine vigil
#

If I could get back to my modding stuff, maybe I can finish off that ability to add custom keys easily.

kindred bear
#

The Log Wall Upgrade mod that makes log walls unable to be destroyed by zombies is now compatible with the Log Wall Gates mod thanks to nolanritchie.

keen tangle
#

Awesome, I've never made a big base that needed much defending but having the walls break sounds annoying

placid delta
#

ya bunch of sissies, fraid of a few broken walls and zombies

#

Connal there is this "overrideAnimation" bool thing in IsoPlayer. it will be set to true if the current baseAction of a character has the overrideAnimation set to true. if so it ignores animation setting in player update and you can Play an animation over it.
if you guys made that overrideAnimation set able as part of the class and if true do not calculate it just skip animation handle.

then i could set run animations while path finding....which is something i need to do

#

or just add another bool into isoplayer class like forceOverideAnimations and add it as an "or" condition.

placid delta
#

oops forgot the tag @pine vigil

deep lichen
#

Is there a mod list that anyone would recommend?

placid delta
#

yes but what kind of mod are you looking for.? there so many different kinds

deep lichen
#

The most commonly used and which are most recommended for them.

placid delta
#

but if you are using vehicles build you should be a bit more carfull of what you enable.

#

i wouldnt use hydrocraft with it

deep lichen
#

Hmm

keen tangle
#

I just started modding, and I gotta say the basic tools are really well done 👌 very simple to get into

#

I'm trying to figure out how to make a recipe require a certain level in a skill, and am also wondering if it's possible to make a recipe change a character's stats directly (crafting something makes you anxious/sad/etc)

nimble spoke
#

@pine vigil I wanted to report that I made additional tests and with a few changes the blacksmith code is playable, with the exception of the crash when items melt, that seems to be linked to XP. My suggestion is to simply comment that part in BSFurnace.class so melting items no longer gives XP

#

I have moved all XP rewards and requirements from the unused skill to Metalworking

pine vigil
#

Oh shit yeah, sorry I been a bit distracted. Remind me Monday and I'll probably do it there and then.

nimble spoke
#

No problem, I'll remind you

#

@keen tangle add a line to your recipe, for example ->

#

SkillRequired:MetalWelding=2,

keen tangle
#

ok, thanks! I should probably be using something other than the crafting system to affect moodles

nimble spoke
#

which moodles are you changing?

keen tangle
#

I want to add stress/boredom/unhappiness when the item is crafted

nimble spoke
#

Makes sense, some crafting hobbies can be relaxing

placid delta
#

You can do that pretty easy just as an OnCreate lua function to the recipe and in that function you can get and alter the stats like Bordem and happiness

keen tangle
#

ok, awesome! I don't see it on the lua event list wiki page, but I assume that's outdated

quaint nightBOT
nimble spoke
#

@keen tangle You dont need an event, the recipe calls the function directly.

pine vigil
#

That lua event wiki list is up to date, as Soul Filcher points out, it's a property in recipe creations not a standalone lua event, hence why it's not listed there.

placid delta
#

is there a way I can specify the order in which lua files in a mod are loaded. or at least just load one before another certain one?

static minnow
#

Doesn't require "name-of-lua-here" do that?

placid delta
#

tried that it doesnt seem to work.

static minnow
#

Are you getting a severe error when you try to boot the game?

placid delta
#

I might nit be doing the require right

#

in relation to what directory do i include? do i put ".lua" on the end?

static minnow
#

Depends on the hierarchy of folders you have, but if it's both in the "base" level (i.e. Client > Lua file here or Server > lua file here) should just be '''require "Name of Lua File Here"'''

#

I'm on mobile so no clue if that code block markup worked for Discord, lol

placid delta
#

both files in same dir

static minnow
#

Should just be require "nameoflua" then.

#

No need for .lua at the end

#

I know pz loads luas alphabetically, so if all else fails you could just rename the one you want to load first something different.

placid delta
#

sorry there was error in the one file, causing it not to load. for some reason i thought it was a loading order thing

static minnow
#

Those're always the best errors, lol

placid delta
astral junco
#

what about the .luac file?

placid delta
#

@pine vigil I'm not sure if your the right person to ask but you the one online so hehe. I want to make a small edit request to IsoPlayer.class. I'm sure anyone who takes a look at it will agree it will not interfere with anything. Anyway this is the request:

// add this to IsoPlayer class
private boolean forceOverrideAnim = false;

public boolean isForceOverrideAnim()
{
return this.forceOverrideAnim
}

public void setForceOverrideAnim(boolean newForceOverrideAnim)
{
this.forceOverrideAnim = newForceOverrideAnim;
}

/*
then change line 4102 from this:
if (!overrideAnimation) {

to this:
if (!overrideAnimation) and (!isForceOverrideAnim()) {

*/
purpose is to basically disable / stop the animations being played in IsoPlayer.update()

pine vigil
#

I'll think about it.

nimble spoke
#

We requesting dem java changes now huh? I could probably think of some evil laughter

pine vigil
#

@nimble spoke Instead of commenting out the XP issue, I have endeavoured to fix it. So hopefully it will be fine in the next update, if not I will comment out the line instead.

#

@placid delta I have implemented your request into the game, should appear in the next update.

placid delta
#

Wow thanks. Err next update of SI? Or vehicle?

#

Btw I hope you noticed the semi colon I forgot in the code I sent you

pine vigil
#

I did, I didn't just copy and paste the code 😉

#

Whichever comes out first I suppose.

nimble spoke
#

@pine vigil What was your change to it?

pine vigil
#

Did a check to try to stop the nullpointerexception.

nimble spoke
#

Sounds good

stuck kayak
#

@placid delta the file name matters if you want to load it first than the other one.

nimble spoke
#

@pine vigil I'd like to request a change, right now the furnace sprites to not have collision, but anvils and metal drums do.

pine vigil
#

Okay, but I wouldn't hold your breath I got other stuff I need to work on.

nimble spoke
#

No problem, it is more of a detail than a requirement

placid delta
#

There was some mention in a mondoid about changing the path finding system to something more efficient or something right?

feral eagle
#

Sounds interesting, now I'm curious how that'd work since the zombies are already pretty basic with their navigation, haven't observed any complex maneuvers. 🤔

placid delta
#

odd, i made this button in a window, and its greyed out like its disabled, and doesnt work.

placid delta
#

anyone know why a button would be greyed out and disabled even though iv put setEnabled to true???

upper bough
#

post a snippet of the code

#

from what i remember setenabled isn't necessary, I think buttons are enabled by default

placid delta
#

MyCallButton = ISButton:new(50, 400, 75, 25, "Call", nil, CallButtonPressed);

MyCallButton:setVisible(true);
MyCallButton:setEnable(true);
MyCallButton:initialise();
--PVPButton.textureColor.r = 255;
self:addChild(MyCallButton)
--MyCallButton:addToUIManager();


self.HomeWindow = ISRichTextPanel:new(0, 16, 375, 455);
self.HomeWindow:initialise();
self.HomeWindow.autosetheight = false
self.HomeWindow:ignoreHeightChange()
self:addChild(self.HomeWindow)

    ISCollapsableWindow.createChildren(self);
#

the button shows in the window which it is a child to just fine, like the ISRuchTextPanel.

#

but the button is slightly greyed out and un usable.

#

setting it to setEnabled(false) makes it even darker greyed out then it is without so its not that

#

my CallButtonPressed function is defined above it.

#

yet the button is slightly greyed out and unusable

placid delta
#

if i remove the "addChild" line from my button, my button appears on main screen (obviously) but it works there!

#

as soon as i put my button into a window it stops working.....

placid delta
#

I know what it is, my rich text area must be covering the button making it in clickable

upper bough
#

try calling self:addchild(self.MyCallButton) after self:addChild(self.HomeWindow), so it's added after the rich text area

placid delta
#

that'd prolly work but i'll adjust the size of my text area so its not overlapping the button

placid delta
#

@pine vigil do you know if LuaEventManager.triggerEvent starts another thread to run the functions added to the event? or does it just run the added functions one by one and then continue past the LuaEventManager.triggerEvent line after they are done?

#

i tried to check myself but my decompiler could not handle this part of the code

cursive roost
#

@placid delta 99% sure that triggerEvent does run in the Main thread

#

as evidenced by the fact that triggerend OnLoadGridSquare causes my game to hang if I do too much in there

placid delta
#

thats what I wanted to hear, good

pine vigil
#

@placid delta You here?

placid delta
#

yep

pine vigil
#

noDamage part of IsoMovingObject, that IsoGameCharacter extends.

#

I have moved the check of the variable to below the OnCharacterHitCharacter trigger. So set noDamage to true on the character you want to negate damage on.

placid delta
#

there is no set method for that

pine vigil
#

One second.

placid delta
#

and I need to know who hit who, before I decide to set noDamage or not. which is why i thought to put in the IsoGameCharacter.Hit()

pine vigil
#

Yes, but the hit does a check on noDamage var to see if damage should be applied AT IsoGameCharacter.Hit().

#

This will accomplish the same thing, it's just not bringing too much new code in.

placid delta
#

but its calculated before the LuaEventManger.triggerEvent(OnWeaponHitCharacter

pine vigil
#

"I have moved the check of the variable to below the OnCharacterHitCharacter trigger."

#

Should say OnWeaponHitCharacter rather.

#

God there's got to be a way to access a public variable in this messed up lua without any fancy stuff.

placid delta
#

cant set it even if its public, need a set method

pine vigil
#

What a ball ache.

placid delta
#

i found that odd too

#

but if i can set the MovingObject.noDamage and if the event happens before the checking of noDamage. i agree that sounds like it will work for what i need

pine vigil
#

Okay, it's done.

placid delta
#

Thanks, I look forward to it. Group vs Group pvp battles can maybe actually have survivors, instead of everyone dies

nimble spoke
#

"God there's got to be a way to access a public variable in this messed up lua without any fancy stuff." Couldn't agree more

pine vigil
#

Probably won't be out in the next build, so would expect it next week I think.

#

Seems remarkably silly if there really isn't.

placid delta
#

the animation override works as expected, i was able to make a player use sprinting animation while pathfinding.

pine vigil
#

Coolio.

#

I expect bribes here on out for code changes 😛

placid delta
#

good thing mine are already in then.

#

you could use this to make a "Run to" timed action to go along with the "Walk to" on right click timed action. would be a nice little add on to base game i suppose.

pine vigil
#

Damn, thwarted!

nimble spoke
#

lol

#

You tell Turbo I need a way to detect snow on a tile, we talk about payment

#

[spoiler]I'll pay with a snowman in pz[/spoiler]

stuck kayak
#

"God there's got to be a way to access a public variable in this messed up lua without any fancy stuff."

I remember I could get public variable without the get method when I was trying to dump all the traits in-game.

pine vigil
#

I know the kahlua tables must store variables, because when there's an error it dumps all the variables and it's value in the debugger. Wonder if you could set them as well.

nimble spoke
#

I hope you guys make progress in that direction, it is kind of sad checking these variables and being unable to work with them

keen tangle
#

@nimble spoke not just snowmen, but snowforts and snowballs

#

also I'd love to shovel the blood-covered snow off my driveway lol

nimble spoke
#

@keen tangle Snowballs are pretty much finished, just waiting for that "small detail" and you will be able to fill buckets with snow

quaint nightBOT
#
There has been a new Mod Published!
quaint nightBOT
#
There has been a new Mod Published!
quaint nightBOT
placid delta
quaint nightBOT
astral junco
#

🙄

#

@pine vigil Will the .luac format be added?

cursive roost
#

@astral junco no

#

luajava doesn't support it

#

also, with luac, there's no telling what a mod actually does

white sun
#

Hi there, I'm attempting to create a Modpack as one file for users of my server to easily download. I have seen other servers do this but unfortunately I am not sure what I would have to do to create one, and publish it on the steam workshop with the workshop ID for me to use. Any help would be appreciated, thanks.

clear slate
#

Locate your workshop folder where it has all the downloaded workshop items on your pc. then merge them all in one folder? Change the mod file. (name/auithor/info...) then start game . Upload to workshop? Then use that mod? Never made a pack myself but thats how i would do it. @white sun

white sun
#

@clear slate Thanks for the help man, it helps.

clear slate
#

If you still have no luck. Just pm me or ask further info in this channel. I'll try and answer what I know.

white sun
#

thanks for the help

clear slate
#

np

quaint nightBOT
quaint nightBOT
dark peak
nimble spoke
#

@dark peak Ecellent choice!

dark peak
#

@nimble spoke Thanks!

placid delta
#

notes as in notes people wrote and left lying around?

#

"image" notes. okay

#

spawning on the floor randomly and or in certain spots ok?

#

yes

#

you can probably just use the normal item loot table or w/e its called to set spawn locations then. though it would not spawn on floor if thats all you do

#

just in container types you choose in rooms types you choose

#

like how most mods define where thier added items spawn: eg
table.insert(SuburbsDistributions["gunstore"]["locker"].items, "Silencer.Silencer");
table.insert(SuburbsDistributions["gunstore"]["locker"].items, 10);

#

and you'll need to make a GUI window, to load and show your images in

#

and then add your Read option to inventory context menu. or a simpler way might be making recipies called "Read" which return the same result as the ingredient which call a OnCreate function that opens your GUI window

#

if i recall correctly. it has an Examin Armor "recipe" which sets text to a window, then makes it visible. which would be almost exactly what your "Read" recipie would need

#

though you would be setting image, not text

nimble spoke
#

Making it a recipe is the cheap way out, it should really be a context menu option

#

The thing with using loot tables is that you can't control how many will be spawned. If you set a high enough chance all the desks will have a copy, if it isn't high enough the item may not spawn at all

#

If you want only one and force a spawn you should try something else

nimble spoke
#

If you never did it that's not a surprise

#

First you need to set up your item

nimble spoke
#

no problem, let me know if you get stuck with anything

pine vigil
#

Best of luck @drifting ore and if you need help we're always here. 😃

#

Join us in the cool modders club.

stuck kayak
#

Modding ISChat sure looks fun. Oh not really. I have completely rewritten it so that I could nerf the whisper/talk distances for more realism RP environment. A hack lots of fun to figure out the getPlayer():Say() distances is hardcoded when sending to other player.

nimble spoke
#

@pine vigil I still got the nullpointer bug

pine vigil
#

Bummer.

#

Guess I'll just remove the line that.

nimble spoke
#

yeah, the lines that give xp to melting

pine vigil
#

Was kind of hoping it wouldn't be necessary but.... ¯_(ツ)_/¯

nimble spoke
#

Hit it with the ban hammer! Or in this case the delete button

placid delta
#

@pine vigil did you forget about my avoidDamage thing>? or is it still in the Q

nimble spoke
#

Does anyone know where/what controls dropping a generator? Like it isnt an item on the ground but the actual world object

pine vigil
#

@placid delta Some more pressing problems had to be dealt with, will probably be put in next week.

terse flame
#

dr cox is a g

kindred bear
#

can you get scratched hopping over a barbed wire fence

feral eagle
#

@kindred bear Yes, but the chance of that happening decreases as your Nimble skill increases.

kindred bear
#

ok was just curious

river plinth
#

don't know if it's the right place to ask, but does someone of you guys know why my jd-gui won't start anymore?

#

Exception in thread "main" java.lang.reflect.InaccessibleObjectException: Unable to make member of class sun.awt.X11.XToolkit accessible: module java.desktop does not export sun.awt.X11 to unnamed module @644baf4a

#

that's the error

#

@nimble spoke I think the placing of the generator is simply done by using this: self.character:getCurrentSquare():AddWorldInventoryItem(self.item,0,0,0);

#

found that in ISUnequipAction.lua

quasi geode
#

@river plinth what java version?

river plinth
#

tried running it with openJDK 8 and openJDK 9

#

worked like a charm, but all of a sudden it throws that error, think it's due to a openJDK 9 update 🤔

quasi geode
#

surprised its throwing it with 8

river plinth
#

yep, without it I can't really mod 😦

quasi geode
#

ya thats annoying...not finding any real solutions to the problem just technical reasons for the exception 😐

river plinth
#

I think the solution would be to uninstall openjdk 9, but I'm using it for a software project of mine -.-

quasi geode
#

maybe run it in a isolated enviornment instead? kinda a pain though

placid delta
#

anyone know if there is a way to highlight a gridsquare like container objects do when looking in them?

nimble spoke
#

@river plinth Yeah but that is also used for the zombie corpses. It simply creates the item on the ground, but the generator is somehow replaced by the world object

quasi geode
#

@placid delta yes, but I cant give the exact method, NecroForge does it for a number of its functions. Check the teleport brush code

tacit knoll
#

@kindred bear @feral eagle barbed wire fence damages and slow is a planned features.. not actaully work.
I launch a game to test this (as may last release add this) , but no, i climb barbed wire 200 times and no damages.
no working yet !

feral eagle
#

Planned!? It's in the game already! >.<

#

Physically anyways.

river plinth
#

@nimble spoke the generator is a own class file (IsoGenerator), can't check the source right now (jd-gui doesn't work), but that is the class that is handling the generator after it's a world object AFAIK

river plinth
#

first time modding in an item and I have some questions

#

the item I want to add is a cool box, so I copied the tote bag item but now I don't know how I should write the lua code in order to alter the behaviour of my new item (=> cool the items inside)

nimble spoke
#

That is something I'd like to know too, I have thought about making that item myself. I guess the best option is to look into the refrigerator code

quasi geode
#

i took a 5 minute crack at it a while back in a brief effort to fix HC's coolers but didnt have much luck and moved on...sure if someone figures it out Hydromancerx would probably be interested in knowing

short shell
#

checkout hydrocraft items, there is a cooler, take a peak at the code and you can se how they did it. I've never used the item, not sure if it cools, but I would also check out the refrigerator. I'm pretty sure it sounds like a simple option like refridgeratoreffictiveness = 1;

quasi geode
#

it doesnt work

nimble spoke
#

It isn't that simple because there is no functionality for cooling container items

#

I may try something tomorrow

quasi geode
#

i'm sure theres a way no matter how hackish lol...the ItemContainer class has a setCustomTemperature() method but i couldnt get it to work for cooling when i tried...that was about the extent of my effort though, didnt reall look at the java source for it at the time

kindred bear
#

would be nice if the barbed wire fence had a chance to scratch and have a chance to rip clothing

tacit knoll
#

scratch and slow is planned

#

but they focus on others things actually

river plinth
#

I think the sandbox option SandboxVars.FridgeFactor

#

would give some insight, but I can't look at the source 😫

river plinth
#

done 😄

#

will test some more and share the solution afterwards

river plinth
#

next thing thats bugging me: saving the state for each cooler if it's active or not

#

thought about using modData for this, but I don't know which event I should use to load back up the modData if my cooler item has one

placid delta
#

@quasi geode Quote: " yes, but I cant give the exact method, NecroForge does it for a number of its functions. Check the teleport brush code(edited)"

um sorry but im not so familliar with necro forge enough to know what the teleport bursh even means,. can you describe this function a little more for me so i can have a better idea of where to look in the code. searching for the words "teleport" and "brush" got me no where\

quasi geode
#

uh gimme a min i'll pop open NF and take a peek...the code in there can be a bit confusing due to the variable and function names (the code is pretty clean and well written otherwise though)...but in detail some of the brush functions highlight objects or tiles under the cursor...the teleport brush specifically highlights the tile under the cursor and teleports you there when you click

#

it looks like for IsoWorldInventoryObject its calling :setHighlightColor() and :setHighlighted(), havent found the grid squares yet though

#

oh i see...for IsoGridSquare its calliing :getFloor():setHighlightColor() and :setHighlighted()

#

easy enough 😄

cursive inlet
#

Is NecroForge's author in this Discord?

quasi geode
#

not sure..dont see him on the list, least not under the same name

cursive inlet
#

Oh ok

placid delta
#

thanks @quasi geode just what i needed, now i make a mark your base area function using this highlighted squares

quasi geode
#

np..actually had to look that one up myself for another project I want to do lol

quaint nightBOT
quasi geode
#

pft unimpressed with that one.... why people feel the need to modify and reupload orgm is beyond me..went to great length to make sure any aspect of orgm could be customized without people needing to upload whole new versions 😐

keen tangle
#

How easy is it to share customized features with others without reuploading? It might just be easiest for people to do which is why they do it, even though it's a horrible and disrespectful idea

quasi geode
#

just need to upload a mod that overwrites various aspects...for example he's disabled empty case ejects...all he had to do was in a lua file in his mod write ORGM.Settings.CasesEnabled = false

#

its not so much the disrespectfulness of it that annoys me, its that users will no longer get feature updates or bug fixes

#

and there are bugs in the current steam version that would have made it into his copy that I've already got fixed for the next upload

#

theres a perfect example of how easy it is..the New Dawn ORGM changes spawn settings and piles of other stuff without reuloading the whole thing

quasi geode
#

thats just me though...i cant stand when theres bugs in my code and users cant get fixes for them 😄

keen tangle
#

That's a perfectly reasonable thing to want, kudos for making it easy to customize. People will be people though or maybe he was just trying to do something quickly and didn't read the code well enough

quasi geode
#

Well if he had bothered to ask I would have gladly show him how..hell probably would have even written the patch changes myself for him would have only taken me a minute to do so lol

feral eagle
#

@quasi geode That earns you an Excellent Choice, but I'll put it a bit later to let your work bask in its momentary glory before it gets sucked up by the chat feed. 😉

quasi geode
#

lol doesn't seem like this chat moves to fast anyways 😄

pine vigil
#

@nimble spoke Line has been removed will come out in next build, whenever that might be.

#

Same goes for you @placid delta

#

You can use avoidDamage() and setDamage(boolean) on IsoGameCharacter and it will negate the hit.

#

Will also be reset on hit.

#

Checks after the weapon swing event so should work.

placid delta
#

Thank you. Could you also quickly just add a "get" method for HandWeapon.RunAnim

pine vigil
#

Do you change it or something? Because it always seems to be a String of value "Run"

#

Ah nevermind.

#

Done. That's going to be it for a bit, got some other things I need to work on.

nimble spoke
#

Thank you, the mod is basically waiting for that change to be uploaded.

upper bough
#

@quasi geode just curious, why not add a settings menu? might make it easier & more visible

#

the average steam workshop user usually doesn't read the description

quasi geode
#

because settings need to be controlled by the server for MP enviornments, not client side. I took a look at creating custom sandbox settings and trying to insert the orgm options there but it didnt seem like it was possible to define custom sandbox settings

nimble spoke
#

Connall has been working on that

#

to make it possible

quasi geode
#

ya I thought I had read somewhere that was being worked on, once its out I'll definatly be making use of that feature

placid delta
quasi geode
#

nice looks good, nice touch with the mouse dragging instead of using player position like is done with marking non-pvp zones

#

btw, undeniable.info is down atm, looks like the webserver isnt running, host is up but port is closed

placid delta
#

thanks, if i had paid attention to the security notifications that get sent to me via email i would have known that, but since i don't, I did not know that. i'll re boot it

quasi geode
#

lol

shy otter
#

Are most mods made with lua? Or are there any type of mods you can make with java?

quasi geode
#

most are done with lua, it can be done with java..the sledgehammer framework is a good example. though for the java it requires actually replacing some of the base game files instead of just using the mods folder

shy otter
#

Interesting, thanks. So I'm assuming the more "basic" type of mods can be made with lua. For Java, by replacing the base game files, does that mean you'd have to decompile them, rewrite it, recompile, etc?

quasi geode
#

Pretty much. but as for the lua, you can still do some pretty advanced stuff without resorting to hacking the java. And I'd assume the devs would frown on the whole decompile/recode and redistributing of the java aspects, but thats just a guess I can't speak for them.

shy otter
#

Thanks a lot, I'm probably gonna start fooling around with making stuff tonight

feral eagle
#

Make some good stuff!

nimble spoke
#

And some bad stuff, apocalypses always need more bad stuff

quasi geode
#

lol

placid delta
#

Like more negans?
Well apparently Negan is misunderstood and not so bad or at least that's what TWD serious is trying to convey these past some episodes

quasi geode
#

"I'm trying to save you! thats why I killed your friends!"

nimble spoke
#

Hmmm not exactly, I think we need more "events" we have those sounds and helicopter, we need more

#

We need "I stole your car dumbass", "You have a nice barbecue, now it is mine"

#

"shit that zombie is covered with barbed wire"

placid delta
#

I had this idea for massive horde migration. Maybe I should get on that as a mod.

feral eagle
#

O_O

quasi geode
#

going to add some evilness into a 'critical failure' table for ORGM at some point...ie: bullet stuck in the barrel, and someone firing the next shot.....or cleaning/repairing a gun when its loaded 😄

nimble spoke
#

lol

#

Zomboid is very predictable about things going wrong, we need chaos

quasi geode
#

definatly...i play pretty reckless and rarely die...need more surprises to keep me on my toes

placid delta
#

Well I hear you most mods make game easier not harder

nimble spoke
#

yeah, I want to be randomly ran over by a survivor in a van

#

maybe it doesn't even need to be a survivor, just make a car pass by really fast attracting zombies

quasi geode
#

random helicopter crashes on players 😃

nimble spoke
#

or dropping grenades/napalm on the horde.... and on you

quasi geode
#

lol

nimble spoke
#

blowing up a gas station should be a thing

#

or making bomb cars

quasi geode
#

that would be epic....random air strikes...hearing a fleet of f-16's approch and carpet bomb the town

placid delta
#

It be hard to make it clear as to what is going on or what happened. I can see the "bug" report now: "I was 6 months in and my base exploded for no reason"

quasi geode
#

lol

nimble spoke
#

lol

quasi geode
#

lol wonder how many suscribers we could get with a 'untimely death' mod...probably only the most hardcore players XD

#

tornados hitting players that base in the trailer park? lol

desert trench
#

The zombie herding sounds nifty tho, you go into westpoint and see no zombs, only to meet the herd when you go away.

cursive roost
#

:D

#

I have to admit to not having seen the movie

#

I read the book I think... two years ago?

#

and just finally sat down and did this :D

quaint nightBOT
cursive roost
#

WEIRD

#

.mod Ready Player

quaint nightBOT
#

I could not find any mods like "Ready Player"

cursive roost
#

tears out some hair

placid delta
#

gonna try making him re-index everytime he detects a new mod published

#

.mod ready player

quaint nightBOT
#

@placid delta

Ready Player One! by blindcoder
Top Rated Rank #479
Total unique visitors: 6
Total unique subscribers: 0
Total favorites: 1

Replaces the text 'This is how you died' with 'ready player One!'
Ratings:

Best mod in recent history!
-- LegitGamingReviews.scam

If this didn't exist, it'd have to be invented!
-- SomeStreamerYouNeverHeardOf

5/5 Stars!
-- A Gaming Website that doesn't rate in stars

Brilliantly bridges the gap between movies and games!
-- No One Ever

Workshop ID: 1352863443
Mod ID: bcReadyPlayerOne...

rocky lynx
#

@pine vigil, @inland gull
i have some problem with a code on the new IWBUMS build.
A distribution code...
How to add a new Category of furniture("displaycase") to existing internalroom to spawn a item?

In basegame Distributions:
restaurant = {
counter = {
rolls = 2,
items = {
"Book", 4,
"Book", 4,
"Pen", 4,
"Pencil", 4,
"BluePen", 3,
"RedPen", 3,
"Sparklers", 3,
"Aluminum", 1,
},
},

    shelves = {
        rolls = 2,
        items = {
            "PopBottle", 2,
            "Pop", 4,
            "Pop2", 4,
            "Pop3", 4,
            "Crisps", 2,
            "Crisps2", 2,
            "Crisps3", 2,
            "Crisps4", 2,
            "WhiskeyFull", 3,
        },
    },
},

ModdingCode
On 38.30 this works fine:
table.insert(SuburbsDistributions.restaurant, "displaycase")
SuburbsDistributions.restaurant["displaycase"] = {
rolls = 3,
items = {
"Base.Pizza", 5,
},
};

Now this give me that error on console:
java.lang.ClassCastException: java.lang.String cannot be cast to se.krka.kahlua.j2se.KahluaTableImpl
at zombie.inventory.ItemPickerJava.Parse(ItemPickerJava.java:132)
at zombie.iso.IsoWorld.init(IsoWorld.java:1770)
at zombie.gameStates.GameLoadingState$1.runInner(GameLoadingState.java:247)
at zombie.gameStates.GameLoadingState$1.run(GameLoadingState.java:220)
at java.lang.Thread.run(Thread.java:745)

rocky lynx
#

Solved!!!

quaint nightBOT
placid delta
#

.mod profession elite survivor (

quaint nightBOT
#

I could not find any mods like "profession elite survivor ("

cursive inlet
#

@rocky lynx java.lang.ClassCastException: java.lang.String cannot be cast to se.krka.kahlua.j2se.KahluaTableImpl

#

If the error is actually there

rocky lynx
#

that was solved

cursive inlet
#

Oh ok

rocky lynx
#

thanks!! 😄

cursive inlet
#

What was it? Just curious?

rocky lynx
#

need to link the function to distributionmerge event

#

Thanks!!!

cursive inlet
#

Np :)

drifting ore
#

can i change the nighttime darkness amount after i created my save? forgot to do it before i started again.

quaint nightBOT
quasi geode
#

sigh...time to add validation checks into the mod..that last orgm upload stripped out the changelog file with the credits in it, and links the TIS threads 😐

raven sluice
#

@quasi geode In the line of your 'random deaths' Gassy foods lead to loud... expulsions, that could attract attention.

desert trench
#

We should consider us thankful that they didnt add the need to poop or urinate.

quasi geode
#

i'm thinking more random mishaps..guns that accidentally blow up in your hand and such 😄

#

i really dont like such drastic measures, but seriously? credits removed? I post my code on github for anyone to use, but no one should be stripping ORMntMan's name out of there 😐

#

but w/e not going to rant when I can fix it from happening in the future

quaint nightBOT
feral eagle
#

@desert trench If that were implemented, this game could go on to call itself Project Simboid. All the other mechanics are essentially in place including pimping out your own house with furnishings looted from other buildings to add to your own. 😄

desert trench
#

But muh immersion!

quaint nightBOT
river plinth
#

any insight regarding my item problem? My cooler works, but after loading the save again the cooling effect is gone because I need some form of rechecking the container (my cooler works slightly different than the one from HC, the cooling efficiency is dependend of cool packs within the container)

onyx pasture
#

give example can write the "addvehicle" command with parameters?

#

I want to know what parameters are used in creating car

quasi geode
#

@river plinth I'm assuming the cooling method is being set using the 'client-side' files? I'm guessing its related to a similar issue i've noticed, calling some of the InventoryItem :set* methods losing sync between the client-side and server-side. I've called various :set methods from the server-side files when items spawn, and its good until the save is reloaded (in SP) or the player logs off & back on (in MP)

#

its also a issue with weapon attachments which is done entirely from the client-side files...for example if you attach a sling to a rifle, it reduces the weight..if you reload the save, the weapons weight is reset back to normal but the sling is still attached

#

I havent had the chance to properly investigate where the actual issue is happening (i should though, and file the bug report). ORGM solves the attachment issue by recalcuating the weight and other stats when the weapon is equipped in hand, which is kinda a hackish fix, I'd wanted to have it check containers as well to fix it, but using the LoadGridSquare event makes me cringe at the possible performance drag (parsing the grid for containers and checking inside each container)

#

really though I need to find exactly where that issue is and submit a proper bug report, the weapon attachment issue is quite nasty...if you pile on a bunch of attachments that modify the weight excesively, then reload the game and remove the attachments you can actually end up with weapons that have a negative weight value. 😐

river plinth
#

thought about the loadGridSquare too, but I too fear the performance impact and even with this, the cooling effect would only start when the container is loaded back in again

#

AFAIK the rotting of items is already calculated by then and would result in rotten food even if they are refridgerated in my box

quasi geode
#

even if it does work using the event thats really just a bandaid repairjob over something thats going wrong in the java files i suspect..either these custom properties arent getting properly saved and are getting reloaded from the original script item, or theres some desync between the client/server side..theres very few properties that actually seem to handle it properly, setDisplayName() is one, I havent had a issue with that...weight, tooltips, temperature (for clothing items), onehanded/twohanded requirements and a number of others all fail

quaint nightBOT
quaint nightBOT
spark crystal
#

I just saw that super survivors not only supports, but requires the vehicle build, and they work with it too.

Holy shit I can't wait to finish work tomorrow.

#

I wonder if there's any problems installing it mid play through, I'm in a happy place atm

quasi geode
#

should be fine i'd imagine, though it adds maps which are probably best done with new games

placid delta
#

@quasi geode ORGM legacy version seems to have the same ID as new version, thus cant enable one while disabling another

quasi geode
#

ya...it was done that way to not break compatability with other mods that check if 'ORGM' is loaded

placid delta
#

so there is no setting/option to make it go back to easy reloading on rechambered?

quasi geode
#

not really, easy reloading is bugged with its current implentation (not for orgm, but base game and all gun mods)

#

specifically, easy reloading always sets 'containsClip' to 1, even if theres no clip installed...if your playing on normal/hardcore, you can eject the magazine, switch to easy, equip the gun, go back to normal and eject another magazine

#

for MP servers that strictly control spawn rates this is a major problem

#

its also a problem for me when i get around to implementing addition magazine sizes and such...like that m249 LMG is supposed to beable to use the belts and a standard M16 mag IRL

placid delta
#

yes i read about the reasoning. but a setting for SP i thought might be there

quasi geode
#

there is a handy feature in the new version though that helps with reloading...new hotkey

#

find a empty magazine in your inventory and loads bullets into it

#

defaults to G

stark fable
#

cool feature, really neat

quasi geode
#

so dont need to actually dig through your inventory to find mags and to the whole right click > reload thing lol

placid delta
#

i got sick of reloading magz quite quickly

quasi geode
#

ya well me too...i end up having to reload like 10-15 magazines before leaving my safehouse to go on loot runs lol...the new hotkey really helps

#

just hit G, when its done reloading a mag hit G again and it reloads the next one XD

placid delta
#

how about option to make that auto find mag, auto reload thing work instantly and not as timed actions?

#

via manuually changing something from false to true in files, that way wont be usbale on servers MP

quasi geode
#

you could edit the ORGM.Settings.DefaultMagazineReoadTime to 0

#

actually sorry looks like it the lowest is limited to 1

#

but that still be almost instant lol

#

thats in shared/1LoadOrder/ORGMCore.lua

#

or you can just override it from pretty much any file really since its global

#

actually correction...not 'any file', it would have to occur before the magazines are registered with the core...so any file that has a name that starts with a value lower then 4 in alphabetcal order

#

such as 2MySettings.lua

#

or do something like: for k,v in pairs(ORGM.MagazineTable) do v.reloadTime = 0 end

#

but both those methods probably wont effect currently spawned mags since PZ records that in the ModData

#

I may add a simpler method later for those who perfer easy reloading but i'm not going to be pushing any updates for a little while...last one really changed the dynamics of how firearms work so i'm going to wait to see how it sits with the majory of users before the next updates so i know what areas to change XD

placid delta
#

dont think i even tried this newest verision yet. but i'll try the g key thing def

quasi geode
#

thats really coming along nicely

stark fable
quasi geode
#

too bad the pathfinding doesnt work in the stable version i cant properly test it out 😐

placid delta
#

i could change it to use getPath instead if getPath2 / setPath2 does not exist. But i think there will likely be other incompatibilities

#

pathFindBehavior2 accounts for cars, while the other does not

quasi geode
#

its probably better to stick to the new pathfinding, I can always manually change it, pretty damn simple to use a find and replace in all files

stark fable
#

would be good if you force them to stay at their "improvised" safe-houses, if they get out of food. And maybe they should take all the food from the houses, throw it at the safe-house containes and so go on.

#

So its no more 300kg of food on your base, only because it was in nearest houses.

placid delta
#

i dont really understand. you talking about the random survivors? or people in group?

stark fable
#

random ofc

placid delta
#

they do stay in there though

stark fable
#

they already have safe place, but leave it even if out offood.. Yeah?

placid delta
#

yes

#

@pine vigil can you look into the possibility of having "Walk to" pathfinding avoid fireplaces, so you don't walk through a fire just to do something or grab something via right click menu

pine vigil
#

@drifting ore Task to add perhaps?

terse flame
#

Why do some mods not support version checking?

quasi geode
#

checking of pz version or the mod version?

terse flame
#

Mod version

quasi geode
#
  1. sometimes its not needed, 2) some assume the workshop will handle that stuff seamlessly, 3) most modders arent actually coders or software devs...the list of reasons is actually pretty big lol
terse flame
#

It would make it easier for people to find errors

placid delta
#

i could do it, but id rather spend my time working on more features for the "soon to be public" build

quasi geode
#

orgm has a pretty robust version checking system in place...in truth i probably went overboard with it lol

#

but as nolan said sometimes it just takes time away from more imporant things, expecially when the mod is still fairly new or beta

terse flame
#

All good it just makes it easier to be a responsible mod user

placid delta
#

and when your coding something mainly for the fun of it (as i assume that is the reason most modders make mods) your likely to skip or not put much effort into the boring parts like support , as compared to when your working for a real job/client

spark crystal
#

@quasi geode are you orgm dev?

quasi geode
#

yep

spark crystal
#

And I gather you are Nolan Ritchie @placid delta

quasi geode
#

he is lol

spark crystal
#

Thanks, both of you. Many many hours enjoyed from your efforts ;)

#

Why not have the modding role here on the server?

quasi geode
#

lol glad you enjoy the mods

spark crystal
#

Also, I didn't know that about the quick reload options/issues. I was a few months deep on a save, and found I could duplicate mags / ammo, I was frustrated because I couldn't resist cheating :p

quasi geode
#

i think a modders role here might be alot of work for the poor team, constantly setting roles for people

terse flame
#

there are bots for that

#

.iam modder

spark crystal
#

The role already exists I thought

#

I'm on mobile, but I swear. It was already there

quasi geode
#

even if there was bot with a command for that, i'd be too lazy to run it <.<

spark crystal
#

I think I'm getting my servers mixed up anyway, now that I'm on PC, I can see there's is no modder role :p

placid delta
#

.top modders

quaint nightBOT
#

Top 10 modders with the most total # of subscribers:

#1 with total of 283685 subscribers is nolanritchie
#2 with total of 234441 subscribers is Svarog
#3 with total of 168514 subscribers is Hydromancerx
#4 with total of 107727 subscribers is ProjectSky
#5 with total of 106054 subscribers is ringod123
#6 with total of 100129 subscribers is Jaffaar
#7 with total of 86622 subscribers is XeonyX
#8 with total of 83843 subscribers is ethanwdp
#9 with total of 76967 subscribers is blindcoder
#10 with total of 76761 subscribers is ormtnman

quasi geode
#

thats pulling from the workshop i'm guessing?

placid delta
#

Not in real time but yes

quasi geode
#

awesome i get to dodge the list 😄

placid delta
#

.modder HydromancerX

quaint nightBOT
#

@placid delta

Modder HydromancerX Ranked #3 in Total Subscribers
Has published a total of 1 Mod(s)
With a total of 168514 Subcribers
And a total of 159904 Visitors
And a total of 2671 Favorites

HydromancerX's top ranking mod Hydrocraft is ranked #1 with:
0/5 Stars
Total unique subscribers: 168514
Total unique visitors: 159904
Total favorites: 2671

quasi geode
#

wouldnt make it anyways lol only 13000 suscribers since i took over orgm devel

placid delta
#

.mod orgm

quaint nightBOT
quasi geode
#

that rank is that by popularity or suscribers? always shows me that orgm is 5th most suscribed

drifting ore
#

I don't think there is even any other gun mods other than ORGM

#

if there is I haven't heard of them

#

wait, Blackbeard made a M4 mod

quasi geode
#

still need another 3000 to knock cheat menu off its spot

placid delta
#

.mod gun

drifting ore
#

Well

#

Okay then

quasi geode
#

theres a few...blackbeard has some individual guns up

#

most of the other gun mods are based off orgm's code

drifting ore
#

¯_(ツ)_/¯

quasi geode
#

well the old orgm anyways

drifting ore
#

What would be really cool is when animations come out and someone adds a ton of military gear

quasi geode
#

they're all outdated by far except maybe blackbeards ones (i havent looked at them)...none of the other gun mods are in active development anymore it seems

spark crystal
#

I'll have to check which one I'm using

#

I know I also use ORGM Gun Silencer mod

#

What's the most true/correct one I should be using Fen?

quasi geode
#

thats the official version..the workshop page isnt always up to date with the latest release though

#

it is atm though

#

which reminds me...i need to edit the thread on the TIS forums to show the current steam version number

#

if you were using another version though ben your saves might not be compatible with the official version..they probably wont be

spark crystal
#

I'm 95% sure that's the one I'm using

quasi geode
#

if your really curious can search the console.txt file for 'rechambered' and you'll see a line like:

#

1523310105331 ORGM.INFO: ORGM Rechambered Core Loaded v3.07-stable

spark crystal
#

@quasi geode Do you know if modding in custom/new moodlets is possible?

quasi geode
#

the moodle system is hardcoded in java, such as the types etc. BUT realistically it could be faked in lua if your sneaky about it

#

but really the new ones wouldnt be accessed using the normal methods and API calls, you'd have to design a whole new system...so it is possible but could be a real pain

#

really depends on how comfortable you are with lua and if you really to do that much pissing around for them XD

spark crystal
#

hmm

#

Yeah, I was hoping to be able to hook in to existing moodlets etc too

#

When you say fake it - to what extent do you mean?
Making like a whole 'custom' moodle system, that attempts to copy the UI/behaviour of the current one?

#

Was hoping for moodlets with progressing stages, the shaking when they are active/changed, all that stuff.

quasi geode
#

you can access the moodles classes api but alot of the effects are hardcoded, and the different moodle types are listed in a enum so cant really add new ones with the api

spark crystal
#

I see

quasi geode
#

depending on what the new ones are attempting to do it would be alot of hooking events...the drawing of the icons and the state changes (shaking etc) are java side so you'd have to simulate it

spark crystal
#

that in particular was the part I was hoping could be done without simulating it.

quasi geode
#

ya thats probably the more painful part of doing it

#

but it 'can' be done

spark crystal
#

That's alright, I could still pull off what I want to do, but just have it in some basic UI, I think.

#

From the sounds of it, I can hook in to variables like the players heat, clothes clean/bloody state, movement speed, surroundings, etc.

quasi geode
#

sure

spark crystal
#

With a context menu item on the player, to display this window, which would track a 'state' (the moodlet) and the associated values.

#

Or even a side menu option, similar to the spray paint mod.

quasi geode
#

personally i dont like coding the UI stuff I find PZ's system is a pain....but i dont like coding UI's anyways lol...most of the code i write is backend systems, frameworks and command line tools....stuff without any sort of UI lol

spark crystal
#

Ditto.

#

I've not coded in LUA before, personally.

#

I don't think I'll find it too difficult. From all accounts I've heard, it's like the 'laymans version' of languages.

quasi geode
#

whats your main language(s)?

spark crystal
#

C# is most preferred.

quasi geode
#

lua is pretty simple stuff, it took me 2h to learn all the keywords, syntax and built in modules

spark crystal
#

Also do some work in Java/JS/HTML/CSS/ASPX, etc. Mostly web based languages.

#

I'm gonna have a go at it tonight when I get home from work.

#

Are there any tools or guides , IDE's/plugins etc you can personally recommend?

quasi geode
#

there are some tricky points when your coming from other languages...concepts that are weird to get used to, but its all really simple

#

ah most of the time I just use notepad++ for it...if its something more serious then ZeroBrane is a good lua IDE

#

most of my background is perl (10+ years doing only perl), lots of python, lua, some C++ but i dont like that one lol

spark crystal
#

Not a fan of c++ either 😛

quasi geode
#

over 10 years of perl warped my mind...i've never fully recovered 😐

spark crystal
#

how about for PZ specifically? Any helpful documentation etc that you frequently reference?

#

I notice information is either very sparse, or very dated, or both.

quasi geode
#

uh well theres the online java docs...alot of the classes and methods are exposed to lua, but they are very outdated

#

honestly your best bet is to use JD-GUI or something similar and actually take a look at the current source code

#

besides being dated, the info in the online docs is really sparse

#

you'll just get class and method names, the arguments (and types) and return values

spark crystal
#

That'd be pretty good, to have a poke around in the source. good way to understand the inner happenings.

quasi geode
#

no actual info on what the methods are supposed to do

spark crystal
#

I've not used JD-GUI or anything similar before

#

And I'm not even that well versed in actual full java programs.
But with these tools, is it possible to modify those files, even if for personal use only?

#

For example, adding those moodlets in I mentioned before, and compiling it and seeing them in game?

quasi geode
#

JD-GUI isnt really a IDE, more like a decompiler and code viewer

#

you've have to use something else to actually recompile

#

eclipse maybe...idk really i avoid java like the plague

spark crystal
#

Likewise 😂
Eclipse is what I've used before, but from the sounds of it, it would be possible.

#

Not much point, really, but good to know these limits/abilities etc.

#

And this will surely be helpful for understanding how the code works, when working with the LUA.

quasi geode
#

ya

#

i dont even really like having java installed but i went ahead and did it so i could run JD-GUI because i got sick of looking at the outdated java docs online lol

#

its been pretty damn helpful in the long run though

spark crystal
#

Would you be down for a little light mentoring in helping me get on my feet with modding?
I (hope/think) should be able to find my way for the most part, Just wondering if you could set me some random sort of "task" - like right click X object, see if Y is in inventory, make survivor say Z -and evaluate how I've done said task

#

I dont mind if that's something you'd rather not do / have time for.

quasi geode
#

well i never mind giving advice or help...the random collection of tutorials i've created on the forums shows that....thinking of tasks though is probably not my area XD

twin granite
#

👀

quasi geode
#

plus you probably dont want me actually evalutating... i'm cynical as hell lol....but as i said always willing to give advice 😄

spark crystal
#

Alright, thanks 😃 I might take you up on that.

quasi geode
#

i'm also not the most experienced modder around, technically i'm still fairly newish (under a year with pz's code), but i do know lua pretty well...around 7 years working with it on and off (its not my main)

#

all this pz lua is screwing with my other code...tried to write some python stuff the other day kept trying to use 'if ... then' >.<

drifting ore
#

Is it possible for someone to add in static helicopters? Like a Bell UH-1 that spawns high grade loot inside it

placid delta
#

didnt Hydrocraft do that while back?

drifting ore
#

If It did, I wouldn't know, never heard of Hydrocraft until now

placid delta
#

.mod Hydrocraft

quaint nightBOT
#

@placid delta

Hydrocraft by Hydromancerx
Top Rated Rank #1
Total unique visitors: 159904
Total unique subscribers: 168514
Total favorites: 2671

Hydrocraft is a mod based around crafting and filling in the empty world of zomboid with more stuff. It is inspired by survival crafting games like Haven and Hearth. It is very much a WIP and will be tweaked and added onto. Please try it out and let me know if you find any bugs or have any suggestions/ideas.

For more details go here ...

http://theindiestone.com/forums/index.php/topic/11557-**Hydrocraft**-mod/

Workshop ID: 498441420
Mod ID: Hydrocraft...

drifting ore
#

Thanks

#

Hopefully the devs will add official static helicopters when vehicles are finished

placid delta
#

@quasi geode how can I check if a ORGM gun is fully automatic or not?

quasi geode
#

local data = ORGM.getFirearmData(itemType);

#

if data.selectFire is 0, its a select fire gun, in semi auto mode

#

if data.selectFIre is 1, its in full auto

#

also some arent always select fire.....data.alwaysFullAuto will be true or nil/false

#

er sorry....if you want a guns current select fire state, check the items ModData

#

but you'll want to check that ORGM.getFirearmData(itemType).alwaysFullAuto....thats not copied to mod data

#

select fire guns are usually full auto by default, so unless you've changed it can just use the same data returned by the function instead of the mod data

#

probably safer to check mod data at any rate

#

i probably should just code in a isFullAuto function that checks both

#

if item:getModData().selectFire == 1 or ORGM.getFirearmData(item:getType()).alwaysFullAuto then ..... end

#

there lol sorry i'm bit off my game today kinda distracted XD

placid delta
#

i dont really care if its set to full auto or not, just want to check if its "Capable" of full auto

quasi geode
#

ah ya ok then....local data = ORGM.getFirearmData(item:getType()); if data.selectFire or data.alwaysFullAuto then ..... end

#

that should do it

placid delta
#

all right. survivors shooting in full auto is fun

#

just took a group of 5 and massecured woodbury

quasi geode
#

lol

placid delta
#

i had casualties myself tho

#

wife included

quasi geode
#

hows the new damage ratio working out with the survivors?

#

i tweaked it more for the zombies requiring headshots, but the whole damage calculation vs Z's and vs IsoPlayers is completely different

#

so the survivors are probably taking a few more hits then they should

#

i did some brief testing with the old survivors mod probably not enough though

placid delta
#

i dont really notice any difference

quasi geode
#

all the guns that are select fire capable generally default to full btw...i didnt set any of them to default in semi mode

spark crystal
#

(I lost my wife last night. I was looting a Diner, and left the keys in the ignition of my car, Zombies surrounded it because of the noise, I tried to round them off / spread them out / etc, so I could get back to the car. Wife was lost in the process)

#

_A moment of silence for wife. 🙏 _

#

@placid delta I noticed one thing with survivors last night - I think it was in one of the tooltips for a command - but it said his or him or something like that.
Very minor thing, but suggest changing to they or their etc - as I'm quite sure my wife was female 😂

quasi geode
#

if the car was running, and she wasnt smart enough to drive off, your better off without her lol

placid delta
#

women dont know how to drive for real. only back seat driving

quasi geode
#

lol

drifting ore
#

Wait, ORGM works with Survivors?

#

And survivors get into cars?

quasi geode
#

mostly, the patch still needs some work, but i cant give the new survivors mod a proper test run so its kinda a pain for me atm to finish it

#

better i just leave it in a half finished and working state for now then keep working and have bugged patch lol

#

but if nolan's asking about how to check if something is full auto then he must be up to something XD

placid delta
#

@Richard Nixon#1273 if you set infinite ammo option On, then yes you can use cars build orgm and (super) survivors right now, and the will get in the cars when following u yes .

quasi geode
#

theres a command to give them ammo right? but its just not setup to give them orgm ammo?

#

or they dont loot it?

#

sry i havent poked around the code for the latest builds of the mods i got pretty distracted hammering out this whole orgm dynamic stats system

placid delta
#

There was an error or something when they equipped gun or ammo or something

quasi geode
#

hrm

placid delta
#

After they grabbed ammo and re equipped gun actually

#

I forget exactly but didn't I send u pm with the details while back?

quasi geode
#

damnit i might have to swap those pathfinding methods then to test

#

dont think so...i'll relook in our convo though

#

oh

#

But now when my survivors re-equip orgm guns they say this:
player:Say("Resetting this weapon to defaults due to ORGM changes. Ammo returned to inventory.")

And their ammo disappears from their persons.

placid delta
#

U dot have access to iwbums build?

quasi geode
#

no i got PZ through GOG

#

thats odd though they should only be saying that when the gun has actually changed, IE after a update...and the ammo should go to inventory

placid delta
#

So did I but I got a steam key converted free , there is some process for that. Was a while back tho

quasi geode
#

i tested that updating functions pretty heavy with the old survivors mod

#

and it was all good

placid delta
#

I'll try again sometime, maybe other bugs since fixed contributed to that result

quasi geode
#

also I had to change line 80 of ORGMClientFunctions to:
if(item:getContainer() ~= nil) then item:getContainer():setDrawDirty(true) end
because it was throwing error due to item:getContainer() being nil

#

you mentioned that as well...if that was throwing the error, and the container is nil that might have resulted in the loss of the ammo

#

i did tweak a few things on the updating function, i dont think i gave it a good testing again with the old survivors mod I probably should though

#

but i donno why they'd be triggering the update function in the first place when equipping...that really should only happen after some orgm updates where i've changed stats on that gun type

#

it may not trigger at all now though...that on equip event goes through a: if not player:isLocalPlayer() then return end

#

idk if that will return true with the survivors i havent checked

placid delta
#

The survivors are not "LocalPlayers" so it would be false

quasi geode
#

ya ok that should ignore the whole updating and unloading of the gun then

#

kinda a shame means survivors wont have the stat set if i do something like change magazine size or caliber on a specific gun...which may lead to other bugs later but thats pretty damn rare i make those changes

#

it should work as a good temp fix then...i'll find a more robust solution later

#

still wonder why it wasnt fetching the container for them...that kinda annoying

#

but if isLocalPlayer will return false then the patch should be working without the unlimited ammo now (i hope)

placid delta
#

I've had problem with item:getContainer being nil often, no idea why

#

I'll try it without infinit ammo again tomorrow

quasi geode
#

hrm...i may have to set it back to the old method of passing the container for player:getInventory()...which is what it used to do til i noticed there was a item:getContainer() lol

#

figured i'd save myself passing that extra argument to the function XD

#

as for converting the whole GOG into a steam key...as much as i cant wait to try out the vehicles branch of things, I'd really rather keep the GOG I'm not really a fan of steam

#

rather help support gog then valve which is why i got it there instead

#

plus this way we get to run one of the only 24/7 gog pz servers...theres only 2 of them and the other one is plain vanilla 😄

drifting ore
#

I wonder. Would it be possible for someone to make a distinctive clothing mod?

#

To where shirts don't all look the same.

quasi geode
#

best wait til after the animations are in for that stuff

drifting ore
#

Yeah. But would it be possible?

#

Cuz animations ETA is about what. Two years or sooner?

quasi geode
#

from my understanding, no not really...but i havent actually investigated myself

drifting ore
#

Ah

#

That's too bad

spark crystal
#

I don't think you'd be waiting that long.

drifting ore
#

What do you think on the ETA?

spark crystal
#

September-November for IWBUMS. Possibly earlier.

That's my personal guess, I don't know anything other than what goes into the mondoids etc.

drifting ore
#

Wasn't the first time they showed animations two years ago?

quasi geode
#

devs wont put a ETA on it...if was coding it i woudnt put a ETA on it either, sure not going to try and guess on one for them lol

drifting ore
#

Yeah

#

I've only taken up PZ fairly recently. Since last year November or so. I heard the devs are notoriously slow

quasi geode
#

pointless guessing, no idea how far along they are, or how many speedbumps they'll hit along the way to finishing

spark crystal
#

Absolutely, there will be no ETA, which is fair enough, I think.
I'm just saying that timeframe as a gamble/gut feel. Speculation in every sense of the word.

quasi geode
#

they get alot of flak for being slow...i respect them a hell of a lot more for taking time and doing it the way they want, then rushing out some half assed job just to make people happy

drifting ore
#

Indeed. From what I've seen is they make quality content

spark crystal
#

absolutely.

placid delta
#

@quasi geode how can I get the amount of rounds in a box or can ?

quasi geode
#

uh its kinda a pain still, but i been adding more helper functions for it, still need to add more...... ORGM.getAmmoData(ORGM.getAmmoTypeForBox(item)).BoxCount

#

or .CanCount

#

the getAmmoTypeForBox() function accepts both cans and boxes, a InventoryItem or the string itemType name

#

that only works in the latest version though 3.07

#

there is also ORGM.unboxAmmoItem(item)

placid delta
#

is item there obj or type

drifting ore
#

hmmmmmmm, will the devs make radios play audio of some old songs someday?

quasi geode
#

which should remove the box from item:getContainer() and add the appropriate ammo type

#

its both...it accepts objects and strings

#

oh for that last one unboxAmmoItem, thats just a obj

placid delta
#

what is getAmmoData taking as param? item box obj?

#

cuz i already have that

quasi geode
#

that accepts either

placid delta
#

which one would technically be quicker

quasi geode
#

any of the getFirearmData(), isFirearm(), getMagazineData(), isMagazine() etc will accept both types

#

well, from a technical standpoint, passing a object is more secure, it performs module validation as well, the string is probably faster

#

if you already have the string anyways

#

if its a object then it does a item:getType() internally

#

if you dont already have the string name then its probably better to pass the object

#

because as i said it performs a check on the module as well

#

not normally a problem unless some other mod has named items the same

#

most of the time in the code i try and pass objects to help unsure it doesnt identify a wrong object as being something it isnt

#

though stringwise you can use stuff like getAmmoData(itemType, moduleName) for the stricter checking

placid delta
#

hmm ORGM.getAmmoData(ammoBoxObj).BoxCount did not work getAmmoData returned nil

quasi geode
#

you have to use ORGM.getAmmoTypeForBox(item) to the the name to pas to getAmmoData

placid delta
#

to get the name of what?

#

what kind of param does getAmmoData take?

quasi geode
#

getAmmoData() takes a obj or a string name such as Ammo_9x19mm_FMJ.....getAmmoTypeForBox() taks a obj or string name such as Ammo_9x19mm_FMJ_Box

#

bascially you need to chop the _Box off the end of the string, which is what getAmmoTypeForBox does

placid delta
#

i fed getAmmoData("Ammo_223Remington_FMJ_Box") and it returned nil

quasi geode
#

ya it would...getAmmoData would be expecting "Ammo_223Remington_FMJ" without the _Box at the end

placid delta
#

oh remove the _Box

quasi geode
#

ORGM.getAmmoData(ORGM.getAmmoTypeForBox("Ammo_223Remington_FMJ_Box")).BoxCount

placid delta
#

ok thats working

#

last thing is,

#

right now they do like 5 round bursts and it only costs them 1 bullet magically

quasi geode
#

uh well that shouldnt be...they arent doing anything the player doesnt do really

placid delta
#

no its something i did

quasi geode
#

and it sure doesnt do that when i fire lol....too bad would have saved alot of ammo XD

placid delta
#

they dont use the normal reloading system

quasi geode
#

ya i know...the patch that comes with orgm waits until they're empty on ammo then does the reloading

#

the reload system is kinda different for orgm then the vanilla system when dealing with survivors

#
  1. not all guns have chambers, setting modData.roundChambered is not a good idea
placid delta
#

ok fixed. looks like its all ORGM compatible. though they go through ammo on auto like MAD

quasi geode
#
  1. it needs to keep track of what kind of round is actually in the chamber, plus what kind of round is in every spot in the magazine
#

yep full auto is a huge ammo waste XD

#

i rarely use it, but it does have advantages

#

theres less hit chance penalty firing when moving, though hit chance is lowered overall

#

its good to switch if you have to fire and move because of some Z getting to close, but then i go back to semi auto right after

#

i dont like wasting all that ammo on full auto fire with lowered hit chances if i can help it lol

#

full auto is insanely wasteful though...take the glock18 for example, IRL it cycles at 1200 rounds per minute, thats 20 rounds per second, if your using a 17 round mag from a glock17....then its gone in under a second

#

it game its a bit slower just so the engine doesnt crap out lol

#

but its still damn fast compared to semi mode

queen swan
#

Hi I'm new here. I read a few messages ago about JD-GUI. I downloaded/installed it and just looked at one of the .class files. I forgot how java is similar to C#. Anyways, which files should I look at for modding?

quasi geode
#

thats kinda a vague question....'which file' is going to depend on what your trying to do

queen swan
#

Just curious how about modding works. I'm not going to do one myself.

quasi geode
#

if your looking for a list of functions and classes that are exposed to lua, check the zomboid/Lua/LuaManager$Exposer.class and zomboid/Lua/LuaManager$GlobalObject.class

queen swan
#

Ok let me put it this way, which classes do modders have access to?

#

Ah you answered me just as I typed it.

quasi geode
#

XD

queen swan
#

Thanks for the info!

quasi geode
#

np lol...that seemed the most obvious answer to the unasked question...beyond that its just following the trail

#

though i gotta say thats probably some pretty heavy research if your not actually planning to do one

placid delta
#

@quasi geode how can i set a mag to have full rounds in it?

quasi geode
#

local data = item:getModData()
data.currentCapacity = data.maxCapacity
for i=1, data.maxCapacity do
data.magazineData[i] = ammoType
end
data.loadedAmmo = ammoType

#

that will work for guns or mags

placid delta
#

thanks. im adding a "Ready for Battle mode" where you spawn already with some loaded mags, weapon equipped. and full body armor already equipped. pair that with enableing hoards of raiders and fun begins

quasi geode
#

lol

#

btw you may want to add a scrollbar to the survivor options screen or redo the layout...doesnt all fit on my laptop screen XD

placid delta
#

ill take the lazy fix and compact it more

#

did you get your hands on vehcile build somehow?

quasi geode
#

ya i figured...i'd take the lazy route too

#

nope i was investigating with the stable earlier

placid delta
#

console just said Uzi is obsolite firearm?

#

what is the updated version of it?

quasi geode
#

ORGM.Uzi is still valid, if it said 'Obsolete firearm detected' then its trying to run the update functions...the modData.BUILD_ID variable is nil or lower then ORGM.getFirearmData("Uzi").lastChanged

#

if your giving guns to survivors in the code, make sure you call ORGM.setupGun(ORGM.getFirearmData(item), item) on the weapon

#

its basically like using ReloadUtil:setupGun() but doesnt actually use the reloadable class, ensures all modData is properly setup, and sets the BUILD_ID to match the current orgm version

placid delta
#

this okay?:

local gun = player:getInventory():AddItem("ORGM.Mac11")
ORGM.setupGun(ORGM.getFirearmData(gun), gun)
player:setPrimaryHandItem(gun);

#

or should it be called before going into inventory?

quasi geode
#

ya that should do it

#

wont matter if its before or after inventory just as long as its before equipping

placid delta
#

i have to do it for mags too?

#

for i=1, 5 do
local mag = player:getInventory():AddItem("ORGM.Mac11Mag");

                    local data = mag:getModData() 
                    data.currentCapacity = data.maxCapacity 
                    for i=1, data.maxCapacity do 
                        data.magazineData[i] = ammoType 
                    end 
                    data.loadedAmmo = ammoType
                end
#

data.maxCapacity as the for limit is being nil for some reason

quasi geode
#

if your going to be automatically filling up mags like that, ya you'll have to do it for mags too

#

ORGM.setupMagazine(ORGM.getMagazineData(item), item)

#

its not normally needed to do it with mags, but the mod data wont be properly setup until the player goes to reload them...if your going to script it then its got to be called

cloud bridge
#

gotta refresh that data

quasi geode
#

ya PZ tends to to setup the mod data for mags and guns until it actually needs to...which is why if you look at a freshly spawned vanilla magazine, the current and max capacity doesnt show in the tool tips

cloud bridge
#

ah ha

#

good to know

#

I've never touched the PZ code yet, other than 3-4 years ago when me and a friend decompiled the source to peek at it

#

decompile/deobf iirc

quasi geode
#

this stuff is all in the lua components

#

the whole reloadable item handling

cloud bridge
#

Yeah, the lua stuff wasn't exposed at this point, so it may have been even longer ago

#

Plus I like looking at the actual code, made a branch of the MCP tools for PZ. That was fun

nimble spoke
#

@pine vigil the exception form melting items is fixed, thank you!

#

mod is 100% functional now

pine vigil
#

Coolio

nimble spoke
#

uploading to the workshop ASAP

quaint nightBOT
placid delta
#

wait the base game smelting stuff was discontinued?

nimble spoke
#

That's the exact word Connall used to describe it

pine vigil
#

I feel like at some point, we're going to return to it. It's just people have been preoccupied with other things.

#

But I'm not certain.

stark fable
#

If this game is really about "scavenging", not crafting stuff from stuff like in minecraft, you should really nerf carpentr somehow. Make it harder to saw logs? I don't know.

placid delta
#

i would agree its low priority, since i didnt even notice it was discontinued

#

too bad you don't have a dev to solely work on this kind of simple content kind of stuff.

quasi geode
#

ah nolan you should know...the minute a dev starts to work on it, its no longer 'simple' content 😄

#

we all tend to go over board tweaking and perfecting the things we work on...and rightly so...its in our nature....it devs didnt then the stuff they do become substandard

placid delta
#

Simple by comparison to the other stuff

#

@quasi geode yeah smg seem to suck compared to what I recall

#

What is best low rand full auto weapon ? There gotta be something ?

#

Low rang*

quasi geode
#

expecially in full auto now...the base hit chance is actually better then it used to be, but theres now a penalty when switching to full auto, and the penalty is effected by recoil delay...since there really is no recoil delay in full auto mode, that gets shifted over to the hit chance drop

#

uh well thats kinda a tough call...any of the lower caliber rifles would be better, but really not by much

#

the lighter the weapon and higher caliber, the more recoil its going to produce: ie more penalty in full auto

#

its hard to give exact numbers, since the stats are calculated dynamically...even things like adding a tactical light or scope increase the weight, effecting recoil

placid delta
#

can u equip an smg in both hands to increase hit chance?

quasi geode
#

not yet, i need to piss around with that still...the whole dynamic stats and way full auto is handled was just added in the last update

#

part of the problem with the onehanded/twohanded optional weapons was the way the java calculates damage...its reduced if a weapon can be used two handed but is only being used in one....if i recall right from looking at the files it doesnt check if its melee only

#

damnit lol msg didnt send kept having to hit retry

placid delta
#

When you get around to it, strong trait should have lessened penalty for using smg one hand,

quasi geode
#

well the whole calculation doesnt really bother to factor in if its one handed or two atm, the base hit chance before aiming skill and other factors is 40 for rifles/pistols/revolvers, 30 for smg's and 60 for shotguns

#

+7 per level...sighting attachments can make a big difference

#

the smg's have a lower base hit chance then the rifles, but a higher 'aimtime' which means they get better chances to hit while moving

#

if your really curious about the numbers of any weapon, set ORGM.Settings.Debug = true....when you hit 'U' to bring up the inspection window, theres a extra tab there showing exact numbers for everything

#

can watch hitchances and all that change while you switch firemodes, move around etc

placid delta
#

Btw that u hot key for that window, could I change it, it's conflicting with my survivors hot key to view party.
Not that I called dibs on that hot key or anything but yeah

quasi geode
#

eh its in the pz options keybinding screen...i probably wont be changing it in the mod...probably wont be releasing any updates any time soon anyways...still trying to get a feel for how the last major update is going over with people

#

having conflicting keys is bound to happen with mods, but they're easy enough to rebind

#

orgm's also using G and Z

#

i think i noticed G being used on the survivors mod too....i didnt check Z

#

but like i said...easy enough to rebind in the options XD

#

but ya i wont be updating steam for a bit....dont really like hassling OrMntMan to push updates unless I have to, since he abandoned the project due to RL stuff I don't really like forcing him back into it with updating and crap. we tried to setup khaos so he could do the uploading instead but apparently steam only lets the original author push updates 😐

#

actually i should correct that, by default orgm has bindings on U,G, Z, 4, 5 and 6

placid delta
#

I suppose, its not like i have some sort of claim on certain hot keys. good hot keys are too few

quasi geode
#

i suspect between the 2 of us and the base game keys we're going to need larger keyboards anyway LOL

#

long as they're easy to configure and not hardcoded it shouldnt be a problem

#

plus people that have already loaded both mod will already have the hotkeys set in the config files...changing the defaults arent really gonna do much at this point

spark crystal
#

Is it possible to use modifiers?
shift+u etc

quasi geode
#

nope...it doesnt seem to let you when assigning hotkeys in the options screen....i mean you could if you hardcoded but otherwise nope

#

i wanted to use shift R and shift T for the reload and inspection window

nimble spoke
#

Does anyone know if we can set an item's icon? I know moveables receive their icons on the fly when you pick up a furniture, is something similar possible for the other items?

quasi geode
#

if i recall right items themselves dont have any sort of get/setIcon method, but the script item objects do

placid delta
#

Pretty sure you can set the image / icon. I was doing that with car mod

#

It effects the icon and world item image.

quasi geode
#

hrm right i guess the car mod would have had to change it somehow

placid delta
#

InventoryItem:setTexture i think

quasi geode
#

ya thats a valid method

#

yep looks like that what you were using in the DriveCars mod

nimble spoke
#

Interesting, I will try that, thank you

quasi geode
#

still have that one installed lol

nimble spoke
#

lol, what will happen to it? Will you just delete it Nolan?

placid delta
#

Just leave it where it is

#

Don't ever look at the code though, you just might barf

quasi geode
#

too late lol

placid delta
#

Pure results driven coding at its finest

quasi geode
#

i have this horrible issue....i cant help but look at code...its a real problem 😐

#

thats the whole reason i got stuck with orgm...i made the mistake of looking at the code....

#

did you ever look at the old ORGMDistrubitions.lua nolan? 😓

placid delta
#

I thought orgm had its own item spawning thing and didn't use the base distributions table?

quasi geode
#

oh it does

placid delta
#

Oh o remember

#

It was like a big file with one big if elseif statement?

quasi geode
#

ya lol

#

like 7 levels deep of 'if ZombRand()' statements

placid delta
#

Yes I recall thinking at one point, damn this is confusing

#

I went in there just to see if there was a way way to increasw@spawning amount

quasi geode
#

ya i saw that and thought....no...just no....must fix this....

#

lucky for me though (or unlucky maybe) thats not the worst code i've had to fix over the years....not by far

placid delta
#

So is there now a way option to increase ammo and or weapon spawn rate?

quasi geode
#

sure...besides obeying sandbox loot settings, theres multipliers that can be used in the ORGM.Settings table

placid delta
#

So increasing he "Normal" item type loot rarity sandbox setting will effect orgm ammo then u say?

quasi geode
#

for ammo it uses Weapon loot rarity, but in the Settings table theres finer control as well: FirearmSpawnModifier, AmmoSpawnModifier, MagazineSpawnModifier, RepairKitSpawnModifier, ComponentSpawnModifier, CorpseSpawnModifier, CivilianBuildingSpawnModifier, PoliceStorageSpawnModifier, GunStoreSpawnModifier, StorageUnitSpawnModifier, GarageSpawnModifier, HuntingSpawnModifier... and for the types of weapons theres also CivilianFirearmSpawnModifier, PoliceFirearmSpawnModifier, and MilitaryFirearmSpawnModifier

#

in other words you can pretty much control spawning however you damn well feel like lol

placid delta
#

So they all default to 1.0 I take it? And a 2.0 would be double ?

quasi geode
#

yep

placid delta
#

Ok, I'll try a Texas mode, where everyone and there dogs got guns

#

Just like it should be.

#

Ain't no government gonna oppress us!

quasi geode
#

what we've got going on our server atm is loot rarity set to rare, but the ammo spawn multiplier is set 1.5 or 2.0 idr...so guns are still rare but ammo a bit more common then it would be at rare settings

#

should take a look at shared/1LoadOrder/ORGMCore.lua, all the settings and stuff are in there, with comment as to what they're for

#

no functions thats just the initial tables definitions in that file

drifting ore
#

Here is an idea I just posted to the forums. Figured you might like it! (If this is not a channel for requests, I'll delete this, no problem :))

Last week, I came across a comic series called Crossed. It's about a pandemic that causes people to act on the most despicable instincts, rape and murder being a few. They are capable of thinking and intelligent planning. They will carry out suicide attacks or self-harm to get their satisfaction. They spread the infection by lacing their weapons or bullets with the infection, or by biting. Infection takes at most a few hours, and at least a few minutes.

If it's possible, something like this in Project Zomboid as a mod would be really cool.

With NPCs and Vehicles in the eventual mix, Crossed would be able to carry out suicide attacks with vehicles of all shapes and sizes, and NPCs would be able to contract the infection. When you contract the infection, the time between contracting it and turning will vary. When you turn, you won't die, but will become Crossed.

Crossed are able to use weapons, including firearms and handheld explosives like grenades and landmines, and can set traps for survivors.

If you want to read more about how the Crossed generally act, here is the first issue. It is a great story, though edgy (but I guess that's supposed to be the point).

Of course, seeing as how the Crossed use weapons, this would probably not be feasible for the game as it stands until NPCs make it in, or unless it's based off Super Survivors' NPCs. But it'd be a cool idea if feasible, period.

stark fable
#

What do you mean by "edgy"?

drifting ore
#

@stark fable Some people say that this comic series is edgy because it's extremely disturbing with what is portrayed. You have people getting raped, children getting hacked to pieces, heads being lobbed off, and the darkest of humanity being shown for the sake of it, but at the same time, it shows what the Crossed just do.

It's edgy in a way that makes sense and isn't just "edgy for the sake of being edgy."

At least, I've seen people call it edgy. 😛

stark fable
#

wow

#

people learned new word

#

and using it everywhere they can

drifting ore
#

Ye. lol

stark fable
#

Edgy is when a teen talking about suicide, murder, rapes and how amoral he is

#

not when its shows in the right place

muted wolf
#

extremely disturbing?

drifting ore
#

@stark fable True.

muted wolf
#

aint got nothing on 40k lad

stark fable
#

normies found this disturbing

#

REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE

muted wolf
#

laughs in binary

spark crystal
#

@placid delta in SS - if I have a survivor following me with a gun and ammo - will they automatically shoot at any hostile surviors/raiders?

#

Some hostile survivor had a full auto weapon and shot me dead from off screen last night before I knew what was happening

placid delta
#

yes

#

if he is HOLDING mele, but has a gun too. he will switch to gun if he sees the hostile before he gets too close.

spark crystal
#

👍 thanks.

#

also, could you clarify on the 'Food Storage Area' etc - what do survivors use this for?
Is it the areas where they will search for food when they are hungry?

#

I have not noticed them depositing or dropping food into an area.

#

(also - do they just drop in area, or will they use available storage?)

placid delta
#

The only thing food storage area is used for right now is, where they drop stuff after foraging

spark crystal
#

Okay

#

in that case - if I tell a survivor to go searching for food, or loot a room for food- how can I access his inventory to get it?

placid delta
#

Clean inventory order

#

Could have been better named that one

spark crystal
#

thanks 😃

#

I notice with the barricade cmmand - they are are to infinitely barricade windows, without having any planks
Any plans to change this?

placid delta
#

Yes, but probably will only require survivors in your own group to actually go and find and pick up planks. The random spawn wild ones I think I'll leave it this way so they have better survivabilty

drifting ore
#

I've got a head full of ideas and they're driving me insane

quasi geode
#

heh welcome to my world

drifting ore
#

remembers the song from season one of TWD

tropic spoke
#

I have a question

#

Is there a mod that speeds up farming

spark crystal
#

you can do it in the configuration menu before you start the game

drifting ore
#

Any zombie altering mods that exist right now that work for IWBUMS?

quaint nightBOT
drifting ore
#

Definitely giving this mod a go.

drifting ore
#

read the discription lul

quaint nightBOT
gentle halo
#

Hi guys. Having a poke around PZ files. Can anyone tell me where the moodlet .png files are located?

nimble spoke
#

@gentle halo compressed in UI.pack I think

quasi geode
#

yep

gentle halo
#

@nimble spoke thanks! Is it possible to get into a .pack (tried to unzip, no success) and modify the contents?

quasi geode
#

use TileZed

nimble spoke
#

There is an unpacker somewhere

#

I don't think it is part of TileZed

#

Is it?

quasi geode
#

ya you can create, view and extract with tilezed

#

under tools menu > .pack files > Pack Viewer

gentle halo
#

@nimble spoke @quasi geode You guys are awesome! Thanks!

placid delta
#

anyone know how to check if its raining or not?

cloud bridge
#

Open your window and stick your hand out ?