Code Review #2868

64 px max length vs. 48 px max length

Added by oberhuemer over 8 years ago. Updated over 8 years ago.

Status:ClosedStart date:2011-07-18
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:-
Target version:-

Description

I'm going to repeat what I had written in PMs:

Advantages of 64 pixel length:
- Correct scale (2 px/m) in diagonal views
Advantages of 48 px length (which is still noticeably longer than regular maximum length):
- Correct scale in horizontal and vertical views, and thus also in all menus
- Fits in better with the rest of the game which is also diagonally shortened
- Less visible deviation from scale (8 pixels as opposed to 16 pixels) combined with better playability due to reduced space requirements

So I suggest once again to set 48 pixels as maximum single sprite length - this need not mean that the code to support longer wagons is removed too. I don't see shortening everything in horizontal view only as a viable option because this would produce huge, ugly gaps between wagons.

History

#1 Updated by Eddi over 8 years ago

honestly, i don't find this very convincing at all

oberhuemer wrote:

- Correct scale in horizontal and vertical views, and thus also in all menus

that may be true, but IMHO the menu is not the main part you see throughout the game. plus, we can unset the 32px flag, which means the space in the menu is reduced

- Fits in better with the rest of the game which is also diagonally shortened

that really was the point that should be fixed with the 16lu vehicles. the whole excercise is fairly useless if that wouldn't be achieved.

- Less visible deviation from scale (8 pixels as opposed to 16 pixels) combined with better playability due to reduced space requirements

not sure what you mean here.

i don't see a good argument here, so i'm sticking with my opinion to use 16lu as the longest vehicle. the BR01 from the DBSetXL already uses that scale, mainly the passenger wagons of that don't fit, because of the shortening.

#2 Updated by oberhuemer over 8 years ago

Well, whatever is longer than 24 meters in reality would still be over 12/8 length, of
course (should have rephrased that). Unsetting the 32 pixel flag, and thus chopping off the ends of the sprites, will only make things look ugly.

The point is that fixing the diagonal scale only relocates the problem and is inconsistent
with almost everything else in TTD - you'd have to redraw everything, or modify the source
code, to truly eliminate this.
And if the diagonal view is shortened, players don't need to build as long stations, which
makes the set easier to play with; besides that, there is less of a difference in length
between diagonal and horizontal views - that's what I meant with "less visible scale
difference".

All your side really has to say for itself is "correct scale in some views", which mine offers too - not exactly that convincing either. I'd love to hear the other developers' opinions on this.

(On the scale in the DB Set: I'll check it out.)

#3 Updated by oberhuemer over 8 years ago

Well, I looked at the DB set (0.82), and the longest engine I saw was the 45 at 52 pixels in horizontal, which is consistent with a scale of 2 pixels per meter. Same with the others. Maybe you mean version 0.9, but I wasn't able to find screenshots of its steam engines through a search at TT-MS.
(...hey, there's another arguing point for me :) )

#4 Updated by Eddi over 8 years ago

keep in mind the DBSetXL still uses 28px vehicles (with gaps). afair the BR45 actually overlaps the vehicle at the front, so it's more like 17lu. the BR01 is 16lu.

there is only one non-articulated vehicle that is longer than 24m, that is the UIC-X wagon with 26,5m, which then would be 13lu. odd lengths might cause some issues, though. UIC-Y wagon with 24,5m would be 12lu, we need to check which other vehicle lengths would make sense at that scale. overall it sounds like it will end up less clean, meaning needs more templates, more alignment stuff, etc.

#5 Updated by oberhuemer over 8 years ago

Err... 52 pixels = 13 lu. Or am I misunderstanding you somehow? I've also found some shots of steam locos in 0.9 (purchase menu), and they're not any longer.

As for odd lengths - I can take care of that. I'll also check for potential vehicle lengths.

#6 Updated by Eddi over 8 years ago

16lu is 1 tile. both the BR01 and the BR45 in the DBSetXL have this length (internally). I didn't count the pixels, but without the 32px flag (DBSetXL is very old) then 28px is 8lu, so 56px is 16lu (in depot view. on the map you get gaps of 4px between two vehicles)

i have added another column to the tracking table so it shows the length both with 16lu/24m and 12lu/24m.
Quick overview shows:
  • 5lu for 2-axle freight wagons
  • 6lu for 2-axle passenger wagons
  • 8lu for the post-war electric engines
  • 9lu for pre-war passenger wagons
  • 12lu for DR wagons (UIC-Y)
  • 13lu for DB wagons (UIC-X)

#7 Updated by michi_cc over 8 years ago

Disregarding any technical arguments, I'd prefer 16lu/24m more. Modern passenger wagons are very long (in relation to most other wagons/engines) and I think a difference of only 4/5lu between engine and wagon is not significant enough.

And if the diagonal view is shortened, players don't need to build as long stations, which
makes the set easier to play with; besides that, there is less of a difference in length

The stations won't be too long even with 16lu as a pax wagon with real-life capacities will roughly have double the capacity of a TTD default pax wagon. Double length, double capacity, so consistent with default vehicles.

#8 Updated by oberhuemer over 8 years ago

Eddi, even DBXL 0.82 uses 32 px as max length - I just checked.
So if aesthetic compatibility to the DB set is desired (definitely a good idea when most things aren't finished yet), we'll need to stick with 12 lu. The wagons will also roughly match (DBXL 0.9 uses 40 px), i.e. both sets will complement each other until CETS is finished. Possibly the strongest argument yet ;)

And michi_cc:
Let's take an E10 (~16.5 m) pulling UIC-X cars (~26.5 m) as an example.
With larger lengths you get 11 lu = horizontal 44 px (= 4/3 * 2 * 16.5 m) for the E10 and 17.5 lu = 70 px for the wagons.
With "normal" lengths you get 33 px = 8 lu and 53 px = 12 lu for the wagons. That means a difference of 4 or 8 pixels, depending on how 17.5 lu is interpreted.
If you go with 64 pixels maximum, you have exactly the same difference, or also only 4 pixels apart with Eddi's suggested lengths. And the percentage difference between the two (numbers all coming from the smaller vehicle) when using greater lengths is basically the same (63,6% vs. 62,5%) or actually smaller (54,5% vs. 62.5%).

The problem with completely realistic capacities is that they might make trains unrealistically short again with regard to the number of cars. I just can't imagine running, say, a two-set ICE3 with a realistic 920-passenger capacity in OpenTTD.
This will need testing, though.

#9 Updated by Eddi over 8 years ago

the issue that even the DBSet 0.9 wagons are not "long enough" is precisely why i started the whole thing.

#10 Updated by oberhuemer over 8 years ago

Well, yes... I believe I never said anything favorable about maximum lengths below 48 pixels either.

#11 Updated by planetmaker over 8 years ago

We should not bring in the realism argument wrt capacity here as well. The long(er) length - for me at least - is primarily about how it looks. Capacity will need a separate consideration. On the other hand... an ICE3 train with 1000 passenger capacity is definitely something I see use in. Normal passenger wagons also have a capacity of ~80 passengers per tile. And ~14 tiles is not a short train either.

#12 Updated by Eddi over 8 years ago

  • Status changed from New to Closed

since all our artists kinda went for the 12lu=24m scale, there's probably not much sense to argue further against it.

i'll switch the grf repo in the near future, include the odd-length templates, and then start adding the graphics that we gathered already. but not before next-week-ish.

modern UIC-X wagons with 26,5m length will be 13lu, the ICE TD heads with 27,5m are probably the longest vehicles with 14lu.

Also available in: Atom PDF