aboutsummaryrefslogtreecommitdiff
path: root/documentation/bookmark/game_programming.md
blob: d04e0def159c878586a79e44ee2feafc1368cbb0 (plain)
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
# Random Number Generation

1. [Andrew Clifton - Don't generate, hash! (Or, how I learned to stop worrying and love SplitMix64)](https://www.youtube.com/watch?v=e4b--cyXEsM)

# Board game

1. [Ludology](https://ludology.libsyn.com/)

# Pattern

1. [Game Programming Patterns](http://gameprogrammingpatterns.com/)

# Path finding

1. [Friday Facts #317 - New pathfinding algorithm](https://factorio.com/blog/post/fff-317)

# Conduct

1. [Kawa - Yet Another Conduct Conversation: a history of conducts in roguelikes](https://www.youtube.com/watch?v=KLHJsJuJfYg)

# Rules

1. [Scott Kovach - Managing Game Logic With Rule Systems - Using Relational Programming to Build Games](https://www.youtube.com/watch?v=s9Wyn9BJJI4)

# Procedural generation

1. [Dungeon Map Generation with Locks and Keys](https://beta.aceparent.me/#/raids)
1. [Aaron Santos - Optimizing procgen parameters using mini-batch gradient descent](https://www.youtube.com/watch?v=TsDIUuEneo4)
1. [Brian Bucklew - Dungeon Generation via Wave Function Collapse](https://www.youtube.com/watch?v=fnFj3dOKcIQ)
1. [So you want to build a generator…](https://galaxykate0.tumblr.com/post/139774965871/so-you-want-to-build-a-generator)
1. [Spencer Egart - Procedurally Generated Ritual Spell Systems](https://www.youtube.com/watch?v=q4Tf0vf2kiI)
1. [Isaac Karth - Why Do You Want to Generate That? A Vocabulary For Talking About Procedural Generation](https://www.youtube.com/watch?v=MHEkE7nPuZc)

# User interaction

1. [Verb-noun vs noun-verb](https://simblob.blogspot.com/2019/10/verb-noun-vs-noun-verb.html)

# Network

1. https://github.com/librg/librg

# Noise

1. https://github.com/KdotJPG/New-Simplex-Style-Gradient-Noise
1. [Perlin noise](https://en.wikipedia.org/wiki/Perlin_noise)
1. [Gradient noise](https://en.wikipedia.org/wiki/Gradient_noise)
1. [Value noise](https://en.wikipedia.org/wiki/Value_noise)
1. [Simplex noise](https://en.wikipedia.org/wiki/Simplex_noise)
1. [OpenSimplex noise](https://en.wikipedia.org/wiki/OpenSimplex_noise)
1. [Worley noise](https://en.wikipedia.org/wiki/Worley_noise)

# Ethics

1. [Ethics in Game Design - PAX Prime 2012](https://www.youtube.com/watch?v=sIS5cJzeLGA)

# Grinding

1. [When Games Idolize Busywork](https://medium.com/@fischerdesign/when-games-idolize-busywork-8454bfe769ff)
1. [PAX West 2016 - The Grind - Full Panel](https://www.youtube.com/watch?v=32DCEzpcVEY)
1. [A Brief History of Leveling Systems](https://theludite.com/2014/08/03/a-brief-history-of-leveling-systems/)
1. [Leveling Systems Part Two: Where We Could Go From Here](https://theludite.com/2014/08/28/leveling-systems-part-two-where-we-could-go-from-here/)

# Engine

1. https://www.raylib.com/index.html
1. https://github.com/GoogleCloudPlatform/agones
1. https://luxeengine.com/
1. https://www.haroldserrano.com/blog/books-i-used-to-develop-a-game-engine
1. http://www.executionunit.com/blog/2017/07/14/in-defence-of-writing-your-own-engine/
1. http://vincentgarreau.com/particles.js/#default
1. http://www.npruehs.de/game-models-a-different-approach-part-2/
1. https://maikklein.github.io/post/shading-language-part1/
1. https://cuberite.org/
1. http://www.helixsoft.nl/articles/circle/sincos.htm
1. http://helm-engine.org/
1. http://regl.party/
1. https://github.com/lallassu/Qake
1. http://pcg.wikidot.com/
1. http://laurenslapre.nl/lapre_004.htm
1. http://journal.stuffwithstuff.com/2014/12/21/rooms-and-mazes/
1. https://shotsinshorts.com/top-javascript-engines-make-html5-desktop-mobile-games/
1. http://gamedevs.org/
1. http://clockwork.js.org/
1. http://arewegameyet.com/
1. https://www.inklestudios.com/ink/
1. https://godotengine.org/
1. https://castle-engine.io/index.php
1. https://www.rpginabox.com/
1. https://heaps.io/
1. https://codeparade.itch.io/marblemarcher
1. https://github.com/HackerPoet/MarbleMarcher
1. https://github.com/amzeratul/halley
1. https://github.com/ondras/rot.js
1. https://github.com/pupcraft/sucle
1. http://superpowers-html5.com/index.en.html

# Reference

1. [How to Make an RPG](https://howtomakeanrpg.com/)
1. https://mod.io/
1. https://www.amazon.com/Game-Engine-Black-Book-Wolfenstein/dp/1539692876
1. http://shaderbits.com/blog/octahedral-impostors/
1. https://godotengine.org/article/handling-axis-godot
1. https://interplayoflight.wordpress.com/2017/10/25/how-unreal-renders-a-frame/
1. http://www.jagregory.com/abrash-black-book/
1. http://docs.godotengine.org/en/3.0/tutorials/math/rotations.html
1. http://www.essentialmath.com/
1. http://higherorderfun.com/blog/2012/05/20/the-guide-to-implementing-2d-platformers/
1. https://github.com/Dvergar/awesome-haxe-gamedev

# Rendering

1. [Wired Elements](https://wiredjs.com/)
1. [The Graphics Codex](http://graphicscodex.com/)
1. [PIXELARTOR: Animation Tool for converting 3D models with animations to 2D sprite frames](https://github.com/Chleba/PIXELARTOR)
1. https://raytracing.github.io/
1. [WebGL2 Fundamentals](https://webgl2fundamentals.org/)
1. [Tiles to Curves: Fun With Voronoi Graphs (part 1)](https://www.gamedev.net/articles/programming/general-and-gameplay-programming/tiles-to-curves-fun-with-voronoi-graphs-part-1-r5150/)
1. [Lazy Incremental Computation for Efficient Scene Graph Rendering](https://www.cg.tuwien.ac.at/courses/RendEng/2015/RendEng-2015-11-16-paper2.pdf)
1. [3D Wireframes in SVG](https://prideout.net/blog/svg_wireframes/)
1. https://zzz.dog/
1. https://www.marmoset.co/posts/basic-theory-of-physically-based-rendering/
1. https://roughjs.com/
1. https://github.com/pshihn/rough
1. https://www.voxelquest.com/
1. https://github.com/google/filament
1. https://google.github.io/filament/Filament.md.html
1. https://voxeltoy.com/
1. [Oil on GlCanvas](https://www.shaderoo.org/?shader=FYLJFU)
1. http://voxeljs.com/
1. http://gameprogrammingpatterns.com/double-buffer.html
1. https://research.cs.wisc.edu/graphics/Gallery/NPRQuake/whatIsIt.html
1. http://www.realtimerendering.com/Real-Time_Rendering_4th-Real-Time_Ray_Tracing.pdf
1. https://webglfundamentals.org/
1. https://interplayoflight.wordpress.com/2018/09/30/readings-on-the-state-of-the-art-in-rendering/
1. https://prideout.net/blog/distance_fields/
1. http://graphics.cs.cmu.edu/projects/slang/
1. [ADOPTING LESSONS FROM OFFLINE RAY-TRACING TO REAL-TIME RAY TRACING FOR PRACTICAL PIPELINES](http://advances.realtimerendering.com/s2018/Pharr%20-%20Advances%20in%20RTR%20-%20Real-time%20Ray%20Tracing.pdf)
1. http://www.gamasutra.com/blogs/SvyatoslavCherkasov/20181023/329151/Graveyard_Keeper_How_the_graphics_effects_are_made.php
1. https://alain.xyz/blog/comparison-of-modern-graphics-apis
1. https://webkit.org/blog/8482/web-high-level-shading-language/
1. [Physically Based Rendering](http://www.pbr-book.org/3ed-2018/contents.html)
1. https://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-graphics-pipeline-2011-index/
1. https://www.hadean.com/blog/open-source-library-for-spatial-representations
1. [The inevitable volumetric future | Dan Tabar and Branislav Siles](https://www.youtube.com/watch?v=JHJ4TKJom88)
1. https://www.ronja-tutorials.com/2018/12/01/2d-shadows.html
1. https://ephtracy.github.io/
1. https://www.nebularender.com/
1. [An Explanation of the Rendering Equation](https://www.youtube.com/watch?v=eo_MTI-d28s)
1. [Non-Euclidean Worlds Engine](https://www.youtube.com/watch?v=kEB11PQ9Eo8)
1. [DeepSDF: Learning Continuous Signed Distance Functions for Shape Representation](https://arxiv.org/pdf/1901.05103v1.pdf)
1. [Slang – A Shader Compilation System forExtensible, Real-Time Shading](http://graphics.cs.cmu.edu/projects/renderergenerator/yong_he_thesis.pdf)
1. http://machinethink.net/blog/3d-rendering-without-shaders/
1. http://www.cs.cmu.edu/afs/cs/usr/sbk/www/phigs/phigs.html
1. http://www.realtimerendering.com/raytracinggems/
1. https://github.com/mckennapsean/wood-shader
1. https://spritestack.io/
1. http://blog.hvidtfeldts.net/index.php/2011/06/distance-estimated-3d-fractals-part-i/
1. https://github.com/oakes/play-cljc
1. [Physically Based Modeling: Principles and Practice](http://www.cs.cmu.edu/~baraff/sigcourse/)
1. https://sonicether.com/seus/
1. http://stephaniehurlburt.com/blog/2019/3/25/resources-for-learning-graphics-programming
1. [Principles of Lighting and Rendering with John Carmack at QuakeCon 2013](https://www.youtube.com/watch?v=IyUgHPs86XM)
1. http://math.hws.edu/graphicsbook/
1. https://blog.mecheye.net/2019/05/why-is-2d-graphics-is-harder-than-3d-graphics/
1. https://www.babylonjs.com/
1. https://github.com/lettier/3d-game-shaders-for-beginners
1. [What good are hundreds of lights without hundreds of shadows?](https://worldoffries.wordpress.com/2019/03/26/what-good-is-hundreds-of-lights-with-out-hundreds-of-shadows/)
1. [Ray Tracing with Metal](https://developer.apple.com/videos/play/wwdc2019/613/)

# Idea

1. [The Content Conundrum - Why So Many Games Feel Generic - Extra Credits](https://www.youtube.com/watch?v=NxX9sGhsbks)

# Camera

1. [Math for Game Programmers: Juicing Your Cameras With Math](https://www.youtube.com/watch?v=tu-Qe66AvtY)
1. https://jsantell.com/3d-projection

# Entity Component System (ECS)

1. [Component Graph System](https://github.com/kvark/froggy/wiki/Component-Graph-System)
1. [Why Vanilla ECS Is Not Enough](https://ajmmertens.medium.com/why-vanilla-ecs-is-not-enough-d7ed4e3bebe5)
1. [On DOTS: Entity Component System](https://blogs.unity3d.com/2019/03/08/on-dots-entity-component-system/)
1. http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/
1. [Bob Nystrom - Is There More to Game Architecture than ECS?](https://www.youtube.com/watch?v=JxI3Eu5DPwE)

# Simulation

1. https://en.wikipedia.org/wiki/Sigmoid_function
1. https://prideout.net/blog/distance_fields/
1. https://www.gdcvault.com/play/1022016/Getting-off-the-NavMesh-Navigating
1. https://nialltl.neocities.org/articles/mpm_guide.html
1. http://fabiensanglard.net/doom_fire_psx/index.html
1. http://sol.gfxile.net/interpolation/
1. https://medium.com/unity3danimation/create-your-own-inverse-dynamics-in-unity-1ed0371ee658
1. https://github.com/franciscop/ola/

# Animation

1. https://blog.varunramesh.net/posts/composable-animations/

# Game history | Game preservation

1. https://threader.app/thread/1027300086022254592
1. https://gamehistory.org/

# Physics

1. http://brm.io/matter-js/
1. http://www.jbox2d.org/
1. https://www.tapirgames.com/blog/open-source-physics-engines

# Matchmaking

1. https://cloud.google.com/blog/products/open-source/open-match-flexible-and-extensible-matchmaking-for-games

# NPC artificial intelligence

1. [Mark R Johnson - Speech Generation in a Procedurally Generated World](https://www.youtube.com/watch?v=qh9vyoMviJI)
1. [Max Kreminski - Designing AI systems to support player storytelling](https://www.youtube.com/watch?v=BDcZSWHu8RQ)
1. https://en.wikipedia.org/wiki/Monte_Carlo_tree_search
1. http://www.roguelikeradio.com/2018/02/episode-144-ai.html
1. https://www.red3d.com/cwr/boids/
1. https://www.blog.drewcutchins.com/blog/2018-8-16-flocking
1. http://www.gabrielgambetta.com/generic-search.html

# Hexagonal grid

1. https://www.redblobgames.com/grids/hexagons/
1. [Hex Grid Geometry for Game Developers (1.3)](http://www.gamelogic.co.za/downloads/HexMath2.pdf)

# Mods / Modding

1. https://minecraft.net/en-us/article/programmers-play-minecrafts-inner-workings

# Streaming

1. https://blog.rainway.io/building-a-cross-browser-cross-platform-real-time-game-streaming-protocol-b00d000fe788

# Interactive narrative fiction

1. [Max Kreminski - Designing AI systems to support player storytelling](https://www.youtube.com/watch?v=BDcZSWHu8RQ)
1. http://narrascope.org/
1. http://pdf.textfiles.com/books/iftheorybook.pdf
1. https://notimetoplay.org/engines/advprompt/

# Design

1. [Lee Tusman - Lower Dimensional Dungeons](https://www.youtube.com/watch?v=-e4gF_SKWPk)
1. [droqen - The roguelike spirit without procedural generation](https://www.youtube.com/watch?v=6Whz8bvjAKo)
1. [Darren Grey - What Is A *Rogue* Like?](https://www.youtube.com/watch?v=C2sm-z7Ag4U)
1. [Benjamin Berman - Tips, Tricks and History for Card Game Roguelike Design](https://www.youtube.com/watch?v=DT9_7sW5knY)
1. [WIRED by Design: A Game Designer Explains the Counterintuitive Secret to Fun](https://www.youtube.com/watch?v=78rPt0RsosQ)
1. [How to Add Literally Infinite Features into Minecraft (with one update)](https://www.youtube.com/watch?v=CS5DQVSp058)
1. [The Lost Soul Arts of Demon's Souls](https://www.youtube.com/watch?v=Np5PdpsfINA)
1. [Dark Souls 2 Critique](https://www.youtube.com/watch?v=UScsme8didI)
1. [How Thief's Stealth System Almost Didn't Work | War Stories | Ars Technica](https://www.youtube.com/watch?v=qzD9ldLoc3c)
1. [Three Other Approaches to Turn Timers | GMTK Extra](https://www.youtube.com/watch?v=QAVf7rb0IwM)
1. [Sanderson's Laws of Magic](https://stormlightarchive.fandom.com/wiki/Sanderson%27s_Laws_of_Magic)
1. [Level Design Patterns in 2D Games](http://akhalifa.com/documents/level-design-patterns.pdf)
1. https://en.wikipedia.org/wiki/Rules_of_Play

	## [Game Maker's Toolkit](https://www.youtube.com/channel/UCqJ-Xo29CKyLTjn6z2XwYAw)

	1. [Can We Make Talking as Much Fun as Shooting? | Game Maker's Toolkit](https://www.youtube.com/watch?v=l9TzqNQBmr0)
	1. [Are Score Systems Still Relevant? | Game Maker's Toolkit](https://www.youtube.com/watch?v=K6y9PJipfpk)
	1. [What Makes a Good Combat System? | Game Maker's Toolkit](https://www.youtube.com/watch?v=8X4fx-YncqA)
	1. [The Rise of the Systemic Game | Game Maker's Toolkit](https://www.youtube.com/watch?v=SnpAAX9CkIc)
	1. [Playing Past Your Mistakes | Game Maker's Toolkit](https://www.youtube.com/watch?v=Go0BQugwGgM)
	1. [How to Keep Players Engaged (Without Being Evil) | Game Maker's Toolkit](https://www.youtube.com/watch?v=hbzGO_Qonu0)
	1. [Building Better Skill Trees | Game Maker's Toolkit](https://www.youtube.com/watch?v=wsmEuHa1eL8)
	1. [The Year Stealth Games Got Serious | Game Maker's Toolkit](https://www.youtube.com/watch?v=Iz-XTR3pwrE)
	1. [Why Synergies are the Secret to Slay the Spire’s Fun | Game Maker’s Toolkit](https://www.youtube.com/watch?v=terD4Bk3L_8)
	1. [Why Metro Exodus is 2019’s Most Immersive Open World Game | Game Maker's Toolkit](https://www.youtube.com/watch?v=8geGHbWIMXA)
	1. [Roguelikes, Persistency, and Progression | Game Maker's Toolkit](https://www.youtube.com/watch?v=G9FB5R4wVno)
	1. [Do We Need a Soulslike Genre? | Game Maker's Toolkit](https://www.youtube.com/watch?v=Lx7BWayWu08)
	1. [Forging God of War's Leviathan Axe | Game Maker's Toolkit](https://www.youtube.com/watch?v=vwbz9gxoQFg)
	1. [What Makes a Good Puzzle? | Game Maker's Toolkit](https://www.youtube.com/watch?v=zsjC6fa_YBg)
	1. [How Games Use Feedback Loops | Game Maker’s Toolkit](https://www.youtube.com/watch?v=H4kbJObhcHw)
	1. [Depth, Mastery, and Vanquish | Game Maker's Toolkit](https://www.youtube.com/watch?v=IG8LVpuzYls)
	1. [Morality in the Mechanics | Game Maker's Toolkit](https://www.youtube.com/watch?v=6RHH7M4siPM)
	1. [Anatomy of a Side Quest: Beyond the Beef | Game Maker's Toolkit](https://www.youtube.com/watch?v=yM1yR7WYqgM)
	1. [Telling Stories with Systems | Game Maker's Toolkit](https://www.youtube.com/watch?v=NyMndWpihTM)
	1. [What Makes Good AI? | Game Maker's Toolkit](https://www.youtube.com/watch?v=9bbhJi0NBkk)
	1. [What Makes a Good Detective Game? | Game Maker's Toolkit](https://www.youtube.com/watch?v=gwV_mA2cv_0)
	1. [How Game Designers Protect Players From Themselves | Game Maker's Toolkit](https://www.youtube.com/watch?v=7L8vAGGitr8)
	1. [What Made Psychonauts Special | Game Maker's Toolkit](https://www.youtube.com/watch?v=5I4vD2S01d0)
	1. [How Event[0] Works | Game Maker's Toolkit](https://www.youtube.com/watch?v=bCJw4hQkPj4)
	1. [The Comeback of the Immersive Sim | Game Maker's Toolkit](https://www.youtube.com/watch?v=kbyTOAlhRHk)
	1. [How Games Do Health | Game Maker's Toolkit](https://www.youtube.com/watch?v=4AEKbBF3URE)
	1. [Should Dark Souls Have an Easy Mode? | Game Maker's Toolkit](https://www.youtube.com/watch?v=K5tPJDZv_VE)
	1. [Is The Swindle the First Great Heist Game? | Game Maker's Toolkit](https://www.youtube.com/watch?v=cUbyNJKsi7E)
	1. [Redesigning Death | Game Maker's Toolkit](https://www.youtube.com/watch?v=6WyalnKQIpg)
	1. [Secrets of Game Feel and Juice | Game Maker's Toolkit](https://www.youtube.com/watch?v=216_5nu4aVQ)
	1. [Arkham Knight and the Scourge of Scale | Game Maker's Toolkit](https://www.youtube.com/watch?v=Kvbnc-7Y0fE)
	1. [The World Design of Castlevania: Symphony of the Night | Boss Keys](https://www.youtube.com/watch?v=a1hHOVIkrcc)
	1. [The World Design of Dark Souls | Boss Keys](https://www.youtube.com/watch?v=QhWdBhc3Wjc)

	## [Game Wisdom](https://www.youtube.com/channel/UCJPQyAGAbIcXZXfM01oOPOA)

	1. [Is Extreme RNG Bad For Game Design? (Critical Thought)](https://www.youtube.com/watch?v=yVhQWkQoykQ)
	1. [What Does it Mean to Last in the Game Industry? | Critical Thought](https://www.youtube.com/watch?v=Xku4IOO37s0)
	1. [The Game Design Trap of a Zelda Roguelike](https://www.youtube.com/watch?v=oWSj8WEy9YE)
	1. [Using Supplemental Content to Grow Rogue-Like and Strategy Game Design -- Critical Thought](https://www.youtube.com/watch?v=xsbPr0SND5s)
	1. [A Critical Thought on Class Based RPG Design](https://www.youtube.com/watch?v=EcX3rPHmmfI)
	1. [Why 2D Game Design Is Never Going Away | Critical Thought](https://www.youtube.com/watch?v=CqO4DgJZC04)
	1. [A Critical Thought on RPG Class Design](https://www.youtube.com/watch?v=ykvwgSAwvgM)
	1. [The Difficulty Behind Grand Strategy Game Design -- Critical Thought](https://www.youtube.com/watch?v=Vthi6_fgkWk)
	1. [The Game Design Trap of Modern Retro Games -- Critical Thought](https://www.youtube.com/watch?v=utfM4OVAlXw)
	1. [The Secret to Replayable Video Games: Defining Variance (Critical Thought)](https://www.youtube.com/watch?v=6jmhzfk7cI0)
	1. [The Limits of Battle Royale Game Design | Critical Thought](https://www.youtube.com/watch?v=jGEokQBbZm8)
	1. [A Critical Thought on WRPG vs JRPG Design](https://www.youtube.com/watch?v=QptfFveZH40)
	1. [When Does a Video Game Become Tactical? (Critical Thought)](https://www.youtube.com/watch?v=9DjMyJ4c6sc)
	1. [How Numbers Impact Game Design (Critical Thought)](https://www.youtube.com/watch?v=ychRUeGxuA4)
	1. [A Critical Thought on Asymmetrical Design and Balance](https://www.youtube.com/watch?v=ah-q6gmcCcM)
	1. [A Critical Thought on RPG Progression](https://www.youtube.com/watch?v=kou6zzE7odk)
	1. [A Critical Thought on Gear-Based Progression](https://www.youtube.com/watch?v=Qtf4JrJADuE)
	1. [The Difference Between Environmental and Level Design in Video Games -- Critical Thought](https://www.youtube.com/watch?v=Lmf1oQIwNCk)
	1. [The Limitations of Leveling in Game Design | Critical Thought](https://www.youtube.com/watch?v=V4EK53qA2ZA)
	1. [What Makes Grinding Fun in Videogames | Critical Thought](https://www.youtube.com/watch?v=a5skg3YF6D0)
	1. [Should Videogames be a Mystery? | Critical Thought](https://www.youtube.com/watch?v=J3Pm61xk444)
	1. [A Critical Thought on Apex Predator Stealth Game Design](https://www.youtube.com/watch?v=69rJy146F7I)
	1. [The Limits of Realism in Video Games -- Critical Thought](https://www.youtube.com/watch?v=R_hXwd-TXqw)
	1. [What Makes an Immersive Sim? (Critical Thought)](https://www.youtube.com/watch?v=lMi1PNiQoTg)
	1. [A Critical Thought on the Bar of Game Design](https://www.youtube.com/watch?v=30xMJFRNwpc)
	1. [A Critical Thought on Persistent Systems in Game Design](https://www.youtube.com/watch?v=uk_1VoMtmK8)
	1. [A Critical Thought on Game Pricing](https://www.youtube.com/watch?v=BGAa11Wmnsw)
	1. [A Critical Thought on 7-9 Review Scores](https://www.youtube.com/watch?v=QjI_ayarAq4)
	1. [A Critical Thought on Event-Driven Game Design](https://www.youtube.com/watch?v=df_cS3N5Ri4)
	1. [A Critical Thought on the Flow State and Video Games](https://www.youtube.com/watch?v=dGfuN7PT8Fg)
	1. [A Critical Thought on Boss Battle Design](https://www.youtube.com/watch?v=R73FdiuwNQc)
	1. [The Difference Between Graphics and Aesthetics in Videogames (Critical Thought)](https://www.youtube.com/watch?v=dDh_P0FZYCE)
	1. [A Critical Thought on the Foundation of Emergent Gameplay](https://www.youtube.com/watch?v=EbYvxZcMzGw)
	1. [A Critical Thought on Environmental Storytelling in Video Games](https://www.youtube.com/watch?v=bryR9RY7KFs)
	1. [A Critical Thought on Puzzle Design](https://www.youtube.com/watch?v=jlPokDZWN3Q)
	1. [A Critical Thought on Good Stealth Game Design](https://www.youtube.com/watch?v=MMhR5o2EcLc)
	1. [How to Define Gameplay in Videogames | Critical Thought](https://www.youtube.com/watch?v=S97Z8WarJT4)
	1. [A Critical Thought on "Upen" World Game Design](https://www.youtube.com/watch?v=d0aced1ONCM)
	1. [A Critical Thought on the Hierarchy of Fail States](https://www.youtube.com/watch?v=FACTASJ5UzA)
	1. [The Problems With Designing for Depth in Videogames (Critical Thought)](https://www.youtube.com/watch?v=a9tbDWdZ7W0)
	1. [The Contradiction of Fun Pain in Video Games -- Critical Thought](https://www.youtube.com/watch?v=SYaEAOlbCwE)
	1. [A Critical Thought on Creating Enemy Behaviors in Game Design](https://www.youtube.com/watch?v=FoG_8wVdoow)
	1. [A Critical Thought on Balancing Failure in Game Design](https://www.youtube.com/watch?v=DZW9f48G2mQ)
	1. [How Dissonance Can Affect Videogames | Critical Thought](https://www.youtube.com/watch?v=Ip12_GQ09Bk)
	1. [Defining the Core Gameplay Loop of your Game | Critical Thought](https://www.youtube.com/watch?v=-kIwf-dNXr0)
	1. [Helpful Tips to Improve Playability in Game Design | Critical Thought](https://www.youtube.com/watch?v=pNsIe6EU4Cc)
	1. [A Critical Thought on Understanding Emergent Gameplay](https://www.youtube.com/watch?v=LTc_zIsUfMw)
	1. [Defining Accessibility vs. Playability in Game Design | Critical Thought](https://www.youtube.com/watch?v=ASwCEelR_J8)
	1. [How to Fix Loot Boxes Before They're Banned | Critical Thought](https://www.youtube.com/watch?v=cPoaRpDRZbc)
	1. [The Design Behind Effective Loot Tables -- Critical Thought](https://www.youtube.com/watch?v=Nz3dk3Q4LxY)
	1. [A Critical Thought on When Video Game Difficulty Becomes Cheap](https://www.youtube.com/watch?v=fae9Q173YUU)
	1. [A Critical Thought on Fair Use and Fan Games](https://www.youtube.com/watch?v=cTUW6-P_3Rg)
	1. [A Critical Thought on Direct vs. Indirect Competition](https://www.youtube.com/watch?v=_Klc69XDR1w)
	1. [A Critical Thought on Conditioning Players](https://www.youtube.com/watch?v=efeqryVz7ro)
	1. [A Critical Thought on Combining RPG and Action Games](https://www.youtube.com/watch?v=Kh8itq2jf_M)
	1. [The Three Elements of Good Level Design in Video Games -- Critical Thought](https://www.youtube.com/watch?v=sHKc_DqdxQk)
	1. [The Three Forms of Stealth Gameplay (Critical Thought)](https://www.youtube.com/watch?v=nLOMq5qCxKU)
	1. [The Deeper Design Behind the Dark Souls Formula -- Critical Thought](https://www.youtube.com/watch?v=hlccvyRGdPI)
	1. [The Limits of Randomization in Game Design -- Critical Thought](https://www.youtube.com/watch?v=fuIihMRNEeE)
	1. [How RNG in Games is Like a Spice -- Critical Thought](https://www.youtube.com/watch?v=A3cG4IHaOUY)
	1. [The Failing Point of Free to Play Game Design -- Critical Thought](https://www.youtube.com/watch?v=_7-cQdFgD4k)
	1. [A Critical Thought on Game Design Abstraction](https://www.youtube.com/watch?v=odCFa72nQCc)
	1. [A Critical Thought on Difficulty Scaling in Game Design](https://www.youtube.com/watch?v=Y4AQPefZwt0)
	1. [What Makes the Collectible Hunt So Addicting in Videogames | Critical Thought](https://www.youtube.com/watch?v=mg-OlFeU0YQ)
	1. [What Makes a Metroidvania Work? | Critical Thought](https://www.youtube.com/watch?v=4ggILevH7Tw)
	1. [A Critical Thought on the Worst Kind of Video Game Grinding](https://www.youtube.com/watch?v=7jrYVFsW_Rw)
	1. [A Critical Thought on Mixed Genre Game Design](https://www.youtube.com/watch?v=g7_nVpGVuHQ)
	1. [The Problems With Punishment Systems in Videogames | Critical Thought](https://www.youtube.com/watch?v=gkp2tW_rzz0)
	1. [Can Persistence Work in Esports? (Critical Thought)](https://www.youtube.com/watch?v=4BysWm6SqTk)
	1. [A Critical Thought on The Race to the Bottom](https://www.youtube.com/watch?v=YhdbYhoWECs)
	1. [A Critical Thought on Why Build Orders Spell Trouble for Video Games](https://www.youtube.com/watch?v=XJHxfnWUdTc)
	1. [A Critical Thought on Persistence Mechanics](https://www.youtube.com/watch?v=G2W7JGB8uug)
	1. [A Critical Thought on Regenerating Health Game Design](https://www.youtube.com/watch?v=tPlPxGAskx8)
	1. [A Critical Thought on Meta-Game Design](https://www.youtube.com/watch?v=pjpf7wFnvaU)
	1. [A Critical Thought on Hard Games](https://www.youtube.com/watch?v=z92x3tnXG2A)
	1. [A Critical Thought on Downtime in Video Games](https://www.youtube.com/watch?v=t46bDmK4qFo)
	1. [A Critical Thought on Item Hoarding](https://www.youtube.com/watch?v=hMybxTFMMXw)
	1. [Why Morality Systems in Games Don't Work -- Critical Thought](https://www.youtube.com/watch?v=qvNMXZFc8og)
	1. [A Critical Thought on ELO Rating Systems](https://www.youtube.com/watch?v=1akzEbNLKqs)
	1. [A Critical Thought on Probability in Game Design](https://www.youtube.com/watch?v=wgi-MH1PxAg)
	1. [Defining (And Reducing) Grinding in Video Games -- Critical Thought](https://www.youtube.com/watch?v=dPH2OkVJmnM)
	1. [Explaining the Assassin's Creed Odyssey Backlash on Player Choice-- Critical Thought](https://www.youtube.com/watch?v=sJhPYiNopKo)
	1. [A Critical Thought on WRPG vs CRPG Design](https://www.youtube.com/watch?v=mzsRs-qinJU)
	1. [A Critical Thought on Unpredictable Competitive Games](https://www.youtube.com/watch?v=LyrFdFwCYxw)
	1. [A Critical Thought on Game Reviewers](https://www.youtube.com/watch?v=ejLcJ680Je0)
	1. [A Critical Thought on Disgaea's Design and Layered Game Systems](https://www.youtube.com/watch?v=s_z5liQ4Zbw)
	1. [A Critical Thought on the Dangers of Feature Creep](https://www.youtube.com/watch?v=3lvkxfOrnSo)
	1. [A Critical Thought on Making Competitive Games](https://www.youtube.com/watch?v=su0zUE_iU14)
	1. [A Critical Thought on Power Curves in Game Design](https://www.youtube.com/watch?v=j0-Mmcfq3so)
	1. [A Critical Thought on the Blue Shell Debate](https://www.youtube.com/watch?v=teYuozYi8Kg)
	1. [A Critical Thought on Strategy Guides](https://www.youtube.com/watch?v=vW3qgpt4s2c)
	1. [A Critical Thought on Breaking Games](https://www.youtube.com/watch?v=aorjSqZMb5E)
	
	## [Roguelike Radio](http://www.roguelikeradio.com/)
	
	1. [Episode 3: Brogue](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio3.mp3)
	1. [Episode 4: DoomRL](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio4.mp3)
	1. [Episode 5: Frozen Depths](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio5.mp3)
	1. [Episode 8: Progression Systems](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio8.mp3)
	1. [Interview: Brian Walker aka Pender](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio-pender.mp3)
	1. [Episode 9: Powder](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio9.mp3)
	1. [Episode 10: Deity Systems](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio10.mp3)
	1. [Episode 12: Roguelikes Features in Other Genres](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio12.mp3)
	1. [Episode 13: Mystery Dungeon 2: Shiren the Wander](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio13.mp3)
	1. [Episode 14: Resource Management](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio14.mp3)
	1. [Episode 15: Quickband](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio15.mp3)
	1. [Episode 16: History and Future of Roguelikes](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio16.mp3)
	1. [Episode 18: ToME4](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio18.mp3)
	1. [Episode 19: Interview with DarkGod, creator of ToME4](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio19.mp3)
	1. [Episode 20: Cataclysm](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio20.mp3)
	1. [Episode 21: Procedural Generation](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio21.mp3)
	1. [Episode 22: Infra Arcana](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio22.mp3)
	1. [Episode 23: Interview with David Ploog](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio23.mp3)
	1. [Episode 24: Themes and Settings](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio24.mp3)
	1. [Episode 25: Permadeath](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio25.mp3)
	1. [Episode 26: How to Make a 7DRL](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio26.mp3)
	1. [Episode 30: Identification Systems](http://www.gamesofgrey.com/roguelikeradio/roguelikeradio30.mp3)
	1. [Episode 31 - Rogue, with co-creator Glenn Wichman](http://www.roguelikeradio.com/2012/04/episode-31-rogue-with-co-creator-glenn.html)
	1. [Episode 32: Combat Mechanics](http://www.roguelikeradio.com/2012/04/episode-32-combat-mechanics.html)
	1. [Episode 33: Interview with Thomas Biskup, creator of ADOM](http://www.roguelikeradio.com/2012/05/episode-33-interview-with-thomas-biskup.html)
	1. [Episode 34: Red Rogue, with creator Aaron Steed](http://www.roguelikeradio.com/2012/05/episode-34-red-rogue-with-creator-aaron.html)
	1. [Episode 35: Diablo](http://www.roguelikeradio.com/2012/05/episode-35-diablo.html)
	1. [Episode 36: Coffeebreak Roguelikes](http://www.roguelikeradio.com/2012/05/episode-36-coffeebreak-roguelikes.html)
	1. [Episode 38: Zaga-33 and MicRogue](http://www.roguelikeradio.com/2012/06/episode-38-zaga-33-and-microgue.html)
	1. [Episode 40: Designing for Non-Roguelikers](http://www.roguelikeradio.com/2012/07/episode-40-designing-for-non.html)
	1. [Episode 41: Score Systems](http://www.roguelikeradio.com/2012/07/episode-41-score-systems.html)
	1. [Episode 42: Elitism](http://www.roguelikeradio.com/2012/07/episode-42-elitism.html)
	1. [Episode 43: Spelunky](http://www.roguelikeradio.com/2012/08/episode-43-spelunky.html)
	1. [Episode 44: Winning](http://www.roguelikeradio.com/2012/08/episode-44-winning.html)
	1. [Episode 45 - Caves of Qud](http://www.roguelikeradio.com/2012/09/episode-45-caves-of-qud.html)
	1. [Episode 51: Graphics and Tile Design part 1](http://www.roguelikeradio.com/2012/11/episode-51-graphics-and-tile-design.html)
	1. [Episode 53: Game Design in Academia](http://www.roguelikeradio.com/2012/11/episode-53-game-design-in-academia.html)
	1. [Episode 54: Game Jams](http://www.roguelikeradio.com/2012/11/episode-54-game-jams.html)
	1. [Episode 55: Strategy Games](http://www.roguelikeradio.com/2012/12/episode-55-strategy-games.html)
	1. [Episode 59: Sil](http://www.roguelikeradio.com/2013/01/episode-59-sil.html)
	1. [Episode 64: Player competitions](http://www.roguelikeradio.com/2013/03/episode-64-player-competitions.html)
	1. [Episode 65: Roguelike Communities](http://www.roguelikeradio.com/2013/03/episode-65-roguelike-communities.html)
	1. [Episode 68: 7DRL 2013 Failures](http://www.roguelikeradio.com/2013/04/episode-68-7drl-2013-failures.html)
	1. [Episode 69: Boss Fights](http://www.roguelikeradio.com/2013/04/episode-69-boss-fights.html)
	1. [Episode 70: Introducing People to Roguelikes](http://www.roguelikeradio.com/2013/04/episode-70-introducing-people-to.html)
	1. [Episode 71: The Hunger Clock](http://www.roguelikeradio.com/2013/05/episode-71-hunger-clock.html)
	1. [Episode 72: IRDC 2013](http://www.roguelikeradio.com/2013/06/episode-72-irdc-2013.html)
	1. [Episode 74 - Sword of the Stars: The Pit](http://www.roguelikeradio.com/2013/06/episode-74-sword-of-stars-pit.html)
	1. [Episode 75: Cataclysm Dark Days Ahead](http://www.roguelikeradio.com/2013/07/episode-75-cataclysm-dark-days-ahead.html)
	1. [Episode 77: The Hero Trap](http://www.roguelikeradio.com/2013/08/episode-77-hero-trap.html)
	1. [Episode 78: Inspiration from Board Games](http://www.roguelikeradio.com/2013/08/episode-78-inspiration-from-board-games.html)
	1. [Episode 79 - Mobile Roguelikes](http://www.roguelikeradio.com/2013/09/episode-79-mobile-roguelikes.html)
	1. [Episode 80: UnReal World](http://www.roguelikeradio.com/2013/09/this-is-episode-80-of-roguelike-radio.html)
	1. [Episode 81: Puzzles](http://www.roguelikeradio.com/2013/10/episode-81-puzzles.html)
	1. [Episode 82: Interview with Zeno](http://www.roguelikeradio.com/2013/11/episode-82-interview-with-zeno.html)
	1. [Episode 83: ASCII](http://www.roguelikeradio.com/2013/12/episode-83-ascii.html)
	1. [Episode 84: Nethack](http://www.roguelikeradio.com/2013/12/episode-84-nethack.html)
	1. [Episode 86: How to Make a Unique 7DRL](http://www.roguelikeradio.com/2014/03/episode-86-how-to-make-unique-7drl.html)
	1. [Episode 89: Interview with the Angband devteam part 1](http://www.roguelikeradio.com/2014/08/episode-89-interview-with-angband.html)
	1. [Episode 90: Angband devteam interview part 2](http://www.roguelikeradio.com/2014/08/episode-90-angband-devteam-interview.html)
	1. [Episode 91: Our First Roguelikes](http://www.roguelikeradio.com/2014/09/episode-91-our-first-roguelikes.html)
	1. [Episode 92: Return to Brogue](http://www.roguelikeradio.com/2014/10/episode-92-return-to-brogue.html)
	1. [Episode 94: ProcJam](http://www.roguelikeradio.com/2014/10/episode-94-procjam.html)
	1. [Episode 98: What Players Want from 7DRLs](http://www.roguelikeradio.com/2015/03/episode-98-what-players-want-from-7drls.html)
	1. [Episode 100: YASDs](http://www.roguelikeradio.com/2015/06/episode-100-yasds.html)
	1. [Episode 102: Interview with Frank Lantz](http://www.roguelikeradio.com/2015/06/episode-102-interview-with-frank-lantz.html)
	1. [Episode 105: Dungeon Hacks, a book about roguelikes](http://www.roguelikeradio.com/2015/08/episode-105-dungeon-hacks-book-about.html)
	1. [Episode 106: 30 Minutes of UMoria](http://www.roguelikeradio.com/2015/08/episode-106-30-minutes-of-umoria.html)
	1. [Episode 107: Listeners Q&As](http://www.roguelikeradio.com/2015/09/episode-107-listeners-q.html)
	1. [Episode 108: Information](http://www.roguelikeradio.com/2015/10/episode-108-information.html)
	1. [Episode 109: Cogmind](http://www.roguelikeradio.com/2015/10/episode-109-cogmind.html)
	1. [Episode 110: Obsession](http://www.roguelikeradio.com/2015/11/episode-110-obsession.html)
	1. [Episode 111: Invisible Inc](http://www.roguelikeradio.com/2015/12/episode-111-invisible-inc.html)
	1. [Episode 114: Gameplay-Orientated Procedural Generation](http://www.roguelikeradio.com/2016/01/episode-114-gameplay-orientated.html)
	1. [Episode 115: The Curious Expedition](http://www.roguelikeradio.com/2016/02/episode-115-curious-expedition.html)
	1. [Episode 118: Interview with John Harris](http://www.roguelikeradio.com/2016/03/episode-118-interview-with-john-harris.html)
	1. [Episode 121: Simulation](http://www.roguelikeradio.com/2016/04/episode-121-simulation.html)
	1. [Episode 122: Nethack Tool-Assisted Speedruns](http://www.roguelikeradio.com/2016/06/episode-122-nethack-tool-assisted.html)
	1. [Episode 123: Geometry in Roguelikes](http://www.roguelikeradio.com/2016/06/episode-123-geometry-in-roguelikes.html)
	1. [Episode 124: Shoot Em Ups](http://www.roguelikeradio.com/2016/08/episode-124-shoot-em-ups.html)
	1. [Episode 125: Road Not Taken](http://www.roguelikeradio.com/2016/08/episode-125-road-not-taken.html)
	1. [Episode 126: IVAN](http://www.roguelikeradio.com/2016/09/episode-126-ivan.html)
	1. [Episode 128: How To Be Good At Roguelikes](http://www.roguelikeradio.com/2016/10/episode-128-how-to-be-good-at-roguelikes.html)
	1. [Episode 134: Randomness](http://www.roguelikeradio.com/2017/03/episode-134-randomness.html)
	1. [Episode 137: Book on Procedural Generation in Game Design](http://www.roguelikeradio.com/2017/06/episode-137-book-on-procedural.html)
	1. [Episode 138: Golden Krone Hotel](http://www.roguelikeradio.com/2017/08/episode-138-golden-krone-hotel.html)
	1. [Episode 139: Unexplored](http://www.roguelikeradio.com/2017/09/episode-139-unexplored.html)
	1. [Episode 140: Horror](http://www.roguelikeradio.com/2017/10/episode-140-horror.html)
	1. [Episode 141: MUDs](http://www.roguelikeradio.com/2017/11/episode-141-muds.html)
	1. [Episode 144: AI](http://www.roguelikeradio.com/2018/02/episode-144-ai.html)
	1. [Episode 147: Difficulty](http://www.roguelikeradio.com/2018/08/episode-147-difficulty.html)
	1. [Episode 149: Chaos Theory](http://www.roguelikeradio.com/2018/12/episode-149-chaos-theory.html)
	1. [Episode 150: Rot.js with Ondrej Zara](http://www.roguelikeradio.com/2019/01/episode-150-rotjs-with-ondrej-zara.html)
	1. [Episode 154: Jupiter Hell - Early Access](http://www.roguelikeradio.com/2019/08/episode-154-jupiter-hell-early-access.html)

# Voxel

1. https://github.com/stoyannk/voxels

# Planning

1. https://github.com/adnzzzzZ/blog/issues/47

---

# Mechanics

## Vision

1. [Albert Ford - Vision Visualized](https://www.youtube.com/watch?v=y1zkrTcNJbc)

## Difficulty

1. [Rosalind Miles Chapman - Hungry Rogues: The evolution of roguelike hunger mechanics](https://www.youtube.com/watch?v=j9ykOdQRUQk)

## Progression

1. [Dustin Freeman - Procedurally Generating Technology Trees](https://www.youtube.com/watch?v=8HDmpu7Kp-A)

## Multiplayer

1. [Tyriq Plummer - YASDery Loves Company: Multiplayer in Traditional Roguelikes](https://www.youtube.com/watch?v=neuJCYmbAG8)

## Flavor

## Story

1. [Aaron A Reed - Cadences, Lacunae, and Subcutaneans: Ten Years of Procedural Novels](https://www.youtube.com/watch?v=x0Xh4oCX9t0)

### Economy

1. [Mark Gritter - Procedurally Generating Economies with Graph Grammars (and Math)](https://www.youtube.com/watch?v=Q_MFTUYnaf0)
1. [emojiconomy](https://github.com/mgritter/emojiconomy)

### Relationship

1. [Jim Shepard - Blooming on the Battlefield: Relationships, Rivals, and Romance in Gameplay](https://www.youtube.com/watch?v=LKCRim02opc)