Bolt for beginner. Some general questions. Need your help!

Alexflame108 2 years ago updated by Nikita 2 years ago 7

Hello, everyone!

I am gamedesigner-beginner and I would like to make my own 2D platformer for PC. I have no background as a programmer.

I have watched Platformer Tutorial and lots of videos on youtube on how to work with Bolt. However, the more I learn, the more it seems to me that it is impossible to progress with Bolt without the knowledge of C#. 

On one hand, it is logical, but on the other hand it seems to me that people like me (who didn't learn programming) become interested in plugins like Bolt precisely because they want to make a game WITHOUT learning how to code. However, although Bolt is very great tool, you still can't progress without learning C#. 

So, my questions are:

1) Is there any way to learn Bolt without getting into depths of C#? And if not, then what's the point of Bolt then, - if you still have to learn how to code? And if yes, what would you recommend? Cuz I watched videos, I read tutorials, but I still don't understand what steps should I follow to progress with Bolt. 

2) Is it possible to make some simple mechanics for your game in Bolt, and then find some skilled Unity Developer freelancer so that he can add scripts for some hard mechanics? Is it possible to combine Bolt and C# effectively?

3) Also is it possible to make game FULLY on Bolt even with hard mechanics, like talent tree, different parameters and etc? (I am not asking about how reasonable it is, i am just interested if it's at all possible).

4) Am I correct suggesting that Bolt 2 will be almost as good as C# in terms of performance? Like, if you make your game fully on Bolt 2, then it will be almost as good as on C#?

I really really need your help, buys, because I searched lots of websites, forums, reddit, but couldnt find any concrete answers, that I need.

Thanks a lot in advance!

Bolt Version:
Unity Version:
Scripting Backend:
.NET Version (API Compatibility Level):

The Discord is used more as the de facto repository of knowledge for Bolt (there's a search!), but here goes:

1) One point of Bolt is that for a lot of non-programmers, coding is very difficult to parse. Bolt provides a visual backdrop that makes it much easier to visualize the code, breaking it down in to simpler bits to parse in the process. (also, even if Bolt is not for you, you'd have to learn how to use a different tool regardless) Human Naming is also there as an extra step to make parsing even easier.

As for recommendations on how to progress, break a mechanic down in to a step-by-step list of what you want to happen. Be as detailed as possible. If you want something to, when you click it, expand, then after 2 seconds change colour and be replaced by an explosion sprite for instance? You can start searching for, and throwing in all the nodes you'd need for that: pointerDown, scale, waitForSeconds, Tint, setSprite are what those bring to mind. Once those are just lying in your graph, you connect a Flow of what should happen before/after. Then you just fill in all the needed inputs. In this way, you don't actually need a full understanding of what all that code does, you're just throwing in stuff you need and filling in all the inputs it requires. etc etc. Until everything works! (or you realize you actually wanted it to work in a completely different way ofc) And over time (with help from the Discord) you'll gain expertise on how Bolt itself works.

1b) I still say that that's one of the strongest pros of Bolt. That if you can break it down, you can build it. In a sense, the only difference between an easy mechanic and a hard mechanic, is if you can break it down (just in conversational terms) enough in a systematic way where everything still works.

2) Bolt works fine side-by-side with C#. Due to reflected units, you could get someone to code something for you, and you can just plop it in to Bolt, deciding on when it should happen / what parameters it should be taking etc. Same with most plugins and assets. (with some limitations such as Delegates, generics, which you'd need to write a wrapper function for, or wait for Bolt2) The Variables and Events systems are also exposed so a hired coder could take advantage of that as well.

3) Bolt is basically C#. Anything that can be done with C# can be done with Bolt. Except for Delegates, Inheritance, etc. But you can find workarounds for all that. Speed might be a concern for computationally heavy stuff though, recreating A* Pathfinding or mesh deformations in Bolt might not be a good idea for instance. In both cases, just finding an asset (or coding it) and triggering them in Bolt gets around those issues entirely.

4) My understanding is that it is literally the same as C#. No performance hit at all as it turns itself in to C# code before you run it.

Vong, thanks a lot for such detailed reply. That really helps! Really appreciate it!

So, if i understand correctly, in case I need to understand how to programm some random mechanic, I can go to google or youtube and search for some example in C# and then try to find the same function in Bolt and apply it?


yup. Google whatever you want to do, note down the Methods they're using, make sure you have the right Class/Type (you may have to add them in Type Options if its not one of the default ones) and throw them all in to Bolt. And at that point its just logically connecting dots. 

Personally I also prefer checking out the Unity API because it provides a lot more context, and is an easy way to discover potentially better suited methods. But some people would rather just use the Fuzzy Finder in Bolt, plop down a bunch of similar enough sounding methods, and common-sensing it out. Which is a legit way of doing things, especially in the beginning when your coding-fu is still weak.

dont hurry up/ do tutorial and you will understand workflow/ https://ludiq.io/bolt/tutorials/platformer

Thanks for your reply. 

I have already completed this tutorial. Unfortunately it's not very thorough as most of the things for some reason have been done in advance and developer doesn't show how he has done it. 

There is really lack of detailed tutorials for absolute beginners in developing, that's why I decided to ask for help)


ye i understand  / as said vong  use unity scripts as a reference/ just google how to do that in unity and u will see a lot of examples by unity community  / find words in their code and then search them in fuzzyfinder


I made the tutorials from AI Behavior on. Feel free to reach out on Discord at homemech#7937 if you need any help with them. 

In learning Zbrush, Substance, Blender, C#, etc. I often watch tutorials multiple times to understand things. I kept track when I learned Blender--the tutorials took me about seven times longer to go through than the length of the video. That is, a one hour tutorial took me about seven hours. 

The sports game in Intro to Bolt and the factory in State Machines are projects designed to be played and tinkered with. When I first learned Unity/C#  I was frustrated with how the tutorials often left so little room for open-ended experimentation. Take advantage of the sandbox approach and play with things before you move on. 

When something clicks and you develop an understanding of a new concept, write down the way you wish it would have been explained. Then you can send it to me :D