Forum:Let's talk about F.S.W.E.

From Meta Wiki
Jump to navigation Jump to search
Forums: Index > Let's talk about F.S.W.E.

That's right, Fresh Start World Exchange prices!

You are probably aware that Jagex is doing this thing called Fresh Start Worlds where people can start over in RS3 on new accounts with a brand new economy and Grand Exchange. This has turned out to be rather controversial, but whether you hate it (or just haven't heard about it yet), we have some decisions to make about how we handle the new Grand Exchange prices on the wiki.

Here's what we know:

  • There will be a completely separate Grand Exchange, with prices that float independently of the main game
  • This Grand Exchange will have price updates more frequently than the standard "once per day or so" of the main game. I'm not sure how often this is, but I'm guessing it's roughly every 4-6 hours.
  • Some details TBD, but Jagex will be providing the prices to us in some way that will be digestible by GazBot
  • It sounds like they are planning to run this on OSRS too in the near future
  • This might become a regular thing, so we should maybe not just run to the hackiest possible solution

We use Grand Exchange prices in many places, including:

  • Item Infobox
  • Exchange: pages (not super widely used)
  • In various templates (recipes, monster drops, MMGs)
  • Calculators, including dynamic calcs
  • As part of expressions in tables, prose, etc
  • Historical graphs

Having an entirely separate set of Grand Exchange prices is a bit of a shock to all of these systems. We need to decide how aggressively we want to support them on the wiki. I have 5 options (with a few sub-options) for how we handle this. Some of the details are fairly technical, but each of the 5 would provide a functionally different user experience for people playing the game mode.

Option 1: Do nothing[edit source]

This is the Cook Me Plox special: when confronted with something that requires a lot of work, just ignore it and hope it goes away. Don't include anything about the alternate prices, period.

Option 2: Only show the FSW price in Infobox Item[edit source]

Basically, add a new row in the template that shows "FSW price" or something. We could maybe also add a second graph below the first one. But that would be all – no GP/XP, money making guides, etc, using the alternate prices.

For implementation, we have two sub-options:

  • Store the prices on-wiki (using Module:GEPrices/fsw/data or something) and have GazBot update it every few hours or whatever. The downside of this is that the pages would get purged many times a day, which could be a bit slow for end-users and increase the potential for server problems
  • Just grab the prices on the frontend using JavaScript and put them into an empty span or something. This wouldn't require any purging of the wiki content, but would mean a slight visual flash before the price gets added to the article

Option 3: Replace the server-side prices, calculations, etc with client-side calculations[edit source]

If we wanted to support GP/XP, money making guides, calculators, etc... one option is to try to force as much of the calculation logic into hidden HTML attributes that could then be harnessed by the browser to place the right prices in. So instead of the output of a GEP call being:

Two rune scimitars costs 42,346 coins

it might instead say (making up the syntax)

A rune scimitar costs <span data-ge="formatnum(2*gep(Rune scimitar))"></span> coins

And then the browser, which would know the prices (or even more effectively, a Cloudflare worker) would replace that with the correct numbers. We could have a toggle (like light mode/dark mode) that you could use to tell it which set of prices to use.

I discuss this idea in more detail here. It would have some really interesting benefits (like letting us use RuneLite realtime prices, or anything else), and probably would have been the "right" thing to do if we were building price-related stuff from scratch. But the overall project is exceptionally difficult and would probably complicate the site way too much. I also am not sure we could even get it done in the next 3 weeks.

Option 4: MediaWiki hacking[edit source]

Let people toggle which prices they use, but if they have the alternate prices selected, add a query parameter to their origin request (invisible to them) that will basically tell MediaWiki (which we will need to modify) that, when generating the page, it should replace any reference to "Module:GEPrices/data" to instead point to "Module/GEPrices/fsw/data". Then it needs to make sure it's not accidentally storing this alternate version in a cache to be shared with everyone...

This would have a fairly low impact on people not using FSW prices, although it would pretty noticeably increase our webserver load, and make it a lot slower to load for anyone using the FSW prices, since they wouldn't be benefiting from the same degree of caching (both at a parser cache level and Cloudflare level) that we can offer to everyone else. It also could conceivably double the size of our parser cache, which would mean we might have to start evicting less-commonly-used stuff.

This isn't the full story - we'd also need API calls from the calculators, graphs, etc to pay attention to that toggle, and getting the interaction with the parser cache right is quite tricky. We haven't tested the feasibility of this option yet, but we think it is probably workable since it's similar in nature to the TemplateSandbox extension that lets you preview pages with different versions of templates or modules.

Option 5: Have a separate wiki[edit source]

Just send everyone to freshstart.runescape.wiki or something, which could have the new prices.

This is probably not a good idea since it would just never get traction on Google and would fragment the editors. But it's an option, and it's not that far off from what happened with DarkScape.

One slightly less bad version of this would be to have a separate hidden FSW wiki in the backend, but to do some Cloudflare fuckery so that if you toggle the alternate prices, we pull the content from the FSW wiki instead of the main one. We would have to set something up to automatically sync edits (except GazBot GE stuff) from RuneScape Wiki to the FSW wiki.

Closing[edit source]

If some of that was overly technical, that's okay – the most important thing I want to get from this is not a technical discussion, but rather an idea of what sort of expectations people will have for our support of the separate Grand Exchange, and also what sort of UX (toggle or otherwise) makes the most sense. ʞooɔ 12:33, 25 August 2022 (UTC)

Discussion[edit source]

Support Option 2 - My first thought was to support Option 3 or 4, with the idea being that a user will want FSW info everywhere on the wiki, because if they're playing FSW they're playing FSW. In actuality, most users who play FSW are probably going to be playing both maingame and FSW, so they would be left toggling back and forth and reloading pages during their gameplay and use of the wiki if we had a global mode toggle. Since most users are going to want exchange data for both modes, it would make Option 2 the best of the provided solutions. I'm not sure if this assumption is safe to make but: if we assume that the GE prices in FSW are at least proportional to maingame prices (e.g. the relative prices or ratio of price between say Abyssal whip and Grimy torstol will be similar for maingame and FSW), then a lot of the calculators that use exchange data will still be useful. For example, the ordering of various gp/xp methods on skill training guide pages will still be correct, it's just the absolute cost that'll be different. Again, not sure if this is safe to assume (it likely isn't for endgame pvm drops, but might be for skilling supplies) but if it is the case, it helps justify displaying the FSW exchange data in only the Item infobox. I really like the flexibility of option 3, but if its as big an undertaking as you say, we can probably find another decent solution. You made an interesting point that limited-time or separate modes may be a thing again in the future, and if that's the case and we went with Option 2, some UI work would need to be done at least so we don't have 10 separate mode GE price lines and 10 separate mode GE graphs in the item infobox. User:95 D9/Signature 13:18, 25 August 2022 (UTC)

Support 3, 2, 5 - In that order of preference. I think 3 would provide the greatest use benefit, specifically for OSW to use Runelite real time prices. The community is generally quite vocal about how "inaccurate" the on-wiki prices are due to real time pricing provided by runelite and prices.runescape.wiki. I'm curious to know how long it would taken approximately and if there is a way to implement the easiest solution and then swap over to 3 after its completed, which I think 2 is that easiest (besides nothing). The alternate 5th suggestion seems interesting, but other than making it work I'm curious if there are any downsides to it, because it does seem like a pretty interesting solution. FjaraTalkRxSktuY.png 04:18, 26 August 2022 (UTC)