Go Back   Angband Forums > The real world > Idle chatter

Thread Tools Display Modes
Old October 20, 2011, 00:43   #1
Derakon's Avatar
Join Date: Dec 2009
Posts: 8,917
Derakon is on a distinguished road
Fleshing out a roguelike concept

I've been giving some thought to trying to make a roguelike game. Let me stress that I've written no code so far and I have half a million other projects to work on, so the odds of this making it very far are pretty slim. At this point I'm mostly considering this to be an exercise in theorycrafting. If that's not your boat, feel free to ignore this.

My interest is in relatively small-scale tactical combat, where you need to carefully consider your positioning with respect to your opponent as well as which techniques to use. I also like the concept of terrain deformation and manipulation, and want it to be a key aspect of that tactical approach. That is, the player should need to control terrain to do well in fights, either by positioning himself advantageously or by outright changing the terrain.

So the thought is to have a procedurally-generated 3D cave system composed of chunky cubes (vaguely Minecraft-style). Each cube has a terrain type (e.g. dirt, rock, river, ice, magma) and the types need to be able to interact with each other in meaningful ways. The player would have abilities to create, destroy, and shove cubes around. Some examples:

* Being above your target gives you a comparative advantage
* Raise a maze of stalagmites to interfere with enemy motion
* Undermine a cliff to collapse it, causing a landslide
* Punch a hole in a wall to unleash an underground river
* Place landmines which, when activated, not only explode but also remove terrain, trapping the victims in pits
* Stand in magma, assuming you can survive it, and enemies attacking you get hurt while your own attacks are imbued with heat
* Superheat yourself and jump in a river to blast nearby opponents with steam

So what I'm looking for is ways to adapt these concepts to actual mechanics. In particular, I want more terrain manipulation abilities, and more ways for different terrain types to interact. Let's say for the sake of argument that the following terrain types are in:

* Dirt, also encompassing sand, clay, etc. Sort of a chunky liquid, in the sense that it needs support or it will cave in. Also supports life.
* Rock of all types. Solid, dependable, nothing beats rock.
* Water, in the form of pools and rivers. Basic, chunky fluid mechanics will be needed (Dwarf Fortress-style).
* Ice as a static form of water.
* Magma, like water. Magma + water = steam + rock.

Some possible interactions I could see:
* Dirt + water -> plant life. But what would plants do? Trees could provide cover and stabilize the dirt to prevent it from collapsing...beyond that?
* Magma eats dirt, and could slowly consume (limited types of?) rock as well
* Ice + magma -> explosion of ice shards

But this really doesn't seem to be enough depth to base a game on. Of course I also have the basic shape of the terrain to play with, so there's things like height advantages, lines of sight, cover, etc, but I'd like the actual terrain to have more meaning as well.

As far as combat is concerned, I'll probably stick to the fantasy staples -- melee, bows, and spells. Of course each will have some special abilities for manipulating terrain.

Some things I would like to avoid:
* Mobility and teleportation abilities. Getting trapped should be bad; giving the player easy escapes lessens tension. The player will have the ability to slowly climb walls, so getting stuck in a pit is tactically problematic but not an automatic death sentence.
* Healing abilities. I want the player to soldier on regardless of their current state, so there is no resting, no "natural" recovery. Killed monsters drop essences that immediately recover you a bit when being picked up, and you have three slow full-regens that are only restored when returning to town, but otherwise you're on your own. The better you are at combat, the more self-sufficient you are and the longer you're able to go without bugging out.

I'd love to hear any suggestions y'all have.
Derakon is offline   Reply With Quote
Old October 20, 2011, 01:24   #2
Ironband/Quickband Maintainer
Join Date: Nov 2007
Posts: 1,008
Antoine is on a distinguished road
I think this is going to be more charming, the closer it looks to a cellular automata kind of format. In other words the terrains should be moving and changing around you all the time. E.g.

- lava flows moving along, possibly with islands of rock carried on the back of the flow
- waves rising and falling on a beach
- caverns flooding, water gets higher and higher
- mountainsides crumbling in fits and starts
- earthquakes - falling rocks, cracks extending

Also have you considered going completely abstract and ditching any connection with real world terrains/substances. At this point you could randomize the properties of the terrains and the way they interact with each other.

Ironband -
Antoine is offline   Reply With Quote
Old October 20, 2011, 09:27   #3
Mikko Lehtinen
Join Date: Sep 2010
Posts: 1,246
Mikko Lehtinen is on a distinguished road
I'm going to make positioning more important in the next FayAngband.

I'm replacing Digging skill with Jumping. Jumping percentage is shown to the player.

There will be forests with trees and vegetation. You have to succeed in Jumping to move on a vegetation. If you fail, you just wasted your turn. All monsters have Jumping score, too.

You can't enter a tree square. But if you succeed in two Jumping checks in a row, you can jump to the square directly behind the tree. Think of Tarzan. Failing here damages you.

There will also be tables and platforms. Jumping on a table requires a check. If you try to attack someone who is higher than you, there's a 2/5 chance of failure. If you try to shoot or cast a spell at someone behind a table, there's also a 2/5 chance of cover blocking the shot.

I'm trying to keep the rules as simple as possible to make positioning intuitive.
Mikko Lehtinen is offline   Reply With Quote
Old October 20, 2011, 15:34   #4
Join Date: Aug 2009
Location: Madison, Wisconsin, US
Posts: 3,002
fizzix is on a distinguished road
Theorycrafting is fun, but at the same time, thinking about how to deal with self-moving terrain in a 3D environment in a turn-based? world gives me a headache.

That being said, I think that there are lots of interesting things that can be done to terrain by considering how it affects the following actions.

1) Sight across terrain
2) Spells across terrain
3) Missile weapons across terrain
4) Movement across terrain.

4) can be further broken up into flying and non-flying.

Each of these has 2 possibilities setting up 16 (or 32 if you care about flying) distinct possibilities, solely based on movement. So you can imagine stuff like.

Open floor - allows everything
Granite wall - allows nothing
Abyss - allows 1,2,3 but not 4
Impact forcefield - allows 1,2,4 but not 3
Magical forcefield - allows 1,3,4 but not 2
Fog - allows 2,3,4 but not 1
Glass - allows only 1
Gate - allows only 2
???? - allows only 3
???? - allows only 4

Abyss, Impact forcefield, magical forcefield and fog can be combined to get the other more obscure combinations.

In addition extra terrain for combat (dis)advantage, like higher ground, or standing water, vegetation can also be added. However, I think this has a good start in making terrain useful to the player. For example, a spell caster may want to erect gates everywhere possible.
fizzix is offline   Reply With Quote
Old October 20, 2011, 17:40   #5
Derakon's Avatar
Join Date: Dec 2009
Posts: 8,917
Derakon is on a distinguished road
I think you're right, fizzix, that having the terrain be too unpredictable would make the game more chaotic than anything else. Cellular automata are nifty things, but if you're going to make a game involving them they should either be the focus or a trivial sidepoint, not part of some greater mechanic.

(Though of course, you could say that chunky fluid mechanics are basically a cellular automata, albeit a fairly predictable one.)

Antoine: abstraction is certainly a possibility. The questions are, do we want the players to be able to internalize the interactions of different terrain types, and how complex do we want those interactions to be? Complex and abstract interaction sets are much harder to learn than complex and "real" sets, even if the connection to reality is tenuous. It makes some intuitive sense that combining dirt and water gets you plants, but in a purely abstract game that's more like "combining red and purple gets you orange".

Fizzix: that's also a good list of potential properties for terrain to have. However, I want the player's thought process to be a bit more involved than "I'm on the other side of the room from a bunch of ranged attackers; I'd better raise a bunch of gates for cover." That's too easy, like the Create Doors spell. What I'm thinking right now is that those various combinations of blocking movement/missiles/spells/etc. arise from interactions of different terrain types. So for example, fire + water -> steam, which blocks line of sight but nothing else. Water + dirt -> bush, which gives some cover (reduced missile hit chance). Bush + water -> tree, which gives full missile cover and partial spell cover. So if you want cover, you need to create the terrain that will provide it, which may be a multi-step process.

Mikko: I gave some thought to having two basic archetypes for this concept: one that focuses on manipulating terrain, and one that focuses on positioning themselves in the available terrain. The latter would have to have a lot of movement abilities, and would presumably be more melee-oriented than the former. I do like the concept of the Hollywood Warrior, who has a bunch of spell-like abilities thanks to his Mighty Thews (leaping, knocking enemies around, pushing furniture, breaking enemy equipment, etc.); you don't tend to see that concept in roguelikes much for whatever reason. However, having two archetypes introduces a lot of complexity that isn't strictly necessary, so for now I'm ignoring him.

Thanks for the ideas and feedback, all of you!
Derakon is offline   Reply With Quote
Old October 21, 2011, 22:40   #6
bio_hazard's Avatar
Join Date: Dec 2008
Posts: 618
bio_hazard is on a distinguished road
This sounds pretty cool. I'd guess most of the terrain modifications you are talking about are present in some game or another, maybe not with the tactical relevance you are envisioning.

I think my dream roguelike would make creative (tactical) use of the junk found in adventuring. If you are a necromancer, you're collecting body parts from killed monsters, but how you killed the monster determines what parts are left. The type of zombie you make is determined by your skill level and the parts you have. Maybe you just toss a couple of animated arms to slow down monsters, or make a headless zombie that moves slowly and randomly because you haven't managed to take down a monster with an intact head yet. Other specialties might be making golems out of leather armors or metal armors, or engineers who repurpose found equipment into devices like barricades, traps, or catapults. In general, the more complex constructions/animations would require more specialized parts, which make for more risky combat tactics to ensure those parts aren't damaged during combat, especially as monsters get more powerful.
bio_hazard is offline   Reply With Quote

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Roguelike Radio andrewdoull Idle chatter 47 November 8, 2014 22:57
Roguelike keyset bug Frood Vanilla 1 September 22, 2011 15:54
Question regarding roguelike keyset... Svladd Cjelik Vanilla 1 July 2, 2011 13:07
Roguelike Phylogeny Zappa Vanilla 5 August 14, 2009 23:32
Concept: DotAband - too ambitious? h3lix Variants 5 April 2, 2008 22:21

All times are GMT +1. The time now is 13:14.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.