Facing family flu season in full force, I figured fiddling with flow was fitting. 1
Flow vs Flow Killers
Flow is a bit of a nebulous concept,1 but roughly you can think of it as when you're so focused on an experience that time goes unnoticed.
Encouraging and maintaining flow state is a complex dance, and yeah, in that regard the game currently has three left feet. 2
That's okay-ish! If you're a new dancer, it's kinda accepted to be a little out of time.
But do you know what's less accepted?
Hello, would you do me the honour of this da-
*executes flawless sucker-punch to partner's face*
Getting punched in the face by the game really kills any flow you might have had.
Insta-Reset Punch to the Face
The first flow killer: you know how when you die, the game instantly resets the level to the starting point?
And similarly: if you pass a level, you get insta-teleported to the next level, with not even a how-do-you-do?
Multiple people told me those transitions were super jarring.
So now passing or failing a level is more explicit:
Fast resets when you fail a level are still supported of course! You can press Jump to restart instantly.
These Invaders Will Not Leave
Back when I added local multiplayer support, I erred on the side of making it easy to get more players in the game:
- Press any key assigned to a player.
- The new player drops in from the top of the level.
Unfortunately once you added a player, it was very hard to get rid of them! 3
And since the camera tries to keep all players in view, you couldn't move more than a screenful away from your - probably stationary - unwanted companion.
Now you can "kick" (remove) players you don't want anymore!
You can still have up to 12 players (for those hardcore enough to own 8 gamepads). But I'll probably tune the game for 1-4 players and have a hard cap of 8 players.
Am I Playing The Game Yet
Playtester: Hey Caspar, I tried your game - it's pretty neat but it's a bit too easy!
Caspar: Oh really? Most people think it's too hard!
Playtester: Yeah, it's easy! See I just draw these boxes over the enemies and they get crushed, or I draw fire on them and they burn to death!
Caspar: Are you.. are you talking about the level editing tools?
Playtester: The.. the what?
It's totally understandable! If a game lets you draw things on screen with a mouse, then "this game is about drawing things on screen with a mouse" is a very reasonable assumption!
To fix it, the level editing UI and cursor and drawing atoms are now all disabled by default, until you turn on Edit mode
:
This also gives us options: in future the mouse might be used to aim and cast spells? 4
Why is My Blood Stuck There
Here's another little immersion killer:
Essentially when atoms reach the edge of the atom simulation, they stop moving.
The Professional Fix is to make a near-endless atom simulation,5 but I'm aiming for short Broforce-sized levels so that feels like overkill right now.
Why not just offset the loaded level to be in the middle of the atom simulation, so it has a little buffer zone for atoms to fall down into? Easy!
Anyway, after fixing far too many basic maths errors, it did actually work:
To sell the illusion, in Play mode the camera is now locked inside the level's bounds: 6
Well, actually, screen-shake from explosions can still make you see past the level bounds, but that bug can wait till later.
Playable game-like web build
I reckon these changes combine to make more of a game and less "tech demo" or "level editor".
But did I miss anything along these lines that I should have addressed?
Please try the demo and let me know!
Important changes:
- You control player 1 with W and A / D (press F1 for more controls)
- (that's the same as before, but I'm mentioning it for anyone who was using arrow keys or other keyboard controls before.)
- Key shortcuts are now listed on the top menu bar.
- Most importantly, F4 for toggling Edit mode, which lets you draw atoms.
- You can also hold Ctrl (probably Cmd for the Apple-aligned) to temporarily enter (or leave) Edit mode.
- On the web, gamepads only show up to the game once you press a button on them (that's not a change - it's just how gamepads work in browsers). So to add a gamepad player here:
- press a button on the gamepad.
- use the Players menu to tick the gamepad player.
- The "go fullscreen" button has been moved to the
View
>Fullscreen
menu bar item.
Both because toddler babysitting is a good way to be taken out of flow, and because the following flow-related-ish fixes were all relatively standalone - so getting sick or distracted didn't impact things as much.
Flow: The Psychology of Optimal Experience is supposed to be a great read on the topic, but I haven't gotten to it yet. Feel free to apply appropriate helpings of salt to the rest of this update! (Though really, if I'm being honest, this section of the update is the only one truly about flow.)
Which is to say, the game doesn't really encourage and maintain flow state at all yet.
Technically you could remove them by pressing their assigned "dropout" key. But I have learned that most people don't know how to read instructions in Help menus.
If the terrain is going to be uneven from explosions, players might need to be able to fling spells in directions other than "horizontal", right?
Noita is close to endless, but actually if you travel more than 511 parallel-worlds in either direction, the game breaks - probably due to floating point precision issues.
Although if your screen is really big or you zoom out, the camera will just center the level in the middle of the screen. You're going to see past the edges of the level either way, so centering the level seems like the best thing to do.