RimWorld

RimWorld

What's for sale?
113 Comments
Protok 7 Oct @ 10:53am 
Thanks for the mod.
Could you add a "Global Stock Search" button to the right bottom corner of world screen, please?
To free task bar space.
Alan 12 Sep @ 11:22am 
@hazelsteacup, pretty sure that issue is related to you using a gravship, just change the mod to not require a console in the settings.
hazelsteacup 12 Sep @ 10:29am 
It has been somewhat intermittent (it was broken, started working again, then broke again, and I can't figure out a specific trigger). Also, the global search still works, just not the world map.
hazelsteacup 12 Sep @ 10:27am 
I have a comms console, but at some point, it stopped qualifying for the "need a comms console to get trade info" and I no longer got sale info *even for places I had already visited*. I think this happened before 1.6, and it happens even when a kid is not at the console. https://imgur.com/a/hyxG6fP
CrackerJack.beta 4 Sep @ 6:12pm 
I didn't feel any performance problems from the 28th update but personally I hated the extra tabs to flip through when I'm not sure where the specific item I was looking for is categorized as. I'm glad it got reverted for the wrong reason lol
Alan 30 Aug @ 10:32am 
This mod is finally complete, 10/10.
Sarg Bjornson  [author] 30 Aug @ 7:19am 
v3.02:

- Applied the null negotiator bug fix by lisanhu. Tested this one as much as I could and verified the tps impact of the mod is now minimal (as much as any dialog while open). If you still get insane lag spikes please report it with Hugslib logs and Dub's analyzer screens
Alan 29 Aug @ 2:48pm 
It seems that your version ruins TPS only for a period of time while Escarval's version ruins it permanently as long as the mod is loaded. Alas, without his patch per-settlement price-list is once again broken, but it turns out that you can, in fact, search for specific genepacks in unpatched version of the global tab so it's bearable. If Escarval could make a less destructive fix specifically for per-settlement price-list, this would be 10/10.
stups 29 Aug @ 11:13am 
From a glance I would guess that there was too much unpredictable code that would run on every tick on every world object.
Sarg Bjornson  [author] 29 Aug @ 11:02am 
Yeah, no shade on Escarval. Unfortunately I have too much on my plate and can't verify if the problems are easy or hard to fix
Poindexter1985 29 Aug @ 10:41am 
"Turns out the Escarval fixes were terrible for performance" into the change notes seems to make Escarval look bad somewhat unfairly. Consider the timeline of the comments here.

Escarval commented on July 30 that his patch was for something that Ludeon *had already addressed* in the unstable branch. What was the unstable build at the time was promoted to the new stable build on August 28.

Escarval's patches were merged into this mod on the same day that Ludeon changed the code that Escarval was patching.
Sarg Bjornson  [author] 29 Aug @ 7:08am 
Yeah, reverting this one
stups 29 Aug @ 4:06am 
According to Dub's Performance Analyzer Patch_Worldobject_DoTick:Prefix eats a lot of performance.
Brindav 29 Aug @ 4:01am 
Removed the mod and the faulty patch is gone and tps have came back

(Has to be said i am playing on a huge modlist so might always be a mod incompatibility but would be surprised as i can't see which mod would affect this.)
Brindav 29 Aug @ 3:49am 
Had the same error so did the research and while i can't see any related error Dub's performance analyser is showing me that the harmony patch "Patch_worldobject_DoTick:Prefix is always on top of the list for tps consuming patches and takes an average of 70% of the total work on the patches, don't really know how to give you further information or some link like i can do with hugslib so if you need more i'd like to know how to give you more data.
Sarg Bjornson  [author] 28 Aug @ 10:45pm 
You'd need Dub's Analyzer screens
QOMRADEQUEER 28 Aug @ 10:29pm 
How can I provide more information, then? My untrained eye doesn't see any errors in the log or anything like that.

All I know is that the most recent update literally cut my TPS in half, from ~360 to ~150. This didn't occur before the Aug 28th update. After the update, it began to occur. Removing the mod, as it was the only mod in my list to update, fixed the issue.
Sarg Bjornson  [author] 28 Aug @ 10:21pm 
"It tanked tps" tells me absolutely nothing
Alan 28 Aug @ 2:29pm 
TPS tanking aside, why is it that you can search for specific psytrainers and skilltrainers but can't search for specific genepacks?
QOMRADEQUEER 28 Aug @ 12:36pm 
Heya. I am on linux at the latest version has absolutely tanked my TPS. I had to remove the mod completely in order to get my save's TPS back up to 360 at speed 3, instead of the 150 it was today after the update.
Sarg Bjornson  [author] 28 Aug @ 8:28am 
v3.01:

Added the patches and performance improvements by Escarval
Alan 28 Aug @ 8:11am 
Sold my TPS to know what other factions sell, 9.9/10.
Doktor_muskel 16 Aug @ 10:24pm 
If your trader is in a shuttle off the tile, then the mod doesn't recognize the pawn as a possible trading candidate. Maybe you could make the mod center on a given pawn instead of a tile now that trading is done more easily with shuttles/gravships.

Though I recognize that this might be more than you bargained for when you updated the mod in the first place, I am grateful that you did.
Nicocat 9 Aug @ 3:23pm 
The "what's for sale" gizmo vanishes if you're at a quest map or other kind of map that "isn't your settlement" and the option for needing a powered trade console is enabled. The code is checking if the map's parent faction is yours, which it's not. This is obnoxious for gravship gameplay but easy to get around just by turning off that requirement.
Molay 6 Aug @ 1:22pm 
Enjoy the vacation!
Sarg Bjornson  [author] 4 Aug @ 2:40pm 
Yeah, the more people can test during these days the better
Escarval 4 Aug @ 2:04pm 
@Omniburg I've made a modified version of the mod and uploaded it as a fork of Sarg's repository. It includes the mentioned patch, some bug fixes (including the null negotiator bug), and a few UI changes. You can find it here:
https://github.com/EscarvalOokt/WhatsForSale
Omniburg 4 Aug @ 11:12am 
Hi @Escarval , I would love to use the patch you have written. Please let me know where to find it if you have uploaded it :) thank you.
Sarg Bjornson  [author] 4 Aug @ 8:18am 
On vacation till the 15th
Pos 4/5 4 Aug @ 2:01am 
@Sarg Bjornson Hi! It seems the null negotiator bug is getting worse in 1.6. I have created another pull request to fix it in your github. Do you mind taking a look at it when you are free?
cursedlemon 2 Aug @ 7:49am 
is there a way to have the tabs in trade stock closed (deafult) cause its laging my game when i open the tab
Sarg Bjornson  [author] 30 Jul @ 10:49am 
GitHub is juanosarg
Escarval 29 Jul @ 11:39pm 
A Ludeon dev confirmed this is already fixed in the unstable build, so ideally it won’t be an issue going forward. But in case the fix doesn’t make it to stable, I’ve written a Harmony patch to disable ticking for settlement stock. I’d be happy to share it — just couldn’t find a GitHub repo. Let me know if you can provide a link!
Escarval 29 Jul @ 11:39pm 
Just a quick follow-up: after further investigation (and help from the official RimWorld Discord), I found the slowdown isn't caused by the mod's logic itself, but by how WorldObject handles ticking for IThingHolder.

When the mod accesses Settlement.trader.StockListForReading, the stock is lazily generated. Once created, all the items are stored in a ThingOwner inside the settlement. Since Settlement implements IThingHolder but not IThingHolderTickable, all those items start ticking every game tick — even when not visible — causing major performance issues.

This only happens after stock is accessed, which explains the delayed and persistent lag.
Sarg Bjornson  [author] 29 Jul @ 10:09am 
@GPT-69: Bear in mind this mod is on maintenance mode, as I'm not the original creator. You are welcome to make a push request on GitHub if you want to contribute to it, though I'm away until the 15th
WinRAR 27 Jul @ 4:53pm 
I also noticed GPT-69's problem and it drove me insane trying to fix it. I think the performance drop also goes away when traders restock
Escarval 26 Jul @ 12:33am 
Hi! I've been working on a fork of this mod and found a major performance issue I wanted to share.

When you remove the limit or set the settlement search range too high, the mod generates a large number of tradeable items for traders. As a result, the game suffers a significant performance drop — even after closing the trade window. The slowdown persists across saves and can only be fixed by reloading a save from before the window was ever opened.

The root issue is that all these tradeable items are instantiated and remain active in the game's tick system (especially Verse.Thing.Tick), consuming resources even when they are not visible.

To avoid this, it's best to load trade data only while the window is open, and ensure all data and references are fully cleared afterward. Otherwise, the game continues processing the tradeables in the background.

Just wanted to flag this in case you consider an update. Thanks for the original work!
khamenman 22 Jul @ 10:40pm 
I'm doing the gravship start, and it seems like the "What's for sale?" gizmo disappears when I fly to a quest tile, such as an ancient complex or a work site. If I move the ship one tile over, it appears again. There's nothing in the logs.
Twilight 20 Jul @ 2:59pm 
The only time I had anything like that it was in conjunction with having a super densely populated world with no search radius limit in the mod settings with mods that add a bunch of slaves to all settlements. That was quite some time ago, and now I tend to keep the search radius modest. If you go hog wild with it might as well just add a mod that lets you buy anything you want if your spawning 200+ settlement inventories searching for something.
Sarg Bjornson  [author] 20 Jul @ 6:32am 
Yet no logs, no performance analyzer screens, nothing, so I won't look at it. You ignore me, I ignore you
Codexvn 20 Jul @ 2:11am 
There is a very big performance problem
900tps -> 400tps
流云 19 Jul @ 9:03am 
When I turned on the search function in the settings and I displayed the items within 100 squares, my tps plummeted from 360 to 130. And when I turned off this feature and reloaded the save, my tps recovered.I'm curious if the implementation of this feature is taking up too much computing power:kotomiclannad:
Sarg Bjornson  [author] 18 Jul @ 2:24pm 
No log, no clue
Pos 4/5 29 Jun @ 11:34am 
Thanks for the update!
0。0 24 Jun @ 3:40pm 
Can the grouped lines be changed to tabs, like how the "Show what will buy" button displays them? Or is there a GitHub repository? I could submit a PR for this.
frame 24 Jun @ 9:36am 
Thank you!
Sarg Bjornson  [author] 24 Jun @ 8:04am 
v3.0:

Updated to RimWorld 1.6
八九寺 16 Mar @ 2:19am 
Thank you for your answer
VitaKaninen 15 Mar @ 10:30pm 
Are you sure that the settlements actually have slaves for sale? Usually, once your colony reaches a certain size, slaves are no longer for sale anywhere. When I use a mod that forces slaves to be for sale, they show up for me.

My guess is that if you go and visit each settlement, you will see that they do not have slaves for sale, and that is why they are not showing up.
八九寺 15 Mar @ 10:25pm 
I can't see the sale of slaves.