Name 10-aut units, or do away with them and just count auts


Although the central place for design discussion is ##crawl-dev on freenode, some may find it helpful to discuss requests and suggestions here first.

Lair Larrikin

Posts: 20

Joined: Sunday, 7th July 2019, 17:17

Post Saturday, 22nd February 2020, 18:58

Name 10-aut units, or do away with them and just count auts

Hello,

It is very confusing to new players, and to a certain degree even to experienced players, that the standard "1.0" unit of time has no name. It is especially confusing not only because it does not have a name, but because it is very easy to incorrectly assume it must be a "turn," which of course in Crawl terminology is actually a single player action, no matter how much or how little game time that action consumes. I think it would be resonant with the "clarity" portion of Crawl's design philosophy if this were...well, clarified.

Proposition 1: Give the 10-aut unit a name, for Pete's sake. If this happened (someone in a years-old Reddit comment suggested calling it a "decaut" or "dec"), it would both add definition to Crawl's game time and help to provide the distinction between auts, 10-aut intervals, and "turns."

Proposition 2: Just do away with the unnamed 10-aut unit altogether, so that auts are the standard unit and they are always simply counted as whole numbers, which would save, not add, characters on the screen because the decimal point would simply go away and the rest of the numerals would stay the same.

Personally, I feel more drawn to proposition 2, because then there are only two potentially-confused things to be distinguished from each other: the "aut" and the "turn." However, I think that either proposition would be a big improvement to clarity.

The most obvious argument (AFAIK) against proposition 2 is that the 10-aut unit of time is important, being the standard movement delay for an average-speed character or enemy. To this I reply: "Yes, but it's apparently not important enough to be given a name." I ask which of the following is a more straightforward thing to explain to the player: "10 auts is the standard movement delay," or "1.0 of some unnamed chunk of time is the standard movement delay and it is equal to 10 auts."

Thanks in advance for feedback!

For this message the author Psymania has received thanks: 2
duvessa, nago

Zot Zealot

Posts: 1004

Joined: Thursday, 16th August 2018, 21:19

Post Saturday, 22nd February 2020, 21:27

Re: Name 10-aut units, or do away with them and just count a

I wouldn't mind using 'turn' to mean 10 auts.

The word 'action' is much better suited to describing "a single player action, no matter how much or how little game time that action consumes".

The change this would imply for speed-runs I'd consider positive. (No more bread swinging.)

Ziggurat Zagger

Posts: 8786

Joined: Sunday, 5th May 2013, 08:25

Post Saturday, 22nd February 2020, 23:58

Re: Name 10-aut units, or do away with them and just count a

petercordia wrote:I wouldn't mind using 'turn' to mean 10 auts.
People uncritically using 'turn' like this is the reason this whole debacle exists in the first place.

Definitely just get rid of the decimal point.
User avatar

Tartarus Sorceror

Posts: 1698

Joined: Saturday, 18th June 2016, 13:57

Post Sunday, 23rd February 2020, 16:02

Re: Name 10-aut units, or do away with them and just count a

I wonder if it makes sense to use the word "aut" in general. "Arbitrary unit of time"? That's not readable, just call them Time Units, or something simpler.

I find definitions like "attack delay" and "movement delay" also more complex than needed.

"This weapon's fastest attack speed (0,6) is reached at skill level 14" reads simpler to me.
I Feel the Need--the Need for Beer
Spoiler: show
3DSBeTr 15DSFiRu 3DSMoNe 3FoHuGo 3TrArOk 3HOFEVe 3MfGlOk 4GrEEVe 3BaIEChei 3HuMoOka 3MiWnQaz 3VSFiAsh 3DrTmMakh 3DSCKXom 3OgMoOka 3NaFiOka 3FoFiOka 3MuFEVeh 3CeHuOka 3TrMoTSO 3DEFESif 3DSMoOka 3DSFiOka

For this message the author Shtopit has received thanks:
duvessa

Lair Larrikin

Posts: 20

Joined: Sunday, 7th July 2019, 17:17

Post Sunday, 23rd February 2020, 20:26

Re: Name 10-aut units, or do away with them and just count a

Shtopit wrote:I wonder if it makes sense to use the word "aut" in general. "Arbitrary unit of time"? That's not readable, just call them Time Units, or something simpler.

I like that too, not a bad idea. "TUs" for short?

Shtopit wrote:I find definitions like "attack delay" and "movement delay" also more complex than needed.

"This weapon's fastest attack speed (0,6) is reached at skill level 14" reads simpler to me.

The problem with this is that "speed" and "delay" are conceptually opposite. A higher speed means a lower delay. If the number in question is 0.7 instead of 0.6, that means it's slower, not faster -- but a "speed" of 0.7 ought to be faster than a "speed" of 0.6.

For this message the author Psymania has received thanks: 2
duvessa, petercordia
User avatar

Tartarus Sorceror

Posts: 1698

Joined: Saturday, 18th June 2016, 13:57

Post Sunday, 23rd February 2020, 23:30

Re: Name 10-aut units, or do away with them and just count a

Psymania wrote:
Shtopit wrote:I wonder if it makes sense to use the word "aut" in general. "Arbitrary unit of time"? That's not readable, just call them Time Units, or something simpler.

I like that too, not a bad idea. "TUs" for short?

Yes, possibly. The best would be a very short word that doesn't need shortening. (The only one I can think of right now would be "beat", which might be just as opaque).
The problem with this is that "speed" and "delay" are conceptually opposite. A higher speed means a lower delay. If the number in question is 0.7 instead of 0.6, that means it's slower, not faster -- but a "speed" of 0.7 ought to be faster than a "speed" of 0.6.

True, but directly above you have the base attack delay. The result would be e.g.

  Code:
Base attack speed: 1,3
This weapon's fastest attack speed (0,6) is reached at skill level 14.


which would show that faster = lower number.

But again, any alternative that is easier to read and has less ambiguity than "speed" would be welcome by me.
I Feel the Need--the Need for Beer
Spoiler: show
3DSBeTr 15DSFiRu 3DSMoNe 3FoHuGo 3TrArOk 3HOFEVe 3MfGlOk 4GrEEVe 3BaIEChei 3HuMoOka 3MiWnQaz 3VSFiAsh 3DrTmMakh 3DSCKXom 3OgMoOka 3NaFiOka 3FoFiOka 3MuFEVeh 3CeHuOka 3TrMoTSO 3DEFESif 3DSMoOka 3DSFiOka
User avatar

Zot Zealot

Posts: 982

Joined: Monday, 29th September 2014, 09:04

Post Monday, 24th February 2020, 02:41

Re: Name 10-aut units, or do away with them and just count a

How about:

  Code:
This weapon's attacks take 13 TU at 0 skill.
Its fastest attack speed (6) is reached at skill level 14.
At your current skill level (7.9), attacks take 8-9 TU.

Slime Squisher

Posts: 419

Joined: Monday, 12th September 2016, 16:25

Post Monday, 24th February 2020, 17:25

Re: Name 10-aut units, or do away with them and just count a

Psymania wrote:Proposition 1: Give the 10-aut unit a name, for Pete's sake. If this happened (someone in a years-old Reddit comment suggested calling it a "decaut" or "dec"), it would both add definition to Crawl's game time and help to provide the distinction between auts, 10-aut intervals, and "turns."

Proposition 2: Just do away with the unnamed 10-aut unit altogether, so that auts are the standard unit and they are always simply counted as whole numbers, which would save, not add, characters on the screen because the decimal point would simply go away and the rest of the numerals would stay the same.

I was thinking about this after you mentioned it on IRC and it struck me that as a player I favour Proposition 1 - on reflection, I think I usually already call 10-aut intervals "nominal turns" (in a sensible world they'd be "turns" and you would take "moves", but we can't get there from here).

However, as an occasional programmer, I favour Proposition 2, because there are some things in the code that use nominal turns and some which use auts and goodness me, does this make for hilarious gotchas.
Ascension reports with too many words since 2016.

Lair Larrikin

Posts: 20

Joined: Sunday, 7th July 2019, 17:17

Post Monday, 24th February 2020, 18:43

Re: Name 10-aut units, or do away with them and just count a

Shtopit wrote:Yes, possibly. The best would be a very short word that doesn't need shortening. (The only one I can think of right now would be "beat", which might be just as opaque).

What about a "tick"? "Beat" sounds a little weird and ambiguous, I agree, but I think that for most English speakers, "tick" conjures thoughts of time more directly than thoughts of anything else. It's also very short and easy. And has a nice ring. :P

For this message the author Psymania has received thanks:
Shtopit
User avatar

Tartarus Sorceror

Posts: 1698

Joined: Saturday, 18th June 2016, 13:57

Post Thursday, 27th February 2020, 12:55

Re: Name 10-aut units, or do away with them and just count a

Psymania wrote:What about a "tick"? "Beat" sounds a little weird and ambiguous, I agree, but I think that for most English speakers, "tick" conjures thoughts of time more directly than thoughts of anything else. It's also very short and easy. And has a nice ring. :P


It sounds very good! I'd go for it.
I Feel the Need--the Need for Beer
Spoiler: show
3DSBeTr 15DSFiRu 3DSMoNe 3FoHuGo 3TrArOk 3HOFEVe 3MfGlOk 4GrEEVe 3BaIEChei 3HuMoOka 3MiWnQaz 3VSFiAsh 3DrTmMakh 3DSCKXom 3OgMoOka 3NaFiOka 3FoFiOka 3MuFEVeh 3CeHuOka 3TrMoTSO 3DEFESif 3DSMoOka 3DSFiOka

Ziggurat Zagger

Posts: 5382

Joined: Friday, 25th November 2011, 07:36

Post Sunday, 1st March 2020, 21:44

Re: Name 10-aut units, or do away with them and just count a

+1 for ticks. They're fairly commonly used in games, especially various "incrementals" which have a minimum time defined (like kittensgame uses .2 seconds for their tick, or 5 ticks per second). Or old school muds which had fairly long ticks, often around 1 minute, which was when the player got health/mana regeneration. Real time games often use "frames" instead, but I think ticks is better here.
User avatar

Tartarus Sorceror

Posts: 1762

Joined: Monday, 14th October 2013, 01:05

Post Wednesday, 4th March 2020, 14:27

Re: Name 10-aut units, or do away with them and just count a

"Time Unit/TU" is already used in some old games like XCOM which roguelike players are relatively likely to be familiar with, so there's a familiarity upside with that option.
User avatar

Barkeep

Posts: 4435

Joined: Tuesday, 11th January 2011, 12:28

Post Thursday, 5th March 2020, 15:45

Re: Name 10-aut units, or do away with them and just count a

For one single little anecdote: I've been playing on and off for a long time, and this thread was the first time I realized that weapon delay is just the number of ten-aut-units it takes to use the weapon. (God, I hope this is actually correct.) I'd always thought "oh, 0.6 is just some unitless thing compared to some other arbitrarily-chosen 1.0 weapon speed." Yes, I could have just watched the time meter as I swung a weapon. I didn't, or didn't really internalize what the result meant.

Partly, I think, this is because game time is displayed in tens of auts and people talk about actions taking time in a mixture of auts ("speed 10 monster") and tens of auts ("minimum delay is 0.7"). They sound like different things.

Just listing every time and delay in auts (eg, remove the decimal point) and saying things like "a move speed of 10 means it takes 10 auts to move" and "weapon delay of 14 means it takes 14 auts to use the weapon" would make a lot of the speed system (which is pretty important!) more clear.

I don't think the concept of "10 auts" needs a name at all. 10 auts is not special, it's just the speed that a lot of characters and monsters move at.
I am not a very good player. My mouth is a foul pit of LIES. KNOW THIS.

For this message the author njvack has received thanks:
TheMeInTeam

Tomb Titivator

Posts: 809

Joined: Wednesday, 19th June 2013, 09:31

Post Thursday, 5th March 2020, 19:07

Re: Name 10-aut units, or do away with them and just count a

Tongue in cheek but half serious reply... just make everything in the game take ten times as long.

Ziggurat Zagger

Posts: 5382

Joined: Friday, 25th November 2011, 07:36

Post Monday, 9th March 2020, 21:35

Re: Name 10-aut units, or do away with them and just count a

njvack wrote:For one single little anecdote: I've been playing on and off for a long time, and this thread was the first time I realized that weapon delay is just the number of ten-aut-units it takes to use the weapon. (God, I hope this is actually correct.) I'd always thought "oh, 0.6 is just some unitless thing compared to some other arbitrarily-chosen 1.0 weapon speed." Yes, I could have just watched the time meter as I swung a weapon. I didn't, or didn't really internalize what the result meant.

Partly, I think, this is because game time is displayed in tens of auts and people talk about actions taking time in a mixture of auts ("speed 10 monster") and tens of auts ("minimum delay is 0.7"). They sound like different things.

Just listing every time and delay in auts (eg, remove the decimal point) and saying things like "a move speed of 10 means it takes 10 auts to move" and "weapon delay of 14 means it takes 14 auts to use the weapon" would make a lot of the speed system (which is pretty important!) more clear.

I don't think the concept of "10 auts" needs a name at all. 10 auts is not special, it's just the speed that a lot of characters and monsters move at.


Are you ready to go down the real rabbit hole? Please correct me if my understanding is wrong, but I think you're still mistaking how weird crawl's time system is. Specifically for monsters; your weapon stuff is correct. Monster speed isn't related to how quickly they can move - all monsters require 10 energy to move unless it's doing something like swimming at a faster rate. A monster's speed is how much energy they gain after a player action (assumed to be 10 auts). So then a 15 speed monster gains 15 energy after each player action, which they can then spend 10 of to move (and will save the 5 extra, so that next turn (again assuming the player took exactly 10 auts on the last action) they'll go to 20 energy, and can act twice.

If the player's action was faster/slower than 10 auts, then the monster's energy gain is scaled, although I have no idea how it handles rounding.
User avatar

Barkeep

Posts: 4435

Joined: Tuesday, 11th January 2011, 12:28

Post Tuesday, 10th March 2020, 16:00

Re: Name 10-aut units, or do away with them and just count a

You're right, I am totally misinterpreting how monster energy works. Gak.
I am not a very good player. My mouth is a foul pit of LIES. KNOW THIS.

Ziggurat Zagger

Posts: 6454

Joined: Tuesday, 30th October 2012, 19:06

Post Tuesday, 10th March 2020, 19:37

Re: Name 10-aut units, or do away with them and just count a

tasonir wrote:If the player's action was faster/slower than 10 auts, then the monster's energy gain is scaled, although I have no idea how it handles rounding.

  Code:
static void _monster_add_energy(monster& mons)
{
    if (mons.speed > 0)
    {
        // Randomise to make counting off monster moves harder:
        const int energy_gained =
            max(1, div_rand_round(mons.speed * you.time_taken, 10));
        mons.speed_increment += energy_gained;
    }
}

div_rand_round randomly rounds up or down proportional to the fractional part (so if the actual math would produce 10.7 you get 10 30% of the time and 11 70% of the time)

the *end result* is that a regular monster with speed 15 attacks and moves 50% more frequently on average than a player who takes 10-aut actions, given the default monster action speed (10)

Monster's can also have specialized amounts of energy they can lose per-action-type (for example deep elf master archers only take 5 energy to fire missiles, but take 10 for everything else, and are "speed 10")

Most monsters use the default energy consumed (10) for everything, and those that don't, have limited exceptions.
Spoiler: show
This high quality signature has been hidden for your protection. To unlock it's secret, send 3 easy payments of $9.99 to me, by way of your nearest theta band or ley line. Complete your transmission by midnight tonight for a special free gift!

Zot Zealot

Posts: 1004

Joined: Thursday, 16th August 2018, 21:19

Post Tuesday, 10th March 2020, 21:18

Re: Name 10-aut units, or do away with them and just count a

I thought monsters were effected my weapon delay when using a weapon, taking a number of 'energy points' equal to Average(weapon base delay, 10). Is that incorrect?

Ziggurat Zagger

Posts: 6454

Joined: Tuesday, 30th October 2012, 19:06

Post Wednesday, 11th March 2020, 19:45

Re: Name 10-aut units, or do away with them and just count a

petercordia wrote:I thought monsters were effected my weapon delay when using a weapon, taking a number of 'energy points' equal to Average(weapon base delay, 10). Is that incorrect?

That's incorrect, the number of energy points a monster needs to use to take a normal action is fixed, the number of action points you *give them* is relative to their speed and number of auts your action consumed.

The amount of energy it takes *a monster to swing a wielded weapon* is relative to *that monster's weapon's base delay* and the base attack energy consumption for that monster (10 for everything except juggernauts presently).

Relevant code:
Spoiler: show
Attack code for figuring out how much energy a monster takes:
  Code:
 if (!effective_attack_number)
        {
            int energy = attacker->as_monster()->action_energy(EUT_ATTACK);
            int delay = attacker->attack_delay().roll();
            dprf(DIAG_COMBAT, "Attack delay %d, multiplier %1.1f", delay, energy * 0.1);
            ASSERT(energy > 0);
            ASSERT(delay > 0);

            attacker->as_monster()->speed_increment
                -= div_rand_round(energy * delay, 10);
        }

attacker->as_monster()->action_energy(EUT_ATTACK); is 10 (except for juggernauts)

definition of "attack_delay" for monsters:
  Code:
random_var monster::attack_delay(const item_def *projectile,
                                 bool /*rescale*/) const
{
    const item_def* weap = weapon();

    const bool use_unarmed =
        (projectile) ? is_launched(this, weap, *projectile) != launch_retval::LAUNCHED
                     : !weap;

    if (use_unarmed || !weap)
        return random_var(10);

    random_var delay(property(*weap, PWPN_SPEED));
    if (get_weapon_brand(*weap) == SPWPN_SPEED)
        delay = div_rand_round(delay * 2, 3);
    return (random_var(10) + delay) / 2;
}


Basically for monster's it costs 10 energy + d(Average(10,weapon base delay)) to attack with a weapon, but it's *their* wielded weapon, not yours.
Spoiler: show
This high quality signature has been hidden for your protection. To unlock it's secret, send 3 easy payments of $9.99 to me, by way of your nearest theta band or ley line. Complete your transmission by midnight tonight for a special free gift!

Lair Larrikin

Posts: 20

Joined: Sunday, 7th July 2019, 17:17

Post Thursday, 26th March 2020, 06:29

Re: Name 10-aut units, or do away with them and just count a

Anybody mind if I revive this discussion?

It seems like there is an awful lot of support for just doing away with decimal points and making auts the *only* single unit of time used, no?

And, as well, for renaming them to something like "ticks."

You're probably not asking yourself "I wonder what motivated him to come check and see whether this conversation went anywhere?", but I'm going to answer the question for you anyway. It occurs to me that the "%" screen in Crawl itself calls two different things "turns" at the very same time. In the upper right of the "%" screen, it shows the number of "turns" meaning player actions that have elapsed. It doesn't equal the "Time" displayed on the main screen so it is clearly the other definition. However, in the lower left of the "%" screen, it tells you your HP and MP regeneration per "turn," where "turn" means 10 auts...at the very least, this inconsistency should be fixed, no?

Zot Zealot

Posts: 1004

Joined: Thursday, 16th August 2018, 21:19

Post Thursday, 26th March 2020, 11:44

Re: Name 10-aut units, or do away with them and just count a

I actually still like the concept of 'a standard turn duration', and thus like the decimal point and I wish 10 auts could have a name.
I also don't think 'tick' is any better than 'aut', neither would I care much if it was changed.

I'd really appreciate if the game stopped counting the number of player actions (currently called turns).

Lair Larrikin

Posts: 20

Joined: Sunday, 7th July 2019, 17:17

Post Friday, 27th March 2020, 22:08

Re: Name 10-aut units, or do away with them and just count a

I'm playing Stoat Soup right now (being a faerie dragon is fun and they are pretty!) and I just noticed that in the spell description for its version of Regeneration (which still exists in Stoat in a modified form), it references "per turn" in a way that I am about 95% confident has got to be talking about units of game *time* (10-aut, I would suppose) and *not* player *actions*. It makes me wonder whether there are also other references to "turns" strewn about in Stone Soup that are also referring to time units and not actions.

Would it be feasible to simply quit calling player actions "turns," call them "actions" instead (which is exactly what they *are*), and let "turns" mean 10-aut units, as it's so often been (understandably) assumed to mean? AFAIK, that would only require one, very trivial in-game change: "turns" in the top-right of the "%" screen would have to become "actions" instead. Nothing else. On the flipside, I can see that this would result in some confusion for experienced players: "What, you mean that turns *are* 10-aut units after all, and that player actions are not turns, but are instead actions?"

For this message the author Psymania has received thanks:
petercordia

Return to Game Design Discussion

Who is online

Users browsing this forum: No registered users and 100 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.