Happy Cakeday Alpha 🎂 Your script worked perfectly. It's a good lightweight choice for those who don't use ESGST.
And how is that a "sample" train exactly? It felt like a 7 course meal!
Comment has been collapsed.
Thanks for this interesting script, tested it late last night in desktop Firefox and it seemed to work perfect, though I only tested it in the first 10 cars back and forth, I'll give it a bigger test later. Thanks for such a QoL enhancement (I can really see it useful in large "event" trains like the community or Xmas trains, especially if you can't keep up regularly!) and also thanks for the Snowpiercer length train 🙀 and hope you had a great cake day!
Comment has been collapsed.
A bit more feedback (and a well earned bump!)
I've finished a trip to the star system next to ours to the end of the train and back again and it worked flawlessly, I was very impressed how it was able to handle the changes in text and format! It was quite responsive and quick, about a second (or less if I didn't want the game image to load).
I then picked a spot in the middle of Icaio's memorial train and rode the rails for about 250 carts (only forward this time) and encountered only 2 occasions where the script failed
https://www.steamgifts.com/giveaway/21EPz/roguebook From my (very limited) understanding of the working of the script I don't think anything can be done about this one, using cart numbers rather than words or symbols is something I don't think can be anticipated.
https://www.steamgifts.com/giveaway/V0BuV/dread-x-collection This one is more straightforward and obviously can't be overcome by the script. If someone forgets to update their train links in the description then that will cause a break. I dare say I had to use my finger (shock!) to click my mouse forward (oh the humanity! 😭)
I stand by my opinion, this is a great little add-on for the community which will really shine in long trains but especially IMO in community crafted trains. Many have pointed out that EGST does something similar but as someone who was initially overwhelmed by the number of options there (and since removed it, I'll get back to it one day 😉) I find this incredibly useful. Thanks again for this neat add-on and the train!
Comment has been collapsed.
Thank you for the very detailed feedback Mhol!
I actually think both those cases can be fixed. Especially, since the first is actually already implemented, and should be working...
1) There is already functionality in the script to identify cart numbers, as this was an issue I stumbled upon when testing. Using cart numbers seemed fairly common in large trains.
(See examples of this working: here and here)
I've had a very quick look just now, it looks like the reason it failed in the above linked giveaway is because the current cart number is in a h2 format tag, rather than just in a standard paragraph 'p' tag. So very good catch as that is a bug with the script I haven't caught or come across myself yet!
2) I have come across samples like this also, so far my solution has been just horrifying which includes using a mouse...
But, I have considered also adding a check (if no cart links can be found in the main description) to see if there is any 'Next' associated with a URL in the comments. Be it either a Next: [LINK] format, or a Next format.
Thank you for the kind words, as I mentioned in the post above I did consider using ESGST initially, however my primary issue with it was the fact that to function, it requires ESGST to have loaded, which often takes at least several seconds. This meant that I simply ended up just not using it and clicking (which in a lot of cases was faster, as the links and page would have already loaded by the time ESGST had finally loaded). So my primary goal with this script was just making it robust and reliable, as well as making it lightweight, and load as early as possible, so as soon as you see the links on the page, the script can too!
Once again thank you for the kind words, and I wish you the best of luck in the giveaways!
Comment has been collapsed.
Just to update, I've fixed the first issue now, the number identification now also works for headings (h1 and h2), I can't think of other tag types that may be required at this point, but we will see it when we come to it!
Feel free to give that a shot on your original linked giveaway after updating the script! (To update, your script manager may prompt you, or you may need to visit the userscript page again, and click 'reinstall')
Comment has been collapsed.
Another (rather bug-less) update, camouflaging a rather unsubtle bump for the last 20hrs or so of the mammoth train. Using the updated script I took a ride on the last 300 cars of Icaio's memorial train forward and back, then plunked myself in the middle thereabouts of the 2022 community train & 2023 Xmas train, rode the rails for about 400 cars on each train and am happy to say never encountered a single derailment.
Empirically speaking I could have just been lucky but it seems this script is able to overcome pretty much every conventional and not-so-conventional linking scheme favoured on SG. I've personally found it so useful that while I do most of my routine SG stuff on my mobile browser, it's definitely something I'll switch to desktop for with the long event trains! Thank you again!
Comment has been collapsed.
bump!
ESGST is very heavy and not just in resources but with how much it changes to the site, even when saying "no" when setting up. I usually have ESGST turned off unless I'm making a train or joining a train so this could be a neat alternative.
Comment has been collapsed.
Thanks! Great to hear you can make some use of this!
I do agree, I love ESGST, but I feel like by default it's too much. It does take a while to set it up how you want it...
As I mentioned my largest problem with the ESGST train hotkey implementation is that you need to wait for ESGST to load to use them.
My main goal with this was to load it as early as possible (a lot of the time even before the page content loads), so as soon as you can see the page, the script can too!
Best of luck with the giveaways
Comment has been collapsed.
204 Comments - Last post 5 minutes ago by grafos18
15 Comments - Last post 47 minutes ago by SupportForFun
8 Comments - Last post 59 minutes ago by Mayanaise
5 Comments - Last post 1 hour ago by reigifts
2,976 Comments - Last post 2 hours ago by Orionid
7 Comments - Last post 2 hours ago by ReptilianWorldOrder
243 Comments - Last post 3 hours ago by xaivierx
10,278 Comments - Last post 5 minutes ago by ColdOut
78 Comments - Last post 14 minutes ago by hsunkuei
16 Comments - Last post 20 minutes ago by Fluffster
11,315 Comments - Last post 31 minutes ago by PunishedStig
1,191 Comments - Last post 32 minutes ago by Yamaraus
31 Comments - Last post 33 minutes ago by Fluffster
16 Comments - Last post 38 minutes ago by xxxka
SG Train Navigation Assistant is a lightweight userscript which loads quickly, and allows easy manoeuvrability through trains on SteamGifts!
Some backstory as well as the train can be found at the bottom of this post.
Installation
Follow this link and click 'Install this script': SG Train Navigation Assistant (Greasyfork)
If you've never installed a userscript before and need some help, follow these instructions: How to install user scripts (Greasyfork)
Usage
To use this userscript, simply use your arrow keys when in a train, the current available controls are as follows:
Note: When writing a comment or changing the description (i.e. when your cursor is active inside a textbox) the shortcut keys will not work.
Issues?
F12
→ Console tab).Feel free to post any issues in the comments below. As this is my first 'official' public userscript release, please do bear with me if there are any issues.
If there are any other 'Forward' or 'Backward' keywords, please feel free to pop them in this thread also, and I can add them to the script.
So where is the promised sample train?!?!?
Alright, alright, here is the link to the train (Just RemoveThis_ :P). Please feel free to test it out and let me know if you find any issues. I've tried to mix up some of the wagon terminology to really put it to the test.
For some backstory, I made this userscript since my primary method of interaction with Steamgifts is through a trackpad. As such, when there is a large community train, I quickly lose motivation to click through each link.
This poses a problem, especially when I want to contribute, as I need to be able to get to the last cart in the train to add my contribution.
So, through my own laziness, and determination to contribute, I decided to make a small userscript to automatically identify the previous/ next links in the cart, and then allow for keyboard shortcuts to be used to navigate through.
After making a v1 (read as: v0.001) I quickly found that it was a pain to switch between arrow keys and mouse when I wanted to check the screenshots for a game, so I added a shortcut for bringing those up too!
Initially I did consider just using ESGST/ seeing if I could add this to the extension, however it is a fairly heavy plugin, and on the device I use (very old chromebook) takes a while to load, and also loads quite late. This means it takes me several seconds before I can use the hotkeys. My goal with making this a separate userscript was to allow it to load very quickly, and be very lightweight as well (which, from my testing I seem to have achieved!).
At the current stage, I have some other QoL ideas that I may look at adding in the future, such as tracking the cart number to deal with pesky derailments. But currently I think this is at a solid enough stage to maybe (hopefully?) be useful to some.
Thanks for reading!
tldr; I hope this helps people navigate trains.
Comment has been collapsed.