Turret Queen

Overall★★★★★★★★★★3.25
Fun★★★★★★★★★★3.46
Innovation★★★★★★★★★★2.64
Theme★★★★★★★★★★2.71
Graphics★★★★★★★★★★2.91
Audio★★★★★★★★★★2.97
Humor★★★★★★★★★★1.78
Mood★★★★★★★★★★2.78
cover.jpg

Play Turret Queen, HTML5 (itch.io)


(Might take minutes to load on a MAC due to issues out of my control, there is a downloadable version for MACs down below if that happens)

Move with the Arrow keys or WASD
Space key uses your current powerups to assemble a turret ally

Groups of the same powerup will create a stronger turret.
Each powerup levels up a different thing, experiment.
TIP: If you are fast, you can collect powerups while the assembling is being done, resulting in a very unbalanced and awesome turret.

Random Blabling about the Game

(Skip if you don't want to read about code, personal challenges and this kind if stuff)

I had two personal challenges on this ludumdare. I'm happy with the result!
I will talk a lot about code, then about sound, what I've learned and what tools I used.

A game without random.

(Seriously, there is zero usages of any pseudo random numbers on this game, on my code at least)
On pretty much all my ludumdare entries and games I do myself, I make heavy use of the random. Not only to create stary backgrounds or cool variation, but instead, oftenly as quick and dirty way to avoid doing level design (yuck).
I decided to try my hand at the deterministic this time, and don't it AT ALL on this game.

Level design

Just the thought of having to create ships on the screen without randomizing their position, or even the movement.
One by one.
Suffering.
I had to make it easier. First the positioning.
It would be too time consuming and error prone to type the exact position of the screen the enemies would spawn. Not even considering the potential different screen sizes and whatnot. To fix that, I decided to split the screen into 12 pieces (both axis) and would position the ships like that.
As for the movement, I just pre-coded 7 different simple types of movement (all basically straight lines, except one with a sin)
Then I simple assemble a big array with these parameters + a few others (of of them being the delay to previous enemy!), that looked like that:
```
spawns.append(Spawn.new(1, 1, 0, 200, mv, ms))
spawns.append(Spawn.new(1, 3, 0, 0, mv, ms))
spawns.append(Spawn.new(1, 5, 0, 0, mv, ms))
```
For the first one: Enemy with movement type 1, on quadrant (1, 0), created 200 milliseconds after the previous one. Plus a few multipliers just in case because there is never enough time for the COMPO (I had time and used them anyway 😬 ).
The whole level array is on `Spawner.gd`.
I was surprised on How much fun it was to do the level this way.. I could use fors, multipliers, reorder as much as I wanted, test specific waves with ease. Could add a specific behaviour (shooting) to enemies later, and quickly integrate it on the level without hassle:

```
#wave 6
spawns.append(Spawn.new(6, 6, 0, 5000/ms, mv, ms).initTiro(1, 1000))
spawns.append(Spawn.new(6, 3, 0, 1000/ms, mv, ms).initTiro(1, 1000))
spawns.append(Spawn.new(6, 9, 0, 0, mv, ms).initTiro(1, 1000))

#wave 7
spawns.append(Spawn.new(4, 0, 8, 8000/ms, mv, ms+3))
spawns.append(Spawn.new(5, 12, 8, 0, mv, ms+3))

for i in range(8):
spawns.append(Spawn.new(4, 0, 8, 1000/ms, mv, ms+3))
spawns.append(Spawn.new(5, 12, 8, 0, mv, ms+3))
```
Random, beware.
By the way, for the stars on the background I had to use a timer and do some sin calculations. Still not random, but almost felt like cheating:

```

if topo:
position.y = -10

else:
position.y = int(seed % screenSizeX * cos(seed) *3) % screenSizeX
position.x = int(seed % screenSizeX * sin(seed) *3) % screenSizeX
```

For the first time, SOUND.

This time, I was set on making a simple game coding wise. Because I REALLY wanted to add sound to a LD game! And I could never do it, never. Was always struggling with something on the last minute.
So when this theme hit, I was afraid all was lost, I had so many ideas for procedural stuff that even my first challenge was in jeopardy...
Then it hit me, `why the summoning had to be magic? Couldn't it be a mechanical summoning? hmm? Assembling?`
From then it was 5 minutes to concoct this SHUMUP idea, which was perfect, as these are very simple to code and draw. Can get by with very little number of animations, so I could focus on doing the best sprites I could, without being to worried about how to animate them later.
I could finish pretty much all the code on day 1. I had time!
So for sound effect, I used the much recomended `Bfxr`, and it was great.
I tweaked the effects a bit in the game (pitch and volume changes according to the turret attributes) instead of using the tool, to save on some space and have at least a little bit of that procedural feel that I like so much.
Later for music, I've tries a few tools. All felt too complex and the resulting music did not match the feel of the game, then I've found this: https://musiclab.chromeexperiments.com/
And it was perfect, created this thing, exported to wav, opened on audacity, decreased the size and quality of the music a bit.. I wanted to hear these breaking sounds. And done.
I was very happy with the result, I even had time to write a proper description/post mortem in here.
Game might not be that great, it is pretty simple, but it is exactly what I've wanted to do.

That was fun.

And on to the ratings! Good luck everyone!



PS: Created a mac executable, but could not test it. Please try the HTML5 version first.

Post Jam updates:

- Added more analytics (Anonymous, private, custom, and you can opt out), I will share it all after the jam ends.
- Changed the difficulty scaling, now it should be possible to continue playing after dying once.
Genres: action

Comments29

MetaGen15 Apr 2024, 05:01
One short: If you got a hit, it definitely leads you to game over(Difficulty issues)
Great game!
Theyflower15 Apr 2024, 15:38
Having a ton of super strong helpers was really fun. Bullets and sounds everywhere, it got overwhelming once I started added more rows.
VortexB15 Apr 2024, 21:37
Cool game! Was a bit hard to tell what the different powerups did and I found the difficulty scaling a little brutal after you lose your ship. However the level design and enemy patterns were really cool! I could tell a lot of care went into this. Great job!
arColm
arColm16 Apr 2024, 01:14
I like the concept of mixing parts and thought that was a cool take on the theme. The gameplay loop overall is pretty engaging, but I agree that dying once is very punishing.
Storeyware
Storeyware16 Apr 2024, 17:39
Quite fun to play! Once all the bullets started flying the audio was quite satisfying. Nice work.
JoeShanahan
JoeShanahan16 Apr 2024, 20:25
I was thinking "wow, I don't even have to look at the enemies, I have so many turrets that I can just focus on collecting instead" and then I got hit and then basically the whole game was over 😂
el-pepi
el-pepi17 Apr 2024, 16:29
Pretty fun getting power ups. But yeah, once you get shot and respawn late game, it's pretty much imposible to kill anything
JoeShanahan
JoeShanahan17 Apr 2024, 19:45
I uploaded my playthrough to YouTube, I hope it's useful for you!

leparlon
leparlonauthor18 Apr 2024, 11:54
I've updated the game, it is now possible to complete it! The difficulty should scale properly now. Basically the game is the same as always if you don't die, but if you do, now the difficulty scales back enough to be playable, that is the only change.
Custodi
Custodi18 Apr 2024, 15:27
Simple mechanics, i did not play it a long time ago)
I would recommend to divide upgrades & enemies more radically, it's hard to detect, while trying to avoid bullets.
recursor
recursor18 Apr 2024, 17:02
Gathering resources in order to build more "helpers" turned out to be more fun than I originally thought it would be. Overall I enjoyed my time with it.
Lenne18 Apr 2024, 22:25
I had fun with it. I liked the idea of creating the turrets with the different powerups, although I wasn't too sure what each did, or how they worked when combining multiple types, but that didn't get in the way of it being fun.

Perhaps being hit could destroy a single turret instead of having to start over, and instead of having multiple lives, the turrets could act as health?

I found it super interesting reading about how you developed the game and can imagine it being fun playing around with creating the different waves. Nice to hear that you achieved your personal goals with it. Good job!
13x666
13x66619 Apr 2024, 16:01
Saw this on PomoTheDev's stream and went to playtest. Nice solid shmup, loving it! Really cool playing with helpers, I just wish I could get even more. Playing two games at once overloads my brain so much, I love trying to find a mode in which my brain can handle this, full-on next level of metagame. Awesome entry!
SigmoidDev
SigmoidDev19 Apr 2024, 21:16
Nice, solid entry. Wasn't really sure what each type of powerup did, but the game was generally pretty fun
Teluri19 Apr 2024, 21:21
cool game, no clue how the assemble thing work, i just tried to add as much as possible and it seem like it worked well for me cuz i got a drone with giant bullets :D
PieRo_PBeS_studio
PieRo_PBeS_studio20 Apr 2024, 11:58
yo it's a good idea to invoke things to help you, it reminds me shoot one up from mommy's best games... to continue digging
Flying Dog Fish
Flying Dog Fish22 Apr 2024, 22:15
Great vertical shooter with a helper summoning twist. The game has nice retro look with great sound effects. I can't tell much about the music as it's drowned in the sound effects. Being able to add stuff after pressing space to get the best parts was a great idea.
Rob6566
Rob656625 Apr 2024, 13:21
Very cool - collecting powerups of the same type is a simple but fun twist (and I liked that you could power it up further as it was assembling). Losing all powerups if you get hit was very punishing. I liked the sound. Very polished game for a combo entry. Nice work!
Papaver
Papaver26 Apr 2024, 14:05
That was so much fun! A classic game with a very fun twist of collecting different upgrades. I liked that I had to chose which upgrades I would collect to build cool helpers. I managed to win the game 😄

Well done! 👏
leparlon
leparlonauthor26 Apr 2024, 20:38
Congrats!! I'm so so glad to see people are finally beating the game! It was beaten 3 times so far, and someone even beat my record turret, I have no idea who did it, I'm impressed. (The record turret can be seen inside the analytics area from the main menu, you can start the game with it even)
Flightless
Flightless29 Apr 2024, 19:03
Good one! I really liked the turret upgrade system.
Petr Vejchoda1 May 2024, 10:24
Is there any bonus to collecting the powerups to the full instead of just assembling after each powerup??
leparlon
leparlonauthor1 May 2024, 12:23
@petr-vejchoda Yes, but you have to create groups of the same powerup (ie, 4 yellows and 6 reds on that specific order will count as power 4 + power 6, or even, 3 reds, 3 yellow and 4 reds will count as power 7 and power 3).
K-toll
K-toll1 May 2024, 18:36
It had been a long time since I'd played a shoot'em up.
I enjoyed it and good memories came flooding back.

On the other hand, I find the "summoning" theme unclear or lacking in description regarding its integration.

In any case, great job for doing it all by yourself!
Jean-Francois
Jean-Francois1 May 2024, 18:49
Game well polished, I not sure to understand the diferences between powerups, otherwise good game :)
Petr Vejchoda2 May 2024, 10:36
There are some places in the final boss fight, where you can just position your ship and wait for it to slowly die. That might be also interesting for your statistics gathering :

Other games by @leparlon

Found a bug?
Tell us on Discord