Log In  

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

A textured ground plane experiment.
I may turn this into a little flight sim.

8
3 comments


Celeste Color

Cart #celestecolor-0 | 2025-04-11 | Code ▽ | Embed ▽ | No License
5

Simple Version

Cart #colorsimple-0 | 2025-04-11 | Code ▽ | Embed ▽ | No License
5

A Celeste mod that I made with my brother in like an hour.
Okay its another Celeste mod but my own game coming (maybe) soon!

5
2 comments


Hi @zep, I still feel like a noob at Japanese so maybe I'm missing something but shouldn't
"lya", "lyu", "lyo" produce ャ,ュ,ョ in the Katakana mode?

In hiragana and Katakana input modes they both make ゃ,ゅ,ょ.
Thanks in advance.

1
1 comment


(172 chars)

f=0
clrs={}
for i=1,15 do add(clrs,i)end
cls(0)
function _update60()f+=1end
function _draw()circfill(63+56*sin(f/120)*cos(f/150),63+58*cos(f/180)*sin(f/210),8,rnd(clrs))end
2
0 comments


Cart #speasytitle-0 | 2025-04-10 | Code ▽ | Embed ▽ | No License
1

I forgot to do something, when the blob says 10 knocks to enter just press X. I forgot to add the prompt my bad :(

HIhi, my teacher made me do another project soo, here I am. Prohibition. I had 2 days to finish this since my partner finished the textures a day later. I am happy to finish even if all our ideas where not able to be applied. Teacher if you are looking at this please give me a 100 please please please.

1
0 comments


Cart #abosrblaster-2 | 2025-07-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7


Your old high scores are out, the game is in - Absorblaster v1 is released!

This little shmup I made with the help of the LazdyDevs simple shmup tutorial, though I believe it outgrew the tutorial's scope, as you can probably tell by the fact that it's a multicart - whether that's scope, or my own bloaty code, I'll let you decide.

3 difficulty modes that end with a boss fight, and an endless mode if you prefer the old way to play.
Also an in game manual, but you can find out how to play below as well.

Instructions:


X button fires your weapons, O button transforms between modes.

In Mech mode, your movement is slow but precise, and you have access to the Beam. You can tap the X button to activate and deactivate it, or hold the button to charge it up and release to fire. The beam generates heat while firing, except for when it is using up built up charge.

In Ship mode, you are harder to hit, move fast but with more inertia, and have access to the Gun. The gun doesn't generate heat, but becomes imprecise if fired continuously - simply stop firing for a moment to recentre your aim, as it were.

Weapons start at medium level, and can go go low or high.
If you are hit, you will lose a level of a weapon at random and lose some of your shield charge as it deploys. While its deployed you are safe from damage for a while, but all hits (including the first one) generate heat. The shield charge is displayed as a circle filling out from the top surrounding the rest of the hud.

If you overheat, your speed will drop and your beam will become unavailable. As long as you don't accumulate more heat, you will recover in some time. Heat is displayed as shimmering red/orange semi-circles on the sides of the hud.

Once you lose all your shield charge, the next hit will destroy you.

Collect the alien cores dropped by enemies to upgrade your weapons and mech/ship.

[8x8]

Physical core (or the "gun" pickup)- improves the fire rate and spread of the gun. When you collect the core at high level, the Gun will be Boosted for 5 seconds, spreading bullets at a ridiculous rate and permanently improving its damage. If you collect another core while Boosted, the timer will reset and you will score extra points.

[8x8]

Energy core (or the "beam" pickup) - improves the charge rate and heat generation of the beam. When you collect the core at high level, the Beam will be Boosted for 5 seconds, generating no heat/spending no charge when fired, adn charging at a very high pace. If you collect another core while Boosted, the timer will reset and you will score extra points.

[8x8]

Heat core (or the "heat bomb" pickup) - adds one Thermal Bomb to your inventory, as indicated by pluses at the bottom of the hud. The bomb will detonate if you overheat, destroying all enemies and bullets on screen. If you collect a Heat core while holding 3 bombs, a Heat Sink will be added to your inventory, improving the rate at which you cool down.

[8x8]

Shield core (or the "shield" pickup) - restores a portion of your shield, and activates it. If you collect a Shield core while at full Shield, or shortly after collecting a Shield core, you will gain a stack of Pulse. The next time you take a hit that activates the shield, a stack of Pulse will be consumed erasing all bullets on the screen and protecting your weapon level.

[ Continue Reading.. ]

7
3 comments


Cart #will_it_fill_the_screen-0 | 2025-04-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

Will it fill the whole screen?

3
0 comments


Picocraft - demake of Warcraft III

Cart #start_picocraft_1-3 | 2025-05-06 | Code ▽ | Embed ▽ | No License
84

I'm happy to release Picocraft, after 3 years of uneven development ! (okay, not a full time 3 years)
Picocraft is a pico-demake of Warcraft III Reign of Chaos.
The idea comes from a cool pixel art animated mockup by Brullov_art. I knew from start that it would be a long trip, but I didn't imagine sooo long !

The demake is made of 3 cartridge (96Ko) and contains :

  • 4 maps
  • 32x32 to 64x64 grid maps
  • Human race
  • 4 units - peasant, footman, rifleman and priest with each
  • 6 buildings - farm, town hall, forge, barracks, arcan sanctum, scoot towers

[ Continue Reading.. ]

84
19 comments


Cart #idle_dungeon-3 | 2025-04-15 | Code ▽ | Embed ▽ | No License
23

Controls

â—€ â–² â–¼ â–¶: move cursor with arrow keys
z key: open shop/confirm
x key: open map/close menu

About

Idle Dungeon is an idle clicker/auto battler where you are a new dungeon keeper slowly amassing an army to destroy the four regions of humans. The heroes of the realm will not allow you to go unchallenged and will regularly raid your dungeon in progressively tougher waves. Losing two hero raids will cause a gameover.

In the game you will construct resource buildings to boost your economy and minion buildings to house a unit for combat. A tunnel is required before you can start attacking hero regions. As always, let me know if you find any bugs :).

[ Continue Reading.. ]

23
18 comments


Implementation and demo of the Smoothstep and Smootherstep easing functions.

See https://en.wikipedia.org/wiki/Smoothstep for more info.

Cart #dredds_smoothstep-0 | 2025-04-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

Feel free to copy the functions into your own carts and tweak them as you need.

1
1 comment


Cart #baseguzebu-0 | 2025-04-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
15

BORK 1.0

A retro dog-fetching adventure built in PICO-8!

Created by: Kyle Giffen

DESCRIPTION

Bork is my first game! A pixel-art arcade game where you play as my dog Sisko, the best dog on the block, running through an 8-bit replica of our garden to catch and return a ball thrown by my wife, Tita.

[16x16]
[8x8]

[ Continue Reading.. ]

15
2 comments


Scrub is an animation data editor which allows you to make and preview .anm files.

load #scrub

Cart #scrub-2 | 2025-04-17 | Embed ▽ | License: CC4-BY-NC-SA
3

File format

The .anm file format consists of a table with string keys and values containing animations. Each animation contains string keys with arrays of data, each the same length. The only required key in an animation is duration, which is a series of numbers indicating the amount of time it takes for each frame to elapse. There is an optional events key, where the values are a dictionary of strings keys and arbitrary values, representing each event that occurs at the start of its respective frame.

Within the Scrub cart, the script src/animation.lua contains everything you need to play the animations in the .anm files in your own projects.

[ Continue Reading.. ]

3
0 comments


Cart #daburiwumu-1 | 2025-04-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA


I have been working on this game for a loong time, my first game. started with a tutorial from Spacecat, then i learned lots from the Nerdy teachers! and received his help and from Achiegame dev,over at nerdy teachers discord server, i also learnt from lots of tutorials from different persons(for example doc_robs for the parallax and the collisions) wich i could not still make them work at all cases TT__TT . its my very frist time programming in Lua (and i have forgotten all i learnt of c# for unity in the past,im just a 2d artist/animato/graphicDesigner that aches to make cute little games) i also struggled lots to make the music(LOTS XD i have no idea of music theory,hope to learn).

i will release this as is but im annoyed for the collisions and the way the gap between sunflowers changes abruptly.i attempted a timer so it occurs off screen but alas ,does not work. maybe someday i could review and correct the issues.

[ Continue Reading.. ]

0 comments


This old username is haunting me since 2015. Can I have it changed por favor? I've already emailed hey at lexaloffle, but nothing's ever come from it :(

1
2 comments


Cart #picoboard-1 | 2025-04-10 | Code ▽ | Embed ▽ | No License
5

About Picoboard

Picoboard is a simplistic work-in-progress productivity app with a kanban board interface and an integrated pomodoro timer
Currently in early development and open to feedback and suggestions!

Disclaimer:
The timer won't work in web while unfocused, since browsers tend to pause processes while unfocused

Controls

  • Mouse wheel to scroll x
  • Click labels to edit
  • Drag pages/items to move
  • Drag items onto timer to delete
5
1 comment


Title scene of incoming PicoCraft !

a pico demake of Warcraft III with some human troops

10
3 comments


I'm working on a script to turn any image into Picotron wallpaper. It sorta kinda works.

Its kinda cool ig.

from PIL import Image

img = Image.open("img.png").convert("RGB")
img = img.resize((480, 270), resample=Image.LANCZOS)

palette = [
    (0x00, 0x00, 0x00), (0x1d, 0x2b, 0x53), (0x7e, 0x25, 0x53), (0x00, 0x87, 0x51),
    (0xab, 0x52, 0x36), (0x5f, 0x57, 0x4f), (0xc2, 0xc3, 0xc7), (0xff, 0xf1, 0xe8),
    (0xff, 0x00, 0x4d), (0xff, 0xa3, 0x00), (0xff, 0xec, 0x27), (0x00, 0xe4, 0x36),
    (0x29, 0xad, 0xff), (0x83, 0x76, 0x9c), (0xff, 0x77, 0xa8), (0xff, 0xcc, 0xaa),
    (0x24, 0x63, 0xb0), (0x00, 0xa5, 0xa1), (0x65, 0x46, 0x88), (0x12, 0x53, 0x59),
    (0x74, 0x2f, 0x29), (0x45, 0x2d, 0x32), (0xa2, 0x88, 0x79), (0xff, 0xac, 0xc5),
    (0xb9, 0x00, 0x3e), (0xe2, 0x6b, 0x02), (0x95, 0xf0, 0x24), (0x00, 0xb2, 0x51),
    (0x64, 0xdf, 0xf6), (0xbd, 0x9a, 0xdf), (0xe4, 0x0d, 0xab), (0xff, 0x85, 0x57)
]

flat_palette = [value for color in palette for value in color]
flat_palette += [0] * (768 - len(flat_palette))

palette_img = Image.new("P", (1, 1))
palette_img.putpalette(flat_palette)

posterized = img.quantize(palette=palette_img, dither=Image.FLOYDSTEINBERG)

indices = list(posterized.getdata())
with open("wallpaper.p64", "w") as f:
    f.write("""picotron cartridge // www.picotron.net
version 2

:: main.lua
include("wallpaper.lua")

function _init()
	window{
		wallpaper = true
	}
end

function _draw()
	cls(0)
	spr(bg, 0, 0)
end
:: wallpaper.lua
bg = userdata("u8", 480, 270)
""")
    for i in range(len(indices)):
        f.write(f"bg:set({i % 480}, {i // 480}, {indices[i]})\n")
    f.write(":: [eoc]\n")
    f.flush()
4
1 comment


Had to download a new copy of Picotron, and this came up. Whenever I try to move anything or edit anything it immediately closes and crashes, is unusable. Does anyone know what this is?

This is a fresh install.

(The first word of the text document is “ha!”)

1
3 comments


Cart #loongtriune-4 | 2025-04-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
28

Loong Triune

The three legendary dragons are in dire need of sustenance to keep protecting our world. Collect each dragon's designated food, star fragments, and return to their portal before running out of energy. Play through 9 unique levels to satiate their needs and keep our world in balance.

Controls

X - Select a dragon to control
Z - hold to move quickly
Left - Turn CCW
Right - Turn CW

Dev Info

Cover image designed by Lacey Haight. The rest of the game was created by jblend.

[ Continue Reading.. ]

28
4 comments


Hello,

I have a feeling I don't fully understand vectors. I am thinking of the optimal way to handle the updating of a large number of entities for something like a Vampire Survivors game. Right now, in my testing, parallel arrays appears to have the lowest impact on CPU. 1000 mobs move towards the player and cpu is 0.601, metatables go up to 0.823

I tried vectors this morning and my cpu stat is 1.4.

Vectors are a bit new to me and I'm wondering if I going about this the right way.

function _init()
	mobs={}
	player={}
	player.v = vec(240, 130)
	for i=1, 1000 do
		local spawn_radius = max(470, 270) / 2 + 50
		local player_x, player_y = player.v:get(0, 2)
		local spawn_x = player_x
		local spawn_y = player_y
		local angle = rnd(1)
		local x = spawn_x + spawn_radius * cos(angle)
		local y = spawn_y + spawn_radius * sin(angle)

		v = vec(x, y)
		add(mobs,{v=v,spd=rnd(0.5)})
	end

end

function _update()

	for mob in all(mobs) do
		-- Calculate direction vector (from mob to player)
		local direction = vec(0, 0)

		-- Get mob and player positions
		local mob_x, mob_y = mob.v:get(0, 2)
		local player_x, player_y = player.v:get(0, 2)

		-- Create direction vector
		direction = vec(player_x - mob_x, player_y - mob_y)

		-- Normalize the direction (make it length 1)
		local mag = direction:magnitude()
		if mag > 0 then
			direction = direction:div(mag)

			mob.v = mob.v:add(direction:mul(mob.spd))
		end
	end
end

function _draw()
    cls()
    for mob in all(mobs) do
        local x, y = mob.v:get(0, 2)
        spr(1, x, y)
    end
    print(stat(1), 0, 0, 8)
end
1
6 comments




Top    Load More Posts ->