HabitRPG / habitica

A habit tracker app which treats your goals like a Role Playing Game.
https://habitica.com
Other
12.02k stars 4.1k forks source link

Auto-Allocation - is it for the Non-Power User? #2063

Closed JennaMalkin closed 10 years ago

JennaMalkin commented 10 years ago

Given that with the creation of all new tasks, one must edit it, go into the advanced menu and then choose which type of task it is, is it really true to suggest that auto-allocation is for players who don't care about roleplaying in the class system or who don't have the time to do so?

Wouldn't such a user be more likely to go, 'ok, I have points, what do I do with them? I'll make them all equal as I can, now let's go do something else'. ?

It seems like the player would spend more time and energy allocating each task to a type than they would just investing them somewhere, anywhere - both at level 5 when they first can, and at each level up.

wc8 commented 10 years ago

It’s supposed to be for easier use, click it and * if you wish, you can skip all attribute assignments (You’ll wind up with some hefty strength, I believe.) * if you assign task attributes, on level-up, best performing task attribute is auto converted to a character attribute point (or a suggestion is given?)

I’m waiting for multiple item edit before bothering with task attributes.

lefnire commented 10 years ago

@wc8 I really want to give you that feature, but realistically it'll be a month or two out :(

On Thu, Dec 19, 2013 at 6:11 PM, wc8 notifications@github.com wrote:

It’s supposed to be for easier use, click it and * if you wish, you can skip all attribute assignments (You’ll wind up with some hefty strength, I believe.) * if you assign task attributes, on level-up, best performing task attribute is auto converted to a character attribute point (or a suggestion is given?)

I’m waiting for multiple item edit before bothering with task attributes.

— Reply to this email directly or view it on GitHubhttps://github.com/HabitRPG/habitrpg/issues/2063#issuecomment-30982029 .

wc8 commented 10 years ago

@lefnire not a surprise… lots to do… I mentioned it only because others with long lists might want to take the same approach of waiting for mass-edit before using the task attributes option. Easy right now is either do an even distribution or just let auto-allocate handle it.

JennaMalkin commented 10 years ago

Is it really an 'easier use', though? It certainly sounds like it should be, but high strength works against habit formation - it gives the coveted 'Bright Blue' with seemingly little effort. I know I'm finding my strength (4 or 5, plus warrior gear) something of a handicap - perhaps it might be better once the maths is worked out.

Manually assigning task attributes, as I've already explained, feels like too much effort, particularly by the point at which the class system is introduced - by level 5, you've already got your setup broadly how you like it.

SabreCat commented 10 years ago

I like the idea of having an auto-allocate that just spreads the stats out evenly, or maybe in a proportion like 3 points to class's primary attribute : 2 points to class's secondary attribute : 1 point to each non-class attribute.

JennaMalkin commented 10 years ago

Keep in mind, though, that most people from now on will start with 5 attribute points - 3 in their primary, 2 in their secondary leaves nothing to bolster their passive attributes with. An 'auto-allocate' which would even out the attributes would be more useful. (The user feels like they've 'done something' with all their attributes.)

SabreCat commented 10 years ago

I'd be okay with an even distribution, but I don't think it'd be terrible to give a nudge in the direction of the attributes that key in to the character's spells. You could set up the algorithm in a "building a pyramid" fashion, where it makes sure to fill out the bottom layer of the attribute spread before adding new points to the peak. So suppose I've chosen Mage, like I do, and opt for auto-allocate:

At level 5, I get one point in each attribute, and an extra one in INT. Level 6 adds a point to PER. Level 7 adds a point to INT. Here we've hit the first iteration of 3:2:1:1. Time to build up the foundation again. Level 8 adds a point to STR. Level 9 adds a point to CON. 3:2:2:2. Ready to raise the roof. Level 10 adds a point to PER. 3:3:2:2. Level 11 adds a point to INT. 4:3:2:2. Level 12 adds a point to PER. 4:4:2:2. Level 13 and 14 each add points to INT, achieving our second pass of 3:2:1:1 giving us 6:4:2:2.

I don't think it'd be too hard to code that with a nice nest of if-thens (and modulo! Everyone loves modulo!), but I'd have to take a stab at it to be sure.

SabreCat commented 10 years ago

2:2:1:1 would also be legit, and give people points in their "off" attributes much more frequently.

wc8 commented 10 years ago

@SabreCat I think that’s a good idea. I’d go with which ever is easier to code. For suggestions, I’d make that separate, and introduce it when we introduce mass-edit.

wc8 commented 10 years ago

Wording: maybe auto-allocate should be “auto-allocate future points” unless and until it would assign previous points. For example, Level 20 users choosing auto-allocate may not realize they still have to allocate their first 20 points.

crystalphoenix commented 10 years ago

just wanted to pop by and voice my support for the even or pyramid auto-allocate :+1: it sounds like it would be better for the people opting out of classes than a strength heavy attribute distribution. might even be something i would opt into after i'm done roaming through the classes ^^;

JennaMalkin commented 10 years ago

Maybe rename the current auto-allocation "Live Action Role Play (For Advanced Users)", alongside the proposed 'even-split auto-allocation'? (Yes, adding in terminology, but hopefully people would google LARPing first...)

SabreCat commented 10 years ago

LARP! Haha. I think that'd be a little confusing even if you look it up. It shouldn't be too hard to come up with a descriptive phrase, "Allocate attributes based on task activity" or the like, but coming up with a short punchy name for it is harder.

We're talking about several options, here... what if the design were something like this:

It starts off looking pretty much like what we've got now. "Automatic Allocation" checkbox above the list of attributes. But when you select it, it unfolds a set of radio buttons with mouseover question-mark bubbles:

The wiki could explain more, including why you might choose each of those options. If you have banked points, choosing one of the auto-allocate options could also enable a button "Distribute Points Now" that would divvy up your backlog according to the scheme you chose.

SabreCat commented 10 years ago

I might take this on as my next major project... I feel like I'm sort of wasting my time with e.g. #1990 until this is working right. (See this Gist for some concerns of mine regarding present auto-allocation, even for the users like me who are willing to go to the effort of tagging everything.)