~biosinteractive/intensityengine/trunk

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
**This project has been inactive for many years. Links to syntensity.com no longer work. You can still find some videos on YouTube however that show what Syntensity was ([example](https://www.youtube.com/watch?v=J8KMwU1UJmw))**

Intensity Engine
================

The Intensity Engine is the open source project powering Syntensity,

    http://www.syntensity.com
    http://www.syntensity.com/toplevel/intensityengine/


Running - Syntensity
--------------------

To run the client and connect to Syntensity, run

    (Windows) intensity_client.bat
    (Linux)   ./intensity_client.sh

You need to sign up for a free user account on Syntensity,

    http://www.syntensity.com

Notes:

  - On Windows, Python25 appears in the batch file for the
    client (and also the server, etc.). This is because the
    binary libraries provided (boost, etc.) are linked against
    Python 2.5. So, you should install Python 2.5 (it can
    coexist alongside other versions), or edit the batch
    files. (Note that only 2.5 was tested extensively on Windows,
    so there may be issues with other versions, but, 2.6 is known
    to work fine on Linux.) Also, if you have Python 2.5
    installed at a non-default location (i.e., not
    C:\Python25) then you should edit the batch files
    accordingly.


Compiling
---------

See COMPILE.txt for how to compile the source code, if this
isn't a binary distribution.


Running - Locally (i.e., without Syntensity)
--------------------------------------------

See README-standalone.txt. It explains how to quickly run a map
using the client, and also more complex things like running your
own servers.


Settings
--------

You can change some settings in the settings.cfg file. This file is
in

    ~/.intensityengine_client/settings.cfg

or

    ~/.intensityengine_client/settings_server.cfg

on Linux, for the client and server, respectively - note that these
are purposefully two separate files. On Windows, the files are in

    C:\Documents and Settings\USERNAME\intensityengine_client\settings.cfg
    C:\Documents and Settings\USERNAME\intensityengine_client\settings_server.cfg

where USERNAME is your username. On Vista, the locations will be

    C:\Users\USERNAME\intensityengine_client\settings.cfg
    C:\Users\USERNAME\intensityengine_client\settings_server.cfg

Note that the files are auto-generated when the client exits, so if
you modify it while the client or server is running, then exit, your
changes will be overwritten.

You can also tell the client and server to use other home directories.
They will then use the files present there, and in particular the
settings.cfg file there, so this can be an easy way to switch between
various setups (e.g., between connecting to Syntensity or to your
own infrastructure). To specify a home directory, simply pass it
as the first commandline argument to the client or server.


Problems
--------

See the TROUBLESHOOTING.txt file if you are having trouble running or
compiling the Intensity Engine. You can also ask for help on IRC,

    #syntensity on FreeNode

See also

    http://wiki.syntensity.com/troubleshooting


Documentation
-------------

See the included README-* files, the contents of docs/,  and the
Syntensity wiki (http://wiki.syntensity.com). Good places to start:

* README-standalone.txt: Mentioned above.
* docs/tutorial_making_a_game.markdown: How to work on games in an easy way in standalone mode.
* docs/scripting.markdown: Teaches in a step-by-step manner the scripting API.


Reporting Bugs
--------------

Please do so here:

    http://github.com/kripken/intensityengine/issues

Notes on reporting crashing bugs:

  - Set the logging level to DEBUG (or INFO, if feasible), and
    reproduce the crash. This will give more output than the
    default setting of WARNING. (This is set in the settings.cfg
    file in the home directory you are using.) On Windows,
    output should appear in out_client (or out_server); on other
    platforms, it goes to the console by default, so you
    should redirect it to a file (or copy it from the console.
  - If you can, try to run the program in the debugger, to find
    the line number of the crash.
  - In the bug report, please state if the crash is consistent
    (always happens in a particular case), and what exactly
    appears to trigger the crash - what you were doing just
    before, etc.


Packaging / Systemwide Install
------------------------------

The Intensity Engine will work fine if installed for all users. It
only writes to the user's home directory, not anywhere else, so it
can be installed in a read-only central (systemwide) location. The
only thing you should do in such a case is change directory to
where it is installed and run it from there.


Contributing
------------

See docs/code.markdown.


Notes
=====

1. The Intensity Engine is licensed under the MIT/X11 
   license. See COPYING.txt for details.
2. For more information, including links to the mailing list,
   bugs, wiki, etc., see the main website,

        http://www.syntensity.com/toplevel/intensityengine/

3. This distribution may contain sources or binaries of other open
   source projects (in /build, /src, or /windows/dll), supplied for
   convenience here instead of requiring you to get them yourself.
   The following is a list of licenses and where to get the source
   code for each one:

    - ENet (MIT) http://enet.bespin.org/
    - Simple DirectMedia Layer, or SDL (LGPL) http://www.libsdl.org/
    - Google V8 (BSD) http://code.google.com/p/v8/
    - The Python programming language (PSFL) http://python.org/
    - Boost (Boost Software License) http://www.boost.org/
    - MochiKit (MIT) http://mochikit.com/
    - zlib (zlib) http://www.zlib.net/

   The Intensity Engine uses all of these project as-is, no changes
   have been made.