Brian-Wuest / MC-Prefab

A minecraft mod designed to provide ways of creating Pre-Fabricated(designed) buildings.
Other
26 stars 20 forks source link

Basic Structure recipes return Null items on servers. #58

Closed Brian-Wuest closed 7 years ago

Brian-Wuest commented 7 years ago

In 1.12 the recipes for the Basic Structure return Null names instead of their proper names. This only happens for servers and not for single player.

Brian-Wuest commented 7 years ago

This was fixed with version 1.3.0.6.

Ramzah commented 7 years ago

I'm on version 1.3.0.7 and this bug came out again but on structures like Mineshaft entranc,e, Barn, etc.. Only on server, single player works fine.

Brian-Wuest commented 7 years ago

I am running the latest version and confirmed that the recipes are working properly on a server.

Please make sure that your server configuration options allow these items to be crafted. Server settings override client settings.

Can you show a screen shot of what you are seeing on a server. I will also need to see your server configuration file and what version of forge you are running.

Ramzah commented 7 years ago

Server configs allow items to be crafted. (Everything set to TRUE except loft house) Forge version: 14.22.0.2452 2017-09-05_01 40 47 By server configurations i guess you need the server.properties file? Here it is:

Minecraft server properties

Tue Sep 05 01:04:02 CEST 2017

spawn-protection=16 max-tick-time=60000 generator-settings= force-gamemode=false allow-nether=true gamemode=0 broadcast-console-to-ops=true enable-query=false player-idle-timeout=0 difficulty=1 spawn-monsters=true op-permission-level=4 pvp=false snooper-enabled=true level-type=DEFAULT hardcore=false enable-command-block=false max-players=2 network-compression-threshold=256 resource-pack-sha1= max-world-size=29999984 server-port=25565 server-ip= spawn-npcs=true allow-flight=true level-name=world view-distance=10 resource-pack= spawn-animals=true white-list=false generate-structures=true online-mode=false max-build-height=256 level-seed= prevent-proxy-connections=false motd=A Minecraft Server enable-rcon=false

Brian-Wuest commented 7 years ago

I meant the Prefab.cfg from the server. Servers have their own configuration file that is used instead.

I see you have JEI installed. Did you get the item through JEI or the Creative Menu or through the Crafting Table?

Ramzah commented 7 years ago

Here's the prefab.cfg from the server:

Configuration file

general {

options {
    # Determines if the house item is added to player inventory when joining the world for the first time. Server configuration overrides client. [default: true]
    B:"Add House Item On New Player Join"=true

    # Determines if the moderate house item is provided to the player instead of the starting house. [default: false]
    B:"Add Moderate House on World Join"=false

    # When true this option causes the Crafting Table, Furnace and Chest to not be added when creating a house, regardless of options chosen. Server Configuration overrides client. [default: false]
    B:"Enable House Generation Restrictions"=false
    B:"Enable Loft House"=false
    B:"Enable Version Checking"=true

    # Determines if the spawners for the Monster Masher building are included. Server configuration overrides client. [default: true]
    B:"Include Spawners in Monster Masher"=true

    # Determines if the Preview buttons in structure GUIs and other structure previews functions are enabled. Client side only. [default: true]
    B:"Include Structure Previews"=true

    # Determines the maximum size the starting house can be generated as. Server configuration overrides client. [range: 5 ~ 16, default: 16]
    I:"Maximum Starting House Size"=16

    ##########################################################################################################
    # chest contents
    #--------------------------------------------------------------------------------------------------------#
    # This category is to determine the contents of the chest created by the house item. When playing on a server, the server configuration is used.
    ##########################################################################################################

    "chest contents" {
        # Determines if Leather Armor is added the the chest when the house is created. [default: true]
        B:"Add Armor"=true

        # Determines if a Stone Axe is added the the chest when the house is created. [default: true]
        B:"Add Axe"=true

        # Determines if a stack of cobble is added the the chest when the house is created. [default: true]
        B:"Add Cobblestone"=true

        # Determines if seeds, potatoes and carros are added the the chest when the house is created. [default: true]
        B:"Add Crops"=true

        # Determines if a stack of dirt is added the the chest when the house is created. [default: true]
        B:"Add Dirt"=true

        # Determines if Bread is added the the chest when the house is created. [default: true]
        B:"Add Food"=true

        # Determines if a Stone Hoe is added the the chest when the house is created. [default: true]
        B:"Add Hoe"=true

        # Determines if a Stone Pickaxe is added the the chest when the house is created. [default: true]
        B:"Add Pickaxe"=true

        # Determines if a set of oak saplings are added the the chest when the house is created. [default: true]
        B:"Add Saplings"=true

        # Determines if a Stone Shovel is added the the chest when the house is created. [default: true]
        B:"Add Shovel"=true

        # Determines if a Stone Sword is added the the chest when the house is created. [default: true]
        B:"Add Sword"=true

        # Determines if a set of torches are added the the chest when the house is created. [default: true]
        B:"Add Torches"=true
    }

    ##########################################################################################################
    # recipes
    #--------------------------------------------------------------------------------------------------------#
    # This category determines if the recipes for the blocks/items in this are enabled
    ##########################################################################################################

    recipes {
        # Determines if the recipe(s) associated with the Advanced Chicken Coop are enabled. [default: true]
        B:"Advanced Chicken Coop"=true

        # Determines if the recipe(s) associated with the Advanced Horse Stable are enabled. [default: true]
        B:"Advanced Horse Stable"=true

        # Determines if the recipe(s) associated with the Advanced Warehouse are enabled. [default: true]
        B:"Advanced Warehouse"=true

        # Determines if the recipe(s) associated with the Andesite Slabs are enabled. [default: true]
        B:"Andesite Slabs"=true

        # Determines if the recipe(s) associated with the Andesite Stairs are enabled. [default: true]
        B:"Andesite Stairs"=true

        # Determines if the recipe(s) associated with the Aqua Base are enabled. [default: true]
        B:"Aqua Base"=true

        # Determines if the recipe(s) associated with the Barn are enabled. [default: true]
        B:Barn=true

        # Determines if the recipe(s) associated with the Bundle of Timber are enabled. [default: true]
        B:"Bundle of Timber"=true

        # Determines if the recipe(s) associated with the Chicken Coop are enabled. [default: true]
        B:"Chicken Coop"=true

        # Determines if the recipe(s) associated with the Compressed Chest are enabled. [default: true]
        B:"Compressed Chest"=true

        # Determines if the recipe(s) associated with the Compressed Dirt are enabled. [default: true]
        B:"Compressed Dirt"=true

        # Determines if the recipe(s) associated with the Compressed Glowstone are enabled. [default: true]
        B:"Compressed Glowstone"=true

        # Determines if the recipe(s) associated with the Compressed Obsidian are enabled. [default: true]
        B:"Compressed Obsidian"=true

        # Determines if the recipe(s) associated with the Compressed Stone are enabled. [default: true]
        B:"Compressed Stone"=true

        # Determines if the recipe(s) associated with the Defense Bunker are enabled. [default: true]
        B:"Defense Bunker"=true

        # Determines if the recipe(s) associated with the Diorite Slabs are enabled. [default: true]
        B:"Diorite Slabs"=true

        # Determines if the recipe(s) associated with the Diorite Stairs are enabled. [default: true]
        B:"Diorite Stairs"=true

        # Determines if the recipe(s) associated with the Ender Gateway are enabled. [default: true]
        B:"Ender Gateway"=true

        # Determines if the recipe(s) associated with the Fish Farm are enabled. [default: true]
        B:"Fish Farm"=true

        # Determines if the recipe(s) associated with the Glass Slabs are enabled. [default: true]
        B:"Glass Slabs"=true

        # Determines if the recipe(s) associated with the Glass Stairs are enabled. [default: true]
        B:"Glass Stairs"=true

        # Determines if the recipe(s) associated with the Granite Slabs are enabled. [default: true]
        B:"Granite Slabs"=true

        # Determines if the recipe(s) associated with the Granite Stairs are enabled. [default: true]
        B:"Granite Stairs"=true

        # Determines if the recipe(s) associated with the Grassy Plains are enabled. [default: true]
        B:"Grassy Plains"=true

        # Determines if the recipe(s) associated with the Green House are enabled. [default: true]
        B:"Green House"=true

        # Determines if the recipe(s) associated with the Horse Stable are enabled. [default: true]
        B:"Horse Stable"=true

        # Determines if the recipe(s) associated with the Instant Bridge are enabled. [default: true]
        B:"Instant Bridge"=true

        # Determines if the recipe(s) associated with the Machinery Tower are enabled. [default: true]
        B:"Machinery Tower"=true

        # Determines if the recipe(s) associated with the Magic Temple are enabled. [default: true]
        B:"Magic Temple"=true

        # Determines if the recipe(s) associated with the Mineshaft Entrance are enabled. [default: true]
        B:"Mineshaft Entrance"=true

        # Determines if the recipe(s) associated with the Moderate House are enabled. [default: true]
        B:"Moderate House"=true

        # Determines if the recipe(s) associated with the Monster Masher are enabled. [default: true]
        B:"Monster Masher"=true

        # Determines if the recipe(s) associated with the Nether Gate are enabled. [default: true]
        B:"Nether Gate"=true

        # Determines if the recipe(s) associated with the Paper Lantern are enabled. [default: true]
        B:"Paper Lantern"=true

        # Determines if the recipe(s) associated with the Phasic Block are enabled. [default: true]
        B:"Phasic Block"=true

        # Determines if the recipe(s) associated with the Pile of Bricks are enabled. [default: true]
        B:"Pile of Bricks"=true

        # Determines if the recipe(s) associated with the Produce Farm are enabled. [default: true]
        B:"Produce Farm"=true

        # Determines if the recipe(s) associated with the Smart Glass are enabled. [default: true]
        B:"Smart Glass"=true

        # Determines if the recipe(s) associated with the Starting House are enabled. [default: true]
        B:"Starting House"=true

        # Determines if the recipe(s) associated with the Tree Farm are enabled. [default: true]
        B:"Tree Farm"=true

        # Determines if the recipe(s) associated with the Villager Houses are enabled. [default: true]
        B:"Villager Houses"=true

        # Determines if the recipe(s) associated with the Warehouse are enabled. [default: true]
        B:Warehouse=true

        # Determines if the recipe(s) associated with the Warehouse Upgrade are enabled. [default: true]
        B:"Warehouse Upgrade"=true
    }

}

}

I tried both, via crafting and creative menu, when all failed i even tried /give prefab: but the item won't even show up in the suggestions in the chat when i press tab. I didn't try from JEI honestly, i only use it to check recipes.

Brian-Wuest commented 7 years ago

Thank you for the information. I was able to duplicate this.

🤕

I thought I fixed this.

Re-opening issue.

Ramzah commented 7 years ago

Aww that's too bad. If it helps i can add something i noticed: In the creative menu the item appears to be the correct one, it only gets "corrupted to NULL" once you let go of the left mouse button to either add it to your inventory or drop it on the ground (you can tell if you drop it on the ground by the item sprite turning green) If you try using that NULL item the GUI is offcentered and if you click on preview the game crashes. (if you click on build nothing happens)

Brian-Wuest commented 7 years ago

Yeah, the issue is because the Basic Structures use NBT data for the data to show in the GUI and in 1.12 they changed things which broke things.

Brian-Wuest commented 7 years ago

You should be able to use the crafting table. That works without issue. I confirmed this by crafting a Barn item.

The only problem seems to come from getting the items from the Creative menu.

Brian-Wuest commented 7 years ago

I was able to figure this out last night. I pushed an updated version to curse forge and it should be approved soon. Closing this issue.

Thanks!