Code Monkey home page Code Monkey logo

advancedperipherals's Introduction



Badge License    Badge Crowdin

Banner


A mod that adds many useful extensions to ComputerCraft
and aims to add features that were available in 1.12.2
mods like PeripheralsPlusOne.



Button CurseForge    Button Discord    Button Documentation



Contributing

Contributions to the project are always welcome!
Read our Contribution Guidelines to get started.

Translating

All translation is done via Crowdin, as such we
will close pull requests related to translations.

Badge Localized



Credits

@Srendi

    Author

@SirEdvin , @Olfi01

    Contributor

@FatalMerlin

    Ingame Guide + Minor Bug Fixes

Many Other Contributor

    ❣️


advancedperipherals's People

Contributors

bessw avatar canadianbaconboi avatar einhornyordle avatar electronicsarchiver avatar fatalmerlin avatar gmhater73 avatar itrooz avatar itzthemeow avatar kskudlik avatar lonevox avatar michele-grifa avatar mindy15963 avatar minecraft7771 avatar mrnaru300 avatar neoroutine avatar niall-mc avatar nielspilgaard avatar olfi01 avatar patprehn avatar pcfreak9000 avatar rayrvg avatar siredvin avatar sirendii avatar squiddev avatar tomprince avatar unhappycodings avatar wigglewizard avatar xenxes avatar zydeco avatar zyxkad avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

advancedperipherals's Issues

[Issue] RS Bridge unstacks items being imported

Describe

When calling the method listItem() while items are getting imported in the system, the program while unstacks items in the RS disks.

Reproduce

Steps to reproduce the behavior:

  1. Import any item in a constant flux
  2. Call listItem() in a loop

Screenshots/Videos

bug2.mp4

Code used:

rs = peripheral.find("rsBridge")


while true do
    rs.listItems()
    sleep(5)
end

Versions:

  • Forge version: 36.1.2
  • AdvancedPeripherals version: 0.5.3b

Notes:
Not tested with ME Bridge.

[Feature] Turtle chunk loader

Describe your feature idea
A chunk loader for the turtles that maybe needs to be fueled with ender pearls, maybe you can toggle that in a config file.
not sure if you can implement that but it would be quite nice...

[Feature]Turtles

Describe your feature idea
Besides the Chunky Turtle (#23 ), I want to add other turtles.

  • Player turtle(Turtle for the Player Sensor)
  • Environment Detector
  • Chatty Turtle(Turtle for the Chat Box)

[Feature] peripheral.wrap for Immersive Engineering's Redstone Wire Connector

Describe your feature idea
Allow the Redstone Wire Connector from Immersive Engineering to be used as a peripheral, with an API to control it's input/output status and its redstone colour.

Additional context
https://ftb.gamepedia.com/Redstone_Wire_Connector_(Immersive_Engineering)

For some reason, CC:Tweaked does not properly read the colour of IE's redstone signals through it's redstone wires and connectors. (getBundledInput() does not return a colour). This would allow a computer to still send a coloured redstone signal in IE by changing the colour of the connector before sending a signal.

I've tried talking to the IE mod team, and they don't seem interested in finding out why it's not working properly. This is a bit of an indirect, but functional, fix. Not really your problem, but would be massively appreciated!

Wrong Documentation

In the Documentation of the Player Detector the event which fires when a player clicks the block is not "chatEvent" it is "playerClick".

image

PlayerClick.mp4

[1.16.5] Turtles show nothing on-hover in JEI recipes

Describe

When holding the mouse over a Turtle in JEI, in the output of it's recipe, nothing is shown.

Reproduce

Steps to reproduce the behavior:

  1. Install the mod and JEI
  2. Click on any Advanced Peripherals Turtle in JEI
  3. Hover over the Turtle in the output window
  4. Observe bug

Screenshots/Videos

Bugged behaviour:
billede

Normal behaviour:
billede

Versions:

  • Forge version: 1.16.5-36.1.0
  • AdvancedPeripherals version: 0.4.3.1b

[Feature] Tweak ME and RS Bridge retrieve command to deposit on wired network instead of directionaly.

I have noticed that ME and RS Bridges retrive() command is using cardinal directions for chest/target to retrieve items into.

I would like suggesting changing this logic from cardinal direction to one used by CC:T inventory system where one can target any chest/inventory on same wired network as ME Bridge is.

Basically CC:T implementation allows to move items along the wired network between valid inventories as long as they are on same wired network. See: https://tweaked.cc/generic_peripheral/inventory.html for how it is implemented.

Example: chest.pushItems("minecraft_chest_5", 4) moves items from one chest to another.
With suggested change retrieve("minecraft:stone", 64, "minecraft_chest_5") would pull items from ME/RS system into the "minecraft_chest_5" on the wired network ME/RS Bridge is on.

Reasoning
In my opinion it would make it more consistent with CC:T way of transmitting items and extend it.
Additionally it would allow to simplify depositing items directly into target point on wired network instead of retrieving to sidechest and then pushing from that chest along wired network to target.

[Feature] Read player inventory

Describe your feature idea
A way to read the player inventory, would be nice if you can stand on a block or click it and get info about the items in your inventory, or maybe as a module for a pocket computer.

Would also be nice if you can directly move items in the player inventory so you can write sorting scripts and stuff like that

[Feature] Skinnable Turtles and Computers

Describe your feature idea
Make a special computer or turtle that can take on any texture in the pack or be spray painted with custom designs. That can be saved out as a custom models that can imported into other packs with the same mod.

[Feature] Envrionment Detector methods

Describe your feature idea
Some additional methods for the Environment Detector I feel would be useful:

Chunk:

  • isSlimeChunk() returns a boolean

Dimension:

  • getDimension() returns a string of the current dimension
  • isDimension(STRING) returns a boolean
  • listDimensions() returns a table of the dimensions generated in the current world file.

Moon:

Weather:

  • getWeather() returns a string
  • isRaining, isSnowing, isThunderstorm, etc returns a boolean

Liquid:

  • getLiquid(NAME, RANGE) returns a boolean if a certain liquid is found in range

Describe alternatives you've considered if you've any
-Some may be different enough to warrant their own block/component.
-You could also handle them as upgrade chips for the environment detector. (The detector could have a slot, or slots, to accept upgrades that allow use of the methods.)

Additional context
I'm more interested in the slime chunk method, but all these could be useful.
Apologies if you would prefer these as separate requests, but I felt organizing them by peripheral would be better.

[Feature] Environment Detector - Mekanism Radiation

Something that I wish I could do, is detect radiation from Mekanism. Mekanism itself does not have any redstone or block-based radiation detection equipment. This would be useful for warning people of radiation at a location.

[Issue]Rs bridge listCraftableItems() make my lastest.log 3.1G

Describe

when i use Rs bridge listCraftableItems() in server, i saw this
image

Reproduce

Steps to reproduce the behavior:
1.use rs.listCraftableItems()
2.see log

Screenshots/Videos

If applicable, add screenshots or videos to help explain your problem.

Versions:

  • Forge version:forge-1.16.5-36.1.2
  • AdvancedPeripherals version:0.4.2b

Crashlog/log (Use https://paste.gg or https://pastebin.com to upload your crashlog/log)
log : https://paste.gg/p/anonymous/a999bfc221b04133a71349cf6aea1fe8
startup.lua : https://paste.gg/p/anonymous/9cebb1e2bc3e4a1795aa0ec977efe5f1

Environmental Sensor getMoon() method inconsistent?

Describe
The output for the getMoon() method is a little strange and inconsistent. (see image)
Some phases output just a name inside a table {" NAME "}, and others output {[NUM] = "NAME"}

Reproduce
Use the getMoon() method during different moon phases and check the output.

Screenshots/Videos
Moon

Versions:

  • Forge version: 35.1.28
  • AdvancedPeripherals version: 0.3.3b

[Feature] Energy meter

Since this pretty dead and no 1.16.x version in sight, a energy meter in this style would be a nice addition to AdvancedPheripherals. Just a simple block that gives you current throughput values and maybe separate input and output values.
I know about the generic energy peripheral and that the forge energy api is limited somehow. But maybe it is still possible? Just an idea.

[Feature] AR goggles

Glasses for a player that can be adressed with a unique ID and show an overlay to the player which can be customized by a computer (like the terminal glasses in OpenPeripherals).
Using some kind of connection block that the glasses have been linked to and a computer next to it.
Also, it would be awesome to be able to put on the glasses in a specific "glasses" slot in the curios inventory, if curios is installed

[Issue] Environment Detector causes game crash when placed by turtle.

Describe
When an environment detector is placed by a turtle, the whole game crashes.

Reproduce
Steps to reproduce the behavior:
1.Enter world.
2.Place turtle.
3.Give environment detector to turtle.
4.Enter the lua prompt.
5.Have turtle place the environment detector.

Versions:

  • Forge version: 36.0.22
  • AdvancedPeripherals version: 0.3.9b

Crashlog/log (Use hasteb.in hasteb.in to upload your crashlog/log)
https://paste.gg/p/anonymous/b32627c0af154ceab55cac65994f5307

[Feature] Listing tags of items

Is it possible to add item tags to 'listItems()'? I'm writing an inventory system and would like to filter items with their tags. For example:
{ { amount = 1, displayName = "Dirt", name = "minecraft:dirt", nbt = "{}", tags = { [1] = "minecraft:sometag" } } }

I think that would be a nice feature to quickly gather information about an item.

[Issue] v0.6r - Fission Reactor Adapter Incorrect Methods

I hooked up my Mekanism fission reactor only to notice that it's showing the wrong methods. For example, I'm not even seeing activate() or scram() functions.

image

Reproduce

Steps to reproduce the behavior:

  1. Network a fission reactor into a terminal
  2. Open the terminal Lua prompt
  3. Enter perifs = peripheral.getNames() to get a table of the available peripherals
  4. Enter perifs to display the table... The fission reactor should be on slot 2 if nothing else is connected. If it doesn't show up, ensure that the modem on the fission reactor is activated and repeat step 3.
  5. Enter peripheral.getMethods(perifs[2]) (replacing 2 with the correct slot number if applicable)

...

Screenshots/Videos

Versions:

  • Forge: 36.1.0
  • Advanced Peripherals: 0.6r
  • Mekanism: 10.0.21.448
  • Mekanism Generators: 10.0.21.448

[Issue] craftItem expects two parameters.

Describe

me bridge craftItem expects two parameters

Reproduce

meBridge.craftItem({name="minecraft:stick"}, "minecraft:stick")
The second parameter seems to be the item name still.
Also passing a nonsense string to the second parameter crashes the game.
(I think an exception is not caught)

...

Versions:

  • Forge version: forge-1.16.5-36.1.4
  • AdvancedPeripherals version: advancedperipherals-0.4b

Crashlog/log
https://pastebin.com/cHNCYit4

[Feature]Me Bridge

Describe your feature idea
Me Bridge to interact with an Me System from Applied Energistics2.

Events:

  • securityBreak :
  • crafting : boolean success : String error message

Methods:

  • getCraftingCPUs : table craftingCpus
  • listItems : table items
  • listCraftableItems : table craftableItems
  • listFluids: table fluids
  • listCraftableFluids : table craftableFluids
  • craftItem(String item, int amount) : null
  • retrieve(String item, int amount, Direction direction) : null - Exports and item to a Inventory Holder

Any more ideas are welcome.

Additional context

[Issue] Config generates .bak copy every time the game starts up.

Describe
In newer versions of Forge the config file for Advanced Peripherals generates a new config with the file extension .bak each time the game starts.

Reproduce

Steps to reproduce the behavior:

  1. Start the game.
  2. A .bak config file generates.
  3. Profit.

Screenshot
image

Versions:

  • Minecraft: 1.16.5
  • Forge version: 36.0.46
  • AdvancedPeripherals version: 0.3.10b

- Gbergz

[Issue] RS Bridge breaks autocrafting

Describe

Calling method listCraftableItems() from the RS Bridge breaks autocrafting (see associated video).

Reproduce

Steps to reproduce the behavior:

  1. Call listCraftableItems()
  2. Ask for any autocraft from the RS system

Screenshots/Videos

bug.mp4

Code used:

rs = peripheral.find("rsBridge")

rs.listCraftableItems()

Versions:

  • Forge version: 36.1.2
  • AdvancedPeripherals version: 0.5.3b

Notes:

Not tested with ME Bridge.

[Feature] Custom Guis for Turtles and Computers

Describe your feature idea
Have gui module that can be modified in a gui designer that allows to set what variables get displayed where and what items are put where, and items come out where.

The module can be installed in a turtle or computer using a module insert table. The turtle or computer is placed in the table along with the module. After pressing insert. the turtle or computer comes out the other side.

Now the turtle or computer at this point can be reprogrammed only by attacking a computer monitor and keyboard to it, because when you right click it, you'll get the custom gui.

Or you can use the module insert table to remove the module.

Again be able to save out the modified computer or turtle for use inside other packs with this mod.

[Issue] Exporting items with nbt data not possible with me-bridge

Minecraft version: 1.16.5
Forge version: 36.0.42
AdvancedPeripherals version: 0.3.10b

I tried to export a enchanted book with a me-bridge into a chest.
'listItems()' shows:
{ { amount = 1, displayName = "Enchanted Book", name = "minecraft:enchanted_book", nbt = "{StoredEnchantments:[{lvl:1s,id:\"minecraft:mending\"}]}" } }

exporting with 'exportItem("minecraft:enchanted_book",1,"down")' gives the following error:
Item minecraft:enchanted_book does not exist in the ME system or the system is offline

I can export other items with the same setup no problem. I also have problems with other items and they all have in common that they have nbt data and AE2 lists them as different items with the same name.

Other mods use some kind of hash over the nbt data do differentiate between those items and sometimes give the option to ignore nbt data completely. For example here, here. One solution would be to use the normal name like now to extract items while ignoring the nbt data so already written programs don't break but use something like this to extract specific items. To use this 'listItems()' needs an entry with the hash for every item in the system.

[Feature] Get item details from an ME system

Describe your feature idea
Extend the functionality of the ME Bridge such that it is possible to

  1. get a list of all available items in a network
  2. get details for a specific item type (like number of stored items, damage values etc.)

Additional context
This used to be possible in OpenPeripherals and gave rise to some very useful ME related scripts like this defragmentation setup:
setup description, script.

Relevant OpenPeriperhals API documentation: here

[Feature] Integrated Dynamics Support

Describe your feature idea

Quite simply Integrated Dynamics has so far been a fantastic tool for data retrieval and formatting, however lackluster in processing (or quite possibly my ability to use it is lackluster). Integrated Dynamics already uses standard classes as it is, (string, int, double, list... what have you.) so being able to simply import the variables from variable cards would be extremely helpful! unless I am unaware of some existing compatibility I don't understand, regardless it would be great to streamline it as a peripheral.

[Feature] Envrionment Detector as an upgrade for Pocket Computers

Describe your feature idea
Allow pocket computers to equip an environmental detector like they would equip a modem, using the Pocket API.

Describe alternatives you've considered if you've any
None.

Additional context
A less portable method is obviously to place the detector and attach a modem, then use Rednet to access the block.

[Issue]Peripheral Issue

Describe
Every block is a PeripheralProvider. I can connect a Modem with a dirt block...

Reproduce
Steps to reproduce the behavior:

  1. Connect a Modem with any block, it will connect

Versions:

  • Forge version: 35.0.18
  • AdvancedPeripherals version: 0.0.1

[Feature] Add an ingredient table for listCraftableItems() method (RS/ME Bridge)

Describe your feature idea

When using the listCraftableItems() method from bridges, it'd be great for debugging purposes to have access to a table giving us the ingredients used to make a pattern.

Describe alternatives you've considered if you've any

None.

Additional context

Searched for a good 2 hours last night for a pattern with a bugged item on it, would have been 30 seconds if such a table would have been provided.

Current return value for reference:
listCraftableItems

[Issue] rsBridge.getItem({}) with 'nbt' field doesn't work

Describe

getItem() returns wrong written book

replace 'md5Hash' value with value from /advancedperipherals getHashItem

Reproduce

Steps to reproduce the behavior:

  1. Connect RS Bridge to CC, RS and chest
  2. Create 2 different written books and add them to RS network
  3. Run program

test.lua

local rb = peripheral.find('rsBridge');
local md5Hash = "801bfe99b388407f956b8e157d1c0e37";
local chest = peripheral.find('minecraft:chest')

local function debugTable(table)
    textutils.pagedPrint(textutils.serialise(table));
end

local itemTable = { name="minecraft:written_book", nbt=md5Hash, count = 1 };

debugTable(rb.getItem(itemTable));

rb.exportItemToChest(itemTable, peripheral.getName(chest));

Versions:

  • Forge version: 36.1.13
  • AdvancedPeripherals version: 0.5b
  • Refined Storage version: 1.9.12

[Issue] Error while modloading with AE2

Describe
So I wanted to test out AE2 with the features of this mod. But it crashed on loading the game.
AE2 works without AP and AP ofc without AE2.

Reproduce
Steps to reproduce the behavior:

  1. Put AdvancedPeripherals and AE2 into your mod folder
  2. Load Minecraft
  3. Crash

Screenshots/Videos
If applicable, add screenshots or videos to help explain your problem.

Versions:

  • Forge version: 35.1.37
  • AdvancedPeripherals version: 0.3.5b
  • AE2 version: 8.2.0 beta.3; 8.1.0 (not working too)

Crashlog/log (Use hasteb.in hasteb.in to upload your crashlog/log)

https://paste.gg/p/anonymous/940737e0167d4e40bb315f6c8449ca8f

[Issue] Typing a Chat Message Causes a Massive Lag Spike

Describe

Typing in chat creates a massive lag spike. The tick in which the messages are processed ends up lasting for (tens of seconds to multiple minutes). The time is getting progressively longer on our server.

Reproduce

Currently we have a world with a self propelling mining machine built with Create. The machine is being chunk loaded using 4 chunky turtles. Three of those turtles are attached to the miner itself, and are moved by Create, and the last turtle moves by itself. These are the only cc-tweaked computers or turtles that exist in the world. This miner has moved roughly 55,000 blocks and the issue seems to be getting worse the longer the world (and the miner) run.

Steps to reproduce the behavior:

  1. Make a self-propelling flying machine with Create.
  2. Attach a chunky turtle to the machine.
  • I suspect any kind of turtle will do.
  1. Let the machine run for a long time.
  2. Try typing messages in chat and there should be a lag spike as the message is processed.

Suspected Cause
Profile when typing a chat message: https://spark.lucko.me/jImuCwBmBz

For context, I am a Java programmer, but I'm not a forge modder. Based on my understanding of the source code, this is what I think is causing the issue.

When a chat message is sent, it is handled by the Events class. Those event handlers then both call getTileEntities from the TileEntityList. In the case of my world, getTileEntities takes a very long time.

As far as I can tell, the TileEntityList is supposed to be a cache of tile entities relevant to advanced peripherals. If my understanding is correct, then in theory this should only have 4 entries for the 4 turtles in my world. Given how long the tick times are taking when processing messages, I suspect that this cache is instead growing without having entries properly removed. Not sure if this is a result of them being moved by Create or just that they have moved a large number of blocks.

Suggestions
Here are some suggestions. I'm not super aware of the intricacies of forge, but here are some options to optimize the getTileEntities call.

  • Only subscribe to the server chat event once, and only iterate through the cache of tile entities once. Based on the type of tile entity then delegate to separate methods to handle it for either the turtles or the computers. This would remove one of those two calls to getTileEntities.
  • Consider using a Set instead of a List for the underlying data structure. See TileEntityList.java#L21. This would avoid the need to do contains checks when adding items to the cache. It would also make contains checks significantly faster with large numbers of entries.
  • It looks like setTileEntity is a toggle for whether a tile entity block position should be included in the cache. If it is already in the cache, remove it. Otherwise, if it isn't in the cache add it. I would suggest switching this to two methods addTileEntity and removeTileEntity to avoid accidentally removing a tile entity when trying to add it or vice versa, which should make it easier to ensure the cache is updated correctly. I think this would avoid the need for the setTileEntity method with the force parameter too.

There are a few potential issues with getTileEntities itself.

    public List<TileEntity> getTileEntities(World world) {
        List<TileEntity> list = new ArrayList<>();
        for (BlockPos next : new ArrayList<>(getBlockPositions())) {
            if (world.isAirBlock(next) || !world.isBlockLoaded(next))
                setTileEntity(world, next); //No block here anymore.
            if (world.getTileEntity(next) == null)
                setTileEntity(world, next); //No tile entity here anymore.
            list.add(world.getTileEntity(next));
        }
        return list;
    }
  1. It starts by iterating through the different block positions, but if setTileEntity is called, then it needs to iterate through all of them again when it's performing the contains check in setTileEntity here. This makes this a very expensive method to run if the cache is large since the check is O(n^2).
  2. Even if the tile entity was removed from the list by the first if statement, it seems like it could potentially be re-added by the second if statement. This is not something I'm super familiar with, but it seems like it's reasonable that a block could be air and have the tile entity at that position be null at the same time. Since currently, setTileEntity toggles whether the block position is in the cache. The net result is that the position that should have been removed twice instead remains in the cache. Finally, even if it was removed from the cache, it is still added to the final result List to be returned, which seems like the wrong behavior.

Versions:

  • Mod Pack (All the Mods 6): 1.6.1
  • Forge version: 36.1.2
  • AdvancedPeripherals version: 0.4.5b

Crashlog/log (Use https://paste.gg or https://pastebin.com to upload your crashlog/log)
This doesn't cause a crash.

[Feature]Chat box

Describe your feature idea
A chat box with the function to send and read messages from the global chat
Functions:

  • sendMessageToPlayer(String senderName, String message)
  • sendMessage(String message)

Event:

  • playerChat : String : String
    Additional context
    Not yet

[Feature] Valkyrien Skies + Advanced Rocketry compatibility features (once they update to 1.16)

Describe your feature idea
Methods of automating the movement of Valkyrien Airships/Advanced Rocketry Spaceships (and hybrids of both once the compatibility mod between them is updated, too.). Reading out the location of the vehicle in the world/galaxy, scanning for certain planet types, etc. Would all be amazing features to implement for this mod.

Describe alternatives you've considered if you've any
The only thing that had similar features were the OpenComputers compatibility addons for Valkyrien Skies and Advanced Rocketry back in 1.12.2. Apparently they are broken at the moment, and OpenComputers is of course still in 1.12.2.

Additional context

[Issue] Energy Detector sometimes voids energy, or is an infinit energy source without input

Describe

Expected

  • measures the throughput and allows to limit it
  • input and output of the Energy Detector are always the same
  • no energy is lost (or only a bit as energy consumption of the Energy Detector)

Observed

  1. one time it suddenly was an infinity energy source even without an input attached (it gave 1.6 kFE/t)
  2. now it drains any available energy on the input and voids the excess
    • multiple in parallel share the input evenly
    • limiting the throughput works, but it is used up to max even without an attached cable
  3. two of our Energy Detectors are limited to 0 and don't have an input source attached, but still report a throughput of last time it was transmitting power

Reproduce

Steps to reproduce the behavior:

  1. use an not infinite energy source (Bigreactors - Basic Reactor)

used mods

  • Bigreactors - Basic Reactor
  • Flux Networks
  • Rftoolspower - Powercell (High)
  • Makanism - Basic Universal Cable
  • many others not directly interfacing with this (ask if you need to know more)

Versions:

  • Forge version: 36.1.4
  • AdvancedPeripherals version: 0.4.4b

[Feature] Allow Computers to read block entity NBT values for data collection.

Describe your feature idea
When computers use the peripheral api on an unsupported block entity, it instead return a table that contains get methods for getting each value in that nbt table. These functions would not allow you to edit the nbt data. That way you can still collect data from mods that might not be supported.

Describe alternatives you've considered if you've any
There could also be a different api that wraps this behavior, but I believe that peripheral api would make the most sense.

Additional context
I think this was a feature in one of the many peripheral mods back it the day, because I distinctly remember using it with redpower 2 to get the energy levels in batteries.

[Feature] Chat Box: Text components

Describe your feature idea
Right now you can only send strings. I think it would be cool if you could send arbitrary components like the tellraw command. For example, you could send a clickable component that, when clicked, sends a command for the computer.

Minecraft already has facilities for converting JSON to text components, and back again. Perhaps you could convert a Lua table to JSON, then convert it to a component? And then add some event for receiving incoming text components, which would be like the same but in reverse.

Describe alternatives you've considered if you've any
N/A

Additional context
§-codes can be buggy, and you can't do interactive content like tooltips and click actions.

[Feature] Function getName() for all peripherals to get anvil assigned name

Since it is possible to name blocks with the anvil it would be nice to have a function 'getName()' to get back the assigned name of a block.

This would make identifying different storage networks much easier if there are more then one connected to a computer/network without relying on the computercraft given names or other hacks to identify connected blocks.

[Issue] Memory Card dosent drop if you break the Inventory Manager v0.5.1.b

Describe

Memory Card dosent drop if you break the Inventory Manager

Reproduce

on a Multiplayer Server

Steps to reproduce the behavior:
1.place inventory manager
2.bound memory card to yourself
3.place it inside the inventory manager
4.break the inventory manger

Versions:

  • Forge version: 1.16.5-36.1.2
  • AdvancedPeripherals version: 0.5.1.b

Crashlog/log (Use https://paste.gg or https://pastebin.com to upload your crashlog/log)

[Feature]Enviornment Detector

Describe your feature idea
The Environment Detector is used to get informations about you enviorment.

Functions:

  • getLightLevel() returns int
  • getBiome() returns String
  • getTime() returns long

Additional context
nope

[Issue] Inventory Manager voids items on full inventory

Mod Version: 0.5.3b

Issue:

The method addItemToPlayer from the Inventory Manager voids item on a full inventory player.

Note: The problem seems to already be detected by the function since the return value is correctly set to 0.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.