Lua and Canvas. What is the difference?

Hello! Maybe I chose the wrong topic for the question, I’m not sure … But I hope you will clarify some misunderstandings to me. Since the FG has long been obsolete, you replaced it with the KANVAS Scripting. Assuming that his mission is the same as FG - the construction of game logic at the level. And what is the purpose of Lua then? Judging by the lessons of Kanvas and Lua, he and he can do the same things. For example, with the help of Lua we made a trigger for the door, which opened when the player was close. The same can be done on Kanvas.
I think I’m confused. Can you please clarify what exactly it is possible to implement in Kanvas and what can be done in Lua. For example, can I implement a crafting system in Kanvas or Lua, or a skill system, etc.?
Thank you in advance for your answers and help! Good luck!

Hello! I look forward to your reply.

If the tool Canvas script will act as a single visual programming tool for all the features of the engine, it will be just wonderful! I want to see something like the Blueprint as in UE4.
Even in Cryengine, the Schematic is gradually evolving. But there everything is so sad however …

I’m sure that Amazon can make a really powerful visual programming tool if you set this goal. Maybe even better than in the UE;)
Since I studied the bluesprint for a long time, this tool would be the perfect solution for me and I would not have to teach Lua. There would be time for this. After all, in addition to studying the engine, you have to work in Maya, Speedtree, Substance Painter and in many other programs for my projects.

And I am 100% sure that if such a single instrument appears in Lumberyard, many will switch to it both with U4 and with Cryengine. Yes, and beginners in programming can easily understand and program.

Hey @PaTi6op – apologies for the delayed responses. Firstly, welcome to the Lumberyard Community! :smiley:

This is a great post for users seeking clarity on the two topics. Let me get the accurate and update-to-date response from the team on this question :slight_smile: Stay tuned! Again, apologies for the delays.

Hello @PaTi6op!

For the purposes of creating game logic both Lua
and Script Canvas can be used to create a variety of behaviors, such as opening
a door or playing animations. We have spoken to customers about their scripting
preferences and we know that some prefer a visual option, like Script Canvas,
while others prefer a more traditional scripting option, like Lua. For this
reason, we’re offering both so customers can decide for themselves which
scripting method they want to use for their projects.

Script in Lumberyard has a common interface through
the Behavior Context. All engine functionality is manipulated through EBuses
which have been bound to the Behavior Context from the C++ engine code. Script
merely accesses these EBuses. Because both Lua and Script Canvas access the engine
in the same way, the goal is for them to have functional parity.

Script Canvas, being a visual scripting language,
has some advantages for non-technical developers such as artists and game
designers. Being visual, it’s a much more approachable scripting option. Lua,
on the other hand, may be preferred by highly technical team members who are
familiar with a coding environment.

One thing to note is that Script Canvas is still in
preview and is missing key features like debugging, node grouping, and a complete
node library. Additionally, we continue to work on stability, performance, and
general UX improvements. Until SC is out of preview, customers may want to
stick with Lua if they plan to ship their scripts.

I hope this helps explain the differences. If you
have any more questions or feedback on Lua, Script Canvas, or more general
scripting needs, please let us know!

Thank you for your question!