Jump to content
  • 0

[RESOLVED] Adding Items & Repacking dayz_code PBO


Aristoi

Question

Hello all,

 

Thanks in advance for any help.

 

What I'm trying to do is add a new storage item (a wooden crate, based on GunRack_DZ) and repack the dayz_code pbo (with the goal of sending a pull request upstream via github).  I've started with the github source for 1.0.3.1c, and I've been using binPBO with settings similar to what vbawol mentioned here:  https://github.com/vbawol/DayZ-Epoch/issues/914 .

 

Once compiled, I am deploying the new pbo to my local client and server.

 

It works somewhat, in that I can:

  • Create ItemWoodenCrateKit from PartWoodLumber x 6
  • Use ItemWoodenCrateKit to place WoodenCrate_DZ (movable as a normal construction)
  • Add items to WoodenCrate_DZ (does not show capacity)

Unfortunately, there are some RPT errors and it is not saved to the hive.  I'm not sure what I am doing wrong, I assume it is something on my end with how I am packing the PBO or have defined the classes.

 

Does anyone have any pointers as to where I have gone off the rails?

 

Thanks!

 

 

arma2oaserver.RPT

13:35:48 Warning Message: No entry 'bin\config.bin/CfgMagazines.ItemWoodenCrateKit'.
13:35:48 Warning Message: No entry '.picture'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.scope'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: Error: creating magazine ItemWoodenCrateKit with scope=private
13:35:48 Warning Message: No entry '.displayName'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.displayNameShort'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.nameSound'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.Library'.
13:35:48 Warning Message: No entry '.libTextDesc'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.type'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.count'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.maxLeadSpeed'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.initSpeed'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.reloadAction'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.modelSpecial'.
13:35:48 Warning Message: '/' is not a value
13:35:48 Warning Message: No entry '.ammo'.
13:35:48 Warning Message: '/' is not a value

dayz_code\Configs\cfgMagazines.hpp

    class ItemWoodenCrateKit: CA_Magazine
    {
        scope = 2;
        count = 1;
        type = 256;
        displayName = "Wooden Crate"; // Fort_Crate_wood
        descriptionShort = "A wooden crate that holds a lot of items.";
        model = "\z\addons\dayz_epoch\models\supply_crate.p3d";
        picture = "\z\addons\dayz_epoch\pictures\equip_wooden_crate_ca.paa";
        weight = 20;
        class ItemActions
        {
            class Build
            {
                text = $STR_ACTIONS_BUILD;
                script = "spawn player_build;";
                require[] = {"ItemEtool","ItemToolbox"};
                create = "WoodenCrate_DZ";
            };
        };
    };   

dayz_code\Configs\cfgMagazines.hpp

    class PartWoodLumber: CA_Magazine
    {
        scope = 2;
        count = 1;
        type = 256;
        displayName = "Lumber";
        model = "\z\addons\dayz_epoch\models\planks.p3d";
        picture="\z\addons\dayz_epoch\pictures\equip_wood_planks_CA.paa";
        descriptionShort = "Lumber: Used for building many structures and can also be used to make plywood.";
        class ItemActions {
            class Crafting
            {
                text = $STR_EPOCH_PLAYER_254;
                script = ";['Crafting','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {"sawmill"};
                requiretools[] = {"ItemToolbox"};
                output[] = {{"PartWoodPlywood",1}};
                input[] = {{"PartWoodLumber",2}};
                
            };
            class Crafting1
            {
                text = $STR_EPOCH_PLAYER_255;
                script = ";['Crafting1','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {"workshop"};
                requiretools[] = {"ItemToolbox"};
                output[] = {{"bulk_empty",1}};
                input[] = {{"PartWoodLumber",2},{"PartGeneric",1}};
                
            };
            class Crafting2
            {
                text = $STR_EPOCH_PLAYER_256;
                script = ";['Crafting2','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {"workshop"};
                requiretools[] = {"ItemToolbox","ItemCrowbar"};
                output[] = {{"deer_stand_kit",1}};
                input[] = {{"PartWoodLumber",8},{"PartWoodPile",2}};
                
            };
            
            class Crafting3
            {
                text = $STR_EPOCH_PLAYER_257;
                script = ";['Crafting3','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {"workshop"};
                requiretools[] = {"ItemToolbox"};
                output[] = {{"ItemWoodStairs",1}};
                input[] = {{"PartWoodLumber",8}};
                
            };
            class Crafting4
            {
                text = $STR_EPOCH_PLAYER_258;
                script = ";['Crafting4','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {"workshop"};
                requiretools[] = {"ItemToolbox"};
                output[] = {{"ItemWoodLadder",1}};
                input[] = {{"PartWoodLumber",8}};
                
            };
            class Crafting5
            {
                text = $STR_EPOCH_PLAYER_259;
                Script = ";['Crafting5','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {"workshop"};
                requiretools[] = {"ItemToolbox"};
                output[] = {{"PartPlankPack",1}};
                input[] = {{"PartWoodLumber",3}};
            };
            class Crafting6
            {
                text = $STR_EPOCH_PLAYER_277;
                Script = ";['Crafting6','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {"workshop"};
                requiretools[] = {"ItemToolbox"};
                output[] = {{"ItemGunRackKit",1}};
                input[] = {{"PartWoodLumber",6}};
            };
            class Crafting7
            {
                text = "Craft Wooden Crate";
                Script = ";['Crafting7','CfgMagazines', _id] spawn player_craftItem;";
                neednearby[] = {};
                requiretools[] = {"ItemToolbox"};
                output[] = {{"ItemWoodenCrateKit",1}};
                input[] = {{"PartWoodLumber",6}};
            };                
        };
    };

dayz_code\Configs\cfgVehicles.hpp

    class Fort_Crate_wood;
    class WoodenCrate_DZ: Fort_Crate_wood
    {
        scope = 2;
        destrType = "DestructBuilding";
        offset[] = {0,2.5,0.5};  // What is a good offset?
        armor = 200;
        displayName = "Wooden Crate";
        vehicleClass = "Fortifications";
        transportMaxMagazines = 50;
        transportMaxWeapons = 5;
        transportMaxBackpacks = 1;
        //constructioncount = 5;
        removeoutput[] = {{"ItemWoodenCrateKit",1}};
        nounderground = 0;
    };

dayz_code\init\variables.sqf

// update objects
dayz_updateObjects = ["Plane","Car", "Helicopter", "Motorcycle", "Ship", "TentStorage", "VaultStorage","LockboxStorage","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","GunRack_DZ","WoodenCrate_DZ"];
dayz_disallowedVault = ["TentStorage", "BuiltItems","ModularItems","DZE_Base_Object"];
dayz_reveal = ["AllVehicles","WeaponHolder","Land_A_tent","BuiltItems","ModularItems","DZE_Base_Object"];
dayz_allowedObjects = ["TentStorage","TentStorageDomed","TentStorageDomed2", "VaultStorageLocked", "Hedgehog_DZ", "Sandbag1_DZ","BagFenceRound_DZ","TrapBear","Fort_RazorWire","WoodGate_DZ","Land_HBarrier1_DZ","Land_HBarrier3_DZ","Land_HBarrier5_DZ","Fence_corrugated_DZ","M240Nest_DZ","CanvasHut_DZ","ParkBench_DZ","MetalGate_DZ","OutHouse_DZ","Wooden_shed_DZ","WoodShack_DZ","StorageShed_DZ","Plastic_Pole_EP1_DZ","Generator_DZ","StickFence_DZ","LightPole_DZ","FuelPump_DZ","DesertCamoNet_DZ","ForestCamoNet_DZ","DesertLargeCamoNet_DZ","ForestLargeCamoNet_DZ","SandNest_DZ","DeerStand_DZ","MetalPanel_DZ","WorkBench_DZ","WoodFloor_DZ","WoodLargeWall_DZ","WoodLargeWallDoor_DZ","WoodLargeWallWin_DZ","WoodSmallWall_DZ","WoodSmallWallWin_DZ","WoodSmallWallDoor_DZ","LockboxStorageLocked","WoodFloorHalf_DZ","WoodFloorQuarter_DZ","WoodStairs_DZ","WoodStairsSans_DZ","WoodSmallWallThird_DZ","WoodLadder_DZ","Land_DZE_GarageWoodDoor","Land_DZE_LargeWoodDoor","Land_DZE_WoodDoor","Land_DZE_GarageWoodDoorLocked","Land_DZE_LargeWoodDoorLocked","Land_DZE_WoodDoorLocked","CinderWallHalf_DZ","CinderWall_DZ","CinderWallDoorway_DZ","CinderWallDoor_DZ","CinderWallDoorLocked_DZ","CinderWallSmallDoorway_DZ","CinderWallDoorSmall_DZ","CinderWallDoorSmallLocked_DZ","MetalFloor_DZ","WoodRamp_DZ","GunRack_DZ","FireBarrel_DZ","WoodenCrate_DZ"];
Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

sure you can do that, keep in mind you have to use the same dayz_code.pbo on the server and client(s) you test with!

you might need to update the dayz_code.pbo.dayz_vb.bisign maybe? I am not certain about that just google it maybe :)

Thanks for the reply, Axecop.

 

I did update both the client and the server with the same pbo, specifically:

 

Server: C:\DayZ Epoch Server\@DayZ_Epoch\addons\dayz_code.pbo

Client:  C:\Games\Steam\steamapps\common\Arma 2 Operation Arrowhead\@DayZ_Epoch\addons\dayz_code.pbo

 

I wondered about the file dayz_code.pbo.dayz_vb.bisign, though I though I was getting around by setting:

 

C:\DayZ Epoch Server\instance_11_Chernarus\config.cfg

verifySignatures = 0;

I can certainly try generating a new .besign file.

 

I was hoping the behavior I was seeing would easily indicate what was wrong to the experts, but maybe not.  I'll keep at it, I'm sure I've done something wrong.

Link to comment
Share on other sites

  • 0

I was able to fix it by repacking the dayz_code for the Nth time and redeploying it, along with deleting the .bisign files from, both client and server.  Then it worked perfectly.

 

Just as a test, I added back both .bisign files and all still worked right, so it must have been a packing or deployment issue, though I am not certain what.

 

At least it is working now!

 

Thanks for the help, Axecop and vbawol!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Discord

×
×
  • Create New...