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

Proposed New Features #5

Closed
Vectorial1024 opened this issue Feb 16, 2021 · 3 comments
Closed

Proposed New Features #5

Vectorial1024 opened this issue Feb 16, 2021 · 3 comments

Comments

@Vectorial1024
Copy link
Owner

Features proposed by a Steam user, writing it down in case I forgot about them after the Harmony update mess, because back then I thought some of those are indeed interesting.

The guy proposed 3 features, and I try to summarize my thoughts/replies on them:

Dead trips on counter flow

Dead trips on counter flow, on the other hand, means buses from a depot do not pick up passengers until the start of the route, or do not let off passengers until the depot once those are pulled out of service. If AI chooses to pull a bus out of service, it should be able to allow passengers to be let off at a stop before going out of service (or, when starting a trip, allow the bus to board passengers at any stop until the start of the route, which may be an interesting thing to code).

Short-workings

[Operate from midway bus stops] is the same concept as short workings where you have a bus line that does multiple schools and letting them off at residential areas.

Operate from midway bus stops

Operating from midway stops means buses don't have to do the full trip and instead do part of the trip (e.g. if your bus line has a busy section and a quiet section, you can add more money and vehicles (say, 200%) on the busy section while keeping the value at 100% for the rest of the route).

@Vectorial1024
Copy link
Owner Author

Vectorial1024 commented Feb 16, 2021

My replies/views:

Dead trips on counter flow

  • Some Chinese CSL mod have already covered something similar (drop all passengers before return to depot)
  • Does not like the Chinese mod but, still, a mod is a mod; no particular rush to "fill the void" for there is no void
  • Perhaps best not touch this: what if we do this to a day-only line, and passengers spend the night waiting for a bus that never arrives, and that this bus line is the ONLY public transit option in the entire city?

Short-workings

  • Nah, just use TLM to prepare time-conditional bus lines, it is very hard to guess by program where the students may want to go

Operate from midway bus stops

  • This feels like some ML problem; probably can solve using some ML-like technique
  • Problem: there is a bus line, and I notice a lot of passengers will go onto the line at a particular stop, and (lets say) there are a lot of passengers dropping off at a particular stop
  • Draft solution:
    • For stops with many "pick-ups", detect if there are people waiting there: if yes, then spawn max 1 bus from depot (assume needs time traveling to there), start service from there, travel down the line but disallow pickup, and once the bus is empty, return the bus to depot
      • If stop becomes invalid, cancel the bus and put it back to depot
    • For stops with many "drop-offs", detect if there are people dropping off there: if yes, then spawn max 1 bus from depot, start service from HOME, travel down the line (allow pick/drop), but force-drop all passengers when reaching the said stop, and finally return the bus to depot
      • If stop becomes invalid, force drop all at next stop
    • If the situation allows it then perhaps we can make it such that keep doing special bus trips until the trigger condition is no longer valid

@Vectorial1024
Copy link
Owner Author

Update: TLM should have implemented something like "remain in service until reaching terminus"

@Vectorial1024
Copy link
Owner Author

I think we have implemented everything except perhaps "short working trips" (i.e., start from a terminus, service until a midway bus stop, and then pull away from service).

IMO this is an advanced feature that is out of scope: irl these situations will require the vehicle to have special markings at the vehicle front, and can cause confusion when the special service is using the same line number as the regular "full" service. In this case, eventually, the short service is officially branched from the main service and the short service receives a new line number.

We believe in this principle: as long as a vehicle is on the way, it has to serve until it reaches a terminus.

Therefore, everything in this post has been eventually implemented. Closing.

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

No branches or pull requests

1 participant