hello,
im really getting into pico-8. love it.
but wanted to know if you can use more than 1 file for a project. i know that pico has a limit to what it can use. but it would be for breaking things up instead.
i have seen many use say haxe with a compiler to pico. or terry cavanagh using his own thing. but just wondering if it can be done it straight p8 files - rather than having to do a compile/convect to p8
thanks
![](/gfx/set_like0.png)
![](/gfx/top_drop.png)
That functionality is apparently on it's way. You'll be able to use load() to grab parts of other cartridges for bigger sprite/map space.
However, I don't think this'll work with code. Token limitations would absolutely break down in that case, and I don't think Zep would like that.
![](/gfx/set_like0.png)
![](/gfx/top_drop.png)
Having around 4 tabs to put code in is something I'm still considering. Internally it would still be one long text file, but with breaks that look like a scissors cutting the end of each page:
-- -- -- >8
You'd typically use the tabs for something like: supporting libraries, init, update, draw
It's unlikely it will ever be possible to load code from another cartridge though during runtime. Same goes for loading data for 'releasable' carts, but I'm looking at ways to improve data management during cart development. (e.g. for electricgryphon's vector drawing program).
By the way, there isn't a very strong distinction between what's possible in dev carts vs. releasable .png carts -- the idea is just to separate them enough that dev tools can be quite powerful, but without creators feeling the need to create masses of data to ship in separate files along with the .png cart, which would defeat the purpose of pico-8 somewhat.
![](/gfx/set_like0.png)
![](/gfx/top_drop.png)
Conceptually in regards to Pico-8 being a console, I'd interpret the extra data carts as like, expansion chips? Like say the cart comes with an expansion chip on it for vector drawing that is used for flashy cutscenes and whatnot.
Going with that concept, obviously you wouldn't have a ton of space for expansions on a cartridge, and they would be severely limited in comparison with the main cart.
Idunno, just a random idea that's been bouncing around in my head.
![](/gfx/set_like0.png)
![](/gfx/top_drop.png)
So I've been working on low level tool chain utilities.
I have a script that will take all the lua files in a directory, and make one working lua script that is pico8 compatible:
https://github.com/josefnpat/pico8utils/blob/master/pack.lua
Then you can either manually insert the code into a p8, or you can use this script that updates the lua in a p8 file:
https://github.com/josefnpat/pico8utils/blob/master/lua2pico.lua
A buddy of mine has made a makefile that uses these utils for his up and coming pico8 game:
![](/gfx/set_like0.png)
![](/gfx/top_drop.png)
FWIW, I'm also working on low level tool chain utilities. So far I have a .p8/.png reader and Lua parser, and am close to having a code formatter/minifier with a multi-file include mechanism. (I did mine the hard way: I wrote a Lua parser from scratch in Python. :) ) I'll post more info when the code formatter is done.
![](/gfx/set_like0.png)
![](/gfx/top_drop.png)
cool guys. awesome to know.
actually, the break option would be quite nice. keep to the asthetic of pico works, as long as it does the break properly, id be happy with that.
seperate files are also good.
so really i dont have a massive big deal to either-or. but would be awesome none-the-less
cheers folks
[Please log in to post a comment]