Skip to content

hunternet93/mkxp-oneshot

 
 

Repository files navigation

mkxp-oneshot

This is a specialized fork of mkxp by Ancurio for the upcoming game OneShot.

mkxp is a project that seeks to provide a fully open source implementation of the Ruby Game Scripting System (RGSS) interface used in the popular game creation software "RPG Maker XP", "RPG Maker VX" and "RPG Maker VX Ace" (trademark by Enterbrain, Inc.), with focus on Linux. The goal is to be able to run games created with the above software natively without changing a single file.

It is licensed under the GNU General Public License v2+.

OneShot also makes use of steamshim for GPL compliance while making use of Steamworks features. See LICENSE.steamshim.txt for details.

Dependencies / Building

  • Boost.Unordered (headers only)
  • Boost.Program_options
  • libsigc++ 2.0
  • PhysFS (latest hg)
  • OpenAL
  • SDL2
  • SDL2_image
  • SDL2_ttf
  • Ancurio's SDL_sound fork
  • vorbisfile
  • pixman
  • zlib (only ruby bindings)
  • OpenGL header (alternatively GLES2 with DEFINES+=GLES2_HEADER)

OneShot employs Qt's qmake build system, so you'll need to install that beforehand. (The cmake build hasn't been maintained since the fork.)

qmake will use pkg-config to locate the respective include/library paths. If you installed any dependencies into non-standard prefixes, make sure to adjust your PKG_CONFIG_PATH variable accordingly.

The exception is boost, which is weird in that it still hasn't managed to pull off pkg-config support (seriously?). If you installed boost in a non-standard prefix, you will need to pass its include path via BOOST_I and library path via BOOST_L, either as direct arguments to qmake (qmake BOOST_I="/usr/include" ...) or via environment variables. You can specify a library suffix (eg. "-mt") via BOOST_LIB_SUFFIX if needed.

By default, OneShot switches into the directory where its binary is contained and then starts reading the configuration and resolving relative paths. In case this is undesired (eg. when the binary is to be installed to a system global, read-only location), it can be turned off by adding DEFINES+=WORKDIR_CURRENT to qmake's arguments.

pkg-config will look for ruby-2.2.pc, but you can override the version with MRIVERSION=2.3 ('2.3' being an example). This is the default binding, so no arguments to qmake needed (BINDING=MRI to be explicit).

Supported image/audio formats

These depend on the SDL auxiliary libraries. OneShot only makes use of png for images and oggvorbis/wav for audio.

To run OneShot, you should have a graphics card capable of at least OpenGL (ES) 2.0 with an up-to-date driver installed.

Configuration

OneShot reads configuration data from the file "oneshot.conf". The format is ini-style. Do not use quotes around file paths (spaces won't break). Lines starting with '#' are comments. See 'oneshot.conf.sample' for a list of accepted entries.

All option entries can alternatively be specified as command line options. Any options that are not arrays (eg. preloaded scripts) specified as command line options will override entries in oneshot.conf. Note that you will have to wrap values containing spaces in quotes (unlike in oneshot.conf).

The syntax is: --<option>=<value>

Example: ./oneshot --gameFolder="oneshot" --vsync=true

About

mkxp, forked for OneShot

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 47.5%
  • Ruby 45.8%
  • C 4.5%
  • CMake 0.9%
  • GLSL 0.6%
  • QMake 0.6%
  • Other 0.1%