Remove duplication of RR-values [SUGGESTION] [PLAYER]

Started by Nepster, October 16, 2016, 03:17:47 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Nepster

Note: This was already partially discussed in the thread Maximum release rate?

Currently the RR 2n and 2n+1 result in the same spawn interval, i.e. identical game physics. In the discussion linked above no argument for keeping this duplication was found. Only a strong preference was expressed to keep the possibility to set the RR frame-precise. But even with this constraint several replacements were proposed, none of them a clear favorite:
1) Use RR 1-50
This would replace an old RR value by half of it (rounded up).
2) Use RR 1-99, but only the odd numbers
This way we could keep all odd RR values unchanged and only add 1 to all even RR values.
3) Use SI 53-4, i.e. change from release rate to spawn interval
This is the way Lix does measures RR: It displays the number of frames between spawning two lemmings. This might be more intuitive for new players, but (for players used to L1 or NeoLemmix) conversion from the current method is harder: RR n = SI (53 - floor(n / 2)).

Simon

1) overloads the previously well-defined term "RR 50" with a second important, incompatible meaning. I doubt you can remove all previous meaning, L1 and its levels are ingrained in culture.
2) Hmm, consider 1, 2, 4, 6, 8, 10, ..., 90, 92, 94, 96, 99.
3) loses the iconic RR 99, loses or inverts "+" and "-" on the buttons. How much porcelain are we allowed to smash? :lix-blush:

More reasonings in my post on Maximum release rate?

-- Simon

mobius

I don't like "spawn interval", this again just further makes the UI feel more like it's trying to explain all the intricate game mechanics, sort of like what the 'pure game physics mode' does. I don't want all this explained during the game, the more of this occurs, the less it feels like a game. Many players don't want a lesson in game physics or coding when playing. The game should feel like it's got it's own unique rules in it's own unique world.

It's the job of the game designer to translate the intricate game mechanics into this new language that's more easily understood for the player, OR reduce the need for such intricate mechanics to be understood by a player in the first place [no levels dictating the need for ridiculous RR adjustment!!]
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


IchoTolot

Quote from: möbius on October 16, 2016, 03:56:48 PM
I don't like "spawn interval", this again just further makes the UI feel more like it's trying to explain all the intricate game mechanics, sort of like what the 'pure game physics mode' does. I don't want all this explained during the game, the more of this occurs, the less it feels like a game. Many players don't want a lesson in game physics or coding when playing. The game should feel like it's got it's own unique rules in it's own unique world.

I am with that.

Personally I am fine with 1.) or 2.) of Nepsters proposals.

Maybe a bit more of leaning to 2.) with Simons addition and we could keep the "RR 99 it" tradition. I do like even numbers a bit more ;)

Nepster

Quote from: Simon on October 16, 2016, 03:49:17 PM
2) Hmm, consider 1, 2, 4, 6, 8, 10, ..., 90, 92, 94, 96, 99.
Not so sure about this one, as it suggests that there is a smaller difference than usual when changing from 1 to 2 and a bigger change when going from 96 to 99.

Dullstar

#5
I would personally suggest no change here. When setting the release rate, I generally like having nice-looking numbers, i.e.

1,2,3,5,10,15,20,25...80,85,90,95,99 (99 communicates "maxed out" fairly well if there's only room for 2 digits)

Something would just feel off about making a level with, say, a 51 or a 76 release rate, depending on which ones get culled.

If there are any levels that require enough precision for this to be a problem, I'd call it bad level design rather than a game mechanics flaw.

---

The other changes would be confusing because they'd have different meaning - although replacing release rate with spawn interval could be a reasonable option for players looking for precision.

EDIT: Specifically, I'm referring to allowing all of the values to be used in the editor. Say, for instance, we only used the odd values, you could still set the release rate to 50 in the editor so you've got a nice number for your default release rate (In addition, during gameplay, if the default RR is n, and you're at n+1, you could still scroll the RR down to n). Other than that I don't really care if all of the display numbers can be accessed during gameplay. Release Rates 1 and 99 should both be kept.

ccexplore

I have to say I'm with Dullstar here, feels like there are plenty other more worthwhile improvements to pursue than this.  It's true that there are no good reasons for the duplication, but I honestly don't think anyone has actually voiced a complain about it unless you count Nepster starting this thread as one.  It sounds like there are enough entrenched expectations from Lemmings on particular release rate values that it is no longer entirely accurate to say "no argument for keeping this duplication was found". :-\

If a change must be made I guess #2 makes the most sense to me (always odd RRs).

namida

If we are going to make any change here (though to be honest, I'm really feeling like we don't need to), now is probably the best opportunity we're going to have to do so. So, what do we want to do?
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Proxima

My preference is for the 1-50 system, for the following reasons:

* The existing system has the disadvantage that new players don't realise RR 50 = RR 51 and, when trying to set a precise RR, waste time trying equivalent values.
* Keeping only odd numbers loses the aesthetic appeal of round numbers for levels' default values. New players are confused at why they can't set intermediate values.
* Keeping only even numbers is confusing at the two extremes, as Nepster mentioned. Same problem as above.
* Switching to spawn interval means that existing levels where a round number was chosen no longer have one. New players are confused at why the maximum is the weird number 53. There is an advantage in that it makes for an easier calculation when merging lemmings (count frames taken for a lemming to re-occupy its current position, set the SI to that) but this situation is rare, and easy enough to handle by intelligent trial and error.
* The only disadvantage I can see for 1-50 is that players used to the 1-99 system have to adjust. I'd expect that after a while, we would soon get used to the feel of the new system (just as we did for Lix's system). Any time a precise calculation is wanted, it's very simple: divide by 2.

bsmith

I am already used to setting odd numbers for release rates so I am most comfortable with option 2.

Simon

Definition (HR). I will call Nepster's proposal 1, using values 1 slow through 50 fast, HR, half-rate. This name would obviously suck long-term, feel free to rename.

QuoteSwitching to spawn interval means that existing levels where a round number was chosen no longer have one.

Both HR and SI un-round a round RR. For example, RR 50 becomes HR 26 and SI 28.

QuoteAny time a precise calculation [from RR to HR] is wanted, it's very simple: divide by 2.

No, it's complicated.

The exact math

RR 99 = HR 50 = SI 4
RR 98 = HR 50 = SI 4
RR 97 = HR 49 = SI 5
...
RR 51 = HR 26 = SI 28
RR 50 = HR 26 = SI 28
...
RR 3 = HR 2 = SI 52
RR 2 = HR 2 = SI 52
RR 1 = HR 1 = SI 53

Whether you round your divisions up or down, you'll always have to offset:

RR n = HR (1 + floor(n/2)) = HR ceil((n+1) / 2).

Restricting ourselves to only the even RR, or only the odd RR, we must offset still to convert between HR and RR:

HR n = RR (2n - 2) = RR (2n - 1).

For convenience, here are the formulae with all of RR, HR, SI:

RR n = HR (1 + floor(n/2)) = HR ceil((n+1) / 2) = SI (53 - floor(n/2)),
HR n = RR (2n - 1) = SI (54 - n),
SI n = RR (107 - 2n) = HR (54 - n).

QuoteNew players are confused at why the maximum is the weird number 53.

Indeed, SI 53 is awkward. You can choose a rounder slowest value as you wish. That's a 100 % backwards-compatible change.

But SI 4 as the fastest value remains weird. There is no reason why it shouldn't go faster. RR 99 or HR 50 won't have this problem.

QuoteThe only disadvantage I can see for 1-50 is that players used to the 1-99 system have to adjust.

Ambiguity seems dangerous. New player comes and talks about RR 50, what does it mean? I could only accept HR if we don't call it "release rate".




Reviewing options:

0) Keep RR with duplicates.

1) HR. This doesn't preserve round values and replaces a weird abstraction with another arbitrary abstraction. I don't see the merit behind this this?

2) Randomly poke holes in the RR 1-99 range. You wouldn't do this in a new design, it's interesting still by tradition.

3) Or switch to SI, ditching any fragile abstraction painted over the truth. This seems cleanest? möbius and Icho like the paint layer over SI though (displayed = constant - SI) and you must redesign the "+" and "-" buttons.

4) If faster values should be bigger numbers, maybe display spawn frequency from 1/53 to 1/4? <_<;

5) Is HR shifted by 1 sensible? RR 50 becomes HR' 25, RR 60 becomes HR' 30, and the extremal values are HR' 0 and HR' 49? Preserves round values from RR levels, but has 0. Spawning at a something-rate of zero?

6) <Simon> you can have a weird RR system that generally steps by 2, but every value ending in a decimal 4 gets an ending in 5 instead
<SimonN> then Dullstar gets the round values, newbs get no duplicates, and everybody gets thoroughly confused
<Proxima> :D





I don't see huge downsides in keeping RR, then switching to another system next year. The level format would have to parse two possible lines that set SI.

Bikeshedding

-- Simon

mobius

#11
I've never run into this problem and see no need for a change.

I could live with the 1-50 suggestion, though it would take a little bit to get used to.

I'll quote my comment from above: "levels requiring extreme precision of RR adjustment are not good levels"
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


namida

Simon: The replay format would need such a change too. This is somewhat offset by that the new replay format has already been in use for quite some time (one of the few files to use a new-formats file format in the current stable builds, along with the metainfo file for lemming sprites) so needs this change even if we do it now.

Mobius: What about levels that require just one change to a non-min non-99 value (spoilery example mentioned below)? Or, for in challenge solutions, or when going for best time records?

A late LPIV level
An example of a level that requires such a change is Insane 14 of Lemmings Plus IV. It requires a change to 87 for one lemmings spawn near the start, then back to the minimum (and optionally, to 99 at some point). Worth noting that 87 is somewhat of an important value even though it isn't a round number, as it's the RR at which a lemming will *just* make it onto the first builder brick if the lemming ahead of him uses one.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

mobius

I didn't mean to offend anyone's levels. I was just making a broad statement. Obviously I think there will always be exceptions to any rule. I personally don't care for that level of precision in any level anymore but that's my own opinion.

As it stands this RR issue never bothered me so I still don't care if nothing is changed. I pretty much like the way the RR works. [not 100% true; I have complaints but they regard other matters for another topic].

And why does the name have to change anyway? What does this have to do with anything? Release rate is a good name and it's fitting. I have strong aversions to being hung up on nomenclature.
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain


mobius

I just got an idea (which I have had before, no idea why I never mentioned it here or elsewhere)

Why does the slowest RR have to be what it currently is? Physically I mean, I'm not referring to naming schemes. Why not allow lemmings spawning even farther apart? I think I'd rather have that that any other change. Remove the duplication so 50= old 1. Then below 50 is even slower.

--!This wouldn' even need break existing levels (if this is possible)-- Set RR function so now everyone with levels with a existing normal RR is simply put between the new 50-99 appropriately where 50 is the minimum.

I also still believe min and max should be totally customizable by level creator.
everything by me: https://www.lemmingsforums.net/index.php?topic=5982.msg96035#msg96035

"Not knowing how near the truth is, we seek it far away."
-Hakuin Ekaku

"I have seen a heap of trouble in my life, and most of it has never come to pass" - Mark Twain