Legally Distinct Suika 2048: Devlog

:wave: Long time reader, first time poster. I finally got my Playdate ordered now that the backlog is cleared.

I've been experimenting with matter.lua and putting together a little demo of a game that I can guarantee will run terrible on the actual hardware.

How close is throttled Lua in the SDK (on Mac) to the actual hardware performance? I'm working on optimisation and get a solid 30fps with a few drops, but drops down to around 15 with the screen full.

There's more optimisation to get from this, but I'm looking forward to testing on real hardware when my unit arrives around March 11.

For now, here's a gif:

legallyDistinctSuika2048

3 Likes

Quick update, Playdate just arrived and I sideloaded this.

Turns out throttled performance in the simulator is still around twice as performant (at least for this) than the original device. I'm not sure if there's still enough optimisation (in lua at least) to make this actually playable.

Was still fun for the experiment at least :slight_smile:

You're probably right using matter. It's doing so much more than you need here, too much overhead.

But there are other ways, like rolling your own, or using the new SDFs library: Signed Distance Functions (SDF's) for the Playdate

1 Like

Nice! Thanks for the heads-up there. This has helped me pivot into an idea that feels a little more of my own, rather than just a Suika clone, I'm planning on implementing the crank for a "curling" technique to allow the player to hook shots rather than them going straight down.

Blackhole Curling!

Untitled

At game start I dynamically create the city-scape by just iterating through some height and width and randomly placing from 5 different building types, that image gets applied to a sprite with a completely blank image mask.

When the black holes get rolled they draw directly to that image mask revealing the "destruction" image below.

I'm not so sure the effect looks that great so far, but it's pretty cheap in terms of adding some dynamic background elements to the game.

I like the idea that intergalactic beings are playing ball games over a city, treating it like a playground and completely ignoring the havoc being caused.

2 Likes

Nice!

I tried try make a curling game before hearing about SDFs but got stuck in the CPU player logic.

https://gingerbeardman.itch.io/portrait-curling

Mannn, I LOVE Suika! I hope you finish this game because I really want to play it now :pleading_face:

I plan to finish it! I thought this would be a quick project to get me into Playdate but the physics of it all is surprisingly demanding :rofl:

The good news is thanks to @matt I've found a lot more performance by starting with the SDF library and then essentially writing my own physics from there, and bringing the whole thing back to a more classic Suika format. Hoping to have something on Itch in around a week!

3 Likes

Ah yessss! Good luck!! :blush:

1 Like

Howdy all! It's available now if you want to give it a try :slight_smile:

You'll see some frames drop as the pile gets higher, further optimisation incoming. I want to try to keep a stable 30fps and then will do a full write-up of how I'm achieving that, I think it's possible.

Totally open for game feedback!

1 Like

Hello!! :blush: Bought the game and I'm loving it!!!

But one question, some planets are sticking to others, and I don't know if this is normal? Because when they can stick to each other like that, it's hard to know where to drop the next planet. You don't know which one will stick and which one will roll. I don't know if I'm speaking correctly in English, but I attached a photo as an example! :eyes:

Thank you for making this game! :blue_heart:

2 Likes

Ah! This is really good feedback thank you! Behind the scenes the balls "freeze" themselves after their momentum drops below a certain threshold to save computational power on the device.

The balls being sticky is expected, but I think you've made it clear why that's a problem, I'll dive back in and try to improve this.

Need to:

  • Reduce ball friction.
  • Get frozen balls to try respect gravity more.

I have a few ideas how I can do this.

2 Likes

Ahhh thank you!! :blush::blush: Anyway, I've been playing a lot and having a lot of fun, so thank you!!

1 Like

Thank you! I just pushed an update on itch, the planets should be a bit more slippery now, and performance should be more stable too.

There's more work to be done, but this build should be better for now :slight_smile:

2 Likes

If anyone wants to read my spaghetti, I've open sourced this: GitHub - tommusrhodus/Legally-Distinct--Planetary-Based--Suika-Game-Clone-for-Playdate

1 Like

I tested it here now and it's soooooo much better! Thank you!!

You said there's more work to be done, now I'm curious, what else do you plan to change/add? :eyes:

Thanks!! Have a good night!

1 Like

I want to get more optimisation out of this, right now it's stable but I'm tricking a lot of systems in playing along.

I also want to add a secret Kawaii mode for the graphics :slight_smile:

1 Like

Ohhh, Kawaii mode?? Interesting! :eyes: