while True: learn()

while True: learn()

View Stats:
kaibioinfo Jan 20, 2019 @ 11:52am
Why are custom nodes faster?
Hi,

while I really like the game, the in-game tutorials are horrible. There are so many things which are not explained.

I'm currently playing the "cathub" levels and have no clue what this cathub symbols do. Furthermore, I found that using custom nodes from previous levels is much faster than placing the (exactly same) nodes directly. This is never explained and totally confusing. I wonder if all these previous levels would be MUCH easier when I just would have used custom nodes...

I don't really understand the motivation about custom nodes. They are just clunky - the UI does not tell me what is their input and output. And I have no clue how to inspect a custom node (When I hammer like crazy on my mouse the custom node window pops up). Why are we forced to use custom nodes instead of just programing from scratch?
< >
Showing 1-12 of 12 comments
Majora Jan 20, 2019 @ 12:01pm 
Originally posted by kaibioinfo:
And I have no clue how to inspect a custom node (When I hammer like crazy on my mouse the custom node window pops up).

You have to double right-click on a custom node to be able to edit it.

Anyway, I just posted in another thread about this "issue", which seems to be an actual part of how the game is supposed to be played. I'm not really a fan of it though, because it really feels counter-intuitive.
Drunkenheadshot Jan 20, 2019 @ 12:32pm 
Originally posted by Majora:

You have to double right-click on a custom node to be able to edit it.

This just blew my mind.
Lycaon Jan 20, 2019 @ 12:55pm 
Originally posted by Drunkenheadshot:
Originally posted by Majora:

You have to double right-click on a custom node to be able to edit it.

This just blew my mind.
Yep
Thank you for that piece of information. I do not remember being told that in the game.
Vladolf Putler Jan 21, 2019 @ 12:29am 
Originally posted by Lycaon:
Originally posted by Drunkenheadshot:

This just blew my mind.
Yep
Thank you for that piece of information. I do not remember being told that in the game.

I think I saw it in tutorial, did not pay much attention to it, but it was there:p
GospodinNoob  [developer] Jan 21, 2019 @ 12:42am 
Hi. Custom nodes don't spend time on transferring elements inside themselves
Phishfood Jan 21, 2019 @ 4:04am 
Originally posted by GamineBrownies:
Hi. Custom nodes don't spend time on transferring elements inside themselves
Is this like a real life thing people do in machine learning or was it put in for the sake of the game?

What I mean is, is there some kind of performance benefit to it, rather than just saving time by reusing old code?
Last edited by Phishfood; Jan 21, 2019 @ 4:06am
kaibioinfo Jan 21, 2019 @ 4:42am 
Honestly, the game has not so much to do with real world data science. Its just the topic (like "chemistry is the topic of SpaceChem and alchemy the topic of OpusMagnus, while both games have nothing to do with real chemistry or alchemy).

But to answer your question: Usually, there is no performance advantage by outsourcing code into a library. In theory, avoid code redundancy might reduce the memory footprint of code, which gives some additional speed. But, often, it is the other way around: its harder to optimize code across libraries.

When thinking of the game as an educational game, motivating the user to reuse code might be not a bad idea. But the realization is bad. First: it is extremely hard to understand how much time every module needs. Second: Many custom nodes consists of a single module but are still faster than directly placing the module.

My suggestion would be to remove the time advantage of custom nodes and DLL nodes. Instead, one could add some puzzles where the user has to solve the puzzle with custom nodes only.
GospodinNoob  [developer] Jan 21, 2019 @ 6:12am 
Originally posted by Phishfood:
Originally posted by GamineBrownies:
Hi. Custom nodes don't spend time on transferring elements inside themselves
Is this like a real life thing people do in machine learning or was it put in for the sake of the game?

What I mean is, is there some kind of performance benefit to it, rather than just saving time by reusing old code?
In real life "code modules' which are located near in memory works faster. We tried to use this idea.
p4rav0id Jan 21, 2019 @ 7:22am 
Originally posted by GamineBrownies:
Originally posted by Phishfood:
Is this like a real life thing people do in machine learning or was it put in for the sake of the game?

What I mean is, is there some kind of performance benefit to it, rather than just saving time by reusing old code?
In real life "code modules' which are located near in memory works faster. We tried to use this idea.

A better explanation would be this:

It's the difference between software and hardware, custom modules are" finished" and can be put in a hardware solution. They work much faster than a software solution.

That's what Cern does for example to filter the data from supercolider. They use triggers to filter the unimportant data, that's the only way to manage the data during an experiment
Last edited by p4rav0id; Jan 21, 2019 @ 7:23am
JustBasic Jan 21, 2019 @ 5:21pm 
Data Engineer by trade. There is definitely a performance advantage to locality of data and, more significantly, a cost advantage to it.

Key example of this would be code optimization where you get rid of a intermediate data structure thus reducing time and space complexity. I would say custom nodes should be renamed to optimized nodes.

If you build in the cloud, the value of data locality is even more clear as the providers ( Amazon, Azure, Google) often charge to ferry data around in one form or another.

As Kaibioinfo mentions, though, accessing data from one library to the next is generally identical if the data is available in memory.

I would think of the data moving as completed operations. Each of the operators has a time cosr associated with them and so that's a nice representation.

What's not clear, though, are the details on using custom nodes! I had no idea they offered a bonus, and I had no idea that you could edit them!

I am playing with ny 6 yr old son to get him interested and so in the process of letting him engage, I guess I missed the detail.

You guys should call that out more. I was milking the basic nodes like a moron and I realize now I could've accomplished more with less.

Cheers to a great game, love that its laid back. One thing I feel is missing is a discussion on tactics to use. That and really using the UI to drive me to use custom nodes.
SamuraiJones Jan 21, 2019 @ 6:18pm 
As far as the original post, I agree the speed increase of the custom node is cumbersome and not fun, although as the dev says, it seems reasonably lifelike.

I do also think there's a bug in the DLL code though when running blocks of different speeds, and I don't think you can get a gold in the dictatorship level without exploiting it.
The Flaming Red Jan 21, 2019 @ 7:58pm 
Its a shame the whole game can be exploited through this idea. As we found out and discussed here https://steamcommunity.com/app/619150/discussions/0/2590022385655146314/
< >
Showing 1-12 of 12 comments
Per page: 1530 50

Date Posted: Jan 20, 2019 @ 11:52am
Posts: 12