sawine@86
|
1 |
<p>Here is an unfiltered, undocumented, user-unfriendly random stack of little hacks, that I've produced for recreational reasons. I put them online in the spirit of the liberation of useless machines.</p>
|
sawine@86
|
2 |
|
sawine@86
|
3 |
<h2><a name="gameoflife">Game of Life</a></h2>
|
sawine@86
|
4 |
<img src="images/gameoflifes1.png" alt="game of life screenshot" class="float-right" height="150" width="200" />
|
sawine@86
|
5 |
<ul>
|
sawine@86
|
6 |
<li>
|
sawine@86
|
7 |
<h4>Description</h4>
|
sawine@86
|
8 |
A Javascript-based implementation of Conway's Game of Life.</li>
|
sawine@86
|
9 |
<li>
|
sawine@86
|
10 |
<h4>Version</h4>
|
sawine@92
|
11 |
Stable and green.
|
sawine@86
|
12 |
<div class="download"><a href="gameoflife.html">View in your browser</a></div>
|
sawine@86
|
13 |
</li>
|
sawine@86
|
14 |
</ul>
|
sawine@86
|
15 |
<br />
|
sawine@86
|
16 |
<h2><a name="mandelbrot">Mandelbrot</a></h2>
|
sawine@86
|
17 |
<img src="images/mandelbrots1.png" alt="mandelbrot screenshot" class="float-right" height="150" width="200" />
|
sawine@86
|
18 |
<ul>
|
sawine@86
|
19 |
<li>
|
sawine@86
|
20 |
<h4>Description</h4>
|
sawine@86
|
21 |
A Javascript-based Mandelbrot implementation.</li>
|
sawine@86
|
22 |
<li>
|
sawine@86
|
23 |
<h4>Version</h4>
|
sawine@86
|
24 |
Stable and slow with weird controls and ugly zooming.
|
sawine@86
|
25 |
<div class="download"><a href="mandelbrot.html">View in your browser</a></div>
|
sawine@86
|
26 |
</li>
|
sawine@86
|
27 |
</ul>
|
sawine@71
|
28 |
|
sawine@71
|
29 |
<h2><a name="tim">Tim</a></h2>
|
sawine@71
|
30 |
<ul>
|
sawine@71
|
31 |
<li>
|
sawine@71
|
32 |
<h4>Description</h4>
|
sawine@71
|
33 |
A console-based head-on time recording tool, because time is money.</li>
|
sawine@71
|
34 |
<li>
|
sawine@71
|
35 |
<h4>Version</h4>
|
sawine@71
|
36 |
A stable prototype, no output generation yet.
|
sawine@71
|
37 |
<div class="download"><a href="downloads/tim.zip">
|
sawine@71
|
38 |
Download Tim (Python and SQLite3 required)</a></div></li>
|
sawine@71
|
39 |
</ul>
|
sawine@71
|
40 |
|
sawine@71
|
41 |
<h2><a name="cau">Cau</a></h2>
|
sawine@71
|
42 |
<img src="images/cau.png" alt="cau screenshot" class="float-right" height="150" width="200" />
|
sawine@71
|
43 |
<ul>
|
sawine@71
|
44 |
<li>
|
sawine@71
|
45 |
<h4>Description</h4>
|
sawine@71
|
46 |
Is bad PI-approximation good enough? A cellular automaton-based PI-approximation machine with Tkinter-based visualisation.</li>
|
sawine@71
|
47 |
<li>
|
sawine@71
|
48 |
<h4>Version</h4>
|
sawine@71
|
49 |
Working, approximating, slowly visualising.
|
sawine@71
|
50 |
<div class="download"><a href="downloads/cau.zip">
|
sawine@71
|
51 |
Download Cau (Python and Tkinter required)</a></div></li>
|
sawine@71
|
52 |
</ul>
|
sawine@71
|
53 |
|
sawine@71
|
54 |
<h2><a name="sml">SML</a></h2>
|
sawine@71
|
55 |
<ul>
|
sawine@71
|
56 |
<li>
|
sawine@71
|
57 |
<h4>Description</h4>
|
sawine@71
|
58 |
A simple Simple Modal Logic library doing all kinds of reductions including Modal Conjunctive Normal Form. It also features DIMACS output and a satisfiability test via MiniSat2.</li>
|
sawine@71
|
59 |
<li>
|
sawine@71
|
60 |
<h4>Version</h4>
|
sawine@71
|
61 |
Reliable version except for features noted as alpha. Parser has too much personality.
|
sawine@71
|
62 |
<div class="download"><a href="downloads/sml.zip">
|
sawine@71
|
63 |
Download SML (Python and MiniSat2 required)</a></div></li>
|
sawine@71
|
64 |
</ul>
|
sawine@71
|
65 |
|
sawine@71
|
66 |
<h2><a name="netchannel">NetChannel</a></h2>
|
sawine@71
|
67 |
<ul>
|
sawine@71
|
68 |
<li>
|
sawine@71
|
69 |
<h4>Description</h4>
|
sawine@71
|
70 |
NetChannel is a simple Python object for message-based network communication
|
sawine@71
|
71 |
on the TCP/IP stack. NetChannel is based on stateful sessions for improved performance.</li>
|
sawine@71
|
72 |
<li>
|
sawine@71
|
73 |
<h4>Version</h4>
|
sawine@71
|
74 |
A stable prototype.
|
sawine@71
|
75 |
<div class="download"><a href="downloads/netchannel.zip">
|
sawine@71
|
76 |
Download NetChannel (Python required)</a></div></li>
|
sawine@71
|
77 |
</ul>
|
sawine@71
|
78 |
|
sawine@71
|
79 |
<h2><a name="eden">Eden Plotter</a></h2>
|
sawine@71
|
80 |
<img src="images/edenplotters1.png" alt="eden plotter" class="float-right" height="150" width="200" />
|
sawine@71
|
81 |
<ul>
|
sawine@71
|
82 |
<li>
|
sawine@71
|
83 |
<h4>Description</h4>
|
sawine@71
|
84 |
Eden Plotter or Eden One is a quick prototype for my genetic programming routines.
|
sawine@71
|
85 |
It approximates a given function by the methods of GP.</li>
|
sawine@71
|
86 |
<li>
|
sawine@71
|
87 |
<h4>Version</h4>
|
sawine@71
|
88 |
An unendurable slow prototype.
|
sawine@71
|
89 |
<div class="download"><a href="downloads/eden.zip">
|
sawine@71
|
90 |
Download Eden Plotter (Python required)</a></div></li>
|
sawine@71
|
91 |
</ul>
|
sawine@71
|
92 |
|
sawine@71
|
93 |
<h2><a name="anq">ANQ</a></h2>
|
sawine@71
|
94 |
<ul>
|
sawine@71
|
95 |
<li>
|
sawine@71
|
96 |
<h4>Description</h4>
|
sawine@71
|
97 |
ANQ is a testing environment for distributed algorithms. It provides a
|
sawine@71
|
98 |
centralised and convenient way of organising runtime dynamic
|
sawine@71
|
99 |
topologies, gives full control over the initialisation and flow of the
|
sawine@71
|
100 |
algorithm and helps in tracking the current node states by visualising
|
sawine@71
|
101 |
the node reports on the OpenGL graph.</br>
|
sawine@71
|
102 |
ANQ builds on the ANQ Protocol which can be optionally extended on
|
sawine@71
|
103 |
special needs for the algorithm to be tested. The ANQ Master is written
|
sawine@71
|
104 |
in C# using Windows Forms and OpenGL. Observer, Hotbed and the example
|
sawine@71
|
105 |
Node were developed in Python.
|
sawine@71
|
106 |
</li>
|
sawine@71
|
107 |
</ul>
|
sawine@71
|
108 |
<img src="images/anqs3.png" alt="anq" class="float-right" height="130" width="200" />
|
sawine@71
|
109 |
<img src="images/anqs2.png" alt="anq" class="float-right" height="130" width="200" />
|
sawine@71
|
110 |
<ul>
|
sawine@71
|
111 |
<li>
|
sawine@71
|
112 |
<h4>Version Antquarium Prototype</h4>
|
sawine@71
|
113 |
Antquarium is the predecessor of ANQ. It was an extended course assignment and serves as a prototype for ANQ.
|
sawine@71
|
114 |
<div class="download"><a href="downloads/antquarium.zip">
|
sawine@71
|
115 |
Download Antquarium for Windows (Python and .Net 2.0 required)</a></div>
|
sawine@71
|
116 |
</li>
|
sawine@71
|
117 |
<li>
|
sawine@71
|
118 |
<h4>Version</h4>
|
sawine@71
|
119 |
Stable version missing features like flow and runtime topology control.
|
sawine@71
|
120 |
</li>
|
sawine@71
|
121 |
</ul>
|
sawine@71
|
122 |
|
sawine@71
|
123 |
<h2><a name="theme_blocks">Theme Blocks</a></h2>
|
sawine@71
|
124 |
<img src="images/themeblockss1.png" alt="theme blocks" class="float-right" height="150" width="200" />
|
sawine@71
|
125 |
<ul>
|
sawine@71
|
126 |
<li>
|
sawine@71
|
127 |
<h4>Gameplay</h4>
|
sawine@71
|
128 |
A traditional gameplay most people will be familiar with.
|
sawine@71
|
129 |
You have blocks falling down, you have a highscore.
|
sawine@71
|
130 |
</li>
|
sawine@71
|
131 |
<li>
|
sawine@71
|
132 |
<h4>Features</h4>
|
sawine@71
|
133 |
<ul><li>Online highscore list</li><li>Hardware accelerated graphics</li><li>Fullscreen and windowed mode</li><li>Two colour themes: black and white</li><li>Anti-aliasing support</li></ul>
|
sawine@71
|
134 |
</li>
|
sawine@71
|
135 |
<li>
|
sawine@71
|
136 |
<h4>Requirements</h4>
|
sawine@71
|
137 |
<ul><li>Microsoft Windows XP or Vista</li><li>Graphics card supporting OpenGL 1.3 or higher</li><li>One keyboard with at least the arrow keys working</li></ul>
|
sawine@71
|
138 |
<div class="download"><a href="downloads/ThemeBlocksSetup.exe">Download Theme Blocks (1.4MB)</a></div>
|
sawine@71
|
139 |
</li>
|
sawine@71
|
140 |
</ul>
|
sawine@71
|
141 |
|
sawine@71
|
142 |
<h2><a name="pyng_pong">Pyng Pong</a></h2>
|
sawine@71
|
143 |
<img src="images/pyngpongs1.png" alt="pyng pong screenshot" class="float-right" height="149" width="200" />
|
sawine@71
|
144 |
<ul>
|
sawine@71
|
145 |
<li>
|
sawine@71
|
146 |
<h4>Gameplay</h4>
|
sawine@71
|
147 |
Two bats, one ball...
|
sawine@71
|
148 |
</li>
|
sawine@71
|
149 |
<li>
|
sawine@71
|
150 |
<h4>Features</h4>
|
sawine@71
|
151 |
<ul><li>Three AI difficulty levels</li><li>Endless gameplay, play till you're bored!</li></ul>
|
sawine@71
|
152 |
<div class="download"><a href="downloads/PyngPongSetup.exe">
|
sawine@71
|
153 |
Download Pyng Pong for Windows (2.4MB)</a></div>
|
sawine@71
|
154 |
<div class="download"><a href="downloads/pyngpong.zip">
|
sawine@71
|
155 |
Download Pyng Pong Source (Python + PyGame needed) (0.4MB)</a></div>
|
sawine@71
|
156 |
</li>
|
sawine@71
|
157 |
</ul>
|
sawine@71
|
158 |
|
sawine@71
|
159 |
<h2><a name="klangbild">Klangbild</a></h2>
|
sawine@71
|
160 |
<img src="images/klangbilds1.png" alt="klangbild" class="float-right" height="150" width="200" />
|
sawine@71
|
161 |
<ul>
|
sawine@71
|
162 |
<li>
|
sawine@71
|
163 |
<h4>Gameplay</h4>
|
sawine@71
|
164 |
There is no gameplay yet, it's a prototype for an audio-visual puzzle game.
|
sawine@71
|
165 |
</li>
|
sawine@71
|
166 |
<li>
|
sawine@71
|
167 |
<h4>Features</h4>
|
sawine@71
|
168 |
<ul><li>Drag, create and remove sound sources</li><li>Height of placement sets the sound pitch</li></ul>
|
sawine@71
|
169 |
<div class="download"><a href="downloads/klangbild.zip">
|
sawine@71
|
170 |
Download Klangbild (Python and PyGlet required)</a></div>
|
sawine@71
|
171 |
</li></ul>
|
sawine@71
|
172 |
|