Playmaker: a whimsical creative space for Playdate

Reimplementing the lost cursor indicator today as a sprite. Found it a bit tricky to orgnaize the management for this bit of UI, but I'm fairly happy with where it landed.

Originally I had this implemented as a simple ray cast from the center of screen. Though elegant, the placement felt wrong. I found I expected the indicator to point to the cursor along the x-axis if it is outside the screen above or below, and to where the cursor is along the y-axis if it is outside the screen to the left or right. Lastly there is the literal corner case where the cursor is outside the bounds to the left and above, right and above, left and below, or right and below. In these cases, the indicator simply points to the correct corner.

It feels easy enough to not only recover a lost cursor now, but also I can now draw outside the bounds of the screen which allows for my drawings easily bleed off the edge of the canvas.

playmaker-cursor-lost-indicator

2 Likes

Playmaker for the Playdate! Woohoo! :star_struck: Can you add a Share your Drawing with Friends feature on Playmaker. Could you also add a Animate feature so you can make animations on Playmaker, Oh what do you already have that feature, not the first one I talked about.

Both list controls in Playmaker are used across the different spaces. It took some effort but they both support wrapping in both directions, even when there are fewer items in the lists to fill the space the list consumes. They are now both efficient sprites as well that only redraw as needed. Plus, the animations are quick and cancellable.

playmaker-wrapping-lists

8 Likes

Reworking my old flood fill algorithm. This is a stack based algorithm, so it's not recursive and can be paused and continued easily. I use this to fill just a bit of the image each frame so you can still move the cursor around, for example.

However, my previous iteration would update the entire screen each time I iterated the flood fill's progress. Now the flood fill only draws what has changed each frame. I may allow more of the image to fill each frame now, but honestly I do like the perhaps Mario Paint inspired opportunity waiting allows me, perhaps an animated dancing cursor? :slight_smile:

Of course, implementing this algorithm in C would probably allow it to finish fast enough to be done in a single frame.

CleanShot 2022-05-06 at 09.33.23

Note: the red/orange are updates to the screen. So fewer/smaller = better.

2 Likes

What is the split of Lua to C in Playmaker @dustin ?

20 C/80 Lua? Something like that!

1 Like

Oh, this looks absolutely delightful! :playdate_heart:

2 Likes

Trying to feel out Playmaker's pixel pencil tool today.

Two options I came up with are.

  1. Operate on individual pixels. Uses magnifier so you can actually see the pixels you're setting and the area you're working on.

playmaker-pixel-pencil

  1. Operate within a kind of 3px grid. Get the feel of pixel art but at a scale that easy to read on device. Because it's not 1px pixels, you can use Playmaker colors too.

playmaker-pixel-tool

I'm leaning towards option 2. I think it'll just be more useful. It's very hard to read individual pixels and too much work to edit at that scale.

4 Likes

Some further work on cursor movement. Each tool now has individual variables (in code, not in UI) for pixel grid size, movemet speed while not painting, movement speed while painting, delay before automatic movement while not painting, and delay before automatic movement while painting. Also—and I've found this to be important—I now allow one movement on the grid before the delay timer starts. This allows the player to tap the movement button to move in pixel grid increments precisely.

Pretty happy with how this is feeling. Will no doubt need to tweak the values a bit, but the movement logic is pretty solid.

Notice too how you can now get perfect diagonals while using directional pad to draw.

playmaker-cursor-precision

3 Likes

It's details like this that make this top tier! Great to see such attention to detail.

Would love to work on a game with you in the future.

Haven't shared progress in the forum here in a while, however I did just share an update on Twitter (don't think I can upload a video of this size to the forum). Any who, if you're curious: https://twitter.com/dmierau/status/1544740821072613376?s=20&t=5LOvVkKQ_2kW3ZhTeYWPEg

2 Likes

ANOTHER VIDEO, this time doing a bit of an in-depth demo of Playmaker's cursor mechanics, plus some changes to the magnification tool and the fill tool. https://twitter.com/dmierau/status/1548052697290379274?s=20

I'm guessing this still doesn't have a demo that's available. Love all the work and commitment you're putting into this project since it's a really neat app to have on a Playdate. Once I get one I might end up picking up drawing as a side thing using this app

1 Like

Still in development. Soon though! :crossed_fingers:

2 Likes

The UI manages to be featureful and minimal at once. Nice! Now all we need is a puny purple Playdate Pencil that magnetically clicks to the side of the device to charge. But seriously, I am very much looking forward to buying this!

1 Like

Haven't shared here in some time! Mostly been sharing on Twitter @dmierau

I'm wrapping up 1.0 and I'm pretty excited to share it. Here's a weird snippet I made today playing around with the stamp creator and using that stamp as a face in dance. :laughing:

playmaker-dance-stamp-silly

16 Likes

This is easily one of the coolest things I've seen attempted on the Playdate. Super impressive UI – great attention to detail and I love seeing the various iterations / experiments you've gone though. Really excited to give it a try once v1 is ready :slightly_smiling_face:

That's super kind. Thank you! :slight_smile:

1 Like

Playmaker 1.0 is out now! Yay! :playdate_goofy:

9 Likes

It looks really fun! A "toy" without winning and losing can be just as fun as a game.

1 Like