Would love to see a Lua API to system notifications on the lock screen! This could be useful when an app/game is running in the background and wants to display events on a timer.
I like that! Games can't really "run" while the Playdate sleeps... but a simple timer, maybe even a table of several text messages with pre-defined times? That sounds practical!
(Meanwhile, an app can PREVENT sleep, and do its best to manage power while still running. My Playtime clocks do this when plugged into power. But you can never be as power efficient as regular sleep I don't think, so it's not the best practice when on battery.)
Could be useful for:
• Farming sims
• City/empire/business sims
• Virtual pets
• Events with a real word or online component
• Reminders and to-dos
But I can see how limitations would be called for.
I was thinking about this today having recently got a device and after playing a bunch of games. Bloom does something similar where the game continues while you are not playing even though I think it checks the time when the game is next booted or resumed from sleep. It would benefit so much from being able to notify you of events in real-time but yeah, battery is an issue then allowing apps to run in the background while the device is sleeping.
It just seems like it would make for great "desk buddy" games/apps where perhaps the game running in the background could also provide its own lock screen with some limitations enforced (similar to how setMenuImage restricts what you can do while the OS menu is open).
I'm personally interested for making a virtual pet RPG similar to Digimon where you can raise a pet while the game is idle (player would just be responding to alerts as they happen similar to OG Digimon/Tamagotchi virtual pets).
Something here would be huge for virtual pets as even to this day, the only way to get the authentic virtual pet experience is with a dedicated virtual pet device. Mobile virtual pets just aren't as immediate with responding to notifications and get lost amongst all your other app notifications. The Playdate could be a serious virtual pet system although the user would still be required to leave the game open as having background apps running while other apps are running isn't an option at all given the limited resources available on the Playdate.
I think right now, it is doable if you give instructions to the user to make sure their device is plugged into a power source and you just roll your own lock screen and notification system (which is the way I will go) but having a slightly more efficient way of doing it in terms of battery usage would be amazing if anything in this area would be possible.
A solution to this may be something similar to what @AdamsImmersive said.
An application (at any time during execution or when it receives a standby notification by the system) could schedule background updates for the future, so that the OS knows it has to give just a little bit of execution power only when the app planned to update.
There may be restrictions on how often an app can schedule background updates, but this should be doable with little power consumption.
I only just realised I restated exactly what @AdamsImmersive said about what he did with his Playtime Clocks. derp
One of the things we wanted to do way back when was allow games to implement custom clocks that would display on the lock screen, but decided it would be too much of a hit to battery life. But were updating the screen every second back then.. Maybe it'd be possible now that we've dropped the second hand--we'll have to do some testing. I'd love to see this working! It's pretty low priority, though, so it'll have to wait until we have the more important fixes and features out of the way.
Perhaps more frequent updates could be allowed when powered by usb
Maybe you could have custom clocks/notifications, but also have a "low power mode" in the side menu that would turn them off and maybe also pause downloads and stuff in case you want to keep the battery?