Write Yourself a Roguelike (Beta)
In Write Yourself a Roguelike, we will journey together to into the depths of game development using Ruby.
We'll discover what a being Roguelike means, conquer the command line with ncurses, delve into the world of Ruby without Rails, and master algorithms, data structures, and kittens.
If you've ever desired to develop command line tools or design games in Ruby, this book is for you.
You, a newly trained Developer, have been heralded as the instrument of Nethack. Your hour of destiny has come. For the sake of us all: Go bravely with Write Yourself a Roguelike.
This is a Beta release. The price will increase when the content is complete and edited.
Why write this book?
I've always desired books that walk you through making something. In essence, they are just a really long tutorial, but the concrete always seems to conquer the abstract for me. For aspiring Ruby developers writing a game of this nature eliminates the Rails-only doctrine of the Ruby world and allows one to focus purely on the capabilities of a Ruby program. In addition, learning how to use Ncurses is very beneficial to command-line developers due to it's portability and many implementations in various programming languages.
Is this book for me?
Reading this book, you will start with a single Ruby file and progress to develop a pretty extensive clone of NetHack. Using an existing game allows us to eliminate design choices and provide explicit direction by comparison (e.g. What do we do first?).
The audience of this book are developers who know Ruby and are interested in command-line tools and/or game development. Since this is a step-by-step guide most novice programmers will be able to handle the material.
Outline
Introduction
- What is a Roguelike?
- What is NetHack?
- Tooling
- Why Write This Book?
Creating a Character
- The Title Screen
- Messages
- Roles
- Races
- Genders
- Alignments
- Generating Abilities
Creating the Dungeon (In Progress)
- Generating random rooms
- Generating Doors and Corridors
- Moving around
- Creating Stairwells
- Vision and Lighting
- Color
Inventory (Not Yet Written)
- Items
- Burden
- Money and Shops
- Food and Hunger
- Unidentified Items
Combat (Not Yet Written)
- Random Monsters
- Fighting
- Magic
Wrapping up (Not Yet Written)
- Saving and Loading
- Increasing Difficulty
- What to do next
Possible Future Chapters
- Searching, hidden doors and corridors
- Questlines
- Alternate Dungeon types
- Blessings and Curses
- Pets
- Zoos
- Add C/C++ support
Write Yourself a Roguelike is written by Matt Mongeau.
You'll get access to the GitHub repo with various ebook flavors, an example game, and the source markdown files.