Viewing Issue Simple Details Jump to Notes ] Wiki ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0001642 [DCSS] FR: Other minor N/A 2010-05-30 16:32 2012-07-10 00:54
Reporter TGW View Status public  
Assigned To doy
Priority normal Resolution suspended  
Status closed   Product Branch 0.8 ancient branch
Summary 0001642: Square LOS
Description Title.

It is easier than having circular LOS and needing to make ranges circular, needing to make diagonal movement take longer, etc..
Additional Information
Tags No tags attached.
Attached Files

- Relationships
related to 0000543closed More realistic movement/viewing/shooting. 

-  Notes
(0005181)
rob (developer)
2010-05-30 20:29

LOS is already circular, as are ranges. Why would diagonal movement need to take longer? What is etc.?
(0005184)
dpeg (administrator)
2010-05-30 20:40

I think I can comment on this. Currently (0.6), we use two very different metrics:
euclidean for sight (where the unit ball is a ball), step-wise for movement and ranges (where the unit ball is the square with sides parallel to axes, this means d(x,y)=max(|x1-y1|,|x2-y2|), I'll call the the square metric).

This leads to annoying inconsistencies. For example, since range is measured by counting steps but LOS is measured euclidean, there is the possibility to reliably shoot someone who cannot see you (use diagonals).

I am certain that we will have issues of this type as long as two different metrics are in use. Given that, I can see two natural approaches to solve the problem:

1. Use euclidean distance everywhere. You (rob) have done this by changing how ranges work. This is still not full consistent, because diagonal movement is strictly better than orthogonal movement. Some games (I recall Empire II) have tried to solve the issue by assigning a cost of sqrt(2)=1.41 to diagonal steps, but I don't think that's a very good idea (at least for Crawl).

2. Use the square metric for LOS. Most players will find this ugly (at least at first), but I am not so sure... It's know that Brent Ross of 4.1 at least toyed with this idea, and I find it quite appealing, too. The reason is that we only have to change one aspect of the game (LOS) -- although in a drastically visible -- fashion in order to achieve full consistency.

I wanted to bring up this issue at some point, and occasionally did so in IRC. There was no formal proposal yet because the whole topic is very contentious and not extremely urgent, in my opinion. It may well be that you have now tipped it towards the fully euclidean approach (which may well turn out to be completely okay in the end).
(0005186)
rob (developer)
2010-05-30 20:50

I don't think discussing this through mantis is going to be very productive.

What annoying inconsistencies are there besides the one mentioned above and fixed by the circular range?
(0005191)
TGW (reporter)
2010-05-30 22:34
edited on: 2010-05-30 22:39

@12345678
112345678
222345678
333345678
444445678
555555678
666666678
777777778
888888888
Stealth always takes 8 steps to reach a target.
@12345678
112345678
22234567
33334567
44444567
5555556
666666
77777
88
Stealth takes only 5 steps to reach a target, but only at some angles. This is illogical and a balance issue.

(0005193)
MrMisterMonkey (reporter)
2010-05-30 23:02

I'd prefer using Chebyshev distance for everything, but consistently using Euclidean distance is better than the current approach.

On the note of stealth though, if Euclidean space is adopted, each diagonal step should take the same amount of time and have the same chances of sneaking failure as sqrt(2) non-diagonal steps, proving no more advantageous.
(0005199)
Kyrris (reporter)
2010-05-31 05:17

The change to euclidean spell ranges in trunk has left a few error squares where the spell will automatically target monsters, but trying to cast says that the target is out of range. And really, I think it's less elegant than square LoS would be. Some people would complain about square LoS, but:

1) it's easier, requiring very few changes
2) it's most tactically straightforward
3) they'll get over it.
(0005207)
OG17 (reporter)
2010-05-31 07:25

I'd think that square LOS is at least worth testing, as it'd be better for gameplay and its only downsides seem to be purely aesthetic.
(0005226)
dpeg (administrator)
2010-05-31 17:23

rob: You're the master of LOS -- what is your opinion on the matter?

I am surprised by the amount of support for square LOS. The reason why I never pushed the issue was fear of an outcry. Would it be worth to have a branch with square LOS?
(0005230)
TGW (reporter)
2010-05-31 17:37
edited on: 2010-05-31 17:40

By the way, circular ranges actually create what I think is a much bigger problem than square ranges. Enemies approaching diagonally will spend fewer turns in range than enemies approaching cardinally, making conjurations randomly worse at certain angles.

(0005231)
Kyrris (reporter)
2010-05-31 17:42

Also, anything that introduces rounding introduces rounding errors, one direction or another. The smaller ranges on, say, earth and fire conjurations have tho0se errors making up proportionally more of their ranges, requiring additional, unnecessary attention to balancing.
(0005232)
TGW (reporter)
2010-05-31 18:00
edited on: 2010-05-31 18:06

@1234567*
11234567*
2223456*
3333456*
444445**
555555*
6666**
77***
**


At some points, the 7-range map touches the edge of LOS. This means players can approach enemies without spending any turns out of range of, say, bolt of cold.

I imagine that there are similar quirks at other ranges, but I'm too lazy to find a recent copy of trunk to wizmode with.

(0005233)
rob (developer)
2010-05-31 19:57

I don't think testing square LOS is worth the effort. Note that the support is mostly from a few vocal people, and that many have not voiced any opinion.

If someone wants to do it, they're welcome to. It's quite straight-forward to change the basic LOS shape, though probably there's a few other places where it comes in implicitly. I'd be happy to point out the basic change required.

So far, I don't think anyone has pointed out problems with the circular LOS and ranges that really matter. It's better for stabbers to approach along diagonals, and conjurers along cardinal directions -- so what? What rounding errors? Range 7 spells being able to reach edge of LOS? The big problem in my opinion was shooting out-of-LOS monsters along diagonals, and that is gone with the circular range.

Note also that square LOS would mean square halos square silence radius etc. if done with consequence.
(0005236)
Kyrris (reporter)
2010-05-31 20:45

At the peril of entrenching myself in the "vocal minority", I want to point out that the halo-juggling to make sure that things at any given range were caught in it has always annoyed me.
(0005241)
Core Xii (reporter)
2010-05-31 21:53

I'd like to at least see this tried. Having played mostly conjuring spellcasters it has always eaten away at me that diagonally I can "shoot" further. Square radii look strange at first but you get used to it quickly. See Advance Wars.

It's not really game-breaking by any means, so I won't lose any sleep over it if it's not changed, but it might be a small improvement. Worth exploring in my mind.
(0005249)
due (developer)
2010-06-01 01:37

Square LOS is ugly. :)
(0005256)
Nobody (reporter)
2010-06-01 09:37
edited on: 2010-06-01 09:38

Solution: hexes!

Just kidding. My preferences on the options, in order from most desired to least:

1. Square range/radial sight (former status quo). Gives casters a conditional but potentially important advantage over melee characters. Doesn't affect archers, as far as I know. (Also, I thought most monsters had a sight range identical or similar to the player's?)
2. Square range and sight. Changing the shape of the LoS would be less of an adjustment for the players than altering spell range. Jude's right, though; it'll look ugly. But I've thought the same thing of a few past changes, and now I prefer the new way over the old one.
3. Circular range and sight. This would be the ideal solution, but it seems likely to require much more effort than it's currently worth in terms of coding and balancing. Almost everything in the game up to this point has been based on chessboard distance values, and changing the system for something as important as spell ranges would cause new and annoying discrepancies with the non-radial movement system unless that were changed too (which would require further code, balance considerations, et cetera).
4. Circular range, square sight. Just to be sure that EVERYONE'S pissed off.


Addendum: This seems to be one of those issues that's likely to stir up controversy and collect twenty or thirty posts, then get closed with no changes made because this sort of thing really ought to be on the wiki rather than Mantis. The TL;DR version of this post is that I'd like the new range system to be reverted while we wait for the collected ideas on the wiki to crystallize into something solid enough to become a specific feature request.

(0006172)
st (reporter)
2010-07-06 19:10

>>Note that the support is mostly from a few vocal people, and that many have not voiced any opinion.

There was a little discussion in ##crawl last night about what's new in 0.7. Nobody who responded to the news of this thought it was a good thing. One person did, then after it was further explained (about how movement takes the same time regardless of direction) exclaimed "Then that's stupid!"

It seems like the majority of players are not in favour of circular ranges.
(0006180)
KiloByte (manager)
2010-07-07 00:14

st: until your last line, I was 100% sure you're talking about square LOS, since it's only several people who have said anything in favour of that, and these are the same people over and over. And I'm not aware of a single dev who would prefer that.
(0006181)
TGW (reporter)
2010-07-07 00:54
edited on: 2010-07-07 16:47

I'm not sure how you can look at this FR, which has seven unique commenters voicing a preference for a consistent metric LOS over a consistent circular metric, and the other one (1716), which was started by an eighth and drew support from a ninth and a tenth, and say you are not aware of any support for this idea, or even that this group is a 'minority.'

(0006182)
OG17 (reporter)
2010-07-07 01:45

Kilobyte, has Dpeg taken a 180, then? Also, Rob appears to support circular ranges primarily because shooting outside of LOS isn't possible under it, despite that being an entirely unrelated issue which could be addressed equally well under .6's ranges (or a square LOS). Also note that "don't put in square LOS" is by no means synonymous with "do put in circular ranges."
(0006188)
minmay (reporter)
2010-07-07 05:44

I'll make that ten into an eleven for square LOS, although I don't consider it a big deal.
(0006191)
helsbecter (reporter)
2010-07-07 10:48

I feel like rounded ranges would be fine if it weren't for the level of granularity involved in the ranges - some spells emerge from the rounding more or less intact, but spells with shorter ranges get mangled since a circle doesn't scale too well to that size. Considering that short range spells are often early game spells, it winds up mostly punishing people trying to use stuff like flame tongue and sandblast, and pushing more people into the mephitic-cloud-madness early game style that is a staple these days.

Even at the longer ranges, I have had to make adjustments that don't make much sense realistically. I found my conjurers digging a lot into the walls to drop freezing clouds on statues and oklob plants, since at a very particular firing angle it is possible to reach the edge of LOS. I should either be able to hit it, or not, and a square LOS kind of cures that.

Alternatively, I wouldn't mind just having particularly sculpted ranges (touch, short, long, very long, whatever) that are tailored to the needs of the spells they are assigned to and abandon any kind of numerical consistency. Then it's just a matter of game balance to tweak them, and not some sort of battle over the nature of gameplay reality like square/circle is.
(0006193)
Lemuel (updater)
2010-07-07 19:17
edited on: 2010-07-07 20:23

Put me down as another vote in favor of either square LOS or the old status quo, for the reasons given by others. Roguelikes are played on a grid; the mechanics should reflect that, and not treat it as a rough approximation of smooth Euclidean space.

e: I also think helspecter is right that fewer ranges -- just touch, short, medium and long -- would be better than the numerical ranges we have now. But that's a separate issue -- even if there were no range/LOS conflicts, a single consistent metric seems like a good idea.

(0006196)
OG17 (reporter)
2010-07-07 22:39

This might be a divergence, but set ranges seem rather unattractive - icicle outreaches IMB by one square, for example, which is certainly relevant when comparing the spells. Projectile/beam spells generally have little differentiating themselves from each other as things stand, so why neuter one of the most obvious properties?

Anyway, isn't it strange how clearly-insignificant player feedback has offered virtually (perhaps literally) no support for .7 whatsoever?
(0008024)
doy (developer)
2010-09-06 16:51

Don't think we're gaining anything by this still being open. Further discussion is in 0002250, although it really should be moved to the wiki.

- Issue History
Date Modified Username Field Change
2010-05-30 16:32 TGW New Issue
2010-05-30 20:29 rob Note Added: 0005181
2010-05-30 20:40 dpeg Note Added: 0005184
2010-05-30 20:50 rob Note Added: 0005186
2010-05-30 20:52 rob Relationship added related to 0000543
2010-05-30 22:34 TGW Note Added: 0005191
2010-05-30 22:36 TGW Note Edited: 0005191
2010-05-30 22:36 TGW Note Edited: 0005191
2010-05-30 22:37 TGW Note Edited: 0005191
2010-05-30 22:37 TGW Note Edited: 0005191
2010-05-30 22:37 TGW Note Edited: 0005191
2010-05-30 22:38 TGW Note Edited: 0005191
2010-05-30 22:38 TGW Note Edited: 0005191
2010-05-30 22:38 TGW Note Edited: 0005191
2010-05-30 22:38 TGW Note Edited: 0005191
2010-05-30 22:39 TGW Note Edited: 0005191
2010-05-30 23:02 MrMisterMonkey Note Added: 0005193
2010-05-31 05:17 Kyrris Note Added: 0005199
2010-05-31 07:25 OG17 Note Added: 0005207
2010-05-31 17:23 dpeg Note Added: 0005226
2010-05-31 17:37 TGW Note Added: 0005230
2010-05-31 17:40 TGW Note Edited: 0005230
2010-05-31 17:42 Kyrris Note Added: 0005231
2010-05-31 18:00 TGW Note Added: 0005232
2010-05-31 18:04 TGW Note Edited: 0005232
2010-05-31 18:06 TGW Note Edited: 0005232
2010-05-31 19:57 rob Note Added: 0005233
2010-05-31 20:45 Kyrris Note Added: 0005236
2010-05-31 21:53 Core Xii Note Added: 0005241
2010-06-01 01:37 due Note Added: 0005249
2010-06-01 09:37 Nobody Note Added: 0005256
2010-06-01 09:38 Nobody Note Edited: 0005256
2010-07-06 19:10 st Note Added: 0006172
2010-07-07 00:14 KiloByte Note Added: 0006180
2010-07-07 00:54 TGW Note Added: 0006181
2010-07-07 01:45 OG17 Note Added: 0006182
2010-07-07 05:44 minmay Note Added: 0006188
2010-07-07 10:48 helsbecter Note Added: 0006191
2010-07-07 16:47 TGW Note Edited: 0006181
2010-07-07 19:17 Lemuel Note Added: 0006193
2010-07-07 19:21 Lemuel Note Edited: 0006193
2010-07-07 19:44 Lemuel Note Edited: 0006193
2010-07-07 20:23 Lemuel Note Edited: 0006193
2010-07-07 22:39 OG17 Note Added: 0006196
2010-09-06 16:51 doy Note Added: 0008024
2010-09-06 16:51 doy Status new => resolved
2010-09-06 16:51 doy Fixed in Branch => 0.8 development branch
2010-09-06 16:51 doy Resolution open => suspended
2010-09-06 16:51 doy Assigned To => doy
2012-07-10 00:54 TGW Status resolved => closed


Mantis 1.1.8[^]
Copyright © 2000 - 2009 Mantis Group
Powered by Mantis Bugtracker