Showing posts with label Roadmap. Show all posts
Showing posts with label Roadmap. Show all posts

Monday, 19 April 2010

Onwards - a new roadmap.

0.05c will be released when I have potions and ranged combat implemented.

According to the old roadmap, I'm way behind on just about everything. Quelle surprise. Such is the life of the roguelike developer. Problem is, I have so many ideas for the game its preventing me from really developing it quickly. That, and the fact that I'm doped up to my eyeballs most of the time on venlafaxine, and that also I've got my dissertation ("Microquasar VHE photon production and its implications for microquasar identification, morphology and classification") to write this summer.

The two biggies coming up next to implement are persistence and magic.

Friday, 2 October 2009

Now what?

Now that the source code is out, what's next?

For my own part, there are still a few things in the code that I feel need tidying up. The code for creating, placing and dropping items, for example, really needs to be refactored further as it is duplicated in about a dozen places in the code.

Then I need to blitz the googlecode documentation and learn how to use that, to set up the repository.

After that, its time to look at what new features I'd like to implement.

The old roadmap was quite specific about what functionality would go into (then) future releases:
  • Character Milestones
  • Potions/Scrolls
  • Multiple Items on a Title
  • Timer Handling
  • Corpses
  • Magic & Spellcasting.
  • Saving/Loading
  • Ranged Combat
  • Damage Brands
  • Interface/Control Upgrade
  • Mutations & Corruption
  • Town NPCs
  • Victory Conditions
  • Traps
I've bolded the items that are currently fully or partially implemented.

But this still leaves quite a lot. I feel the next release should work towards new functionality, and the ideal candidates are, as I've been hinting at for some time, potions/scrolls and ranged combat.

But, of course, one of the joys of open source is that anyone can help, so if there is anything you'd like to see in Kharne, and you know Delphi/Pascal, and you can understand my extant code, just download the source, install it and start coding!

Thursday, 23 July 2009

Roadmap and the way forward...

Looking back on some previous posts, its quite clear that my release schedule was incredibly optimistic. The game was meant to be done by now!

So its time for a revised roadmap. I've already touched upon the contents of the next release, 0.03.

Beyond that, I intend there to be a follow-up release (we'll call it 0.03a and will probably come out late August) which will consist of:

  • Character Milestones - I want these to be accessable from within the game in some form or other, much like WoW's achievement system.
  • Potions/Scrolls - finally!
  • Multiple Items on a Title - as it says, I want to allow multiple items to exist on the same tile.
  • Timer Handling - to allow transient and temporary conditions such as poisoning, beserk and so on.
  • Corpses - monsters leave behind corpses. Not just for food, mind you.

Behind the scenes, I intend to concurrently work on a massive code refactoring exercise to get the code to a state where it is suitable for release under the MPL. The reason it hasn't been open-sourced before now is mainly programmer vanity.

0.04 will be the next version after that. This will probably not be released until after my next batch of exams in early October. Currently, I have planned the following for this release:

  • Saving/Loading - unlike the old Kharne, I intend to compress the save files. So no more 15 Mb Save Games. Additionally, when I talk about Loading, since Kharne adheres to the permadeath paradigm, 'Loading' means 'continuing a previous session'.
  • Ranged Combat - see here for the model I intend to implement.
  • Damage Brands - chopping, flaming, freezing, slaying etc etc etc.
  • Interface/Control Upgrade - to allow the use of keys to control actions such as eating, quaffing and so on. I don't think the drag-and-drop model should be the only way of manipulating objects where possible.
And then, 0.05, the Magic Version.
  • Magic - does that it says on the tin.
  • Mutations & Corruption - I like the Crawl model of mutations, but I don't think it goes far enough. I'd like more environmental corruption, and more mutations under the control of the player.
  • Town NPCs - no scruffy old dogs or harmless drunks though.
  • Victory Conditions - instead of the oft-used "you need to retrieve the Amulet/Rune/Orb of Qwertyuiop", I intending to have a completely different goal for the player in Kharne. You'll have to wait to find out though.
  • Traps - all the better to kill you with (I'm feeling a bit touchy about this as I just lost the promising Crawl character I mentioned previously to a blade trap whilst coming back out of the Swamp)
And at this point, Kharne will be basically a complete (well, -ish) and playable game, and will be MPLed. As the advert goes, simple!

Beyond that I have ideas for:
  • Crafting
  • Many more dungeon branches
  • Reputation System
  • Optional Tile Graphics
  • Multiplayer Modes
Deities, I think I'll leave alone, since, let's be honest here, Crawl has the Deity system in Roguelikes sewn up completely and there is no way anyone could ever compete with it or produce anything even half as good.

Monday, 6 July 2009

Screenshot of the Day

The first level of one of the entry dungeons, the Wilderlands. I was lucky and came across a mini-vault without any monsters inside and two items lying waiting for me to pick them up and use them (one of them a randart): A Tower Shield [5, +2] of Outsider Slaying and a Breastplate [8, +1]. The Outsider Slaying brand does exactly what it says on the tin, to quote the famous advert, it adds +3 to your damage against Outsider-type creatures (e.g. Efreets).

Anyway, after a gap of a few weeks in which I did very little coding on Kharne, and ironically enough inspired by my playing of a new roguelike, I've recommenced coding of 0.02c. It would be nice to get potions and scrolls working, or at least a subset of those items in this version as well as the previously-announced features.

A quick crawl through the database that holds the item definitions reveals placeholders (that I had entered last year) for the following scrolls and potions:
  • Scroll of Enchant Armour
  • Scroll of Enchant Weapon
  • Scroll of Remove Curse
  • Scroll of Teleportation
  • Scroll of Identify
  • Scroll of Magic Mapping
  • Scroll of Blink
  • Scroll of Sanctuary
  • Scroll of Blessing
  • Potion of Healing
  • Potion of Speed
  • Potion of Restore Abilities
  • Potion of Confusion
  • Potion of Blindness
  • Potion of See Invisible
  • Potion of Extra Healing
  • Potion of Paralysis
  • Potion of Free Action
  • Potion of Combat Mastery
  • Potion of Reflexes
  • Potion of Might
I have ideas for a few others that would be easy to code, such as Potions of Indigestion (that make you burp and hence ruin your stealth) and Scrolls of Acquirement (which do the same as in Crawl).

Wednesday, 22 April 2009

An announcement.

My day job mainly involves using Delphi but the place where I work is moving to .NET and later this year, I'll will be taking the TS: Microsoft .NET Framework - Application Development Foundation Exam 70-536. As part of the learning process, I've decided to write a cut-down mini version of Kharne in C# (using the .NET 3.5 Framework) applying some of the lessons I'm currently learning in writing the main game. I intend for this mini-Kharne (I need a new name for it!) to be a prelude to the main game and to be something akin in size and complexity to Dweller.

I'm confident this won't affect development of the main game, as I've set myself limited goals and scope:
  • A single dungeon with only a few levels.
  • Only a dozen or so items with perhaps a half-dozen brands at most.
  • A dozen or so different monsters.
  • Only a few skills.
  • Only two classes: Fighter and Mage.
  • No Races and only four main stats: STR, DEX, CON, INT
  • Only a few families of Spells.
  • Traditional ASCII Display using libtcod-net.
  • Simplified Inventory handling.
Effectively, in terms of effort, its a 7DRL spread out over a period of a couple of months. Eventually, I'd like to allow an export option to export characters from this mini-game to the main Kharne.

In terms of Kharne, the next tasks on the horizon (which have been partially implemented already but turned of in 0.02a) is to get skills, potions and scrolls working. When those are done, I'll release a 0.02b.