celesteclassicnet banner

celesteclassicnet

1 devlog
4h 10m 38s

bringing online multiplayer to celeste classic, in your browser!

To-Do:
Inject array into PICO-8
Draw sprites to screen
-next devlog-
Usernames
Private Servers
Interactions?
Website styling
Server utils (disconnect after time, logging, …

bringing online multiplayer to celeste classic, in your browser!

To-Do:
Inject array into PICO-8
Draw sprites to screen
-next devlog-
Usernames
Private Servers
Interactions?
Website styling
Server utils (disconnect after time, logging, etc.)
Advanced Sprites?
Docker Container
Compiling to binary support (electron app?)
more?

Repository

Loading README...

arborium

Alright, first devlog.

I worked on testing various components of the project, like testing injection into PICO8 and testing how to store values in a python server. I spent most of the time actually setting up everything and testing to see if this was even possible, but I should start making significant progress soon.

Currently, I intend to send { XValue, YValue , webID } from the user, where the webID is assigned by the server and this is only being used to properly index the X and Y values. The client will also have its own copy of the server array, excluding the most recent webID (because it’s useless to the client).

The server has a similar array that looks like {‘webID’: 2, ‘coordinates’: {‘1’: (‘2’, ‘0’), ‘2’: (‘61’, ‘1’)}} where webID is the current highest webID and coordinates is a set of tables for each webID.

I’m not sure how I’m going to do syncing without updating 30times/s, maybe just if the client detects a change between server and local tables then it fully syncs the table.

Next I’m setting up PICO-8 with the array, hopefully my current method of sending variables works, otherwise it’s going to be a long, unsorted array. Lua natively has support for nested tables, but it’s a matter of injecting it that I worry about, as I’ve only tested with int and 2 variables. Even still, I could just do one long, unsorted array instead of sub-talbes and iterate through it with a *2…

I’m also going to set up drawing the sprites to the screen, which shouldn’t be hard. I don’t think I’m going to add proper animation support at least at firsts due to complexity, but we’ll see… it’s only a couple more variables……

Attached is a picture of the current website, which just allows multiple connections to modify the same array. This is the same behaviour I expect to see with the Celeste cart, just without the cart.

Things Accomplished:
Set up webserver with simple array test
Discovered + Wrote documentation for injecting PICO8

Attachment
0