Middlecrest

From RogueBasin
Jump to navigation Jump to search
Middlecrest
Alpha Project
Developer Sean Brown
Theme Medieval Fantasy, Gothic Punk
Influences The Elder Scrolls, Dungeons and Dragons, Poison Elves
Released October 2010 (Alpha)
Updated Dec 9, 2010 (v0.0.80a)
Licensing Shareware,
Open Source
P. Language C, C++
Platforms Windows
Interface ASCII
Game Length Unlimited
Official site of Middlecrest


Middlecrest is a gothic punk themed fantasy roguelike ("roguelike" in the broad sense, since it will fuse some elements from CRPG's in a more-or-less roguelike way). Many of the fantasy elements are taken from low-fantasy, emphasizing real-world historical situations and analogues (for example, much of the society of Middlecrest is based on real-world medieval or Renaissance models, although shuffled around somewhat). Magic is present in the world, although it is rarer and magical beings and monsters operate more like their mythological counterparts, rather than like their high-fantasy (Tolkien, Dungeons and Dragons, etc.) versions. The gothic punk aspect refers to the theme and "feel" of the world and is based on the modern punk-derived goth subculture and the Neo-Romantic punkish world envisioned by Adam and the Ants in the video "Stand and Deliver". The comic book, Poison Elves, is a prime example of the theme.

Daggerfall is the main inspiration for the project. The goal with this project is to not only implement many of the game ideas seen in the Elder Scrolls series (not necessarily using all the same game mechanics of Daggerfall... I take the liberty to expand, improve, and make new where I see fit), but also to implement those features that didn't make it into Daggerfall specifically. Daggerfall promised much more than it actually delivered (although it delivered a lot) and it is about time to let those forgotten and exciting features see the light of day! :)

Technologies

Middlecrest is programmed in C and C++ and makes use of SQLite for much of its game data. It incorporates other libraries, such as Boost.

Status and Road Map

Presently, the project is in a very early alpha stage. Only basic functionality is implemented for only a minority of features. The things I plan on implementing in the near future are:

  • Completed magic system that incorporates both arcane and priestly magic. Right now only a portion of arcane magic is implemented.
  • Look command
  • Implementing the experience system
  • Basic, core classes and then expanding it to other classes later
  • Non-trivial pathfinding and tracking modes (sight, scent)
  • Magical items with elemental effects
  • Time and scheduling system
  • FoV and LoS
  • Town and wilderness generation (simple)

Features

Here is a description of features that Middlecrest will eventually contain:

  • Freeform quest generator (including quests that aren't the traditional hack-n-slash style roguelike quests)
  • Item, spell, potion, and class makers
  • Themed dungeon generators (examples: caves, dungeons, fortifications, ruins, etc.)
  • School based magic system
  • Weather system so that clothes will actually be an important aspect of the game to keep you warm, dry, etc.
  • Durability: items can break, excluding a few things, like rings, etc.
  • Ever-evolving game world: Events happen independently of you (or as a result of your actions). Suppose, you gain reputation with a noble family in a particular province. That province could be attacked by other nobles and, while you are adventuring in a ruin, a page finds you to inform you that the noble family needs your help to fight off the siege. Do you help? Can you get there in time? If the siege succeeds, you could find yourself back in that province with new rulers installed and no allies (since they were killed or driven away)! You could even be wanted dead since you were an ally of the previous rulers!
  • Advanced AI: characters and monsters will behave based on their needs (remember the Sims?) for more realistic interaction and behavior.
  • Softer permadeath features -- Don't worry! Permadeath is still there, looming, and ever-present. It's just that there are ways (although uncommon and very difficult) to get around death.

Version Log

  • v0.0.71 -- Demo: dungeon generation, monster, and item generation, inventory, movement, picking up items, dropping items, equipping items, searching, basic combat (magical and mundane), minimal monster AI, basic database capabilities.
  • v0.0.78 Minigame -- Updated C++ Boost library to v1.44 and SQLite to v3.7.3, corrected database bugs, added elemental magic effects on weapons, implemented damage resistances vs. spells, updated attack calculations, all armor is equip-able, release and readme information viewable in-game using the 'v' and '?' commands respectively, added scrolls although they are not in item generation routines yet (they need to be designed and more fleshed out still), fixed typos, and a bunch of minor code improvements. Source code included.
  • v0.0.79 Minigame + Levels -- Added town generation, added wilderness generation, travel between levels, doors, minor code improvements and bug fixes.
  • v0.0.80 Minigame + Class/Race -- Updated C++ Boost library to v1.45, added races and classes, significant code overhaul and code improvements.
  • v0.0.80a Maintenance Release -- Updated SQLite to v3.7.4, minor code improvements, document updates.
 v0.0.80b Maintenance Release (current, testable) -- Significant reduction in memory footprint, bug fixes, minor code improvements, document updates

External Links

Middlecrest development blog

Latest code release for Middlecrest