Deprecated: Function set_magic_quotes_runtime() is deprecated in /DISK2/WWW/zweistein.cz/devdiary/textpattern/lib/txplib_db.php on line 14 Fate of Heroes Developer diary: Page 3

Randomly generated roguelike maps arrived!

Sep 12, 21:23

Well, surprisingly it was not that hard after all. Results are not ideal yet, but basics are covered:

As you can see, it looks quite different from typical roguelike map, looking more like circuit board than ‘true’ dungeon map. This has a lot to do with how it is generated:

There are several approaches on how to create map for roguelike, but generally, it is about placing rooms and then attempting to connect them. Rogue alorithm, for example works like this:

  1. Subdivide map to cells
  2. Place rooms to cells
  3. Connect rooms, ensuring that they are all accessible.

Most important thing here is subdividing map and tackling map creation locally on per-grid element.

I started by making library of map components, prefabricated map segments. Each segment is in relation to surrounding segments (that is, can be connected to them by small tunnel, wide hallway or not connected at all).

Then, creating map is simple matter of interating over grid and placing randomly chosen segments to place they ‘fit’. There is no magic involved: choose cell in which to put segment, ask library for list of matching segments and pick one randomly.

Here are some more examples:

As can be seen, they are not aestetically pleasing when displayed in their full glory, but when rendered inside game client, they are much better off because player can not see weird connections, limited to small displayed are and his memory of what is outside of it.

Now, this looks quite well, doesn’t it?

Zwei

,

Comment

---

Milestones are fun, part 6

Sep 5, 22:01

Finally got around and finished next milestone: NPCs now belong to factions with simple friend/foe relationships and will even attempt to fight amongst themselves. One player-friendly NPC now patiently waits in Gateway Hall for player questions. Attributes got a bit more fleshed out.

As bonus, nifty targeting feature was added, it was never as easy to use lightning bolts as now! I consider that huge improvement, and wonder why this is missing in so many roguelikes.

And of course, i stood away from Model-View/Controler mess. Noone who saw code will blame me! Well, he will, but … i will get it done eventually.

Allright, we still have more basics to cover if FoH is to be called roguelike:

  • Terrain is now partially randomly generated (tree positions.). That is not enough. Framework for whole randomly generated areas should exist. For starters, basic roguelike dungeon generation.
  • Items are still hardcoded and a bit boring. Lets random loot!
  • Monsters also lack variety and are hardcoded. Lets fix that.
Zwei

,

Comment

---

Milestones are fun, part 5

Aug 18, 23:56

Abilities are not linked to skills and Abilities also have costs, also, Lightning bolt Ability is first ranged ability. Added portaling and world now consists of four zones.

As bonus, game now switched to realtime and we now have Action Point based realtime turn based system (Alike Fallout tactics or Arcanum hybrids). So, bases for switching from single player to multi player are set.

Next up:

  • Attributes are useless, add some use.
  • Only possible NPCs are hostiles. Lets add “faction” construct to be able to tract mob to mob and mob to player relationship.
  • From this stems: Friendly NPC with simple dialogue.
  • Separate gui client and game server, still with “dry connection” in between them, but remote gameplay would be well possible.
Zwei

,

Comment

---

Milestones are fun, part 4

Jul 28, 16:53

Yay, new version is up, it features Music (Quite nice i must say, definitely worth listening to, something I will force you to do until mute is implemented) and different combat/exploration music.

Upgradeable equipment – Rune slots and three upgrade runes.

And bonus: Skills (use [B] to access skill book; use [U] to use ability) learned from runes.

This is first step towards unity: Item that represents skill can be used to learn skill or as consumable item to activate skill. It can be also used to upgrade equipment to produce effects similar to skill.

Idea here is to enable more fluid economy: Have each item provide several benefits. Not only gets each drop more love from player, it also gets more effective sink to increase its value.

See healing rune for example. This rune can be used to teach fairly weak self heal – something that player will generally appreciate, especially if he is in process of dying. Once he learns this skill, rune is still useful as it will offer self heal without needing to expend resources other than item itself – contrasting with having to use skill that consumer energy. And he can also always upgrade his equipment with this rune to get minor over-the-time heal. all in all there are good reasons for this item to keep some value.

Other new features include better AI and minor graphics tweak.

So, what is next?

First, Skill lines themselves should be more useful on their own, they should finally start offering bonuses to character actions. That means that dialogue to allow player to invest Skill Points into exped skills should be created.

Second, Game now consists of only one area that is, well, under designed. This means that we need support for portals and zones. That would be also nice excuse to do external configuration.

Third, We need targeting GUI. something to allow player interact with distant objects. [L]ook command to explore surroundings and also targeting dialog for skill use for skills/items that need it. Cue in for “lightning bold”, single tile distant magic attack.

Fourth, simple scroll up/down gui feature for bigger chunk of text ala more dialog.

Zwei

,

Comment

---

Milestones are fun, part 3

Jul 18, 21:35

Tileset version is online along with basic sounds and improved AI on mobs (fixed bug that caused then to stack diagonaly and to teleport right to character). Most inner guts were not reworked, but were getting there.

Next up: Music, Mor of internal gui rework, more mob intelligence (they spawn with items, let em equip them), make armor stats usefull (currently, armor is kinda useless), guess % to avoid being hit is good for start.

[O]verview dialog now that we have something to show (armor value).

up[G]rade dialog in inventory and allow items to be upgrade with runes (sockets included). Add ‘fire rune’ (aoe damage on use).

Zwei

,

Comment

---

« Older Newer »