landgreen / n-gon

2-d physics rogue-lite platformer shooter
https://landgreen.github.io/n-gon/
GNU General Public License v3.0
134 stars 193 forks source link

Hades/Balatro style difficulty system #251

Closed Masbirb closed 4 weeks ago

Masbirb commented 1 month ago

I currently dislike the current difficulty system as it feels like hard is slowly becoming more of what normal was a while ago as more game breaks are added. The two ideas I have is either a Balatro style stake system or a Hades style heat system. Difficulty ideas in no particular order Eternal junk percentage Less tech choices Reduced ammo gain Reduced starting ammo More bosses Mobs now regen health Hexagon now attacks faster No ammo in the final level More gauntlet bosses

landgreen commented 1 month ago

not a bad idea. I like being very clear about what changes with each new difficulty level. Seeing the difficulty changes might motivate more people to try harder levels What's a good n-gon (physics, simulation, AI) themed name for difficulty levels? (temperature?)

these ideas have balancing issues

these might be interesting (and many are already in the game)

3xionDev commented 1 month ago

i think it would be hilarious if the name for difficulty was just β, since β is a physics constant (i think) and it would be really funny if people had no idea what the line β += 1 in the console meant

corneeme commented 1 month ago

haha, what if also they have increased detection range or certain mobs get buffs on harder difficulties

landgreen commented 1 month ago
constraint - explicit changes to the game to increase difficulty
  constraint has understandable text explanations
  add a n-gon face char next to each discrete constraint win (use local storage)
  make current constraints easier to see
    in pause menu
    before game begins in the settings menu
      maybe make it's own details menu eventually
      display on load screen?  top left?
  difficulty should still increase with each level
    constraints will be in addition to that ramping
  constraints
    remove chance to find tech from mobs
    more mobs
    1->2 bosses
    mobs are faster and use ability more often faster
    mobs have faster reaction times
    no starting power ups (heal, research)
    reduced heal effect
    reduced player damage done
    increased player damage taken
    -1 choice for tech, field, gun
    more mobs with shields
kgurchiek commented 1 month ago

What's a good n-gon (physics, simulation, AI) themed name for difficulty levels?

Maybe a name related to entropy could work for a higher difficulty with a lot of mobs, representing a large amount of particles making it more chaotic?

landgreen commented 1 month ago

I'm going with "constraints" right now. It has a math/science vibe and it also has the correct connotation. I was also considering parameters. Heat would be a good entropy related term, but I think Hades already uses that term.

kgurchiek commented 1 month ago

I personally think "parameters" would make more sense to the average user, to me if it isn't made clear that it's in the context of math/science "constraints" sounds like it'll be different limitations for challenges (like "no fields allowed") rather than just any change in the game that affects difficulty (like an increase in enemy attack speed)

landgreen commented 1 month ago

working on a rough design of the constraint layout and levels

Screenshot 2024-05-19 at 7 46 43 PM
landgreen commented 1 month ago

More progress on interface style. This UI stuff takes forever, but I think I'm ready to write the difficulty code and then adjust the balance.

Screenshot 2024-05-25 at 8 49 51 AM

(you get a little n-gon icon when you win at that difficulty level)

Masbirb commented 1 month ago

Nice you went with the balatro style of difficulty modes

landgreen commented 1 month ago

Yeah, the other option (Hades style) was letting people pick their own difficulty effects. It seems like it would be a fun choice, but I was worried it would get confusing and it would hide the feeling of progression.

So, I went with difficulty levels with a linear progression. Also, I think an indication of which levels you have cleared will encourage players to rank up to harder levels.

Masbirb commented 1 month ago

Good point though it would allow for harder modes that people don't think is unfair with Hades but balatro provides more of a sense of progression. Hades also allows for more replay ability though. I would prefer Hades but but balatro style makes players want to stick with this game and enjoy it

landgreen commented 1 month ago

yeah, I think I'd prefer Hades style too. I just couldn't figure out how to cleanly show what difficulty levels the player had cleared with the hades checkbox style.

AnnonymousNerd87 commented 1 month ago

I haven't been active for a while, but this seems awesome and I can't wait for it to be sorted out! I think adding a small bonus for completing each constraint (like the bonus bounties for beating a new heat level in hades) would also help encourage progression at higher levels. Maybe an entanglement % which is partially tied to lore which increases the chance of entanglement and undefined?

AnnonymousNerd87 commented 1 month ago

it could be useful for adding lore in a way that doesn't confuse new players other than the undefined system, pointing them towards undefined without getting confusing

kgurchiek commented 1 month ago

I personally think undefined is fine as it is, the mystery of it makes you curious enough to try to see what secrets it'll access when you win with it

kgurchiek commented 1 month ago

It's the fact that your own curiosity drives you to complete the challenge that makes it work so well, that might be ruined if there's something that explicitly tells you to try to find it.

AnnonymousNerd87 commented 1 month ago

makes sense, but I feel like this new system should tie into the lore somehow

Masbirb commented 1 month ago

My idea is difficulty is the system testing how likely it will deal with threats in increasingly difficult scenarios

landgreen commented 1 month ago

yeah, canonically the game "n-gon" is the self training a quantum computer is doing to evaluate potential situations, so that makes sense.

landgreen commented 1 month ago

So my new idea is to make the difficulty selection menu a power up that is available on the first level. Making things more "diegetic" (UI integrated into the game) is a goal of mine.

kgurchiek commented 1 month ago

that's a great idea, I love it when a game's ui is more than just a menu in the start/pause screen

landgreen commented 1 month ago
Screenshot 2024-05-29 at 3 42 48 PM
4kh00 commented 1 month ago

Giant powerup that changes difficulty? I wonder what the UI for that would be, and the potential ramifications of clicking "cancel" or not collecting it.

kgurchiek commented 1 month ago

I imagine it would just stay at your previous game's difficulty

kgurchiek commented 1 month ago

It might also be fun if instead of a cancel button it has a random difficulty option

landgreen commented 1 month ago
Screenshot 2024-05-29 at 4 11 03 PM

This is what I put together in 20 minutes. The colors are kinda messed up and the spacing is off, but it's general idea. You move a slider, then click to confirm your choice.

4kh00 commented 1 month ago

That sound good, but what about a "no constraints" mode?

AnnonymousNerd87 commented 1 month ago

I think that's if you slide it all the way to the top, and btw yeah diegetic n-gon sounds awesome, that's one of the reasons I loved hades. I should return to that game and finish the epilogue.

On Wed, May 29, 2024 at 4:29 PM 4kh00 @.***> wrote:

That sound good, but what about a "no constraints" mode?

— Reply to this email directly, view it on GitHub https://github.com/landgreen/n-gon/issues/251#issuecomment-2138413936, or unsubscribe https://github.com/notifications/unsubscribe-auth/BHEAKNHYLFKP4VFBTPE3HRLZEZQHBAVCNFSM6AAAAABHRI6SOSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMZYGQYTGOJTGY . You are receiving this because you commented.Message ID: @.***>

landgreen commented 1 month ago
Screenshot 2024-05-29 at 9 27 27 PM

ok I've added the UI polish. I'm pretty happy with everything. But I have to choose between the left or right.

kgurchiek commented 1 month ago

I think the left looks a lot better

AnnonymousNerd87 commented 1 month ago

yeah I like the borderless flow of the left

4kh00 commented 1 month ago

right is more defined and rigid.

landgreen commented 1 month ago
Screenshot 2024-05-30 at 7 22 21 PM

ok I added the borders, but only on mouse over.

kgurchiek commented 1 month ago

oh yeah that looks really nice

AnnonymousNerd87 commented 1 month ago

Landgreen you are a genious

On Thu, May 30, 2024 at 9:44 PM Cornbread2100 @.***> wrote:

oh yeah that looks really nice

— Reply to this email directly, view it on GitHub https://github.com/landgreen/n-gon/issues/251#issuecomment-2141223248, or unsubscribe https://github.com/notifications/unsubscribe-auth/BHEAKNA4WKSFRTIOF4UIDS3ZE752TAVCNFSM6AAAAABHRI6SOSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBRGIZDGMRUHA . You are receiving this because you commented.Message ID: @.***>

4kh00 commented 1 month ago

It's beautiful.

kgurchiek commented 1 month ago

Are the icons on the right for the difficulties you've beaten?

landgreen commented 1 month ago

yeah

kgurchiek commented 1 month ago

Oh that's really cool

4kh00 commented 1 month ago

It looks great, but, if possible, what about changing the logos a bit for each difficulty? For example, why has an n-gon head with "v" eyebrows, and possible a red tint.

landgreen commented 1 month ago

I didn't make those logos they are just what unicode has available. https://en.wikipedia.org/wiki/Miscellaneous_Symbols ○ ● ⚆ ⚇ ⚈ ⚉ I am just now learning the are "Go markers" for use in text related to the game "go". I'm considering the 2 eyes version for the last mode.

4kh00 commented 1 month ago

I understand.

AnnonymousNerd87 commented 1 month ago

This is prob. going to be the best update n-gon has gotten since the last update

landgreen commented 1 month ago

It's been up for about 12 hours. It was a ton of work behind the scenes, but in the end I tried to reproduce the same balance from before with more delineated difficult levels.

I think experienced players might not see many changes, but I hope new players will have more emersion and a more active experience with difficulty levels.

AnnonymousNerd87 commented 1 month ago

yeah I was watching via email, so I didn't see the update. Looks great, blends well, and will be very helpful for determining what difficulty I want to main, like hades.

On Mon, Jun 3, 2024 at 7:54 AM landgreen @.***> wrote:

It's been up for about 12 hours. It was a ton of work behind the scenes, but in the end I tried to reproduce the same balance from before with more delineated difficult levels.

I think experienced players might not see many changes, but I hope new players will have more emersion and a more active experience with difficulty levels.

— Reply to this email directly, view it on GitHub https://github.com/landgreen/n-gon/issues/251#issuecomment-2145411598, or unsubscribe https://github.com/notifications/unsubscribe-auth/BHEAKNBGWLY7YBRR7SCZ73DZFR7RZAVCNFSM6AAAAABHRI6SOSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBVGQYTCNJZHA . You are receiving this because you commented.Message ID: @.***>

4kh00 commented 1 month ago

Would not picking up the powerup = baby mode?

AnnonymousNerd87 commented 1 month ago

no, it just uses the default setting

On Mon, Jun 3, 2024 at 3:52 PM 4kh00 @.***> wrote:

Would not picking up the powerup = baby mode?

— Reply to this email directly, view it on GitHub https://github.com/landgreen/n-gon/issues/251#issuecomment-2146257872, or unsubscribe https://github.com/notifications/unsubscribe-auth/BHEAKNCIXL7FWAEBZZVJVO3ZFTXTTAVCNFSM6AAAAABHRI6SOSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNBWGI2TOOBXGI . You are receiving this because you commented.Message ID: @.***>

4kh00 commented 1 month ago

what is that? also, i feel like this marks a dramatic change in n-gon - a shift for the much,much better.

kgurchiek commented 1 month ago

@AnnonymousNerd87 I have a bot that automatically emails people new updates (including the downloaded zip), I can add you to the mailing list if you want