SamuZai
blindvoid
blindvoid

patreon


ProjectDragonfly Update Oct2022

Some big fundamental changes happened this month. The main thing being that I am no longer making the engine from scratch. Instead I plan to use the luaSTG engine in future while migrating some of my engine's features over to it (most notably the particle system).

The reason I'm doing this took a lot of thought beforehand and in the end I realised I really enjoy the scripting side of things but when I have to manage memory and very low-level computer things like creating windows, framerates, audio and loading textures and shaders, I really start to not enjoy it. Luckily, luaSTG is in lua obviously so migrating all my current scripts was super easy, but now with more functionality as I have easy control over basic things like resolution within lua which I was really having trouble with in my engine. It also has 3D functionality which as I said last month I dunno whether I will use it necessarily but it's nice to have the option at least.

I did enjoy learning C++ for the most part and especially learning how lua interacts with C++ but honestly I'd be happy if I never had to look at C++ again after this lmao. It can be a nightmare sometimes, low-level programming might not be in my blood it seems.

I'm really liking the luaSTG engine so far. In contrast to my engine which had each object type have it's own class and lua functions, this one lets you define object types completely in lua which is just so much more sensible. You can also have the engine handle collision detection, which I haven't looked at how exactly that's done but it seems very fast so far. Fast enough for my game anyway.

So yes, with this move I will get to focus on scripting and not have to stress out about mangling my engine to make certain things I want to do possible.

With the move I also developed a more efficient style of rendering my bullets. My old method involved drawing 2 or 3 layers on top of each other so that they blended well with each other and I could additionally colour each layer seperately for really high control over how bullets looked. I tried that method with luaSTG but it didn't like rendering that many things so I tried something new.

This is my new shot sheet, where previously I would just have each layer seperate and completely white so that it can be individually coloured, I now have multiple different styles of the same bullet. Then bullets are rendered on their own layer so they don't interact with the background in any way (except for some maybe but I haven't needed that yet). The bullets then blend together with each other using either ADD blending or SUBTRACT (which is why some bullets are cyan because they will become red through subtract blending). The result is this:

Pretty much perfect for what I want and WAY more efficient than it used to be. Some limitations are I can't individually colour layers anymore and I would like each bullet to have a black outline but the subtract blended bullets don't like that. I might try to develop a shader that can provide the outline for those with none and hue shift bullets so I can use different colours other than pure red.


That's basically all I've done on the game since the engine migration, minus a few new boss attacks in the works. I was away on a trip for a little bit so I didn't have as much time to work on the game but I did have some time to think about how I want the game designed and structured so I wanna detail that here.

Basically my thoughts are:

Scorers would hate this game because it's so randomised. Theres no way I could balance scoring between random stages, items, enemy layouts. So what I want to try is make the scoring not really important to how well you do, this might include removing score entirely from the game or have a really simple scoring system and have score act as a kind of currency outside the game to be used to unlock new characters or lore or whatever.

Naturally I want to focus on survival instead of scoring, so I was thinking of how some items could use common scoring mechanics and have them impact your character's power instead of score. I already have some items that deal damage to close range enemies and have bonus effects based on graze which are fairly common scoring mechanics. I want to try out some bullet clearing items as well that maybe make you more powerful based on the amount of bullets you can clear. I've also literally made an item that creates a touhou-style point of collection, it's just a really nice mechanic and if you can get a build with lots of pickup generation it's a really good payoff for having to take a risk by being at the top of the screen.

This has been my new philosophy toward making new items. Of course lots will just be stat upgrades and synergistic bonuses but I also want a lot of high-risk high-reward items to satisfy what I see in a lot of scoring games.

I've also been thinking about the colour palette of the game. So far I've tried to use just greys and reds but I think it needs maybe 1 or 2 more colours. I think shots can be mostly grey and transparent since they don't matter that much. Enemies and likely the player will be black silhouetted creatures with minor coloured features on them and the player probably with a highly visible hitbox for differentiation. I like bullets being high contrast black and white with a coloured midtone (currently red) but I would like slight variation in tone between some bullets in the same pattern and possibly also purple as a secondary bullet colour, simply because I tend to get lost in some more complex patterns so differentiating the different layers of attacks I think will be important. The other thing is pickups, they need to be visible and possibly a whole new colour on the palette. I've tried yellow and blue so far but I may just need to find a new style of sprite for them. I'm probably gonna experiment heavily with how the game is gonna look via a UI upgrade so get excited for that I suppose.

Anyway that's all I can think of right now. I'm excited to be able to fully focus on scripting in future so I can make new stuff faster.


More Creators