I have a fairly complex logic network I'm trying to push even further to play with recursive blueprints.
But I'im hitting a wall right now.... Here's my issue :
I have a central command where I define all items I want to craft.
The definition of an item consist of :
-an ID
-a number (corresponding to the number of items I want to craft per train trip)
-needed materials to craft one of this item
.... and some other stuff not relevant for my issue (ideal stock, area of crafting, etc...).
All of this is sent through a multiplex red network where :
- channel 2 contains all the items for which crafting should occurs
- channel 3 contains the number per train trip for all items (let's say 20k gears)
- channel 4 contains the IDs of all items
- channel 10 contains logic signals (0-10A-Z) which value the IDs of the item I want to craft in one area of crafting
- channel 101 and > contain the needed materials needed to craft the corresponding item ID
Now in my crafting area I can dynamically get the desired item, what it takes to craft it, if it has to be craft.... but i'm at a loss to get the number I want to craft (which will serve to send supply needs for this area to my supply center).
For exemple :
gear is defined as follow :
- ID : 101
- number : 20k
- needed materials : 2 iron plates
- crafting area : 1
So, in the crafting area 1, I read signal 0 which value 101.
I get everything from channel 4 which value 101 and I know the crafting area has to craft gear (output gear=>1).
I get everything from channel 2, add it to everything from previous operation and then remove everything that is different from 2 (output gear=>1) so I know I have to craft gear
I get everything from channel 101 (output iron plate=>2)
And now the only thing I need is to multiply the last output signal by the gear signal in channel 3, so it'll output iron plate=>40k. But I cannot figure how to isolate the gear signal value without specifying gear signal...
Any ideas are welcome !
[solved] multiply 2 networks (or other solution)
[solved] multiply 2 networks (or other solution)
Last edited by fuinril on Thu Jun 14, 2018 9:09 pm, edited 1 time in total.
Re: multiply 2 networks (or other solution)
So you have 3 networks with useful info:
Network A: Iron gear wheel = 101
Network B: Iron gear wheel = 20k, plus other items
Network C: Iron plate = 2
First we use the ID to create two filters, plus and minus one million.
Each (Network A) > 0 → Each = 1
Each × 1000000 → Each
Each (Network A) > 0 → Each = 1
Each × -1000000 → Each
Then we apply the filters to network B.
Each (Network B) + (+ million filter) > 1000000 → Each + (- million filter)
We are halfway there, our networks look like this:
Network C: Iron plate = 2
Network D: Iron gear wheel = 20k
Convert the unknown signal on network D to a known signal, so we can multiply it.
Each (Network D) + 0 → M
Each (Network C) × M → Each
Final result:
Network E: Iron plate = 40k
Network A: Iron gear wheel = 101
Network B: Iron gear wheel = 20k, plus other items
Network C: Iron plate = 2
First we use the ID to create two filters, plus and minus one million.
Each (Network A) > 0 → Each = 1
Each × 1000000 → Each
Each (Network A) > 0 → Each = 1
Each × -1000000 → Each
Then we apply the filters to network B.
Each (Network B) + (+ million filter) > 1000000 → Each + (- million filter)
We are halfway there, our networks look like this:
Network C: Iron plate = 2
Network D: Iron gear wheel = 20k
Convert the unknown signal on network D to a known signal, so we can multiply it.
Each (Network D) + 0 → M
Each (Network C) × M → Each
Final result:
Network E: Iron plate = 40k
Re: multiply 2 networks (or other solution)
Fun fact : I posted after 3 days and maybe 6 or 7 hours of thinking and tries without finding a solution.
Ten minutes after posting genius strikes, some reverse thinking and I came up with a working, simple solution, very close (if a bit simplier, but that's because I use the result from previous operations) to yours !
Mine is
I get everything from channel 2, add it to everything from previous operation and then remove everything that is different from 2 (output gear=>1) so I know I have to craft gear => Network A
Network B: Iron gear wheel = 20k, plus other items
Network C: Iron plate = 2
A - 1000000000 => each
each + B < 0 => each
each + 999999999 => M
M * each (C) => each
3 calculators and one combinator.... So simple ! It makes me feel pretty dumb
But thank you very much for your very accurate reply anyways ! I should have asked before, it would have spare me some serious headache
Ten minutes after posting genius strikes, some reverse thinking and I came up with a working, simple solution, very close (if a bit simplier, but that's because I use the result from previous operations) to yours !
Mine is
I get everything from channel 2, add it to everything from previous operation and then remove everything that is different from 2 (output gear=>1) so I know I have to craft gear => Network A
Network B: Iron gear wheel = 20k, plus other items
Network C: Iron plate = 2
A - 1000000000 => each
each + B < 0 => each
each + 999999999 => M
M * each (C) => each
3 calculators and one combinator.... So simple ! It makes me feel pretty dumb
But thank you very much for your very accurate reply anyways ! I should have asked before, it would have spare me some serious headache