#Runekeeper Dev Branch Megathread

1 messages · Page 5 of 1

orchid flower
#

yea, but masterwork means way higher chance for useful enchant

#

but

#

it seems that we still have code that makes sailing far worth the hassle

tidal island
#

what do you mean?

#

ooh

#

improvement Farther islands could have "Increased Rarity of Natural Resources" (so, more green/blue/purple rocks and trees)

orchid flower
#

I just teleported myself to far away island and guess which drops were from enemies killed here

#

far away islands have basically 100% chance of anything dropped by enemy being exceptional/relic

#

those are the only 2 qualities that will drop

tidal island
#

oh well I mean yeagh

#

how far?

orchid flower
#

I used console and I'm at 123 west 86 north

#

but I will play a bit with numbers to figure out how far I need to be to get 100% exceptional

tidal island
#

oh lol

sturdy tusk
#

i can tell you 1 min

#

island distance is euclidean now so going diagonal doesn't make it faster

#

on a completely fresh save it looks like somewhere around 180 islands away

orchid flower
#

180? thats far

sturdy tusk
#

tactics and parrying both being at 50 reduce the requirement down to 163ish

#

and having them both at 100 reduces the requirement down to 146ish

orchid flower
#

I can travel 3 islands per travel. I will need to travel forward at least 50 times

#

darn, thats a lot

sturdy tusk
#

I'm surprised this hasn't been removed yet

orchid flower
#

are there any plans to remove it or drastically reduce this distance?

sturdy tusk
#

yes

#

i think it's going to be based on zone tiers

orchid flower
#

it makes sense but at the same time is kind of... not ideal

tidal island
sturdy tusk
#

lol

orchid flower
#

it will make gathering high quality pelts impossible

sturdy tusk
#

hmm

orchid flower
#

isn't tier 7 max?

tidal island
sturdy tusk
#

zones can have as much tier as you want and it just uses the highest available tier for spawning

orchid flower
#

is there any chance to influence quality of runes that spawn?

sturdy tusk
#

i don't think so

errant loom
#

i'll tweak some stuff with that

sturdy tusk
#

i think we should do loot item balance based on the island's tier modifier, that way there can be high tier islands and players can use chaos runes to lower zone tiers on the island so they can get high quality drops from lower tier creatures

#

investment

orchid flower
#

that is actually superb idea

sturdy tusk
#

there's not enough tiers though I think

#

because ideally you'd have a bigger range of potential drop quality bonuses than 4

orchid flower
#

this island tier might be just based on distance but with way less crazy numbers

sturdy tusk
#

that's how it works, yeah

orchid flower
#

at least in first version

sturdy tusk
#

island tier modifiers use an algo that's like, the chance of each additional tier is determined based on the distance the island is from spawn

#

ie at max distance, the chance of a zone being +4 tier modifier is 0.9 * 0.9 * 0.9 * 0.9

#

We need like 12 tiers so that we can do modifiers of like +8

#

that would give a much better range of potential bonuses

orchid flower
#

just make sure that it has no crazy distance numbers

#

It is normal that players will want to get better quality drops

#

actually

#

I have crazy idea for event

#

something like creature idol but in form of ritual that we have to defend to alter island tier

#

but even after your tweaks going far will still be surefire strategy to get high grade materials right?

sturdy tusk
#

Not necessarily since it's chance based

#

You'll be able to get lucky and cap out on an earlier island

orchid flower
#

but its not like going further will result in lowering chance right?

sturdy tusk
#

nah

#

feel free to travel as far as you like haha

orchid flower
#

unless you do something like perlin noise and have high grade and low grade areas

sturdy tusk
#

probably not chiritongue

orchid flower
#

Well then, I guess I will need to figure out what I want to transport that far. Going one way won't be that bad but doing multiple trips to haul everything will be impossible

#

By the way, can we get dev branch build? I really want this "disable tooltips" hotkey

sturdy tusk
#

deploy is in 6 hours

orchid flower
#

can we get info on last gained stat in this tooltip?

sturdy tusk
#

I'll add it to the todo as a backlog item

#

I was going to suggest making a message filter showing only the "stat" message type, but apparently those are totally broken right now

orchid flower
#

I know that I can check it with Stat[localPlayer.lastGainedStat] but having to go into console to get this info is a bit weird

junior valve
#

For Statistician, one way to indicate the last gained stat could be to add some mark or highlight the relevant Health/Stamina/Hunger+Thirst bar
Runekeeper could use displayItem: field to display alternative icon for the last type gained, like what tatteredMaps use to display normal/completed/rolled-up variants

sturdy tusk
#

I like that

#

I think I might do that instead, touching that old game options tooltip ui will suck

orchid flower
#

ah, I have another slightly irritating thing - equip torch action does not work if torch has been lit previously

#

equip best does not work

#

equip specific works but...

#

if its lit and then extinguished action slot "loses" torch

#

this likely will happen for any item that can be lit

sturdy tusk
#

added to the todo

orchid flower
#

why is talcum powder heavier than talc?

tidal island
orchid flower
#

actually? no idea. I just noticed that when I was processing ton of talc that I mined my weight increased

#

@sturdy tusk

tidal island
orchid flower
sturdy tusk
#

or at the very least shouldn't be caused by stuff we're doing

#

probably not possible to repro whatever caused that consistently

orchid flower
#

@sturdy tusk armor stand removes protected status from swapped items.

sturdy tusk
#

pings are not necessary, i read everything

orchid flower
#

then I got this

#

I know you worked on it

#

I assume that this item is still broken because it was in an armor stand

sturdy tusk
#

the heck

orchid flower
#

What is interesting is that other items show symbols correctly

#

Maybe it avoided your fix specifically because it was in armor stand?

sturdy tusk
#

oh god armour stands are cursed

#

the items in them are like in a completely isolated world

orchid flower
#

I would say my modded armor stands were better. there is nothing that can beat simple container 😛

sturdy tusk
#

that's how i would have implemented it

#

idk why it was done this way

orchid flower
#

what should I do to fix these items? poke some things in the console?

sturdy tusk
#

wait for us to fix it

orchid flower
#

should I keep them in armor stand or can I leave them in chest?

sturdy tusk
#

either place, ideally they'll get fixed in both

junior valve
#

Since you are checking conversion issues for things in non-normal state, It seems that creatures that were caged prior to the update did not get correctly converted to the new AI, and they wont attack
the save I posted earlier has a caged LivingRock and a ClawWorm in inventory, and 2 tamed LivingRocks nearby, along with a magical essence in inventory if you need to summon an enemy to test
#1179948120721870962 message

sturdy tusk
#

ugggghhhgh

#

this is a really bad pattern

#

i'm totally complaining about this to spacetech

orchid flower
sturdy tusk
#

this is so annoying

#

the idea of some items/creatures/doodads/whatever being stored as fake things inside other things and you just have to remember it is like, actually really dangerous for save converts. like, caged creature ai values are probably not recoverable now

#

i'll have to just reset the ai to what seems correct

#

if creatures were tamed and caged before the earlier ai changes, they'll lose their tamed state as well

orchid flower
#

is hoarding working? my decay counter on my torch decreases with every turn

sturdy tusk
#

can someone send me a save with caged creatures that haven't been uncaged since the update?

tidal island
#

hm

#

I don't know if my creature was uncaged since the update

#

But on the save I sent you (with the broken sailboat quickslot), I have a caged jelly cube in, I think it's EDC1 or EDC2 in my inventory

#

the file is here btw

junior valve
#

the one I sent earlier and linked now, but when I tried to download and import it now it throws other errors and seems to break the game

sturdy tusk
#

seems to work for me...

#

hmm

orchid flower
tidal island
#

ah wait

junior valve
#

there were no such errors when I tried continuing the save from when I provided here, but new imports error out for some reason

tidal island
#

I think the jelly cube might have been uncorked recently

#

uncaged* (forgot the word for uncaged)

sturdy tusk
#

lol

orchid flower
#
            isApplicable: (e,t)=>!!(t.decayMax ?? t.storeDecay),
            getInfo: (e,t)=>{
                if (!t.decayMax)
                    return {
                        min: 0,
                        max: 0,
                        value: ()=>0
                    };
                const a = 1.5 * t.decayMax;
                return {
                    min: Math.ceil(a),
                    max: Math.ceil(a + a),
                    value: ()=>Math.ceil(a + e.island.seededRandom.int(a))
                }
            }
        },```~~ Is it me or hoarding values are just 0?~~ Its just flat 1.5x durability.
tidal island
sturdy tusk
#

oh, if you don't uncage your creatures their ai value is safe

#

that's good

#

anyway i need spacetech's help to fix this one

#

so i'll take a look with him when he's available

junior valve
#

looking at the stacktrace, I guess when I tested it earlier I was still at the yesterdays build, without the Trapdoor Spider update, and that update caused uncoverted creature AI to fully error out when uncaging

sturdy tusk
#

Yeah I extracted all the ai functionality into its own manager class so I could apply it to npcs too

#

That was just before I did the trapdoor spider ai stuff

#

This is probably the buggiest state the game has been in in a while tbh

#

I’m not really surprised though with how much I’ve done in the past couple months

#

Fwiw I’ve been pretty consistently moving the game in a direction of improving maintainability and reducing likelihood of introducing bugs though

#

It’s just that the sheer amount of code churn that takes with this codebase leads to a lot of edge cases and mistaken assumptions

#

At the very least with things like ai I can look at them and know there’s very little chance it ever needs to get totally reworked again

#

I would consider the old ai code prototype code

tidal island
#

Creature.prototype.ai

sturdy tusk
#

Btw, I’m going to be sticking around a few weeks more for Wayward stuff, my gfs assured me it’d be okay

tidal island
#

mm ok

#

well I'll be happy to see you around for sure

#

but as a social thing of course

orchid flower
#

Chaos rune rerolls all creatures spawning in current zone or only creatures spawning during current time of day?

#

ah, and small minor thing - There is weird difference between all other inventories and crafting when developer tools are opened. All other UI return to where they were but crafting for some reason does not.

#

@errant loom @sturdy tusk I found something that seems like rather big bug. Releasing aberrant wisp from bottle results in something super weird - these "error has occured" are generated at crazy speed (it fells like couple dozen per second), seems like world rendering dies as I can move (I hear my character walking) but visually everything is frozen. After exiting to menu and going into the game back again I get black screen and only thing that helps is full restart of the game.

junior valve
#

that looks like the error I got earlier with uncaging creatures from before the update, and I guess bottling wisps uses the same system for storing creature data

orchid flower
#

nah, that wisp was caught today

#

literally not more than 3h ago

junior valve
#

3h ago was when the update dropped, but it is possible that code for storing the creature data does not correctly work with the new AI system

orchid flower
#

does that mean that releasing any creature is broken right now?

errant loom
#

i think so ya

junior valve
#

#1179948120721870962 message
tested with this save, caging a creature and releasing it worked correctly, so unless wisp bottling has another issue, it should affect only creatures that were stored before todays update, untill devs fix it
When I find a Wisp I will test bottling and releasing it

orchid flower
#

which means that anything captured before todays update is bricked

#

One of those 2 is "Uncage" but who knows which one?

errant loom
#

hmm

#

it should not be called that

orchid flower
#

not sure if I reported it - backpacks have weird weight

errant loom
#

in that it shows both values?

orchid flower
#

What is this 70.2? this backpack is 50+10.1

errant loom
#

ah, i see

junior valve
#

It seems that chest Guardians currently do not spawn except on Coastal islands
guardianZoneDescriptions contains entries only for BiomeType.Coastal, while spawnGuardians( function checks for the current island type, so it gets nothing for islands other than Coastal
Dont know if you intended to have a single list shared by all islands, or just forgot to create lists for the other biomes

sturdy tusk
sturdy tusk
worldly pine
#

Is it impossible to find talcum in the wetlands, or should I keep looking?

tidal island
#

I believe wetlands have only coal and iron as ores

orchid flower
#

what do you think about allowing items crafted from relic ingredients to be relic themselves?

#

it would add use to all those relic non gear drops

sturdy tusk
#

I very much doubt that will ever happen, the entire point of relics was that they're only found

orchid flower
#

then what about items crafted from relics could be 100% chance masterwork

#

or something like that

#

those floating numbers when we eat are not appearing

#

how are they even called?

sturdy tusk
#

Internally we call them notifiers

errant loom
#

there's a bug with them somewhere

#

something to do with tamed markers

orchid flower
#

as long as I'm nowhere near tamed creatures everything is fine, but when at least one is in the screen there is a chance that notifiers just die

orchid flower
#

with a lot of items in inventory game turns into slideshow

sturdy tusk
#

not surprised

orchid flower
#

why? its not like I'm doing anything with them when I'm moving

#

I would understand it if that table was altered every turn, but moving shouldn't do that

sturdy tusk
#

if you have your inventory dialog closed is it still a slideshow?

orchid flower
#

yes

sturdy tusk
#

do you have the adjacent crafting option on?

#

"Use Adjacent Containers/Items"

orchid flower
#

I had it on but turning it off didn't change a thing

sturdy tusk
#

hmm

#

sorry, i keep asking this, but can you send your save?

#

I'll make a card to look into your specific situation

orchid flower
sturdy tusk
#

nw i'm downloading them immediately

orchid flower
#

what is the point of Storing in minecart if they dont have any weight reduction?

tidal island
orchid flower
#

sometimes when I'm dragging item instead of item icon I get 0000

sturdy tusk
#

I have noticed that, I haven't found a consistent repro yet though

orchid flower
#

darn, I maxed my tinkering and it made crafting normal granite knife impossible

sturdy tusk
#

Staying up tonight to ensure that the fix for caged creatures and fanaticism items goes out

#

Have to basically just sit for half an hour to see if the build succeeded

#

And it's random chance because there's some random failures we get sometimes woo

orchid flower
#

I hope it works

#

should I backup my save?

sturdy tusk
#

should be fine, i tested on all the saves i had

#

but feel free if you're worried

orchid flower
#

nah, I dont have any super rare creatures

#

its not like we have shiny slimes

#

in worst case I will ask you for code to spawn any creature

sturdy tusk
#

yaaay the build succeeded

orchid flower
#

there is weird bug with actions. If I drag any action from item context menu onto one of the action slots I can't activate "auto use" with alt. I have to either pass turn (either space or move) or go into action configuration window and click autouse checkbox

#

creature fix seems to be working - I tested on 2 creatures and they appeared without issues

sturdy tusk
#

the one quirk with that fix is that there was a save upgrade specifically for stripping out old AI types that are no longer used, and they didn't apply to any of the caged creatures, but now those AI types can't be removed anymore because they're used for different things

#

Specifically, a creature that was set to move randomly as a movement override in the old system while it was saved, that becomes "CanSwapWith" which should mean if the creature is neutral (even if not tamed) you can swap tiles with it lol

#

Also tamed creatures become pacified

#

And also the tamed status might be lost from those creatures

#

This specifically applies for creatures that have been caged since before the dev branch nightlies started up again

orchid flower
orchid flower
#

how does game decide where it will try to put items if I shift-click item?

junior valve
#

from my experience it is the last container you clicked into, not counting the one the shift-clicked item is in
there is also a toggle so it keeps that one container as a target
though there were a few times that something bugged out and it kept trying to target some specific container

orchid flower
junior valve
#

the button in the screenshot, should appear in top left corner of a container when you move mouse there

#

and probably needs more than 2 containers open at the same time

orchid flower
#

are you sure its button? I cant click it, and at best it shows where item will land

junior valve
#

when I click it it makes a noise like changing Gameplay settings does, it becomes brighter/white, and remains visible even when you move the cursor away

#

here, the one for Food chest is toggled, and I am hovering over the one for Inventory

#

also probably an UI bug, if you close the container while it is toggled as the target, if you reopen it the button will no longer be highlighted, but it will still remain the target

orchid flower
#

that button disappears when I try to click on it

#

we are talking about this pouch with arrow thing right?

junior valve
#

yes

orchid flower
#

yea, its not clickable for me

junior valve
#

seems that the button appears when your cursor is over the container window, or the button itself
maybe there is an issue at high resolution or some UI scale, I use 1280x1024

orchid flower
#

I'm on 1920x1080

#

when I try to mouse over it I get that arrow to resize inventory and few pixels to the left and I'm off the inventory

#

there is definitely something as for split second mouse icon changes

#

but clicking it is impossible

junior valve
#

yeah, seem it appears when you hover over the inner part of the window, that contains the items, while the outer part for resizing/moving the window hides it, and its possible at higher resolution the button is too small and there is a sliver of the outside part before you reach the button

junior valve
#

you could try editting CSS for the element to move the button within the container space and see if it is clickable
the right: value is probably distance from right edge of screen, it was 444 by default for the button for that one container, I changed it to 400 and it moved to the right
though it seems to reset when alt-tabbing

orchid flower
#

nah, that has to be fixed by devs

junior valve
#

yeah, just in case you wanted to test it

waxen ivy
#

another source of lag I discovered is trying to move when you have an active search in your inventory or a container on you

junior valve
# junior valve also probably an UI bug, if you close the container while it is toggled as the t...

also to expand on the bug

  1. toggle on the target for some container
  2. shift-clicking items in the targetted container correctly moves items to other containers
  3. close and reopen the targetted container
  4. toggle button is back to non-visible, and shift-clicking items in the targetted container tries to move the item to the targetted container, effectively doing nothing, but preventing you from moving items out of the targetted container
void whale
#

Oooh, is the new build out?

errant loom
#

ye

orchid flower
#

how about key that will allow us to drag "Use best item" action instead of "use specific action" when we drag it from item context menu? That would be very useful

sturdy tusk
#

When I fix the actions listed in item stack context menus, that's what those actions set action slots to

orchid flower
#

something like "when shift is pressed action that will appear in action slot is best item" sort of thing

#

so it will be "best" for stack and "specific" from single items?

sturdy tusk
#

Yeah

#

Since that's what happens when you use an action on a stack

#

I think atm it might be broken in some way though

#

I have to look into it

orchid flower
sturdy tusk
#

25

#

It looks like max quality is way lower now as well

orchid flower
#

what do you mean by max quality? we won't get exceptional loot?

sturdy tusk
#

Oh, wait, I misread

#

There's a few different files sorry

#

Chest loot caps out at 25 island distance

#

And other numbers with it appear to not have been tweaked, which makes that a nerf

#

Creature items are the exact same quality but you get them in half the distance

orchid flower
#

which means about 80 or so now

sturdy tusk
#

Dunno if this math is intentional

#

It looks a little odd

#

Maybe there's part I'm not understanding

#

So the way creature loot works is a whole bunch of factors contribute to one number and then it's all capped

#

Instead of each factor capping separately

orchid flower
#

both ways are valid depending on what you are going for, but this way is easier on player

#

but looking at message on trello I would say that this is a bug

sturdy tusk
#

It's way harder to balance this way

#

And is harder to talk about too

orchid flower
#

trello suggests that only distance was decreased, not quality

#

yeah, I can imagine that explaining it is harder

#

have you ever thought about allowing us to use well directly as a water source for crafting recipes?

orchid flower
#

do actions from stacked item context menu look through whole inventory?

#

Water pouch is second item in my inventory

#

when I tried to capture wisp in bottle by rmb-> gather liquid on stack of normal empty bottles in my main inventory for some reason game used bottle from "water" pouch

#

ah. its the same behavior that you talked about earlier

#

actions from stacks of items default to "best"

#

would it be possible to separate these 2 cases?

#

when I rmb on stack of bottles in my main inventory I expect it to use random bottle from that specific stack

sturdy tusk
#

I think that's on the todo

#

Currently I think tech-wise I don't have a way to filter down the valid items to ones in a container

#

I need to add that first

orchid flower
#

if I could set you priorities of those improvements I would say that pinning items in inventory is still on top

sturdy tusk
#

I won't be able to get to that until next major update most likely

#

just requires too much dev time

orchid flower
#

is it that hard? when I thought about it it didn't seem that complex to get it to a working state

#

new action on item called "pin to top" that saves items current slot id in item, lets call it "pinSlotId"
in sorting function do inventory.sort(x=>x.pinSlotId).thenby(x=>whatever)

sturdy tusk
#

that is definitely not how pinning would work

orchid flower
#

it has few disadvantages like forcing all pinned items to always go to top, but there is a question of usability vs development time

sturdy tusk
#

that would be useless lol

#

the whole point of pinning is to put things on the bottom

#

every complaint i've ever gotten about it has been being annoyed that things like best for crafting moves protected stuff

orchid flower
#

ok, but protected doesn't mean pinned

sturdy tusk
#

pinning items will be like a fake second container at the bottom of each container that protected items go to by default, but that you can put anything there (and also move protected items out of) if you want

#

the sort of the pinned section will always be custom

orchid flower
#

I often use protection for items that I dont care about in long term, like for example I dont want it to be disassembled by auto use disassembling action

#

they can be sorted however

#

besides, why bottom? if I have random drop items from loot and my top of the line work tools and want to do some crafting won't it first use those random items? Unless you will also rework code for crafting to check first pinned items

#

but then yea, that is huge undertaking

sturdy tusk
#

Ones you want to use for crafting you probably wouldn't pin

#

You'd put those in the main inventory

orchid flower
#

I would

sturdy tusk
#

Why though

orchid flower
#

I want my inventory like this - tools, other pouches, weapons/torches, gear, everything else

#

I want to use my best tools when I do the crafting

#

there is no point in using some random tin crap knife that dropped from something

sturdy tusk
#

Are you just worried about it taking forever to scroll down to pinned items or something?

#

They would always be visible

#

Unless you like click a button to close the pinned section or something

#

Like, you would put your backpacks, all your bags, your armour, your torch all in your pinned section

#

And then just keep your inventory sorted best for crafting 99.9% of the time

#

And it'll put your best tools for various craft stuff on top

#

I dunno why you would need something different than that, it sounds like it would result in exactly what you have now it just puts the items in a different spot visually

#

Maybe there's still something I'm not getting?

orchid flower
#

when I'm playing I usually keep my inventoryu sorted by recent. I dont have to search for things I picked up

#

I think it would be good to get insight from few more players

sturdy tusk
#

So then do you never use best for crafting?

orchid flower
#

almost never

sturdy tusk
#

Wow you play the game very differently than I'm used to seeing

#

That's fair enough, though

orchid flower
#

I use it when I'm doing some heavy duty crafing like hunting for good bronze knife. I set my inventory to best for crafting to sort ingredients, make sure I dont have any crap crafting tool, add craft and disassemble actions to action bar and just go

#

normally I use recent since it reduces time I need to waste searching for that leather helm that I picked up and want to disassemble

#

if I had it sorted by best for crafing I would have to search through my whole inventory

#

because game would put it... somewhere

#

I don't think I'm alone in using recent either

#

we talked about it 1 or 2 weeks back

sturdy tusk
#

Unfortunately I don't think pinning items to the top will ever be a thing, but when I rework the crafting UI next update I could see us being able to fully detach the inventory order from crafting, instead always doing best for crafting for quick-crafting, and then the pick-specific-items ui allowing setting sort order for each ingredient (defaulting to best for crafting, but allowing any order you like)

#

That way you can just always keep your inventory on recent

#

Inventory order will become a convenience thing instead of something a gameplay mechanic is based on

#

Should be much better

orchid flower
#

I personally see that pinning items to top as a minimal cost - really good return value thing. Something really good before full fledged solution rolls out

sturdy tusk
#

You could mod it in with @Inject(ItemManager, "createSorter", InjectPosition.Pre) and custom actions

orchid flower
#

wouldn't I need to basically override ItemSort?

sturdy tusk
#

Well it depends on if you want to do anything with custom sort

#

ItemSort.createSorter is never called for custom sort

#

If you'd just ignore pinned items while a container is in custom sort then yeah you can override ItemSort instead

orchid flower
#

I think I would just go with simpler solution.

#

I might actually try working on it now

#

well, after my super late breakfast

orchid flower
sturdy tusk
#

That's how item sorting works

#

If you're pinning items to the top you have to touch that

#

The idea would be your return your own sorter that does your stuff and then falls back to the output of the normal sorter

orchid flower
#

yea, but if your original sorter returns thing like getTotalWeight() or getName() for each item separately how do I get between that?

#

for weight I guess I could add/subtract 100000 weight to get it my way, but I have no idea how I would do that with other ones

#

wouldn't it be better to inject myself into containedItems.sort?

#

then I could do that sortby..thenby

sturdy tusk
#

why would you have to do any of that

orchid flower
#

or maybe its just my weak understanding of js and single letter variables that seem to make it more complicated for me

sturdy tusk
#

ItemSort is just building a really complicated comparator that can support all of the sorts, but it's still just a comparator, it takes a value a and a value b and returns a negative number if a should be first, a positive number if b should be first, or 0 if they're equivalent

#

To do what you want, you write your own comparator that does like +isPinned(b) - +isPinned(a) || defaultSort(a, b)

orchid flower
#

then I'm just bad at js. looking at it in js form made it weird

sturdy tusk
#

ie true/false becomes 1/0, so this sorts pinned items first, then if it's 0 (ie items are either both pinned or both not pinned) it falls back to the default sort

orchid flower
sturdy tusk
#

how'd you get that to pop up?

orchid flower
#

./wayward +mod update mods/pinItem +script

sturdy tusk
#

ohhhh

orchid flower
#

same with create

sturdy tusk
#

we changed some internal things recently and removed some files and didn't realise that the mod commands used that

#

what a disaster

#

that'll be fixed in the next build

junior valve
#

There seems to be some sort of memory leak with picking up items on the ground, then dropping them elsewhere, along with save size inflation
I have previously mined out a zone in cave, using the option to drop items on mine/chop/.. , and then yesterday and today I was cleaning it up, picking up all the rocks, moving out of that zone, then dropping them, doing little else
Along the way, Wayward memory usage rose above 8GB and slowed down to the point it was difficult to even restart Wayward twice, and save size rose from about 50MB to 98
restarting Wayward fixes the memory use issue, but I cant tell what could cause the rising save size
If you want to investigate, the attached zip contains a save shortly after starting the cleanup, and one after I just finished it, at 57 and 98MB uncompressed

sturdy tusk
#

Hmm I bet you this is caused by a debug feature that records details about actions

#

It's probably storing all of the item translations for every pick up and drop down action

junior valve
#

Is there some way to disable it? like disabling developer mode?

sturdy tusk
#

No, it's mostly for if we want to figure out what a player did that caused errors in a save

#

Try setting game.history = [] and see if that makes your save tiny again

junior valve
#

it had 5k entries, and reduced save size down to 41MB

sturdy tusk
#

yeah 5k is the cap

#

unfortunately it's a # of actions limit rather than a size limit

#

i really need to improve the translation serialiser

#

so much of the translation system is a bunch of translations stitched together in very verbose and repetitive ways and yet it's all serialised the same

#

needs some abstracting to cut down on the size it takes up a lot

#

this is an issue with messages as well

#

messages serialise translations in the same way

#

and have the same cap of 5000

#

anyway, i'm not sure why you'd be memory leaking from that though

#

will look into it when i get some time

junior valve
#

most of the actions would be pick up all items on tile in front of you, and then dropping them by using drop keybing on a stack of an item, so I guess number of items being interacted with in a single action on average would be several times more than normal
I guess a stress test could be repeatedly dropping and picking up 360 feathers on the same tile

sturdy tusk
#

lol

#

I do not know why this doesn't use the smart list formatting that messages uses:

#

This is a bug rather than an optimisation

#

All the drop actions, all the move item actions, and "pick up all items" all had this issue

#

And they are all fixed now

#

People should see save size reduction as they continue to play due to this

orchid flower
#

Armor Stand erases data set in item by item.SetData()

sturdy tusk
#

Ugh

orchid flower
#

I know you love issues with armor stands 🙂

sturdy tusk
#

Of course

#

Yeah the issue is the stored items are actually clones

#

So it has to know how to copy everything

#

If you wanted even more reasons why it’s a cursed antipattern

orchid flower
#

can't you just deepcopy every property?

sturdy tusk
#

That would be dangerous, lots of stuff on entities are class instances and there’s no real way to know if those should be cloned and how

#

We do deep cloning in some places for situations like this, but it’s for a class that I designed from the ground up to be deep cloned like that, that I can guarantee will never break due to it

void whale
#

Um
I'm not sure if this is a known bug or not but, uh
The game is upside down for me. And also there's no UI

sturdy tusk
#

uhhhhhh

void whale
sturdy tusk
#

You’re in the upside down….

#

F2 doesn’t do anything for the UI? Escape?

errant loom
#

wat

void whale
sturdy tusk
#

Is the game actually continuing to render as you walk around?

void whale
#

Also, w moves me down (visually) and s moves me upwards

#

But a and d still go the right direction (which is very confusing)

#

The game does continue to render, yeah

sturdy tusk
#

Yeah it’s mirrored not rotated

void whale
#

And the cursor still changes when it, I guess, hovers over the invisible UI elements

sturdy tusk
#

Some kind of bizarre graphics bug

#

That’s super weird

void whale
#

No kidding :P

sturdy tusk
#

Does restarting the game do anything?

errant loom
void whale
#

I've restarted a few times, tried it with and without the debug mod, and started a few different save files

#

No change

sturdy tusk
#

Wow

errant loom
#

can you verify files in Steam?

void whale
#

I'll give that a shot, but this is directly after updating

errant loom
#

ya, i think file corruption from update

void whale
#

Hang on

#

This isn't a Wayward issue

#

This is a Steam Link issue

#

It looks fine on my desktop, it's only streamed to my laptop that the bug is there

sturdy tusk
#

Ohhhh

errant loom
#

isn't that just a video feed?

#

how would it mess with in-game stuff?

sturdy tusk
#

Ive had ui elements disappear on sharex capture before

errant loom
#

what about turning the character into whatever that is?

sturdy tusk
#

That I got nothin

void whale
#

It's not just the character that's upside-down, mind you, it's the entire map

tidal island
#

lmao

#

I love weird bugs

#

maybe the laptop screen is upside down?

errant loom
#

omg, nevermind, i see the character upside down

#

i thought it was like a weird sprite

void whale
#

Nah, the rest of the laptop is fine

sturdy tusk
#

I would wager if you could see the ui it would also be mirrored vertically

void whale
#

Hell, even the Steam window and the rest of the desktop render fine over Steam Link

#

Okay, it's happening via Steam Remote Play as well as Steam Link

#

(Both streamed to my laptop)

#

Also the main menu is fine, this doesn't happen until I get into a world/save file

#

...anyway, uh, consider this a bug report, I guess :)

sturdy tusk
#

that's even weirder

#

can you see the moment it flips and the ui disappears?

void whale
#

I did once but I can't reproduce that

sturdy tusk
#

I wonder if it's something to do with webgl

void whale
#

If it helps, my laptop (that I'm streaming to) is running Linux

sturdy tusk
#

Maybe try swaping webGLVersion in launch_options.json from 2 to 1, or vice versa if it's already swapped?

void whale
#

In the Wayward files?

sturdy tusk
#

In the main Wayward directory in your steamapps folder yeah

#

There's a bunch of random graphics related stuff you could tweak in there

#

No idea if any of it will do anything

#

But you never know

#

It does feel like it must be something to do with the webgl rendering though, if it only starts when you get in game — it is only used for the world

void whale
#

Switched from 2 to 1, no change

sturdy tusk
#

oh well, not easy then

#

drathy might have other ideas for things to try when he's on again

#

oh actually

#

on your pc can you try going back to the main menu?

#

does that make it go back to normal?

#

it should get rid of the webgl renderer

void whale
#

Went back to the main menu, and the main menu still renders fine

#

But the problem persists when I go back in-game

sturdy tusk
#

That's super interesting

void whale
#

This might be the most bizarre bug I've ever encountered

tidal island
#

send your savefile?

sturdy tusk
#

shouldn't be related

tidal island
#

haha alright

#

it was worth a shot

void whale
#

It persists across saves, and the game is fine on the desktop, yeah

tidal island
#

oh it persists across saves

#

this is so funny

orchid flower
#

can you make protect and unprotect work with "use best item"?

sturdy tusk
#

what is the best item for the protect action

orchid flower
#

highest quality, besides that - whatever

#

use case for that is crafting on the fly some item while protecting high quality ones for later use

#

it seems like it would solve issue monkeymanwasd123 in #wayward had.

#

it would also allow for manufacturing for example cages from low tier items while leaving exceptional poles and planks for later

sturdy tusk
#

What if I added "protect all"/"unprotect all" and it only works with the item type selected

orchid flower
#

but will it work with quality filter?

sturdy tusk
#

yeah

orchid flower
#

then that works for me

orchid flower
#

when I tested things I found something weird. With Destroyer of Magi, Reaper of Souls and creature idols placed as you see wisps and ghosts are actually able to spawn.

#

I'm not sure if is bug or not, but it was definitely unexpected

junior valve
#

it seems unchanged from before creature zones, in the respective modifiers Ghosts and Wisps are set to be able to spawn on all tiles (TileGroup.All) and have variable alwaysSpawn set to True
Masochist sets alwaysSpawn to True for all creatures, but does not change their spawnTiles
CreatureIdol just calls the same function as normal random spawns, spawnFromGroup( before the update or spawnFromZone( now

orchid flower
#

how stable magicology for dev is?

orchid flower
#

will milestone progress still be tracked?

orchid flower
#

If I wanted to add some stuff to magicology and commit them to mod, how would that work?

#

can I just create pull request to it?

sturdy tusk
#

We aren't able to accept PRs unfortunately, since all the code in those repos is automatically deployed from our internal monorepo

orchid flower
#

then if I want to add something to it how do I do that?

sturdy tusk
#

Like just for your own use?

orchid flower
#

to be more precise - I think I would manage with adding more wands/staffs

#

I know that locally I can do whatever

sturdy tusk
#

We don't really have a setup that allows for us to accept mod work from others atm

orchid flower
#

but I want to add it to "your" version of it

sturdy tusk
#

It'll have to wait until we go open source later

orchid flower
#

but magicology technically is open source - I can go to git to pull sources

#

what I'm interested in is the other way route

#

in theory you could just pull my changes and add them into the repo if you liked them

sturdy tusk
#

Magicology is Spacetech's mod

#

The mods are modding examples more than anything

#

They're not supposed to be used as if they're like good or balanced or whatever

orchid flower
#

but on the other hand I can't pull them, alter them and then release it like its my own thing right?

sturdy tusk
#

MIT

orchid flower
sturdy tusk
#

Oh lol when did those start getting added to mods

#

16 months ago

orchid flower
#

magicology is really neat as a base mod, but it needs some work to be a bit more balanced

#

Is there a reason why it can't be developed further into something more fun?

sturdy tusk
#

Required dev time

orchid flower
#

what if I will be willing to do this?

#

I created bug report because there are 2 things that I dont know how to solve

sturdy tusk
#

We'll get around to fixing it at some point

orchid flower
#

but I will manage stuff like reworking recipes/drops, adding more staffs that are progressively better etc

sturdy tusk
#

For any mod, we are just not able to commit to accepting changes from the community

#

It will cost too much time

#

You are 100% free to fork it and expand on it and maintain it though

orchid flower
#

what I would do is mostly copy-paste with better numbers/different texts

worldly pine
#

Since you suggested that the difficulty scaling had been fixed, it seems much more reasonable. However, on the other hand, in two saves since the fix, I have not seen a single goat or chicken (nor egg). I’ve found the occasional feather, but I suspect these were dropped by harpies.

orchid flower
#

goats and chickens definitely do exist

#

but its also true that I run with hounded and increased spawn cap

#

which means that game rolls spawns way more often for me

#

but even now spawns are rather rare

worldly pine
#

Hmm.

I figured maybe they’d been set to spawn only when benevolent. But ‘invoke’ on the benevolent rune says “the animals do not seem to notice” and on the neutral one says something like, “you hear a cacophonous sound” or words to that effect, so I can’t seem to do anything to become more benevolent.

That’s been so on any island I’ve visited.

orchid flower
#

you dont understand how new system works

#

localPlayer.tile.zone.getSpawnableCreatures().map(type => CreatureType[type])

#

this command will show you list of all creatures that spawn in current zone'

#

localPlayer.tile.zone.getTier() this will give you tier of the zone you are in

#

chickens can appear on coastal in areas with tier 1-3

#

on coastal goats are exclusively tier 2 but have double chance of appearing

#

as for runes - evil spawns enraged creatures, good tames/calms creatures close to you, chaos lets you mess with zone settings like changing tier, rerolling creatures etc

#

with enough chaos runes you can even force volcano spawns on ice cap islands

orchid flower
#

there is a bug related to modding actions - I have 2 mods that add actions and as you see stuff is getting messed up really badly.

#

this can also be easily reproduced

#

simply load game, exit to main menu and load different save

errant loom
#

i think this has been around for awhile

orchid flower
#

didn't items have skill icon besides name in their description??

orchid flower
#

fanaticism is even worse

sturdy tusk
#

Ugh how did I manage to break that

tidal island
#

doesn't matter what god, you'll be a fanatic for anything Legend

worldly pine
sturdy tusk
#

no, coastal islands have a low chance of having a "mountaintop" area

worldly pine
sturdy tusk
#

not currently, but i have some ideas to display that information

#

the reason we don't atm is because the zones are a perfect grid, and it would feel weird and wrong if you were able to spot exact borders and mark out grid lines and stuff

#

players are already doing that anyway with zone civ score

#

but we want it to work differently

#

but yeah i have an idea i'll probably tackle in a couple weeks

worldly pine
#

Even a vague indication would be cool. Some way the character could interpret from surroundings, or another invoke type action. So it doesn’t necessarily just say the number…

sturdy tusk
#

Also I might bring back ferocity for zone difficulty

#

Ferocity: IV

worldly pine
orchid flower
#

In one zone place 1 floor and then check where zone number changes

orchid flower
#

Ah, didn't read that far

sturdy tusk
#

My potential idea btw is to investigate if I can apply perlin noise (or another algo like it) while near zone borders, causing the zones to be a messy grid instead

#

And then that plus only displaying info if you’re closer to the centre of zones

#

I’m not sure if it’ll work but it’s worth a shot

orchid flower
#

You definitely can, and that's a good idea actually

#

I know that Perfect World for dwarf fortress does exactly that

sturdy tusk
#

My theory of how it would work is to have two perlin noise maps, one used for horizontal borders, one used for vertical borders. Allows the algorithm that chooses the zone for a given tile to choose the “winning” zone direction on each axis in a corner meeting point, and then of the two winning axis zone directions it chooses the one with the greater elevation/weight

orchid flower
#

Anyway, on the topic of magicology - I have quite a few ideas so I have a lot of questions for you today

orchid flower
# tidal island with. what??
e[e.ChangeCreatureSet = 0] = "ChangeCreatureSet",
        e[e.LowerTier = 1] = "LowerTier",
        e[e.RaiseTier = 2] = "RaiseTier",
        e[e.ChangeLayer = 3] = "ChangeLayer",
        e[e.ChangeBiome = 4] = "ChangeBiome"

relic tier rune changes biome (sadly its on chance). Then you invoke exceptional rune to get underground spawns on surface and voila - fire elementals and dragons roaming ice cap

sturdy tusk
#

That multiplayer reordering items bug was actually a pretty big milestone to get fixed. For a very long time, I've not been able to update the UI when a specific action of a player has completed. In singleplayer it's fine, because it all happens back-to-back. In multiplayer, though, what would happen is my "action completed" code would run after the client has sent the action to the server. Now it makes the whole round trip and only when the client does the action for real, that's when my "action completed" code runs

#

There's been some super hacky chaos going on in UI stuff for ages due to this issue

#

But now I don't need to worry about it anymore chiricookie

#

So anyway yeah the item reordering bug was caused by the item position getting reset due to the ui thinking the result of the action put the item in the original place, and then when the action finishes for real, an event fires that causes it to get moved, but it gets moved to the wrong position, or something. I dunno it was something crazy like that

orchid flower
#

on the topic of styles and element positioning

#

text is over icon and what is that small rectangle?

sturdy tusk
#

it's supposed to day "inspect in dialog" or not be visible at all

#

old bug that keeps coming back because that system is also cursed

sturdy tusk
#

Admittedly I do not fully test ui scaling with all CSS I write, I just write it in a way that feels like it'll work and like 50% of the time it does lol

orchid flower
#

create unit tests for css 🙂

sturdy tusk
#

literally impossible

#

changes too much

orchid flower
#

I dont even think that its possible

sturdy tusk
#

most of the problem is that a lot of the stuff to do with text and iconography and stuff has no dedicated system to ensure it all behaves the same

#

Well, no, text is getting there now

#

but iconography is still catching up

#

There's a lot of older UI code that I set up before I had the systems to make it all get handled automatically

#

the icons used in tooltips like the above are particularly cursed, that actually just uses css to reposition the icon that's normally attached to the text

#

it should have the technology to be able to extract the icon on the code side and render it separately so its size and position is handled correctly (including at smaller ui scales)

#

but instead i have to like hardcode it for each tooltip type

#

at some point i'll go back and fix that

junior valve
#

I havent played for a few days (since Friday), but it seems that one of the 2 Wayward processes (the one that uses less memory, I guess the server) now constantly uses up 1 core worth of CPU, fluctuating up and down a few %, even when nothing is happening
The issue is not present in Main Menu, it starts after loading a save, and stops when returning to main menu
I dont remember that process using this much CPU, especially when nothing is happening

gusty rapids
#

Hello, folks, hope somebody will help me with this... For some reason the game started lagging horrendously after I chose the Development branch. The issue is happening only after the save is loaded, there's no lagging in main menu.

The game is playable with this issue, but it's very uncomfortable. My PC is not that strong, but it's not a potato, this game always ran smoothly on previous versions.

sturdy tusk
#

Can you send your save?

junior valve
#

might be that CPU issue I mentioned above, how many cores do you have?
I have 4, when something else was using up 1 of them it was slower than normal, but when that stopped it was back to normal

sturdy tusk
#

Thank you! I'll take a look tmrw and do perf testing to see where time is being spent on your save

orchid flower
#

maybe its similar to my issue from some time ago - too many items in inventory cause game to have horrible performance

gusty rapids
gusty rapids
sturdy tusk
#

hmmm not sure then

orchid flower
#

even on fresh game?

gusty rapids
orchid flower
#

thats... weird

sturdy tusk
#

do you have any action slots getting ported between saves?

gusty rapids
#

Like, even with an all sides fresh game this problem is happening, and I dunno why, cuz the game runs smoothly on previous versions 😦

sturdy tusk
#

We did update to a new version of Electron for this update, that might have done something maybe?

#

(That's the thing that allows web apps to run natively — Discord uses it too for example)

#

I'm not really sure what other changes have been made that would be negatively impacting performance by such a degree

orchid flower
#

for me game is not exactly smooth either but for now I will blame that on amount of items

sturdy tusk
#

Does disabling Acrylic Transparency help much? It's less attractive but that is probably the most performance-heavy part of the UI

orchid flower
#

if I press f2 to disable all UI I should get same effect right?

#

does wayward has any type of fps meter?

sturdy tusk
#

devtools has one but it's not always accurate

orchid flower
#

I think I'm getting way more black screens today

sturdy tusk
#

you have to enable the bottom console if it's not already visible (press escape to toggle it) and then click on the plus or whatever to add "Rendering" and then in that you want "Frame Rendering Stats" I think

orchid flower
#

how do I enable that console?

#

got it

gusty rapids
sturdy tusk
#

oh no!

#

that's a huuuuge version jump

#

very hard to track down what caused the issues, then

gusty rapids
orchid flower
#

that frame rate meter almost certainly lies

sturdy tusk
#

that's web technology for you

orchid flower
#

again darkness

gusty rapids
sturdy tusk
#

oh, so it was recent then

gusty rapids
#

Like, FPS are smooth 🤔

#

Trying this version rn to confirm it, it's true, everything is smooth 🙂

orchid flower
#

is there any way to pinpoint source of this issue?

orchid flower
#

I remember that, but do you know where to even start looking?

sturdy tusk
#

absolutely zero idea

orchid flower
#

previously I got ndll.dll errors in event viewer so I fixed that

sturdy tusk
#

i poked around a bit the last time you mentioned it

tidal island
orchid flower
#

I sometimes get GL Context error but game seems to recover from this

#

but this one just kills the game

#

and I'm even on relatively fresh windows installation

gusty rapids
#

@sturdy tusk, just checked the Development version again with all the settings on default, then with Acrylic Transparency off, nothing changes. After that I tried low performance mode and also turned other visual features off, same result. Also, disabled all the mods, same thing.

#

The stuttering happens when my character is moving or taking any action, if that'll help y'all in any way 🥺

sturdy tusk
orchid flower
#

there is bug with updating stacked item counter when player eats item. In my case look at count of apple seeds

#

stack of 22 apples has only 7 apples

sturdy tusk
#

weird

sturdy tusk
sturdy tusk
#

Yikes

#

I don't really have ideas anymore

#

I'll follow up with Drathy and Spacetech and see if they have any ideas, they might ping you if they do

orchid flower
#

maybe do what I did few times - cook special version that logs way more performance info than normally and send it to @gusty rapids ?

sturdy tusk
#

no idea what i'd even log

gusty rapids
# sturdy tusk I don't really have ideas anymore

Oh well, thank you for your help anyway, I really appreciate it 🙂 I'll stay on a previous version then until the development version moves further in its version :3 Will be monitoring this thread though, I'd really appreciate any help, so ping me anytime y'all want, I'll answer whenever I can, thank you! 🥰

orchid flower
#

just for the reference - could you record your game and upload it for us to see?

gusty rapids
orchid flower
#

they would need to add some forms of performance logging

gusty rapids
#

Sorry for keeping you waiting, guys. I've recorded two videos for you to compare, one is a Dev branch version, another is 2.13.5.

#

As you can see, 2.13.5 is running way more smoothly than the Dev branch version.

orchid flower
#

runekeeper looks like its skipping frames

sturdy tusk
#

Wow that’s a huge difference

#

Tooltip can’t even keep up with your cursor on runekeeper

gusty rapids
#

I also noticed a huge frames drop on RK version, like, it's 45-49 FPS max. On 2.13.5 it's always 60 FPS 🤔

orchid flower
#

on fresh save my game doesn't look as bad as yours but its still worse than your beacon video

#

I'm used to games below 60fps so its not that hard for me

gusty rapids
#

Yeah, and I really dunno what to do, since no one had the same issue as me, it seems 😦

sturdy tusk
#

If you want, there is a perf test you could run that could help us

#

It’s a bit technically involved though

#

But I can walk you through it

orchid flower
#

I can do it too, just tell me if I should do it on new save or on my main save

gusty rapids
orchid flower
#

thats what amd driver measured

sturdy tusk
#

In the bottom of the Option Menu, in the Developer section, there’s a button “Toggle Developer Tools.” I think by default it’ll be popped out? If you have a second monitor put it on your second monitor, otherwise probably just keep the game maximised so you can switch between devtools and the game.
In DevTools, there’s a tab at the top that says “Performance.” If you click that, that switches the view to one that allows you to record performance over time, so we can see what the game is doing in the times it’s stuttering.
Near the top left of the view should be a solid circle button, I don’t remember what it’s called, “Start Recording” maybe? It’ll take a few seconds to warm up, once it has switch back to the game, move around a bit, then move the cursor around a bit, etc. Then switch back to DevTools, wait a few seconds, and hit Stop Recording or whatever it says in the little recording box in the middle of the screen.
It could take up to a minute or two for the performance report to load. Once it does, you should have an option somewhere to download it and send it here so we can look at it, or you could just send us some screenshots of it

orchid flower
sturdy tusk
#

Yeah should be top right I think? Maybe in a … menu?

#

I don’t remember the UI for it off the top of my head

#

Should show four options side by side, left bottom right popout, in whatever order it happens to be in

orchid flower
#

3 vertical dots in the top-right corner

#

then click first icon in dock side

sturdy tusk
#

The most important at-a-glance information in a performance recording is the timeline with the colourful bumpy graph. It’s like an overview of where the CPU time was spent at any given moment

#

Yellow/orange/whatever is generally easy to address because it’s our code. Purple is the hardest to address because (technical) it’s caused by the sheer number of CSS selectors in the game, and the sheer number of places the UI doing misc things causes the browser engine to recalculate all those selectors

#

I believe that graph should be just underneath the screenshot timeline

orchid flower
#

180 sec of profiling. I just walked around aimlessly.

#

saving is not happening...

gusty rapids
sturdy tusk
#

IE same information but over time, esp if you give us info about like what exactly you were doing in a given moment if you do different things over the course of the recording

orchid flower
#

I will restart the game and try shorter recording

#

this one just won't save

sturdy tusk
#

Might be an electron bug with that atm

#

I’m going to sleep now, will reply to further stuff tmrw!

orchid flower
#

both above traces were generated in turn mode if that makes difference

gusty rapids
#

It says its profiling, whatever that means 🤔

sturdy tusk
#

You have been recording for that entire time

orchid flower
#

nah, there is no warming up part, it starts recording from the moment you press start and it will stop when you press stop

sturdy tusk
#

I said what I said because stuff doesn’t capture correctly in the first few seconds

orchid flower
#

do like 60 seconds or so of just walking

gusty rapids
orchid flower
#

there is this bar labelled buffer - just stop before it fills, otherwise it might fail during saving

sturdy tusk
#

If you close devtools and reopen it you can skip it trying to load that gigantic recording

orchid flower
#

https://easyupload.io/zkchll
main save, magicology (slightly modified) enabled, I was just walking close to my base on spawn island. UI was enabled

sturdy tusk
#

also you can tell I failed to immediately sleep lol

#

Maybe I should mute this channel while I’m trying to relax with stories

orchid flower
#

these 4 traces from me should be good enough, if you want more just tell me

gusty rapids
#

Damn, didn't know it would be such a big size!

#

Should've known that I could just put it into an archive 😅

orchid flower
#

Mine were too big even after compressing

gusty rapids
#

Well, and now we'll have to wait, I suppose. We can't do anything anymore for now 🙂

orchid flower
#

chiri - here are some interesting logs to analyze - why don't you look at them? (pokes chiri in her dream)

#

I think that description is a bit off

tidal island
orchid flower
#

this book will need to be rewritten

errant loom
#

is this a new issue? like has the dev branch got worse performance lately?

#

since i just got some emails and a forum post talking about performance

junior valve
orchid flower
#

from my point of view - performance didn't change much since I came back to wayward

errant loom
#

okay

#

all good, i am finding some issues

junior valve
#

overall, my issue some peformance decrease because 1 of my 4 cores is used by a separate issue, 1 by that wayward process now constantly using a core, and the remaining 2 compete with other stuff (browser, etc.) for CPU time so there is slight delay
If I had more cores, or the separate issue was not present, it would not be noticable
performance-wise, that action history fix last week noticably increased performance
#changelog message

gusty rapids
orchid flower
#

Andrej27 - do you know how to disable this prompt temporarily?
it seems that my localPlayer.prompt = async function() { console.log("Auto YES"); return true } is not working on this

junior valve
#

no, I know nothing about how systems interact with each other, or how UI functions, I can mostly just read the code in functions, and maybe infer when/how some are called

errant loom
#

you can disable it by traveling with Debug Tools

#

you might also find the method on how it does it by looking at the code there

junior valve
#

I am guessing it just directly uses SailToIsland Action without bothering with prompts
I have found where the prompt is called, but I cant see any way to skip it or automatically give it a predetermined answer, and the prompt system is beyond my understanding
Easiest way I can think of is to extract the whole app.asar archive, modify production.js there so sail(e) function under IslandsSailDialog does not use the prompt, and run the game using that extracted directory instead of the app.asar archive

orchid flower
#

how does that work?

#

I'm talking about durability

errant loom
#

did it change magical properties?

orchid flower
#

no, I simply crafted it and tried to use it for trapping training

#

and I noticed that in log I didn't see standard "throw, repaired, throw, repaired" loop of messages.

#

In log I got throw, throw, throw

#

So I checked what is the deal with the item, and this is what I saw

worldly pine
#

Hey. What does a yellow/orange outline on a crafted item mean? And is there a skill or tool we can use to identify unidentified characteristics (question marks in the description)?

There are very few games I’ve played where I’m still encountering entirely new features, items and mechanics after this many hours of play! Brilliant stuff.

On the other hand… bits of thaumaturgy, for example, I’ve only uncovered by googling the recipes. They’re so obscure, it would take all kinds of chance for me to happen to have the right ingredients in my inventory to unlock the crafting recipe…

Apart from relying on random scrolls (which 9 times out of 10 seem to give me a new recipe for drinking water!!!) is there some in game guidance or indication about these things?

It would be great if you discovered runes or totems or cave drawings or something like that that taught you about magic, for example…

Unless I’m just completely missing something, of course!!!!

worldly pine
#

Ah, I gather from the image just above my comment that the colour means mastercraft? That’s cool, my first mastercrafted items!

So what would reveal that in my tooltip?

orchid flower
#

I hope you will release these performance upgrades as soon as possible

orchid flower
#

I think dryads can spawn regardless of zone tier

#

another book to rewrite

gusty rapids
sturdy tusk
#

I think they affected you disproportionately

#

I did find one performance issue that I fixed

gusty rapids
orchid flower
#

This book seem to refer to old deity system

orchid flower
#

why there is no dev build today?

sturdy tusk
#

Sorry didn’t realise deploy was failing

#

I’ll manually push out a build once I fix it

#

ETA 3h

sturdy tusk
#

Okay deploy issue fixed, will be out in like 2 mins

errant loom
errant loom
#

or specifically how this item came to be

#

or like, how you came to notice it

#

like you crafted it, then were throwing it and repairing it?

orchid flower
#

I mined bunch of rocks, then went for trees with a bunch of auto-use dismantle actions to get poles. after that more auto-use craft trap actions.
I noticed that I got one masterworked trap but I didn't think anything of it at that time.
I activated my auto-use repair and auto-use throw actions and started walking into a wall. In the log I noticed that I get bunch of "you throw" information but nothing about repairing so I checked item and that was what I saw.

#

If I notice any item with weird durability I will remember to create backup and upload it here

orchid flower
#

I dont know if its only me but this color makes these messages really hard to read

gusty rapids
#

Howdy, @sturdy tusk, @errant loom. Sorry for the ping, I hope you don't mind... If you do, I won't do that in future 😓 Tried to play Wayward after the update with fixes, and unfortunately lags are still existing in my game, I feel like nothing changed. I tried to create a new save, it's all the same.

Sending the new trace file, hope that'll help. Thanks for teaching me how to do that, btw, Chiri, I really appreciate it. This game is connected with some warm memories in my live, so I'll be glad to help with anything I can! I love this game and want it to become even better :3

gusty rapids
errant loom
#

just want to confirm something

gusty rapids
#

Sure, I'll try 🙂

errant loom
#

hmm, it looks like it loads through Steam now even when running it directly

#

so you might need to close Steam first

#

interesting

gusty rapids
#

I'll do that, no worries :3

#

Oops 😳

errant loom
#

yep, seeing that too

#

will check into and get back to you

#

i think smething changed in Steam to cause these issues

gusty rapids
tidal island
#

💜

orchid flower
#

thats interesting, it works for me

junior valve
#

A performance issue with the automatic action slots for the last 10 performed actions, when you have large number (hundreds) of the used item type in inventory
Probably also present for normal action slots, though unlikely to occur there during normal play
I was using Ash to section off parts of ocean to dry it up, using Set Down action from the item to place it, while I had about 700 pieces in inventory at the start
Each Set Down action created an action in the automatic slots, and game got slower and slower, even just walking around, until I cleared all the automatic slots when it returned to normal
I am guessing each individual slot was looking for best item to use for the action, which was slow for 700 possible items in inventory
Maybe prevent creation of duplicate automatic action slots?

sturdy tusk
#

Hmm that's supposed to happen

#

I guess it doesn't dedupe because it's targeting the specific tile each time

#

But the "best item" should also be cached, so I'm not sure why you'd be getting issues with that

#

I'll add both to the todo

orchid flower
#

In such case cant you just soft-lock these auto action unless either action slot is altered in some way or new item is added to player inventory?

#

its not like item will magically appear in inventory that can be used

#

in Andrej27 case these actions that he has should just do lookup through his inventory, check that he has nothing matching them, and just softlock themselves until something is added to inventory

sturdy tusk
#

That's basically what's supposed to happen

#

It's a little more complicated than that though

orchid flower
#

I know you can get fancy with such optimizations

sturdy tusk
#

We have an ItemFinder class that listens for inventory changing events and only searches through the entire list when it needs to

#

Or at least that's how it's supposed to work

#

Most of the time the events are "add an amount of items" or "remove an amount of items" so it's supposed to only change its result if those changed items could feasibly be affecting the current result

#

But the above tells me there's a bug with this

orchid flower
#

In my current game performance is even worse, its seconds per frame, not frames per second, but I'm partly to blame. I picked up literally my whole base

sturdy tusk
#

oh jeez

#

honestly that would be a useful save to use for performance optimisations if you send it

orchid flower
#

I abused that storing magical property "unexpected behavior" with large chests

#

I can upload it, just remember that you need Useful Chests mod from steam or some equivalent of this

#

oh darn, 106 mb save

sturdy tusk
#

jeez

#

loading it without a mod

#

oh you know it's only 34x more than normal

#

this is insane

#

it hasn't even loaded yet

#

this is too many items

#

THE UI IS TRYING TO DISPLAY OVER 18K ITEMS

orchid flower
#

wooden chest with mod is 500

sturdy tusk
#

Presumably this is because all the items got yeeted out of containers into the player inventory

orchid flower
#

then you found a bug - with UI closed it should skip this entirely

#

ah

#

then yea, go make yourself a tea, read Silmarillion and by the time you finish game should be done

sturdy tusk
#

omfg it loaded

orchid flower
#

looks just about right

junior valve
#

got more ash, about 730, and recorded performance profile
first is Setting down 12 Piles of ash, taking step forward between each 3, the other is after restarting game (ctrl+F5) taking 10 steps forward, then removing the automatic action slots

orchid flower
#

Interesting thing about my save is that with all these items I can still walk with ~1fps, but when I jump on a boat performance drops drastically

sturdy tusk
#

Unrelated, I looked into the size of your save and after removing all items on your current island, all your messages, and game.history, it only took it down to 80mb. No clue where the rest is coming from

sturdy tusk
orchid flower
#

I generated few islands

#

island I'm currently on is about 0,50 from spawn

#

can you erase other islands data from save and then check save size?

sturdy tusk
#

I actually don't know how to do that chiriaaaaaaaa

#

We don't have things set up for removing islands

orchid flower
#

then you have good puzzle to solve - why my save is so big

sturdy tusk
#

I think doodads and creatures and tile events are all saved on all visited islands

#

Terrain only saves "differences"

orchid flower
#

about my save - I get it that when all the items popped out of their chests and into player inventory game tried to render all of them and that caused issues, but why do I get so poor performance with all auto actions disabled and items in containers? Game shouldn't try to do anything with them

#

and why jumping on a boat makes everything 10x worse?

sturdy tusk
#

It’s the crafting system

#

The current crafting system does all calculations from scratch whenever it’s told to update atm

#

Which is a lot of the time

#

I was working on a new crafting system similar to ItemFinder a few years ago but never finished it. Will be starting again next major

orchid flower
#

this happens when mousing over Thaumaturgic milestone

mighty moss
#

hey first save file in a couple weeks and my auto-use actions ain't workin no more... they worked up until this point about 33k turns n the icon for auto-use just changed and stopped working.

sturdy tusk
#

You have them disabled

#

Click on the pause button above your action bar

mighty moss
#

sheeeeet

#

Y?

sturdy tusk
#

Why what?

#

Some people like the option to temporarily disable auto use slots without having to manually change them all

mighty moss
#

nvm i see it now

#

is there a shourcut ?

#

or i just clicked it without paying attention lol

sturdy tusk
#

press left ctrl, then press left alt

mighty moss
#

ahhh i see

#

😂 haven't felt like an old man in a while

#

👍

errant loom
#

there's something else going on with performance i want to add - i think it's Steam or Electron related

#

i'm getting unexplained frame skipping even in periods of low CPU usage

#

my guess is Electron since it doesn't happen on Stable, but it might just be with how the Steam API (maybe overlay?) is interacting with our rendering on the newer Electron

orchid flower
gusty rapids
#

I tried playing with the Steam overlay turned off, it still lagging 🤔

orchid flower
#

I wonder if its something on steam end

#

to tell it one would need to launch the game without steam, but game just complains when that is done

sturdy tusk
#

Yeah I don't think Spacetech has been around to fix that yet

sturdy tusk
#

It might not sound like that big a deal, but the two most recent modding #changelog changes are a pretty big step towards the discovery system & encyclopedia

#

Milestones for years now have been tracking your discovery of non-modded game content, but whenever we've added new milestones or new situations where the existing milestones could be updated, we've had to hardcode in checks to prevent modded stuff being added to the milestone

#

It's only in the past couple years that I've begun to expand on the way these "discovery" type milestones work — displaying all the stuff you've discovered in the Inspect Dialog when you Inspect a milestone, etc, and all the changes have led to some cases where mod registrations have caused those discovery milestones to do unexpected things

#

The thing is, there's only two reasons that modded stuff couldn't be stored in discovery milestones:

  1. Adding content mods shouldn't make it harder or easier to achieve base-game milestones.
  2. Milestone data is global, ie, it exists outside of your saves. Mod game content registration IDs are per-save. That means that if a save mod registration ID was put in milestone data, the Inspect dialog would potentially show two different modded items in different saves.
#

Both of these issues have been solved now though, over the past couple months:

  1. That new "Disable Discovery" option? That required us pre-computing the exact list of things that should be discovered for each discovery milestone on game startup, which means now instead of hardcoded "is this modded?" checks for each place we add to discovery milestones, now we can save modded stuff to it and be like "yeah this one doesn't count for the milestone"
  2. And now, all mod game content is registered with a global registration ID if the mod is enabled, and there's a way to turn any save mod registration ID into a global mod registration ID, or vice versa. So for example, if you pick up a modded item, the Collector milestone automatically converts its save registration ID into its global registration ID for storage. It converts it back to the save variant (if the mod is enabled, otherwise it pretends it doesn't exist at all) for display in the Inspect dialog
#

And what this all means, is that when discovery milestones start being used for what content appears in the Encyclopedia, mod content can show up there too, without any extra effort from modders. It'll also show up when you quit to main menu, when it'll be listing all the stuff you've discovered in your current session. And the Encyclopedia will also be available in the main menu!!

gusty rapids
#

Hey, that's a great job! ❤️ Does that mean that mods won't disable the milestones discovery and use?

sturdy tusk
#

Yes discovery milestones don't get disabled by mods

#

Only discovery milestones though

gusty rapids
#

Awesome! 🥰 Thank you so much for your hard work!

orchid flower
sturdy tusk
#

I'll let this wait until tonight's deploy rather than deploying manually

orchid flower
#

i found something fun.

#

it seems that erasing all modded items from collector didn't help

#

even saveDataGlobal.playerMilestoneData[Milestone.Collector].data = [] didn't help

sturdy tusk
#

Hmm

orchid flower
#

that save even fails to load with all mods disabled

sturdy tusk
#

there is an item in this save without a type somehow

#

I didn't even know that was possible

orchid flower
#

I removed dospelling cloth from magicology and decided to put it in separate mod

#

it doesn't rely on anything in magicology so its better to keep things separate

#

maybe thats the reason

#

is there some way to safeguard against that?

#

or can you just add "skip invalid item" code?

sturdy tusk
#

yes i'll fix it don't worry

#

I do want to figure out how this happened though because it's a little concerning

orchid flower
#

do you want few earlier saves from this world?

sturdy tusk
#

it's specifically whatever was in this second to last slot in the player's inventory

orchid flower
#

second to last.... it could be either dispelling cloth or runic staff

#

what will happen if mod adds item and then said item is removed from mod?

#

The only save that I managed to load from this world dates quite a bit back, so it won't be too helpful in figuring what it was exactly

#

Anyway, I will just create new world to be my playground

sturdy tusk
#

Afaik it's supposed to keep the item with the type and the save just isn't supposed to understand that ID anymore

#

Other items in this inventory behave correctly without the mod

#

All data about the item retained

#

There's just no description hooked up to that item type anymore

orchid flower
#

So game just freaked out because it found "something" that was supposed to be an item

sturdy tusk
#

Yeah. I mean, it is an item, it just has zero saved data in it

orchid flower
#

That is as bare as it possibly could be

gusty rapids
#

I'm trying to play the Dev branch even though it's lagging. Got used to it, ngl, but I feel like it's lagging even more when there's a lot of things on the ground.

errant loom
#

does that lag change if you disable adjacent crafting in the game options?

gusty rapids
#

Unfortunately I'll be away from home due to the nature of my job, so I'll be unable to get to my PC for at least two-three days 😦 But I'll write here after I check this option out right away after I'll return home 🙂

orchid flower
#

There is something off with ItemTypeGroups

sturdy tusk
#

What’s wrong with it?

orchid flower
#
const GetItemFinder = (toolItemGroup: ItemTypeGroup, consumed:boolean = true) => 
{
    const itemFinders = new WeakMap<Player, WeakMap<Item, UsableActionItemFinder>>();
    function getItem(player: Player, actionWith?: Item): Item | undefined {
        if (!actionWith) {
            return undefined;
        }

        let findersByItem = itemFinders.get(player);
        if (!findersByItem) {
            itemFinders.set(player, findersByItem = new WeakMap());
        }

        let itemFinder = findersByItem.get(actionWith);
        if (!itemFinder) {
            findersByItem.set(actionWith, itemFinder = new UsableActionItemFinder(player, {
                includeSubContainers: true,
                filterGroup: toolItemGroup,
                excludeProtectedItems: undefined,
                filter: item => !item.isProtected()
                    || (!consumed && item.durability > 0),
            }).track());
            actionWith = undefined;
        }
        //@ts-ignore
        const temp = itemFinder.all();
        return itemFinder.best();
    }
    return getItem
}```
#

I borrowed your code for finding item

#

const getItem = GetItemFinder(DispellingCloth.INSTANCE.itemGroupDispel)

#

if I use it like this and then catch execution with breakpoint it searches for items with itemtypegroup -10004

#

but as you saw there is no ItemTypeGroup with that typegroup

#

I did some testing and that Itemtypegroup returns absolutely nothing

#

but when I altered ItemTypeGroup it searches to -10002 during breakpoint it magically started finding items

sturdy tusk
#

Might be due to the mod registration changes

#

Would you mind sending me the mod and the save?

orchid flower
#

I'm using the same save that last time had phantom item

#

but I dont think that is connected

sturdy tusk
#

Yeah unlikely

#

Actually can you also send your global save data?

#

Then I can see if the -10004 is its global id

orchid flower
sturdy tusk
#

Thank you!

orchid flower
#

seems like there is more

#

after adding super dirty //@ts-ignore toolItemGroup = ItemTypeGroup["ModDispellingClothDispel"]; to my GetItemFinder to force it to search for correct id it seems that usable actions registrations are doubled or something like that

sturdy tusk
#

I'm reproing the group issue

#

oh weird

#

it's like it doesn't even know about itemtypegroups needing to be updated on load

#

that's supposed to be default though

orchid flower
#
        {
            GernerateUsableActionDispelGroup(registrar)
        }
    )``` this is my only registration to main context list, all other are in submenu
#

I hope that you could launch build after you patch those because it can seriously mess with modded players

sturdy tusk
#

Ah I see, the item group registration issue is an old bug revealed by the recent changes

orchid flower
#

other than missing labels I managed to find something weird

#

they are multiplying

#

its hard to reliably reproduce this bug

#

but it seems that key is to display submenu then move mouse out of the context menu so that submenu wont be closed and then rmb on something else

sturdy tusk
#

oh it's a submenu?

#

i'm not surprised there's an issue like that

orchid flower
#

most of the times I managed to reproduce it with clicking rmb somewhere on crafting menu but I have no idea where exactly

#

easiest way to fix this is to autoclose submenus when mouse moves out of either submenu or main context menu

sturdy tusk
#

I am definitely not going to do that

#

It was very intentional that they don't close

#

It's super annoying when submenus are set up to work like that

#

Most likely the issue is there's a race condition

#

IE something along the lines of showing a submenu while its parent is closing?

orchid flower
#

something like this

#

to reproduce it I have to click rmb somewhere

sturdy tusk
#

normal clicking doesn't do it?

orchid flower
#

I didn't manage to reproduce it with lmb

sturdy tusk
#

interesting

orchid flower
#

I would say its more like submenu gets orphaned when game detects that I rmb somewhere and it closes context menu without checking for submenu or something like that

#

I cant reproduce it always so race condition or something similar probably is involved too

#

oh

#

I managed to reproduce it with lmb

sturdy tusk
#

hmmm

#

i don't think this should even be possible

#

so it's probably something unrelated to what i was thinking

#

when a context menu is in the process of closing it tells all its submenus to also close, recursively, and it is unable to open new submenus while closing

sturdy tusk
#

I tweaked the context menu code a bit but this isn't something I can easily reproduce atm

#

Oh wait my bad I thought it was in your tweaked magicology, nvm I can repro

#

I actually can't get this to not repro lol

#

It's very interesting it only happens with your submenu

#

Ohhhh

#

It's because you have two options getting registered with the same ID

#

The two Dispel menus

#

The first one gets forgotten

#

That's not supported and can't be supported, but I have changed the code so this situation is handled a little more gracefully

#

It now will remove the old option and log a warning

orchid flower
#

2 options? as in 2 positions in submenu have same id?

sturdy tusk
#

Yeah

#

the first dispel submenu there is the only broken one

#

because the context menu forgets about it when the second one gets added

orchid flower
#
        {
            GernerateUsableActionDispelGroup(registrar)
        }
    )``` but this code should only register it once
sturdy tusk
#

ah right yeah i forgot you mentioned that

#

i'll look into that next