Networking Functionality

I'd definitely want this as well. Working on a concept for a game where players can share/download puzzles.

3 Likes

You could use the /Data folder for that. It's a little janky, but it works. Especially since it'll be a little easier to share whatever puzzle files you have, WarioWare: D.I.Y. Showcase style

1 Like

bump

Has Panic indicated if they plan to offer Network functionality in the future?

I was wanted to write an internet radio app, but cannot without the ability to send HTTP requests.

1 Like

Add me to this list!

1 Like

I get the impression there's some specific reason networking isn't already provided, and I doubt it'd be because of technical constraints. Could be related to security perhaps, but that's speculation.

It's totally fine if Panic doesn't want to allow networking for whatever reason. If that's the case, I feel like a public statement about it would be appropriate, since otherwise requests for it will be a constant thing.

1 Like

2021:

2019:

8 Likes

Also +1 for network functionality. The Playdate is great because it keeps development barriers low. Networked games are a big deal.

Perhaps network permissions make sense? Obviously, any networked application is going to be sending metrics to the server. I think the solution is to make users aware of which apps are networked so that they can decide if they are comfortable with any potential data exchange. If a seemingly offline game accesses the network for no good reason, that is a red flag.

2 Likes

+1 for Network support - I like the SDK especially the c part and would like to get network access in order to create a multiplayer game for the platform - as this would enhance the platform with some social factor. I understand security but shouldnt be that bad.

regards
Schreda

1 Like

We want to prevent, say, your Playdate from recording audio of you, then sending it off to some unknown server

I don't think you should worry about that as much if it means we're going to lose out on very useful functionality.

The only way you're going to be able to deal with that is monitor an app if it has both high microphone usage and high transmit bandwidth, then report that to the user

Or simply make us define permissions in the pdx like android, warn us on first boot after installation or an update that changes the permission. Similar to android

2 Likes

I don't think you should worry about that as much if it means we're going to lose out on very useful functionality.

That's an easy thing to say when you're not the one looking down the business end of a liability lawsuit. Most jurisdictions have pretty strict regulations regarding privacy and surveillance. If Playdate is used as the vector for some nefarious deed and Panic doesn't have all their ducks in a row, they could be prosecuted for negligence or worse. Telling them they shouldn't worry about it seems a bit short-sighted.

I'm prepared to go along with the inconvenience of my Playdate software being offline-only. I'm grateful for what Panic has been able to do with the product so far, and I believe in their mission with the device. If they're not comfortable opening up networking access for the time being, then that's fine by me.

4 Likes

Given how niche this device is and apps don't run in the background, it's a terrible attack vector compared to something like a cell phone which everyone owns. Hell, more people own PSP gos and they already have built in mics, internet access, and if they wanted to they can make code that runs in the background. This is a niche within a niche within a niche.

2 Likes

Maybe there could be some sort of indicator of mic usage or notification asking for permission of microphone usage? +1 for network functionality here.

1 Like

I can see the recording concern. Maybe apps could be allowed to choose whether to support either mic OR networking, but not both? (And not allowed to change with an update unless its user data is wiped?)

1 Like

Put me down on the list of people that'd love network-access! I'd already be quite happy with some sort of HTTP(S) requests and such- but socket functionality would be fantastic!

If access within to the Wi-Fi hardware would be available within C, I'd be happy to develop some basic socket functionality myself and open source it!

1 Like

I think a limited gameplay-driven networking API would be cool. For example, I can only set simple key-value types and the values can never be user-generated strings (so no chance of profanity etc.). A way to link Playdates by keys would be cool, so I can e.g. ask my friend for his code, enter it on mine, then he confirms he wants to play with me, then we could start having shared key-values (e.g. my position and his position).

I feel like limitations are a fundamental part of Playdate, and taking the same fun-driven, "constraints breed creativity" look at networking would be in line with that.

Ideally, we can host our little key-value servers ourselves so that when the Playdate inevitably shuts down, we can keep our online experiences alive. It could be the job of the Playdate API to do anonymization/encryption/etc. to protect user privacy without sacrificing functionality.

Another idea is limiting it to LAN only, similar to how you used to have Game Boys with connection cables to play with your siblings/friends. Playdate LAN parties sound fun, and have very little security and privacy concerns since you're face-to-face with the other person, essentially.

4 Likes

+1. I had a few ideas for user-driven content that are sadly limited by the lack of networking. Android-esque permissions with a suitable warning from Playdate seems like a sufficient compromise to handle security concerns.

I would love the the prospect of being able to add real-time multiplayer to a project. Has there been any word as to what Panic has in mind for support?

Reply #10

What if networking allows only a fixed network API that can only send pre-defined fixed packet types?

Data/requests can only goto a nearby Playdate in a mesh configuration, or through a Panic server. It seems reasonably straightforward. Just don't allow unfettered network comms.

That should be enough to allow multiple players, and stop abuse.

I could work out an API for disussion if people think it's worthwhile.

1 Like

This seems like a cool approach! Has any other device or service implemented it in that way?