Skip to content

Cached prices for multiplayer and remote server environments #11

Description

@esbe1175

With the boom in multiplayer SPT, a couple of issues have become noticeable.

Whenever you hover over items, the client requests flea price info from the server. Locally, this is not a problem, as the exchange is near-instant. However, when connected to a remote server (say, with 140 ping), you will experience severe stutters, as the client "freezes" while waiting for a response from the server. You can disable in-raid flea prices, which helps keep this issue out of actual gameplay, but this is a bit of a bandaid solution, given how useful LootValue is otherwise.

The second issue is that whenever multiple people are connected to the same server, the constant requesting of prices slows down the server noticeably. I am playing on a server with 5-10 players connected at once, and all the requests are causing issues.

I am not super knowledgeable about SPT from a coding perspective, but I would propose having prices cached server-side and then distributed to the clients periodically. This would transform many small requests into one larger request, as well as solve the stuttering issue since we would no longer be waiting for a response; we would just read the cached prices.

As to how often the price list should be distributed, it could be every hour, plus whenever you launch the client. Alternatively, it could be whenever you enter a raid or whatever makes the most sense.

I hope this is something you could take a look at 🤗

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions