X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=README;h=bd05038886201b7330ff66ad1c62266985be565d;hp=1b66b52090e3b2cf3222adcafd21d87ce764af73;hb=ed5fcf5f1357fc42749408f705e9ec55531ff006;hpb=a891a2dcbbb63d9e771da6efff00a33da614e737 diff --git a/README b/README index 1b66b52..bd05038 100644 --- a/README +++ b/README @@ -1,12 +1,124 @@ -Yoink is a game originally developed by Neil Carter for Mac OS X. You play -the part of a flying alien heroine who must defend her home on Earth from -other airborne alien invaders. +Yoink - The alien-smashing action game +-------------------------------------- -This version of the game uses rewritten code and modern frameworks to bring +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 + b) Targeting Win32 + + +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. -The new code is released under the Simplified BSD License. The old code and -original resources are provided under the zlib/libpng License. See COPYING -for complete details. +b) Requirements + +boost headers +libpng +libvorbis +Lua +OpenAL +OpenGL +pkgconfig (build-time dependency) +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. 3rd-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 spacing + 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 to add your contact information to the file AUTHORS, please + just do it 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 build +system problems or code which doesn't compile cleanly on your platform, +feel free to send back patches. + +b) Targeting Win32 + +If you have a working mingw32 toolchain with all the dependencies, you can +build a win32 binary using a command such as this: + +./configure --host=mingw32 --prefix=/usr/mingw32/usr + +where mingw32 is the correct name of your toolchain and the prefix points +to the installation of your toolchain. I maintain an archive of most of +the dependencies. The package is in the git repository; just unzip it onto +your toolchain and configure/compile. If everything goes smoothly, you +should have a new, shiny yoink.exe. You can then build a complete +installer using "make package" if you have nsis installed. + +I haven't tried building with cygwin or mingw32 on an actual Windows +machine, let alone VS. You're on your own if you go that route.