Jump to content
  • 0
Aristoi

[RESOLVED] Adding Items & Repacking dayz_code PBO

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"];

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Thanks for the reply, vbawol!  I certainly intend to make a pull request, but I would normally want to test them beforehand.

 

Is it not possible to repack the pbo and test these changes in a local server before making the pull request?

Share this post


Link to post
Share on other sites
  • 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 :)

Share this post


Link to post
Share on other sites
  • 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.

Share this post


Link to post
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!

Share this post


Link to post
Share on other sites
  • 0

I have a question on the above, it was noted that client and server pbo should match. That's fine for me but surely everyone else would have to amend their file too.? What about new players who had the vanilla client file? Would they be unable to play ?

Share this post


Link to post
Share on other sites
  • 0

Yes, they would not be able to play... That is why I wish there was a way to override item classes in the mission files.  Would make servers a lot more customizable with new players automatically getting new files for the server they are joining

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By Thug
      in my RPT server side, I keep getting this errors that have to do with the dayz_code loot. The errors below are only part of what is in the rpt server side. I only copied a few. Has anyone seen this before and what to do about it? By the way, they show up in 2 servers I have Sauerland 1.0.6.2 and Taviana 1.0.6.2. The loot system is working.
      When I take DZAI out of both server, I do not get these errors.  Was doing sector B today, which I use the DZAI. Every time you would shoot your weapon two times, you could see the loot change.  I have gone over the loot files on mission side and can not find anything wrong with it. Also, I had someone else look and they could not find anything wrong.
       
    • By Thug
      UPDATE 2/14/2018
      Still getting the following errors
      in my RPT server side, I keep getting this errors that have to do with the dayz_code. Has anyone seen this before and what to do about it? By the way, they show up in 2 servers I have Sauerland 1.0.6.2 and Taviana 1.0.6.2. The loot system is working.
      The one thing I did notice is that when I take out DZAI, I don't get these errors.
       
       
    • By Sieegfreed
      Hello, I'm having a problem to play DayZ EPOCH mod.
      I already uninstall and reinstall the game from steam, move AddOns to OA, used  "[email protected]_Epoch;" and I have been tried lots of things to try to fix this error.
      this message continue every time I try to log in any server, a .pbo problem...
      please, can some one help me to fix this issue? 
      thank you for the attention!
       

    • By harcosgoogle
      Hi!
       
      How to lock server pbo file? (mpmission)
    • By adam59600
      Hey all,
              This is NOT my fix and i do NOT take any credit for it. I forgot who told me about it, but I wanted to share it with you guys so hopefully it helps someone who was having the same problems i was. If you're using PBO manager like me, You may have noticed that after you repack your server pbo and try to run it, your gsme wont load or you'll be stuck at wait for host. The probem is that after you repack your server PBO, PBO manager isn't adding the prefixes from the original PBO to the new PBO, To fox this it's simple, Repack your pbo after your done editing it. Double click the PBO so it opens it up in PBO msnsger. Don't extract it. Click the PBO once, to highlithgt it. Click the blue gear icon about your PBO.  Right click, and add the require prefixes. They're usually  mikero///////Depbo.dll        pboprefix\\\\\\\\ z\addons\dayz_server       prefix\\\\\\\\\\ z\addons\dayz_server     Hope this helps!
  • Advertisement
  • Supporters
  • Discord

×
×
  • Create New...