Logic World

Logic World

Not enough ratings
From 0 to Hero (WIP)
By PyroChiliarch
Logic World has no progression and no tutorial.
New player are left with no direction, left lost in a sandbox.
This guide aims to fix this and make it easier for people to get into the game.
   
Award
Favorite
Favorited
Unfavorite
What is this wall of text?
This guide is a path of progression, a set of projects that will help you learn how to build all sorts of circuits and contraptions in Logic World.

This is not meant to be a detailed guide, it gives you a set of projects, each building on the knowledge from the previous ones, you will need to do your own research, watch Youtube videos, looks up Wikipedia articles or dive into electronics tutorials.

Feel free to skip ahead if you find yourself getting bored, you can always backtrack to earlier projects if you get lost or stuck.
The Basics
Goals:
- Get yourself familiar with the controls of Logic World
- Understand what the basic components are.
- Understand time (ticks)

Get into the game and play with things, break stuff, figure out what things do.
You will use the knowledge you gain here in every other project.

Resources:

How each component works:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2636560995

How time/ticks work:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2658189795
Logic Gates
Goal:
- Learn about logic gates
- Build each of these gates, NAND, NOR, XNOR

There are many types of logic gates, Logic World has some of the more basic ones built in as components, AND, NOT (Inverter), OR (Peg) and XOR.

They simply take one or more input signals, and output a signal depending on the input.

You can further combine these to make other logic gates such as NAND, NOR, XNOR etc.
(For example NAND stands for "Not And", place down an AND gate and a Inverter on the end and you've got yourself a NAND gate)

For more details, have a look here.
Also take note of the symbols, if you come across any diagrams later on they will likely use these symbols.
Youtube: https://www.youtube.com/watch?v=UvI-AMAtrvE
Wikpedia: https://en.wikipedia.org/wiki/Logic_gate

Play with these in game and figure out how they work, you are going to be using these a lot.
Try to make/build the following
- NAND
- NOR
- XNOR

You may notice logic gates deceptively simple and don't seem to do very much. Despite the simplicity, it is possible to build almost anything with even just a few of these gates, they are very powerful.
https://en.wikipedia.org/wiki/Functional_completeness
Binary and Hex Numbers
This project is focused a bit more on theory than practice compared to some of the other projects.
You don't need to understand everything or even be good at it, you will pick up more binary skills as you go, when needed you can always dive into Binary number more deeply later on when you need to.



Goals:
- Understand Basic Binary numbers
- Understand Basic Hex numbers

Humans run on Decimal numbers, but computers run on binary, which is sometimes displayed as hex (hexadecimal). Sound like you need a uni degree to understand these? Not at all, they are much simpler than you realize.

Our modern number system or the 'Decimal' system is Base-10, this means there are 10 digits that can be used to make numbers 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, once you get to the last digit '9', you add another digit and start for 0 again, we know this as '10', this keeps going until you get to '99' then you add another digit and get '100'. Pretty simple stuff.

The Binary system computers used works exactly the same except its Base-2, meaning you only get 2 digits to make number, 0 and 1, other than this, it works the same. See below

0 = 0
1 = 1
2 = 10 ( Notice how since we have less digits, we need to increment sooner? )
3 = 11
4 = 100

The Hexadecimal system is Base-16, meaning it has, you guessed it, 16 digits!
These are 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F,
Other than having more digits, it works more or less like the previous number systems.
To avoid confusion with Decimal numbers, these are usually prefixed with '0x'

8 = 1000 = 0x8
9 = 1001 = 0x9
10 = 1010 = 0xA
11 = 1011 = 0xB

...

14 = 1110 = 0xE
15 = 1111 = 0xF
16 = 10000 = 0x10
17 = 10001 = 0x11

I strongly recommend this awesome video that explains them in more detail and why they are used in computers: https://www.youtube.com/watch?v=zDNaUi2cjv4

Why is all this information useful in-game? This is how we will be working with numbers.
Take the number 10 for example, you can represent this number in binary in game with 4 switches in binary, see the image below.

Now if you wanted to display this so its a bit more readable you might connect it to a 7-segment display and show the Hex value like this.

When you get to larger numbers you can see why using hex over binary would be handy.
Take for example the number 4,153,592,484 (4.1 billion).
In Binary this would be 11110111100100101100101010100100
But in Hex this would be 0xF792CAA4 which is much easier to type/read.

7-Segment Display
Converting from Binary to Hex is time consuming and kind of sucks, This is why you should work on making some reusable displays, this will make debugging your larger circuits easier.



There is more than one way to build a 7-segment display

An easier way can be found in this guide:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2767484416

If you want to be a bit more fancy you can use a "Karnaugh Map" and and figure out the logic gates.

This guide has the overall process but doesn't go into details:
https://electronics-fun.com/7-segment-hex-decoder/

Here is a video on K-Maps and how they work.
https://www.youtube.com/watch?v=RO5alU6PpSU

I've created a google sheet that I used when creating mine, you might find it helpful.
https://docs.google.com/spreadsheets/d/129e4m8Vsnbjl5oORQcooNkcf68pH09h-Buvn0aSJYpg/edit?usp=sharing

You might find it easier to lay your circuit out flat like this before making it tidy and cramming it into a small space.
This is the circuit for just the first segment.

Final result, with a more compact display.