Prototyping phase 1 #1

Open
opened 2025-11-17 18:43:20 +01:00 by binaryDiv · 0 comments
Owner

This issue tracks the progress of the initial prototyping phase.

None of the features listed here need to (or even should) be final, tidy or optimized in any way, this is just prototyping.

Basics: World rendering, movement, entities

(Probably in this order)

  • Project and engine base structure
  • Sprite rendering
  • Tilemaps (statically defined in code)
  • Debug text rendering (FPS counter, easy to add more debug information)
  • Basic entity system (simple sprite entities)
  • Character movement (static camera)
  • Collision detection
  • Map system (loading and switching between maps, still static maps)
  • Map transitions (areas that teleport the player to a different map)
  • Simple entity mining (player can make entities disappear)
  • Character state (mining entity increases a simple item counter)
  • World state (entities keep their state between map switches, e.g. mined entities disappear permanently)

Extended engine features

(Not necessarily in this order)

  • Logging system / error handling
  • Loading maps from files (e.g. created with Tiled)
  • Save files
  • GPU accelerated rendering (shaders and stuff)
  • Camera system, world vs. screen coordinates
  • UI system (static frames/boxes, buttons, text, event handling)
  • Input system (map keys to actions, use actions instead of raw keys in game code)
  • Scenes/screens (menu, main game, settings screen)
  • Pause screen

Gameplay features

  • Item system (mining entities yields different types of items - no inventory yet, just print mined items)
  • Inventory system (player can hold different types of items, inventory can be displayed)
  • Interacting with items in inventory (e.g. drop items, use items (prints text))
  • Placing entities from items
  • (... add more ...)
This issue tracks the progress of the initial prototyping phase. None of the features listed here need to (or even should) be final, tidy or optimized in any way, this is just prototyping. ## Basics: World rendering, movement, entities (Probably in this order) - [ ] Project and engine base structure - [ ] Sprite rendering - [ ] Tilemaps (statically defined in code) - [ ] Debug text rendering (FPS counter, easy to add more debug information) - [ ] Basic entity system (simple sprite entities) - [ ] Character movement (static camera) - [ ] Collision detection - [ ] Map system (loading and switching between maps, still static maps) - [ ] Map transitions (areas that teleport the player to a different map) - [ ] Simple entity mining (player can make entities disappear) - [ ] Character state (mining entity increases a simple item counter) - [ ] World state (entities keep their state between map switches, e.g. mined entities disappear permanently) ## Extended engine features (Not necessarily in this order) - [ ] Logging system / error handling - [ ] Loading maps from files (e.g. created with [Tiled](https://www.mapeditor.org/)) - [ ] Save files - [ ] GPU accelerated rendering (shaders and stuff) - [ ] Camera system, world vs. screen coordinates - [ ] UI system (static frames/boxes, buttons, text, event handling) - [ ] Input system (map keys to actions, use actions instead of raw keys in game code) - [ ] Scenes/screens (menu, main game, settings screen) - [ ] Pause screen ## Gameplay features - [ ] Item system (mining entities yields different types of items - no inventory yet, just print mined items) - [ ] Inventory system (player can hold different types of items, inventory can be displayed) - [ ] Interacting with items in inventory (e.g. drop items, use items (prints text)) - [ ] Placing entities from items - [ ] (... add more ...)
binaryDiv self-assigned this 2025-11-17 18:43:25 +01:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: binaryDiv/rutile-game#1
No description provided.