Hello,
Another question about my current leaf blower game, as I'm having a strange issue.
I have various leaf piles dotted around the game world that the player can walk around and interact with. The player blows leaves to clear them off the path.
I'm currently testing two of these mini games and one of them is working just how I want it to for now (sends the player back to the overworld once all the path tiles are uncovered), but the other one only sends the player back once a much larger area is uncovered around the path tiles, if at all.
My theory is that it's still comparing the leaves to the information from the previous map, but I can't figure out why this would be happening.
Below is all the code I think could be relevant, huge thanks in advance to anyone who has a look.
function initleafpiles()
leafpile1={
x=60,
y=70,
interact=false,
mapcelx=0,
mapcely=0,
pathcomplete=false,
objectcomplete=false,
leavesadded=false,
leaves={}
}
leafpile2={
x=60,
y=70,
interact=false,
complete=false,
mapcelx=32,
mapcely=0,
pathcomplete=false,
objectcomplete=false,
leavesadded=false,
leaves={}
}
end
function updateleafpile(o)
--when the player is close to a leaf pile and interacts with it
--the currentpile is set to the name of the leaf pile interacted with
--and the player enters the leafblower mini game
if o.interact==true then
if btnp(❎) then
o.interacting=true
currentpile=o.name
gamestate="leafblower"
end end
end
function updateallleaflevels()
if currentpile=="pile 1" then
updateleafblower(leafpile1)
elseif currentpile=="pile 2" then
updateleafblower(leafpile2)
end end
function drawallleaflevels()
if currentpile=="pile 1" then
drawleafblower(leafpile1)
elseif currentpile=="pile 2" then
drawleafblower(leafpile2)
end end
function addleaves(o)
--adds leaves for the mini game
--is called when the player is
--in the area where the leaf pile is
if o.leavesadded==false then
for i=0,1000 do
add(o.leaves,{
x=rnd(120),
y=rnd(120),
m=0,--momentum
sp=rnd(leafsprites),
position=0,
point=false,
testposition=function(self)
self.xpostest=(self.x+4)/8
self.ypostest=(self.y+4)/8
self.position=(fget(mget(flr(self.xpostest),flr(self.ypostest))))
end,
draw=function(self)
spr(self.sp,self.x,self.y)
end
})
end
o.leavesadded=true
end
end
function updateleafblower(o)
o.pathcomplete=true
for leaf in all(o.leaves) do
leaf:testposition()
if leaf.position==1 then
o.pathcomplete=false
break
end
end
end
if o.pathcomplete==true then
o.interacting=false
gamestate="park" end
for leaf in all(o.leaves) do
--all code for blowing leaves,
--removed because I don't think it's
--relevant
end
end
function drawleafblower(o)
cls(3)
map(o.mapcelx,o.mapcely,0,0)
for leaf in all(o.leaves) do
leaf:draw()
end
end

In HTML and binary exports, load()ing a bundled cart whose code is the last thing in it (no gfx, map, sfx or music data after it) delivers that code with its last character(s) missing. A final "end" arrives as "en", and the cart fails with:
SYNTAX ERROR LINE 4 (TAB 0)
EN
ATTEMPT TO CALL A STRING VALUE
The line number is always the last line of the cart being loaded. The same carts work fine in desktop PICO-8 and on a Linux handheld running PICO-8 natively.
Version: PICO-8 0.2.7 on macOS. Seen in the HTML export (Chrome, both from a local file and on an itch.io page) and in the Mac binary export.
To reproduce, put three carts in one folder.
repro_main.p8 (the export's entry cart):
function _update()
if btnp(5) then load("target_bad.p8") end
if btnp(4) then load("target_ok.p8") end
end
function _draw()
cls()
print("\151 load target_bad.p8",8,8,7)
print("\142 load target_ok.p8",8,16,7)
[ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=197766#p) |
Hi everyone!
So last year on vacation I started [another] game, this time a solo board game implementation. Made 90% of interface, wrote down the algorithms of game loop but the vacation was over and now one year later I've decided to finish it faster with help of AI. And I did it. But then just before posting noticed someone's post about game being deleted because of gen ai code.
And now I am in a weird situation where I kinda did something but can't share it here? Am I right?



radial flippy maze
inspired by @lucatron https://x.com/lucatron_/status/1296340853636517888
(252 chars)
e=124::_::cls(14)srand()
for y=-e,e,6 do
for x=e,-6,-6 do
z=y+x
local d=(x-64)^2+(z-64)^2
a=rnd{0,.25}+mid(0.25,sin((d>>14)-t()/4))
u,v=cos(a)*5,sin(a)*5
for q=0,2 do
line(x-q,z+q,x+u-q,z+v+q,8)line(x,z-q,x+u,z+v-q,13-(q\2)*6)
end end end
flip()goto _
|

Hi all,
I'm currently working on a mini game about clearing leaves off a path.
I have the leaves as table objects, which can use mget to detect if they are over a path tile. I want to be able to create a number total of how many leaves are currently over path tiles, so that I can use it to trigger success if there are zero (plus some other features). Any suggestions on how I could achieve this? Thanks for any suggestions!

After a long ass time it's (actually) done. My remake of Antetris from the Apple IIGS.
As seen here, here was the original.
https://www.youtube.com/watch?v=ctC-xzkaPnQ
it is almost accurate... well MINUS the new features like:
- ENEMIES! the black blocks will become possessed and more hostile as you play, and will slowly begin to SHOWER you with bullets.
- Pressing down to speed up the blocks and slow down enemy fire!
- a life system!
- Useless number go up combo system
- A xzecret.
The game gets hard, so be ready.
UPDATE1 : NEW FEATURES.
- Pressing down now speeds up the blocks, but slows down the bullets.

After Tsoding's 3d engine tutorial
Tutorial:https://youtu.be/qjWkNZ0SXfo?si=F7SFWC2JgstOWEkG
Model taken from: https://github.com/Max-Kawula/penger-obj
Have fun!
So, yeah, basically, I made a version of Jelpi but stuff gets frozen in time instead of oofing. (it also works on particles)
It's cool.
(also BTW you have to go into the pause menu and restart the level from there to respawn)
I can't believe I just learned about PICO-8 last week! The Lua language is such a great fit for this project. This was my first project dabbling into the PICO-8 project. Back in school many moons ago we played around with trigonometry and that topic just fascinated me and we created many visual effects. This one was a few lines demo back then so I decided to port it over to PICO-8 and pushed it a bit further with a configuration dashboard that gives you the ability to adjust any parameter to make it your own. I was also interested in how the save state works, so everything that you change is saved when you exit the app, for the next time you launch it. I was interested in screen swipe effects which were successfully leveraged here and the use of the mouse option as well. I paid most attention to the config dashboard to make it as user friendly and intuitive as possible.

Hi everyone this is Spong my first game with PICO-8.
Spong is a very simple version of solo pong
Controls
While playing
⬅️➡️ to move the player
Main menu
❎ to start playing
⬆️⬇️ to select a skin for the ball
⬅️➡️ to select a skin for the player
Game over screen
❎ to restart
Features (just one)
- 4 Ball and player skins
A little speedrun tool I put together to see how much I can actually min-max the Derpy Derby.
My 37.0s run is before trying this out and with pure brute force, seeing how much further memorising it like this will get me.
--[[pod_type="gfx"]]unpod("b64:bHo0AGkAAABoAAAA8QxweHUAQyAQEATwAxQwFAAJUAQPFAQZBA4EGTAGAPA5BCkwKRRJBwUwKTQpFzAZRBdEEBlEBQdEEBkEDkQOJA4UGRQONA5UKRReRDkEUDQACQQZFJAJFAkkgBlUIAcIJwQJVBAHGBcI")
and here's the cute drawing of the horse I made for it :3
(this was quickly made, so just ctrl-r to restart)
Hey guys,
I've had a vague game concept in my head for long time, and just had a burst of motivation to start writing up some plans for a Pico 8 game/prototype.
The game idea is essentially turning the fun of a Dungeon Master creating a TTRPG campaign into a single player experience. What this means is the player would make choices at the start of the game like what setting to play in, what kind of classes, species, mechanics, etc, exist in the world, time period, genre, and so on, then a campaign is generated from those points which the player plays through and completes.
Obviously that's massive in scale. It's big and complex enough when you're just using your imagination and a pencil. So I'm cutting it down a lot so that there's only one setting to suit the small tileset, minimal text/story focus, stuff like that.
One cut I made was simplifying classes/mechanics/genre down to just three game types: combat, trading and exploration. You'd be able to choose one of those at the start and the levels would require you to complete tasks based on those themes. You would be able to unlock the other game types by completing the one you picked, and then you'd be able to combine them, e.g. a game where you need to explore for things to sell.






4 comments