-
Notifications
You must be signed in to change notification settings - Fork 0
/
Orteil's Stuff.htm
594 lines (506 loc) · 46.5 KB
/
Orteil's Stuff.htm
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
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
<!DOCTYPE html>
<!-- saved from url=(0033)http://orteil.dashnet.org/gamegen -->
<html><script type="text/javascript" async="" src="./Orteil's Stuff_files/ga.js"></script><script>var GA_googleFillSlot=GA_googleFetchAds=GA_googleAddSlot=GS_googleEnableAllServices=GS_googleAddAdSenseService=function(){};</script><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Orteil's Stuff</title>
<meta name="description" content="Orteil's Stuff">
<meta name="viewport" content="width=1100">
<meta charset="UTF-8">
<script async="" src="./Orteil's Stuff_files/cloudflare.min.js"></script><script type="text/javascript">
//<![CDATA[
try{if (!window.CloudFlare) {var CloudFlare=[{verbose:0,p:0,byc:0,owlid:"cf",bag2:1,mirage2:0,oracle:0,paths:{cloudflare:"/cdn-cgi/nexp/dokv=abba2f56bd/"},atok:"5d7bfde366dc2124ac01cefb9114bf5a",petok:"e9836e4866fcf37b09f78cdb942efcea094583ec-1404608711-1800",zone:"dashnet.org",rocket:"0",apps:{"ga_key":{"ua":"UA-29324474-2","ga_bs":"2"},"abetterbrowser":{"ie":"8"}}}];!function(a,b){a=document.createElement("script"),b=document.getElementsByTagName("script")[0],a.async=!0,a.src="//ajax.cloudflare.com/cdn-cgi/nexp/dokv=97fb4d042e/cloudflare.min.js",b.parentNode.insertBefore(a,b)}()}}catch(e){};
//]]>
</script>
<link rel="shortcut icon" href="http://orteil.dashnet.org/favicon.ico">
<!-- All of this here fine code is (c) Orteil -->
<!-- ORIGINAL HTML DO NOT STEAL -->
<style type="text/css">
/* css reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
html
{
height:100%;
}
body
{
background:#222;
color:#fff;
font-size:10px;
font-family:Verdana,Arial,sans-serif;
height:100%;
background:black;
}
a
{
color:#39f;
text-decoration:none;
outline:none;
text-shadow:0px 1px 0px #000;
transition: color 0.2s,text-shadow 0.2s;
-moz-transition: color 0.2s,text-shadow 0.2s; /* Firefox 4 */
-webkit-transition: color 0.2s,text-shadow 0.2s; /* Safari and Chrome */
-o-transition: color 0.2s,text-shadow 0.2s; /* Opera */
}
a:hover
{
color:#fff;
text-shadow:0px 0px 4px rgba(255,255,255,0.5);
}
#content
{
background:url(css/blackcontentbg.png);
width:auto;
min-height:100%;
/*box-shadow:10px 0px 10px #000 inset;*/
padding:0px;
margin:0px;
margin-left:128px;
position:relative;
}
#contentinner {padding:1px;position:relative;}/* padding somehow necessary, don't ask */
nav
{
display:block;
width:120px;
min-height:100%;
background:url(css/blacknavbg.png);
position:relative;
float:left;
padding-right:8px;
z-index:10000000;
}
#navlinks
{
font-weight:bold;
margin-left:2px;
margin-bottom:4px;
color:#666;
text-decoration:underline;
}
#navlinks ul
{
font-size:9px;
margin-left:4px;
padding-left:2px;
border-left:1px solid #666;
font-weight:normal;
}
#navlinks li
{
padding:2px 0px;
}
#navlinks a
{
width:100%;
display:inline-block;
}
nav header a
{
text-align:center;
display:block;
padding:16px 4px;
font-family:'Oswald',Tahoma,sans-serif;
font-size:20px;
/*font-variant:small-caps;
font-family:Lucida Console,sans-serif;
letter-spacing:1px;
font-size:12px;
font-weight:bold;*/
text-shadow:0px 1px 0px #900,0px 0px 4px #000;
color:#f63;
background:url(css/colorband.png) repeat-y right 0px;
padding-right:11px;
width:112px;
}
nav #gizmo {position:absolute;top:-64px;width:120px;height:64px;background:url(css/gizmoshade.png) no-repeat bottom;}
nav #gizmo a {font-style:italic;display:block;position:absolute;bottom:2px;width:100%;text-align:center;font-size:9px;line-height:100%;cursor:pointer;color:#999;}
nav #footerpush {height:112px;}
nav footer
{
width:120px;
text-align:center;
position:absolute;
bottom:0px;
height:40px;
padding-top:8px;
display:block;
}
#twitter
{
background:url(css/twit.png) no-repeat 0px -24px;
display:inline-block;
height:20px;
padding-left:24px;
padding-top:4px;
}
#twitter:hover
{background-position:0px 0px;}
nav header
{border-bottom:1px solid #000;}
nav header,nav footer
{border-top:1px solid #000;}
#back2host
{width:100%;text-align:center;padding:4px 0px;font-size:9px;display:block;}
#skinpick
{color:rgba(255,255,255,0.5);font-variant:small-caps;font-weight:bold;width:100%;text-align:center;margin-top:-4px;padding-bottom:24px;}
.button,.squarePicker
{border:1px solid #000;box-shadow:0px -1px 0px rgba(255,255,255,0.5),0px 1px 1px 1px rgba(0,0,0,0.5),0px 1px 1px rgba(0,0,0,0.5) inset;margin:2px;padding:0px;background:#333;overflow:hidden;text-indent:-9999px;white-space:nowrap;cursor:pointer;position:relative;bottom:-6px;}
.button,.squarePicker:hover
{border-color:#fff;box-shadow:0px -1px 0px rgba(255,255,255,0.5),0px 0px 4px rgba(255,255,255,0.5),0px 1px 1px rgba(0,0,0,0.5) inset;}
.squarePicker
{width:12px;height:12px;}
</style>
<!--[if lt IE 7]>
<style type="text/css">
nav,#content
{height:100%;}
</style>
<![endif]-->
<!--<link type="text/css" rel="stylesheet" href="" id="moreCSS" />-->
<link href="./Orteil's Stuff_files/css" rel="stylesheet" type="text/css">
<script type="text/javascript">
function l(what) {return document.getElementById(what);}
function Choose(arr) {return arr[Math.floor(Math.random()*arr.length)];}
//unused
Skins=[];
Skins[1]='';
Skins[2]='css/skinwhite.css';
function setSkin(what) {l('moreCSS').setAttribute('href',Skins[what]);}
function GetActiveLink()
{
//if the page we're on is also a link in the navbar, then color that link white
var url=document.URL.split('/');
url=url[url.length-1];
url=url.split('?');
url=url[0];
url=url.split('.');
url=url[0];
var navLinks=l('navlinks').getElementsByTagName('a');
for (var i=0;i<navLinks.length;i++)
{
var thisLink=navLinks[i].href.split('/');
thisLink=thisLink[thisLink.length-1];
if (thisLink==url) navLinks[i].style.color='#fff';
}
}
function Startup()
{
l('header').style.backgroundPosition='right '+Math.floor(Math.random()*512)+'px';
GetActiveLink();
}
Gizmo={};
</script>
<!-- load a random gizmo from the /gizmos directory (you can force a specific gizmo by adding ?gizmo=filename to the url, without the .js) -->
<script type="text/javascript" src="./Orteil's Stuff_files/haikugen.js"></script>
<script>
if (Gizmo.Play) document.addEventListener('DOMContentLoaded',Gizmo.Play,false);
document.addEventListener('DOMContentLoaded',Startup,false);
</script>
<script type="text/javascript">
/* <![CDATA[ */
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-29324474-2']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
(function(b){(function(a){"__CF"in b&&"DJS"in b.__CF?b.__CF.DJS.push(a):"addEventListener"in b?b.addEventListener("load",a,!1):b.attachEvent("onload",a)})(function(){"FB"in b&&"Event"in FB&&"subscribe"in FB.Event&&(FB.Event.subscribe("edge.create",function(a){_gaq.push(["_trackSocial","facebook","like",a])}),FB.Event.subscribe("edge.remove",function(a){_gaq.push(["_trackSocial","facebook","unlike",a])}),FB.Event.subscribe("message.send",function(a){_gaq.push(["_trackSocial","facebook","send",a])}));"twttr"in b&&"events"in twttr&&"bind"in twttr.events&&twttr.events.bind("tweet",function(a){if(a){var b;if(a.target&&a.target.nodeName=="IFRAME")a:{if(a=a.target.src){a=a.split("#")[0].match(/[^?=&]+=([^&]*)?/g);b=0;for(var c;c=a[b];++b)if(c.indexOf("url")===0){b=unescape(c.split("=")[1]);break a}}b=void 0}_gaq.push(["_trackSocial","twitter","tweet",b])}})})})(window);
/* ]]> */
</script>
<style type="text/css">.cf-hidden { display: none; } .cf-invisible { visibility: hidden; }</style></head>
<body>
<nav>
<a id="back2host" href="http://dashnet.org/">«Back to Dashnet.org</a>
<!--<div id="skinpick">Skin : <button id="skin1" class="squarePicker" onclick="setSkin(1)" type="button" style="background-color:#333;">B</button><button id="skin2" class="squarePicker" onclick="setSkin(2)" type="button" style="background-color:#ccc;">W</button></div>-->
<header>
<a href="http://orteil.dashnet.org/" id="header" style="background-position: 100% 291px;">Orteil's Stuff</a>
</header>
(work in progress~)
<ul id="navlinks">
<li><a href="http://orteil.dashnet.org/">Home</a></li>
<li><a href="http://orteil.dashnet.org/about">About</a></li>
<li>
<div>Toys</div>
<ul>
<li><a href="http://orteil.dashnet.org/nested">Nested</a></li>
<li><a href="./Orteil's Stuff_files/Orteil's Stuff.htm" style="color: rgb(255, 255, 255);">Game Idea Generator</a></li>
<li><a href="http://orteil.dashnet.org/callmeshirley">Call me Shirley</a></li>
<li><a href="http://orteil.dashnet.org/lsystem">Turtle Toy</a></li>
</ul>
</li>
<li>
<div>Other</div>
<ul>
<li><a href="http://filterforge.com/filters/author9648-page1.html" target="_blank" rel="noreferrer">Filter Forge</a></li>
<li><a href="http://orteil.deviantart.com/" target="_blank" rel="noreferrer">deviantArt</a></li>
</ul>
</li>
</ul>
<!-- this is the ad it is really neat pls dont block we need it for food -->
<script async="" src="http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- OrtFrame -->
<ins class="adsbygoogle" style="display:inline-block;width:120px;height:240px" data-ad-client="ca-pub-8491708950677704" data-ad-slot="9667157692"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
<div id="footerpush"></div>
<footer>
<div id="gizmo"><a style="bottom:2px;right:2px;text-align:right;font-size:9px;" onclick="Gizmo.Generate();">The bee sings the spring<br>The hill reveals the father<br>Soon, the water calls.</a></div>
© Orteil, 2012<br>
<a id="twitter" href="http://twitter.com/orteil42" target="_blank" rel="noreferrer">@orteil42</a>
</footer>
</nav>
<div id="content">
<div id="contentinner">
<style>
#content
{
color:#fff;
font-family:Georgia,serif;
height:100%;
min-height:auto;
}
#content a
{
color:#ddd;
text-decoration:none;
outline:none;
transition: text-shadow 0.5s;
-moz-transition: text-shadow 0.5s; /* Firefox 4 */
-webkit-transition: text-shadow 0.5s; /* Safari and Chrome */
-o-transition: text-shadow 0.5s; /* Opera */
}
#content a:hover
{
color:#fff;
text-shadow:0px 0px 4px #999;
}
#content a.insane:hover
{
color:#fff;
text-shadow:0px 0px 4px #fff,2px -2px 2px #600,-2px 2px 2px #006;
}
#contentinner
{
display:table;
width:100%;
height:100%;
margin-bottom:-96px;
min-height:96px;
padding:0px;
}
#text
{
font-family:'Oswald',Tahoma,sans-serif;
font-size:26pt;
display:table-cell;
vertical-align:middle;
text-align:center;
}
#tools
{
font-size:10pt;
position:absolute;
left:0px;
top:0px;
}
#sanity
{
cursor:pointer;
opacity:0.5;
position:relative;
top:8px;
left:10px;
padding:0px;
float:left;
}
#sanity * {cursor:pointer;margin:0px;}
#sanity:hover {opacity:1;}
#sanity label {position:relative;top:-2px;}
#seed
{
float:left;
position:relative;
top:2px;
left:4px;
opacity:0.5;
}
#seed:hover {opacity:1;}
#log
{
float:left;
display:inline-block;
overflow:hidden;
width:240px;
height:20px;
background:#333;
border:1px solid #666;
color:transparent;
font-family:Tahoma,sans-serif;
padding:0px;
font-size:10px;
transition: width 0.5s, height 0.5s, color 0.5s;
-moz-transition: width 0.5s, height 0.5s, color 0.5s; /* Firefox 4 */
-webkit-transition: width 0.5s, height 0.5s, color 0.5s; /* Safari and Chrome */
-o-transition: width 0.5s, height 0.5s, color 0.5s; /* Opera */
}
#log:hover
{
width:240px;
height:240px;
overflow-y:scroll;
color:#fff;
}
#log:before
{display:block;content:'Log';color:#fff;padding:4px 4px 6px 4px;width:32px;text-align:center;}
#log div
{margin:0px;padding:2px 6px;}
#log div:nth-child(odd)
{background:#222;}
</style>
<div id="text"><a href="javascript:Generate();" class="sane">An adventure game where you challenge spider people in the modern world.</a></div><div id="tools"><div id="log"><div>• An adventure game where you challenge spider people in the modern world.</div><div>• A simulation game where you experiment on nested universes ad nauseam.</div><div>• A real-time strategy game where you rank asteroids with a passive-aggressive sidekick.</div><div>• A sim game where you learn to accept game mechanics and you can summon your spirit animal.</div><div>• An indie game where you toss spaceships in alphabetical order.</div><div>• A strategy game where you learn to love animals and the game reacts differently to how you play it.</div><div>• A real-time strategy game where you collect animals with a shape-shifting sidekick.</div><div>• A puzzle game where you annoy kittens to make dollah.</div><div>• A shooting game where you trade brains but you keep randomly teleporting.</div><div>• A tycoon game where you pilot spaceships with slugs and you can create miracles and curses.</div><div>• An action game where you bribe fashion designers to make a business.</div><div>• A god game where you heal emo kids with a shape-shifting sidekick.</div><div>• A god game where you print absolutely everything with guns.</div><div>• An artsy game where you discover blobs starting from nothing.</div><div>• A real-time strategy game where you mine windows under the time limit.</div><div>• A turn-based strategy game where you stack trees after landing on a mysterious planet.</div><div>• A social media game where you point your gun at the forces of evil TO THE MAX.</div><div>• An FPS where you wander in search of spiders to prevent an evil plot.</div><div>• An arcade game where you drive tanks with internet memes and the game reacts differently depending on who plays it.</div><div>• A browser game where you draw citadels and buy extra content with real money.</div><div>• An action game where you touch things using diplomacy.</div><div>• An adventure game where you embiggen other worlds with too many sidekicks.</div><div>• An arcade game where you commit war crimes with DNA in a single closed room.</div><div>• A browser game where you kiss enchanted furniture with other survivors.</div><div>• A role-playing game where you shave hats and you lead an army of insectoids.</div><div>• A shooting game where you explore emotions and you can use the corpses in creative ways.</div><div>• An MMO where you raise bubbles and you steal the powers of your defeated enemies.</div><div>• A strategy game where you generate castles but there are no humans.</div><div>• A role-playing game where you reinvent bunnies to unlock the next level.</div><div>• An artsy game where you save the world from charts and you have superhuman luck.</div><div>• An arcade game where you mine ore from diamonds through commerce.</div><div>• An action game where you build the human body to forge the sacred sword.</div><div>• A god game where you defeat clothing items in the lava kingdom.</div><div>• An MMO where you save universes to unlock achievements.</div><div>• A god game where you choose werewolves to prevent the fabric of reality from unravelling.</div><div>• A turn-based strategy game where you eradicate kittens and it's WAY retro.</div><div>• A sim game where you save the world with charts with kill-streak bonuses.</div><div>• A mobile game where you design plants to stop a meteorite.</div><div>• A tycoon game where you club orcs but you don't play a big role in the story so you can actually do pretty much whatever you want.</div><div>• A simulation game where you hide from sliders to get big.</div><div>• A turn-based strategy game where you photograph islands while telling jokes.</div><div>• A simulation game where you miss words with a pickaxe.</div><div>• A turn-based strategy game where you solve feelings with the power of baking.</div><div>• A browser game where you fold heaven and you have god-like powers.</div><div>• A war game where you murder exotic fruits and you learn a thing ot two along the way.</div><div>• An arcade game where you break unknown worlds and you keep jumping through windows.</div><div>• A war game where you rename family members in the 40s.</div><div>• An FPS where you manage similes and you can't stop gaining powers.</div><div>• An adventure game where you fix soldiers with lots of customization.</div><div>• An indie game where you paint spheres to make dollah.</div><div>• An arcade game where you bury pointless wars and you can customize your house.</div><div>• An action game where you challenge paradoxes with uncountable legions.</div><div>• An MMO where you stomp on princesses with mutants.</div><div>• An indie game where you gravitate around princes and princesses (it's not really a game).</div><div>• A social media game where you burn witches while wearing a top-hat.</div><div>• A role-playing game where you design ninjas and it's WAY retro.</div><div>• An arcade game where you avoid sentient plants competitively.</div><div>• An indie game where you annoy temples through the seasons.</div><div>• An artsy game where you befriend pregnancy to establish your brand.</div><div>• A simulation game where you find metaphors and your sidekick is the bad guy.</div><div>• An experimental game where you create dreams and everybody in the game speaks in broken english.</div><div>• An adventure game where you chop up resources in an abandoned facility.</div><div>• A mobile game where you miss dark wizards in a fantasy world.</div><div>• An arcade game where you grow something different for a contest.</div><div>• A simulation game where you fall in love with dinosaurs without blinking.</div><div>• A mobile game where you bribe books but you gradually turn into a monster.</div><div>• An MMO where you breed bitmaps to get big.</div><div>• A turn-based strategy game where you dress up natural disasters by altering your body.</div><div>• An MMO where you go to school with hellhounds and loot sweet gear.</div><div>• A real-time strategy game where you nuke abandoned towns with monsters.</div><div>• A war game where you build factories using diplomacy.</div><div>• An action game where you beat up extra-dimensional entities and the bad guy is constantly stalking you wherever you go.</div><div>• A sim game where you heal towns to make everybody happy.</div><div>• An indie game where you dance to global economics with violence.</div><div>• An MMO where you free wizard kings in gigantic strongholds.</div><div>• A god game where you collect crystals from spaceships using advanced tactics.</div><div>• A tycoon game where you mix-and-match birds to score happiness points.</div><div>• A horror game where you interrogate robot zombies except you're one of the bad guys.</div><div>• A god game where you organize cities to make everybody happy.</div><div>• An adventure game where you explore dungeons full of bards to unravel the fabric of reality.</div><div>• An FPS where you stab puppies for liberty.</div><div>• A simulation game where you sell food chains until you're bored.</div><div>• An online game where you collect hats by answering questions.</div><div>• A real-time strategy game where you colonize dungeons through infiltration.</div><div>• An artsy game where you make movies with relationships from outside the game.</div><div>• A shooting game where you hunt soldiers with other survivors.</div><div>• A strategy game where you mine ore from historical places with clones.</div><div>• A sim game where you plop down farms to make a business.</div><div>• A browser game where you cook farm animals to reach the highscore.</div><div>• A role-playing game where you resurrect pixies in a wide-open procedural world.</div><div>• A tycoon game where you solve plants ad nauseam.</div><div>• A war game where you colonize strongholds with robots.</div><div>• A horror game where you have been contracted to kill space people and you can't stop running.</div><div>• A sim game where you mix-and-match hospitals until you own everything.</div><div>• A mobile game where you click on farm animals for the mega-bonus.</div><div>• An adventure game where you banish bards while upgrading your gear.</div><div>• A strategy game where you nuke other worlds using an expansive technology tree.</div><div>• An MMO where you go to war with goblins in the lava kingdom.</div><div>• An adventure game where you meet goblins to gain levels.</div><div>• An experimental game where you recognize appliances and near the end you ascend to godhood.</div><div>• An FPS where you do science on demi-gods to slow global warming.</div><div>• An arcade game where you memorize shoes to win points.</div><div>• A tycoon game where you grow charts ad infinitum.</div><div>• An MMO where you retrieve holy artifacts with ocean spirits and collect loot.</div><div>• A real-time strategy game where you conquer factories but you have limited control.</div><div>• A simulation game where you customize hospitals to create a sprawling industry.</div><div>• A god game where you wage war on caves with gunpowder.</div><div>• An artsy game where you hide from the human condition because of social differences.</div><div>• A simulation game where you mutate dogs to dominate the market.</div><div>• A sim game where you dress up livestock to score karma.</div><div>• An adventure game where you annoy turtles until the level cap.</div><div>• A sim game where you farm airplanes until you run out of funds.</div><div>• A puzzle game where you avoid magnets by answering questions.</div><div>• A horror game where you drive trucks with explosions and you have superpowers.</div><div>• An FPS where you save puppies with a passive-aggressive sidekick.</div><div>• An adventure game where you save the world from dwarves to warp spacetime.</div><div>• A war game where you investigate islands with mutated animals.</div><div>• A simulation game where you make police stations until you run out of funds.</div></div><div id="seed"><label for="seedinput">Seed : </label><input id="seedinput" onkeyup="SetSeed();" type="text"></div><div id="sanity" style="color: rgb(255, 255, 255);"><label for="toggle">Sanity : </label><input id="toggle" type="checkbox" checked="" onchange="ToggleSanity();"></div></div>
<script>
function l(what) {return document.getElementById(what);}
//Orteil's tasty Choose function
function C(arr) {return arr[Math.floor(Math.random()*arr.length)];}
chars='abcdefghijkmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
Seed='.';
for (var i=0;i<10;i++) {Seed+=C(chars);}
if (l('seedinput').value && l('seedinput').value.charAt(0)!='.') Seed=l('seedinput').value; else l('seedinput').value=Seed;
//seeded random number courtesy of http://davidbau.com/archives/2010/01/30/random_seeds_coded_hints_and_quintillions.html
(function(j,i,g,m,k,n,o){function q(b){var e,f,a=this,c=b.length,d=0,h=a.i=a.j=a.m=0;a.S=[];a.c=[];for(c||(b=[c++]);d<g;)a.S[d]=d++;for(d=0;d<g;d++)e=a.S[d],h=h+e+b[d%c]&g-1,f=a.S[h],a.S[d]=f,a.S[h]=e;a.g=function(b){var c=a.S,d=a.i+1&g-1,e=c[d],f=a.j+e&g-1,h=c[f];c[d]=h;c[f]=e;for(var i=c[e+h&g-1];--b;)d=d+1&g-1,e=c[d],f=f+e&g-1,h=c[f],c[d]=h,c[f]=e,i=i*g+c[e+h&g-1];a.i=d;a.j=f;return i};a.g(g)}function p(b,e,f,a,c){f=[];c=typeof b;if(e&&c=="object")for(a in b)if(a.indexOf("S")<5)try{f.push(p(b[a],e-1))}catch(d){}return f.length?f:b+(c!="string"?"\0":"")}function l(b,e,f,a){b+="";for(a=f=0;a<b.length;a++){var c=e,d=a&g-1,h=(f^=e[a&g-1]*19)+b.charCodeAt(a);c[d]=h&g-1}b="";for(a in e)b+=String.fromCharCode(e[a]);return b}i.seedrandom=function(b,e){var f=[],a;b=l(p(e?[b,j]:arguments.length?b:[(new Date).getTime(),j,window],3),f);a=new q(f);l(a.S,j);i.random=function(){for(var c=a.g(m),d=o,b=0;c<k;)c=(c+b)*g,d*=g,b=a.g(1);for(;c>=n;)c/=2,d/=2,b>>>=1;return(c+b)/d};return b};o=i.pow(g,m);k=i.pow(2,k);n=k*2;l(i.random(),j)})([],Math,256,6,52);
Math.seedrandom(Seed);
function SetSeed() {Seed=l('seedinput').value;Math.seedrandom(Seed);Generate();}
String.prototype.Cap=function(){return this.charAt(0).toUpperCase()+this.slice(1);}//just put the first letter in uppercase yo
//okay so this whole thing is pretty straightforward and not as fancy and complex as it could have been
Genres=[];
function Genre(name,actions,things,goals)
{
this.name=name;
this.actions=actions;
this.things=things;
this.goals=goals;//not really goals anymore
Genres.push(this);
}
//yo no looky-loos
new Genre(
//why so many things in there
//I don't even like FPSs
['a shooting game','an action game','an FPS','a horror game'],
['kill','shoot','club','murder','stab','chop up','wrestle','kick','punch','slap','destroy','blow up','eradicate','begrudgingly join forces with','ally with','team up with','interrogate','do science on','use your powers on','save','ride horses with','drive cars with','drive tanks with','drive trucks with','ride bikes with','have been contracted to kill','assassinate','rob','bribe','hunt','poison','motivate','work on the self-esteem of','feel bad for','cheer up','go on a heist with','pilot spaceships with','listen to','hijack','goof around with','run after','smuggle','defeat','beat up','date','save the world from','time travel with','go back in time to kill','shout at','point your gun at','commit war crimes with','freeze','burn'],
['cars','cops','the police','the CIA','the president','thugs','criminals','gangsters','war criminals','helicopters','jeeps','superheroes','detectives','villains','monsters','babies','random people','civilians','innocent people','prisoners','explosions','bankers','space people','puppies','kittens','sharks','bears','gorillas','city guards','ninjas','knights','spies','soldiers','barbarians','aliens','rappers','conspiracy theorists','clowns','evil AIs','giant robots','war robots','crowbars','cosmonauts','extra-dimensional entities','ascended beings','demi-gods','wizards','cavemen','apes','mutants','zombies','mutant zombies','robots','robot zombies','mutant zombie robots','nazis','zombie nazis','robot nazis','zombie ghosts','cyborgs','hippies','terrorists','scientists','researchers','fashion designers','jazz singers','dinosaurs','giant crabs','cute girls','hot boys','famous people','mascots','your long-lost relatives','asteroids','the forces of good','the forces of evil'],
['to make dollah','to get big','to make a name for yourself','to save the world','to save the universe','to investigate a conspiracy','to prevent an evil plot','to solve mysteries','to make them pay','because they looked at you weird','(that\'ll show them)','to get your revenge','to avenge your girlfriend','to become the next big thing','to be a bad enough dude','to unlock achievements','for achievements','in outer space','in a black hole','in the future','in the third world','in the 40s','in the 50s','in the 70s','in the 90s','in the year 3000','in the year 10,000','in the \'nads','in Russia','in Europe','in China','in North Korea','in South Africa','in America','in Australia','on Mars','on the Moon','after landing on a mysterious planet','in a frozen wasteland','in the desert','underwater','in an abandoned facility','inside a gigantic terrarium','in a single closed room','in a graveyard','in a junkyard','in the cyberspace','in a wizard tower','in a network of underground bunkers','in a laboratory','in a secret research facility','in a lush grassland','while stranded on an island','on an uncharted island','in an empty school','in a historical monument','in hilarious locations','on the set of a movie','until the sequel','to find love','to impress your date','for freedom','for liberty','because it\'s the right thing to do','because, I mean, why the hell not','(don\'t question it)','and you have to find out why','and the reason why becomes less and less obvious throughout the game','to accelerate global warming','to slow global warming','because aliens','because Hitler','and go back in time','TO THE MAX','TO THE EXTREME','(with day 1 DLC)','in a sandbox world','and also it\'s kind of a dating sim','and you have to be stealthy and stuff','with kill-streak bonuses','but then skeletons','but you have no arms','except halfway through you realize you\'re really not all that important to the plot','but you don\'t play a big role in the story so you can actually do pretty much whatever you want','and your sidekick is a bird','with a snarky sidekick','with a passive-aggressive sidekick','with a slighly racist sidekick','and your sidekick is the bad guy','except you\'re the sidekick','with a shape-shifting sidekick','with too many sidekicks','and everyone in the game hates you','and you have superpowers','with gigantic boss battles','(it gets weirder)','(it gets very dark very fast)','(it\'s pretty light-hearted)','(also, sports)','and also you are a bear','and you can\'t stop running','but you keep randomly teleporting','except the game keeps messing around with your perception','except you\'re 3 years old','but you\'re an old person','until you feel regret','and you can\'t stop gaining powers','but you keep jumping forward in time','but bees are trying to stop you','with the addition of zombies','and everybody\'s a robot','but there are no humans','and you\'re the last of your kind','but only a handful of people remain','with other survivors','and magic has returned to the world','and you\'re a wacky animal','and you have way more limbs than necessary','and you\'re a spider','and you can summon your spirit animal','but it\'s all explained in the end','and it never ends','and you gotta go fast','as slowly as possible','and it\'s totally adorable','and it\'s scary as hell','and you\'re all alone','and everybody\'s afraid of you','with lots of customization','and your only weapon is mini-nukes','but everything you touch explodes','and everything you touch turns into more enemies','and your arms are chainsaws','and also you are a bird','and you\'re an unfrozen caveman','and you\'re also an ancient wizard','but the bad guy was just trying to help you','except you\'re really unlucky','and you have superhuman luck','except you\'re one of the bad guys','like in the movie','and the name and biography of everybody you kill is displayed onscreen','and corpses don\'t disappear','and you can use the corpses in creative ways','during the apocalypse','before the apocalypse','after the apocalypse','until the end of the world','and you steal the powers of your defeated enemies','and you have the power to become famous at will','and you can erect walls at will','and also you have telepathic powers','and you have stretchy powers','but you\'re composed of tiny critters','and the bad guy is constantly stalking you wherever you go','and there\'s a terrifying monster slowly making its way towards you during the whole game','and you only have a few minutes to live','while looking absolutely fantastic','and you keep jumping through windows','and you can\'t stop breaking stuff','but you kill the people you try to help','but you\'re a ghost','and you\'re a cyborg','and you\'re addicted to robot implants','with unpredictable powers','while setting fire to stuff','and you hate every single minute of it','- legally','to stop a meteorite','for world peace','with fire','with guns','until the universe explodes','until you die','until you\'re the last person alive','non-violently']
);
new Genre(
['a tycoon game','a sim game','a simulation game','a god game'],
['manage','sell','buy','trade','reticulate','drag and drop','displace','mutate','splice','mix-and-match','build','customize','herd','terraform','regulate','plop down','create','make','invent','grow','piece together','hatch','raise','farm','write about','draw','distribute','craft','compile','solve','monetize','design','mix','experiment on','experiment with','copy-paste','organize','dress up','train','breed','feed','grow','grow stuff on','cure','heal','fix','tame'],
['trees','people','humans','creatures','monsters','customers','animals','plants','birds','fish','cats','dogs','horses','ants','bees','monkeys','squids','livestock','aquariums','stockbrokers','farms','crops','towns','cities','countries','charts','businesses','railroads','vehicles','ecosystems','food chains','solar systems','universes','nested universes','timelines','nested timelines','sport teams','babies','hospitals','schools','restaurants','police stations','trains','airplanes','roads','resources','furniture','tasks','family members','chores','industries','islands','limbs','genetics','DNA','nukes','various biomes'],
['to make money','to save the environment','to make everybody happy','to become successful','to score happiness points','to score karma','to establish your brand','to dominate the market','to create a sprawling industry','to make a business','until you\'re bored','ad infinitum','ad nauseam','until you run out of funds','until you own everything','and you have infinite money','and the sky isn\'t even the limit']
);
new Genre(
['a strategy game','a turn-based strategy game','a real-time strategy game','a war game','a god game'],//both this and the previous one can be god games
['go to war with','wage war on','unite','lead','build','destroy','conquer','invade','colonize','discover','explore','trade with','bomb','nuke','lead the rebels in','make peace with','investigate','rename','collect gold from','collect crystals from','mine ore from'],
['countries','nations','planets','spaceships','castles','cities','space cities','strongholds','towers','dungeons','citadels','kingdoms','abandoned towns','cloud cities','moving cities','underwater cities','unknown worlds','other worlds','parallel worlds','other dimensions','alien worlds','heaven','hell','mythological places','historical places','islands','sanctuaries','temples','ruins','factories','caves'],
['with a few armed men','with uncountable legions','starting from a small group of settlers','starting from a small tribe','starting from nothing','using the nuclear power','using diplomacy','through commerce','using science','using an expansive technology tree','through cultural superiority','through religion','through infiltration','through terrorism','with nuclear warfare','with bio-terrorism','with forbidden experiments','with love','with friendship','through naval warfare','with stealth','using advanced tactics','with clones','with mutated animals','with cow-boys','with robots','with monsters','with businessmen','with mutants','with cyborgs','with tanks','with gunpowder','while spawning minions','by changing the terrain','by gaining god points','for victory','for glory','in the name of love','to live forever','to become the ruler of the world','to form an invincible empire','over a few thousand years','through several campaigns','before the end of the world','to prevent the end of the world','but you lead the forces of evil','and you lead an army of insectoids','but you have limited control','and you have god-like powers','and you can create miracles and curses','until you own everything']
);
new Genre(
['a puzzle game','an arcade game','a social media game','a mobile game','a browser game','an online game'],
['align','click on','match','throw','toss','fire pellets at','control','touch','stack','guess','memorize','rotate','swap','slide','avoid','drag and drop','tickle','race','challenge','collect','draw','unlock','cook','break','solve puzzles involving','collect','juggle'],
['gems','diamonds','gold nuggets','bricks','bubbles','squares','triangles','treasure','blobs','kitchen appliances','nondescript fruits','animals','birds','baby animals','farm animals','exotic fruits','sentient plants','your friends','shapes','jewels','letters','words','numbers','tokens','coins','eggs','hats','candy','chocolate','shoes','clothing items','princesses','blocks','cubes','asteroids','stars','balls','spheres','magnets','riddles'],
['to win points','to reach the highscore','to make virtual money','to buy virtual items','for the mega-bonus','to unlock bonus items','to earn tokens','to unlock the next level','with your friends','and buy extra content with real money','by answering questions','under the time limit','and you can customize your character','and you can customize your house']
);
new Genre(
['an adventure game','a role-playing game','an MMO'],
['slay','battle','vanquish','challenge','defeat','save the world with','banish','enslave','free','resurrect','meet','annoy','run away from','hide from','chase','encounter','must find','save the world from','must obtain collectible','go to school with','go to war with','retrieve holy artifacts with','hang out with','learn from','explore dungeons with','explore dungeons full of'],
['dragons','goblins','orcs','unicorns','monsters','creatures','spirits','forest spirits','ocean spirits','spirits of nature','mushrooms','turtles','knights','barbarians','town guards','ninjas','samurais','evil wizards','dark wizards','witches','ents','halflings','dwarves','elves','trolls','giants','gnomes','pixies','elementals','wyrms','sky worms','sky whales','cyclops','bats','vampires','spider people','reptilians','hellrats','hellhounds','shape-shifters','werewolves','werepigs','werefoxes','manbeasts','slimes','oozes','ghosts','ghouls','spiders','bunnies','enchanted furniture','golems','giant monsters','world-spanning abominations','eldritch monstruosities','wizard kings','princes','princesses','kings','queens','princes and princesses','kings and queens','necromancers','heroes','legendary warriors','paladins','bards','rangers','mages','priests','angels','demons','dinosaurs'],
['and explore the world','to save the princess','in a fantasy world','in space','in the modern world','in the future','in the deepest oceans','in the snowy mountains','in the lava kingdom','in the darkest caves','in gigantic strongholds','and collect treasure','and collect loot','and loot sweet gear','to gain levels','to prevent the fabric of reality from unravelling','to unravel the fabric of reality','to warp spacetime','while balancing your karma','while being torn between the forces of good and evil','while bards write songs about you','on a boat','on an airship','on an island','to forge the sacred sword','to become the king','with alchemy','with magic','in a wide-open procedural world','as the legends foretold','and fulfill prophecies','because thou must','until the level cap','while upgrading your gear','and it\'s very grindy']
);
new Genre(
//anything goes
//really anything
//you heard me
['an indie game','an experimental game','a student project','an artsy game'],
['color','paint','print','conceptualize','punch','explore','please','dance to','dance with','associate','click on','mindlessly click on','browse through','navigate','choose','pick','criticize','look at','stare at','watch','type','listen to','sing to','recognize','defy','find','run away from','hide from','target','win','lose','generate','randomize','jump on','bounce on','gravitate around','step on','stomp on','comment on','blog about','discuss','repeat','toggle','scroll','party with','bury','excavate','mine','acknowledge','downvote','notice','understand','misunderstand','blur','startle','shave','haunt','taunt','ostracize','seduce','touch','fondle','befriend','fight','analyze','overanalyze','deconstruct','break down','roll around','spend a rad time with','grow a beard with','fatten','embiggen','shrink','discover the beauty of','rethink game mechanics with','reattach bits of','miss','wander around a world without','wander in a world where everybody turned into','wander in search of','learn to love','fall in love with','experience the clumsiness of','suffer the mockery of','link','share','rank','fold','craft','knit','make movies with','write songs with','write poetry with','make music with','tickle','shrug at','photograph','breastfeed','gamify','rewrite','rethink','think about','reinvent','procedurally generate','stop breathing if you don\'t hug','stop breathing if you don\'t destroy','stop breathing if you don\'t find','hug','kiss','mingle with','learn to accept'],
['blocks','cubes','random worlds','procedurally-generated worlds','text','3D models','sound samples','bitmaps','the presidency','the government','the end of the world','conspiracy theories','secret societies','alternative lifestyles','drug laws','the human condition','gravity','religion','religious figures','nuns','tall dark strangers','dark and stormy nights','clichés','politics','society','art','literature','spelling mistakes','sports','history','global economics','the economy','death penalty','social issues','stem cells','fetuses','education','pointless wars','websites','random pictures of random people','pictures','videos','fanfic','essays','appliances','parameters','sliders','music','paradoxes','brains','souls','your soul','your family','your subconscious','yourself','me','rocks','pebbles','tunnels','mountains','forests','the ocean','the sky','the world','statues','things that look like you','insects','evolving creatures','DNA','organisms','chromosomes','colors','walls','doors','windows','magic cards','ropes','cupboards','books','encyclopedias','natural disasters','controversial topics','ingredients','music notes','pixels','jokes','puns','your sense of self-worth','ideas','concepts','things','the universe','individual atoms','the human body','moustaches','lists','game mechanics','allegories','metaphors','similes','symbols','maths','equations','social norms','gender roles','privileges','pregnancy','your phobias','awkwardness','the Internet','internet memes','artists','musicians','goths','emo kids','hipsters','autism','the elderly','photographs','food','flowers','clouds','clams','slugs','snails','black holes','bread','deities','gods','portals','the wind','dead bodies','the very fabric of reality','dreams','pop songs','regular expressions','the developer','sarcasm','the 4th wall','emotions','feelings','familiar sounds','familiar scents','the fundamental laws of the universe','the laws of physics','achievements','procrastination','lateral thought','boredom','depression','relationships','love','loneliness','celebrities','bloggers','game designers','nature','civilization','philosophy','life','absolutely everything','everybody','everything you cross','anything you want','something else','something different'],
['using your webcam','using your printer','- but like, it\'s totally atmospheric','while wearing a top-hat','wearing different costumes','in the dark','with your eyes closed','with 3D glasses','- but without sound','- in text form','(there\'s a board game too)','for a contest','in a deathmatch','and it\'s super old-timey','and it\'s WAY retro','and it\'s slick and futuristic and stuff','in eye-popping 3D','while holding your breath','without blinking','with violence','for fun','in alphabetical order','in new exciting ways','any way you want','over the course of a year','over several decades','through the seasons','while collecting them all','to work on your self-esteem','with no interactivity whatsoever','through the internet','in realtime','with geolocation','(it\'s not really a game)','in binary','metaphorically','symbolically','repetitively','competitively','(in beta)','in front of the whole world','and you gradually become beautiful','but you gradually turn into a monster','and you control light and darkness','and you can summon a variety of animals','and you can create a variety of objects','and you have different powers at different times','and everybody in the game speaks in broken english','and everybody is voiced by other players currently playing the game','and you play on the same world as everyone else','and near the end you ascend to godhood','and gravity doesn\'t exist','with astrology','with maths','with geometry','with quantum physics','and you can escape to other dimensions','with terraforming','with the power of baking','with a pickaxe','with a shovel','with an axe','with a magic wand','and also you push around blocks','while telling jokes','but you control the hero indirectly','and you can control everyone in the game indirectly','with the power of javascript','and you learn a thing ot two along the way','and the game won\'t stop scrolling','by reversing time','by controlling the flow of time','by changing the physical properties of things','by altering your body','by changing the rules of the game','from outside the game','by toying with gravity','by toying with physics','through social engineering','with meta game mechanics','ironically','unironically','randomly','with occasional jump-scares','and the game is stupidly linear','and you do that with only one button','but the controls are ridiculously difficult','and the graphics upgrade as you play','and the music gets progressibely worse','and there\'s a laughtrack','and there\'s an audience that reacts to your actions','but you\'re the clumsiest person ever','and the sound effects are gameplay hints','and the gameplay changes depending on when you\'re playing it','and the gameplay changes depending on where you\'re playing it','and the gameplay depends on the time of the day','and the game reacts differently to how you play it','and the game reacts differently depending on who plays it','and it\'s sort of a parody','- or so it seems','- with a twist','except it\'s all a dream','(it gets pretty meta)','(it gets kinda self-referential)','(and it\'s also a commentary on video games as a media)','because of social differences','to win the game','but doing so loses the game','or whatever']
);
//everything
allNames=[];
allActions=[];
allThings=[];
allGoals=[];
for (var i in Genres)
{
allNames=allNames.concat(Genres[i].name);
allActions=allActions.concat(Genres[i].actions);
allThings=allThings.concat(Genres[i].things);
allGoals=allGoals.concat(Genres[i].goals);
}
Sanity=1;
function ToggleSanity()
{
if (!l('toggle').checked)
{Sanity=0;l('sanity').style.color='#f00';}
else
{Sanity=1;l('sanity').style.color='#fff';}
}
function Generate()
{
var genre=C(Genres);
var str='';
if (Sanity) str=C(genre.name)+' where you '+C(genre.actions)+' '+C(genre.things)+' '+C(genre.goals)+'.';
//else str=C(C(Genres).name)+' where you '+C(C(Genres).actions)+' '+C(C(Genres).things)+' '+C(C(Genres).goals)+'.';
else str=C(allNames)+' where you '+C(allActions)+' '+C(allThings)+' '+C(allGoals)+'.';//better
str=str.Cap();
l('text').innerHTML=('<a href="javascript:Generate();" class="'+(Sanity?'sane':'insane')+'">'+str+'</a>');
l('log').innerHTML='<div>• '+str+'</div>'+l('log').innerHTML;
}
ToggleSanity();
Generate();
</script>
</div>
</div>
<!-- so yeah --></body></html>