Skip to content

Unique identifier for crafting cpus when calling getCraftingCPUs #114

@zeridev

Description

@zeridev

Describe your idea (If you have more than one idea, please open the rest in other issues)

Currently when you call the getCraftingCPUs function you get a result like this.

[
    {
        "selectionMode": "ANY",
        "coProcessors": 3936,
        "isBusy": true,
        "storage": 8313459,
        "name": "QCPU_SW_4",
        "craftingJob": {
            "progress": 1245659904,
            "elapsedTimeNanos": 521651903801,
            "totalItem": 2147483647,
            "storage": {
                "tags": [
                    "minecraft:item\/itemfilters:check_nbt"
                ],
                "name": "productivebees:honey_treat",
                "amount": 1000000,
                "fingerprint": "049BBF545738C08E80F59AE58CC4EE67",
                "isCraftable": false,
                "nbt": {
                    "id": "productivebees:honey_treat"
                },
                "displayName": "Honey Treat"
            }
        }
    },
    {
        "selectionMode": "ANY",
        "coProcessors": 3936,
        "name": "QCPU_SW_4",
        "storage": 1065428365,
        "isBusy": false
    }
]

The problem with this is that there is no definitive way to tell these cpus apart because the split of cpu that is crafting the item has the same name as the one cpu it got split from. I considered using a combination of the name, storage and fingerprint of the currently crafting item but there is a possibility of 2 of the same items with the same amount being crafted on the same cpu.

My suggestion is to add some sort of unique identifier to the result of getCraftingCPUs maybe something as simple as name + number and have the base cpu be just the name like here below.

[
    {
        "selectionMode": "ANY",
        "coProcessors": 3936,
        "isBusy": true,
        "storage": 8313459,
        "name": "QCPU_SW_4",
        "id": "QCPU_SW_4-1"
        "craftingJob": {
            "progress": 1245659904,
            "elapsedTimeNanos": 521651903801,
            "totalItem": 2147483647,
            "storage": {
                "tags": [
                    "minecraft:item\/itemfilters:check_nbt"
                ],
                "name": "productivebees:honey_treat",
                "amount": 1000000,
                "fingerprint": "049BBF545738C08E80F59AE58CC4EE67",
                "isCraftable": false,
                "nbt": {
                    "id": "productivebees:honey_treat"
                },
                "displayName": "Honey Treat"
            }
        }
    },
    {
        "selectionMode": "ANY",
        "coProcessors": 3936,
        "name": "QCPU_SW_4",
        "storage": 1065428365,
        "isBusy": false
    }
]

Describe alternatives you've considered if any

game version: 1.20.1
mod version: 0.7.41r
modpack: All The Mods 0 To The Sky

Additional context

No response

Linked Issues

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-BridgesME/RS Bridge or other heavy networks

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions