Eidolon

Build Status Coverage Status Gem Version Documentation

  1. noun: an idealized person or thing.
  2. noun: a phantom.

Summary

In short, Eidolon provides the minimal scaffolding required to load data from the RPG Maker series into a pure, external Ruby installation independent of the chosen Ruby implementation (MRI, JRuby, or Rubinius) or the user's operating system.

Note: Eidolon is only concerned with the loading of RGSSx data -- it is not built for the purposes of external manipulation and serialization of it.

Usage

The simplest use case for Eidolon is when you already know which version of the RGSS data structures your application will require. If you are only operating with one (whether it be RGSS, RGSS2, or RGSS3), you simply need to require the necessary version:

require 'eidolon/rgss'
# -- OR --
require 'eidolon/rgss2'
# -- OR --
require 'eidolon/rgss3'

Note that only one version may be required this way: attempting to require more than one version of the RGSS data structures will result in superclass mismatches. For this reason, if you potentially need to operate with more than one of the RGSS versions, you should use the core Eidolon module; essentially, the usage of this module allows you to dynamically create and destroy the needed RPG data structures whenever they are required. See the included documentation for more detailed information about the usage of the Eidolon module.

require 'eidolon'

def load_data(filename)
  File.open(filename, 'rb') do |file|
    return Marshal.load(file)
  end
end

@rgss_data  = []
@rgss3_data = []

Eidolon.build('RGSS')
Dir.glob('**/*.rxdata') do |rxdata|
  @rgss_data.push(load_data(rxdata))
end

Eidolon.destroy!

Eidolon.build('RGSS3')
Dir.glob('**/*.rvdata2') do |rvdata2|
  @rgss3_data.push(load_data(rvdata2))
end

Installation

$ gem install eidolon

Contributing

If you are interested in development, simply fork the GitHub repository, create a new branch, commit the changes, and create a new pull request.

$ git checkout -b new-branch
$ git commit -am 'Added some feature.'
$ git push origin new-branch

Please be sure to create a new branch and provide tests for your work. Contributions that do not meet these requirements will not be accepted.

License

Eidolon is made available under the terms of the MIT Expat license. See the included LICENSE file for more information.