| For my shmup project (bullet hell/danmaku), my first step was to work on the bullet/pattern system because it's related to the core of the gameplay (dodging bullets); and also because it's accountable to the beauty of the game. |
First, I need limits. I decide to handle 128 bullets at a time. New bullets will replace the old one. From my perspective, is not a big deal. Players probably won't notice it. But if it happens, maybe it's because that bullet stays visible too long on the screen, turning arround following a circular path or simply moving too slowly. So, fuck that bullet.
I decide to create a table of bullet objects during the _init() proccess and reuse them instead of creating/deleting every time. It is called object pool
The process: every time I need to shoot a bullet, I select the next bullet object in the pool, If I reach the last one, I loop to the first. Simple.
To do that, I need:
- a list of bullet objects,
- an index for the next bullet index to use
- and a number of max bullet:
bullets={}
bullets.next=1
bullets.len=128
|
 12.34.02 p. m..png)
Hi! First off - I'm not in any ways a programmer, I'm hacking together bits and pieces of code, and adding/subtracting stuff from Jelpi. It's basically a reskin, with the enemies taken out, the map and sprites redrawn (eventually) and music rewritten (I'm a musician). I know there's a lot of redundant Jelpi code in there but I think I've deleted about as much as I can without breaking everything.
What I want to do is have a text box open at the bottom of the screen when the player presses X beside the horse. A line of text appears in a black box at the bottom of the screen, disappears and then another appears, etc, until the message is completed. The game is part of a Christmas present for my girlfriend who's in her final year of vet, and it's mad stressful for her.
I was thinking to use a sprite flag but I honestly have no idea how.. any help would be hugely appreciated!

FINAL GAME IS HERE: https://www.lexaloffle.com/bbs/?tid=28132
In the game above, the character is gliding in zero-g. They can move left and right using little air jets on the side of the space suit (left and right arrow keys).
I am struggling to make a good sound for this that isn't too grating (you will hear the sound A LOT). I was hoping for a high-pitch hiss; like air escaping a ballon, but having nailed it yet (see above).
"TSSSsss.. TSSSssss..."
Any audio designers know how to achieve this sound?

changed: rebalanced
changed: reflection algorithm
added: pause before start
added: 100 scores = 1 life
Based on Pico BreakOut by Bassintag. It made for training purposes.

Hi,
I am trying to come up with a simple algorithm for filling an area of the screen a particular color.
I have a "path" in my game defined by the thin white lines shown above. Lines are represented with the following data structures:
function mkvec(x,y)
local v=
{
x=x,
y=y,
getlength=function(self)
return sqrt(self.x^2+self.y^2)
end,
getnorm=function(self)
local l = self:getlength()
return mkvec(self.x / l, self.y / l);
end,
}
return v
end
----------------------------
function mkline(x1,y1,x2,y2)
local l=
{
a=mkvec(x1,y1),
b=mkvec(x2,y2),
draw=function(l,col)
line(l.a.x,l.a.y,l.b.x,l.b.y,col)
end,
drawnear=function(l,o,col)
local lp=closestpointalongline(
l.a,l.b,mkvec(o.x,o.y))
circ(lp.x,lp.y,2,col)
end,
closest=function(l,o)
return closestpointalongline(
l.a,l.b,mkvec(o.x,o.y))
end,
}
return l
end
|

The game isn't really the main reason for this post, it's the graphical thing I did with it.
(Although, in case you're wondering, the game is Slime, and it may have a few glitch fixes)
It pretty much speaks for itself. I really only chose Slime because I thought it best suited this game more than any of my other work-in-progress games. Feel free to extract the GART function and use it in your stuff! The function is at the very bottom of the code, and only uses the BAR and BARSIZE variables. It doesn't actually need that line where it references "SLIMES", so just delete that and you can probably just paste it right into any of your projects. (Just remember to put GART() after you render!)

Ein-Blaster Alpha
Improvements/Re-designs:
- Animation of Player ship.
- Speed-boost when going forward.
- Speed-reduced when going Backwards.
To-Do:
- Re-configure Star field background.
- Shooting.
- Enemies.
- Scoring.
- Lives.
-
Sounds/Music
PIXEL SPACE
Just something I have been working on as I learn to code in PICO-8.
I would appreciate some help in getting the Shooting mechanism up and running and, if at all possible, suggestion on how to make my code shorter.
Also. I know it would be easier to use the sprite editor but I am interested in learning to arrange the pixel through the coding process itself.
As of right now the star field is on a conveyor-belt-style cycle which may change in the future.
The right side bar is the game HUD which will contain Score, Lives, Levels, Power-up (maybe), etc.
The play area will be updated to keep the spaceship within the playing area, and Perhaps a wrap-around on the X axis.
So in essence it's cause and effect, trial and error, as I teach myself LUA.

This is an experiment to test my understanding of handling collision detection for a large number of items on the screen. I'm proud to say that this cartridge can handle ~90 large bubbles or ~200 small bubbles before skipping draw frames (visible slowdown). The code is kind of messy, so if you need help interpreting what it does, let me know.
Controls:
Up and Down: adds or removes 1 bubble
Left and Right: adds or removes 10 bubbles
X button: switches between large and small bubbles
O button: resets the program
Just a small update, now the game resets when anyone achieves a certain score. Also, bullets are faster now.
A really small and simple game. For now, there's no win condition, the scores just go up and that's it.
I intend to make a winscreen and then implement some new features, just have to figure out what would be fun to put in the game :v
Hey there! I made a little twitterbot recently that generates 8x8 sprites for PICO-8:
It tweets both a GFX tag ready for copy-pasting into PICO-8 or the BBS and an image preview of the sprite. Currently it has 3 colour modes (1, 2, or 3 colours on a black background) and 3 layout modes (top-bottom symmetry, left-right symmetry, and 4-corners).
Here are some examples of sprites it's generated so far:
|
|
[0x0] |
|
|
[0x0] |
|
|
[0x0] |
|
|
[0x0] |
|
|
[0x0] |






1 comment













