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