Log In  

BBS > Superblog
Posts: All | Following    GIFs: All | Postcarts    Off-site: Accounts

Cart #shape_exporter-2 | 2022-09-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

Shape Exporter

A tool to export the parameters of basic shapes to an external file.

  • Left click to set control points.
  • Use the arrow keys to cycle between shape types and shapes on the screen.
  • Press X to delete the selected shape.
  • Press Z to export the shapes on the screen to "shapes.txt".
  • Press Ctrl+C to copy the shapes to your clipboard.
  • Right click to toggle the UI.
1
0 comments


Cart #spr2p8sci-1 | 2022-09-29 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

(v01 09-29-22)

TO LOAD THIS PICO-8 CART, in immediate mode, type: load #spr2p8sci

Hello there.

If you are running this code in Pico-8, you will see that the Spritesheet does not contain this picture ! Instead there is only a single line of code, and a PRINT statement at that to create the display you see above. How is this possible ? Well, we need to go back a day to find this out.

I was taking a look at @GPI's marvelous example of multi-poke using P8SCII code:

https://www.lexaloffle.com/bbs/?tid=49517

And I thought to myself, it would be interesting to write code that could save off an entire 128x128 16-color picture as a single print command. Could it be done ? And yes, it could. The picture above for instance is just 8948-text characters directly in source-code as a single PRINT statement.

[ Continue Reading.. ]

7
6 comments


The code im using gives me a syntax error, here is my code
function fire()
local b = {
sp=3
x=ship.x,
y=ship.y,
dx=0,
dy=-3
}
add(bullets,b)
end

It is the only thing wrong with the code
it says
"unclosed '{'
even when it isnt.

4 comments


Cart #poker_square-0 | 2022-09-29 | Code ▽ | Embed ▽ | No License
5


Poker Squares Solitaire coded in 1kB (in 2 days) for PICO-1K Jam 2022.

This is the first time I've tried something like this.

Let me know if you find any bugs.

Rules

  • Cards are placed one at a time and can no longer be moved once placed.

  • Points are scored on poker hands of 5 cards formed in rows or columns. (order does not matter)

  • The goal is to get a score equal/higher than 100 or a high score.

List of points and poker hands:
View list on itch.io or rules from Wikipedia.

| Poker Hand | Points | Example |

[ Continue Reading.. ]

5
4 comments


Cart #dung_beetle-0 | 2022-09-29 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

0 comments


Cart #onek_landscape06-0 | 2022-09-29 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
84

Here's my entry for the 1k jam!

After the image renders, hit "z" to make a new one.

-ElectricGryphon

84
6 comments


Cart #shmup_show_launch-5 | 2022-10-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
12

This is just a cart to launch the games I've been given premission to launch from the basic shump showcase jam.

This jam was run by @Krystman to go along with his video series. https://www.youtube.com/watch?v=81WM_cjp9fo&list=PLea8cjCua_P3Sfq4XJqNVbd1vsWnh7LZd

I asked for permission from people to add their carts here. And I have done so. I'd like more entries and also would love if they would provide me with a 24x24px image to represent their cart.

If anyone else has a cart that they would like added from the shmup showcase then please let me know and I'll add it.

If any aspiring musician wants to write a bit of background music for this then please feel free.

[ Continue Reading.. ]

12
0 comments


hi pico8 community. i'd like to introduce you all to radico8, the first 24/7 pico8 webradio. radico8 is a pico8 console/cart that is always online and playing specific tracks from specific carts. the radio is available as a youtube stream or audio stream.

tune into radico8 now: https://www.youtube.com/channel/UCNiwmNlnzY0Rg17Ii2RPIkw/live

you can add to the playlist and learn how it works on github: https://github.com/alanxoc3/radico8

i've already added some of the songs i like from various pico8 carts into the radio playlist. if you have more song suggestions, don't hesitate to request them on github.

18
6 comments


Cart #variablefont-0 | 2022-09-28 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
5


A very simple font. A little bit bigger than the original, but better readable.
the UTF Latin-1-Suppliment-Characters are included instead the Japanese characters.

type

load "#variablefont"

in pico-8 to load the cartridge.

Created with jaP8e - https://www.lexaloffle.com/bbs/?tid=49307

5
3 comments


Cart #simplestarfield-1 | 2022-09-29 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA


Arrow keys to move.

11 comments


Cart #zombie_gun_war-0 | 2022-09-28 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
6

Zombie Gun War

Description

Test your reflexes with this game! Fight with the computer, shoot your fire ball, or dodge the computer's fire ball. Anyway, just try to win against the computer.

There are 3 difficulties in this game

  • Easy: The computer will shoot fireball randomly.

  • Medium: The dodge threshold and move response is higher.

  • High: The dodge threshold and move response is much higher.

Controls

  • Up arrow key: Move menu to above

  • Down arrow key: Move menu to below

  • Left arrow key: Move left

  • Right arrow key: Move right

  • Z: The 'O' button (Select from menu, or shoot fireball)
6
0 comments


Cart #cloudy_skies-0 | 2022-09-27 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
4

Hello. This is my first attempt to convert a multi-track MIDI song to Pico-8 through the use of @bikibird's own DENOTE tool. And I believe I was successful.

https://bikibird.itch.io/denote

As for the picture, it helps to squint. Sorry, that's the best I can do. :)
Run in immediate mode for zero hiccups in flicker.

4
4 comments


Shovel Knight Main Theme

Music by @Fettuccini

Art by @SmellyFishstiks

Cart #shovelknightmusic-0 | 2022-09-27 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3


I actually made this a while ago, but just never got around to posting it here on the BBS. Thanks to @SmellyFishstiks for taking the time to make the art for it!

Any recommendations for other Shovel Knight songs to demake? Let me know, and I just might do it :)

3
0 comments


Cart #redguy-0 | 2022-09-27 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
5


My first cart. Arrows to move and z to jump.

5
7 comments


Cart #hot_diggin-0 | 2022-09-27 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
9

Hot Diggin'

A game in less than 1kb for PICO-1K jam 2022

Help Digson get away from the falling lava! Dig as fast as you can! Why is the lava falling? Who knows!

HOW TO PLAY:

  • arrow keys (or gamepad DPAD) - move left and right
  • action button (Z,C, or N on keyboard, "A" on XBOX gamepad) - dig!
    • you can dig left and right by holding that direction while digging. Otherwise, you will try to dig down. You can only dig when your feet are on hard ground.
  • Your only goal is to outrun the falling lava. Touching red blocks will make the lava run faster. You can dig through red blocks, but doing so will GREATLY speed up the lava, so try to avoid this.

[ Continue Reading.. ]

9
11 comments


Pico-8 Sprite Movement Demo
a demo I just made in my free time
1.0 - made and uploaded to bbs

Cart #p8spritemovementdemo-1 | 2022-09-27 | Code ▽ | Embed ▽ | No License
1


1.1 - added controls
Cart #p8spritemovementdemo-3 | 2022-09-28 | Code ▽ | Embed ▽ | No License
1

1
1 comment


Cart #berzerk-1 | 2022-09-28 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
67

My Pico-8 game inspired by the 1980 Stern Electronics game and made possible by the excellent "Speako8 Speech Synthesis Library" by @bikibird - https://www.lexaloffle.com/bbs/?pid=116919#p

How to Play

Shoot the robots. Avoid the walls. Don't stay in a room for too long!

Controls

[X] - Laser (stands still so you can accurate fire in one of 8 directions)
[O] - Laser (while running)

Thanks To

Version History

0.80 - 26-Sep-2022 - Released
0.81 - 27-Sep-2022 - Otto now destroys robots
0.82 - 28-Sep-2022 - Updated credits and fixed bug walking through exit door

67
23 comments


Shovel Knight Main Theme

[sfx]
Here's my pico-8 transcription of the main theme from Shovel Knight :)

My pixel art skills aren't the most refined, so if anyone out there would like to take a stab at making a 128x128 title screen for this, I'll gladly use that to post this as a cart instead and credit you.

3
7 comments


[sfx]

cart for firefox'rs ex: @dw817

(now works for realzies now)

Cart #botozeraku-0 | 2022-09-28 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

made with denote

3
4 comments


Hello all! I'm having an issue with a game I'm developing, where the collision is working flawlessly with any side other than the left side. for some reason it just wont work with the warps in game and I'm not sure why. left side collisions are working everywhere else, namely with stopping the player walking thru the walls. but not for the warps in game, which are supposed to work kind of like Pokémon's teleporting system. Frankly, I'm stumped and would appreciate if someone could take a look at this. Linked are not only the relevant code in the game, but a test cartridge as well to see what the problem is.

the main files i believe the bug should be happening in is input.lua, collision.lua, and game_manager.lua

collision.lua

--collsion for the map
function collide_map(obj,aim,flag)
	--obj = table needs x,y,w,h
	--aim = left,right,up,down

	local x=obj.x  local y=obj.y
	local w=obj.w  local h=obj.h

	local x1=0	 local y1=0
	local x2=0   local y2=0

	if aim=="left" then
	  x1=x-1  y1=y
	  x2=x    y2=y+h-1
	elseif aim=="right" then
	  x1=x+w-1    y1=y
	  x2=x+w  y2=y+h-1
	elseif aim=="up" then
	  x1=x+2    y1=y-1
	  x2=x+w-3  y2=y
	elseif aim=="down" then
	  x1=x+2      y1=y+h
	  x2=x+w-3    y2=y+h
	end

	--pixels to tiles
	x1/=8    y1/=8
	x2/=8    y2/=8

	if fget(mget(x1,y1), flag)
	or fget(mget(x1,y2), flag)
	or fget(mget(x2,y1), flag)
	or fget(mget(x2,y2), flag) then
	  return true
	else
	  return false
	end
end

game_manager.lua

--manages all overarching functions and mechanics
--ex: turns

--turn structure
turns = {
    turn = 0,
    moves = 4,
    actions = 2,
    end_moves = false,
    end_actions = false
}

--moves player with given direction
function move(dir)
    --if moving left and not colliding with walls
    if turns.moves > 0 and dir == "left" and not collide_map(p, dir, 1) then
        p.x -= 8
        turns.moves -= 1
        printh("col: "..tostring(collide_map(p, dir, 3)), "log", false)
        --check if colliding with left side warp !NOT WORKING!
        if collide_map(p, dir, 3) then
            -- move map
            printh("moving map left", "log", false)
            _map.last_x = _map.x
            _map.x -= 1
            printh("x:".._map.x, "log", false)
            p.x = 120
        end
    --if moving left and not colliding with walls    
    elseif turns.moves > 0 and dir == "right" and not collide_map(p, dir, 1) then
        p.x += 8
        turns.moves -= 1
        --check if colliding with right side warp !WORKING!
        if collide_map(p, dir, 3) then
            -- move map
            printh("moving map right", "log", false)
            _map.last_x = _map.x
            _map.x += 1
            printh("x:".._map.x, "log", false)
            p.x = 8
        end
    elseif turns.moves > 0 and dir == "up" and not collide_map(p, dir, 1) then
        p.y -= 8
        turns.moves -= 1
    elseif turns.moves > 0 and dir == "down" and not collide_map(p, dir, 1) then
        p.y += 8
        turns.moves -= 1
    else
        if turns.actions > 0 and turns.moves <= 0 then
            turns.end_moves = true
        elseif turns.actions <= 0 then
            turns.end_actions = true
        end
    end

end

function end_turn()
    turns.turn += 1
    turns.moves = 4
    turns.actions = 2
    turns.end_moves = false
    turns.end_actions = false
end

function draw_turns()
    if turns.end_moves then
        print("out of moves", 32, 0)
    elseif turns.end_actions then
        print("out of actions", 32, 0)
    end

    print("turn: "..turns.turn, 0, 0)
    print("moves: "..turns.moves, 0, 8)
    print("actions: "..turns.actions, 0, 16)
end

map.lua

-- map functionality, using the x and y in _map to determine which room the player is in

_map = {
    x = 0,
    y = 0,
    last_x = 0,
    last_y = 0
}

--draws the map
function draw_map()

    local x = 0 local y = 0

    if _map.x ~= 0 then
        x = (_map.x - _map.last_x)*(_map.x+15)
    end
    if _map.y ~= 0 then
        y = (_map.y - _map.last_x)*(_map.x+15)
    end

    printh("draw_x:"..x, "log", false)

    map(x, y)

end

input.lua

--input variables

input_frozen = false

--input function
--gets input for all buttons in the game and provides logic behind them
function input()
    if btnp(5) and not menu.menu_opened then
        open_menu()
    elseif btnp(5) and menu.menu_opened then
        close_menu()
    end
    if not input_frozen then
        if btnp(0) then
            move("left")
        end
        if btnp(1) then
            move("right")
        end
        if btnp(2) then
            move("up")
        end
        if btnp(3) then
            move("down")
        end
        if btnp(4) then
            end_turn()
        end
    end
end

player.lua

--player class, contains all information relavent to the player character

--structure containing all variables relevant to the player
p = {
    sp = 1,
    x = 64,
    y = 64,
    w = 8,
    h = 8
}

--draws the player to the screen
function draw_player()
    spr(p.sp, p.x, p.y)
end

menu.lua

--menu class containing all logic for the in game menu

--structure containing all variabkes relevant to the menu
menu = {
    menu_opened = false
}

--opens the menu
function open_menu()
    input_frozen = true
    menu.menu_opened = true
end

--closes the menu
function close_menu()
    input_frozen = false
    menu.menu_opened = false
end

-- draws the menu
function draw_menu()
    cls(0)
    map(112, 48)
    print("menu", 59, 6)
end

main.lua

--default functions draw, update, and init

function _init()
    --setting player
    p.sp = 1
    p.x = 64
    p.y = 64

    --resetting menu and input
    menu.menu_opened = false
    input_frozen = false
end

function _draw()

    if menu.menu_opened then
        draw_menu()
    elseif not menu.menu_opened then
        cls(3)
        draw_map()
        draw_player()
        draw_turns()
    end
end

function _update()
    input()
end

here is a test cartridge to see the issue at play

controls:
left: move left
right: move right
up: move up
down: move down

x: open menu
z: advance turn

to recreate the bug, you can walk through the warp on the right of the screen from spawn (orange arrows)
but when you make it to the other side, you cannot warp back even though the logic should let you.

[ Continue Reading.. ]

1 comment




Top    Load More Posts ->