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