eggbeast 3684 Posted November 29, 2016 we are developing whole burnable villages for the unsung mod. they work perfectly in editor placed houses, but not if placed in TB and built into razorbacks maps. I am not a mapper and have no idea what he needs beyond a Land_ classname. the houses have currently got no model.cfg defining the hitpoints etc, as nothing is animated (like hidden wreck parts etc) Can anyone comment on the config below or the model properites, etc in terms of how best to edit this so the useractions work in the map-placed object. class CfgVehicles { class HouseBase; // External class reference class NonStrategic; // External class reference class House : HouseBase { class DestructionEffects; // External class reference class AnimationSources; // External class reference }; class Land_NAM_Hut_1_base: House { scope = 0; vehicleClass = "aa_uns_buildings_C"; editorCategory = "UNS_All_Obj"; editorSubcategory = "aa_uns_buildings_C_ville"; displayName = "Hut (small/balcony)"; model = "\raz_nam_obj\m\hut\raz_hut01.p3d"; destrType = "DestructBuilding"; armor = 100; ladders[] = {}; icon = "iconObject_1x1"; }; class Land_NAM_Hut_1: Land_NAM_Hut_1_base { scope = 2; displayName = "Hut (small/balcony)"; model = "\raz_nam_obj\m\hut\raz_hut01.p3d"; class HitPoints { class Hit1 { armor=0.3; material=-1; name=dam1; visual=damT1; passThrough=0; convexComponent=dam1; class DestructionEffects: DestructionEffects //demolish blast { class Dust { simulation = "particles"; type = "HousePartDust"; position = ""; intensity = 1; interval = 1; lifeTime = 0.01; }; class Dust2:Dust { type = "HousePartDustLong"; }; class Walls: Dust { type = "HousePartWall"; }; }; }; class Hit2: Hit1 { name=dam2; visual=damT2; convexComponent=dam2; class DestructionEffects //burn roof 1 { class light1 { simulation = "light"; type = "ObjectDestructionLight"; position = "destructionEffect1"; intensity = 0.001; interval = 1; lifeTime = 3; }; class smoke1 { simulation = "particles"; type = "ObjectDestructionSmoke"; position = "destructionEffect1"; intensity = 0.15; interval = 1; lifeTime = 3.5; }; class fire1 { simulation = "particles"; type = "ObjectDestructionFire1"; position = "destructionEffect1"; intensity = 0.15; interval = 1; lifeTime = 3; }; class sparks1 { simulation = "particles"; type = "ObjectDestructionSparks"; position = "destructionEffect1"; intensity = 0; interval = 1; lifeTime = 0; }; class sound { simulation = "sound"; position = "destructionEffect1"; intensity = 1; interval = 1; lifeTime = 1; type = "Fire"; }; class light2 { simulation = "light"; type = "ObjectDestructionLight"; position = "destructionEffect2"; intensity = 0.001; interval = 1; lifeTime = 3; }; class fire2 { simulation = "particles"; type = "ObjectDestructionFire2"; position = "destructionEffect2"; intensity = 0.15; interval = 1; lifeTime = 3; }; class smoke1_2 { simulation = "particles"; type = "ObjectDestructionSmoke1_2"; position = "destructionEffect2"; intensity = 0.15; interval = 1; lifeTime = 3.5; }; }; }; class Hit3: Hit2 { name=dam3; visual=damT3; convexComponent=dam3; class DestructionEffects: DestructionEffects //burn roof 2 { class light1: light1 { position = "destructionEffect3"; }; class smoke1: smoke1 { position = "destructionEffect3"; }; class fire1: fire1 { position = "destructionEffect3"; }; class sparks1: sparks1 { position = "destructionEffect3"; }; class sound: sound { position = "destructionEffect3"; }; class light2: light2 { position = "destructionEffect4"; }; class fire2: fire2 { position = "destructionEffect4"; }; class smoke1_2: smoke1_2 { position = "destructionEffect4"; }; }; }; }; class DestructionEffects: DestructionEffects { class Dust { simulation = "particles"; type = "HousePartDust"; position = ""; intensity = 1; interval = 1; lifeTime = 0.01; }; class Dust2: Dust { type = "HousePartDustLong"; }; class Walls: Dust { type = "HousePartWall"; }; class Ruin1 { simulation = "ruin"; type = "\A3\Structures_F_Exp\Civilian\House_Native_01\House_Native_01_ruins_F.p3d"; position=""; intensity = 1; interval = 1; lifeTime = 1; }; }; replaceDamaged = ""; replaceDamagedHitpoints[] = {}; class UserActions { class burnit { displayName = "Burn hut"; position = "destructionEffect1"; radius = 10; onlyForPlayer = true; condition = "(alive this && (this getHit 'Dam3' <1))"; statement = "[this, player] spawn indo_building_fnc_burnit_action"; }; }; actionBegin1 = burnit; actionEnd1 = burnit; }; demo of fx in editor-placed houses. use zippo and house based useraction to start fire fire spreads 3 Share this post Link to post Share on other sites
eggbeast 3684 Posted November 29, 2016 fire causes collapse to smoking ruin - Bunny: "we did it! we did the whole fuckin village!" use firing at hitpoints to cause fire turns out we have working versions already, possibly the new huts are missing something - they have identical configs and model lod content EXCEPT non-working version has in config: destrType = "DestructBuilding";and in geo properties (content is not really in quotes, it is in class box) map "house" damage "building" autocenter "0" canocclude "0" working version has in geo properties: class "house" dammage "building" and none of above Share this post Link to post Share on other sites
m1lkm8n 411 Posted November 29, 2016 Excellent!!! Looks awesome!!! Share this post Link to post Share on other sites
eggbeast 3684 Posted November 29, 2016 any idea what causes actions to show up or not in the editor vs TB placed objects? both working and non-0working have the same memory lod in model and useractions in config neither have a model.cfg also, milkman, while you're here! - any idea why some buildings in maps carry all of the proxies into the editor fine but show up empty of proxies in TB placed equivalents? Share this post Link to post Share on other sites
eggbeast 3684 Posted November 29, 2016 working hut has this setup: notice Land_xx = modelname.p3d am wondering if this is the key? does maybe BI tools carry over the actions properly etc if the class is Land_modelname maybe this could explain a broken door or ladder on certain of our other buildings hmmm class land_indo_hut_1: House { scope = 2; vehicleClass = "aa_uns_buildings_C"; editorCategory = "UNS_All_Obj"; editorSubcategory = "aa_uns_buildings_C_ville"; displayName = "Indo Hut (large/balcony)"; model = "\indo_building\indo_hut_1.p3d"; Share this post Link to post Share on other sites
eggbeast 3684 Posted November 29, 2016 mystery SOLVED - class Land_modelname must match modelname.p3d for the animations and actions to work if placed in TB. get your zippos filled... 3 Share this post Link to post Share on other sites
m1lkm8n 411 Posted November 29, 2016 Has the proxy problem been fixed as well? Share this post Link to post Share on other sites
eggbeast 3684 Posted November 29, 2016 not tested yet. have you seen this too mm? it happened for me on the a2 office i imported for our binarized cao bang map. the office was lacking doors, ladders, windows etc and looked horrible, including large chunks of untextured walls being visible through now open doorways etc. we haven't had time to recover the map to TB format yet (Ice was explaining how to do it, so we will probably do this in our next (echo) build) so in a binned map, bringing in a newly imported model, we have the issue. I have quickly checked the classnames and fuuuuuck class Land_A_Office01: Land_uc_building_C_base { model = "\uc\structures_e\Housea\A_Office01\A_Office01_EP1"; let's hope moveobject / hexedit on binned map doesn't do checksums. up to now i have been maintaining the same length of file path + filename as original sources. I guess to fit in _EP1 i can remove 4 letters from one of the parent folders and re-site it in there. EDIT - map only uses modelname, not config classname, so np, just changed config classname - should work now. will test when i get home (thu). Share this post Link to post Share on other sites
eggbeast 3684 Posted December 1, 2016 ok class = house is ALSO needed in the huts so they have the burn action, which seems to work great in MP test. Share this post Link to post Share on other sites