Questions tagged [roguelike]

A roguelike is usually a turn-based computer game with a strong focus on intricate gameplay and replayability due to procedurally generated content.

There are several similar but distinct definitions of Roguelike in current use.

The newest defines "Classic Roguelike" strictly.

To be a Classic Roguelike, all of the following features must be present (summarized):

  • Turn Based: The player interacts in discrete turns.
  • Grid Based: There is an underlying orthogonal (rectangular) or hexagonal grid where the entities of the world are placed. Movement is in full cell-to-cell discrete steps.
  • Permanent Failure: Games can support save-and-quit, but not a reload function to retry any section of the game. Upon death the game must be restarted from the beginning.
  • Procedural Environments: Most of the game is generated by the game for every new play session.
  • Random Conflict Outcomes: The main conflict actions (attacks or spells usually) has a randomized outcome within a defined distribution.
  • Inventory: There are items the player can pick up and use and inventory space is limited.
  • Single Character: The player controls exactly one character in the game world.

Previously the most widely known definition of a Roguelike was the Berlin Interpretation:

The Berlin Interpretation defines Roguelikes as a genre with the following high and low value factors.

High value factors:

  • Random environment generation.
  • Permadeath.
  • Turn based.
  • Grid based.
  • Non-modal.
  • Complexity
  • Resource management.
  • Hack n' slash.
  • Exploration and discovery.

Low value factors:

  • Single player character.
  • Monsters are similar to players.
  • Tactical challenge.
  • Ascii display.
  • Dungeons.
  • Numbers.

Another old definition is available at the Roguebasin page.

108 questions
16
votes
11 answers

What programming language would be best for creating a roguelike game?

With the interest of creating a roguelike RPG (such as Nethack, Rogue, and ADOM), which programming language would be most suitable and why? With the language that you choose, be sure to list any libraries or facets of the language that make it…
agscala
  • 3,675
  • 5
  • 24
  • 25
10
votes
3 answers

Representing map constraints as a ADT

Here's a toy problem: A (roguelike) 2D map consists of square cells which each have a material (rock or air). Each cell has four boundaries (N, S, E and W). Each boundary is shared by two cells. A boundary can optionally contain a "wall feature"…
fadedbee
  • 37,386
  • 39
  • 142
  • 236
9
votes
6 answers

Pure Java text interface for a roguelike game

OK, this is going to sound like a crazy idea - but I'm interested in emulating a 1980s style roguelike game text interface in pure Java, i.e. using Swing or similar. Here's roughly what it needs to do: Provide a fixed size grid of fixed size…
mikera
  • 101,777
  • 23
  • 241
  • 402
9
votes
1 answer

Component based entity system in scala

I'm searching some library which implement the Component Based Entity System (ECS) framework used in multiple game and implementend in many game engine (unity, libgdx, etc.) I'm starting a little game project in scala ( ECS roguelike), and at this…
reyman64
  • 1,101
  • 2
  • 31
  • 62
7
votes
4 answers

Very simple RogueLike in F#, making it more "functional"

I have some existing C# code for a very, very simple RogueLike engine. It is deliberately naive in that I was trying to do the minimum amount as simply as possible. All it does is move an @ symbol around a hardcoded map using the arrow keys and…
nrkn
  • 1,482
  • 2
  • 14
  • 23
6
votes
5 answers

How to detect key presses on console?

I'm writing a roguelike in Scala. I need to be able to see when the user presses an arrow key for example. All of the solutions I have found require the player to press enter. Is there any way to detect keypresses in a console app in a similar…
Serentty
  • 263
  • 3
  • 8
5
votes
2 answers

Can I store items and their properties in an external file and call it when needed? (When programming a Roguelike in Python)

I have just finished working through this tutorial for programming a Roguelike in Python and am now very much on my own in figuring out where to go and what to do next. My predicament is with the messiness of the code. I would like to store elements…
5
votes
2 answers

What is the best way to display ASCII in a grid with panels using Java?

I don't have much experience in Java, but I am attempt to write a simple rogue-like game to familiarize myself with it, and I am just wondering how I would go about creating an interface like this: Are there any obvious ways that you would go…
Adam K Dean
  • 7,135
  • 10
  • 43
  • 68
4
votes
1 answer

an analogue of ncurses for JRuby running in browser?

I want to run in the browser a ruby application using ncurses. To do that, I can use JRuby; but what do I replace ncurses with ? I am thinking of running JRuby as an applet as decribed here. I have also found some Jave code 1 that does…
John Quilder
  • 405
  • 4
  • 12
4
votes
3 answers

Using of F# in a game engine

I'm currently creating a roguelike game and have already started coding in C# but have not coded much (<1000 lines) so far... Now again, I have had a look at F# and this language seems to be very cool...I'm considering now using F# for the game…
Marco
  • 2,007
  • 5
  • 23
  • 39
4
votes
1 answer

Draw Ascii character above rectangle with pygame

I'm trying to make a rogue like using pygame. Actually i have no problem to draw the first grid which represent the background of game (using mapLoaded which contain the original map and drawMap() function which return a list of Case Object). I…
reyman64
  • 1,101
  • 2
  • 31
  • 62
3
votes
1 answer

Roguelike FOV problem

I am working on a college compsci project and I would like some help with a field of view algorithm. I works mostly, but in some situations the algorithm sees through walls and hilights walls the player should not be able to see. void cMap::los(int…
Manderin87
  • 56
  • 5
3
votes
1 answer

"Confused Digger" algorithm running too slow, any way to speed it up?

I have an algorithm that was based on a backtracking maze algorithm with some parts removed, resulting in this wonderful dungeon. Unfortunately, it runs extremely slowly which makes it almost impossible to fill a decently-sized map with. I really…
Christopher Dumas
  • 1,220
  • 11
  • 27
3
votes
1 answer

Libgdx Generate RogueLIke Dungeon - Algorithm Error

I have used Libgdx to generate a dungeon out of keyboard characters. I have decided to print out the array as a text file. However this is what I got: Furthermore, It isn't consistent I don't get what is wrong? I checked over my algorithm and…
Fish
  • 1,579
  • 1
  • 13
  • 27
3
votes
3 answers

Building a Roguelike in Silverlight (or WPF)

I've been toying with the idea of building a web-based Roguelike game using Silverlight (or maybe just a desktop game using WPF). If you don't know what a Roguelike is, it's a type of graphical RPG where the graphics are rendered using text. Because…
Brian MacKay
  • 28,374
  • 14
  • 82
  • 116
1
2 3 4 5 6 7 8