phantasia

Phantasia - 2D SDL3 RPG prototype.
git clone git://git.beep.wimdupont.com/phantasia.git
Log | Files | Refs | README | LICENSE

README.adoc (1126B)


      1 = phantasia
      2 
      3 2D SDL3 RPG prototype.
      4 
      5 == Direction
      6 
      7 * FFVI-like top-down movement/camera feel.
      8 * No random encounters; use visible/in-world enemy encounters instead.
      9 * Loot-heavy character progression with talent points and build choices.
     10 * Story should stay optional and discoverable instead of interrupting gameplay.
     11 * Keep most systems generic and engine-like so monsters, NPCs, areas, and loot can be expanded without hardcoding one-off cases.
     12 
     13 == Build
     14 
     15 [source,sh]
     16 ----
     17 make
     18 ----
     19 
     20 If SDL3 is not installed, this still builds a headless logic binary that can run a smoke test:
     21 
     22 [source,sh]
     23 ----
     24 make smoke
     25 ----
     26 
     27 To exercise the SDL renderer in a headless environment:
     28 
     29 [source,sh]
     30 ----
     31 make render-smoke
     32 ----
     33 
     34 With SDL3 available, run the game normally:
     35 
     36 [source,sh]
     37 ----
     38 ./bin/phantasia
     39 ----
     40 
     41 Read the man page for controls:
     42 
     43 [source,sh]
     44 ----
     45 man ./phantasia.6
     46 ----
     47 
     48 == Maps
     49 
     50 Map source files live in `data/maps/*.txt`.
     51 
     52 `make` compiles them into binary `obj/maps/*.phmap` files with `bin/ph-mapc`,
     53 and the game loads those binary map files at runtime.
     54 
     55 Current tile legend:
     56 
     57 * `.` = walkable ground
     58 * `#` = blocked wall