-
-
Notifications
You must be signed in to change notification settings - Fork 968
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
Change: Build signals to the next junction when dragging regardless of the Ctrl state #9637
Conversation
You know I like controversial changes. :D I had no idea dragging signals without holding Ctrl extended them in the selected area only. I also can't think of a common use case for this. I am +1 to this change. And not just to distract people from complaining about my signal change. ;) |
slight usability problem i see is if someone accidentally drags the mouse while building signals, they might not realize what they did, or how to undo it. |
That already happens though. Dragging a signal without ctrl pressed builds signals along the length of track selected. |
When currently dragging signals without Ctrl, it builds signals only along the part you dragged over, that part is all visible on screen. With this change, dragging signals without Ctrl can affect a very long stretch of rail, potentially make changes across the entire map, and the player might not realize what has happened, or how to reverse it. |
This comment was marked as abuse.
This comment was marked as abuse.
I don't see the point in a new setting - like others above I've never intentionally used the non-Ctrl version and can't think of any case where it's preferable. A different usability concern related to that: many users won't read the changelog, so will continue pressing Ctrl. This will now result in "covered area" dragging, which looks similar (some signals built) but isn't what they expect. There will definitely be bug reports. I wonder if the "covered area" version should be simply removed rather than hidden behind Ctrl, unless someone emerges with a real use for it. This would cause Ctrl-drag to continue to function as now, because for inputs with no special function the Ctrl is just ignored. It would also allow reusing Ctrl for some future enhancement when people have got used to not needing it. +1 to this patch in general, with or without any of the suggestions so far. |
My thoughts on this:
So I think this PR is best to be implemented as is. Sure, some initial confusion is to be expected but I don't think it's worth complicating the game with settings and/or ui elements for something that has no effect on the functionality and only takes a few hours to retrain the muscle memory. |
Random thought that may not be directly relevant to the change proposed here: In addition to the floating cost text after making the change, also make a floating text showing how many signals were built/removed |
4f4e182
to
2612945
Compare
I second FLH's suggestion: I prefer if the area-drag would be removed entirely, so dragging becomes autofill for both ctrl-pressed and ctrl-not-pressed. |
Having played OTTD for years, I didn’t know this feature (auto-fill) existed. I don’t think I have read any tooltip while playing. Only recently when working on the translations of the tooltips I discovered it. Now I don’t know how I could have lived without it. So making the feature more discoverable is a net win. |
Shall we make a poll? xD |
The following text was written as part of the program "Let it not be too sweet" ;) It's kind of funny. You are afraid to add the feature of closing adjacent level crossings, because someone may have several accidents at once, although there are many indications that it is quite unlikely and the benefits of the change are incomparably greater than any losses. Meanwhile, you want to add something that is absolutely sure to cause a whole lot of crashes for almost all players who just try to remove a few signals (instead of just a few, they'll delete all on the line). The main problem here is not the way to build but to remove the signaling. The point is that both activities, building and removing, should definitely remain consistent. What's more, here it will not be a one-time event, but a repeatable one, which results from the habits acquired over the years of playing. For some it will be a one-time event, for others it may be a few, but there will also be players for whom it will be repeated many times. You try to make the game accessible to as wide a group of people as possible, including those with various disabilities, sometimes quite rare (#9581), meanwhile, by accepting such a change without giving a choice, you can ignore most current players, especially those with certain disorders on the autism spectrum. For me personally, this is probably not a problem, probably even if it were optional, I would have turned it on anyway, I also see the undeniable advantages of this solution for new players, but I imagine it will be really annoying for many. So please think about adding a setting for this change. @ldpl |
7cba351
to
9852bfe
Compare
d1a48a1
to
f244b33
Compare
Looking back at old PRs... I third the suggestion by FLHerne and frosch, to eliminate area drag altogether. You can do as you like in cmclient. 😄 I would approve the PR with that change. |
@2TallTyler Problem is, to do as I like in cmclient I still need vanilla to keep the network command parameter. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am fine with this change, although I will leave it to a developer above my pay grade to weigh in on leaving an unused parameter for cmclient to use.
To ping all people involved in this ticket, I just created #12034. tldr; there is no visual indicator the default behaviour changed. You see visually that you will place signals on a stretch of N tiles, but in reality it is placed till the next junction. Or worse: when removing signals, it does this too. This is very unexpected for existing players, as it really looks like a bug. As nothing is telling you anything changed, it takes you a while to figure this out. (yes, the tooltip tells you, but please don't use that as an argument :D ). As I explain in #12034, I am not against a change like this; but I think we did overlook that the autofill behaviour never had any good visual indicator, and was a "if you knew you knew". With 14.0 closing in, I suggest we revert this PR for now, to find a better way to visually indicate we are changing this default behaviour. Plenty of suggestions available for that, I put a few in the PR :) Curious what you guys think, looking back on this PR now 1.5 years later, and playing the game for a bit with this new behaviour :) |
Psst, I heard you like controversial changes ;)
Motivation / Problem
Signal autofill while being one of the most essential feature for playing and enjoying OpenTTD is currently hidden behind Ctrl magic. That makes it very hard to find for new players. And those who know about it still have to do that extra ctrl press every time which also makes it easier to accidentally build a semaphore when dragging too little. On the other hand, filling only selected stretch is one of the most useless feature in the game imo. I honestly struggle to think of any use case where it would be preferable to autofill. Dragging presignals when building priorities maybe?
Description
This PR inverts the effect of Ctrl press when dragging signals. Now, with ctrl it will only fill the selected stretch while without it will do autofill to next junction/signal.
Limitations
Checklist for review
Some things are not automated, and forgotten often. This list is a reminder for the reviewers.