Skip to content

Releases: kimgoetzke/procedural-generation-1

v0.4

01 Jan 09:37
e1c9165
Compare
Choose a tag to compare
v0.4 Pre-release
Pre-release

Improved MVP web game loop:

  • Improved error handling with error type (IN_GAME, GENERIC, UNHANDLED) and message
  • Handle player death
  • Remove ANSI escape characters from actions and interactions
  • Added ability to resume an active game
  • Filter out available dialogues (which are reset repeatable events) from quest log endpoint

Bugfixes:

  • Fixed bug that left game in unrecoverable state when entering one-line dialogues with no actions
  • Fixed bug where one-line dialogues would not reset once completed

v0.3

18 Dec 15:11
91f240a
Compare
Choose a tag to compare
v0.3 Pre-release
Pre-release

Added web game loop to MVP:

  • Added basic Spring Security configuration
  • Added a REST controller with endpoints GET /api/play, POST /api/play, and GET /api/play/{playerId}/quest-log
  • Added MemoryUtilisationTest to test memory impact of loading hundreds of chunks/thousands of locations
  • Refactored all actions and events to make them compatible with web
  • Refactored Encounter to store EncounterSummaryDto which web-calls can access and return to front-end

Bugfixes:

  • Fixed bug that prevented event target NPCs to show up as a dialogue options (at least when at MAIN_SQUARE)

v0.2

18 Nov 16:37
2728856
Compare
Choose a tag to compare
v0.2 Pre-release
Pre-release

Updated MVP (CLI game loop):

  • Enabled unloading of Chunk incl. decoupling of Location from Graph
  • Moved all game configuration from constants to a single Yaml file (application-world.yml)
  • Added DefeatEvent with two permutations: KILL_ALL_AT_POI and KILL_TYPE_ANYWHERE
  • Populate in-memory DB from CSV inputs on startup
  • Refactored World (singleton) and Chunk (prototype) to be Spring beans
  • Set tier for every Chunk on generation using TerrainGenerator (e.g. allowing tier-appropriate content such as items at Shops)
  • Added options menu and a quest log (showing List<Event> with Event.State ACTIVE or READY) for player using new PrintAction
  • SeedBuilder effectively now concatenates x & y coordinates when creating seed (fixing bug where seed for g(24,25) and g(25,24) and therefore generated content for chunk were the same)
  • Turn FolderReader into a singleton Spring bean to prevent scanning folders multiple times

v0.1

30 Oct 20:50
Compare
Choose a tag to compare
v0.1 Pre-release
Pre-release

Created MVP with CLI game loop featuring:

  • World grid with procedurally-generated Chunks containing playable area
  • Procedurally generated Location (Settlement) and PointOfInterest (Amenity, Shop, and Dungeon)
  • Procedurally generated Inhabitant and BasicEnemy
  • Procedurally generated names (BasicNameGenerator) and events (BasicEventGenerator)
  • Procedurally generated EncounterSequences in Dungeons, the difficultly of which is based on global coordinates
  • Various ways of ingesting content data (see TxtReader, YamlReader and via DataServices)
  • Ability to gain experience, gold and purchase Consumables from relevant shop types (but no gain from doing the former yet)