PROJECT DOSSIER // [MY DEFENDER]VIEW SOURCEBACK TO PROJECTS →

01 // PROJECT AT A GLANCE

MY DEFENDER

C

A complete tower defense: place towers, manage your gold, survive the waves.

A genre far richer than it looks: enemies follow a path, the player builds towers to stop them, each tower costs gold, and the waves get harder. So you have to manage many objects moving, targeting each other and disappearing at the same time — a genuine architecture exercise, not just a rendering one.

A CSFML tower defense: five building types (town hall, wall, cannon, bomb, trampoline) placed with the mouse in an isometric area, enemies moving in a straight line towards the town hall with sprites oriented on eight directions, targeting by Euclidean distance and cadence, gold economy, paid repairs, waves, menus and a scoreboard.

PRIMARYC
DELIVERYTEAM RECORD
VERIFICATIONCriterion
SOURCEINSPECTOR READY
MEDIA ATTACHMENTS (Images, Photos, Videos)

03 // KEY OUTCOMES

  • The player places the town hall themselves, and it becomes the convergence point of every enemy trajectory
  • Enemy sprites oriented on eight directions from the atan2 angle towards the target
  • Random seed taken from the CSFML clock, time() being forbidden by the subject
  • A --hitbox mode to visualise collision areas during development
  • The first project where architecture weighs more than algorithmics, and where the absence of objects in C concretely motivates the move to OOP

BEYOND THE BRIEF

  • Placeable traps in addition to towers (management_trap.c) and area-effect bombs (management_bombe.c)
  • Best scores written to disk (write_file.c, is_highscore.c) and a leaderboard screen
  • A built-in « how to play » screen (management_how_to_play.c)
  • Tower range displayed before placement

04 // SOURCE TREE

READING SOURCE…