ANNOYOTRON V: ATROCITRON
by Michael Martin, 2016

This archive contains the source code for Atrocitron along with the
scripts and data files that are consumed during its creation. As an
Inform work created in 2016, it takes a little bit of extra
preparation to get a functioning build in 2023. If, for whatever mad
reason, you wish to *build your own* Atrocitron instead of merely
study the code that created it, read on for what you need.

If you merely are here to tear the place apart for secrets and to work
out where the last lousy impact points are hiding, atrocitron.inf has
everything you want.

INFORM REQUIREMENTS

The program is built with Inform 6.33 against Inform Library 6/11
(April 2004). The version of Inform used is a bit flexible, but the
library is less so, as parserm.h has been modified as part of the
build. The build system expects a private copy of 6/11 to be unzipped
into the lib/ directory.

Yes, the actual published version says it's using Library 6.12.1. It
isn't, and 6.12.1 doesn't work with it, and I'm not actually clear on
what precisely is going on with that six years later.

OTHER REQUIREMENTS

Atrocitron contains two secret messages that are embedded within the
program at build time. The text of these messages is held within
victory.txt and easteregg.txt. The make_victory and make_easteregg
scripts transform them into the forms the Inform compiler needs. THESE
ARE PYTHON 2 SCRIPTS; PYTHON 3 WILL NOT RUN THEM. One of the messages
also requires GPG; I've tested the current Makefile with GPG 2.3.8.

The files "victory.inf" and "easteregg.inf" are the final forms these
messages take and are compiled directly into the final binary by
Inform. The file "easteregg.asc" is an intermediate file created by
GPG before make_easteregg converts it into a form Inform can use.

LICENSES

The file "parserm.h" was written by Graham Nelson as part of the
Inform design system, and is used under the licenses in the Inform
Design Manual.

The remainder of the code is published under the simplified BSD
license. Copying or adapting code from the game for your own works is
fine and requires only a mention in the documentation or credits (much
like extensions in Inform 7). This license is reproduced below.

Copyright 2016 Michael C. Martin

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:

1. Redistributions of source code must retain the above copyright
   notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright
   notice, this list of conditions and the following disclaimer in the
   documentation and/or other materials provided with the
   distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
