About the Game
-= LEARN =-
Everything in a computer can be constructed from a basic component called a NAND gate. You will be challenged through a series of puzzles, to discover the path from NAND gates to arithmetic, memory and all the way to full CPU architectures. If you complete this game, you will have a deep understanding of how assembly, CPU instruction sets and basic components are related. And you will understand how programming concepts like if statements, loops and functions actually work in assembly and hardware.

-= BUILD =-
The game is built on a powerful simulator, that gives you total freedom in how you solve levels or create your own computers. Wire up screens, timers, sound, keyboard input and network components to create whatever you want. You can even design a unique assembly language for your computer.

Screenshots
6 imagesVersion Information
Steam Patch Notes
Official update history
The good news is that you can play the 2.0 alpha already. Right click on the game in your steam library, click on properties and then channels and select "save_breaker". Do note though that there are A LOT of breaking changes, so you might want to back up your saves and start over (in the future there will be an upgrade guide and the game will try to upgrade things automatically as well as possible). Also be aware that there might be some progression breaking bugs in the new campaign.
You can find a list of some of the new changes on the community wiki: https://turingcomplete.wiki/wiki/Save_breaker_changes
Anyway, you might be wondering if the next version is Turing Complete 2.0, where did Turing Complete 1.0 go? The answer is that with a little bit more polish the current version would have reached 1.0. But instead I went on a side mission which grew and grew in scope to the point where the new version is a total rewrite of the game. In retrospect, I should have spent another week polishing the current version of the game and exited early access before setting off on this epic rewrite. However the current version is good enough (sitting at "overwhelmingly positive" score), which is more important than version numbers at the end of the day.
So why did the scope balloon so much? There are a few of different factors:
1. My outlook
Some developers release their game, their sales spike on launch day, then taper off and they subsequently abandon the game a few months later. That wont happen with Turing Complete. Turing Complete will be relevant as long as computer science is relevant (forever) and therefore it will not be abandoned. This is by the way the norm outside of games (windows, photoshop etc weren't just abandoned). From this perspective, a delay in releases is insignificant compared to laying a solid foundation for the game to stand upon for decades to come.
2. Discovering what the game should be
The idea behind the game was originally just a simple exploration of how CPUs work in a puzzle game. But over time the philosophy morphed and now I think of it as a computer learning / creation / exploration platform. This is why Turing Complete 2.0 supports user created campaigns, much larger circuits, more realistic campaign and having a powerful assembler framework is part of this. In any case, each time the philosophy changed, a lot of things had to redone to fit. Luckily, the current philosophy hasn't changed in a while and has now solidified to the point where I can't imagine it changing again.
3. Minimizing save breaking patches
Since this is a save breaking patch anyway, I want to take this opportunity to include all needed breaking changes in this patch. This way I don't need to break player saves more times than necessary. An example of changes that could have waited if they weren't save breaking is redoing the component shapes (some were too small, others use non standard symbols etc). Another example is updating the campaign to be more realistic and going further into modern CPU optimizations. In fact, I really hope that this will be the last time I need to break player circuits.
4. Making a compiler
I have made interpreters before and did not find it difficult. I was surprised that people treat it like it is a big deal and even write whole books about it and so on. So I assumed that people were probably also exaggerating the difficulty of building a compiler. But no, building a compiler is actually extremely difficult, especially the back end and optimizations. This alone took me over a year, but the compiler is essential for allowing custom levels, fast simulation, fast compilation (not done yet) and certain features that will come in Turing Complete 3.0.
5. Expanding the campaign
I have spent the last couple of months building levels about modern CPU concepts, like superscalar, pipelining and speculative execution etc. This requires deleting, adding and rebuilding levels over and over again, for each issue or improvement opportunity I find. This is a lot more work than people think.
So what is left before release?
First, finishing up the new campaign levels. This has already taken about 3 months and it is a bit unpredictable when exactly it will be done (since I keep discovering something that makes me redo the levels). However I think we are getting close.
Then I need to fix a lot of bugs, get things translated (which can be done at the same time) and make new solution videos.
The next update will likely be when Turing Complete 2.0 is done.
Here is a quick preview of what is going on behind the scenes:
In other news, here are some of the things that were added since last update:
- Added a "Ticks Per Second" counter
- Added UI scaling
- Improved multi select
- Enabled reordering of the left side IO list by drag and drop
- Added bidirectional pins and tri state pins to that IO list
- Deleted the Stack component, created a new version of the "Negative numbers" level and more small iterations like that.
- Also I fixed a ton of long standing bugs
At the moment I am working on improving the programming language that the levels of the game are defined in. Once its updated, players will be able to write and share their own levels / level packs (with full server verified scoring), which will be very exciting. This might take a while though and it is hard to predict exactly how long, since I want to try to do some things I don't have much experience with. I will post more when I figure it out.
If you have colorblindness, let me know how well it works!
Players who have 10 total upvotes or more between all their uploads on the 10th of August will get a badge on their profile.
Turing Complete now has a new synthwave soundtrack. As with all music, not everyone is going to like it but I personally can't stop listening to it!
You can also find it on Spotify:
https://open.spotify.com/album/1NV5KxX785RrwA5RWIz0j8?si=LlUK4wveTpaMeBT9Mh8r1g
Progress towards sharing
Meanwhile work towards in-game sharing is continuing. Mostly I have been tying up loose ends (like translation) and trying to get to a stable set of components in the game. The goal is to get components stable enough so that shared schematics will never have to be broken by a new update. After finishing these things, actually adding the sharing functionality shouldn't take too long. You can expect more news about this within a few weeks.
- Fixed levels, scores, achievements and other things that were broken as a result of the realism patch.
- 16 bit and 32 bit components were introduced, as well as a 2 bit decoder and word sized NAND, NOR and XNOR.
- The component menu was reworked which was needed to accommodate all the new components. Custom components in the menu are now nested according to the players save folder structure.
- The old 64 bit RAM was replaced by 3 new RAM components, which all have their cost scale with their configurable size. The first RAM has a high gate cost, the second has a high delay cost. The third has a high delay cost, but its delay is amortized over several ticks. This means it effectually adds very little delay to the circuit, making it cheap in both gates and delay, but reading from it takes several ticks to complete. In future levels, more advanced score optimizing builds will likely use a slow cheap RAM for main memory, but cache results with a smaller fast RAM. All 3 RAM components have configurable size and word width.
- ROM was added. This component can only be written to in the sandbox, but its memory is not reset on level change or reset. It can be used for lookup tables in scored levels (where you cannot write to it). For creative builds that don't care about scored levels, this component can also be used as a hard disk in the sandbox. Like the RAM, the ROM component has configurable size and word width.
Watched state had a major upgrade. In the component factory, use a "Watchable state" component to decide what state should be exposed on the custom component. This also adds a state indicator visually on the component. With this you can watch multiple different states inside a custom component or watch deeply nested state. You will have to reconnect your watched state the first time you play this patch.
Rendering was made a lot smoother, supporting large circuits.
The max zoom level was increased.
The buildable area of the architecture map was increased 4x.
Save files compressed by 40% by storing wires in a different way
Assembler supports octal numbers
Lots of little bug fixes.
The console is the first of a couple of display components that are planned. It allows you to print colored characters to a 80x24 display. You can use this for displaying text, creating games or video.
https://media.discordapp.net/attachments/851327200736444446/925886627056873562/Screen_Shot_2021-12-30_at_00.02.41.png
The file ROM loads bytes from any file on your computer. This can for example be used for importing large amounts of data, building file format parsers or using an external assembler.
Both components are unlocked in the sandbox level.
First of all, this is a good candidate for the simplest possible memory component, which is where we should start.
Secondly, it lets the game introduce memory and related concepts in a more intuitive way.
And lastly, it makes pipelining architectures easier and score optimizing more interesting.
2 new early game levels were added to introduce the concept.
You may notice that your watched state has been disconnected after upgrading to this patch.
- Folder support
- Use filenames up to 45 characters
- Add descriptions to your schematics
- Rename custom components without having them disappear in your architectures
- Get a warning before deleting custom components that are also in architectures
Soon to come will be allowing nested components in the component factory.
Also a bug was fixed that might have caused your input or output component to get deleted. If you are stuck on a level with messed up IO components, do the following:
1. Go to the save menu and create a new schematic
2. Copy paste your work to the schematic
3. Delete the old one
Current Release
Build 24536614
Uploaded Aug 07, 2026
Update already requested
Uploaders have been notified
A newer version is available but not yet uploaded
Help keep this updated
Login Required
You need to be logged in to request game updates. Would you like to go to the login page?
Request Update
Request an update for Turing Complete? This will notify uploaders that this game has an available update.
Request Submitted
Your update request has been submitted successfully! Uploaders will be notified.
Request Failed
Failed to submit update request:
System Requirements
How to Install
Turing Complete.exe to play
Troubleshooting tips
• Run Redist/_CommonRedist installers if game won't start
• Add folder to Windows Defender exclusions
• Run as administrator
Download
Direct link available
Needed when extracting (WinRAR / 7-Zip) — not a site login.
F3D98E3D
fefcc6fa7fa22fbeb1694168ad13799d1cab7ae192f1ee841ad821fd8e5bba3e
You May Also Like
View AllDownload Turing Complete for PC with a direct link or via torrent. Get the full version of Turing Complete for free. Turing Complete is a Simulation released by LevelHead.