Oszilgath

Suggestion: Logic Gates

Recommended Posts

I´d love to see some kind of logic gates in KSP2.
Maybe like in "Stationeers" with different chips, processors and sensors to interact with.
This would be a great addition to the actiongroups and could be optional used to increase the level of difficulty.

e.g. there could be an option to either have automated solar panels like in KSP1 or one has to build an automation with logic gates.

They could further be used to automate entire vehicles or buildings.

e.g. rovers scanning for ressources, harvesting them and delivering them to your base, where they get automatically refined.

 

Share this post


Link to post
Share on other sites

One thing I hate in stationeers are logic gates, it's just a way of making the game feel more complex without actually doing much.

From a ease-of-use, gameplay and realism point of view there is no reason of having logic gates over fully fledged programming in a real world well documented language.

I'll never understand the idea of having to make programming more complex with custom poorly written languages or logic gates contraptions. 

Share this post


Link to post
Share on other sites
1 hour ago, Master39 said:

From a ease-of-use, gameplay and realism point of view there is no reason of having logic gates over fully fledged programming in a real world well documented language.

Eh, this is still a game. I think some kind of VPL would be a better fit than, say, exposing a Lua API you can program your craft with. Although ¿por qué no los dos?

Share this post


Link to post
Share on other sites

VPL would play into the "Lego" style of KSP. After all, building a program out of instruction blocks is not entirely unlike building a rocket out of parts. Indeed, that's how Mission Builder works, more or less. While that was a bit of a flop, it's at least something familiar to the KSP community.

Share this post


Link to post
Share on other sites
17 minutes ago, Brikoleur said:

Eh, this is still a game. I think some kind of VPL would be a better fit than, say, exposing a Lua API you can program your craft with. Although ¿por qué no los dos?

You misunderstood me, I was not talking about just exposing an API, programming must absolutely be in game.

I was talking against custom written languages that are so popular in many games, K-Os would totally be ok if only it used a real language like Lua or Python instead of Kerboscript.

Having a VPL on top of that would be awesome it could totally replace the action groups system with something more powerful without increasing the complexity, even having a system in place that writes the correct pointer in the editor when clicking on a part.

Share this post


Link to post
Share on other sites
13 minutes ago, Master39 said:

I was talking against custom written languages that are so popular in many games, K-Os would totally be ok if only it used a real language like Lua or Python instead of Kerboscript.

Ah yeah no, a custom written language would be pointless. Why would you even want to write one with so many to choose from?'

http://www.lolcode.org/

HAI 1.2
  CAN HAS STDIO?
  VISIBLE "HAI WORLD!!!1!"
KTHXBYE
 

Share this post


Link to post
Share on other sites
4 minutes ago, Brikoleur said:

Why would you even want to write one with so many to choose from?

Is something I'm asking myself since the first time I got so excited about K-os before discovering Kerboscript, or excited about Starbas before discovering YOLOL or excited about Stationeer and discovering IC10 and so on.

Apparently people loves to reinvent the wheel and give their players less tutorials, documentation and help.

Why so many talented developers would want less people to play their programming mini-games It's beyond my comprehension.

Share this post


Link to post
Share on other sites

What I'd like to see for programming is something like an extension of the Breaking Ground robotics interface, or the initial Lego programming interface:  You have a bunch of pre-written actions: 'Perform Maneuver Node', 'Orient to retrograde', 'Activate Action Group', etc., and then a graph where you can drag-and-drop them into order, with delays, etc.

And then have a Lua API for those who want something more.

Share this post


Link to post
Share on other sites
Posted (edited)
On 10/7/2019 at 5:45 AM, Master39 said:

You misunderstood me, I was not talking about just exposing an API, programming must absolutely be in game.

I was talking against custom written languages that are so popular in many games, K-Os would totally be ok if only it used a real language like Lua or Python instead of Kerboscript.

Having a VPL on top of that would be awesome it could totally replace the action groups system with something more powerful without increasing the complexity, even having a system in place that writes the correct pointer in the editor when clicking on a part.

This scares me, particularly now that we are on the cusp of actually being able to adjust them while on missions.  

Edited by FinalFan
fixed boldness

Share this post


Link to post
Share on other sites

I don't see an in-game programming system as replacing action groups, but rather complementing them. For example, action groups can run code snippets, and code could toggle an action group. If you don't want to use the coding system, the action groups would still work the same way they always have.

On the topic of a stock programming system, yes please. A drag and drop code block interface would fit the game perfectly, and would enable a ton more functionality and automation. As long as your vehicle has some sort of guidance computer onboard (anything with a probe core or crew capsule, external seats don't count) it could execute the programs.

Share this post


Link to post
Share on other sites
On 10/5/2019 at 5:01 PM, Oszilgath said:

eg rovers scanning for ressources, harvesting them and delivering them to your base, where they get automatically refined.

To do this passiively would mean many vehicles undergoing constant physics simulations while also rendering with high resolution all nearby terrain to any vehicle. I think were gunna have to wait a decade or 2 for that kind of capability

Share this post


Link to post
Share on other sites

Depends on the level of difficulty, and honestly, it's not worth it if it's a script. Blocks would be best.

Share this post


Link to post
Share on other sites
44 minutes ago, mcwaffles2003 said:

To do this passiively would mean many vehicles undergoing constant physics simulations while also rendering with high resolution all nearby terrain to any vehicle. I think were gunna have to wait a decade or 2 for that kind of capability

That could be abstracted out, no need to simulate the whole shebang unless you're within physics range. All you need to know is where the craft is and how long it takes to do whatever it's doing.

Share this post


Link to post
Share on other sites
13 minutes ago, Brikoleur said:

That could be abstracted out, no need to simulate the whole shebang unless you're within physics range. All you need to know is where the craft is and how long it takes to do whatever it's doing.

You forgot an important step: How KSP is going to figure out what the craft is doing.  After all, it could have a random collection of parts, producing and consuming a random selection of (possibly mod-created) resources...

Programming what actions the ship is taking isn't enough to simulate that, you need a good guess on what each different module in the ship is doing, and how it adds up at each step of time.  Which would mean you need to simulate it.

There are games which do this kind of thing, but you'll notice that they give you a selection of units that you can order around - each is then clearly defined, and the game project it better.

Share this post


Link to post
Share on other sites
Posted (edited)
2 hours ago, DStaal said:

You forgot an important step: How KSP is going to figure out what the craft is doing.  After all, it could have a random collection of parts, producing and consuming a random selection of (possibly mod-created) resources...

Programming what actions the ship is taking isn't enough to simulate that, you need a good guess on what each different module in the ship is doing, and how it adds up at each step of time.  Which would mean you need to simulate it.

There are games which do this kind of thing, but you'll notice that they give you a selection of units that you can order around - each is then clearly defined, and the game project it better.

My Excel experience suggests a potential solution by analogy to recorded macros.  I.e., you hit record, do whatever stuff, and Excel makes you some code that does that stuff with one standardized button press.  KSP doesn't necessarily have to simulate all your vehicles doing whatever activities in the background.  If KSP can determine what one "cycle" of activity produces and/or consumes and how long it takes, then it can just say "you get this much per day" and not sweat the details until you get back in physics range.  

[edit: looking back at the conversation, this would not apply to rovers "scanning for resources" as I interpret the phrase, but it would work for fixed activities.]

If this is determined by player activity that could lead to some interesting "speed run" gameplay incentives, which I'm not saying is either a good or a bad thing.  

Edited by FinalFan
see edit

Share this post


Link to post
Share on other sites
Posted (edited)
10 hours ago, DStaal said:

Programming what actions the ship is taking isn't enough to simulate that, you need a good guess on what each different module in the ship is doing, and how it adds up at each step of time.  Which would mean you need to simulate it.

Resource production and consumption on craft outside the physics bubble are abstracted out as it is (ISRU, drill, MPL, etc). It's not entirely accurate either and you can take advantage of it, for example it doesn't take into account solar panels not producing power at night. (That and similar things would be quite easy to code into the abstraction without turning it into a physics-based simulation.)

Edited by Brikoleur

Share this post


Link to post
Share on other sites

Many people seem to be talking a lot about some drag-and-drop-blocks style programming system. Please no. It is so annoying to try to do any proper scripts with that kind of stuff. Sure it is an improvement over simple action groups we have no but why wouldn't they just give us a full proper programming instead? That still allows us to do simple thing but it also makes more complicated stuff possible...

Share this post


Link to post
Share on other sites

You guys might want to take into consideration that most people in this world are not computer programmers and have literally no idea what you're talking about, let alone the merits of one system vs the other.  VPL and LUA API... you're speaking Greek to many, many customers there.  Time is probably better spent on things that would be used by everyone, and niche systems like XYZ and LMNOP transmogrifying API lorigramazian diodes should be in a dlc or expansion.

Share this post


Link to post
Share on other sites
59 minutes ago, klesh said:

You guys might want to take into consideration that most people in this world are not computer programmers and have literally no idea what you're talking about, let alone the merits of one system vs the other.  VPL and LUA API... you're speaking Greek to many, many customers there.  Time is probably better spent on things that would be used by everyone, and niche systems like XYZ and LMNOP transmogrifying API lorigramazian diodes should be in a dlc or expansion.

They already said that there is going to be a scripting API in craft files. Exposing that in the game would be a relatively small step. 

That said, I agree -- this would be a terrific feature for a DLC.

Share this post


Link to post
Share on other sites
2 hours ago, klesh said:

You guys might want to take into consideration that most people in this world are not computer programmers and have literally no idea what you're talking about, let alone the merits of one system vs the other.  VPL and LUA API... you're speaking Greek to many, many customers there.  Time is probably better spent on things that would be used by everyone, and niche systems like XYZ and LMNOP transmogrifying API lorigramazian diodes should be in a dlc or expansion.

 

2 hours ago, tseitsei89 said:

Many people seem to be talking a lot about some drag-and-drop-blocks style programming system. Please no. It is so annoying to try to do any proper scripts with that kind of stuff. Sure it is an improvement over simple action groups we have no but why wouldn't they just give us a full proper programming instead? That still allows us to do simple thing but it also makes more complicated stuff possible...

Hence my thought of the drag-and-drop and exposing a LUA API.  The drag-and-drop for the people who aren't programmers, LUA for those who are and want that.

Of course this is all another system which would be added to the game, requiring a new interface, etc.  I think this would be worth it, but that's one player's opinion - but that does lead to:

7 hours ago, Brikoleur said:

Resource production and consumption on craft outside the physics bubble are abstracted out as it is (ISRU, drill, MPL, etc). It's not entirely accurate either and you can take advantage of it, for example it doesn't take into account solar panels not producing power at night. (That and similar things would be quite easy to code into the abstraction without turning it into a physics-based simulation.)

This would then add *another* system, interface, etc. on top of the scripted actions.  It might be best to put all this in a DLC, some time after launch.

Share this post


Link to post
Share on other sites

 

If you know nothing of programming then, maybe you don't know if time could be better spent elsewere.

VPL means Visual Programming Language, a Lego-like system where you put together visual blocks to program, it's meant for teaching children how to program and it's actually easier and more powerful than action groups to use.

Scratch_2.0_Screen_Hello_World.png

Just immagine a rocket instead of the Cat and the blocks sayng things like "When fuel=0 stage".

Share this post


Link to post
Share on other sites
3 hours ago, Master39 said:

 

If you know nothing of programming then, maybe you don't know if time could be better spent elsewere.

VPL means Visual Programming Language, a Lego-like system where you put together visual blocks to program, it's meant for teaching children how to program and it's actually easier and more powerful than action groups to use.

Scratch_2.0_Screen_Hello_World.png

Just immagine a rocket instead of the Cat and the blocks sayng things like "When fuel=0 stage".

As someone who doesn't know nothing but doesn't really know programming, that picture really helps, so thank you.  I'm still deeply skeptical of your "easier" claim, but "easy" I could buy.  More powerful goes without saying.  

Share this post


Link to post
Share on other sites

even VPL-based programming would be orders of magnitude more powerful than our current action groups.

Share this post


Link to post
Share on other sites
3 hours ago, EnderKid2 said:

even VPL-based programming would be orders of magnitude more powerful than our current action groups.

VPL + the possibility to fork the script it generates and work on it directly would be bliss. Presumably the implementation would be Lua so why not? One can dream...

Share this post


Link to post
Share on other sites
On 10/9/2019 at 7:59 AM, tseitsei89 said:

Many people seem to be talking a lot about some drag-and-drop-blocks style programming system. Please no. It is so annoying to try to do any proper scripts with that kind of stuff. Sure it is an improvement over simple action groups we have no but why wouldn't they just give us a full proper programming instead? That still allows us to do simple thing but it also makes more complicated stuff possible...

Well look at the market this game is geared towards. not everyone, nor even anywhere near the majority, is going to know programming and if thats the case and if you want to make a game open to a large community, if any programming is present, visual programming is probably best suited. Leave script programming for those who are willing to seek out mods and add it in ourselves

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.