A cute game about 3 girls playing with a spiritboard and getting more than they bargained for! Started out as a cute spiritboard thing like an 8 ball but became a visual novel without me realizing it.
If you want the executables there is a itch.io page it also contains the full code with comments which I sadly had to strip for the bbs release.
The question menu is controlled with x to go to the top of the menu and c to select. Enter opens the start menu.
To use the paste option on the question menu you must first paste into the game before it can access your clipboard.
Hi, I'm currently working on a text heavy narrative game and as of now my main text table(Formatted as a string I then parse into a table at runtime) takes up 41% of the compressed size limit. Is there any way I can slim this down without losing text?
Is it viable to store the strings in a seperate cart and then memcpy them into my main cart? Would that stop it running in html/bbs/.exe?
Alternatively I can split the text into distinct sections and then store them as a string of carts which daisy chain into one another but that won't work in html to my knowledge and would rather fill the bbs up unnecessarily with carts that are just meant to be run by another cart.
Hi, I find myself doing lots of OOP in pico-8 just as I find it a bit more manageable in my head even if it isn't token efficient. I used to create objects with the following method. As a slightly aside point what does cls in the setmetatable call stand for or do? I never worked it out.
setmetatable(actors, { __call = function (cls, ...) local self = setmetatable({}, cls) self:_init(...) return self end, }) function actors:_init(type,x,y,xoffset,yoffset,xoffset2,yoffset2,health) --actors initilization function sets all of it's parameters return self end add(actorTable,actors(--parameters)) |
Recently however I have been creating them with the following method.
function createenemy(x,y,path) local enem = {} --Enemy variables and methods are initialized enem.update = function(this) end enem.hit = function(this) end enem.draw = function(this) spr(this.sprite,this.x,this.y) end add(enemy,enem) add(objects,enem) end |