Skip to content

Soleone/rpg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

RPG library

A simple Ruby library for role playing games.

Implemented functionality

  • Character class with name and basic attributes (aka “traits”) like :strength, :agility, :charisma, :intelligence, :constitution

  • Yaml Serialization

  • Inventory for keeping tracks of items

  • Dice rolling, e.g. 1.d6.roll => 1-6

  • Weapons with random damage, e.g. 1d6+1 (like Dungeons & Dragons or The Dark Eye)

  • Events (e.g. successful evade, hit, death)

Basic rules

Dice Rolls

In order to do a successful attack or evade the character rolls a D20. The action is successful if the result is lower or equal to it’s associated attribute value (e.g. “attack” or “evade”). That means low dice rolls are actually a good thing, in fact if you roll a 1 you get a perfect bonus (e.g. double damage for attack rolls). On the other side rolling a 20 is an epic fail for any action roll and has various bad consequences (e.g. chance to drop weapon).

Characters

Have a name, inventory, can equip items (weapons and armor for example). Every character has 5 base attributes that influences the probability to success in various areas:

  • Strength (influences base damage and chance to hit)

  • Agility (influences chance to hit and to evade for example)

  • Charisma (will be used for e.g. NPC interaction later)

  • Intelligence (also influences chance to hit for now and will be the basis for magic)

  • Constitution (influences total health and evade chance, probably more later)

There are other sub-attributes (TODO: find better term) like:

  • Attack (chance to hit the target)

  • Evade (chance to not get hit)

  • more to come

TODO

  • Fighting (blocking, armor)

  • Specializations

  • Maps

  • Web Service interface (e.g. creating characters, starting fights)

  • much more

IDEAS

  • Use URLs as levels: parse the resources and convert them to maps somehow with <a> links being doors to other maps

  • IRC interface

About

A simple Ruby library for role playing games.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages