Yoink - The alien-smashing action game -------------------------------------- Contents: I. Users a) General information b) Requirements c) License II. Developers a) Notes regarding the code b) Sending patches III. Packagers a) The build system I. Users -------- a) General information Yoink is a game created by Neil Carter for Mac OS. You play the part of a flying alien heroine who must defend her home on Earth from other airborne alien invaders. This version of the game uses all new code and modern frameworks to bring this simple, fast-moving action game to a wider audience. b) Requirements boost headers libpng libvorbis Lua OpenAL OpenGL (including GLU) pkgconfig SDL c) License The new code is released under the 2-clause BSD license. The old code and original resources are provided under the zlib/libpng License. See the file COPYING for complete details. The full texts of applicable licenses can be found in doc/licenses/. II. Developers -------------- a) Notes regarding the code The code is a complete rewrite, containing none of the original code. I've made some effort to put the more generic or reusable code into a separate library called Moof. I've also made an effort to incorporate 3rd-party code that happened to fit well into what I needed. So, generally, the source code is separated into these three categories: 1. Yoink-specific code. This is the code directly in src/. These classes reside in no namespace. 2. Reusable code. Currently, the code is in src/Moof/, and it is compiled as a convenience library. These classes and helper functions reside in the Mf namespace. Since I wrote this code alongside the Yoink-specific stuff, there is somewhat of a blurry line between the two categories, unfortunately. 3. Third-party code. This is made up of free code from other projects or libraries (aside from the explicit dependencies above), the licenses of which are also in the COPYING file. This code resides in various namespaces and in various subdirectories. b) Sending patches I'll gladly entertain patches if you want to fix bugs or whatnot. Just email me your stuff or tell me where to pull from (git). If you're interested in that, please observe the following: * Stick to the coding style of the source code files you edit. Follow the general style of method and variable naming, as well as white space formatting. In particular, use literal tabs with an assumed tabstop of 4 characters. Also, limit line lengths to 75 characters. * For legal reasons, don't include other peoples' code with your patch. You must also agree to license your changes according to the same terms and conditions as the files you edit, usually the 2-clause BSD license. * If you want your name and contact information in the file AUTHORS, please make it so in the patch you provide. III. Packagers -------------- a) The build system You can probably tell that the build system of this package is built from autoconf and automake. It should be fairly sane. If you find any packaging-related problems or code which doesn't compile cleanly on your platform, feel free to send patches.