Skip to content

Arcade › Code Bastion

Code Bastion

  • 3d
  • tower-defense
  • strategy
  • programming
  • isometric
0
Remix it Discord

12 plays

How to play

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

Discussion

Nobody has said anything about Code Bastion yet. Play it, then tell Steelie 44 what you would add next.

Make your own game

Code Bastion was built by Steelie 44 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 Code 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 Code 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 playable game titled "Code Bastion": a 2.5D/isometric tower-defense game rendered in Three.js. Show an 8-column by 6-row tiled board on a dark navy background, viewed from an elevated orthographic camera with soft shadows, fog, and a clean stylized low-poly look. The board alternates green grass tiles; brown road tiles form a split route from the left side toward a blue crystal base at the right/end. There are two enemy routes that share the opening section, branch onto upper and lower brown roads, then rejoin near the base. The blue base is a short faceted/cylindrical tower with a glowing pale-blue octahedral crystal on top.

The core interaction is programming rather than clicking towers. At the beginning give the player 160 gold, 20 base HP, wave 0/5, and 0 kills. Green glowing build pads are unlocked and display their numeric tile IDs as floating labels; dark green pads are locked and initially become available progressively after each cleared wave. Do not allow construction on brown road tiles. The initial unlocked build IDs are 1, 9, 10, 13, 16, 17, and 19; use the staged unlock groups from the design: [1,9,10,13,16,17,19], then [3,4,11,21], then [25,29,30,33], then [35,36,37], then [44,45].

On the right, add a tall translucent dark rounded control panel titled "Code Bastion" with the subtitle "Write tiny Python-style commands, press Run Code, then start the next wave." Include stat cards for Gold, Base HP, Wave, and Kills. Include a monospace code textarea prefilled with comments and example commands such as build("arrow", 9) and build("cannon", 19), plus two buttons: bright green "Run Code" and blue "Start Wave 1" (the button should update to the current wave). Include a console card showing Ready/OK/error/wave messages and a tower-stats card listing: arrow cost 45, range 2.8, fast shots; cannon cost 75, range 2.35, splash damage, slower; magic cost 95, range 3.25, strongest single target. Include a commands/help card explaining build("arrow", tile), build("cannon", tile), build("magic", tile), upgrade(tile), and sell(tile). On the top-left overlay, show pill-shaped HUD badges for Gold, Base, Wave, and current status; use dark translucent panels with pale text and green/blue accent buttons. Make the panel scrollable and responsive; on narrow screens it becomes a bottom drawer that can be opened by tapping its header.

Parse and execute only simple Python-style commands, one per line or semicolon-separated, with comments beginning with # ignored. Support build("arrow", tile), build("cannon", tile), build("magic", tile), upgrade(tile), and sell(tile). Accept tile arguments as numeric IDs such as 10, coordinate tuples such as (2, 1), and A1-style strings such as "C2"; coordinates are zero-based tuples and A1 rows are 1-based. Reject malformed/unsupported commands, bad tower names, out-of-bounds tiles, road tiles, locked tiles, occupied tiles, missing towers, insufficient gold, and over-level upgrades with a visible console error and error sound. Code cannot be run while a wave is active or after game over. Ctrl/Cmd+Enter runs code; Shift+Enter starts the wave.

Implement three tower types using Kenney-style low-poly tower-defense models when available, with procedural fallback shapes if assets fail. Arrow towers cost 45, have range 2.8, damage 18, fast fire rate 1.15, and fire arrows quickly. Cannon towers cost 75, range 2.35, damage 38, slower fire rate 0.62, and deal splash damage within 0.72 world units. Magic towers cost 95, range 3.25, damage 54, fire rate 0.72, and are strong single-target towers. Place towers at the center of their chosen build tile, show a faint cyan circular range ring and a floating L1/L2/L3 label, and upgrade towers up to level 3. Each upgrade costs 38 + (current level * 28), improves range by 0.25 per level and damage by 45% per level, and slightly improves fire rate. Selling refunds the base refund (arrow 28, cannon 45, magic 58) plus 22 per upgrade level beyond level 1. Towers automatically target the living enemy furthest along a route within range and fire visible moving projectiles; arrows can use a small arrow model, while cannon/magic projectiles can be glowing spheres in their respective colors.

Provide five sequential waves. Wave definitions: wave 1 has 8 scouts with 42 HP, speed 0.9, bounty 9, spawn gap 0.78; wave 2 has 11 scouts with 58 HP, speed 1.02, bounty 10, gap 0.68; wave 3 has 14 raiders with 72 HP, speed 1.07, bounty 11, gap 0.62; wave 4 has 16 raiders with 92 HP, speed 1.13, bounty 12, gap 0.56; wave 5 has 20 boss-type enemies with 120 base HP, speed 1.18, bounty 14, gap 0.5, with boss HP multiplied by 1.45. Alternate spawned enemies between the two split paths. Enemies should be stylized hovering UFO-like Kenney models when available (scout enemy A and raider/boss enemy B), or red spherical fallback enemies, and should hover/bob subtly while moving. Give every enemy a green health bar with a dark backing above it. Enemies follow the discrete tile-center path, and when they reach the base reduce base HP by 1, or by 2 for boss enemies; remove them. Kills award each enemy's bounty. Show moving projectiles, automatic tower attacks, enemy health reduction, and cannon splash effects through the damage behavior.

The player presses Run Code to commit a build/upgrade/sell plan, then presses Start Wave. While a wave runs, disable both editing actions as appropriate and show a status such as "Wave 1 incoming" or "Wave Running". When all enemies are defeated or have reached the base, if the base survives, clear the wave, award +35 gold, increment the wave counter, refresh/unlock the next staged build pads, and display which pads opened. After wave 5 is defeated, show VICTORY, set the match over, and state that the final wave was defeated. If base HP reaches zero, show DEFEAT/Base destroyed and prevent further actions until refresh. Use click and error interface sounds if available. Keep the board visually dominant, with the glassy control panel occupying the right side as in the reference screenshot.

More free browser games

Browse the whole Arcade →