Ancient Brain
Code. Play. Teach. Learn. Research. Demo.

How to code

Help on how to code on Ancient Brain, for coders at all experience levels.

Running Worlds is easy. Click World images to run them. Try running the Editor's Choice Worlds or Random Worlds.

There are currently 5,273 Worlds on this site.

There are introductory pages:

Introduction
The basics of what this site is. You can code your own "Worlds". They are hosted on this server. Introduces the idea of "tweakers", users who can change some code without being full programmers.
List of features
Extensive list of features of the Ancient Brain site.

Definitions and Principles
Explains the idea of "Worlds" and "Minds", and types of Worlds. Explains the core Principles of Ancient Brain.
How to run Worlds
Click World images to run them. No install needed. Runs open in a new tab. Runs take place on a separate "run" server. Runs on that server are like untrusted web pages.
All Worlds are coded in JavaScript. We use a JavaScript "library" to make it easy to code graphics. Your big decision is whether to use the "P5" library or the "Three.js" library.


The P5 library is probably easier to get into if you are a beginner coder. But it has some features that may annoy non-beginners. It seems to be harder to do more advanced graphics with it. There are a number of P5 teaching courses on this site.

Use P5
The Three.js library is a little more intimidating for a beginner coder. But it is well suited to non-beginners. It is designed for advanced graphics. There is currently no Three.js teaching course on this site. On the other hand, almost all the advanced Worlds on this site are Three.js.
Use Three.js
  • Once you have seen how to code on Ancient Brain, the easiest way to progress is to start modifying existing Worlds.
  • Pick one of the Starter Worlds. "Clone" it, and edit your copy.
  • The easiest parts of the code to change are in the "tweaker's box" at the top.
Complex World
6594 runs ♦ 3 likes
By Starter user  
Created: 1 Oct 2016
Modified: 18 Apr 2021
World with a Mind-controlled agent, actively-pursuing enemy, random maze, skybox, music.
Blank Three.js World
1155 runs ♦ 2 likes
By Starter user  
Created: 20 Nov 2016
Modified: 18 Apr 2021
A simple starter World. An Array of spheres. Painted with textures. Random motion.
Simple World
1371 runs ♦ 2 likes
By Starter user  
Created: 1 Oct 2016
Modified: 18 Apr 2021
Simple World with a Mind-controlled agent, randomly-moving enemy, paint blocks with texture.
MineCraft
846 runs ♦ 2 likes
By Starter user  
Created: 27 Nov 2016
Modified: 4 Jul 2021
Use keyboard to draw blocks like in MineCraft. Use arrow keys and PgUp, PgDn to draw. Can save w...
As you keep learning, here are some examples of what you can build on this site. Build something beautiful!
Collision World
1131 runs ♦ 4 likes
By Starter user  
Created: 21 Sep 2017
Modified: 4 Jul 2021
Demo of Physics API. Blocks fall under gravity and collide. Can modify gravity, friction, etc. S...
Super Mario Maze
2081 runs ♦ 4 likes
By Cathal Neary  
Created: 19 Nov 2016
Modified: 10 Feb 2018
User-controlled ...
639 runs ♦ 2 likes
By Starter user  
Created: 12 Feb 2017
Modified: 18 Apr 2021
3d model World. User controlled on desktop. Keyboard arrows to move. Switch to "Move with" camer...
Globe Trotter
1442 runs ♦ 2 likes
By Laura Araviciute  
Created: 3 Dec 2016
Modified: 10 Feb 2018
Here are some of the most advanced Worlds:
Final Pool
979 runs ♦ 2 likes
By Ian Gilligan  
Created: 1 Mar 2019
Modified: 13 Aug 2019
Pool Predictor for CA326
Port of flying b...
395 runs ♦ 0 likes
By Discover three.js  
Created: 10 Feb 2019
Modified: 24 Mar 2019
Animated models. Port of flying birds with GLB models. From "Discover three.js". See project inf...
Car models with ...
658 runs ♦ 1 like
By threejs.org port...  
Created: 13 Sep 2018
Modified: 24 Mar 2019
Car bodywork reflects images from skybox. Click buttons to change model and bodywork. Mouse to m...
Sampler
137 runs ♦ 1 like
By Enhanced  
Created: 19 Jul 2018
Modified: 19 Jul 2018
Upload sounds, play them, automate them. Saving data works.