Skip to content

Arcade › Sky Bastion

Sky Bastion

  • 3d
  • first-person
  • arena-shooter
  • low-poly
  • endless
  • sci-fi
0
Remix it Discord

4 plays

How to play

Click the game above and it runs right here in your browser. No download, no installer, no account needed. Gyat Platt built it with Cinevva, so it works on a phone or a tablet too.

Discussion

Nobody has said anything about Sky Bastion yet. Play it, then tell Gyat Platt what you would add next.

Make your own game

Sky Bastion was built by Gyat Platt with the Cinevva game creator: describe the game you want in chat, watch it get built, and play it in your browser minutes later.

Remix Sky Bastion opens the real game in the creator and forks its actual files, chat and design doc, so you start from the code rather than from a description.

Read the build brief for Sky Bastion

Cinevva's analyzer read this game's design doc and its source, then wrote the brief below. "Make your own" hands it to the game creator as your opening message, so you start from a real spec rather than a one-line idea.

Create a compact first-person 3D arena shooter called “Sky Bastion” using a clean low-poly Three.js-like visual style. The player is a small futuristic blue/cyan aircraft or blaster-equipped ship moving around a circular floating practice arena suspended in a bright sky-blue foggy backdrop. Use a first-person camera positioned at the player’s eye/ship height, with mouse-look on desktop and drag-to-look on touch devices. The arena is a broad dark blue circular platform with a thick, slightly tapered cylindrical underside, a raised lighter-blue top surface, and a glowing cyan ring around the perimeter. Place eight evenly spaced tall rectangular blue-gray pillars around the outer edge; they cast soft shadows across the floor. Add many small pale white/cyan floating sky particles/orbs in the distant background for depth.

The player starts at the center with 100 health and can move freely over the arena, constrained inside the circular boundary. Show a compact pale-blue/white futuristic blaster in the lower-right portion of the first-person view, consisting of a small rectangular body and short cylindrical muzzle. The player’s ship/body can be represented by a glowing cyan low-poly cone/aircraft with short pale wings in the world, but it is hidden from the first-person view. Give movement subtle hover bobbing and slight animation. Movement is relative to the camera yaw: WASD moves forward/back/left/right, with smooth acceleration; on mobile use a left virtual analog stick. Aim by camera view, and fire bright yellow-orange glowing spherical energy bolts from near the player’s eye/blaster muzzle in the direction the camera is facing. Shooting has a roughly 0.16-second cooldown and bolts travel quickly, fading/removing after about 1.2 seconds or when they travel too far.

Spawn hostile red/pink low-poly octahedron drones near the arena’s outer rim. They hover with a slight vertical wobble, rotate continuously, and seek the player using simple steering. Drones begin with one health point, move at approximately 2.4 plus a small wave-based speed bonus, and collide with the player to deal about 14 plus a wave-based damage increment before disappearing. On collision or damage, create brief colored particle bursts. When hit by an energy bolt, make a yellow/orange spark burst; destroy a drone when its health reaches zero, award 10 points, increment kills, and play a short synthesized hit/destroy sound. Every eight kills increase the wave, and independently increase the wave every 18 seconds; higher waves increase drone speed and health, spawn more enemies, and reduce the spawn interval. Maintain a cap of roughly 5 + 2 times the wave enemies, capped at 28, with spawn intervals starting around 1.2 seconds and becoming as low as 0.28 seconds; from wave 4 onward sometimes spawn an extra drone. The goal is an endless score chase: survive, destroy drones, and clear as many waves as possible.

Implement a dash burst activated with Shift on desktop or a DASH button on mobile. Dash in the current movement direction, or forward based on view if there is no movement input, for about 0.14 seconds at high speed. Give it a 1.8-second cooldown shown in the HUD and brief invulnerability during the dash, plus a cyan particle burst and synthesized sound. Player damage also gives a short invulnerability period and cyan impact particles. Include small spherical particle effects for shots, enemy hits, destruction, dash, and damage, with gravity/fading on particles where appropriate.

Overlay a clean large white HUD over the sky/arena: title “SKY BASTION” at the upper left, and readable fields for “Score: 0”, “Health: 100”, “Wave: 1”, and “Dash: Ready” across the upper area. Include status/instruction text such as “WASD move · Mouse look · Click shoot · Shift dash”; before mouse lock, tell the user to click the arena to lock the view. Update status text for pause and game over. Desktop controls: click the arena to request pointer lock, mouse to look, left click to shoot, WASD to move, Shift to dash, P to pause, and R to restart after game over. Mobile controls: a touch-safe virtual movement stick at lower left, drag open screen space to look, and clear FIRE, DASH, PAUSE, and RESTART buttons. FIRE shoots once per press/tap, DASH triggers the cooldown dash, PAUSE toggles the simulation, and RESTART only works after defeat.

Support pause without advancing gameplay while retaining camera and particle rendering. When health reaches zero, stop gameplay and show “Ship down — press R to restart” on desktop or “Ship down — tap RESTART to redeploy” on mobile. Restart resets the player, health, score, wave, kills, cooldowns, enemies, bullets, particles, and timers. Use soft blue environmental fog, hemisphere lighting, a bright directional sun with shadows, emissive cyan arena trim and player elements, red emissive enemies, yellow emissive projectiles, and gentle low-poly shading. Add simple synthesized electronic shot, dash, hit, and impact sounds, activated after user interaction.

More free browser games

Browse the whole Arcade →