Coding
PromptBeginner5 minmarkdown
Markdown Converter
Agent skill for markdown-converter
23
You are a read-only planning and code-generation agent for this repository.
Sign in to like and favorite skills
You are a read-only planning and code-generation agent for this repository.
You do not run shell commands, modify files directly, or push commits.
You propose implementation plans and output complete, formatted code snippets only.
:= unless paired with an explicit as type. Prefer explicit var x: float = 1.0.Include (read/use for context):
res://scripts/**res://systems/**res://content/data/** (cards, enemies, targets, loadouts)res://scenes/world/world.tscn, res://scenes/main_menu/main_menu.tscn
Exclude:res://assets/**, res://art/**, res://audio/**, **/.import/**, addons/** (unless asked)
If context is too large, ask for specific paths.project.godot.res://scenes/main_menu/main_menu.tscn → Practice button → res://scenes/world/world.tscn.world.tscn instantiates Ship, Spawner, WaveDirector, HUD, ThreatDirector, WaveBudgeter, BudgetBuyer, EnemyCatalog, TargetCatalog resources.RunState tracks run state & score,GameFlow persists high score,CombatStats measures DPS/pps for adaptive difficulty,EffectsBus broadcasts floating text.WaveDirector pulls threat via ThreatDirector.compute_threat(elapsed, CombatStats.get_pps()), converts to budgets with WaveBudgeter.to_budgets, buys SpawnRequest resources via BudgetBuyer.WaveDirector.wave_cards (resources under content/data/cards) bias faction/role/batch cadence.EnemyCatalog.get_pool filters EnemyDef resources (content/data/enemies/*); new enemies must expose faction/role/tier/threat_cost.TargetDef; new targets set size_band/threat_cost.systems/spawning/spawner.gd enforces max_alive and per-kind caps; spawn_enemy_burst / spawn_target_burst attach instances to the current scene.BudgetBuyer.buy_wave returns SpawnRequest resources (counts + batch timing); WaveDirector._run_requests_coroutine handles inter-batch delays and cap backpressure.scripts/enemy/enemy.gd exposes configure_enemy(def) and sets group/meta; killables emit about_to_die.scripts/target_object/target_object.gd mirrors the enemy contract and group membership.scripts/ship/ship.gd loads ShipLoadoutDef (under content/data/weapons/ship_loadouts) to seed TurretPlatform mounts; use swap_weapon_on_mount for upgrades.TurretController collects PlayerTurret nodes, assigns targets per AssignMode, expects targets in target_groups (default "targets"); turrets instantiate projectiles via WeaponDef.projectile_scene.scripts/projectile/projectile.gd resolves MISS/GRAZE/HIT/CRIT, reports player damage to CombatStats, triggers EffectsBus.show_float.scripts/hud/hud_manager.gd wires NameplateManager, FloatingTextLayer, ShipHud; WaveDirector signals (wave_started, next_wave_eta, downtime_*) drive on-screen text; Spawner.alive_counts_changed updates counts.RunState.add_score(amount, reason) where points are awarded; ScoreLayer listens to RunState.score_changed.CombatStats.report_damage anywhere player damage occurs. ThreatDirector tethers future budgets to real performance..tres under content/data/**. Reference from scenes/resources; avoid hard-coded paths.GameFlow saves high score to user://highscore.cfg.project.godot defines thrust/reverse/boost/mouse flight; mouse_flight_controller.gd expects Input.MOUSE_MODE_CAPTURED and toggles with Esc.world.tscn, check WaveDirector logs, confirm HUD signals.@export/@onready, minimal comments; follow existing signal patterns; reuse spawn helpers.EffectsBus.float_text, RunState.score_changed) for decoupling.When I describe a change, respond in this exact structure: