Changelist - Auzzy/18xx-routes-web GitHub Wiki

As I update the website, both through bugfixes and new features, I'll track my changes. I currently don't have a concept of release versions, just rolling releases, so I'll tag the changes with the date of their release. If there are multiple entries on a single day, there were separate releases on the same day.

Thursday, August 13

Mark uneditable stations, and prevent duplicate stations on split city

In the station modal, uneditable stations have a gray background. The railroad's home station is uneditable, as is an independent railroad they acquired.

When adding stations to a split city via the tile selection modal, you should not be able to place a station of a railroad that's already in that city.

Monday, August 10, 2020

Highlight overloaded tiles

When a tile has either too many stations on it, or there isn't an open slot for a home or reserved station, the tile will be highlighted red. A message explaining why will also show up in the tile selection modal. This is in addition to an error message being displayed if you try to run a route.

Thursday, August 6, 2020

Implement train validation (routes-18xx 0.9)

  • Remove all train limit restrictions in the web app
  • Upgrade to routes-18xx 0.9, which implements proper train validation by game

The details on train validation can be found in the 18xx-routes 0.9 release notes.

Given that my philosophy is to allow user flexibility, it's not worth it to try to enforce train limits in the web app. The phase can easily change, and what to do with the extra trains in that case is unclear. Instead, the user can enter whatever trains they want, and their setup is validated at calculation time.

Wednesday, August 5, 2020

Increase train "limit"

  • Allow railroads to have a total of 6 trains

This is a temporary stopgap to ensure a legal game state can be entered. Capping trains at 4 does not account for 1846's train phase outs, which can result in a railroad temporarily having 6 trains. If they have three 2s in phase two, leaving them space to buy the first 4/6 (or 5) and trigger phase three, which phases out the 2 trains so they no longer count towards the train limit, then they buy two more 4/6 (or 5) trains.

Wednesday, August 5, 2020

Allow closing railroads (routes-18xx 0.8.1)

  • Add a section for marking a railroad closed (if the game allows it).

In 1846, for the purposes of running routes, an unopened railroad has the same effect as a closed railroad (which is different from removed). However, with the addition of station capacity validation on tiles, that closing a railroad removes its station reservations becomes important. It's also just a useful bookkeeping feature.

In 1889, railroads cannot close, so this is moot.

Wednesday, August 5, 2020

Removed railroads have a token on their home station (routes-18xx 0.8.1)

  • Correct regression in removed railroad handling

In 1846, a few railroads may be removed if playing with fewer than 5 players. These railroads deploy a station on their home slot which acts as a normal station. routes-18xx 0.7, deployed just before the app was made public, introduced a regression where that station was not placed, which was corrected in 0.8.1.

Wednesday, August 5, 2020

Improved loading reliability

  • Start loading most page elements the board image loads.
  • Overlay the entire page with a single canvas to create the loading "grayed out" effect

Prior to this change, the map would sometimes fail to display locally saved tiles and tokens, and would itself be unclickable. Additionally, the railroads and privates would appear below the map, even though there was enough space to the right. As the fix implies, there was a race condition with the beginning of the map load, since the size of the elements which failed to load are based on the size of the map.