picogolf (currently) contains a single 9 hole course featuring a range of par 3, 4 and 5 holes. There are no settings, nothing gets saved, if you wanna play again, just reload the page.
It actually started out as a simple breakout clone... I'm not really sure what happened but here we are, I've had a great time working on it and I'm quite pleased with myself for actually finishing something for once.
So I'm trying to add an effect to my game, where the game stops when you hit the trophy (the yellow/brown sprite in the image, promoting a new game state where the screen remains as it was but a circle expands from the trophy until it covers the screen. I tried putting some test circfill co-ordinates in the draw function for that state with no success. Is there anything I'm missing/anything anyone would recommend?
So, I was in love with PICO-8 while making a game, but then I ran out of tokens. So, I tried a few techniques to optimize my code but it became clear that I wasn't going to be able to fit everything I had planned. So, I just posted the game with some significant content removed.
Some people have reported bugs here and there, but when I go to fix them I end up running out of tokens just to do my debugging (i.e.adding extra keyboard input for testing purposes).
I get, and enjoyed, the idea of having strict limitations, but hitting the token limit just ruined the experience for me. Even if I could just go outside of its limitations just for the testing process, that would be great. I know it's part of the charm of PICO-8, but the token limit (at least) has kinda killed the fun for me.
Does anyone else know of any tricks for this? Does anyone else feel the same way?
Pico-8 occasionally seems to forget to select a new line if you've copied something and then create a new tab. Because there is no line selected, pasting seems to crash it
Most of the time a new line is selected after creating and switching to a tab, but occasionally it doesn't. I was able to reproduce although unsure if there's another step (may have to do with switch tabs or alt tabbing).
Hello, guys! I ran in some problems with making an update for PicoTale. Because of that, I'm starting another project - A day of a Russian! It will be containing some jokes about Russia. I'm asking you guys, not to take them serious. If you have any Ideas, please give me Feedback!
An untitled work in progress dungeon game for LOWREZJAM.
Find the exit to move to the next floor.
- Red cubes move randomly
- Green cubes move horizontally
- Blue cubes move vertically
- Bombs explode and deal damage when the red and white lines touch
- Make a name for the game
- More enemies
- A way to heal
- Proper HUD with HP display
- Increasing difficulty
- Particle effects
- Title screen
- Shops to spend gold
- Added player sprites
- Added bombs that sometimes appear when a pot is broken
- Added a map screen
- Added HP bars for enemies
------------------------------------------------------------------------------- Some new things in this WIP since the previous version: * Added compressed slide data and slide module. This can fill the playfield with a static slide. The slide data is kept as a hex string, so each char can hold two pixels (with values 0-3). The playfield is 112x64 pixels, meaning that each slide is 3584 characters long. Decompressing and drawing the slide once to the screen probably takes more than a whole tick, but I was expecting it to be a lot slower. Win win! That looks like this, for no one asking: aaaaaaaaaaaaaaaaa8255555556802aaaaaaaaaaaaaaaaaaaaaaaaaaa6a6a6a6a6a6a6a6a46aaaaa 56aa80a6a6a6a6a6a6a6a6a6a6a6a6a6aaaaaaaaaaaaaaaaa0aaa0029a00a82aaaaaaaaaaaaaaaaa aaaaaaaa666666666666666661aa855498550c26666666666666666666666666a9a9a9a9a9a9a9a9 87aa1aa6a6695309a9a9a9a9a9a9a9a9a9a9a9a966666666666666660fea2aaaaaaaa4c266666666 666aaaa66666666699999999999999981ffc6aaaaaaaad30999999999aa000a99999999956565656 565656503ffcfe00902abf3c165656566801a42a5656565699999999999999807ff1ff28120fff4d 09999999a06809099999999955555555555555406ff3fcaa0283ffcfd15555556180020955555555 5959595959595900aff3f0aaa2a8ffd3a419595962008209595959595555555555555401aba3f2bf fff8fff25055555562026309555555559595959500959406aaa7cbfffffe3ff401959595a30a6309 959500955555555408055406aa8a0c03fff00ffc555555556309830955540805555555400a80541a 90093cb0ffcb8ff855550055a30a0c29554002055555540002a0006941043c3cffc383f81554200a 8000382aa90002805555400000aa01500104bc3fffc390a805000a2a8555003aaa0000a055550000 002a00000000affffbff80a8800002aa2aaaa03eaa80002815400000000a80001406affffcfe40a8 400002bf03ffff3ffa800002000000000002a802a502affffffe00a4000002bf1000000ffa800000 000000000000a80aa401affffffa00240000aabc1afff94ffe800000000000000000280aa0002bfc a3e904240000aafc6bf3fa43fea000000000000000000000000006ffffa414240000abfcaffcfe90 fea800000000000000000000000000bffaa0142400002bfcbff0ff90ffa800000000000000000000 5000181aaa40102400002afcafc03f90ffe80000000000000000004140001bc00000002400002afc 6bc03e90ffea0000000000000000014942016fffa480001000002afc1af0fa43ffaa800000000000 000004254800bfffa4aa001000002afc02bfe903feaa80000000000000002825080003ffe9280010 00000aa0b0000003feaa8000000000000000a8290800000000000a00000002802c0000c3faaa0000 000000000000aa940a02aabffaaaaa0000000a0002ffff03eaa80000000000000000aa400282abff fffff8200000080e202aa802aa800000000000000000a50202802abfffffe820000008280b000202 aa000000000000000000802a002200abfc3aabe00000080002fff800a000000000000000000003ea 800fc00000aabf8200000803c0000030a00000000000000000000ffa8100ff002aaffe0280000aaa c3003c20200000001000010050000ffe81500bffffffc00a80055402c383fc282800000015000001 50003fff8055002aa800000ea00000028e0faa02080000002955000000003fffa05550000001503f a00000028a0aaaa02800aaa40aa900000000ffffe05555500055503fe80000008028002aa0005550 01a954000000ffffe05a95555469503ffa000000aaa00000000000000000000095403fffe05aa695 54aa543ffa002a9000000000000000000000000025400fffe06aaa9514aa583ffe00aa5000045500 000000000aaa5000000003ffe06aaa9404aaa80ffe80554000015000000000000aa56aa0000013ff e85aaa9404aaaa0fff000000000000002aaa8000295aaaa90000243ff85aaa55542aba0fff000000 00000002aaaaa50015aaa5550000a90ff85aaa55552aaec3fc000012aaa000015555550000000000 0000e940005aa955052aefc0c0000016aa50000055500000000000001540ea540056a554012aefc0 0500000555000000000000006aaa90015500fa900056a950000aeff0290000000000140000000000 569550000000fa900056a950004afffc290014000000000000000000a55000000003fe800056a950 0003fffc3a4000000000000000005550550002a90003fe800055aa500013ffff0e8000000a800000 000055400000aaaaa003fe8000556a500010ffff0e80001aaaaaaa940000000000056aaa940ffa00 00156a540054ffff028000156aaaa55aa800000000005695540ffa0100055a5400542bffc2a00005 55555aaaaa80000000000555000ffa014001555555542babc3a000005555555555400000aaa00000 000ff8015000555555552baac3a800000555554000000000aaaa00000000f8000000055501540aaa 83fa01400000000000000000aaaa9400400800000008001020000aaa83f000000000000540000000 a5555500000aa0000140bc03e8038aaa8001000000000015400002a8555555000000950001540bcf ea3802aa40a90000000000040000aaaa00000001002800000169400ffa0042a6429000008aa80000 002aaaa900000055402a940005aa9543e8554155000940015aaa80000aaaaaa5 * The code's been slightly overhauled in the backend. Some minor speed improvements and token saving. I'm really worried about hitting the max token amount because I'm already at 6020 / 8192. I'm nowhere near the character limit, so the slides mentioned above can hold lots of data while barely affecting the token limit. * Attempts to keep things as modular as possible is saving me from duplicating a lot of code for no reason. There's always going to be exceptions, though. * IF/ELSEIF/ELSE branches are slow when you use them frequently on every tick, so plans to swap those out for function references are in the works. * Sorry for no actual gameplay. I plan to use cheap point-in-rect collision detection for whole-pixel movement and not worry so much about subpixel stuff. Velocities for actors will still retain floating point precision, but actors will "inch" pixel by pixel for the amount they need to move, and stop moving if they happen to collide with a world tile. It's simple and effective when moving small distances. Since the screen's resolution is already pretty small, and things won't move faster than 2-4 pixels at a time, I believe this is a great route to take. * I want to maintain a constant 60 FPS throughout the whole experience, so there are going to be some corners I'll need to cut later on. The HTML5 version chugs pretty bad on my Android device when I'm using per-pixel shading (the diamond effect, additive strips on the main menu and intro, etc). This causes the drawing FPS to drop to 30 FPS while logic is still kept at 60, and it's pretty evident that this can cause some issues with areas of the screen that don't clear/update frequently. S'about it for now. -------------------------------------------------------------------------------
a survival deckbuilding game
This game was made for the 8-Bits to Infinity "turn based" game jam and is my first completed pico8 game.
The world as you know has changed. The zombie apocalypse has begun. Will you survive?
This is a solo deck building game. The cards you are dealt won't get you very far. Use the survivors to scavenge for weapons, items, and find other survivors in hopes of fending off the impending zombie horde. You have 20 turns to accumulate as much firepower and support as you can.
Play Action cards to gain an advantage, Survivor cards to scavenge better cards, and Weapon cards to attack the zombie horde.
Let me explain.
I'm a new to PICO-8 (this is my first post actually) but not programming. I'm looking to develop games on PICO-8 to improve my programming skills. That being said, I'm following a tutorial to make a small breakout clone, and I've decided to give it my own flair in several ways, one of which is giving the ball a smooth animation when it bounces off of a wall or the paddle. It works swimmingly when bouncing off of a wall, and I was able to make it animate when bouncing off of a paddle by forgoing the tutorial and adding my own rudimentory collision detection. The collision detection isn't the greatest, but it works and I've gotten the ball to animate when bouncing off of the paddle in the past. Today, I decided to finish up the animation by making it only play when the ball is within a certain range of the paddle. As soon as I added this functionality, the animation stopped playing, as shown in the gif below (the animation of the ball bouncing is slowed down since it's an admittedly very small detail in normal game play)
This is the code in question:
if inrange(mn,-1,1) then print("1",75,0,7) ball_spr = pad_spr end if inrange(mn,-2,2) then print("2",75,0,7) ball_spr = 18 end if inrange(mn,-3,3) then print("3",75,0,7) ball_spr = 17 end if inrange(mn,-4,4) then print("4",75,0,7) ball_spr = 0 end
Note the inrange function, it's basically the equivalent of a function I wish PICO-8 actually had which is "if mn >= -1 and mn <= 1". I've tried replacing the function with the actual equivalent code and it still does not activate the latter command, ball_spr = X. But, although I didn't show it in the GIF, I can confirm it activates the former print command. So what did I do wrong? Why is this function activating the print command but not the one after it? Keep in mind that without the print function it still doesn't work.
Here's the code in question. Note that the parts I believe to be unimportant are cut out because I don't want to release all the code just yet.
Let's say I have an 8x8 sprite, like the one in my avatar. I want to manipulate that sprite as follows:
- Randomly position each non black sprite pixel outside the viewport.
- Move those pixels into the viewport to form the sprite.
I know how to do this with a whole sprite, but how might I achieve this effect with the individual sprite pixels? Obviously I'll need the following:
- Destination position of sprite within the viewport.
- The index position within the 8x8 grid of each pixel, offset from sprite destination position - e.g. x,y of sprite, then index of pixel within the sprite 8x8 grid.
Anyone have any ideas? I want this as a neat effect for spawning enemies at the start of each stage in a new game I an working on.
This is my remake of a long forgotten 68k Mac shareware game of the same name, originally created by Robert Chancellor. I've updated the rules from AD&D to D&D5e and added some extra items.
The aim of the game is to fight off 10 waves of enemies.
O - select
X - cancel
Up - access Pico-8 menu
Hi, i'm using here a qwertz keyboard.
The problem with this layout is that the buttons on the bottom left side do not match.
Where the US/UK keyboard layouts have the z, is here an y.
So the actual layout here, is yxcvbn.
I know that c and v are the same as z and x, but it is very uncomfortable to do so.
Especially when playing on the executable, and then trying out the web version.
Can you change or add a setting to the Web Player, so that it respects the keyboard layout of the machine ?
The standalone (exe) version of pico 8 works perfectly, but some carts are web versions only.
I thought I would upload this tech demo I've been working on. It is based on the 'Kingdom' series. I am going to hopefully build a game around it but it might take some time. Hope you enjoy!
Use arrow keys to move.
Delve Feedback help
Hi! I was looking back on this project that I wanted to get back to work working on..
But before I do that I wanted to get feedback on what to add,change,etc.
(I allready know somethings like music,horizontaldrill,notcrashingonlvl4,enemies,etc...)
But I wanted feedback regaurdless for things I might miss!
Thanks if you looked at this!
Asking what people think about my game with 0 ideas thrown at the player is probably not the best idea so here's some topics that I would like help with thanks again :) :
- titlescreen / options
- map generation issues
- area concepts or misc ideas about gameplay
(some problems I might already know about but please tell me anyways)