Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

shops.json assumes only one restock timer per shop, should be per-item per-shop #2

Open
Hubcapp opened this issue Jan 25, 2021 · 1 comment

Comments

@Hubcapp
Copy link

Hubcapp commented Jan 25, 2021

Unfortunately, the assumption that all items in a shop restock at the same rate is incorrect. Recent data from the OSRS wiki team have found that every item in a shop has its own restock timer (seen here, for Hickton's Archery Emporium.)

After analyzing RSC+ replay data, the same per-item restock timer can be seen in RSC as well. Worse, I have found that there is no definite correlation between how many ticks a restock action takes in RSC compared to how long it takes in OSRS. Sometimes the amount of ticks the same, sometimes it is not, and it is not evenly scaled between the two games per-shop or per-item either. At some point, the timers were re-evaluated and redefined, and we can't rely on OSRS data to indicate what the restock timer could have been in RSC, further than just taking the OSRS data as a good suggestion.

No one suspected per-item per-shop restock timers during the RSC preservation effort in 2018, and so, there was no special effort made in preserving shop data, further than purposely observing the restock rate of maybe one or two items in a shop. This data is unlikely to be in YouTube videos, since they are edited down and it would be obvious to trim out a section where a player is staring blankly at a shop, and RSC fansites were never this detailed. Basically, there will be lost data, unable to be retrieved unless the official game is put back online again, or without some other involvement from Jagex.

I have collated all data that can be easily ascertained from RSC+ replays (with timestamped citations) in the attached spreadsheet. shop.data.ods.gz

My general observations are as follows:

  1. Restock events are defined in number-of-ticks, similar to OSRS.
  2. Jagex liked to use restock timers that were multiples of 10. I have seen restock timers of 10, 20, 40, 80, and 100 ticks, and no other values. If a restock timer value is unknown, it may be more likely to be one of these.
    • Lobster & Swordfish at The Shrimp and Parrot have an unknown restock rate of at least 201 & 361 ticks respectively
  3. The same item sold in one shop may not be restocked at the same rate as that item in another shop.
    • Vials restock in 20 ticks at Jatix's Herbalist store, but in 100 ticks at Obli's general store in Shilo
    • Bronze Arrows restock in 10 ticks at most Hickton's and Lowes, but in 20 ticks at Aemad’s Adventurer’s Store
  4. Destocking an item happens at the same rate as stocking the item, so both event types can be used.
  5. Items sold to a general store that it doesn't usually stock destock after 200 ticks. Several examples of this exist with different shops and different items.

Naturally, the most important timers were the ones most likely to be accidentally represented in RSC+ replays, so things are not very grim, but it is definitely unfortunate that we didn't have knowledge that this was something that needed to be preserved.

The code I used to identify shop events is public here. Because there are many different methods that could be used to squeeze restock data from shop events, I didn't program that part into the scraper, it was done manually.

@Hubcapp
Copy link
Author

Hubcapp commented Feb 2, 2021

Hi. I've spent the past week or so pouring over all data that is known to freely exist that could indicate RSC shop restock rates, including the data in this repository.

I found that the shop data in this repo has jokes in it and is not good at all. e.g. the item id for tanned Leather is used instead of where Feathers should be stocked, Water filled vials where there should be empty vials, etc.

I have compiled RSC+ data, OSRS data, OpenRSC (private server) data, and 2003scape (private server) data into one table & made my best guesses at what the RSC shop restock timers were.

Here is that spreadsheet, for your free use. Attribution "required" on this one, since the guesses are my own hard work. everything.known.about.rsc.shops.ods.gz

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant