Format fix 2001/williams/README.md
This commit is contained in:
1 parent
56e7dc3e88
commit
4203e451bc
1 file changed
+14
-15
+14
-15
@@ -1,9 +1,7 @@
|
|||||||
# Best Graphic Game
|
# Best Graphic Game
|
||||||
|
|
||||||
John Williams
|
John Williams
|
||||||
941 E 25 S
|
US
|
||||||
Lindon UT 84042
|
|
||||||
US
|
|
||||||
|
|
||||||
## To build:
|
## To build:
|
||||||
|
|
||||||
@@ -25,11 +23,12 @@ echo "Do or do not. There is no try."
|
|||||||
|
|
||||||
## Judges' remarks:
|
## Judges' remarks:
|
||||||
|
|
||||||
A strange game. The only winning move is not to play. No, really; you can't
|
[A strange game. The only winning move is not to
|
||||||
actually win. :)
|
play](https://en.wikipedia.org/wiki/WarGames). No, really; you can't
|
||||||
|
actually win. :)
|
||||||
|
|
||||||
The formatting really wants a wide screen; if you can't read it that way,
|
The formatting really wants a wide screen; if you can't read it that way, it's
|
||||||
it's the standard "three triangles around a circular" logo for nukes.
|
the standard "three triangles around a circular" logo for nukes.
|
||||||
|
|
||||||
This is a pretty straightforward game.
|
This is a pretty straightforward game.
|
||||||
|
|
||||||
@@ -37,8 +36,8 @@ This is a pretty straightforward game.
|
|||||||
|
|
||||||
What this program does:
|
What this program does:
|
||||||
|
|
||||||
It plays Missile Command, complete with MIRVs, smart bombs,
|
It plays [Missile Command](https://en.wikipedia.org/wiki/Missile_Command),
|
||||||
extra cities, and scoring.
|
complete with MIRVs, smart bombs, extra cities, and scoring.
|
||||||
|
|
||||||
Command line arguments and input files are ignored.
|
Command line arguments and input files are ignored.
|
||||||
|
|
||||||
@@ -51,18 +50,18 @@ points for each city left at the end of a level.
|
|||||||
The game ends when you lose all your cities, although you will have
|
The game ends when you lose all your cities, although you will have
|
||||||
to wait until the level finishes raining down to see your final score.
|
to wait until the level finishes raining down to see your final score.
|
||||||
|
|
||||||
|
### Obfuscation
|
||||||
|
|
||||||
The main obfuscation technique is the need to compress the code to fit
|
The main obfuscation technique is the need to compress the code to fit
|
||||||
all the functionality within the size limits. I could not have included
|
all the functionality within the size limits. I could not have included
|
||||||
smart bombs without the rule excluding { } ; characters in the counts.
|
smart bombs without the rule excluding `{};` characters in the counts.
|
||||||
All of the #defines are there to reduce code size.
|
All of the `#define`s are there to reduce code size.
|
||||||
|
|
||||||
On the other hand, I did waste a few characters in order to include
|
On the other hand, I did waste a few characters in order to include
|
||||||
some rather obfuscated math in the program. It uses fixed-point
|
some rather obfuscated math in the program. It uses fixed-point
|
||||||
arithmetic, resulting in the overuse of bitwise shift operators.
|
arithmetic, resulting in the overuse of bitwise shift operators.
|
||||||
Another example is (x|1), which is used in a couple different ways.
|
Another example is `(x|1)`, which is used in a couple different ways.
|
||||||
The purpose of A/(x|1) is probably obvious, but what does (x|1)%2 do?
|
The purpose of `A/(x|1)` is probably obvious, but what does `(x|1)%2` do?
|
||||||
|
|
||||||
## Copyright and CC BY-SA 4.0 License:
|
## Copyright and CC BY-SA 4.0 License:
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user