]> Dogcows Code - chaz/yoink/blob - README
319344927c18dc23c143fa279a5c8dedc22e2e2a
[chaz/yoink] / README
1
2 Yoink - The alien-smashing action game
3 --------------------------------------
4
5 Contents:
6
7 I. Users
8 a) General information
9 b) Requirements
10 c) License
11 II. Developers
12 a) Notes regarding the code
13 b) Porting
14 III. Packagers
15 a) The build system
16 b) Targeting Win32
17
18
19 I. Users
20 --------
21
22 a) General information
23
24 Yoink is a game originally developed by Neil Carter for Mac OS. You play
25 the part of a flying alien heroine who must defend her home on Earth from
26 other airborne alien invaders.
27
28 This version of the game uses all new code and modern frameworks to bring
29 this simple, fast-moving action game to a wider audience.
30
31 b) Requirements
32
33 boost headers
34 libpng
35 libvorbis
36 Lua
37 OpenAL
38 OpenGL
39 pkgconfig (build-time dependency)
40 SDL
41
42 c) License
43
44 The new code is released under the BSD-2 license. The old code and
45 original resources are provided under the zlib/libpng License. See COPYING
46 for complete details. The full texts of applicable licenses can be found
47 in doc/licenses/.
48
49
50 II. Developer
51 -------------
52
53 a) Notes regarding the code
54
55 The code is a complete rewrite, containing none of the original code. I've
56 made some effort to put the more generic or reusable code into a separate
57 library called Moof. I've also made an effort to incorporate 3rd-party
58 code that happened to fit well into what I needed. So, generally, the
59 source code is separated into these three categories:
60
61 1. Yoink-specific code.
62
63 This is the code directly in src/. These classes reside in no namespace.
64
65 2. Reusable code.
66
67 Currently, the code is in src/Moof/, and it is compiled as a convenience
68 library. These classes and other helper functions reside in the Mf
69 namespace. Since I wrote this code alongside the Yoink-specific stuff,
70 there is somewhat of a blurry line between the two categories.
71
72 3. 3rd-party code.
73
74 This is made up of free code from other projects or libraries (aside from
75 the explicit dependencies above), the licenses of which are also in the
76 COPYING file. This code resides in various namespaces and in various
77 subdirectories.
78
79 b) Porting
80
81 Portability is a goal of this project. To this end, Yoink is written in
82 standard C++ and takes advantage of cross-platform libraries. If code
83 changes are required to cleanly build Yoink on your platform, please send
84 back patches.
85
86
87 III. Packagers
88 --------------
89
90 a) The build system
91
92 You can probably tell that the build system of this package is built from
93 autoconf and automake. It should be fairly sane. If you find any
94 problems, especially any bugs which complicate packaging on certain
95 systems, please send back patches.
96
97 b) Targeting Win32
98
99 If you have a working mingw32 toolchain with all the dependencies, you can
100 build a win32 binary using a command such as this:
101
102 ./configure --host=mingw32 --prefix=/usr/mingw32/usr
103
104 where mingw32 is the correct name of your toolchain. You can get all the
105 non-standard dependencies from the git repository at win32/win32-libs.zip.
106 Just unzip the contents of that archive into your toolchain. If everything
107 goes smoothly, you should have a yoink.exe appropriate for the win32
108 platform. You can then build a complete installer using "make package" if
109 you have nsis installed.
110
This page took 0.035719 seconds and 3 git commands to generate.