A simple idea I wanted to share with you.
I use a p8 file with a few utility classes. I place the unit tests on the first tab.
When I run my library code, it tests it.
If I want to include my vector class, for example, in another program, I include it “#include utils.p8:1” (only tab 1). This way, the weight of my tests doesn't count on the other program.
I find this an elegant way of managing tested reusable code.
Disclaimer: While this demake does contain an introduction level for each new element, I would highly recommend you play the original game before this! Because the demake is a lot shorter than the original, the difficulty ramps up faster than it probably should.
Controls
Arrows - Move
X/V - Undo
C/Z - Idle
R - Restart level
T - Title screen
Levels
There are 4 "worlds" containing 8 levels each, adding up to 32 levels in total.
Save Data
Your progress will be saved automatically. It will keep track of which levels you've unlocked, which one you were currently on, and your time. You can clear your save data from the pause menu.
Hi again, im here for help...
Does anybody know a quick trifill method? i know @electricgryphon had one somewhere but i didnt find any info about it. i have a simple 3d draft thing with vertecies and lines, but im yet to make it colored, i cant figure out how to, really(no tris no fill, mfw). If anyone knows and can explain, please, do.
Also i wander, ZEP's 3d dots demo uses weak persp projection, right? do... all 3d softwares use weak projection? is there any difference between regular one? is this even a thing? i heard it being mentioned in one of 3d tutorials and i cant really get what it means(ortho projection with depth- whaaaa isnt it just regular persp projection????)
thanks beforehand, just want you guys to know that i love this little community!!!
this is a small puzzle platformer I worked on four years ago that I had never finished. It's a type of foddian game where you quantum(ly) shift between levels, always remaining at the same position within the 16x16 grid (with some small hud text up top to help you keep track).
I wanted to embed it in a portfolio so I uploaded it here. For some reason people were actually enjoying it and managed to get to where the level ends (which I never expected to happen since it's very difficult).
so anyway I spent a day finishing the game, because why not?
the additions include:
- new set of levels to cap off the game
- an end to the game (which unlocks color palettes)
- palette buttons now won't work until after you've beaten the game once
Duckling
So basically over some time now i've been working on this cute multiplayer game.
And I think everything is done, except the music. Thats because I cant make very good music, and I think that the game deserves better. So if someone wants to make music for a game (check out the gifs) I can send them the game per Discord.
Im not sure where I could ask, so i figured out I can just ask here.
Thanks in advance :)
Hi, this game is an expanded version of NerdyTeachers' Fruit Drop tutorial and has been really important in my ability to actually start understanding code. If you're like me and really want to make games but don't understand coding just yet, make sure to start small and make sure to ask questions even if they make you feel a little dumb. It's worth it I promise you! NerdyTeachers' website under bitesize games has been really helpful to me and I really recommend it if you don't know where to start. Huge thanks to everyone on the Pico 8 discord server for helping me out and NerdyTeachers especially for breaking down a ton of core concepts for me to understand. I look forward to making more small projects and asking more dumb questions!
Hello, I reported this race condition on itch.io but got no replies so I am posting it again here, in case somebody stumbles on it.
This problem happens when the cart data is in use and the cartridge is quickly restarted.
Consider the following code:
value = 0 frame = 0 function _init() cartdata("race_condition") value = dget(0) dset(0,0) -- set value to 0 for next reload with ctrl+r end function _update() if btnp(5) then dset(0, (value+1)%10) -- increase value by 1 run() -- reset cartridge end frame += 1 end function _draw() cls() print("current value: "..value, value+1) print("frame: "..frame) end |
If you look at it, the expected behavior would be that:
- If you press X, the stored value should increase by 1 (modulus 10) and then the cartridge should restart and load that value.
- If you reset with Ctrl+R, no value is set so it should be reset to 0 because of the dset(0, 0) at the end of the init.
I tried to export trial of the sorcerer but I had some errors one of them was that when I tried to start the first level of the game it said download failed and I couldn't start the first level,
another error was runtime error params a nil value in initlevel line 268 (tab 0)
or something?
I really don't know wether if this game can be exported or not. I just want to play it offline when wi-fi isn't around that way I won't use up a hotspot or mobile data.
Hello, I have been working with Pico8 and making games for two months.
I'm currently making a rhythm game and implemented rhythm notes, but I found a problem where they were not synchronized with music().
I understood that rhythm notes must be added once every 60 frames to match spd16's music.
Perhaps the music output and frame do not match. Is there a way to do this accurately?