Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Vanilla

Reply
 
Thread Tools Display Modes
Old January 1, 2008, 00:49   #1
kandrc
Swordsman
 
Join Date: Dec 2007
Posts: 299
kandrc is on a distinguished road
Area of Effect

There's been a good bit of talk here and in the newsgroup about implementing circular area of effect in V. I strongly agree with the idea that screen-size area of effect for detections is broken, but I argue that circular detection AOEs are at least as bad. It seems like I am the only person who has thought about this--or at least, nobody has posted thoughts online--and noted the inherent inconsistencies, so I'm speaking up about it.

The appeal of a circular area of effect is aesthetic. In the real world (under some idealizing assumptions), my shout or an explosion, attenuate equally in all directions, so we naively believe that such an effect makes sense in Angband. The fallacy here is the result of a discretization of a continuous world within the framework of the game. In the real world, a fireball expands in an infinite number of directions. In Angband, it expands in 8 directions.

The reason this is a problem is because the 4 off-axis directions (with a "distance" of sqrt(2) times the on-axis distance--assume d 1--separating them) do not require more energy for the most mundane actions in the game (walking, running, disarming, melee), but a circular area of effect enforces that they do implicitly require more energy for magical effects. Inconsistency is always bad. The fact that we would not be able to neatly and efficiently align our detection areas is an annoying gameplay decision. Nonetheless, in such a situation I would be happy to accept annoying gameplay in exchange for realism if it didn't involve inconsistency, but the inconsistency here is the kicker.

So what is the solution? Well, we could make all diagonal actions require 41% more energy, then circles make sense everywhere, but his is a gameplay problem that is far beyond annoying. If you're being meleed from more than one direction, and the baddest bad guy is on an off-axis, it's entirely unintuitive whom you should take out first, and the energy system that Angband uses for time is not equipped to handle this (though a discrete event simulator based engine could deal with it satisfactorily). Unfortunately, even if the engine could handle the solution, it still creates situations that players cannot effectively reason about, so this is a bad idea.

The other solution is to accept that Angband is a discretized simulation with only 8 directions, forgo our false aesthetic, and make all areas of effect square. This leaves no internal inconsistencies, it's more efficient and easier to program to boot, and it makes detection spells easier to align.

As an illustration, take a wizard (or if you're not worried about fubaring your turncount, your current character) to 50' and stone to mud as far as you can in a cardinal- then in a non-cardinal direction (this will work better if there is rock the whole way) and count how far your tunnels have gone, then try to convince yourself that this makes sense. Arrows and thrown objects behave in the same nonsensical fashion as s2m. If I'm Smaug, hurting and trying to get away from flying bolts, I'm going diagonally!

I'd like to see even things like light radii and ball spell effects square, but I think this distinction has very little effect on gameplay in truth, it's a nice aesthetic, and I'm willing to live with this inconsistency; however, missiles, beams, and "unexploded ball spells" fired in all directions from a central point should certainly map out a square, as should detection spells.
kandrc is offline   Reply With Quote
Old January 1, 2008, 01:23   #2
Bandobras
Knight
 
Join Date: Apr 2007
Posts: 725
Bandobras is on a distinguished road
That makes some sense. What should be the area of the detection rectangle? One standard town size? Twice that, one below another? Four? Or make it a square? I try to use fonts as close to squares as I can get for Angband, but squares would still look uneven.
Bandobras is offline   Reply With Quote
Old January 1, 2008, 02:31   #3
zaimoni
Knight
 
zaimoni's Avatar
 
Join Date: Apr 2007
Posts: 590
zaimoni is on a distinguished road
Quote:
Originally Posted by kandrc View Post
Well, we could make all diagonal actions require 41% more energy, then circles make sense everywhere,
If realism were an objective, this misses the real issue: why should move time/energy cost equal attack time/energy cost at all? (They already don't for extra-shot bows.)

I'm not sure what this would do to game balance, but the following would "make sense" for forking from V:
* move energy cost: 100 for cardinal directions, 150 for diagonals. [This way, energy cost is the same for moving distance three cardinally and diagonally.]
* leave all action energy costs unchanged (including attacking)

(Note: energy is represented as 16-bit signed, so this change does not require a data representation change.)
zaimoni is offline   Reply With Quote
Old January 1, 2008, 04:01   #4
Patashu
Knight
 
Patashu's Avatar
 
Join Date: Jan 2008
Posts: 526
Patashu is on a distinguished road
While one -could- make diagonal movements cost 41.4% more (and, indeed, games like HoMM3 do) I'd say they shouldn't on account of...well, actually, I'm not sure why I think this. You could try modding it in as an option changeable under = and seeing how the game plays.
Patashu is offline   Reply With Quote
Old January 1, 2008, 05:47   #5
aeneas
Adept
 
Join Date: Jun 2007
Location: The place of virtuous unbelievers
Posts: 158
aeneas is on a distinguished road
Quote:
Originally Posted by zaimoni View Post
If realism were an objective, this misses the real issue: why should move time/energy cost equal attack time/energy cost at all? (They already don't for extra-shot bows.)
I've always assumed that when people talked about circular detection they meant circular in Angband space- i.e., rectangular in our space. To do anything else would be to elevate "real-world" realism above Angband-world realism, and pragmatism. Trust me, I've thought about it, but I didn't imagine any maintainer would implement real-world circular detection. I don't care about realism, but I do care that detection tiles. If it doesn't, it is broken, and you would have to have a remarkable lack of understanding of the game to think otherwise- that, or want a rather capricious game.

This is closely related to Nick's post, quoting me . I've been meaning to get back to it, but it calls for a careful response, and I was too tired to give it one last night. Unfortunately (at least for this discussion), I have to meet someone who gets off work tonight at the stroke of the New Year, so I can't explain fully (love, or at least animal attraction, conquers Angband), but this is one area where turncount matters, and is one (of many) things that I meant.

If turn-count is irrelevant you can just rest until you have the mana to detect the next panel (with the proviso that things will generate in that time). If you lack detection as a spell you can just recall a lot to get more detection scrolls or staves. I happen to play with settings that require four detects to detect the whole level- the first detect gets more than 25% though. This has an effect- for instance my current character found his first !Con at 4950 (EDIT: 2450)... had he detected the whole level at every level he almost certainly would have found some earlier. This was only the case because he was dropping quickly, and didn't want to waste turns recalling to get more ?detect object. I don't disagree that detection shouldn't vary with resolution/font size/ etc, but I think it's important to realize that this is not a balance issue _unless_ you care about turns, or some proxy.

Last edited by aeneas; January 1, 2008 at 05:53.
aeneas is offline   Reply With Quote
Old January 1, 2008, 09:06   #6
Atriel
Apprentice
 
Atriel's Avatar
 
Join Date: Aug 2007
Posts: 81
Atriel is on a distinguished road
Detection range was originally one screen of old unix
computers of moria era. This means, an area of around 42x32
or so. So yes, detection as is today is much more powerful
and abusable in the default configuration in most machines.
If you play a little bit of UMoria and then after, a little bit of
Hengband or FaAngband youll notice that the retangular area
originally meant to be in Moria can easily fit inside the
circular area of H/FA.
It wouldn´t be bad if energy to move diagonally costs 140 or 150
for the sake of consistency, but retangular detection range is
something so abstracted and full of munchknism as it is now
that it gives me the creeps just to think about playing Vanilla.
Dammit, the thought of having retangular detection
just to make a pattern of X (number of detections) to perfectly
map the level is a joke right?
Maybe if circ detection is implemented, purists can imagine retangles using four tangents of the circles
Atriel is offline   Reply With Quote
Old January 1, 2008, 11:33   #7
zaimoni
Knight
 
zaimoni's Avatar
 
Join Date: Apr 2007
Posts: 590
zaimoni is on a distinguished road
Quote:
Originally Posted by aeneas View Post
I've always assumed that when people talked about circular detection they meant circular in Angband space- i.e., rectangular in our space.
V distance actually ends up with digitized octagons rather than digitized circles. As a side effect, the distance traversed in two diagonal squares is exactly 3 no matter how many multiples of 2 are involved.

The weirdness is that diagonal movement is hyperefficient; bumping the energy cost to 150 for diagonal moves mostly compensates for that. (I did propose the 141 to Ben Harrison at one point, but he corrected me much the way I'm relaying now.) My concern about balance is that I'm not fully comfortable with giving free attacks on anyone just for moving diagonally.

Quote:
Originally Posted by aeneas View Post
I don't disagree that detection shouldn't vary with resolution/font size/ etc, but I think it's important to realize that this is not a balance issue _unless_ you care about turns, or some proxy.
It is a balance issue because inexpensive whole-level detection makes the game easier, absolutely. Without whole-level detection, clearing levels is necessary; with whole-level detection, clearing levels is an ironman play style.
zaimoni is offline   Reply With Quote
Old January 1, 2008, 12:06   #8
Nick
Vanilla maintainer
 
Nick's Avatar
 
Join Date: Apr 2007
Location: Canberra, Australia
Age: 54
Posts: 7,860
Donated: $60
Nick will become famous soon enough
Quote:
Originally Posted by aeneas View Post
This is closely related to Nick's post, quoting me . I've been meaning to get back to it, but it calls for a careful response,
I'm not convinced of that. I think I was talking rubbish

As for detection area shape, I'm now so used to (euclidean) circular detection that it seems natural to me. I suspect there's not a canonical answer to this, but maybe I'm wrong. It has happened.
__________________
One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.
Nick is offline   Reply With Quote
Old January 1, 2008, 17:27   #9
Narvius
Knight
 
Narvius's Avatar
 
Join Date: Dec 2007
Location: Poland, Katowice
Age: 27
Posts: 589
Narvius is on a distinguished road
Quote:
Originally Posted by zaimoni View Post
My concern about balance is that I'm not fully comfortable with giving free attacks on anyone just for moving diagonally.
Why that? It is natural that moving farther takes more times, thus giving your foes more opportunities to attack you. It would also make place for a new special item trait - something like short-distance-warping, allowing you to move diagonally at normal speed.
Narvius is offline   Reply With Quote
Old January 1, 2008, 18:55   #10
zaimoni
Knight
 
zaimoni's Avatar
 
Join Date: Apr 2007
Posts: 590
zaimoni is on a distinguished road
Speed is one of the more critical parts of *band game balance. On top of that, this change penalizes corner-cutting even more than V already does. Consider
Code:
@.
#.
#k
With the V vision algorithm, the kobold isn't visible without telepathy or a detection spell. So you already have the in-game penalty of a surprise attack (which may instadeath a first-level mage, or in Zangband and its descendants instadeath anyone in the early game should it be a death sword there).

If diagonal moves cost 150 rather than 100:
* kobold is effectively temporarily speed +5 for one player turn.
* unless magic mapping indicates a very long hallway, it would not make sense (without detection) for a high-damage ranged attack-competent character/monster to cut a corner because cutting the corner slows down the next attack should it be useful.
zaimoni is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 08:27.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.