Visual Scripting for the Programmable Block

HelloGoodbye shared this feedback 2 years ago
Submitted

Can there be a way to set up visual Scripting for the programmable blocks? I would love to use this block to its fullest potential however I don't have much skill when it comes to programming and C#. Visual scripting would allow a common player like me be able to implement some of the ideas I have both simple, and a little more involved.

If there is already a way to do this can you make this a tech support question because I can't seem to find anything online to show how to set it up.

Thanks

Comments (5)

photo
1

What exactly do you mean with visual scripting? Is it similar to writing a formula in excel? If yes, then I am for it! Would be so much easier to understand.

Edit: Ok, if it is similar to this, then yeah: https://en.wikipedia.org/wiki/Visual_programming_language

photo
2

A little while ago they released a visual scripting program to help developers in the community make campaigns and scenarios. At minimum I was thinking that they could have a subset of the code in this program just for programming blocks, but even something like Scratch or LEGO Mindstorms style programming within game would be pretty cool.


I just wish programming in the programming block would be much more approachable because at the moment it feels like a whole area that requires a bachelor's degree in order to use.

photo
photo
2

If you guys do decide to add support for a visual programming language, consider using DRAKONdrakon-editor.sourceforge.net/).

It's a visual programming language that's based on flow charts and attempts to keep the programs looking tidy by taking care of line and box layout for you. You can, of course, still manually reroute lines if you want.


There are flavors available that are front ends to a bunch of different traditional programming languages, so you guys could probably use a version that compiles to the same language that programmable blocks already use. This would reduce developer overhead compared to something like Scratch.


It's look and feel are already close enough to Space Engineers that it would be a natural fit visually.


Finally, it's real space technology. It was developed by the Soviet Buran shuttle program for use in its systems. This greatly adds to its cool factor and means that if you guys use DRAKON in programmable blocks you can include this trivia in the game's loading screen.

photo
2

We had this website who was great : http://dco.pe/vsb/

But it's no more maintained... It was very usefull for me...


If someone could do something like that, or if this could be directly in the game that can be awesome...


If anyone know enough JS and programming in SE he can try to take over the project...

@King_Baggot the dev for the website is ok with that, check here : https://www.reddit.com/r/VisualScriptBuilder/comments/fdeg1m/outdated_bis/

photo
2

OMG where has the tool been for the last 3 years?

This is a great example of what could be used to make programming that much easier.

photo
photo
1

I like the idea of a better scripting language built in to the game, but may I also suggest coming at this from another direction? If you're at all like me, I'm primarily interested in better scripting support so I can automate stuff better. I spent several days writing a script in the current system just to run my drill rig without relying risky timer blocks. What a pain. I came across another post requesting improvements to the timer block to make automation tasks easier; similar goal I think. I made a suggestion there regarding the use of block actions instead which is an existing game mechanic that simply needs to be expanded on.

https://support.keenswh.com/spaceengineers/general/topic/timer-block-improvements-to-replace-pb-thats-moved-to-experimental

photo
1

I came here to suggest visual scripting for programable blocks, I'm happy to find someone else has already suggested it.

Many of the visual elements of a programming language already exist w/ block actions. "Turn On" "Turn Off" "Reverse" and so on, though I think few other options would be useful.

In particular "Set actions" as requested here: https://support.keenswh.com/spaceengineers/pc/topic/toolbar-command-to-set-values-directly

And my other suggestion to add inputs for programable blocks: https://support.keenswh.com/spaceengineers/pc/topic/programable-block-inputs

As another benefit Keen could make the Visual API much simpler and more tightly confined than the current PB implementation. This might allow for scripting on KSH Public servers.


Existing Visual Scripting

Would it be possible to use some of the work KSH has done w/ the VST for designing scenarios?

Benefits

We can already do a lot of cool stuff w/ Timer Blocks but there some things we can't (easily) do that could be quite useful.

Branching - If inventory_is_full: stop_mining

Looping - Incriment the piston 10 times then retract it

Math - With basic trig functions we could easily design rotating+extending drill rigs that keep a constant linear velocity at the drill head. Right now we have to calculate (or guess) an RPM setting for rotors for the maximum extension of a piston.


Thanks,

-Alan