1.collision detection.
this would probably work along the lines of this, to prevent needing a objects system:
COLL
Coll("Tile 1 id or map segment","Tile 2 id or map segment 2", AXIS)
""'s are for a variable such as a tile number or maybe even an map command.
probably to be used like this:
i did my best trying to show it in a picture.(it woud be easyer if you distributed the new tic80 font)
so heres a table of the "directions"
hope that visual helps
PS: You could also do somthing through the map editor.
2. simplistic polygon editor.
(this would make you better than pico8 and have more utilities!)
basically a polygon editor like this kinda (or just with tools like this blender addon)
idk this drawing is horrible sorry.
basically it would be a VERY simplistic and low poly 3d editor to make up to 16 models each with 1000 verticies (3d corners) but the engine would basically just be skewing the tiles to the right angles.
please try or check out the blender addon i was talking about to see what i mean because i suck at this.
heres how the 3 commands to call a model might work:
MDL
mdl( MODEL ID NUMBER , MODEL LOCATION (X , Y, Z) , MODEL ROTATION (x,y,z) , ROTATION TYPE , MODEL SCALE)
-Model ID number would be the number 1-16 of the model, like the sound calling interface.
-Model location is the location of the model in the world. for instance, 0,0,0 would make the model be huge to the camera, while 0,10,0 would make it be 10X smaller, ECT.
-Model rotation and Rotation type go together. Rotation type determines how the model rotates in the 3d world. "Orgin" is the mode in which it would rotate around the center point, just like a planet in orbit. On the other hand, "Stationary" Makes it rotate in place.
-Model scale is to scale the model on its XY and Z axis.
MDLCOLL
MDLColl("model 1 id or map segment","model 2 id or map segment 2", AXIS)
-same as COLL but with XYZ and -X-Y-Z support for 3d.
MDLCLS
MDLCLS() , MDLCLS(ID) or MDLCLS(ID + ID +ID ECT)
-Clears All models from the display if MDLCLS()
-Clears Certain model from display with MDLCLS(ID). in addition, if there are multiple of the same model, and you wanted to remove only a single one of them, use MDLCLS(ID.00) and add one to the hundredths place until you get to the number the exact one you need removed is down from the start of the containing function. for example, the 45th of a model drawn would need MDLCLS(1.45) to only clear IT. I hope that made sense because i couldn't figure out how to word it better.
-adding a plus sign in-between model ids will clear multiple models
3.Maybe a forum to add controller support?
basically a forum to suggest adding support for certain controllers bindings.
kinda like yacht club games.
4.exporting multiple files into one .exe
and maybye a tutorial of how to link the files in the code so they can reference eachothers sprites, and also maybye have full . gif files in exports? IDK.