rftoolsctrl-1.10-1.5.0.jar
on Jan 26, 20231.5.0:
- Note: McJtyLib required is now 2.2.0!
- Added fluid support. This works as follows:
- There is a new multi tank which you have to place adjacent to the processor. You can use multiple
- Per multi tank you get four slots that can each hold 10 buckets of any liquid
- These slots you can allocate in the processor similar to how you allocate items and variables
- The liquid opcodes work similarly to item opcodes. First you transfer a liquid to an internal slot and then you transfer it back to a new location
- Multi tanks cannot be used in any other way. They don't allow extraction or insertion at this moment
- Big rework on the internals of the parameter system. If I did my job right you should not notice this. Basically parameter handling should be a bit more efficient (less load on a server) and it is also cleaner and more consistent
- If you hold shift on an opcode in the grid you will get the coordinate of that opcode in the tooltip
- Bugs fixed:
- Copy to json of item opcodes sometimes messed up the meta value (bonemeal -> ink sac)
- The examine items external opcode will no longer ignore the item if a slot is given and return 0 if the item doesn't match with what is in the slot
rftoolsctrl-1.10-1.4.0.jar
on Jan 26, 20231.4.0:
- Added categories to opcodes for easier searching. In the GUI of the programmer you can now filter the opcodes based on those categories
- Changed the layout of the programmer so that three opcodes fit horizontally. That makes for less scrolling
- When an opcode has an error (unreachable or bad parameters) a little indicator will flash on the opcode
- New opcodes:
- Opcode to evaluate an item
- Opcode to get the number of possible slots in an inventory
- New functions:
- Function to get the item out of a crafting card/token
- When an internal error occurs the error is now logged with DEBUG level
rftoolsctrl-1.10-1.3.4.jar
on Jan 26, 20231.3.4:
- A non empty item stack will now return true on the 'test' statement. So 'test' can be used to test for the existance of an item in some slot
- If there are too many events this causes an exception. You don't want this exception to cause an event again...
- Added a new 'tuple' tupe. Added new graphics operations that use this tuple. Deprecated the old graphics operation. That means that the old programs will work but if you check out the programs in your programmer the opcodes will be crossed over. It is recommended to replace these opcodes with the new versions that use tuples
- Added two functions 'tuple_x' and 'tuple_y' to get the x and y components out of a tuple
- Added 'last_tuple' function
- Added a new 'select' event in combination with the vector art screen module. That way you can now be more interactive with vector art
rftoolsctrl-1.10-1.3.3.jar
on Jan 26, 20231.3.3:
- Fixed bug in 'push_multi'. It was not able to push items to a storage system. Only to real inventories
- Update to McJtyLib 2.1.4
- Two new opcodes to compare the last result with a variable. The advantage of these opcodes is that they also work for other types and not only for integers
rftoolsctrl-1.10-1.3.2.jar
on Jan 26, 20231.3.2:
- Improvements to the crafting card. Remembers stack amounts that you inserted into it now. Also made it a bit more user-friendly with more tooltips and in-game help. There is also an 'Update' button that resets the output on the card to what the 3x3 recipe would give
- Added a test for too many events in the event queue (by default set to 100)
- Add a configurable maximum crafting requests to avoid overflowing the crafting station (default 200)
- Important change in how 'timer' events work. Timer events have always been handled specially because they got dropped (instead of queue for later) when there was no available core. That means that if you have two timer events on the same card with exactly the same delay and only one core then one of those events would never have been able to execute. Because the first one always executes and the other one is dropped. This has now changed so that at least one timer event per event location can be in the queue. That way all timer events get a chance to execute
- New holo HUD on the processor. This is off by default but in the GUI of the processor you can set it to any of the following three modes:
- Log: just show the processor log. Useful if you dump your own info from your programs so that you can see it in game
- Db: debug information. Shows the status of up to six cores, the event queues, locks and also the last exception and how long ago it occurred
- Gfx: the output of the vector art/graphics card module. You can use this instead of the usual RFTools screen
- The holo hud normally floats above the processor. If there is another block above the processor it will automatically jump to right before that block
rftoolsctrl-1.10-1.3.1.jar
on Jan 26, 20231.3.1:
- Fixed a problem where in some cases the log messages would not show up correctly depending on localization
- When allocating variables and slots you can now see the relative number that programs on that card should use
- There was a really strange interaction going on with the crafting station and the processor when doing recursive crafting. It appeared that you actually had to keep the gui of the crafting station open for recursive crafting operations to keep running
- Reset command also clears debugging status
rftoolsctrl-1.10-1.3.0.jar
on Jan 26, 20231.3.0:
- Added a graphics card, a vector art screen module and new opcodes to render vector art. For now you can render lines, boxes and text. Keep in mind that RFTools screens only update once every second so don't expect fast graphics with this. It's main use is for more graphic status displays and simple games
- Added a new random opcode that is a bit easier to generate random integers (the random function remains there too)
rftoolsctrl-1.10-1.2.0.jar
on Jan 26, 20231.2.0:
- New opcode to test if a tag of two items is equal
- New token item that can hold information and two tokens to work with that. One to copy a variable to a token and one to read out a token. These tokens can be used to transfer information in item form. For example, you could use such a token with a railcart system to code a destination on it so that at a station it can be read to see where the railcart has to go
- New 'exclusive' option for a processor (settable in the GUI) to make sure that programs on a card can only execute on the corresponding core. This way you can dedicate a program that needs more performance on a higher tier core while the other program(s) run on lower tier cores. This new option also helps with more controlled concurrency handling
- New IPC (inter process communication). Using the new network identifier card and the new advanced network card you can now send messages from one processor to another. A message has a name and you can also associate a variable with information with it. IPC has no distance limitations but the destination processor needs to be chunkloaded
- Some tooltip improvements
- Fixes:
- The crafting station failed to send over damage/metadata to the processors so the processor would craft the first item that matched the item ignoring meta
- Fixed a bug introduced last version where the editor for a 'side' field didn't display the current side correctly (programs did work though)
rftoolsctrl-1.10-1.1.1.jar
on Jan 26, 20231.1.1:
- Many automatic parameter conversions to make life easier for the programmer (i.e. inventory -> string representation and back so that you can for example construct an inventory location on your network programatically)
- The > and = opcodes actually have no result (i.e. they don't modify the last result). This was marked wrong in the tooltip
- Fixed a possible vulnerability with a packet that didn't check if the held item was actually from this mod
- The reset command now clears all redstone outputs on all sides of all network nodes as well as the processor itself
rftoolsctrl-1.10-1.1.0.jar
on Jan 26, 20231.1.0:
- New opcodes and functions:
- New opcode to read the damage value from an item
- New opcode to get the readable name of an item (needed because conversion to string has changed, see below)
- Function to get the last value as an item. Also has the feature to convert a string as a registry name to an item
- Changes:
- Slot is not optional for examine item. This was marked wrong
- Converting an item to a string will now return the registry name and not the display name. That's more symmetrical with the opposite conversion that already exists. So be aware of this if you were using this feature and use the new opcode to get the readable name of an item
- Fixes:
- String concat opcode was wrong. The input parameters were marked as integer
- The random function was not working
- Went through parameters for various opcodes and sanitized their usage
- New API so that other mods can also add opcodes and functions (currently only Deep Resonance supports this). Warning! This API may still change!
rftoolsctrl-1.10-1.0.0.jar
on Jan 26, 20231.0.0:
- Redstone events are now also supported for nodes
- Improved the gui for the crafting station and added a filter
- Added a verbosity option for tooltips
- Slightly better connector handling in the programmer
rftoolsctrl-1.10-1.0.0beta10.jar
on Jan 26, 20231.0.0beta10:
- Support for clipboard in the programmer so that you can copy and paste snippets of code
rftoolsctrl-1.10-1.0.0beta9.jar
on Jan 26, 20231.0.0beta9:
- Needs McJtyLib 2.1.1!
- Made it more clear for what the 16 expansion slots are meant by marking them more clearly in the processor gui
- Fixed a bug in 'get ingredients smart'. It would return 0 even if it was not possible to craft something
- There is now a new parameter for all events called 'single'. If that parameter is set then that event can only be run once. This is to prevent a single event from taking up all cores leaving no room for other events on a processor
- New opcode to put an inventory as a last result so you can store it in a variable. That opens up some reusability options for programs
- New signal opcode that sends a signal that can be catched by the signal event (same event that is used by rftools screens)
- Added command history (arrow up/down) to the processor making it easier to repeat the last commands
- Fixed a crash when ticks for the timer was set to 0
- Connectors in the programmer gui now highlight when you hover over them. Also you need to double click them to change because previously it was too easy to accidently change them (can be configured)
- Add the ability to edit variables in the processor if they are set
- When editing a variable or a parameter for an event you can no longer use the 'variable' and 'function' sections of the parameter editor since those don't make sense in that context
- Improvements to the user manual. Added a section on concurrency (locks, single event mode, ...) and a section on debugging (single stepping) your programs
rftoolsctrl-1.10-0.1.0beta7.jar
on Jan 26, 20230.1.0beta7:
- CraftOk opcode has item correctly marked as optional
- Manual improvements
- Better exception logging in case there is an 'internal error'
- Some fixes in case no parameters were given at all
rftoolsctrl-1.10-0.1.0beta6.jar
on Jan 26, 20230.1.0beta6:
- Several usability improvements to the opcodes
- Parameters can now be marked as optional and this is shown in the tooltip
- The program validator also shows missing parameters now
- Double clicking on an error in the validator will highlight the problematic opcode
- Several icon improvements as suggested by the community (but not all yet)
- You can shift click the program card in the programmer
- Fixed crash with crafting card when the gui was open
- Support for forge energy units
- New opcodes to measure liquid
rftoolsctrl-1.10-0.1.0beta5.jar
on Jan 26, 20230.1.0beta5:
- No maximum stacksize for crafting cards
- Should support old IInventory too for mods that don't yet support the new item handler capabilities (like IC2)
- New 'loop' opcode to make loops
- New opcodes for constant integers and strings
- The 'push multi' opcode now also works to a storage system
- New 'get ingredients smart' opcode that only gets the ingredients if they are all there and tries to request all missing ingredients (for recursive crafting)
- New 'signal' console command (processor console) to manually force a 'signal' event to run. Can be used for manual running of programs
- New opcode to resume a craft operation at timed intervals (as opposed to the current one that resumes as soon as an item is present)
- New /rfctrl save and /rfctrl load commands to save the program card in your hand to Json (to a file in the MC directory) and load it again. This is a way to transfer programs between worlds
rftoolsctrl-1.10-0.1.0beta3.jar
on Jan 26, 20230.1.0beta3:
- Warning! There have been a few opcode changes. Some opcodes are deprecated (for example, the opcodes for storage access, this functionality is merged with the normal inventory opcodes). Deprecated opcodes will stay in your grid but you cannot add new ones. It is recommended to replace them with the non deprecated version.
- Warning! Some parameters have changed so you may have to go over your programs to see if they are still ok
- Many new opcodes in general and cleanups to them
- Generalized exception handling. If something goes wrong in your program it will generate an exception. You can catch exceptions and act on them appropriatelly or you can just let them log on the console
- Some new console commands like 'reset'. Also new 'db' command to do singlestepping. For example, to singlestep core 0:
- db debug 0
- db info
- db step ...
- db resume
- Crafting related:
- Many new opcodes that are suitable for auto crafting
- New crafting card that can be used to store recipes and ingredients
- New workbench which is a generic crafting table with internal buffer but also easy to automate with the Processor
- New Crafting Station which is the block from where you request crafting operations. The processor needs a network card to access this
- Usability changes:
- Functions have tooltips
- Much improved tooltips for opcodes. Opcodes in the left-side opcode selector show general parameter information, tooltips on opcodes already in the grid show the actual parameter values that were used
- Parameter opcodes are now also shown on the '...' parameter button in the programmer GUI
- It is now possible to name program cards. Name is shown in the tooltip of the card but has otherwise no effect
- Timer events are no longer queue up when there are no available cores
- Several new functions like random
- New screen module to show the log of the processor
- The One Probe support to also show the last six lines of the log when sneaking
- Manual improvements
rftoolsctrl-1.10-0.0.1beta2.jar
on Jan 26, 20230.0.1beta2:
- Fixed a crash bug in case parameters were not set explicitely
rftoolsctrl-1.10-0.0.1beta1.jar
on Jan 26, 2023First beta release of RFTools Control