@Phrongorre
here's a comparative example to python that should help you out
Programs:
RFTC:
Python:
Results:
RFTC:
Python:
not to note, you call() a function in python
where as RFTC does the calling for you
you need to set a tuple or vector on a var before signaling, and reference from that var in the signal-space if you want to supply arguments.
I'm going to assume it's not possible to get NBT keys yet
I need it for building an autocrafting service that can be more easily managed than with workstations by storing the recipes in a container.
(was looking at doing this with OpenComputers, but RFT(C) is just sooooooo much better)
plud I'd already built an RFT multi-crafter with the aid of AE2, and it was SUPER fast...
but I'd run into issues with interfacing that made me put the recipes on floppy disks and made OC identify what I had in my ME for it's autocrafting management which was much more scalable...
but I ran into issues with OC that prevented me from crafting the farming drones and machine robots, which RFT just does better anyways...
just need a way to retrieve NBT tags and I'll be set.
Thank you for that explanation, that was a really clearly written example.
I have one more follow up question: is there an equivalent for this in RFTC?
var = {}
def setvec():
var[2] = []
var[2] = var[2] + [10]
var[2] = var[2] + [15]
def testvec():
setvec()
#store desired indexes in variables
var[0] = 0
var[1] = 1
#use variables as indexes in vector
print( var[2][ var[0] ] )
print( var[2][ var[1] ] )
Output:
>> testvec()
10
15
ADDENDUM:
The time where I have attempted to make this work was in SF3, and I just attempted it in a new installation of the RFTools Control mod via Forge, and I had no issues. Perhaps the version they have in SF3 is sub-par. Thank you for your assistance.
use a single desired variable to store the latest index to use and update it when referencing:
should work about the same without much change to the previous code
it should be pretty straight forward how to set it up, but lemme know if you have any difficulty
also, I recommend watching DireWolf's spotlight/tutorial
note you can select the variable tab and specify the index of the variable for whatever
How am I supposed to format the tag argument of the NBT Equivalence opcode?
Specifically, I am trying to compare the size of an Astral Sorcery crystal to a fully-grown sample. According to MineTweaker, the sample has the tag {astralsorcery: {crystalProperties: {collectiveCapability: 100, size: 900, fract: 0, purity: 100, sizeOverride: -1}}}, and the only bit I'm interested in is the size. In my test world, I have a sample crystal being read on top of the processor itself, and two different nodes, each with a chest on one side and a lamp on the other. In the first, I have an exact duplicate of the crystal; in the second, one which I've ground down a few times so that its size is reduced (specifically, the tooltip and MT both reflect a size of 856).
I've tried putting in "{astralsorcery: {crystalProperties: {size:}}}" (with and without the spaces) and the program happily runs, so long as there is in fact a crystal in each chest to look at - but it evaluates as True (turning on the lamp) in all cases. ETA: also tried "{astralsorcery: {crystalProperties: {size" with exactly the same result. Also tried "astralsorcery[crystalProperties[size]]" in case it used array syntax. I have no idea at this point what it's even looking at.
I went through the code quickly and as far as i can se there is no support for nested tags... but as Java and MC api is not my strong suit i might be wrong.
New updates are being posted on https://www.curseforge.com/members/mcjty/projects but I have no idea where to current forum threads are (if any) I suspect they're just working on code in the background and trying to fly under the radar with public relations because it's exhausting to do both. I say this because that's what I'd probably do lol.
Hi, I don't know if somebody is still alive here to respond, i know it's not an easy mod but i'm having very fun time with it at the moment ! just one really annoying problem, maybe a stupid one, i don't know ! If someone can help...
I'm playing on Project Ozone 3, and i have made 5-6 processors (recursive crafting, and i need many cpu). 3 of them are not very far from each others and they all 3 have a crafting station. Their recipes are for each proc on a seperate node from the others (and other network) and no programs use the node on another processor (I hope it's clear because when i set up a network with a network name and a 2d name for a node, and I run the net setup "networkname" in the proc, I can access other network nodes if i give the node name even if i didnt setup THIS network on THIS proc... that's weird I think... but it works this way and who knows, it could be also usefull one day but I don't understand the point to have a network name with this behavior... So even if i gave all my networks different names, so do I for EVERY nodes after seeing that behavior. There is no 2 x "recipes" even if one is on "network1" network and the other on "network2" .
But it seems it's not enough. Maybe i'm doing something wrong but i really can't find what!
The 3 proc near each others, when I begin a craft on one of them via a crafting station, the recursive queue appears on another crafting station ... If I must cancel to reset I have to check the 3 crafting stations... and I really don't understand WHY ?
Is there anyway to force a crafting station to look to ONE network ? Really I don't understand.
And one more question; no way to not see other proc crafts in a crafting station ? It's not so annoying as having a queue in another station, but it would have been great to be able to "keep" recipes where they should be.
Very good mod for people who like headache by the way (joking), and not joking, it's a really good mod, a little sad to see not enough interrest because it can do very very good things but probably it has a hard learning curve, but i'm really happy you still work on it (if developpers see the post).
Just if it helps (I can post more if needed), here is my setup with the 3 proc (I put only 2 because it's exactly the same problem on the 3d)...
2d one
Used essentially for seeds (mystical) and neutral steel ingots. 10 blocks away from the other one (but I can't put the range below 25 because I need the RF storage scanner and is 25 blocks away). https://drive.google.com/file/d/1sYR5sMXEOaDCVtYG9cCjUAQOnsmd7Dyx/view?usp=share_link
The recipes... you see, they're the same... just a little embarassing but still usable.
And now I have to see if there is something logic in this error message on proc 1 because of proc 3... but for now, it could be the case, I have to investigate.
In fact if it is a bug, or something not implemanted, or even something wanted for some reason and someone knows, I don't care. I really like the mod if I can't make it go further it's ok for me. But for my settings on this modpack, I should have 3 or 4 more procs and it will be impossible to debug like that. Don't worry I have AE for the modpack and it's not a very big deal, but I prefer RFtool for many things. And AE can use RFtools control very easily. So well... have I miss something ? Or just not ? And at least, I would know it for another pack if I have to also consider space between crafting stations...
Best regards.
PS : I'm French and I hope my English is not too bad.
Ok, I've past few hours trying to understand. I don't understand what I think it's a bug on my release with network node name working on other networks but it is easy to "solve" so nm.
If I well understand, everything is connected by default in fact if it is possible (range).
So if I have a proc 16 blocks away from a crafting station, and another proc 16 blocks away in another direction from this crafting station, and I "net setup" them both, the crafting station will "receive" the recipes of both procs. I think the purpose is not to have multiple crafting stations. That's probably why I have weird behaviors with 3 of them, not knowing where to see my crafting queue is.
In the same way, if my first proc, just with this config and nothing else, set a crafting request that the other proc has in its recipes, the crafting station will receive this as a request craft and it will start on the other proc...
I'm not sure how to say it, but in fact, in some way, the crafting station is "out of network namespace" and can even rely many networks while creating craft requests.
I didn't think it was working this way, but it makes sense and can be a very good design...
you can delete the post if you want (or ask me to do it if you would like but can't) but it could be interresting to keep. Because there are videos and explainations about programming on single proc or just how to send a message on other proc, but I've found nothing when you have many of them to tell you how they interract really and what is the crafting station real role.
@Phrongorre


here's a comparative example to python that should help you out
Programs:
RFTC:
Python:
Results:
RFTC:
Python:
not to note, you call() a function in python
where as RFTC does the calling for you
you need to set a tuple or vector on a var before signaling, and reference from that var in the signal-space if you want to supply arguments.
Goodbye Microsoft
I'm going to assume it's not possible to get NBT keys yet
I need it for building an autocrafting service that can be more easily managed than with workstations by storing the recipes in a container.
(was looking at doing this with OpenComputers, but RFT(C) is just sooooooo much better)
plud I'd already built an RFT multi-crafter with the aid of AE2, and it was SUPER fast...
but I'd run into issues with interfacing that made me put the recipes on floppy disks and made OC identify what I had in my ME for it's autocrafting management which was much more scalable...
but I ran into issues with OC that prevented me from crafting the farming drones and machine robots, which RFT just does better anyways...
just need a way to retrieve NBT tags and I'll be set.
Goodbye Microsoft
@Tcll
Thank you for that explanation, that was a really clearly written example.
I have one more follow up question: is there an equivalent for this in RFTC?
var = {}
def setvec():
var[2] = []
var[2] = var[2] + [10]
var[2] = var[2] + [15]
def testvec():
setvec()
#store desired indexes in variables
var[0] = 0
var[1] = 1
#use variables as indexes in vector
print( var[2][ var[0] ] )
print( var[2][ var[1] ] )
Output:
>> testvec()
10
15
ADDENDUM:
The time where I have attempted to make this work was in SF3, and I just attempted it in a new installation of the RFTools Control mod via Forge, and I had no issues. Perhaps the version they have in SF3 is sub-par. Thank you for your assistance.
think about that a different way




use a single desired variable to store the latest index to use and update it when referencing:
should work about the same without much change to the previous code
it should be pretty straight forward how to set it up, but lemme know if you have any difficulty
also, I recommend watching DireWolf's spotlight/tutorial
note you can select the variable tab and specify the index of the variable for whatever
Goodbye Microsoft
Smart! Good thinking to get in the habit of saving space when it is so limited.
I got it going, I think I was trying to overcomplicate it. I will definitely check out those spotlights.
Thank you for your assistance. Sorry I’m not much help with the NBT code values. That would be a nice feature to implement.
ayy McJty, you should allow us to name variables rather than indexing them by using a hashmap to store the names.
You can still keep a count of the variables in the hashmap for RAM-use purposes, but it'll be much easier for us to have to manage
here's a modification of the python code I provided for Phrongorre to show it's just as simple as changing the ints to strings:

you should still be able set an index, but it's up to you if you want to allow the index to be part of it's own name, or index an existing name.
the way python behaves with dicts would make the index part of it's own name.
Goodbye Microsoft
How am I supposed to format the tag argument of the NBT Equivalence opcode?
Specifically, I am trying to compare the size of an Astral Sorcery crystal to a fully-grown sample. According to MineTweaker, the sample has the tag {astralsorcery: {crystalProperties: {collectiveCapability: 100, size: 900, fract: 0, purity: 100, sizeOverride: -1}}}, and the only bit I'm interested in is the size. In my test world, I have a sample crystal being read on top of the processor itself, and two different nodes, each with a chest on one side and a lamp on the other. In the first, I have an exact duplicate of the crystal; in the second, one which I've ground down a few times so that its size is reduced (specifically, the tooltip and MT both reflect a size of 856).
I've tried putting in "{astralsorcery: {crystalProperties: {size:}}}" (with and without the spaces) and the program happily runs, so long as there is in fact a crystal in each chest to look at - but it evaluates as True (turning on the lamp) in all cases. ETA: also tried "{astralsorcery: {crystalProperties: {size" with exactly the same result. Also tried "astralsorcery[crystalProperties[size]]" in case it used array syntax. I have no idea at this point what it's even looking at.
I went through the code quickly and as far as i can se there is no support for nested tags... but as Java and MC api is not my strong suit i might be wrong.
Does RFTools work on 1.16.2? It is listed as a dependency for this mod, but the version listed varies significantly.
New updates are being posted on https://www.curseforge.com/members/mcjty/projects but I have no idea where to current forum threads are (if any) I suspect they're just working on code in the background and trying to fly under the radar with public relations because it's exhausting to do both. I say this because that's what I'd probably do lol.
Hi, I don't know if somebody is still alive here to respond, i know it's not an easy mod but i'm having very fun time with it at the moment ! just one really annoying problem, maybe a stupid one, i don't know ! If someone can help...
https://drive.google.com/file/d/1sYR5sMXEOaDCVtYG9cCjUAQOnsmd7Dyx/view?usp=share_link
I'm playing on Project Ozone 3, and i have made 5-6 processors (recursive crafting, and i need many cpu). 3 of them are not very far from each others and they all 3 have a crafting station. Their recipes are for each proc on a seperate node from the others (and other network) and no programs use the node on another processor (I hope it's clear because when i set up a network with a network name and a 2d name for a node, and I run the net setup "networkname" in the proc, I can access other network nodes if i give the node name even if i didnt setup THIS network on THIS proc... that's weird I think... but it works this way and who knows, it could be also usefull one day but I don't understand the point to have a network name with this behavior... So even if i gave all my networks different names, so do I for EVERY nodes after seeing that behavior. There is no 2 x "recipes" even if one is on "network1" network and the other on "network2" .
But it seems it's not enough. Maybe i'm doing something wrong but i really can't find what!
The 3 proc near each others, when I begin a craft on one of them via a crafting station, the recursive queue appears on another crafting station ... If I must cancel to reset I have to check the 3 crafting stations... and I really don't understand WHY ?
Is there anyway to force a crafting station to look to ONE network ? Really I don't understand.
And one more question; no way to not see other proc crafts in a crafting station ? It's not so annoying as having a queue in another station, but it would have been great to be able to "keep" recipes where they should be.
Very good mod for people who like headache by the way (joking), and not joking, it's a really good mod, a little sad to see not enough interrest because it can do very very good things but probably it has a hard learning curve, but i'm really happy you still work on it (if developpers see the post).
Just if it helps (I can post more if needed), here is my setup with the 3 proc (I put only 2 because it's exactly the same problem on the 3d)...
First one. Doing many things (empower, Sag, crafting, slice and splice, alloy). Used essentially for transistors and conduits. As a side note, you'll see I have every recipes from the other procs. And you see the log? I didn't have notice it until now... I'm doing some tuning on programs running on my 3d proc, and it's this 3d proc that is making too many events for now, not this one which works correctly (3 weeks already)...
https://drive.google.com/file/d/1Zfbs4d25aVC9M2TjmXQrS5SCYpfvFoVn/view?usp=share_link
The recipes in the crafting station
https://drive.google.com/file/d/1_klvNx_9dLvFM1y2lU_PpkUUbyRg8Tv-/view?usp=share_link
2d one
Used essentially for seeds (mystical) and neutral steel ingots. 10 blocks away from the other one (but I can't put the range below 25 because I need the RF storage scanner and is 25 blocks away).
The recipes... you see, they're the same... just a little embarassing but still usable.
https://drive.google.com/file/d/1QlXQa_yBOiJgzq_mpGO8Q4Jz0Ov4z-bA/view?usp=share_link.
THE real problem now. I begin a craft on 1rst Proc to craft "blue" transistors. Every recipes it needs are on THIS proc.
Here is the crafting station "answer" - it will be always the same :
https://drive.google.com/file/d/1tSW8sfFA22ajDSIL8TA5JdIuSGrqmxve/view?usp=share_link
Where are the others crafts? This craft needs a bunch of other recipes, but the recursive queue is... There ! crafting station, 2d proc.
https://drive.google.com/file/d/1bB7uvjXC1IhruPiksR9b8eS5VIUBzy4J/view?usp=share_link
It's ok if everything is fine and no need to reset, just a straight forward... well it works. But if something is going wrong, not enough of an ingredient or... well anything (just a restart server sometimes), or just a debug run on a new craft like now on a new proc ... I can't run through all the crafting stations to see where I have to cancel the crafts for the reset !
And now I have to see if there is something logic in this error message on proc 1 because of proc 3... but for now, it could be the case, I have to investigate.
In fact if it is a bug, or something not implemanted, or even something wanted for some reason and someone knows, I don't care. I really like the mod if I can't make it go further it's ok for me. But for my settings on this modpack, I should have 3 or 4 more procs and it will be impossible to debug like that. Don't worry I have AE for the modpack and it's not a very big deal, but I prefer RFtool for many things. And AE can use RFtools control very easily. So well... have I miss something ? Or just not ? And at least, I would know it for another pack if I have to also consider space between crafting stations...
Best regards.
PS : I'm French and I hope my English is not too bad.
Ok, I've past few hours trying to understand. I don't understand what I think it's a bug on my release with network node name working on other networks but it is easy to "solve" so nm.
If I well understand, everything is connected by default in fact if it is possible (range).
So if I have a proc 16 blocks away from a crafting station, and another proc 16 blocks away in another direction from this crafting station, and I "net setup" them both, the crafting station will "receive" the recipes of both procs. I think the purpose is not to have multiple crafting stations. That's probably why I have weird behaviors with 3 of them, not knowing where to see my crafting queue is.
In the same way, if my first proc, just with this config and nothing else, set a crafting request that the other proc has in its recipes, the crafting station will receive this as a request craft and it will start on the other proc...
I'm not sure how to say it, but in fact, in some way, the crafting station is "out of network namespace" and can even rely many networks while creating craft requests.
I didn't think it was working this way, but it makes sense and can be a very good design...
you can delete the post if you want (or ask me to do it if you would like but can't) but it could be interresting to keep. Because there are videos and explainations about programming on single proc or just how to send a message on other proc, but I've found nothing when you have many of them to tell you how they interract really and what is the crafting station real role.
Best regards.