#mod_development

1 messages · Page 406 of 1

quasi geode
#

uh theres a few IsoPlayer.getPlayerIndex, IsoPlayer.getPlayerNum...i'd use IsoPlayer.getUsername() though

#

and the global function getPlayerFromUsername()

nimble spoke
#

Ok, thanks

#

Only the part updates left to fix

#

It seems I won't fix them this way

placid delta
#

For MP you may will need getOnlineID

quaint nightBOT
nimble spoke
#

I'm trying my chances with a vehicle tweaker api

cursive bramble
#

gaaaaah, why cant i save world objects i create but inventory containers stay?!

#

what am i missing?!

nimble spoke
#

You should ask @rocky lynx I think he knows that

#

Or the guy that created the bullet reloading table

rocky lynx
#

i'm create the reloading table XD

#

@cursive bramble you need help?

nimble spoke
#

XD

quaint nightBOT
cursive bramble
#

@rocky lynx well i make worl i=objects following the tutorials made by robomat - but my created world objects dont persist between loading the world/save - is there anything im missing?

rocky lynx
#

well i made world object like the base game, not a robomat tutorial.

cursive bramble
#

can you provide template code. i have tried scouring using jdgui but i havent found yet. -edit made more polite

rocky lynx
#

using tilezed to make a custom tilesheet and make properties, and some lua code to build it.

cursive bramble
#

what of spawning/creating in game dynamically

#

ie spawn/create a wall etc

rocky lynx
#

i'm not creating that.

nimble spoke
#

Depending on what you want to add, you can use an existing lua, for example I use the existing wood walls and fences for my masonry walls and fences, and they work, all I had to do was link a new texture and set up new health values

cursive bramble
#

im trying to implement a custom mechanical energy system using tile occupying transmission boxes etc

#

thus i need custom unique world objects that carry info

nimble spoke
#

Ok, I guess most of that would be mod data

cursive bramble
#

yes

#

atm im using the 'xTable' ie set/get Table

#

but i think thats wrong and should use mod data

#

my logic works otherwise but the world obejcts just dont save D:

#

whats annoying is container inventory i attach to the object DO persist and become ghosts in the world

nimble spoke
#

They can save all the data if you add it to the new objects list in YourObject:New. Check the files in media/lua/server/BuildingObjects

#

You could probably start with ISWoodenContainer

cursive bramble
#

alright ill try look there 😃

#

ty for trying to help

nimble spoke
#

np

#

YES! I can give cars an alarm piece with vehicle tweaker api, no need to override all cars just for that!

rocky lynx
quaint nightBOT
rigid drift
#

So this might be a hard one to figure out, who knows

#

I'm modding in some radio channels but am a bit stupefied by how the file is laid out

#
      <FinalColor r="255" g="0" b="0" />
    </VoiceEntry>```
#

This seems simple enough, just declaring the ID of whoever is speaking through hexadecimal

#

However

#

<LineEntry ID="d2456c6d-beeb-4e43-a6be-262cd80bb0be" r="255" g="0" b="0">For a good old family time!</LineEntry> the lines given in each radido line do not match any above

#

Anyone have an idea why I'm dumb here?

pine vigil
#

VoiceEntry is used when creating stuff in the WordZed tool from what I understand. It's mainly just a way to define colors to choose from when using WordZed. When the lines are created, it doesn't reference the VoiceEntry for colours, rather it just copies the RGB values of the VoiceEntry into the radio line when it's created.

#

@rigid drift

left shadow
#

nice

ember orchid
#

There's no way to add voiceovers or songs to the radio, right?

quasi geode
#

too bad we cant redirect it to a online stream 😐

steady flume
#

Oh that would be lovely

#

I love lurking here and seeing what you guys/girls think up

left shadow
#

you probly can redirect it to an online stream. youre just not trying hard enough..

quasi geode
#

w/e doc lol i just went browsing through the fmod java bindings to see if i actually could

left shadow
#

what does java know?

quasi geode
#

lmao

#

and your right doc i probably could...but not with the base game stuff...i'd have to hit the problem with a sledge hammer to make a working solution fit

left shadow
#

you would probly have to make a new radio.. like a sattelite radio or something

#

it would probly be easier than repuposing the existing ones

#

it would be fairly realistic not being able to get terrestrial radio, and be buggy as hell

#

a dude i used to work with had sattelite radio in his big fancy new work truck and all he did was tell me how much it sucked up in the mountains lol

#

where we were at burns lake it was pretty much usesless unless we went up onto the main road

nimble spoke
quasi geode
#

haha

left shadow
#

well if the walkie talkies kinda work over voip you could just swap out a voip addy for a stream couldnt u?

quasi geode
#

they dont work over voip

left shadow
#

werent we talking on them at one time? and it got better/ worse with the distance?

quasi geode
#

nope...just text chat

left shadow
#

noman, im sure we were talking on those things..

#

but then again, ive been hit in the head a lot....

quasi geode
#

we did use the voip...but not with the radios. we 'tried' to use them with the radios ages ago figuring out how the damn things worked

left shadow
#

ahh

#

that makes sense

rigid drift
#

@pine vigil Thank you!

rigid drift
#

@pine vigil Sorry to ping you again here but maybe you can com in with an assist, do you know what the radio categories do? TV and radio are self explanatory, but I'm not sure what difference the various other types make.

nimble spoke
quasi geode
#

oh hell ya

ember orchid
#

Hahaha, nice dude.

nimble spoke
#

@pine vigil Could getEmitter() in BaseVehicle.class be made public?

quaint nightBOT
nimble spoke
late bolt
#

@nimble spoke Looks awesome!

quasi geode
#

stop it soul....your making the rest of us modders look like nub punks 😐

nimble spoke
#

Nah.... Filibuster's cars make me feel like the nub punk

#

So what if I can model some cubes?

quasi geode
#

its not about the box but whats inside it 😄

#

in my case its a trunk full of ammo 😉

velvet coyote
#

Will this work for all trucks or just that model?

pine vigil
#

@rigid drift It dictates what object recieves the broadcast essentially.

#

So television and radio are self explanatory.

#

Amateur means that walkie talkies pick up the messages (I believe) and Military just means you need a high tiered radio in order to pick up the signal.

#

From what I understand anyway.

#

@nimble spoke Yeah, sure.

#

Emergency and Bandit are not really used AFAIK.

#

At least as of now.

quaint nightBOT
#

There has been a new Mod Published!

rigid drift
#

@pine vigil Perfect, thank you

drifting ore
#

That's a weird doggo

ember orchid
#

@nimble spoke Oh damn, nice dude! Does it just load the box model when anything's in the trunk?

nimble spoke
#

@velvet coyote Should work for all open trunks, but each car model may require adjusted offsets to make them appear correctly

#

Yeah, if it is empty it will look empty

#

and different combinations based on the items will be possible

spark crystal
#

Great stuff @nimble spoke looks like some amazing work

#

I recall reading here a couple of days ago about not being able to have models larger than a certain size - so things like trucks or busses couldn't accurately be put in. Is that still true? Or is the monster truck using some other kind of trickery

nimble spoke
#

The monster truck clips depending on the angle it is facing. I could try to reduce that effect if I reduce the wheels, but I'm not sure I'll do that

#

You can add larger vehicles, but they will clip at the borders of max render size

quaint nightBOT
spark crystal
#

is max render size exposed in any way that you might be able to override it?

#

(I know very little about PZ modding, sorry)

quaint nightBOT
#

There has been a new Mod Published!

nimble spoke
#

I don't know, I'd have to find it

quaint nightBOT
tulip oyster
#

Is it possible to overwrite the default sound files in ProjectZomboid\media\sound with your own through an in-game mod?

quaint nightBOT
#

There has been a new Mod Published!

nimble spoke
#

wtf?

#

lol one more orgm

#

When in doubt, mod orgm

quasi geode
#

yep lol

#

2018 Mod Awards: And the prize for most cloned mod of the year goes to: ORGM

#

😐

nimble spoke
#

There is an interesting reorganization aspect going on caused by offsets, but now I have to figure out how to control that and fix the weird positions

ember orchid
#

Oh wow dude.

#

So is it actually checking what's in the trunk, or do you have like a log slot in the vehicles?

nimble spoke
#

It actually checks what is in the trunk

#

and the trunk part has several models defined in it that can be turned on/off

#

Although I think that if I want to get rid of that weird offset thing I may have to use separate parts

ember orchid
#

Nice dude.

#

Is it possible for a car to have two trunks? I'm wondering if we could make a usable roof rack in addition to a trunk.

nimble spoke
#

the first item found sets the position for everything that comes after it, which is good and bad at the same time

#

Roof racks are in my to-do list

#

and the result with the trunk will be used for them too

#

Roof racks are what inspired me to try that

ember orchid
#

That's pretty damn impressive man.

#

You thinking removable roof racks?

nimble spoke
#

yeah

ember orchid
#

Heck yeah, man.

nimble spoke
#

But in order to do that I have to learn how to add new part slots using the vehicle tweaker api I created, right now the new slots are bugged

#

I really want to avoid overriding all car types if I can

ember orchid
#

Gotcha.

quaint nightBOT
#

There has been a new Mod Published!

ember orchid
#

So I made a Yugo. It goes from 0-60 in about 21 seconds.

quaint nightBOT
cursive bramble
#

Car trunk idea. Taking turns or high speed driving and sudden slow stops while 'heavy rigid' objects are carried alongside 'light flaccid' objects causes degrading of softer objects unless your organised trait (less chance)

Actually on that note. I wonder if tgis makes sense :
Adding items to a container fills it up sure but you wont allways pack things well - assume first time you pack some set of items (order doesnt matter.) The 'packing' score is 0.1

Now remove those items - re add them. Ypur score goes up by some amount and the volume the items take up decreases. This is bwcause the player 'repacked things abit better'. You can repeat this process to a limit to achieve the neatest tightest fitting packing? Reason below :

I mean tossing things into containers for a game is fine and dandy. But if we have organised traits and volume limits etc why not have a extra option to say 'juat tossin in takes up space. But taking the time put something in is less space'

Excuse spelling. Mobile and i dont use autocorrect (i hate it)

jade hawk
#

heavy r i g i d

cursive bramble
#

Yes yes.

#

Was best way to describe the reasoning
Soft and hard dont explain. Heavy and rigid objects will impose more threat during collision than softer lighter materials. And 'hard" is fine and all but rigid indicates it cant be deformed easily etc

drifting ore
#

whoops i shitted

cursive bramble
#

jeesh getting into custom logic for my world objects is a pain. using Hydrocraft and scrap together a buildable object that still uses my original logic for building networks etc... took me 3 days and lots of cofee... and my rotate code fails too.

stuck kayak
#

#Clone ORGM FTW (Break functions, blame dev) 😛 cycle of copy cat.

quasi geode
#

lol

stuck kayak
#

chatbox with custom command is still long way to go 😛 though I am planning to make a smaller version for vanilla chatbox while I can fiddle more stuff with custom chatbox.

upper bough
#

by chatbox with custom commands do you mean a custom chatbox that has its own commands? or adding new commands to the vanilla chatbox?

nimble spoke
#

Fixed the offset issue, now to code certain combinations that must be avoided and add a limit of models showing at the same time

lusty dagger
#

dismantling cars will no longer be a mod.

#

that pickup visuals are looking nice

nimble spoke
#

yeah I saw that too, nice to see an official way to dismantle the cars

lusty dagger
#

hopfully burnt cars will have that function as well.

quasi geode
#

lol @ember orchid from the 69 charger workshop page:
Huey 3 Jul @ 7:31am
Now all we need is an apocalyptic General Lee and we'll be all set.

#

still messing with the texture, but...

nimble spoke
#

Fenris, I'd like to have your feedback on alarm and gps, I updated the mod today

quasi geode
#

oh cool...i'll check that out when i get a chance in a bit...you should be using github for this one 😄

ember orchid
#

@quasi geode Haha, nice man.

quasi geode
nimble spoke
#

Oh yeah, I forget you're the no-steam version man

quasi geode
#

think i'm done pissing around with that texure stuff for tonight lol

nimble spoke
#

lol

quasi geode
#

that car is like the lee too when you boost it up to 770horsepower...i've flipped it and trashed it soo many times now 😐

#

i'm going to build a charger factory on the server somewhere 😄

ember orchid
#

Goddamn man, haha.

quasi geode
#

it does 0-60 in about 3 seconds 😉

ember orchid
#

Better than the Yugo.

quasi geode
#

lmao

ember orchid
#

More like NOGO amirite?

#

Heh, uh. Sorry.

quasi geode
#

XD

nimble spoke
#

I noticed that horsepower is one variable that doesn't seem to "stick" when I try it with the tweaker api

#

it doesn't seem to make a difference, but in the mechanic screen nothing changes

quasi geode
#

thats why i echo it back to the client...when you do it server side it sticks, but the clients dont see the change until they relog

#

so as a solution i set the horsepower both server side and client side

#

you'll probably notice the same with engine quality and loudness

ember orchid
#

Hey, Soul Filcher. Does your tweaker just replace the script value for that car?

nimble spoke
#

in theory yes, but I don't know enough of the dark magic hidden in the java files to be sure of what it does

#

I'd appreciate all help I can get to improve/fix it

#

right now I'm struggling with adding new parts, my version of the tweaker has some improvements over the online version, but it isnt working

quasi geode
#

if you hosted them on github it be alot easier to contribute...that way when we got improvements or bugfixes can just submit a pull request 😉

nimble spoke
#

Ok ok.... I'll do that

earnest quartz
#

my uncle says github is a fad and scam to get you to put your hard work in a place for anyone to grab and steal your ideas 😐

#

M$ bought github a month ago.......so that might accually be true now lol!

spark crystal
#

😂

#

are you serious?

#

You're uncle is a bit of an idiot then if that's what he thinks 😛

nimble spoke
earnest quartz
#

❤ github, but tbh not sure how much M$ will screw it

spark crystal
#

yeah, fair point.

nimble spoke
#

Oh no, they will steal my lua file that I modified from another dude's lua on the internet

spark crystal
#

MS wouldn't be stupid enough to hurt their reputation like that though.

#

Github is an absolute staple for pretty much any developer.

#

I wouldn't be surprised if they actualyl made it better and opened up private repositories with some sort of file size limit

earnest quartz
#

but M$ has been known to....acquire things quietly

quasi geode
#

ah they wont intentionally screw it...it will be done in the name of 'improving your experience'

earnest quartz
#

^

#

M$ used to have the best revision control software, then came git, stole their lory

#

glory

ember orchid
#

@nimble spoke I might be wrong, but I think the horsepower is assigned when the car spawns. On the multiplayer server I was hosting, it also chose a random number, I guess around what the car's HP was.

quasi geode
#

ya is assigned when spawning, you can change it though

#

*after spawning

nimble spoke
#

But it should read from my value, right?

#

well, mass does

ember orchid
#

Yeah, mass seems set.

#

I think it's because the horsepower is somewhat random, at least if you have it on the harder difficulties.

quasi geode
#

mass is constantly recacluated

nimble spoke
#

I know I'll have to create specific cases tin order to fix everything

quasi geode
#

its constantly checks back the script when it redoes the mass value per vehicle

ember orchid
#

Either that or HP is also based on the engine's condition, but I never noticed any change there.

#

I figured they just wanted the cars to have a little random attributes associated with them.

quasi geode
#

HP is randomly chosen when spawning and doesnt change by itself after

#

its stored per vehicle

earnest quartz
#

shouldnt it? esp bad weather, erosion, get rusty

quasi geode
#

well theres lots of reasons it would change after irl, but the engine isnt as refined in game lol

earnest quartz
#

yet 😄

ember orchid
#

One thing you can change for an already spawned vehicles is the gear ratio or whatever.

earnest quartz
#

slightly surprised its just 'engine parts' and not classed as other parts

ember orchid
#

The noticeable effect there is the acceleration.

earnest quartz
#

need a transmition part, then we can play mechanic and tweak ratios

ember orchid
#

It might change some other stuff under the hood, though.

#

I think Soul Filcher could probably do that now.

nimble spoke
#

I could probably add that as a new part, but first, I want to figure out how to add parts without the need to override every single car

#

alarms and GPS are already waiting for that

#

and possibly a better system for the truck bed items

#

What happens now is that I get a visible slot in the mechanic screen, but if I try to install/uninstall it bugs, I lose the item and nothing gets installed

quaint nightBOT
nimble spoke
#

lol, the guy sends a friend invite, says nothing, then uploads a translation

quasi geode
#

lmao

#

you have some strange friends 😜

nimble spoke
#

Well, at least I guess I'm an important modder now

quasi geode
#

lol

earnest quartz
#

nah just the loudest 😄 jk

quaint nightBOT
brazen mesa
#

if talking about clouds... wasn't GitHub the one that had public source code storage and only way to protect your project was by paying a monthly subscription? I mean, if so, his uncle does have a point. Meanwhile, if I recall, Bitbucket at least had private clouds for each user, so that no one could steal your GTA VI code and re-sell it 😂

quasi geode
#

eh? if by 'protect' you mean turn private, then yes repository's are public unless you have a paid subscription....that doesnt mean its unprotected though....and thats entirely missing the point of github..its primary use is for opensource projects

#

just like the git software itself. you can always host your own git server and not have it publicly displayed lol

brazen mesa
#

Yeah, that too. I mean, just having a small rasberry/linux server with big hdd would be just fine for private servers, though, I don't mind using BitBucket in case I'm making a project, though, as risky it seems, I still just use my own workstation as a storagew for project files

quaint nightBOT
jade hawk
#

Good mod

brazen mesa
#

good disclaimer, it's like in Mask ... "Reversed Psychology"

#

😄

#

"dontusethismod" - YOU'RE NOT MY MOM

quaint nightBOT
drifting ore
#

ha

stuck kayak
#

gitlab.com let you host free private git projects for free

#

Simply slightly better in terms of functionality but ux is still not on par with github

#

You also get free lfs with no bandwidth limitation. (Max is 10 gb which is the global max storage space per project)

quasi geode
#

ya...after their disaster last year i dont have alot of faith in gitlab lol

stuck kayak
#

I used them for my personal gaming projects xD

#

github lfs is just 1 gb free

#

In January 2017, a database administrator accidentally deleted the production database, in the aftermath of a cyber attack. Six hours worth of issue and merge request data was lost.

Haha. Didn't knew that but kinda that reminds me how I also did that to AGN forum when trying to import new database to recover some old data but rather a mistake took the wrong database down and gone forever xD

quasi geode
#

lol ya he did a "rm -f" on the wrong directory and took out 300gb and the backup systems werent properly setup

#

they ended up having to recover the data from a staging server

stuck kayak
#

Till this day no one knows I killed the forum at least once.

quasi geode
#

XD

stuck kayak
#

I came up with fancy excuses

quasi geode
#

worst i've done (so far) on a production server is delete the webservers file download directory <.<

#

so while i can sympatize with the gitlabs admin mistake of accidentially wiping the wrong dir...these things happen from time to time...the ineffective backup system is kinda inexcuseable for the services they provide

stuck kayak
#

XD

pine vigil
#

Think of it as, they found out and took steps to fix it than to lose a lot more data down the line.

#

I mean I use GitLab personally as well.

#

Worst I have done is in my second job I DDOS'ed a clients server, that was fun.

quasi geode
#

lmao

#

connall...that just sounds like a clever way of getting more work out of that client! "what? your suffering from a ddos attack...damn script kiddies, i can help you with that!" 😉

pine vigil
#

You would think, but I worked legacy programming support for a company, where the more we supported the client was seen as a detriment.

quasi geode
#

lol

#

ya thats no fun at all...i hate working on peoples old legacy code

#

expecially legacy perl 😓

earnest quartz
#

i hate working on others peoples any code

#

why 30 nested ifs?

#

|| and && exist for a reason

quasi geode
#

lol...i hate nested if's...and the whole and/or are fine, but they get abused just as bad as nested if's

#

when you've got 30 of those in a single if statement with a maze of brackets its not very readable

earnest quartz
#

im the direction indent correctly, then avoid things that indent, using return in most places to exit, so as code goes down, ou wont be there unless theres a reason, no waiting for the } on some giant if block

quasi geode
#

ya i prefer returning early...and if i'm nexting anything more then 2 or 3 levels (including if's and loops combined) i'm probably going to refactor into smaller cleaner chunks...move them to seperate functions

earnest quartz
#

ya il nest 3-4 loops deep, but the loop wil be a 1 liner lol

#

(1 line of code, excluding loop code)

#

half the languages now know when to paste in contents of a function rather than run the function too

#

sooo nice for cleaning up

winged raptor
winged raptor
quaint nightBOT
nimble spoke
#

@winged raptor They won't work for now, but RJ said he was going to fix that

winged raptor
#

Oh, okay

winged raptor
lusty dagger
#

noice

nimble spoke
#

Just found the code for item world icons, and decided to give it a test with what I could find in tiles, looks good so far

#

They all keep their original icons in inventories

steady flume
#

That really does look good

nimble spoke
#

If you drop them near trash tiles nobody will know there's an item there. Could be an interesting way to make the streets look dirtier

fair mica
#

👌

lusty dagger
#

thats looks very advanced with that items models on the ground. I like that realistic 3d look of those items.

river plinth
#

damn that looks sweet @nimble spoke

steady flume
#

That doesn't sound like the Dr. Cox I know

nimble spoke
#

Hi Dr Cox, how is the cooler box going?

quaint nightBOT
earnest quartz
#

no orgm clone reuploads today? orgm must be losin its appeal 😄

drifting ore
#

hold my beer

river plinth
#

didn't code anything for PZ the last couple of weeks, my coding-time is currently occupied with a java application to organise my data

#

my holiday is coming though, might suit it up for a buggy release on github, maybe someone of you guys here can do something with it

quasi geode
#

anxcon i'd like to think its not losing its appeal, and just more people are discovering it has a options screen for customizing it 😄

earnest quartz
#

@quasi geode you overestimate common sense

quasi geode
#

no...to quote myself: i'd like to think

#

like

earnest quartz
#

😛

nimble spoke
#

@quasi geode Do you happen to know where is defined that a weapon model is attached to the character model? Could we possibly change that?

quasi geode
#

in the java? if i did notice it i probably didnt pay attention...really havent looked at the rendering side of things

#

cant imagine it would be too hard to track down with JD-GUI though...check the HandWeapon class and see what field it stores the sprite in, do a search for all references to that field, and a search for all references to the getWeaponSprite method

#

answer should be in one of the results lol...probably wont get too many results from the search

#

zombie.characters.WeaponOverlayUtils.DrawWeapon() and zombie.core.skinnedmodel.ModelManger.DoCharacterModelParts()

#

both those reference HandWeapon.getWeaponSprite()

nimble spoke
#

Yeah, I tracked it to modelmanager

quasi geode
#

interesting what it appears to be doing is slot.sub.add(inst)...'slot' being a ModelSlot, and inst being a ModelInstance

#

the ModelSlot.sub field is a java arraylist and public so it should be possible to directly add into it

#

though since theres no 'getSub()' method, getting the field directly is a bit more of a pain

nimble spoke
#

That's what I'm trying to find out

#

IsoGameCharacter has an array caled ExtraSprites

quasi geode
#

what kind of evil sorcery are you up to over there anyway? 🤔

spark crystal
#

no doubt another thing that will be cool and awesome 😎

nimble spoke
#

jdgui gave me power UNLIMITED POWER evil laugh

quasi geode
#

lol

#

good lord...who let this guy in on the secret of decompiliers? we're all doomed now 😐

nimble spoke
#

AAAhhhhhh boring, there's no method for inserting extra sprites

#

Tell me there's a way to hack the character's file lol

#

All I wanted was to change the attachment point for a weapon model

quasi geode
#

lol...holsters and rifle slings?

nimble spoke
#

nah, weapons are your thing, my thing is thinking outside boxes. I was going to try a pushable object, like a shopping cart

quasi geode
#

only weapon behavior is my thing...messing with models not so much 😐

nimble spoke
#

I know I can use burnt cars for world models, and I can use context menus with them normally

#

technically we could have 3d furniture and whatever we want

steady flume
#

I would to see shopping carts in game, load it up with shit 👌🏻

#

Love*

quasi geode
#

shopping cart, loaded up with pipe bombs, pushed into a horde 😉

nimble spoke
#

Then I thought I could add 3d shopping carts lying around, but making them pushable would require forcing a weapon in both hands

#

BUT, they'd animate liek a weapon and shake around like crazy

lusty dagger
spark crystal
#

That would be great - imagine that interfacing with HC pallet forks etc

nimble spoke
#

You know, there is an unfinished code for pushable objects in the game. there's an IsoPushableObject and IsoWheelieBin

#

But sadly not enough for experimentation

steady flume
#

Awh damn

#

You got my hopes up

nimble spoke
#

holy shit, I think I spoke too soon

#

I have to make a test

spark crystal
#

in before Soul Filcher gets offered a job at TIS

steady flume
#

Seriously

drifting ore
#

h

nimble spoke
#

It appears to be possible to drag a survivor, you should try it @placid delta player:setDragCharacter(survivor) and see what happens

#

More tests..... more tests

quasi geode
#

lol

nimble spoke
#

I just hit 66k error messages

quasi geode
#

lmao

nimble spoke
#

And all of those because I'm failing to give my IsoPushableOobject a proper sprite

#

So, I'm up to the point I need to create the pushable object myself because nothing in the game seems to be one (makes sense) and I am in fact creating it since it is throwing a bazillion errors for not having the sprite

#

I tried to create an IsoWheelieBin because apparently I don't need to pass a sprite for it, but it was invisible too

#

ohhhh I see, it doesn't accept a string like thumpables, I have to give it a real sprite

earnest quartz
#

@nimble spoke didnt pz used to have pushable objects for early furniture?

#

or coulda been diff code

nimble spoke
#

Probably not the same code as this one seems to use the new physics somehow

earnest quartz
#

having wheelburrow n stuff would be nice

earnest quartz
#

oh oh, fork lift vehicle, can carry a bit, but electric, slow, and noisey, with a forced (no way to turn off) BEEP BEEP BEEP when backing up 😄

nimble spoke
#

I can't believe I get stuck with these things. @quasi geode if I know a string like "trashcontainers_01_0" how do I find and pass the valid sprite that uses it? I'm stuck all night with this shit

cursive roost
#

you could always smash the speaker :P

nimble spoke
#

God Damn I'm a genius, I'm pushing a wheelie bin around

drifting ore
#

shopping cart plz

#

thats really cool :o

nimble spoke
#

First I have to fix all the bugs and issues

cursive bramble
#

Dolly push generators!

spark crystal
#

The possibilities are endless!

earnest quartz
#

dolly to move fridge!

#

no more whinyness about hiking bags holding them!

#

I GOT IT!!

#

PUSHABLE CARS!

#

how many times has that car been just outside your base, but cant start it (no skill, crap parts, etc) and you wanted to push it inside your gate? or vice versa

#

and lol @ engine wont start and needing to give it a push to start it 😛

left shadow
#

that would be cool

quaint nightBOT
quaint nightBOT
nimble spoke
jade hawk
#

What is being implied here

quasi geode
#

lmao

#

going backwards with a garbage bin down the stairs no doubt

jade hawk
#

All the images I'm having in my head of the consequences of what's happening are all horrifying

drifting ore
#

with what little context the picture has, it pretty much sums up my life.

#

also, do not try the new monster drinks.

#

i am literally on the verge of vomiting and i'm shaking bad.

nimble spoke
#

It works, now I need to fix the object vanishing when loading (or saving, I don't know) and not being a container

drifting ore
#

hey @nimble spoke

#

is there a way to currently input more cars or is it not currently possible?

nimble spoke
#

@pine vigil If you have the time, could you please take a look into this model offset issue? More than one part model being visible at the same time makes each new part use the previous as an offset. Very annoying and make it impossible to use them together

jade hawk
#

Reee roof racks

nimble spoke
#

What do you mean input more cars? spawn them in the map?

drifting ore
#

no, like adding a new car.

#

i tried it but it didn't work

#

is there some sort of vehicle limit

nimble spoke
#

not that I know of

drifting ore
#

hmm

pine vigil
#

I'm not the best person to ask, since I have no idea what you just said.

nimble spoke
#

You do get blocked from spawning more if you spam them in the same area

#

-_____--------- You're the only one active here

#

Can you pass that picture around and see if anyone knows why? lol

#

Model 1 has offset x, model 2 has offset y, but when both are visible model 2 has something like x + y

brazen mesa
#

omg, the trashcan meme made my day 😂 GWfroggySheepAww GWfroggyWeSmart

quaint nightBOT
nimble spoke
#

Ohhhh hell, IsoPushableObject isn't listed anywhere when checking for valid parents for a container.

steady flume
#

You wouldn't happen to be able to change that yourself, would you?

nimble spoke
#

No, I already identified several places in the code where IsoPushableObject isn't implemented as it should to work properly. Nothing I can do about that

earnest quartz
#

well you could wait

#

i mean thats an option, and thus not nothing

#

😃

nimble spoke
#

Wait for what? I doubt they are ever going to finish that, and if they do it will work by itself, nothing needed from me

cursive bramble
#

implement your own dodgy contianer hijinks ?

#

container*

spark crystal
#

@nimble spoke maybe there's still something you could do with this - do they block tiles, and could they be destroyed?

nimble spoke
#

They do block tiles, but they vanish when you leave the game

quaint nightBOT
spark crystal
#

T H I S I S M O D D I N G

#

@zenith sable is this yours?

nimble spoke
#

This mod is da shit

quasi geode
#

pft its a pile of crap 😄

#

j/k lol pretty funny though...that would suck having diarrhea and trying to run from a horde 😐

spark crystal
#

This is really close to a mod I've (seriously) been wanting for a long time.

#

Hygiene.

quasi geode
#

needs extra effects for mp...like other players getting nauseous hanging around you lol

drifting ore
#

To be honest, those who like realism will probably want to get this mod

#

Next we need a pee mod

#

I also wonder if you can eat your own shit in that mod

abstract hinge
#

w t f

drifting ore
#

I mean hey you see that corn in that pile of poo?

#

Thats nutrition gone to waste.

earnest quartz
#

not really

#

humans cant digest the corn shell, which is whats there

#

the inners be gone though

quasi geode
#

too much info

#

now you've gone and ruined everyones dinner plans 😐

earnest quartz
#

its 10pm dinner over 😄

cursive bramble
#

i sat down or breakfast reading that....

quasi geode
#

now you've gone and ruined peoples breakfast too!

earnest quartz
#

atleast i didnt explain how sausages are made

spark crystal
#

I was eating lunch as I read that.

abstract hinge
#

I was eating poop as I read that

#

and I am frankly quite disgusted

drifting ore
#

To be frank, i dont give a shit.

#

who else goes poop but has to look at it before you flush to see if you pooped out corn or a big log

quaint nightBOT
white sun
#

i think anyone who says they don't is lying

pine vigil
#

"The modding community wept, for there were no more mods to create."

cloud bridge
#

hahaha

zenith sable
#

@spark crystal probably

#

@spark crystal now a pee mod?

#

@spark crystal want another tag?

#

@spark crystal i like tagging people

#

@spark crystal should i stop?

#

@spark crystal how are you?

#

@spark crystal are you cool?

#

@spark crystal nice

#

@spark crystal i stop now <3

pine vigil
#

@zenith sable Don't spam.

zenith sable
#

isn't spam, is flooding

#

:x

spark crystal
#

What was the point in that?

#

Please refrain from that in future..

weary quest
#

I've a question about lua file load order. I've seen mods that prefix files/folders with numbers in order to control the order the scripts load. But don't require statements also allow you to control that load order? why would you prefix with numbers instead of using require's, is there a reason?

spark crystal
#

I'm not a modder, but it may be possible it's used to place those files 'first' in Explorer, or to find easier etc

#

That's been reasonably common in other modding scenes I've seen

#

(or other recognisable prefixes)

nimble spoke
#

I don't do that, and see to real reason to do so, requires fix what you need fixed

#

if anything everybody should be adding zzzzzzz so the files load last and override other mods in case of conflict

#

@pine vigil I'd like to request a change for IsoPushableObject, this.container = new ItemContainer("pushable", this.square, this, 6, 6);
if (this.sprite.getProperties().Is("ContainerCapacity")) {
this.container.Capacity = Integer.parseInt(this.sprite.getProperties().Val("ContainerCapacity"));
}

#

As it seems to be missing a container

spark crystal
#

This man is making waves

#

If he got what he wanted, he'd be making tsunamis

frozen juniper
quasi geode
#

@weary quest require is fine, IF your writing the code that needs to load after... the alphabetical ordering using numbers like ProfessionFramework its to ensure its loaded before other peoples mods....same with ORGM, not only does it make sure the core is loaded first, but also so the loading is done in stages (using prefixs of 1, 2, 3, etc) where other peoples mods that rely on ORGM can insert code directly into the loading order

#

you cant do that with requires

weary quest
#

ah okay, yeah, that makes sense 😃

#

Love your work btw, been learning a lot from your mods

quasi geode
#

personally i'd rather be using a proper lua format local moduleName = require("moduleName") but modding pz is funky lol

#

ty...glad its useful XD

cursive roost
#

it's really a problem of Kahlua, the Java Lua implementation

quasi geode
#

ya i blame kahlua for alot of issues lol

#

its horible to code for...i had to work on some real lua stuff the other week and noticed how badly pz modding was ruining my lua XD

cursive roost
#

yeah

#

been working with a game engine written for Lua recently

#

and it's so different

quasi geode
#

yep...reducing variable/function/module scope is key when dealing with real lua...kahlua i'm not so sure about

cursive roost
#

kahlua is pretty much the same

#

_G. eq _G._G and all that

#

global array that contains itself... shudders

quasi geode
#

i should spend some time digging through the kahlua code

#

lol recursive scoping...thats gotta drive the GC nuts

cursive roost
#

probably

#

but it's a Lua thing, so the GC should handle it gracefully

#

then again

#

Lua was never really meant for programmers from what I've read

#

which makes it having bindings to a lot of programming languages... funny

quasi geode
#

i've tried writing lua bindings...i didnt like it

cursive roost
#

did it in C a while bcak

#

back when I was still writing C on a regular basis

#

wasn't that hard at all

quasi geode
#

ya i was trying in C++, i'm not really a C/C++ coder though...seemed like pulling teeth so i said screw it and wrote python bindings instead

cursive roost
#

:D

quasi geode
#

it might have been easier if i resorted to using swig or boost or something but i'm not really a fan of all that overhead

#

python was stupidly easy to write bindings for, just need to keep track of reference counting

cursive roost
#

nice

quasi geode
#

some of the C api increases the reference count when passing variables, some doesnt lol..so have to pay attention to if its getting passed or not for the GC

cursive roost
#

these days, I mostly do Java and LDAP stuff

#

feels like 1990 :D

quasi geode
#

lol

cursive roost
#

but hey, it works

#

stupidly solid

quasi geode
#

personally i dont do java at all...i can read it fine but wouldnt want to code it

cursive roost
#

also hard to expose to the world at large with admin privileges :D

quasi geode
#

lol

cursive roost
#

seriously, try to expose an eDirectory and it will get all in your way

#

those new-fangled key-value databases? eeeeh... not so much ;)

#

schadenfreude much? hell yes!

quasi geode
#

XD

#

most of the stuff i end up doing is perl/python/lua crap

cursive roost
#

perl is fun

#

you can shoot yourself in the foot and rip your face off at the same time

quasi geode
#

ya i love perl i spent 10 years doing mostly perl

cursive roost
#

been doing a lot with it as well

#

wrote a nethack bot in it

quasi geode
#

lol

cursive roost
#

also, a complete ressource management tool

#

specifically tailored to one customer

river plinth
#

an then there is me: I "code" with LabView 😳

cursive roost
#

what is labview?

river plinth
#

graphical programming language, mostly used for industrial machine programming

cursive roost
#

ah, cool

river plinth
#

you don't write code, you place symbols that execute certain functions

#

it's really bad I would love to code with Java at work

cursive roost
#

doesn't sound so bad

quasi geode
#

place symbols that execute certian functions.....that vaguely sounds like perl 😄

#

but without the graphical components 😐

river plinth
quasi geode
#

like a twisted UML

drifting ore
#

christ

nimble spoke
#

I'll try to work around pushables not being saved by creating them again on load. What would be the best way to save their square and check later? Squares don't have mod data, right?

quaint nightBOT
cursive bramble
#

Im 99% ready to rage
Wanting to implemwnt my mechanical energy transmission. Define for objects which offset is input possible and which output is possible (forward. Backward. Left. Right). This offset is from direction of facing cardinals NESW with north being top left faci g of isometric.
Bow i need to rotate the actual input/output direction according to facing. So input Forwards is North if facing north. I out forwards is east when facing east. I have some logic that takes the base direction(forwards, or (0,1)) and rotates it multiples of 90° degrees according to facing(north is 90x0. East is 90x1 etc)
I tried other methods and some where the logoc is sound but the inputs end up rotating in opposite direction to the object... really annoying me now

#

I would love to use isoDirection but its 8 dorections not 4 amd i would have to wrap to ensure i only use NESW cardinal directions and it doesnt help my offsetting of input/outputs (the goal is to make defining inputs and output sides easy - ie in mod data { inputs ={"mechanical",0,1}} thus one input usi g 0,1 as the offset from the square of the object and it accepts mechanical(if we want to define more types later etc?)
Why do i prefer being so accomadating gah.

cursive bramble
#

Sorry if i rant too much here in the open. Its sorta like rubber duck debugging for me (i do it alot... at random and at random people)

#

But. I maaaay have found my issue. So the rants works. Haha.

cursive roost
#

so what's the solution?

cursive bramble
#

The math i use to rotate a 2d vector d Degrees used 90°. That results in counter clock rotation. So when i get home and have time ill punch in -90° and see if that solves it (but. Wierdly i already tried this im sure. But i was reasserting my math is not incorrect)

#

'Is not incorrect' sounds like bad english...my head hurts

cursive roost
#

I used to do something like that in my dirty water mod

#

basically, I just defined sprites for each of the four cardinal directions

#

then in code checked which sprite I was using

cursive bramble
#

Also. I feel i did wrong initially. I defined the offsets for IO as forward backward -this makes sense since its relative. But when the player rotates the object i also applied this rotation to the IO sets. Which kinda ends up saying "i fave east now. And now my Input is Right when it was Forwards) which is wrong. The direction of facing changes but the offsets of IO should not change. I will probably end up using the better sounding 'take my facing. Convert it to a multiple of 90 as prev deacribed. And rotate the Offset by that angle. Do not save the change or overwrite.'

#

Hmm. Atm i have 4 sprites for each NESW and have a VectorToCardinal (N is 0,-1 etc) and a CardinalToVector. VectorToFRBL (Vector to string 'FORWARD' etc) and vice versa etc

#

Gonna whip up in python more test code.

cursive bramble
#

Alriiight. So after much testing. The math seems to treat 0° and 180° ( or -180°) wrongly. But since 0 is no change. I made the case return x1 and y1. And since 180 inverts i return x1•-1 and y1•-1

This seems to resolve the issue. So hopefully itl be easy to fix when i get home....hopefully.

frozen juniper
#

Hey guys is there anywhere i can find the array list of differnt kids of sprite names for the blend ground

cursive bramble
#

damnit lua math!

#

punch the math into python - works 100%
punch into lua - wrong

#

must be the annoying java conversion shananigans again

#

scratch that - punch into lua demo online - same wrong output :/

#

urgh rounding errors. math.floor does NOT deal with them well it seems

#

resorted to
function round2(num, numDecimalPlaces)
return tonumber(string.format("%." .. (numDecimalPlaces or 0) .. "f", num))
end
using [round2(int)] I get better rounding to integer. going to plug this into my math in game and see.

cursive bramble
#

erm

#

what

#

testing my coordinates and a object offset by 0,1 actually offsets by -1,0

#

PZ?! whats with these backwards coordinates?!

#

Developers... which way is the X and Y increasing for squares cause from what i observe Y is increasing towards bottom left and X is increasing towards bottom right. The Y hurts my head cause increasing downwards is confusing.

nimble spoke
#

no, x increases towards top I gues

#

coordinates are towards top left and bottom left

#

west point has the lowest coords

#

Well, let me double check

#

No, back on that one, westpoint has one coord lowest, the other highest

#

sorry

cursive bramble
#

wait the maps have thier own axis direction?

#

im gonna just...take a break now cause fighting with this is being a frustration XD

brazen mesa
#

random question, but how did IndieStone make the walls have thickness (rather than a plane shape) if they only used 1 flat texture and stretched it out to match on an isometric grid in a romb/paralelogram shape? Did they actually use 3d for walls?

cursive roost
#

@brazen mesa I believe the texture actually includes the thickness

#

so a "texture" is actually a tile, 32x64px isometric

#

don't nail me down on those dimensions, but it'd be something like that

#

and within that texture, the wall has the visible part as well as a few pixels of thickness

brazen mesa
#

so, when I was coding, I just took the sprite and stretched it out to look like the ones in the above example

#

to prevent issues, the best way would of course to be to just make the textures already isometric, but that would mean this - about 5-10 different textures instead of 1. Which is what PZ initially had problems with, but later on just made the textures flat just like in the second example... (from Iso Revolution post on PZ forums)... but if I recall right, you guys actually made the stuff 3d orthographic? Just wondering how to get from 1 point to the second one (from Current to Ok)

cursive roost
#

I'm just a modder, I'm not one of "those guys" :)

brazen mesa
#

😄

#

still, thanks for trying to help 😃

cursive roost
#

but I remember from creatnig the PZ map that all the walls look like what you show in the first image as OK

#

but actually coding the tools for that has been a while

#

I may be sorely mistaken

brazen mesa
#

I'm sure the mapping is still somewhat similar (haven't made maps for PZ since it first came out on Steam), but if things were actually 3d and map editor is actually based for 2d isometric games, that would be quite mindblowing (but at the same time, a map is basically a pack of information that your game will later on take in and apply to its current mechanism, so anything's possible)

cursive roost
#

no, I meant creating the web version of the map

#

for that, I'm extracting the sprites from the .texturepack files

#

and those contain the wall sprites

#

which I'm then just rendering at their respective place

#

check this for example

#

the walls have a thickness of a few pixels

#

but that's all in the sprite

brazen mesa
#

oh, that's interesting. Gonna check the stuff in detail in a moment (rushes away to the store hoping that it won't close 8 minutes too fast)

nimble spoke
#

Hey blindcoder! I'm trying to make use of your writeINI and readINI functions, do I have a similar option that places the file within a save?

cursive roost
#

hmm

#

not right now, no...

#

all the Lua functions generally write to the Lua directory

#

if you want to store data in a save

#

moddata is actually the better place

#

what is it you want to store?

nimble spoke
#

a list of moving objects so that I can respawn them when loading

#

also, how can I convert a square an a sprite back from a string?

cursive roost
#

hrrm

#

first thing that comes to mind is storing them on the respective IsoGridSquare and hook into the LoadGridsquare event

#

to respawning them

nimble spoke
#

right now I store object's id, sprite and current square

#

yeah but squares don't have mod data, do they?

cursive roost
#

they do have moddata

nimble spoke
#

I don't want to check through all squares to find where the objects are

quasi geode
#

if your going to hook that event, i'd advise you to make sure your code is highly optimized...that event triggers A LOT

cursive roost
#

IsoGridSquares have the getModData() function

#

yeah, what Fenris said

#

first thing you should check in that function is something like

#

``

nimble spoke
#

I'd rather go through the array of objects instead

cursive roost
#
if not gridSquare:getModData()["myModId"] then return end
#

you can't spawn things in a place that is not streamed in to the gameworld

#

so you'd have to check for that

#

and I'm not sure how

quasi geode
#

ya no matter how you do it your going to have to be checking what grids are loaded...ie: using the event

nimble spoke
#

that way I'll have to "clean" previous squares when the object moves....

#

ohhhhh hell

quasi geode
#

the only way i can see it working is what blindcoder said...using the event and checking moddata...but really the thought of using that event at all always leaves a bad taste in my mouth

cursive roost
#

Water Irrigation uses that event

#

and it's barely measurable, let alone noticable ingame

#

errr...

#
function WaterPipe.LoadGridsquare(square)
    if isClient() then return; end
    -- does this square have a pipe ?
    for i=0,square:getObjects():size() - 1 do
        local obj = square:getObjects():get(i)
        if obj:getName() == "WaterPipe" then
            WaterPipe.loadPipe(obj)
            break
        end
    end
end

Events.LoadGridsquare.Add(WaterPipe.LoadGridsquare);
#

that's the function

quasi geode
#

interesting...i suppose the upside of that is that using the :size() call is a java array list check, so probably executes faster then kahlua checking a table size

#

though that function could really be optimized more with a local objects = square:getObjects() above that loop <.<

#

still it be interesting to benchmark its performance on a highly populated server

cursive roost
#

I'm not even sure it works in MP at all :D

quasi geode
#

oh lol

nimble spoke
#

lol

quasi geode
#

well in SP theres not going to be much of a performace hit when loading grid squares...its not triggered as much as it is on a server

nimble spoke
#

ok, so how about when I load the square, I compare the square with the one in the list of objects, if they match then spawn the boject?

quasi geode
#

i always tend to think of the impact on MP performance first

nimble spoke
#

This way I'd use loadgridsquare but not store the objects in square mod data

cursive roost
#

well, wher ARE you storing it?

#

the only other sane place I can think of is GameTime.instance:getModData()

nimble spoke
#

That's an idea

quasi geode
#

i'd say it depends on how many objects your planning on storing.....if you've got a shitload and your storing them in a lua table, then theres a performance hit while it searches the table for the correct key/value pair, in which case your better off using the squares mod data

#

which will likely contain much less key/value pairs

#

if theres not so many objects your trying to save, then you could bypass the squares moddata and save a lot of headaches clearing the old data as the object moves

#

neet idea storing stuff in the GameTime moddata, that one hadnt ever occured to me before

cursive roost
#

it's the only other element guaranteed to exist

#

you can't even use your player moddata

#

because if you die and respawn in the same world, it'll be lost IIRC

quasi geode
#

probably...i've never had a need to use either really...but i spend most of my time in orgm's code which doesnt require that kind of wizardry lol

nimble spoke
#

lol

#

I need all wizardry I can get

brazen mesa
#

Are you Harry? 😮

cursive roost
#

Any sufficiently advanced technology is indistinguishable from a weapon

#

err, magic. magic it was.

brazen mesa
#

I saw that

#

😂

cursive roost
#

waves his wand

#

you saw nothing

#

..

#

context is REALLY important....

quasi geode
#

posts screenshots of that message, without any context

brazen mesa
#

that's some top notch WWiZaRdLy

cursive roost
#

well, I'm off for today, enough dumb shit said for today :D

#

have a great evening o/

brazen mesa
#

same 👋

quasi geode
#

lol cya XD

nimble spoke
#

thanks!

nimble spoke
#

nahhhh not working

cursive bramble
#

im STILL fighting

#

why is it so hard :;;;<

winged raptor
#

@pine vigil Can you help us? ! We are creating a project with main idea - change a default cars for more detailed.
For now we have two complete models but we stuck with one problem - shaders.
When we try load model with textures, it loaded with BasicEffects shaders, then that leads to the fact that it does not work for lights \ rust \ damage textures.
We are find a way, how make it better for custom vehicles like us.

In a java script (ProjectZomboid\zombie\Lua\LuaManager$GlobalObject.class) need replace next lines:

   @LuaMethod(name="loadZomboidModel", global=true)
    public static Model loadZomboidModel(String name, String loc, String tex, boolean bStatic) {
        try {
            if (tex.startsWith("/")) {
                tex = tex.substring(1);
            }
            if (loc.startsWith("/")) {
                loc = loc.substring(1);
            }
            Model model = ModelLoader.instance.Load(ZomboidFileSystem.instance.getString(loc), ZomboidFileSystem.instance.getString(tex), shader, bStatic);
            ModelManager.instance.ModelMap.put(name, model);
            model.Name = name;
            return model;
        }
        catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }
public static Model loadZomboidModel(String name, String loc, String tex, String shader, boolean bStatic) {
Model model = ModelLoader.instance.Load(ZomboidFileSystem.instance.getString(loc), ZomboidFileSystem.instance.getString(tex), ZomboidFileSystem.instance.getString(shader), bStatic);
            ModelManager.instance.ModelMap.put(name, model);
#

for that lines:

    @LuaMethod(name="loadZomboidModel", global=true)
    public static Model loadZomboidModel(String name, String loc, String tex, String shader, boolean bStatic) {
        try {
            if (tex.startsWith("/")) {
                tex = tex.substring(1);
            }
            if (loc.startsWith("/")) {
                loc = loc.substring(1);
            }
            if (shader == null) {
                shader = "basicEffect";
            }            
            Model model = ModelLoader.instance.Load(ZomboidFileSystem.instance.getString(loc), ZomboidFileSystem.instance.getString(tex), ZomboidFileSystem.instance.getString(shader), bStatic);
            ModelManager.instance.ModelMap.put(name, model);
            model.Name = name;
            return model;
        }
        catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }

It help to get a control for modders to select a shader from lua.

jade hawk
#

jesus christ

winged raptor
cursive bramble
#

OMG

#

rotation finally working

#

not even sure it really is until i try and plug the CascadeUpdate back in

#

HOORAY

queen veldt
#

Dammn pri

nimble spoke
#

@cursive bramble well done!

scarlet zinc
#

Just wondering, is there a function/mod that allow player dance with NPC?

steady flume
#

Restart steam?

#

Hmm

#

That's odd, I've never had that happen

nimble spoke
#

user agreement?

spark crystal
#

is it possible you've got some kind of ban?

nimble spoke
#

🤔

quasi geode
#

😮

nimble spoke
#

It doesn't seem that gametime mod data persists after quitting and loading

#

holy diesel, I spent my whole day with this shit

spark crystal
#

🤔

#

@jovial narwhal why did you delete your messages?

#

wtf

#

now he left the server??? 🤔 🤔 🤔

#

I swear he was online when I tagged him. now he's gone

nimble spoke
#

He left the server, he's still online

steady flume
#

How do you even wipe your messages from a server?

spark crystal
#

seems they aren't all wiped, but the couple of messages recently about him not being able to comment on PZ workshop were

#

from: big hi#6466 in search, if you really want.

abstract hinge
#

thought if you were banned all your messages are auto deleted

spark crystal
#

He wasn't banned, afaik. And that's not the case, either. (For discord)

#

@nimble spoke dropping your name on TIS forums 😂 😉 Sure hope you're @Soul Filcher there.

earnest quartz
#

i missed popcorn moments?

abstract hinge
#

drama?

quasi geode
#

he was, i got to hear all about in dm..... honestly i'm suprised it didnt happen sooner. but i wont get into specifics because well...you know...drama lol

earnest quartz
#

so i just realised, guns can have a bullet in chamber, but cant manually load chamber

#

@quasi geode no clue if suggested before but think the code might be open to?

quasi geode
#

its been on the todo list for a while now

earnest quartz
#

😄

#

would save me from hunting for magz

#

i still wanna build a crap door, lay bullets in it, and use a hammer to shoot em though ;3

quasi geode
#

you know that wouldnt work very well right? lol

earnest quartz
#

would you wanna stand in front of the door? no, good enough

quasi geode
#

bullets arent very impressive when theres no chamber to hold the preasure

earnest quartz
#

im aware, but they still 'work' ish

quasi geode
#

the case tends to rupture..the round flys out a few feet at the most with no velocity

earnest quartz
#

isnt quite that bad

#

depends the type though

#

remember cap guns as a kid? i used to take caps, lay in these brass...... tube with 1 end closed

#

like that but tiny

#

you load 2-3 caps in, hammer to crush from side, flies out 3-4 feet, enough to pop a balloon lol

#

im aware bullets aint gonna be great, but when zombie is bangin on the door, head inches away, and you out of options, its a viable option

quasi geode
#

that second vid around 1:20 you can see it in slow motion

drifting ore
#

Oh man, when I was in the army I heard about this guy who tried using a live .50 cal round as a hammer........... blew his hand to pieces.

spark crystal
#

that second video - is the 'sponsored by' a joke?

#

"Happy fun paperclips, now available in 3 exciting colours, and 77% lead free"

quasi geode
#

lol

earnest quartz
#

too much powder for the casing 😛

quasi geode
#

thats exactly my point

#

the case cant handle it...thats what the chambers are for

earnest quartz
#

isnt 50 cal like......one of the highest powder to bullet ratio though?

quasi geode
#

the .45 didnt do much better either, though you dont get to see it go off in that first vid

#

but didnt even dent the inside of the pot

earnest quartz
#

the only times i seen it work, was pistol sized rounds, as much as id love to qualify that 50 cal as a pistol round 😄 i cannot

quasi geode
#

doesnt really matter what caliber you try it with...its going to rupture

#

even .22LR's

#

unless its handloaded with some severely reduced powder loads...which makes it worthless in a actual firearm lol

earnest quartz
#

you still have the crookedly built door holding it, which would provide support around the casing

drifting ore
#

So you want a door fitted with gun barrels?

quasi geode
#

indeed your better off using a damn barrel in the wood lol

earnest quartz
#

nah just the low quality doors with crooked boards to fit bullets to hit with a hammer 😄

#

for when no gun / barrel

#

maybe steel pipe if you really wanna beg for something stronger

winged raptor
#

@pine vigil, give please a feedback about our suggestion with shaders control

pine vigil
#

@winged raptor I will look into it.

nimble spoke
#

@spark crystal I am, why?

spark crystal
#

@nimble spoke was to do with the recent defecation mod. Author (was) having trouble detecting a particular tile/object, which was something I'm sure you've been able to do (and done a few times recently)

cursive bramble
#

right. the converting my non persistant objects to persistant ones is progressing. power transmission now cascades down objects! Now to add the actual damned gridstone... urgh.

nimble spoke
#

Ahhhh, yes, that. The only "old struggle" I still have is detecting snow

quasi geode
#

have you tried looking out the window? 🤔

#

😜

nimble spoke
#

Nope... not there yet

plucky jungle
#

@winged raptor It looks interesting! As I understand it, do you want to control this parameter?

#

@pine vigil We need these changes! :)))))))))

winged raptor
#

@plucky jungle Yep! That's right!

plucky jungle
#

@winged raptor Some time ago I asked to add the "bStatic" parameter. @pine vigil Helped to add this feature.

quaint nightBOT
white sun
#

im loving these police vehicles popping onto the workshop

quaint nightBOT
pine vigil
#

@winged raptor I have pushed the change into my branch, no idea when it will get merged into the main game branch and released though.

winged raptor
#

@pine vigil Thank you! It will help a lot of people!

frozen juniper
#

So i am asking again :b i am trying to make a mod that can replace the shoved grass with grass

#

does anyone know where i can find a list of the spirtes they use ?

#

so i can know wich one to replace it with

pine vigil
#

You could use tilezed to open the pack files that contain the sprites to find their names. @frozen juniper

frozen juniper
#

@pine vigil Thanks man

frozen juniper
#

Yeah that did the trick

#

Now i just gotta add a grow time

#

and it should work fine 🙂

drifting ore
#

Has anyone here used the zombie medical cocktail mod

abstract hinge
#

@drifting ore with the different types of medicines you loot off of dead zombies?

drifting ore
#

@abstract hinge yes

buoyant sky
#

is there an API or Documentation i havent found yet?

#

or do i have to decompile code?

quasi geode
#

decompiling is the most up-to-date method...the online docs are very outdated

buoyant sky
#

sad, just want to see the table of the vehicle parts

#

cause the wiki dont mention engines it means the motor isnt replaceable -> which leads to the point you cant mod different engine classes

#

without a bunch of effort

quasi geode
#

theres not really much that can be done with engines through the lua/java api...vehicle:getEngineQuality() vehicle:getEngineLoudness() vehicle:getEnginePower() and vehicle:setEngineFeature(quality, loudness, power)

buoyant sky
#

ty

placid delta
#

You can see all the current vehicle parts in their "item" form on

buoyant sky
#

yeah and engines arent there

#

and thanks for that page

#

havent seen this source yet

#

atleast i could add "Offroad" Tires

#

hm the car itself holds the sprites? so i cant add a door with a different color and it will change the sprite from the car too?

quasi geode
#

nope all that is currently handled by the car model

buoyant sky
#

thanks and they wont change it, because i mean it works and its just QoL

#

sorry for my english

quasi geode
#

it may change at some point, i'd assume models will be handled differently after the animations update but cant say for sure

placid delta
#

@quasi geode every time i try to shoot while I am reloading a mag from hotkey i get this. just downloaded the newest version now.

quasi geode
#

ya its fixed for next update

#

its harmless atm so wasnt worth pushing a update just to fix it

winged raptor
#

How you think, what defailt car replace for that?

nimble spoke
#

I don't think it is worth replacing cars right now, I'd rather wait for the spawn system, just my opinion. If anything replace the dash rancher

quaint nightBOT
spark crystal
#

@quasi geode do rifle lights not work?

#

I've got one on an M3 Super 90, but it doesn't emit any light

#

It does when I remove it and equip th light itself

jade hawk
#

Is there an option to turn it on when you right click the gun?

spark crystal
#

nope

winged raptor
quaint nightBOT
weary quest
#

Just curious, but is it actually possible to create custom moveables, with all your own sprites? any examples of mods that do that?

quasi geode
#

@spark crystal sure they do

#

@weary quest yep...Snake's mods are good examples

weary quest
#

Cheers 😃 will look at them and see if I can figure out how it's done

quasi geode
#

actually i should correct that...as far i know, snake's mods are the ONLY examples lol

weary quest
#

Yeah, thought it was strange that I wasn't seeing any mods on the workshop that use them, figured that must mean it wasn't working

nimble spoke
#

Not enough people researching how to do that

cursive bramble
#

Anyone know of an event that calls when a WorldObject loads? I need to add a objects method to an event on load (it works woth creation but reloading world seems to not)

nimble spoke
#

LoadGridsquare

cursive bramble
#

Iterate objects in square?

nimble spoke
#

yes

cursive bramble
#

Awesome ty

quaint nightBOT
cursive bramble
#

Getting closer to having a working grindstone going. Hooray.

spark crystal
#

@quasi geode is there any quirk to turning them on? I'm in MP, hydrocraft and orgm

quasi geode
#

should just beable to use the enable/disable light source hotkey...though it doesnt work if your aiming at the time

#

i should probably fix that

spark crystal
#

:o
What's the default. Hot key

quasi geode
#

f

spark crystal
#

Thanks, I'll try that when I'm back on

#

Also, do they consume batteries?

#

I couldn't find an option to remove a battery etc, so I assume. Jo

#

No *

quasi geode
#

not atm...after i redo the component system they will

spark crystal
#

Sweet, thanks.

drowsy violet
#

sup

quaint nightBOT
cursive bramble
#

Alright. Aside from a few nitpicky irony outs i need to do the grindstone is looking good.

I now need a generator to implement. The object and such is already fleshed out - the only issue is the generator i test with doesnt consume anything to make power and magically spits out 16kW of power.

So my question to all is. Water or wind or hand cranked or gasoline power producer first? Im Partial to wind and hand cranked.

nimble spoke
#

but we already have a generator, why not use that?

nimble spoke
#

@cursive roost I tried your gametime mod data suggestion, but couldn't make it work, there's something funky going on

cursive bramble
#

Im aiming to move away from the gasoline engine as it uses 'pre infection' fuel that players scavange. Sure itl balance to make the most power (i mean its a pretty beefy decent generator) but what if ypu dont want to have to constantly hunt fuel juat to drive the millstone?

quaint nightBOT
topaz quiver
#

Need some tips on how to mod health, does anyway know the lua file which handles the health/damages?

#

I found this:

    if getPlayer():getBodyDamage():getHealth() <= 5 and CheatCoreCM.DoPreventDeath == true then
        getPlayer():getBodyDamage():RestoreToFullHealth();

Can i change the last word. RestoreToFullHealth to something like "freezehealth" etc?

nimble spoke
#

You need to check IsoPlayer.class to know what you can or can't do

quasi geode
#

BodyDamage.class actually for that one...since getBodyDamage() returns a BodyDamage instance

topaz quiver
#

Alright so, i have decompiled BodyDamage.class

#

Currently looking at the file

#

not sure where to begin?

quasi geode
#

any of the methods/functions in that file can be called from lua

topaz quiver
#

Lol sorry guys, i haven't even told you what i want yet.

#

Here is the deal, i want a way to have "godmode" but still take body damages, for example the "prevent death" option for the cheat menu mod.

When my health reaches 5 it heals me back to full + removes any wounds etc. But instead of removing all the wounds, i just want it to FREEZE the health kind of.. Like, i won't die, but i still need to patch myself out to get rid of all the wounds

#

is this possible?

quasi geode
#

well you cant freeze it, at best you can check the current health level, and if it drops below a point, boost it back up

#

not fool proof though, if the player takes more damage then that threshold between checks

topaz quiver
#

Hm well, this is the code for the cheat menu i sent above:

    if getPlayer():getBodyDamage():getHealth() <= 5 and CheatCoreCM.DoPreventDeath == true then
        getPlayer():getBodyDamage():RestoreToFullHealth();

Can't i modify this: getPlayer():getBodyDamage():RestoreToFullHealth();

To restore my health but NOT my wounds?

quasi geode
#

idr what all is in the bodydamage class, but theres probably a setHealth() or somthing similar

topaz quiver
#

I see, so instead of:
RestoreToFullHealth(); i could do like:
setHealth(5)

#

?

quasi geode
#

basically, but you'd have to check that decompiled code to see what functions are supported...it maynot be called setHealth

topaz quiver
#

Hm i found one line in the .class file that looks like this;

 setBurntToDeath(true);
        for (int i = 0; i < BodyPartType.ToIndex(BodyPartType.MAX); i++) {
          ((BodyPart)getBodyParts().get(i)).SetHealth(Rand.Next(90));
#

SetHealth should be supported?

quasi geode
#

looks like that 'SetHealth' is in the BodyPart class, not BodyDamage

topaz quiver
#

Oh.. hmm

quasi geode
#

doesnt mean one doesnt exist in the BodyDamage though

topaz quiver
#

Gonna try to replace:
RestoreToFullHealth(); with
SetHealth()5;

#

Or something, not sure about the syntax

#

I'm not a programmer

#

SetHealth(5); maybe?

#

weird, didn't work at all, is still restored m health to full

#

Hm i found:
float HealthToAdd = 0.0F;

#

One more thing, Vehicles, like acceleration and top speed, is that possible and if so in which file?

cursive roost
#

@nimble spoke define "Funky"

nimble spoke
#

ohhhh, you said it should persist, but so far I failed to make the saved mod data return after loading a game

#

I even exported to INI so that I could see what it was returning, and for some reason after loading a game I get an empty file.

#

Well, it doesn't help that I got a little burnt out after working on it for maybe 2 days and haven't touched it since

cursive roost
#

hmm, weird

nimble spoke
#

I tried both GameTime.instance and GameTime:getInstance() just in case, but they had the same result

quasi geode
#

soul is always breaking stuff...he even managed to kill my profession framework 😐

nimble spoke
#

LOL

#

time to level up the skill and replace that frame so it actually works

#

that was a very.... funky case

quasi geode
#

and not the good kind of funk 😐

pine vigil
#

Are you using getGameTime() @nimble spoke ?

#

Or rather have you tried getGameTime.

nimble spoke
#

uhhh no. I will try that, thank you

nimble spoke
#

Ok, now I got a different result, not working as intended, but at least after loading and adding a new entry to the table the previous entries are still there

nimble spoke
#

I won't keep working on it. the missing objects are still stored in IsoCell lists, why can't they be loaded properly like everything else? So much work around just to fix it lua side

upper bough
#

@topaz quiver You can use setEngineFeature(int engineQuality, int engineLoudness, enginePower) for engine loudness, acceleration, and fuel efficiency (not sure about that one), but you must have a vehicle object to call it from.

quasi geode
#

quality does effect efficiency...calling that method though isnt intuitive in MP though (works great for SP)...calling the method needs to be done on both clients and the server

#

if you only do it on the server side, clients dont see the changes until they relog

cursive bramble
#

Awesome. Looks like my Grindstone properly does its job and loads the script on restarts and only targets the corn (fresh) item atm to make my own Corn Flour.

Now for the generator. Again i want to avoid adding just ywt the games already there generator. Mind. When i say 'generator' i mean of the mechanical power my mod will use. Not really electrical power juat yet. That is its own mission.

quasi geode
#

some metal working and a old bicycle...pedal power ftw!

cursive bramble
#

Actually not a bad idea for the hand crank idea? Dont expect good power but itl do

#

My objective is to follow the balance that RotaryCraft mod for MC follows. That is there is Power = Torque x Speed. The more speed a device has the faster it works. The more torque the more it can process (say a grindstone can process nuts after a limit-torque is met?)
But devices also have a limit in speed ot torque or power before even being usa le etc.

drifting ore
#

Yeah

topaz quiver
#

@upper bough Thank you i will try that!

#

@quasi geode I actually only care about SP atm, since i love the super survivor mod which only works for SP atm hehe

upper bough
#

as a shameless self promotion, Cheat Menu allows you to set those values

topaz quiver
#

Wait.. it does? can i change vehicle stats with it?

upper bough
#

added vehicle support to it a few weeks ago, engine values are buried in one of the submenus

topaz quiver
#

Oh well! Awesome, gonna try it now! 😄

#

Been using cheat menu since i got the game.. but i must have missed it ^^

#

Does anyone here use ORGM with Super Survivor?

#

@upper bough i tried changing the engine power which worked perfectly 😄 is it possible to change the t op speed too?

quaint nightBOT
upper bough
#

@topaz quiver Unfortunately not, I tried using setMaxSpeed() originally but it didn't seem to work.

topaz quiver
#

@upper bough I see, It's alright ^^

#

@upper bough one more question, is it possible to auto enable options when I start a new solo game?

upper bough
#

@topaz quiver I added a system for that but it only works for God Mode and Ghost Mode, didn't want people to get ripped apart the moment they load the save.

#

Other options only take a couple seconds at most to activate when in-game

topaz quiver
#

Makes sense.. well the only options i want is prevent death, max all skills, learn all recepies

upper bough
#

Engine power and other vehicle stats save, though.

#

Learn all recipes saves, as well as max all skills.

topaz quiver
#

It does? I mean, when i start a completly new game with a new character?

quasi geode
#

setMaxSpeed() most definatly works

upper bough
#

I've just realized I misread your question, my bad.

#

To answer your question, it's not supported.

topaz quiver
#

@upper bough No problem, Alright i was just wondering, like you said, it only takes a couple seconds to activate it, i was just curious

#

Are you the creator of the cheat menu btw?

upper bough
#

Yeah

topaz quiver
#

Nice, love your mod!! 😄

upper bough
#

Thanks, appreciate it.

quasi geode
#

all the big boys hang out in this room 😉

topaz quiver
#

I like this room 😎

quasi geode
#

i actually didnt know that cheat menu was yours lol

upper bough
#

Might be because my Discord username is different from my Steam one

quasi geode
#

ya lol

upper bough
#

I forgot to change my nick when I rejoined this place

quasi geode
#

thats ok..i dont even have a steam name 😄

#

incognito <.<

upper bough
#

Ah ok. Love your mods btw

topaz quiver
#

Hm @quasi geode What mods/mod have you made? (a)

quasi geode
#

ORGM

topaz quiver
#

WHAT

#

hahaha, well.. I really am in the big boy room lol

#

what double negative said, love your mods 😄

#

Are the creator of super survivors here also? 😇

upper bough
#

Nolan? I think so, yeah.

quasi geode
#

ya he's here lol

topaz quiver
#

Nice :D
Well i had a question about ORGM + super survivors, when i shot someone, i mean, yesterday I shot an NPC with the L96 sniper rifle like 4 times, and he still had time to run away, and then bleed out.. Have i missed a setting? Like, if you shot someone with a sniper they should go down, not be able to run away and THEN go down? haha

#

i tried the "damage multiplier" in ORGM settings which worked, but then i died in one shot too ^^

quasi geode
#

ya XD

#

the damage multiplier setting was there to balance it for PvE...killing zombies more requiring that critical hit/headshot to take them down

#

the side effect though is survivors take more bullets

#

as well as other players in pvp...which isnt so bad, since the pvp'ers tend to go full auto on each other

abstract hinge
#

assuming theres any other way to go 😉

quasi geode
#

but thats why the setting exists in the options screen so people can tweak it to what they like

topaz quiver
#

In PVP i can understand that, but is it possible to add more damage for the weapons on the player side only? so that NPCs dies a little bit faster?

quasi geode
#

eh not really... the survivors are technically players, thats how it works nolan faked having other players in the game

#

it 'could' be done, but it would be alot of backwards coding

topaz quiver
#

Makes sense, got it ^^

#

Well i still love it! 😄

#

Oh since i have you here.. "eject shell cases" can i do anything with them? like.. craft bullets? or is it just there because of the feeling?

quasi geode
#

atm they're worthless...handloading was a planned feature for later, the cases got thrown in early since someone was going to do a hydrocraft compatibility patch...i was going to do a patch for snake's AmmoMaking mod, but sadly its not directly patchable too many things had to be changed so I've been rewriting the whole thing

#

but I wont be releasing that without his permission which I didnt ask yet lol..just got permission to modify it for our server, but converted it would make one hell of a expansion pack for orgm (with a few other goodies)

topaz quiver
#

Hehe cool, well, ORGM, Super Survivors, Cheat Menu is what makes the game imo, i would have gotten tired of it without them haha so thanks for the hard work! 😄

quasi geode
#

those are currently non-functional (i screwed up last update) but its fixed for next update

#

its not seconds..and it would be Magazine Reload Time

#

firearm reload time is how long it takes to insert a bullet into gun that doesnt use mags, or insert a mag into the gun

topaz quiver
#

Got it, looking forward to the next update then!
do you have a website or similar where i can look at "future plans" for this mod? Or do you want it to be a suprise? 😉 hehe

quasi geode
#

theres a website, but its very brief and limited since i hate maintaining and updating pages, theres the github account that is constantly having the new changes pushed to, the changelog thats up there details everything already done

topaz quiver
#

Oh nice! Could you send me the link to the github page?

quasi geode
topaz quiver
#

Awesome thanks!

quasi geode
#

most of the changes so far are fluff...fixes and minor tweaks...except that first one on the list about barrel length XD

topaz quiver
#

Haha xD

quasi geode
#

that change is actually pretty damn massive...i have to compeletely redo all my balance and performance testing for every thing

topaz quiver
#

Hehe, well just say the word if you need me to test anything/new changes you have made! 😃

quasi geode
#

ah well the testing phase is pretty extensive...once its ready, it goes live on our server for several weeks, if its all good i post the beta version to the indiestone forum thread where people a wider population can publicly test it, if no bugs are reported after a few weeks it gets uploaded to the workshop

topaz quiver
#

Got it 😄

#

Not really a mod question. but i was thinking of building a base in the "shack by the lake". is it possible to move a fridge?

#

It just says "too heavy for inventory"

#

i want to put it in the car lol

quasi geode
#

you can move it..if its too heavy then you got too much stuff in your inventory already