Skip to content
← Back to Community
Attack on Turrets!! - Kaboom Jam submission
Profile icon
h
has Hacker Plan
ZeroTixDev

Attack on Turrets - Game Jam Submission

Overview

Attack on Turrets, a epic top down shooter style game developed in HTML/CSS/JS with no libraries. I wanted to build this game because I never joined a game jam before and the Kaboom Jam came out of nowhere. Shoot enemies, dodge bullets, beat levels
picture

Game Link

https://attack-on-turrets.zerotixdev.repl.co - Attack on Turrets

How to Play

You are a circle with a gun. What do you do? Destroy enemies and beat levels, of course!

Controls

  • WASD or Arrow Keys for movement
  • Mouse to aim and shoot
  • P to Pause

Contributions / Credits

Music:

  • GTA5 (not owned material)
  • ZeroTix

Art:

  • ZeroTix
  • Code-alt

Code:

  • ZeroTix ( coding most of codebase )
  • Mathletesv ( collision and bug fixes )
  • Code-alt ( level design and bug fixes )

Development

Day 1

Most of this day was spent brainstorming possible ideas

We settled on combining these two ideas but decided to scrap it after a few days

Day 2

On the second day, we established a json map format that we continued to use for the maps the day after

{ world: { width: number, height: number, }, obstacles: [ { x: number, y: number, width: number, height: number, [optional] type: string, } ], player: { x: number, y: number, type: string, [optional] radius: number, width: number, height: number, geometry: [], }, text: [ { data: string, (the actual text) x: number, y: number, } ], coins: [ { x: number, y: number, } ], enemySpawn: [ { x: number, y: number, width: number, height: number, count: number, type: string, [optional] show: bool } ], portal: { x: number, y: number, width: number, height: number, type: string, } }

By the end of this day, we had a super basic game going and started working on the gun class

Day 3

We worked on the scaling aspect of the game, its completely fullscreen but scales to a ratio of 16:9

We gathered some enemy ideas, gun ideas, powerup ideas and decided to scrap some fo the idea we did earlier (check Day 1)

Day 4

We added support for multiple enemy types, bullets, knockback and collision physics, damage effects, and ZeroTix made a pistol model

Day 5

This day, we added a ton of things as we realized we have less time than we thought. Coins, dynamic enemy system, arrow key support, death effect and music were added today

Day 6

Oh no, only one day left. Guess what... we procrastinated.

Day 7

Today is the last day and we have to code fast, making 4 levels, coding more enemies, making a boss, and trying to finish this README as quick as possible so i can post it AAAA

File Architecture

- src - client - assets - images - files:: images that we will use in the game - sounds - files:: sound effects/music we use in the game - fonts - files:: fonts that we use - levels - files:: json files of our levels/maps :) - game - files:: like update.js, render.js, input.js, state.js - objects - enemy sub folder - files:: enemy classes - obstacle sub folder - files:: obstacles classes - guns sub folder - files:: gun classes in the game - files:: game object classes we will use in the game - util - files:: useful files that we will require in other modules, like clamp, lerp, loadAsset, resize, round - (root files, not a directory) - index.html (the html of our app) - global.js (optional, exports an object that is created on the window object) - index.js (the main root, start file of the whole app) - references.js (exports an object with all the dom references we need) - style.css (css file of the app, potentially add several different ones if this gets too big lol - constants.js (all of the constants in the app) - server - files:: basic web server index.js - LICENSE.md :: license for the game - README.md :: uhh readme lol - BRAINSTORM.md:: look at this file now C:

FAQ

Q: How many levels are there

A: 5 levels so far but we might add more

Bugs

  • Nothing here yet! If you find one please contact us via Discord (Lol)

Discord

  • ZeroTix#6300
  • Mathletesv#6308
  • code-alt#9877

Oh and did I forget to tell you, this project is entirely open source

Whew. Finally we're done.

thanks for moving it to jam @frissyn

Walkthrough: https://www.youtube.com/watch?v=gEyrdbfOHlc

Youtube

Voters
Profile icon
Cl1ps
Profile icon
Acecode09
Profile icon
Cond0g95
Profile icon
OwainThomas
Profile icon
wtdd
Profile icon
AngeloJansen
Profile icon
Nathanielx3rd
Profile icon
AANANDsGAMING
Profile icon
ravinduperera1
Profile icon
ichbindede
Comments
hotnewtop
Profile icon
RayhanADev

Tehehehe it's fun reading through your brainstorm.md file, your creative process is very nice!

Profile icon
Cond0g95

Are there any power-ups or new guns to collect? The boss battle is almost impossible.

Profile icon
ZeroTixDev

@Cond0g95 There are no powerups or guns for now although Im not working on the game anymore. I guess boss battle is kinda hard.

Profile icon
FlaminHotValdez

@Cond0g95 stay near the edge and blindly fire toward the general direction of the boss

Profile icon
Cond0g95

@FlaminHotValdez I've been doing that everytime. I'll beat it eventually

Profile icon
code-alt

@ZeroTixDev I'd be happy to work again with you if you want to! :)

Profile icon
Froggo-School

Died 83 times on the boss battle XD

Profile icon
FlaminHotValdez

The machine gun knockback...

Profile icon
CATSAG7PRO

how

Profile icon
Writerfrighter

That was stressfull

Profile icon
Writerfrighter

GOD I BEAT THE GAME

Profile icon
ZeroTixDev
Profile icon
Writerfrighter

@ZeroTixDev will you be adding more? its fun : D

Profile icon
ZeroTixDev

@Writerfrighter IDK probably not, I am working on a new game called Borp

Profile icon
Writerfrighter
Profile icon
Writerfrighter

How the heck do you beat lvl 5

Profile icon
[deleted]

The title sounds like attack on titan!

Profile icon
DSAJagat20

Awesome!

Profile icon
haha0201

Furthermore, I happen to remember when I showed the developer this game back July in 2020.
https://editor.p5js.org/tritone246/present/k-BXDkTkR

image

This game almost perfectly copies the graphics and the concept of the other game, with the only difference being that

  • levels only pass when you collect coins and go to the portal
  • limited ammo
  • lava
    That's IT!
Profile icon
haha0201

This is quite a boring game, and copies an already overused concept of shooting enemies with limited ammo.
I wonder why this is any better than surviv.io, or other types of games that already use this concept.
Try making it unique from the billion other games with this exact same game concept.

Profile icon
QuickV

He won't try, just saying. @haha0201

Profile icon
ch1ck3n

kahoot vibe homescreen lol

Profile icon
RayhanADev

Hmm, very interesting! I love the ideas and fluid gameplay they feel amazing! :D
But it's not mobile-friendly, I can't shoot from my phone or iPad :(

Profile icon
tankerguy1917

Pretty fun game but I cant beat level 2
Only thing I'd be critical about is that I didn't realize that I had limited ammo, but that's on me for not looking at the entire UI.

Profile icon
shrekdotcom

epic game

Profile icon
ZeroTixDev
Profile icon
ZeroTixDev

Is the game too hard or too easy?

Profile icon
JackFly26

@ZeroTixDev Level 4 is almost impossible for me, and the difficulty ramps up pretty abruptly, but overall pretty good.

Profile icon
ZeroTixDev

@JackFly26 What part on level 4 do you think is really hard

Profile icon
JackFly26

@ZeroTixDev The beginning with the machine guns. There's some pretty precise timing you have to do to get the coin between those 2 guns at the start.

Profile icon
ZeroTixDev

@JackFly26 True, did you find the shotgun part harder than the lava part on the bottom left

Profile icon
ZeroTixDev

@JackFly26 Good luck on beating level 4, hope you can try level 5

Profile icon
JackFly26

@ZeroTixDev I never went into the lava part because i died in the shotgun part pretty quickly then went to try other submissions.

Profile icon
ZeroTixDev
Profile icon
Whippingdot
Profile icon
ZeroTixDev
Profile icon
haha0201

@ZeroTixDev Both boring and way too easy.

Profile icon
Coder100

Upvote now pls

ok

gj too

Profile icon
ZeroTixDev

@Coder100 lol ok sure

Profile icon
Coder100
Profile icon
ZeroTixDev
Profile icon
ZeroTixDev

@Coder100 you have so many cycles woah