This is the Godot visual scripting i've been looking for for years. Thank you for starting this project, I hope it grows full and well. Making this as much like Construct/Gdevelop (even possibly improving on them) as possible would be the most impressive feat imaginable. So many beginners and people that just like the block code workflow would be happy.
Agreed. I think Scratch-like blocks are much better than nodes or spreadsheet code (think Clickteam Fusion, GDevelop, etc.) as they're visually cleaner and you are unlike to accidentally make incomprehensible mess of nodes, a.k.a. actual spaghetti code (nodes being the meatballs and connections between them being noodles).
@@UltimatePerfection as a GDevelop user, I greatly enjoy the hierarchical structure of the event sheet (spreadsheet). It pains my OCD to see coding blocks being placed at random locations on a canvas. At least make them snap to align vertically or horizontally!
This is what programmers that implement the node system such as Blueprints, Unity visual scripting and Godot Visual scripting doesn't grasp. With those systems you might as well learn to code as its ultimately better and easier to use. It creates too much "spaghetti code" with bigger projects if very x and y translation is a node that needs to be connected ith 5 other ndes before it does what is usually basic in code. :) This is where the people that made Playmaker for Unity (Also node based), Gdevelop and Construct 3 understands. You need a level of abstraction higher with actions and stuff so reading and flow and so on is more accessible to build out ideas. Even better if that visual method can be converted or generates code that can be looked at in the background. This is how people can learn to understand the logic of what that block or action is doing in the background.
This guy is god for who doesn't have coding knowledge I hope this is will lead better updates for more stuff like coding in gdevlop or click team fusion type style
I feel this can be used both by pros and noobs. Block code for simple stuff like handling menus, etc. while leaving more complex stuff with GDScript/C#.
Amazing! There is a huge potential for this as the next VISUAL SCRIPTING which needs to be a default system. I didn't see the same options of the blocks on the left list on the version I downloaded from the AssetLib, so I'm not sure what's the most up to date version the video or the library. I also tried to change animation but I didn't see any block related to it, I guess it's not there yet. Some Suggestions: 1. As reference please look at Construct or GDevelop how they also change some "tech terminology" to more Human-Like instead of GDScript terms, so even if someone doesn't know GDscript will be able to Drag & Drop to make anything. 2. A Dedicated comments block will be nice to connect or just put floating between blocks on the Block-Code canvas. 3. Navigation: - While Holding the Middle Mouse Button to pan around - While dragging MMB to Zoom in Out 4. Canvas: - Adding a GRID and Snap to Grid will be VERY nice - Set the GRID transparency and color so it will be easy to control. 5. More Blocks to cover more and more of what GDScript can do I'm not a programmer but I used some visual scripting so I'm a decent "test subject" 😅 6. Search / Filter to easily find specific blocks. 7. Mouse Control: Right Click over a BLOCK or Multiple Blocks (marque / lasso selection) for different tasks: - Duplicate Block (or group of blocks) - Delete (I know you can drag to the left but it's good to have another way instead of dragging one by one to the left. - Copy/Past blocks obviously 8. Instead of "magic numbers" like in the video example, allow to use variables (I couldn't do it on the current version) 9. Autocomplete will be nice to help enter existing node names, variables etc.. TBH - I have so many more ideas, but since I see the huge potential of this visual scripting... I had to share my most basic things I noticed not yet in the plugin. Please keep up the wondaful job you do! ❤
Thanks for the feedback and suggestions! The version in the video is slightly ahead of the latest AssetLib release, we'll have more releases flowing shortly. I expect the appearance will continue to change as we are still in early stages. Also, the selection of available blocks depends on which node you are attaching to (e.g. the "Move with player 1 keys" block only applies to a custom component we include in the plugin called SimpleCharacter).
@@EndlessOShey for some reason my code blocks plugin doesn’t set up when I install it from asset lib, I tried to reach out over the discord and didn’t get any help
@@thedragonsden2004 Hey! Sorry to hear you're having trouble. Sometimes, the issue can be that the plugin isn't enabled after installation. We've placed step-by-step instructions on how to enable it in the description of the RUclips video. After you install the plugin from AssetLib, you must enable it within Project → Project Settings → Plugins. Let us know if you still have any issues!
You may want to update this video. The block code doesn't have tab on the top of the screen anymore and it lives in the bottom area along with stuff like shader editor. It's IMO a mistake, it should stay as a separate workspace because that bottom part is TINY, but if it's the way it is, the video needs to be updated.
Is it possible to include Endless's Godot-Block-Coding within a video game, where the player can edit scripts within the game? Ex: A player could change the fire rate of a weapon from 5 rounds per second to 10 rounds per second by editing the variable value in the Godot-block-editor. Once the player exits the editor, the game recompiles...
Very curious if there is or will be a feature to convert the block code into a GDScript, this would help learn off what the person built to give them a good idea of how it would look in GDScript. Other than that, thank you for this!
this is actually the case. There is a "Print generated script" button that can be seen in the editor. Then going to the Output at the bottom dock shows the GDScript. But yeah this needs can be improved.
thank you, SO MUCH for this 😭 Im trying to transition from Turbowarp [a scratch addon] to Godot, but im pretty overwhelmed by the UI's and just wanna start building stuff first without having the copy paste some scripts
a little issue i'm having. i would install the plugin and enable it and all, but the block code editor doesn't seem to show up like your screen and just shows a blank screen, and i cant seem to find a way to activate it.
great video, im new to game development and i really would love to be able to only use block coding for my godot game so if you could make more tutorials it would be amazing, i have been looking everywhere for tutorials but i cant find it, if you could even make like a platformer game with it would be amazing im sure many people want to know more about this block coding, specially beginners
it doesnt work! (for me) when i create a new project, download the blockcode i add a character body 2D with the collision shape etc. but when i add the blockcode node its just a white circle node and nothing happens also i tried checking the project plugins but it was empty
Hello, good initiative! It might be interesting to reproduce Brackeys' tutorial with this tool. It has become fashionable for different engines to reproduce the same game that Brackeys made in his tutorial and it is an excellent way to compare engines... it would be great to see this visual tool reproducing that same game.
Man... this really makes me rethink how we do GD Scripting or any programing in any language for that matter... this layout works so much better with my head space I can see the logic so much easier I don't need to think about how things fit together as much... I've often thought of having massive visual separators in my code using comments, but I realize now the book method of writing code is kinda bad and doesn't work with our brains well, and it would be better if everything was written in a node based IDE so we can just see the chains of logic visually and can just fallow the logic chins down the line to find what we are looking for... Edit: I didn't know there was a difference between Node based and Block based coding when I wrote this, block based looks better IMO...
i made a simple label node i just wanted to make the label.text="hello world" , i couldn't find anything in the blocks that can bring nodes and change their properties am i messing something ? also there was no mention of Random numbers , lets say i want something to move in a random speed , u cant do it using this plugin , it has alot of potential but its too early for it to be useful , thanx for the effort though
I got a question. How well does it perform compared to Orchestrator? Was thinking of using that, since it is like visual scripting, but I've read that some people did not manage to make it work and the difference might be that this Block Coding is far more closer to actually looking like code and a better choice to actually learn coding. Are there complications with this plugin/addon or is it easy and safe to use for your project?
THIS IS WHAT IVE BEEN LOOKING FOR!!!! Thank you for this! I have installed the Block Code asset but it doesn't show above like in yours. Am i missing something?
I installed it successfully, but the node doesn't exist on my directory. I installed from asset lib into my addons file. I can see the files under addons under res in file manager inside a project, but no node. What do I do?
@@EndlessOS I did. Eventually I had to look into the folder and find that the first folder was not needed. By taking it out, which actually had all the files in it and putting that into my addon folder, it worked. Ty
Great video, the only criticism I have is you started off assuming your viewer knew what block coding was about for some reason. It would be good to mention early that it is an alternative form of coding that is akin to visual scripting languages.
Not all videos need to be made for complete noobs. With that logic, we should all start by defining what is a computer, etc. Godot itself ain't fit for absolute beginners either. SCRATCH, the original "block coding" game creator application this visual scripting addon mimics, has been out for so long, that many younger programmers already cite it being their first touch with coding.
I absolutely love this. Is it open source. Id love to contribute to its development if possible. [Edit] found it. Seeing a lot of room for enhancements/features.
This is really neat! Obviously reminds me a lot of Google Blockly and Scratch. I was wondering how the underlying block engine is implemented, and what the plans for this plugin are. Could this be used not just as a godot plugin, but instead used as a node type (like graphnode) to make a game/app that teaches block programming, by making an editor with blocks that can be defined by the dev (me), and used by the player?
We don't have any docs for the underlying implementation yet but the code is all there, it's open source and written in GDScript. You can create custom blocks attached to your own node/scene types. For example check out the SimpleCharacter building block scene that we include in the plugin, in the GDScript attached to that node it defines a custom block for simple movement based on keyboard input. I think there are challenges in taking this outside of the Godot editor, that is not really something we are designing and architecting for. For example the Pong game here needs to be built in the Godot editor to create, place and configure all the nodes (we have a separate video showing this setup process). Then only at that point, you add block code to it.
It's for Godot 4.2 and newer. Custom blocks can be implemented, see the SimpleCharacter scene shipped in the plugin (and the GDScript attached to it) as an example
Brilliant! Can't wait to hear how you get on. On the Godot Cafe discord server, there is a #visualscript channel where we are participating. Another place to give feedback is here: forum.godotengine.org/t/block-coding-high-level-block-based-visual-programming/68941/14
So it turns out the same thing, only you don’t write the code. This is for those who already know the code and just want to speed things up. Any beginner will have to learn the code so that later they at least know which node is responsible for what
The blocks can manipulate any node type, so it should work for 3D games too. But we have not specifically designed for this case (yet) so you might find that some operations are missing or tedious to achieve using blocks. Please give it a try and let us know!
This is the Godot visual scripting i've been looking for for years. Thank you for starting this project, I hope it grows full and well. Making this as much like Construct/Gdevelop (even possibly improving on them) as possible would be the most impressive feat imaginable. So many beginners and people that just like the block code workflow would be happy.
Agreed. I think Scratch-like blocks are much better than nodes or spreadsheet code (think Clickteam Fusion, GDevelop, etc.) as they're visually cleaner and you are unlike to accidentally make incomprehensible mess of nodes, a.k.a. actual spaghetti code (nodes being the meatballs and connections between them being noodles).
@@UltimatePerfection as a GDevelop user, I greatly enjoy the hierarchical structure of the event sheet (spreadsheet). It pains my OCD to see coding blocks being placed at random locations on a canvas. At least make them snap to align vertically or horizontally!
This is what programmers that implement the node system such as Blueprints, Unity visual scripting and Godot Visual scripting doesn't grasp. With those systems you might as well learn to code as its ultimately better and easier to use. It creates too much "spaghetti code" with bigger projects if very x and y translation is a node that needs to be connected ith 5 other ndes before it does what is usually basic in code. :)
This is where the people that made Playmaker for Unity (Also node based), Gdevelop and Construct 3 understands. You need a level of abstraction higher with actions and stuff so reading and flow and so on is more accessible to build out ideas.
Even better if that visual method can be converted or generates code that can be looked at in the background. This is how people can learn to understand the logic of what that block or action is doing in the background.
griffpatch's gonna have a field day with this one
😂
Literally 😭
This guy is god for who doesn't have coding knowledge I hope this is will lead better updates for more stuff like coding in gdevlop or click team fusion type style
funny,this was the kind of stuff i was looking for the past few days
Even though I’m a “professional” coder, I kinda want to use this just to relive my Scratch days lol
Thats What I'M SAYING
I feel this can be used both by pros and noobs. Block code for simple stuff like handling menus, etc. while leaving more complex stuff with GDScript/C#.
Amazing!
There is a huge potential for this as the next VISUAL SCRIPTING which needs to be a default system.
I didn't see the same options of the blocks on the left list on the version I downloaded from the AssetLib, so I'm not sure what's the most up to date version the video or the library.
I also tried to change animation but I didn't see any block related to it, I guess it's not there yet.
Some Suggestions:
1. As reference please look at Construct or GDevelop how they also change some "tech terminology" to more Human-Like instead of GDScript terms, so even if someone doesn't know GDscript will be able to Drag & Drop to make anything.
2. A Dedicated comments block will be nice to connect or just put floating between blocks on the Block-Code canvas.
3. Navigation:
- While Holding the Middle Mouse Button to pan around
- While dragging MMB to Zoom in Out
4. Canvas:
- Adding a GRID and Snap to Grid will be VERY nice
- Set the GRID transparency and color so it will be easy to control.
5. More Blocks to cover more and more of what GDScript can do
I'm not a programmer but I used some visual scripting so I'm a decent "test subject" 😅
6. Search / Filter to easily find specific blocks.
7. Mouse Control:
Right Click over a BLOCK or Multiple Blocks (marque / lasso selection) for different tasks:
- Duplicate Block (or group of blocks)
- Delete (I know you can drag to the left but it's good to have another way instead of dragging one by one to the left.
- Copy/Past blocks obviously
8. Instead of "magic numbers" like in the video example, allow to use variables (I couldn't do it on the current version)
9. Autocomplete will be nice to help enter existing node names, variables etc..
TBH - I have so many more ideas, but since I see the huge potential of this visual scripting... I had to share my most basic things I noticed not yet in the plugin.
Please keep up the wondaful job you do! ❤
Thanks for the feedback and suggestions! The version in the video is slightly ahead of the latest AssetLib release, we'll have more releases flowing shortly. I expect the appearance will continue to change as we are still in early stages. Also, the selection of available blocks depends on which node you are attaching to (e.g. the "Move with player 1 keys" block only applies to a custom component we include in the plugin called SimpleCharacter).
@@EndlessOS I'm looking forward to see what will you cook for upcoming versions 💙
@@EndlessOShey for some reason my code blocks plugin doesn’t set up when I install it from asset lib, I tried to reach out over the discord and didn’t get any help
@@thedragonsden2004 Hey! Sorry to hear you're having trouble. Sometimes, the issue can be that the plugin isn't enabled after installation. We've placed step-by-step instructions on how to enable it in the description of the RUclips video. After you install the plugin from AssetLib, you must enable it within Project → Project Settings → Plugins. Let us know if you still have any issues!
You may want to update this video. The block code doesn't have tab on the top of the screen anymore and it lives in the bottom area along with stuff like shader editor. It's IMO a mistake, it should stay as a separate workspace because that bottom part is TINY, but if it's the way it is, the video needs to be updated.
This is extremely helpful to beginners, I really hope you continue to support this plugin :-)
Is it possible to include Endless's Godot-Block-Coding within a video game, where the player can edit scripts within the game?
Ex: A player could change the fire rate of a weapon from 5 rounds per second to 10 rounds per second by editing the variable value in the Godot-block-editor. Once the player exits the editor, the game recompiles...
I tried that one game you guys made a while back about the pipes and the programming to make the pipes longer or shorter and stuff. I liked it.
Very curious if there is or will be a feature to convert the block code into a GDScript, this would help learn off what the person built to give them a good idea of how it would look in GDScript. Other than that, thank you for this!
this is actually the case. There is a "Print generated script" button that can be seen in the editor. Then going to the Output at the bottom dock shows the GDScript. But yeah this needs can be improved.
thank you, SO MUCH for this 😭
Im trying to transition from Turbowarp [a scratch addon] to Godot, but im pretty overwhelmed by the UI's and just wanna start building stuff first without having the copy paste some scripts
a little issue i'm having. i would install the plugin and enable it and all, but the block code editor doesn't seem to show up like your screen and just shows a blank screen, and i cant seem to find a way to activate it.
Same
I'm not a fan of visual programming, but what you are doing is very cool! Don't abandon this project :)
great video, im new to game development and i really would love to be able to only use block coding for my godot game so if you could make more tutorials it would be amazing, i have been looking everywhere for tutorials but i cant find it, if you could even make like a platformer game with it would be amazing im sure many people want to know more about this block coding, specially beginners
it doesnt work! (for me) when i create a new project, download the blockcode i add a character body 2D with the collision shape etc. but when i add the blockcode node its just a white circle node and nothing happens also i tried checking the project plugins but it was empty
Hello, my ball doesn't bounce back when I use any Input block. How is it possible? Blocks are diferents in the current version then the video?
Really cool project, all the best with it!
Hello, good initiative! It might be interesting to reproduce Brackeys' tutorial with this tool. It has become fashionable for different engines to reproduce the same game that Brackeys made in his tutorial and it is an excellent way to compare engines... it would be great to see this visual tool reproducing that same game.
Man... this really makes me rethink how we do GD Scripting or any programing in any language for that matter... this layout works so much better with my head space I can see the logic so much easier I don't need to think about how things fit together as much... I've often thought of having massive visual separators in my code using comments, but I realize now the book method of writing code is kinda bad and doesn't work with our brains well, and it would be better if everything was written in a node based IDE so we can just see the chains of logic visually and can just fallow the logic chins down the line to find what we are looking for...
Edit: I didn't know there was a difference between Node based and Block based coding when I wrote this, block based looks better IMO...
i made a simple label node i just wanted to make the label.text="hello world" , i couldn't find anything in the blocks that can bring nodes and change their properties am i messing something ? also there was no mention of Random numbers , lets say i want something to move in a random speed , u cant do it using this plugin , it has alot of potential but its too early for it to be useful , thanx for the effort though
What block do i use to play animation or do i need to do normal code with it so far im loving this add on ive been using it to make my first game
Hello! Could someone help me? I downloaded this plugin, but when I add the blocks they do not appear, but are on the list on the left
Cool stuff. Would be handy to be able to reuse logic on multiple nodes.
I got a question. How well does it perform compared to Orchestrator? Was thinking of using that, since it is like visual scripting, but I've read that some people did not manage to make it work and the difference might be that this Block Coding is far more closer to actually looking like code and a better choice to actually learn coding.
Are there complications with this plugin/addon or is it easy and safe to use for your project?
HELLO FELLOW SCRATCH DEVELOPERS!!!
Great!!! No DeltaTime needed? Only for 2D?
for 3d?
I'm getting an error when I try to run the file: Parser Error: No constructor of "Vector2" matches the signature "vector2(int)".
Does it work in 3D mode?
Why not
bro wtf, godot is the future.
What’s the strategy for when blocks get hundreds of lines long? It looks easy in the beginning but how do you get an overview as projects grow?
Hii. I only see Variables on the bottom.
Does this work in 3d I'm not a very good programmer and this would help alot
Also, I can't get the image to show up unless I add a Sprite2D as well
can you make 3d multiplayer game with this?
Yes.
THIS IS WHAT IVE BEEN LOOKING FOR!!!! Thank you for this! I have installed the Block Code asset but it doesn't show above like in yours. Am i missing something?
This is awesome work!
I installed it successfully, but the node doesn't exist on my directory. I installed from asset lib into my addons file. I can see the files under addons under res in file manager inside a project, but no node. What do I do?
Did you enable the plugin? In Project → Project Settings → Plugins.
Apologies that this step was missed in the video.
@@EndlessOS I did. Eventually I had to look into the folder and find that the first folder was not needed. By taking it out, which actually had all the files in it and putting that into my addon folder, it worked. Ty
I can't get it to work ):
What I'm wondering is, who would like to develop this? If you can work on this then you don't need this, so why work in the first place?
does it work for 3d?
Yes. It works for 3D and 2D. It even outputs real GDscript you can edit.
@@GugureSux what are the limitations?
I have a question, will this work for 3D mode? Like is this just for 2D games?
Yes, it works for 3D. It's all GDscript under the hood.
Great video, the only criticism I have is you started off assuming your viewer knew what block coding was about for some reason. It would be good to mention early that it is an alternative form of coding that is akin to visual scripting languages.
Not all videos need to be made for complete noobs. With that logic, we should all start by defining what is a computer, etc. Godot itself ain't fit for absolute beginners either.
SCRATCH, the original "block coding" game creator application this visual scripting addon mimics, has been out for so long, that many younger programmers already cite it being their first touch with coding.
Can anyone help I dont have the block code button next to asset lib but have installed everything
its to the down bar next to shader editor but i also want it after asset lib
Looks great! Are there any updates?
i installed it, and its in my addons folder, but nothing appears on the top of my screen, and it doesnt appear as a node
nevermind i got it working, thanks!
nevermind, i got it as a node, but still nothing appears on the top of my screen
ahhh i got it working. you have to go to project settings. then plugins, and enable it
@@yeaglaceshorts546 Thanks for trying our project. Apologies for missing this step in the video!
@@EndlessOS so I thought I got it working, but the node will not appear, even though the block coding tab is at the top…
I absolutely love this. Is it open source. Id love to contribute to its development if possible.
[Edit] found it. Seeing a lot of room for enhancements/features.
Now Thats one Hot Cup Of Cool! Nice job 🎉🎉
Can i use this Block Coding for 3d game?
yes
What game in the thumbnail (kewl plugin)
Yesssssssss thank you so much for this! Cannot wait to see it fully implemented
Scratch plugin looks neat!
i am a scratch pro this is perfect
Same
I agree, I want to see this make it. As unity's scratch coding failed. This could do better though.
This is really neat! Obviously reminds me a lot of Google Blockly and Scratch.
I was wondering how the underlying block engine is implemented, and what the plans for this plugin are. Could this be used not just as a godot plugin, but instead used as a node type (like graphnode) to make a game/app that teaches block programming, by making an editor with blocks that can be defined by the dev (me), and used by the player?
We don't have any docs for the underlying implementation yet but the code is all there, it's open source and written in GDScript. You can create custom blocks attached to your own node/scene types. For example check out the SimpleCharacter building block scene that we include in the plugin, in the GDScript attached to that node it defines a custom block for simple movement based on keyboard input.
I think there are challenges in taking this outside of the Godot editor, that is not really something we are designing and architecting for. For example the Pong game here needs to be built in the Godot editor to create, place and configure all the nodes (we have a separate video showing this setup process). Then only at that point, you add block code to it.
Is it for 4 or 3? Also, can you implement custom blocks with GDScript?
It's for Godot 4.2 and newer.
Custom blocks can be implemented, see the SimpleCharacter scene shipped in the plugin (and the GDScript attached to it) as an example
This is amazing. I love this. Thank you so much.
I am currently trying to make a platformer game using this code block system. is there a comunity discord server for this plugin yet?
Brilliant! Can't wait to hear how you get on. On the Godot Cafe discord server, there is a #visualscript channel where we are participating. Another place to give feedback is here: forum.godotengine.org/t/block-coding-high-level-block-based-visual-programming/68941/14
If you create a tuto for a match 3 in block coding, you will be truely sympa
why is playing audio directly from code not possible in normal godot? I don't want to bloat my scene trees with a billion audioplayers
It's possible but perhaps a bit tedious! Our audio playing blocks generate GDScript code to play the sounds.
my friend tells me i cant find it in asset library in godot engine
me: but i found it in asset library online
idk how to import it
This is actually crazy, thank you.
Am I the only one who noticed they never set up the score sound?
as a scratch user this is fucking awesome
good job m8.
Doesn't work 😢
Sorry to hear it's not working for you! Could you provide a bit more detail on the issue? That way, we can help you better.
So it turns out the same thing, only you don’t write the code.
This is for those who already know the code and just want to speed things up. Any beginner will have to learn the code so that later they at least know which node is responsible for what
I've heard from many pros saying you should just prototype everything in visual scripting first, then convert to code only if you need to.
@@JohnnyThund3r I've already written half a game with AI. I don't do anything at all - I set the logic and correct the answer
Looks awesome bruv. I would use it if I used Godot.
This could use some animation blocks.
Looks like scratch got so popular the community ported a method of it to godot LOL (i am a scratcher and lua user... to im happy)
3D support ?
The blocks can manipulate any node type, so it should work for 3D games too. But we have not specifically designed for this case (yet) so you might find that some operations are missing or tedious to achieve using blocks. Please give it a try and let us know!
@@EndlessOS ok , thanks!!👍
LOL, I was seriously pondering making this 🤣🤣
AMAZING WORK
so this is the next generation of godot engine? what a scary thing
Love you guys
Only for 2D
so cool
scratch but good
nice = )
AT LONG LAST CONSTUCT WILL NOT HOLD ME IN CHAINS
Interesting 😊
Amazing!!!!!
reminds me of scratch
Neat well done
Awesome
ho this looks cool
Having the thumbnail for this video include a screenshot of the completely unrelated Cassette Beasts is disingenuous at best.
your cute
Pathetic clickbait from the thumbnail, very disappointed with not being truthful to viewers.