Remove hint.html and index.html
As per discussions on GitHub the index.html and hint.html files should be deleted in favour of README.md files (from any .text/.txt/.markdown/.md files which will be turned into README.md in an upcoming commit).
This commit is contained in:
1 parent
ee8a36310f
commit
77fb0f11a2
143 files changed
-28606
No files matched your search
@@ -1,283 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta name="GENERATOR" content="mkd2html 2.1.3 DL=DISCOUNT">
|
||||
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
|
||||
<link rel="stylesheet"
|
||||
type="text/css"
|
||||
href="../hint.css">
|
||||
<title>Best non-chess game</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Best non-chess game</h1>
|
||||
|
||||
<p>Oscar Toledo G.<br>
|
||||
Av. Sta. Cruz del Monte 9-304<br>
|
||||
Cd. Satelite. Edo. de Mexico.<br>
|
||||
CP. 53110. Mexico.<br>
|
||||
<a href="mailto:biyubi@gmail.com">biyubi@gmail.com</a><br>
|
||||
<a href="http://nanochess.110mb.com/">http://nanochess.110mb.com/</a></p>
|
||||
|
||||
<h2>Judges' comments:</h2>
|
||||
|
||||
<h3>To build:</h3>
|
||||
|
||||
<pre><code>make toledo
|
||||
</code></pre>
|
||||
|
||||
<h3>To run:</h3>
|
||||
|
||||
<pre><code>./toledo
|
||||
|
||||
# NOTE: This requires X11 to run or modifications to use layer.c on
|
||||
# Windows
|
||||
</code></pre>
|
||||
|
||||
<h3>Try:</h3>
|
||||
|
||||
<pre><code>./toledo
|
||||
</code></pre>
|
||||
|
||||
<h3>Selected Judges Remarks:</h3>
|
||||
|
||||
<p>This two player game uses X11. The control keys can be configured by
|
||||
modifying the A,B,C and D macros at compilation.</p>
|
||||
|
||||
<p>After a quick splash screen the objective should be clear. There
|
||||
are Red, Green and Cyan tanks. A larger window can be made by altering
|
||||
the source early on, right before the code gets hard to follow.</p>
|
||||
|
||||
<p>Like Oscar’s previous winning X11 program for the 19th IOCCC, if
|
||||
you remove both the X11 include files and replace them with</p>
|
||||
|
||||
<pre><code>#include "layer.c"
|
||||
</code></pre>
|
||||
|
||||
<p>you ought to be able to compile and run this program on Windows.</p>
|
||||
|
||||
<h2>Author’s comments:</h2>
|
||||
|
||||
<pre><code> /=========\
|
||||
\==\ /==/ ||
|
||||
|| || /====\ |\/=\ || //==\ ==\ |=\
|
||||
|| || || || || || // || =| | |
|
||||
|| || //===| || || ||=// \\=\\ ==/ |=/
|
||||
|| || || || || || || \\ || User's
|
||||
\===/ \\==// || || || \\ \==// Manual
|
||||
</code></pre>
|
||||
|
||||
<p>This is a color X11 3D tank-game for two players, just compile
|
||||
and run it without arguments.</p>
|
||||
|
||||
<p>You will see briefly a tank spinning before each level.</p>
|
||||
|
||||
<p>Left half of the window shows the red player view and right
|
||||
half shows the green player view, the background will change to
|
||||
blue when the view goes inactive.</p>
|
||||
|
||||
<p>The objective is to chase and destroy the other player’s tank,
|
||||
there is also an aqua tank for testing your aim and getting
|
||||
extra points.</p>
|
||||
|
||||
<blockquote><p>Caveat: You can shoot only 3 bullets at a time.
|
||||
Trick: You can fire faster if they explode on anything.
|
||||
Believe it or not, it has strategy!</p></blockquote>
|
||||
|
||||
<p>When only one tank remains on the field, the level will advance.
|
||||
Don’t forget to destroy the aqua tank.</p>
|
||||
|
||||
<p>The playground is surrounded by mountains and each level is
|
||||
filled with random obstacles (pyramids and cubes).</p>
|
||||
|
||||
<p>The bars show players energy and score, each bar shows energy
|
||||
and indicates current player view (wider on the left), right
|
||||
part grows with every point.</p>
|
||||
|
||||
<p>Keys for player 1 (lowercase):</p>
|
||||
|
||||
<ul>
|
||||
<li>Tab - Fire</li>
|
||||
<li>w - Go ahead</li>
|
||||
<li>s - Go backwards</li>
|
||||
<li>a - Turn left</li>
|
||||
<li>d - Turn right</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>Keys for player 2:</p>
|
||||
|
||||
<ul>
|
||||
<li>Backspace - Fire</li>
|
||||
<li>Up arrow - Go ahead</li>
|
||||
<li>Down arrow - Go backwards</li>
|
||||
<li>Left arrow - Turn left</li>
|
||||
<li>Right arrow - Turn right</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<blockquote><p>Note: Numeric keys don’t work.</p></blockquote>
|
||||
|
||||
<p>If you don’t like the keys assignment, you can change it on the
|
||||
the makefile.</p>
|
||||
|
||||
<h2>PARENTAL ADVISORY WARNING:</h2>
|
||||
|
||||
<p>This game is highly violent, when the tank explodes you can
|
||||
see the little stick man blowing in parts.</p>
|
||||
|
||||
<p>Not really, just kidding :D</p>
|
||||
|
||||
<h2>PLATFORMS TESTED:</h2>
|
||||
|
||||
<ul>
|
||||
<li>openSuSE 10.2 x86-32, X11R6 1024x768 32-bits color.</li>
|
||||
<li>Fedora Core 8 x86-64, X11R6 1280x1024 32-bits color.</li>
|
||||
<li>Fedora Core 11 x86-64, X11R6 1024x768 32-bits color.</li>
|
||||
<li>Fedora Core 14 x86-64, X11R6 1024x768 32-bits color.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>COMPLETE FEATURE SET:</h2>
|
||||
|
||||
<ul>
|
||||
<li>Multiplayer out of the box.</li>
|
||||
<li>Totally self-contained, no external files.</li>
|
||||
<li>Fast-furious action at 29.97 frames per second.</li>
|
||||
<li>Just as the movies, 16:9 aspect-ratio.</li>
|
||||
<li>Beautiful mountains landscape plus horizon line :)</li>
|
||||
<li>Tanks and bullets exploding as wires with weird physics.</li>
|
||||
<li>Tanks backoff when firing.</li>
|
||||
<li>There is an infinite number of levels.</li>
|
||||
<li>Always different levels.</li>
|
||||
<li>Animated intro.</li>
|
||||
<li>It has color!.</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>FEATURES THAT PROGRAMMERS WILL FIND APPEALING:</h2>
|
||||
|
||||
<ul>
|
||||
<li>Works both with x86-32 and x86-64 processors.</li>
|
||||
<li>Double buffered, portable to any X11 with 24/32-bit color.</li>
|
||||
<li>Memory-hungry as must be any 3-D program, uses a 256 MB
|
||||
array.</li>
|
||||
<li>Total and absolute irreverent coding style, so it generates
|
||||
a lot of warnings when compiled.</li>
|
||||
<li>It can take several minutes to compile (known culprits:
|
||||
Fedora Core 11-14 on x86-64 512 MB)</li>
|
||||
<li>It is written in the only true C: K&R, and no, it not means
|
||||
Katherine & Rose.</li>
|
||||
<li>Vectorial scalable graphics, do you want a bigger
|
||||
playfield? change variables M & N.</li>
|
||||
<li>Half of the program is formatted as 3-D cube, view with
|
||||
Tabs at 8 columns and a square font.</li>
|
||||
<li>The other half of the program is unprintable source code,
|
||||
so no typing from paper, you have to write a converter of
|
||||
tabs and formfeeds to its C escaped forms.</li>
|
||||
<li>No text, so this program can be used and understood easily
|
||||
on any country.</li>
|
||||
<li>This program is highly ecologic, it sleeps when it is not
|
||||
doing anything.</li>
|
||||
<li>Virtual world with its own physics laws.</li>
|
||||
<li>When closing the window it will show an X11 error :P</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h2>OBFUSCATION TRICKS:</h2>
|
||||
|
||||
<ul>
|
||||
<li>Loop code included inside loop test.</li>
|
||||
<li>Function arguments used as variables.</li>
|
||||
<li>Operators used freely.</li>
|
||||
<li>Precalculated values to save bytes.</li>
|
||||
<li><p>Uses the +++, +- and *+ undocumented C operators :P</p>
|
||||
|
||||
<pre><code> ....,,,,---++++++--,,..
|
||||
.,,,....... .$@@@@@@@@@@@@$$@@@@@@@@@@@@@@#+
|
||||
@@@@@###@@@@$$$@@@@$$$@@@-......-@+......,,,,,,##
|
||||
=++==++++++++=@@$==#$$$$$---,,,,@@@,,,,,,-------@@,..........,,.
|
||||
,===#$$$$$$###$####=======@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+=##$@@@@@@@@.
|
||||
+@,,++++++++=+=========++++===++++++++++-+++@@-,,,,,,,,---+++=++++--,,... @.
|
||||
.@. .......,,,,-----++=@=++==@$=+--,,... @.
|
||||
$# S P O I L E R .,,-#@--,,,@$..... @.
|
||||
.@ ..,--+==++-,,,,.,,,,=@+++++====+++++---,,,....@.
|
||||
@+ ..,,-+++++++-,,.. @. ....,,,,,---+@@
|
||||
,@ ..,--+++=+++,,.. $# .==+
|
||||
@#--++==++-,,.. ,@ S P O I L E R .==+
|
||||
,#@@$+,,. @. ==+
|
||||
.,,+++++,,. S P O I L E R $= +=+
|
||||
..,-==++-,. ,@ ---
|
||||
.,-+=+++,.. @. .++-
|
||||
.,,++=++-,. @+ ==+
|
||||
.,-++==+-,. +@ ==+
|
||||
..,+++=+-,.. .@. +=+
|
||||
.,-+++++,@@==
|
||||
</code></pre></li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h1>THE HISTORY OF THIS PROGRAM:</h1>
|
||||
|
||||
<p>When I started working on this program, I figured that it would
|
||||
be easy to fit on the character limit, but I missed three
|
||||
things, the enormous X11 names, the unportable keycodes and my
|
||||
2 KB of artwork.</p>
|
||||
|
||||
<p>Very hard coding did the first thing, in fact I worked out
|
||||
twenty-nine different versions, at one step I had four
|
||||
parallel versions with different characteristics removed
|
||||
(mountains, horizon line, score/status bars and explosions),
|
||||
I’ve managed to fit it all together!.</p>
|
||||
|
||||
<p>The second thing was solved using the makefile, it is under
|
||||
160 bytes and you get adjustable keyboard. The greatest
|
||||
mistery on the earth is why X11 handles unportable keycodes to
|
||||
the user.</p>
|
||||
|
||||
<p>And finally, the third “Thing” was growing and growing, and
|
||||
growing, eating bytes for lunch… after endless rounds of
|
||||
crunching I obtained three-hundred seventy-eight bytes of
|
||||
artwork and guess what?, it doesn’t fitted.</p>
|
||||
|
||||
<p>So I had to integrate a decompressor, based on the space,
|
||||
tabulators and other non-counted characters.</p>
|
||||
|
||||
<p>The final program is composed of eight microfunctions, one is
|
||||
the core and does most of the hard work, other functions help
|
||||
doing the X11 things, explosion effects, 3-D calculations and
|
||||
viewing.</p>
|
||||
|
||||
<ul>
|
||||
<li>K() - 3-D transformation</li>
|
||||
<li>s() - Rendering</li>
|
||||
<li>b() - Line color selection</li>
|
||||
<li>G() - Explosion animation</li>
|
||||
<li>g() - Moves 3-D object backward and forward</li>
|
||||
<li>F() - Collision detection</li>
|
||||
<li>T() - Core (also known as main loop :D)</li>
|
||||
<li>main() - Initialization and uncruncher, what a common name!,
|
||||
C programs should start in the cool() function :).</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>The source code was formatted as an cube using a specially
|
||||
written program, the reality is that the program is smaller and
|
||||
obfuscated of what is needed so the reformatting doesn’t
|
||||
exceeded the character limits, the crunched vectors were
|
||||
generated by another special program and the tank that
|
||||
surrounds this text was generated by yet another program.</p>
|
||||
|
||||
<p><em>Have fun!</em></p>
|
||||
|
||||
<hr />
|
||||
|
||||
<TABLE><TR>
|
||||
<TD><a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-sa/3.0/88x31.png" /></a></TD>
|
||||
<TD><P>© Copyright 1984-2012,
|
||||
<A HREF="/judges.html">Leo Broukhis, Simon Cooper, Landon Curt Noll</A>
|
||||
- All rights reserved<BR>
|
||||
This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution-ShareAlike 3.0 Unported License</a>.</P></TD>
|
||||
<TD> <!--<a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Transitional" height="31" width="88"></a>--></TD>
|
||||
</TR></TABLE>
|
||||
</body>
|
||||
</html>
|
||||
Reference in new issue
Block a user