Spectranet Game docs/SDK

General software. From trouble with the Banyan Tree to OCP Art Studio, post any general software chat here. Could include game challenges...
Post Reply
User avatar
lexi
Dizzy
Posts: 63
Joined: Mon Dec 04, 2023 10:55 pm
Contact:

Spectranet Game docs/SDK

Post by lexi »

I was looking more into Spectranet, and want to help add support for it to Chaos and GravityPower+2 - i have some half-baked ideas for how i'd go about that, but can't find much via search and wondered if there are docs/plans already written up somewhere?
User avatar
Guesser
Manic Miner
Posts: 645
Joined: Wed Nov 15, 2017 2:35 pm
Contact:

Re: Spectranet Game docs/SDK

Post by Guesser »

lexi wrote: Thu Dec 21, 2023 4:45 pm I was looking more into Spectranet, and want to help add support for it to Chaos and GravityPower+2 - i have some half-baked ideas for how i'd go about that, but can't find much via search and wondered if there are docs/plans already written up somewhere?
Spectranet provides a bsd style socket interface with up to four sockets supported by the ethernet offload chip, so you can implement whatever protocol you like.
User avatar
lexi
Dizzy
Posts: 63
Joined: Mon Dec 04, 2023 10:55 pm
Contact:

Re: Spectranet Game docs/SDK

Post by lexi »

Nice! It's been a while since i last opened a socket manually :)

Just getting back into IRC and figuring which bouncer to trust - but the simplicity of the protocol is relieving after failing a few years ago to port a unity/unet online multiplayer game to use "mirror networking". So as an amateur, i've hit my head against matchmaking/user accounts/trust networks/cheats and it seems like a major hurdle that all game devs either have to reinvent each time, or pay for more resources than they need to - it's only just occurring to me that IRC has a community and solutions that might be able to address a lot of that, and i see there's a client for Spectranet already!

While i don't want to bite off more than i can chew again, within the next year i'd like to create a basic open source Spectranet Gamedev SDK for anyone to plug into their games with the following features:
  • support for original hardware and/or via emulation, bridging both
  • GGPO - rollback networking for lag-critical action games
  • input swapping for turn-based games
  • random variable/routine sync
  • IRC-based in-game chat and matchmaking signalling handing off to a WebRTC data-channel for gameplay+chat
  • ideally <6k init with as close to a ~1k runtime as i can get
  • examples + documentation
I didn't want to step on anyones toes if someone is already offering something similar as a commercial product - and the issue of my server costs would scale with popularity and needs more thought - but i feel that offering something like this for free to all Spectrum game developers could open up many more possibilities than i can imagine, and if welcome, would be an appropriate thank you for all of the communities dedication and hard work.

This is getting into the weeds a bit, and not in my current scope, but i've also been searching to find out if there is any way to take advantage of the expansion port/data+address bus connection that Spectranet has in order to hijack the ULA to vmem bank read(?) and stream directly from the Spectranet tcp buffer - full screen cpu-lite replays would be a nice-to-have feature.
User avatar
Guesser
Manic Miner
Posts: 645
Joined: Wed Nov 15, 2017 2:35 pm
Contact:

Re: Spectranet Game docs/SDK

Post by Guesser »

lexi wrote: Fri Dec 22, 2023 5:45 pm [*] ideally <6k init with as close to a ~1k runtime as i can get
library as a ROM module :D
User avatar
Guesser
Manic Miner
Posts: 645
Joined: Wed Nov 15, 2017 2:35 pm
Contact:

Re: Spectranet Game docs/SDK

Post by Guesser »

lexi wrote: Fri Dec 22, 2023 5:45 pm full screen cpu-lite replays would be a nice-to-have feature.
Alas, everything on the spectrum involves the CPU moving bytes around. There's a demo of flinging video frames at the speccy over udp in the spectranet examples.
Post Reply