It’s a dungeon crawler where you explore a procedurally generated dungeon and advance to deeper and deeper floors. I haven’t finished the combat system yet, but when I do, I’ll post a demo.
But I don’t really need people to work on the game itself, but feedback and little outside things would help a lot. One thing I need to know: Is there a create tilemap with (0)width and (0)height? I would really need this for my generator because it can generate many differently sized maps but right now it has to pick from pre-sized tilemaps and fill the rest with walls.
What would help my game a lot, and would be also very useful for the whole community would be a particle extension that I had planned, but I’ll need some help with it.
Particle extension idea
I started making it with block-objects but realised it would be much better to make it an extension
https://arcade.makecode.com/S77812-62168-59560-80490
now I decided to make it into an extension, but I have never made an extension or actually anything 100% in JS.
Here is what is planned to be in the extension:
Particles
all particles have these properties:
- x position
- y position
- x velocity
- y velocity
- acceleration(multiplicative: 1=velocity is constant, 2=velocity doubled every second, 0.5=velocity halved every second)
- lifetime
- static/dynamic
- +skipframe properties(I explain those lower)
Simple particles
Has just one color
Texture particles
Has an image
Animated particle
Has an animation(image list) and a frame duration + values for correctly changing frames during lagspikes or skipframes
Fire particle
Goes through a gradient(for example white, yellow, orange, red) and accelerates upwards
Also has a spark boolean that adds four additional pixels around it that have the next color of the gradient
Spawners
spawns particles
has properties:
-
x
-
y
-
square/circle
-
size(sidelength/radius)
-
spawn delay (because of how its coded it can spawn multiple particles per frame)
-
attached(sprite/tile)
-
lifetime min and max
-
velocity min and max for x and y
-
acceleration
-
+values for specific particle types(color, texture…)
Functions
not sure what to call them but they are used to influence already existing particles
accelerate
direction, strength
move
x, y, relative(boolean)
kill
disintegrate
turns each pixel of a texture or animated particle into its own simple particle
Global functions
functions but on all existing particles at the same time
global accelerate
radial accelerate
can be used for explosions
Function areas
areas that do stuff to particles that are in them
they have properties:
- x
- y
- square/circle
- size(sidelength/radius)
- enabled
accelerate
dir, strength
+some way to make it stronger at the center than at the edges
wrap
particles that come from one side are teleported to the other
kill
just a kill area
displace
makes particles that are in it appear offseted, but its only visual, they actual coordinates arent influenced
other things
skipframes
you can give particles, spawners and function areas skipframes. If a particle has 2 skipframes, it will update once, then skip two frames, then update once, then skip one frame.
they will remember the accumulated deltatime so the physics stay the same
you can actually see them work in the block-object demo on the top
another thing
spawners out of screen wont spawn and all particles out of screen will get deleted. there will be a few pixels margin where they dont get deleted.