1. Logic World
  2. News

Logic World News

Logic World v0.91.3 is now available!

Hello gamers. It is time for another radical new Logic World update! Version 0.91.3 is out now, and you can get it right here on Steam.

This is a nice juicy update filled with dozens of improvements and bug fixes. As usual, for all the thrilling details, you can read the full changelog below.

But the highlight of this update is the new features for downloading Creations. We've added a new menu to the game for downloading Creations from the Creation Hub, so exploring the community's builds is easier than ever.



And you don't even have to copy-and-paste a link to do this. If you browse the Hub, you'll notice some new "Open in-game" buttons. Pressing one of these buttons will now open Logic World directly to the new menu, and you'll be playing on the world seconds later!



The "Open in-game" links use our new URL protocol, logicworld://. It's supported on all three of our platforms -- Windows, Linux, and MacOS. You just need to register the protocol first: for more information, check out this post.

So have fun browsing and exploring the Hub! There's a ton of really cool builds already on there, and it's now almost completely frictionless to check them out.

And if you've got a cool build that you haven't shared on the Hub yet, please upload it so we can all check out your work. Uploads are just as easy as downloads: while in-game, open the pause menu with the Escape key, and click on "Upload this sandbox".



Enjoy the update. See you soon :)


0.91.3 Changelog


Creation Downloading
  • Added an in-game menu for downloading Creations from the Creation Hub. It can be accessed via a new button in the main menu.
  • Added a protocol handler: `logicworld://` links now get opened by the game, allowing quick and easy downloading of Creations. For this to work, you first need to click the "Register Protocol" button in the Download Creation Menu.
  • Added command: `OpenDownloadCreationMenu [creation ID or URL]`
  • Added secret setting: `MHG.Protocol.EnableProtocolListeningOnUDP`
  • Added secret setting: `MHG.Protocol.ListeningUdpPort`


Building
  • When Grabbing or Cloning on a smooth surface like Grasslands, you can now hold the Mod key (by default left ctrl) to rotate the object freely.
  • Pick Component will now try to match the full detail of the component, if possible. For example, if you have both a red and blue circuit board in your hotbar and you use Pick on a red board, the red board in your hotbar will now be selected.
  • Fixed several exceptions with Grabbing that could happen if you tried to grab an object before the server finished confirming a previous building operation. In these cases, the Grab operation will fail now (and you can try again a second later).
  • Fixed exception when canceling a Resize operation if another player has moved or resized that component while you were resizing it.
  • Fixed Resizing still moving child components around in a few edge cases.
  • Fixed Resizing an object with wires attached without changing the component size causing wire ghosts to remain.


Undo/Redo
  • If an undo or redo fails, a message will now be printed to the debug console.
  • Fixed server exception when undoing the creation of a component that another player deleted.
  • Fixed undo history becoming corrupted when server is very busy (frozen) and applying multiple multi-build-request operations in that time.
  • Fixed redo crashing the client if an undo operation previously failed.
  • Fixed redo silently failing when trying to delete wires that were already deleted as a side effect of a component deletion.
  • Fixed missing wires after undoing and then redoing a Clone operation with internal wires.


UI
  • Added a "Report a Bug" button on the Main Menu, Pause Menu, and Error Screen. Pressing this button brings up instructions for how to report a bug or issue with the game.
  • In the Singleplayer menu, the Details pane for a saved game will now show which mods are in that save's registry.
  • Fixed various issues with hotbar item management.
  • Fixed the volume sliders in the Edit Singer and Edit Drum menus having an incorrect maximum value.
  • Fixed the color chooser in the Edit Label menu not properly showing the correct selected color about 50% of the time.
  • Fixed the Help menu flickering for a frame when you start placing an item on the hotbar.


Modding
  • Added an experimental "Component Action" API. It allows sending custom bytes to a component between server and client.
  • Added new manifest property `IncludeModInfoInSave`, which allows mods to control when their info (ID and version) are stored in save files.
  • Cache folders will now be automatically deleted when switching/updating to different game version. This triggers a mod recompilation.
  • Modders can now create and inject undo history entries.
  • Multi-Undo build request sending now allows callbacks. (#398)
  • Improved "mod has no mod type" exception messages to mention the issues with inheriting Server/ClientMod class.
  • Mod compilation errors are now shown on the error screen, so you don't need to check the logs to see these errors.
  • Fixed (new) mod instance creation failure detection hiding some other common exceptions (e.g. "Mod has no mod-type").
  • Fixed a game crash in multiplayer when your game has modded components that the server does not have and a component deletion is undone.


Error Screen
  • If there is an error with starting up the game, the error screen will now be properly shown with information about that error, instead of an empty black screen.
  • Added a "Copy Error" button to the error screen. Please make use of it when reporting issues :)
  • The error screen can now show stacktraces and other details in an expandable info box.
  • Added secret setting: `MHG.UI.ErrorScreen.OpenErrorDetailsByDefault`


Logging
  • Everything you see in server or client console will now be added to the log files.
  • Log files will now contain stacktraces for exceptions.
  • Command executions by player or console or LSF will now be logged in the log files.
  • Improved logging throughout the program.


Server
  • Added server command-line argument: `--ansi-rgb`. This will make the server use Ansi RGB color codes in the plain text console. If the terminal supports RGB, colors will be accurate.
  • Removed server LICC log file (log.txt).


Save Files
  • Unused components will no longer be added to world or subassembly save's component registry.
  • Mods which provide components placed in the world will now be automatically included in the save's mod registry.


Teleporting
  • When teleporting to another player, you no longer teleport inside them: instead you teleport next to them, looking at them. This is similar to how teleporting to Flags works.
  • Fixed the `tp ` command not working.


Command Line Arguments
  • Added command-line startup option: `-open-save `
  • Added command-line startup option: `-join-server [-server-password ]`
  • Added command-line startup option: `-open-url `
  • The new command-line startup options take precedence over equivalent startup secret settings.
  • Added command: `debug.printcommandlinearguments`


Localization
  • Added WIP translations for Pirate Speak.
  • Updated translations and translator credits for Czech, Estonian, Finnish, French, German, Hungarian, Japanese, Korean, Polish, Portuguese (Brazil), Russian, Slovenian, Spanish (Spain), and Swedish.


Miscellaneous
  • Enabling or disabling noclip will now only print a message to the debug console if you do it via the `noclip` command. This prevents the console being spammed with messages if you use the secret setting `MHG.Flying.Secret.AutoEnterNoclipOnStartFlying`.
  • Fixed copying messages from the client console sometimes copying rich text tags.
  • Fixed a server memory leak on game save when no players are online.
  • Fixed a rare case where the client and server failed to properly exchange component CustomData, leading to mess and disaster.
  • Fixed the "Upload this sandbox" button sometimes not working.
  • Fixed typos in several secret settings and server config values: `Nolcip` was fixed to `Noclip`, `Recieve` has been fixed to `Receive`, and `TimeOut` has been fixed to `Timeout`.
  • Fixed the Crash of Doom, which made the whole world disappear except some floating disembodied wires.
  • We now properly handle several situations where a crash could become even crashier when trying to remove outlines.

Logic World Wednesdays: The Well-Logged Edition

Hello! As we discussed last week, we’re working on a new game update, and it will be out in a few days. In the meantime, here’s a little blogging from Ecconia on one of the changes coming soon – our new logging system.



You can check out the full blog here on logicworld.net :)

Logic World development check-in: game update coming next week!

Hey everyone! We’ve been hard at work on Logic World, and we thought it was about time we gave you an update on how things are going.

As we announced in a previous post, we’re working on switching Logic World’s game engine from Unity to Godot. This process is going to take a while; we’ll discuss it in more detail in future blogs. In the meantime, we decided to do another update in the Unity engine to fix some more things and add some new features.

Logic World v0.91.3 is coming out next week. We’re excited to get it out to you!

If you want to know more, Ecconia has written on our blog about some of the changes coming in v0.91.3, particularly those relevant to mods and modders. If you like juicy technical details, click here to check out that blog.

See you soon for the game update!

Logic World v0.91.2 is now available!

Salutations, gamers!

Logic World update v0.91.2 is now available for download! You can get it right here on Steam. This update contains numerous large performance improvements, some upgrades to the building mechanics, and a veritable plethora of tweaks, improvements, and bugfixes across many areas of the game. As usual, the full list of changes can be found below.

This is the first Logic World update that contains work from all five of us in the newly expanded core development team: Jimmy, Felipe, Zoey, Ecconia, and GHXX. We're very proud of this update we've made together and we really hope you enjoy it.



If you haven't yet, you may want to read last week's State of the Logic World blog post, which goes into detail about the status of this project. You may also want to join our vibrant Discord community and subscribe to our very cool newsletter.

Thanks for playing. Much more will follow. We'll see you soon :)

0.91.2 Changelog


Performance
  • Significantly improved loading times for larger worlds (>100,000 components) by batching collider instantiations.
  • Fixed an issue that made hot-loads slower than cold-loads for larger worlds. All worlds now load faster hot than cold.
  • Limited the maximum physics delta time to prevent physics death spirals. This should significantly improve framerates in large worlds for most cases.
  • Sockets find their connections faster now. This means that initial world loading times are faster in worlds with lots of Sockets, and furthermore, placing or moving a lot of sockets at the same time will create less severe lag spikes.
  • Server tick scheduling has been improved to reduce the amount of time the server can spend idle and not simulating the circuitry. Faster simulation speeds can now be accessed before the server starts skipping simulation time.
  • The simulation now tries to catch up lost time over multiple server ticks, and only begins skipping simulation time once the simulation tick debt crosses a configurable threshold.
  • Removed the server config value `MaxAllowedTimeStepSeconds`, and replaced with with the new server config value `MaxAllowedSimulationTickDebtSeconds`, due to the new simulation catch-up system described above.
  • Assorted additional optimizations.


Building
  • Improved item movement during Multi-Grab and Multi-Clone operations. Items are much better at finding nearby valid placements, have a far greater tolerance for vertical displacement, and conform more strictly to their target rotations.
  • Added secret setting: `MHG.Placing.Secret.MultiPlacementMaxVerticalVariance`
  • Added secret setting: `MHG.Placing.Secret.MultiPlacementCastHeightIncrement`
  • Edge extensions are now only enabled during fine placement, so it's easier to place circuit boards into tight spaces.
  • Fixed false-negatives when detecting valid placements; you should now never be erroneously prevented from placing objects next to each other.


Server
  • By default, servers will no longer automatically save the game or make auto-backups while no players are connected. However, these behaviors can be restored by enabling the new server config values `DoAutosaveWhileServerIsEmpty` and `DoAutoBackupsWhileServerIsEmpty`.
  • If the server is started with the command-line argument `--help`, it will now print a help text with available command-line arguments, and then shut down.
  • If the server is started with invalid command-line arguments, it will now display an error message followed by the `--help` text, and then shut down.
  • Disabled terminal prompt prefix `>` when the `--plain-text` server argument is set.
  • The server console no longer waits for input before closing if there is an error on startup.
  • Fixed exception on server shutdown if `AnnounceOnLocalNetwork` is turned off. (#484)


Save Files
  • New format for save files, Blotter v7, with minor binary formatting tweaks.
  • Added save converter from v6 to v7 (Blotter v6 was used from Logic World v0.91.0 to v0.91.1).
  • Added save converter from v5 to v7 (Blotter v5 was used from Logic World v0.90.0 to v0.90.3).
  • The game will now automatically back up a save before converting it to a new save format version.
  • When you create multiple saves with the same title, the on-disk filenames will now use an incrementing counter (i.e. `world`, `world (1)`, `world (2)`) instead of appended dashes (i.e. `world`, `world-`, `world--`).


UI
  • Hotbar title text now fades out after a short time with the same slot selected.
  • Added secret setting: `MHG.UI.Hotbar.FullTextDuration`
  • Added secret setting: `MHG.UI.Hotbar.FadeTextDuration`
  • Fixed some glitches and inconsistent behavior with hotbar item management.
  • Fixed base building UI rendering behind world geometry when another menu is open.


Localization
  • Updated translations and translator credits for Bulgarian, Croatian, Czech, Dutch, Estonian, Finnish, French, German, Hebrew, Hungarian, Korean, Polish, Portuguese (Brazil), Romanian, Russian, Spanish (Spain), Swedish, Turkish, and Ukrainian.


Modding
  • Added preprocessor symbols `LW_SIDE_SERVER` and `LW_SIDE_CLIENT` for compiling a section of mod code only the server or only on the client. (#489)
  • Added a hook for post-parse save transformation to `SaveReader`, which mods can use to update their components.
  • If a server-side mod fails to compile, the server will now immediately shut down instead of continuing to load the save with a mod missing.
  • Client-side mod compilation errors now get printed at INFO log level. (#310)
  • When a mod instance fails to load, the error message is now more helpful, and instructs you to try deleting the cache folders.
  • Fixed CS1701 warning spam on client compilation error.


Miscellaneous
  • Improved handling of exceptions during application initialization to prevent outrageous error spam.
  • Fixed some exceptions being logged twice.
  • Fixed the client being spammed with exceptions if another player joins or leaves near a barrier.
  • Fixed exceptions when disconnecting from a server.
  • Fixed a crash that could occur with a particular easter egg that pops up on Markku's birthday.
  • Fixed not being able to join singleplayer games when UsePassword is enabled in `config.succ`. (#400)
  • Fixed occasional erroneous floating wires not being removed when the game is reloaded. (#482)
  • Fixed client crash to error screen on server rejoin when the server's simulation is struggling if the Simulation Speed Menu was not previously opened.

State of the Logic World: December 2023

Hello, it's me, Jimmy from Mouse Hat Games. If you're reading this, you've probably been following Logic World for some time, and you've probably noticed that for the past year, there's been very little official communication about Logic World. I'm truly sorry for the silence. It ends now.

Beginning in January, a number of things began falling apart in my life. Throughout this year I've suffered a host of physical health problems, mental health problems, and other personal issues. I wanted desperately to be working on this game that means so much to me, but I just wasn't capable of it. I felt embarrassed and ashamed of that, so I just disappeared from our community. (One of many things I've learned about myself this year is that I have avoidant tendencies. I'm working on it.)

The good news is that, since June, I have been laser-focused on fixing my life, and I've been extremely successful. May 2023 was perhaps the worst month of my life. November 2023 was the best so far.

I'm able to work again, and to love working, so I've been working a lot. Much has been happening recently and the future of Logic World has never looked so bright.

It's good to be back. Let me tell you a bit about what's been happening, and what's next.



A New Team


For the first year of this project's history, I was the only programmer working on Logic World. Felipe, an exemplary modder of the early prototypes I had released, joined the team in 2018. For the following years up through the Early Access launch of Logic World in 2021, Felipe and I developed the game together as a tight two-person team.

I'm pleased to announce that, for the first time in five years, we've gained another programmer. And another. And another. The core Logic World development team is now five coders strong: joining myself and Felipe are Zoey, Ecconia, and GHXX.

I LOVE working in this new expanded team. Everyone is so passionate and so capable. The skillsets and perspectives that each team member brings are diverse and complementary; we bring out strengths in each other, and truly I believe we are greater than the sum of our parts. The development velocity is amazing -- stuff gets done way faster than it ever did when we were less than half this size.

It has been an intimidating challenge to step into my new leadership role, overseeing so many people and moving parts, but I'm learning fast and I think I'm really growing into it. Managing people is hard, much harder than I thought it would be, but it's also profoundly rewarding. I'm thrilled and honored to be at the helm of this metaphorical ship.

You'll see the new developers around in devblogs, youtube videos, and hanging around in community spaces like our discord. I'll take a moment now to introduce our three new team members, and give them each a space to say hello in their own words.

Please give a warm welcome to:

[h2]Zoey[/h2]

Zoey is maybe the smartest person I've ever met. It's quite a common occurrence that we'll be discussing architecture & design for some incredibly complex system, and with a sinking feeling of dread, I'll realize that there's a terribly hard problem with it, the kind of problem that takes me days of thinking and researching before I start to feel like I might be approaching a good solution. I'll vocalize this problem to Zoey and ask her thoughts on it. "Oh, that's easy. We don't need to worry about that," she'll say, and then she'll describe a brilliant, perfect, ingenious solution that not only solves the problem I brought up but also five others I hadn't yet realized were there.

Zoey sees computers and code with a clarity of thought I've never encountered before. The experience and expertise she brings to the team is invaluable.

Hello! I'm Zoey, a self taught software engineer from England.

So what's my story? Well, let's start at the beginning.

13.8 billion years ago there was nothing, and then, there wasn't. A short while later, I was born. Ever since then I've had a fascination for technology, an unquenchable thirst for knowledge, and a passion to create. As a result, I have worked on hundreds of random personal projects over the years, from terrain generators and physics engines to robots and computer vision.

The full list of projects would be too much to put here, and frankly, I doubt I could remember them all, but here are a couple of my favourites:

Sparse Voxel Octree Ray Tracer (SVORT).
Voxels are fun, and ray tracing is fun, so why not combine the two? Standard voxels use too much ram, and are slow to traverse, so let's use a Sparse Voxel Octree, and write it all in CUDA!
To create my SVORT I began by designing a custom SVO data format, allowing for a compact data representation and efficient traversal. After that, I needed something to actually render, so I wrote a 3D model to SVO converter, allowing me to convert textured 3D models to my custom SVO format. Once all of that was done, it was time for the ray tracer itself. The most complex part of the ray tracer was figuring out a way to efficiently traverse the SVO on a GPU, but in the end I got everything working smoothly, and was able to render scenes at a scale of 4096^3 voxels with 24 bit colour (192GB without compression) in real time on a card with 8GB of VRAM.

Custom CPU Design.
Another subject that I enjoy is custom CPU design. Whether it is in Minecraft or a logic simulator, I have always found this area fascinating. The project I took the furthest started with designing my own Instruction Set Architecture. Though next, rather than stepping into a logic simulator, this time I wrote an emulator with an output terminal, along with some initial bytecode for testing. Once I had verified that it was working, I proceeded to write an assembler to ease the process of writing code for the CPU. That was all well and good, but for this one I decided to take it one step further. Buying a cheap FPGA development kit, I decided to bring my CPU into the real world. Writing the implementation for the CPU out in Verilog, along with an interface for the UART transceiver, I managed to get my custom CPU running and communicating with a terminal on my computer, bringing the project to a satisfying conclusion.

Throughout all that I've worked on, computer science has always held a special place in my heart, and when I came across Logic World, I knew I had found something I just had to be a part of.

As part of the Logic World team, my primary contributions will be improving performance and efficiency, and the occasional fancy algorithm to add a new feature.


[h2]Ecconia[/h2]

Ecconia is the biggest superfan of Logic World there ever was. For years he's been building incredible machines in the game, creating dozens of spectacular, joyful mods (not to mention creating modding tools and frameworks), hosting servers, helping newbies get on their feet, and one time even re-coding the whole game from scratch in Java. The years-long dedication he's had to Logic World is awe-inspiring, and it's only natural that he now joins the dev team to drive the game's success in the most direct way possible.

Ecconia understands deeply what makes Logic World good, where exactly it's lacking, and just what needs to happen for it to fulfill its potential and be the best it can be.

Heya, I am Ecconia.

I live in Germany, studying Computer Science. My primary hobby is ice skating. I like to write big messages.

I started doing boolean logic circuits as a young boy on the playground, drawing a Full Adder circuit into the sand. Eventually that led me to Redstone, but I never felt happy there. There were many inconsistencies and weird unintentional behaviors.

But being active in such a community brought my attention to [code single]Logic World
: a boolean logic simulator, which did not give me nightmares. Being fascinated with the game and waiting for the Early Access release, I consumed all information about the game there is -- reading all LWW posts, watching all related videos -- which gave me a lot of insight.

During the long time of waiting, I started the OpenTUNG project, which basically is a rewrite of LW's alpha version without the bugs. But now that LW is released, we're all using LW, so I'm no longer working on OpenTUNG.

Being a programmer and gamer/modder, after some time I got annoyed by a certain bug in Logic World: it was not possible to automatically noclip when flying without freezing the game. I wrote a mod which fixed this bug, making it possible for me to enjoy LW more. If you've ever done game modding, you know it's a dangerous rabbithole. Once you start ... there is no going back.

At first I made simple mods like DisableCollision, but I soon moved onto really ambitious mods like CustomWirePlacer -- a mod that fully replaces the vanilla wire drawing to add 2D wire placement support and much more. In my eagerness to explore all the possibilities and features of modding I got to know all core code of the game.

Btw, my ultimate goal in LW is to build a computer which I can write programs for from inside the game. Starting with a capable typewriter to input assembly code...

As part of the Logic World developer team I am going to squish bugs and enhance the moddability of the game. I am excited to be part of the team and to discuss and develop things together, to make solutions even better. Let me be a gateway for modders to suggest API features. Happy :)


[h2]GHXX[/h2]

GHXX is a brilliant engineer, both within Logic World and beyond it, who pushes the boundaries of this game like nobody else. He has an incredible amount of skill and knowledge across technical domains, and he applies it to this project with invigorating fervor. In-game, he creates intricate yet expansive machines that I adore -- so much so that I used screenshots of them in the 0.91 release blog.

GHXX's excellence and passion are constantly pushing me to be a better developer, and shaping Logic World into a better game.

Hi, I'm GHXX, a self-taught programmer, with around 10 years of experience in C# (the language that Logic World is primarily written in) and a varying, but smaller amount of experience in a plethora of other languages. I also like to reverse-engineer code, even on the assembly level and, of course, play modded games.

Over the course of this timespan I have written many mods/tools for several games (Rimworld, KTaNE, Cookie Clicker, Garrys Mod, Factorio, Logic World and others), and even some modloaders/tools that make modding a whole lot easier for some games.

My most intensive reverse-engineering project to date is my modding interface for a very nice chess-spinoff game called *5D Chess With Multiverse Time Travel*. My interface adds a bunch of features to that game and enables easy modding of it, with zero modifications to game files, by patching the code at runtime -- and it's even quite stable. I'm proud of this project but it came at the cost of spending well over one hundred hours digging through compiled C++ code.

I have also created a few Logic World mods and personal dll patches back in the day for 0.90.3 which addressed a few problems when playing on pretty large worlds. In fact, all of those mods/patches, with the exception of my TCP Bridge mod (which I should probably update at some point as it is currently sitting on 0.90.3, despite likely working for 0.91.1 anyway), were actually just created so that a dear friend of mine, known as 00asdf, and I could continue extending our gigantic world, containing just under 2 million components, which we have been building ever since we purchased Logic World on Steam.

Generally, what would happen is that we would play, then face some kind of performance roadblock, at which point I would leave the server and investigate and mod around the issue, so that we could continue expanding. The ability to add fixes directly to the game, rather than having to cook up a modified dll or a harmony mod is the main thing that got me interested in helping out with Logic World.

I am very grateful to be part of the dev team, as the collaboration between all of us will hopefully lead to a much much more performant version which enables everyone, including myself, to create ever bigger and more ambitious builds.


I love this freaking team. What an amazing group of humans.


A New Update


We've been cooking up a new game update for you! Logic World v0.91.2 will be dropping next Wednesday, December 20 on Steam and Itch.io. This is a jolly little update containing large performance improvements, some better building mechanics, tons of bug fixes, and a whole bunch of other miscellaneous goodies. It's the first update that all five of us in the new core dev team have worked on.

As usual, the full detailed changelog for v0.91.2 will be posted here on this blog when the update comes out. To make sure you don't miss it, sign up for our fabulous newsletter.


A New Engine


Unity just kind of sucks in general and it keeps getting worse and we all hate working with it and recent events have made it clear that as an organization Unity cannot be counted on to not do terrible awful horrible crap that completely screws us over. We want Logic World to be built on a tech stack that we love and have confidence in; we want the future of our game to be secure and within our control; maybe most importantly, we want our experience of working on our game to be as pleasant as possible, so that we feel joy when we open the project, rather than dread as we are forced to wait for ten minutes for Unity's goddamn progress bar to do god-knows-what.

With all this in mind: update 0.91.2, coming next week, will be the last version of Logic World built on the Unity engine (unless we need to push a hotfix). Once 0.91.2 is out, we'll be devoting ourselves to porting Logic World from Unity to Godot: an open-source, community-driven game engine with a bright and gleaming future.

We evaluated many options for the new engine before settling on this one. There are a lot of reasons I love Godot, and we'll probably do a full development blog dedicated to the upsides of this engine, but in short, Godot is:

  • fun to work with,
  • NOT UNITY, and
  • free and open source software, so once we've moved our game to Godot we will truly own it and have control over it.

The work to port things will not be fast or easy, but it's the best move for our long-term future. I've been looking for years for an opportunity to get away from Unity, and now is finally the right time.



---------------------------------------



I love Logic World so much. I'm excited every single day to wake up and work on it.

We'll see you next week for update 0.91.2. We'll see you in 2024 for many exciting development blogs and huge new game updates on our glorious new game engine.

We are Mouse Hat Games, we are stronger than we've ever been, and we are going to build the greatest circuit simulation video game ever made.

Thanks for reading. It's the privilege of a lifetime to make this thing for you.

Jimmy Cushnie
Creator of Logic World