This version of Vestibule is read only. It represents an archive of the community effort to produce content for Ruby Manor 4.

Rapid Game Development with Ruby and Gosu

This proposal by <a href="/users/belen-albeza">Belén Albeza</a> has been chosen by the community to be given at Ruby Manor 4.

updated about 4 years ago; latest suggestion about 4 years ago

Overview

Gosu is a light game development library that, combined with Ruby, allow us to develop games really quickly. This is a perfect environment to develop prototypes to try our new game mechanics, or to release a game as soon as possible.

In this talk, we will get an intro to Gosu and game development in general, with sample source code, along with other resources we can use in our games (like physics libraries).

Outline (draft)

  • Why Ruby? Pros & cons
  • Hello Gosu
  • Quick explanation of the most-basic game dev techniques
    • The main loop
    • Image drawing
    • Player input
    • Delta time
    • Sprite lists
    • BB collisions
  • Overview of other techniques (FSM's, pathfinding, tile maps, scripting, physics, etc.)
  • How to distribute Gosu games

PS: thanks for the feedback!

Suggestions

  • 2abf5beb51d5d66211d525a72c5cb39d Paul Battley suggests about 4 years ago

    I've not had great experiences writing GUI applications in Ruby in the past: a responsive interface seems hard to achieve without real threading.

    I'm really interested to know how Gosu handles this - especially if it provides a solution!

  • 2940bc7d4506f3e099e3dcc32a412b98 Jon Leighton suggests about 4 years ago

    This sounds really interesting, mainly because it's quite far removed from what I do on a day to day basis :)

    I'd like to see "real" examples of games in Ruby. Would you really recommend someone to write their next game in Ruby or is it a bit of a toy at this stage?

  • 6cdb7590e6804ff1ec3d0f558ddeec3d eastmad suggests about 4 years ago

    Excellent proposal.

    • Packaging - can I deliver a game with this?
    • How does this compare with shoes? (any colour, though look at Shoes4)
    • How does this compare with using web solutions like playmycode.com?
    • Where do you draw the line at "prototype" and "time to use C"
  • B68ce3695bb8dc29b9f9cb0dc0b721a5 Murray Steele suggests over 4 years ago

    If I pick up gosu + ruby to write a game am I left at a blank slate in terms of my game development? Say I just want to write a particular type of game (jrpg, point and click adventure, platformer &c.) are their libraries that will get me some way there (e.g. are there gems on top of gosu - or c libraries - like Adventure Game Studio) ?

  • 087fbd1d8b20dac2e38e17fbfd482407 Richard Patching suggests over 4 years ago

    If you have time, I would like to know how you package your games up for wider distribution. Do you use Releasy or similar gems that package ruby scripts up? It's the biggest hurdle that stops me developing games in Ruby with earnest, so would like to find out how other developers are tackling this issue.

  • Be3698f145a80c1230fd667c87d0f0c8 Tom Stuart suggests over 4 years ago

    I'm really interested in this. Ruby is obviously useful beyond web development and I'd love to hear more talks about other areas where it shines.

    Would you have time to talk about downsides too? Are there any? At what point (if any) would I need to abandon my Ruby prototype and rewrite it in C++?