Log In  
Follow
SaKo
Shooting Star
by
[ :: Read More :: ]

Cart #crosseye_waves-0 | 2024-04-02 | Embed ▽ | License: CC4-BY-NC-SA
16

A simple animation loop.
Cross your eyes to see the 3D effect.

P#145511 2024-04-02 19:21 ( Edited 2024-04-02 19:22)

[ :: Read More :: ]

Cart #timeprogthing-0 | 2024-01-04 | Code ▽ | Embed ▽ | No License
10

A time progress visualiser thing that's sort of like a clock/calendar hybrid. I don't know how to describe it well.

Use the left and right arrows to switch between four views:

Year View
Visualise time progress throughout the year.
Split into months horizontally and days within each month vertically.
If the year is highlighted, this view is being shown.

Month View
Visualise time progress throughout the month.
Split into days vertically and hours within each day horizontally.
If the month is highlighted, this view is being shown.

Day View
Visualise time progress throughout the day.
Split into hours horizontally and minutes within each hour vertically.
If the day (number) is highlighted, this view is being shown.

Hour View
Visualise time progress throughout the hour.
Split into minutes vertically.
If the time is highlighted, this view is being shown.

You can also press X to open/close the palette editor, and use the arrow keys to edit the palette to your liking! Your current palette and view are autosaved.

P#139633 2024-01-04 15:39

[ :: Read More :: ]

Cart #bouncegame-0 | 2024-01-04 | Code ▽ | Embed ▽ | No License
10

Small game I made in a day early last year. Collect the gems, avoid the bombs.

Controls:

Arrow keys to move target and adjust height

Hold X/Z to double/halve the target move and height adjustment speed

P#139631 2024-01-04 15:27 ( Edited 2024-01-04 15:45)

[ :: Read More :: ]

Cart #drawapp-0 | 2024-01-03 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
27

This is a small drawing app I started working on near the end of 2022. Last year, I challenged myself to post a drawing made with it every single day for the entire year. This was the main Twitter thread for it, but they're also all displayed on my website here. I planned to release the app publicly once I completed the challenge, so here it is!

I'm not calling this v1.0 yet because it's still quite unpolished and I didn't manage to add everything I wanted by the end of the year (I ended up being way too busy with other work to work on this last year). I don't know when or if I'll actually get around to releasing a v1.0. Feel free to modify and share your own versions of the cart if you want, I hope the code is not too much of a mess.

Documentation:

DrawApp v0.3 - First Public Release

Features(?):
    - No layers
    - No undo/redo (maybe eventually I'll try to implement one step undo/redo)
    - No saving (gotta screenshot to save, be careful not to accidentally exit the app)
    - Random palette, background and brush colour every time you start the app
    - Date/time stamps
    - Colour masking
    - Sketch brush (New in v0.3!)

Notes:
    - Disable Windows Ink if you're on Windows and want to draw with a tablet

--- Tools and controls ---

    Left/Right ------------ Cycle through tools
    Ctrl+R ---------------- Reset (Clear canvas and randomise colours)

1. Brush Tool

    Left Click ------------ Paint
    Right Click ----------- Colour picker / eyedropper
    Scroll Wheel ---------- Change brush size
    Up/Down --------------- Cycle through fill patterns (dithering)
    Right Click + Up/Down - Cycle through colour palettes
    Right Click + Z ------- Invert colour mask
    Right Click + X ------- Toggle mask for current/selected colour

2. Line Tool

    Left Click ------------ Draw line
    Right Click ----------- Colour picker / eyedropper
    Scroll Wheel ---------- Change brush size
    Up/Down --------------- Cycle through fill patterns (dithering)
    Right Click + Up/Down - Cycle through colour palettes
    Right Click + Z ------- Invert colour mask
    Right Click + X ------- Toggle mask for current/selected colour

3. String Stamp

    Left Click ------------ Stamp text
    Right Click ----------- Colour picker / eyedropper
    Scroll Wheel ---------- Cycle through text sizes
        1. Normal
        2. Wide
        3. Tall
        4. "Pinball" (dotted)
        5. Big
    Up/Down --------------- Cycle through text type
        1. Current date (d/m/yyyy)
        2. Current date (d/m/yy)
        3. Current time (hh:mm am/pm)
        4. Custom text (keyboard input)
            Tip: Enter Shift + [any letter from A to Z] for special characters you can use as stamps
    Right Click + Z ------- Invert colour mask
    Right Click + X ------- Toggle mask for current/selected colour

4. Move/Copy Tool

    Left Click + Drag ----- Copy and move entire canvas or selection
    Z --------------------- Flip canvas or selection vertically
    X --------------------- Flip canvas or selection horizontally

5. Selection Tool

    Left Click + Drag ----- Select area
    Right Click ----------- Deselect
    Left Click in place --- Deselect

6. Sketch Tool (new in v0.3!)

    Left Click ------------ Use sketch brush
    Right Click ----------- Paint with regular brush colour 
                            (select BG colour to use as eraser)
    Scroll Wheel ---------- Change brush size
    Up/Down --------------- Change darkness/brightness 
                            (Up = darker, Down = brighter)
    X --------------------- Add random noise to the image 
                            (according to chosen brightness/darkness)

P#139577 2024-01-04 02:18

[ :: Read More :: ]

Hello, this is my first post here! I've known about PICO-8 and have been around the community for years now, but I finally decided to try learning how to make stuff in it around two months ago.

I got the idea for this cart a couple days ago and could not stop thinking about it, so I started on it yesterday morning and ended up doing it all in one sitting. The idea was to rearrange the screen palette into a gradient (including some colours from the secret palette) and then make draw functions that use pget() and pset() to increase (or decrease) the brightness of pixels when drawing lines and shapes (besides the trail). Basically additive (or subtractive) blending. I knew doing pget() and pset() on so many pixels would be really slow though, so for the noise and gradient across the entire screen, I decided to try doing that directly to the screen memory, using $/peek4() and poke4() to add bits. It had to be in 32-bit chunks, peek/poke 2 or 1 would make it drop below 30fps (maybe possible with better optimization, idk). I think the 8 pixel wide chunks made it look more interesting in the end though!

For the trail, I used p01's trifill function. I had a feeling if I tried to make a function to draw additive blended triangles, performance would be really bad. So I decided to just draw normal filled triangles at the start of the draw cycle and do all the additive stuff after.

I shared a gif/video of this online and lot of people wanted to see the code, so I'm uploading it here! The code is a bit messy and maybe there's some stuff that can be optimized, I'm still fairly new to programming in PICO-8 and don't consider myself amazing at code. I'm very happy with how it turned out through! I'm surprised I was able to pull off all the ideas I had for this, while maintaining 30fps.

I hope any of this is interesting or useful, enjoy!

EDIT: Updated the cart to include music, made for this cart by @muse_energy!

Cart #shootingstar-2 | 2022-08-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
129

P#115136 2022-08-02 00:15 ( Edited 2022-08-04 13:36)