Skip to content

dpc/rustyhex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

RustyHex

Introduction

Simple roguelike written in Rust.

It's a spinoff of rhex, but while rhex uses traditional command line display, rustyhex uses OpenGL.

It's intendent to exercise my Rust knowledge and let me play with certain mechanisms that I'd like to see in roguelike game:

  • hexagonal map
  • tactical positioning (strafing, face-direction)
  • tick system with actions having delay and duration

Note

I am not actively working on this project as I lack skill and time to develop satisfying OpenGL UI. rhex is the primary place where I work on the ideas of hexagonal roguelike.

I'm still interested in PRs or even completely handing over this project to someone. It might also get merged in rhex one day.

Overview

RustyHex screenshot

Building

See .travis.yml

Status and goals

Build Status

Report problems and ideas

How to play

Basics

  • Use hjkl or arrow keys to move.
  • Press r to toggle between running and walking.
  • Hold Shift to strafe (with Left/Right move)
  • Hold Ctrl to attack (with a move)
  • Press . to wait.

Mechanics

Game time is measured in tick. All creatures (including player) can issue actions. Every action has pre and post delay. Pre-delay is a number of ticks between issuing an and when it actually happens. Post-delay is a time after action was performed and when next action can be issued.

Running

Running is faster if the preceding action was also Running. This reflects some time that it takes to get to full speed.

Melee attack

Melee attack action has generally small pre-delay, but long post-delay.

Wait "rubber"

Any action performed after Wait action is going to have it's pre-delay reduced. This reflects the preparation time that allows for faster attack.

About

Simple roguelike written in Rust language.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages