colinm9991 20 Posted September 22, 2012 I'm trying to load a p3d file (It is not official BI, it is from a island modification) however I am getting this error. I have tried now with several island modifications and all are the same, how can I solve this? Share this post Link to post Share on other sites
colinm9991 20 Posted September 22, 2012 you can't. I know of somebody who has done I believe. It's to get the co-ordinates for a specific point in that building itself, if I can't open the p3d file then is there any other way to get X Y Z co-ords? Share this post Link to post Share on other sites
max power 21 Posted September 22, 2012 To modify someone else's work you require permission. If you get permission, hopefully you can get the mlods. Thread closed. If I have missed something and you wish to discuss the thread closure, please PM me. ---------- Post added at 16:43 ---------- Previous post was at 16:33 ---------- Thread reopened. Share this post Link to post Share on other sites
colinm9991 20 Posted September 22, 2012 (edited) Just stating that the reason for attempting to un-binarize (Loosely stated above) is to get X Y Z co-ordinates of a certain building of a certain point. For example, if I get X Y Z co-ordinates in Oxygen for a building in let's say, the bathroom, and I use those co-ordinates to spawn an object, then that object will spawn in every single set building of that class-name on the map. Similar to DayZ's system of defining loot spawn in the dayz_code config.bin file. If anybody has any idea of how to do this without acquiring the MLOD's that would be great :) Edited September 22, 2012 by ColinM9991 Share this post Link to post Share on other sites
[aps]gnat 28 Posted September 23, 2012 I'm lost .... Why is this simply not trial-and-error testing of test XYZ coordinates to place objects, in each building class? Because there are no special points defined within a buildings p3d model to help you on this. There are no points called "bathroom" or "hallway" or "kitchen", so I see no way this was going to be any help with or without the MLOD ! Share this post Link to post Share on other sites
Sealife 22 Posted September 23, 2012 (edited) As gnat says , Because of unlikelyhood of there being a specific selection or memory point , your best option is to use a world pos direct , You can do this by going to the exact point yourself and either hint or diag_log to .rpt your position or long winded use a combination of get the building via nearestobject and use modeltoworld . However if you know there is a point then use selectionposition command described in wiki and modeltoworld to get your spawn point . Edited September 23, 2012 by Thromp Share this post Link to post Share on other sites
colinm9991 20 Posted September 23, 2012 When I say point "bathroom" etc I actually mean that I walk into the bathroom itself and grab the co-ordinates for that room. If I grab the world pos, does that mean I will have to grab every single XYZ Co-ordinate of that type of building if I want an item to randomly spawn in a certain room throughout the whole map? What I don't understand though, I made a mission last night, completely blank (Just to test co-ordinates) When I set my characters position in the mission sqm to one of the "lootpos=" co-ordinates from DayZ's code config.bin file it either sends me to the very bottom left corner of the map, or it'll set my position in the middle of the ocean. Therefore I automatically know/assume that this is not world position. Then when it comes to people like the creators of DayZ Lingor, they too have done the same thing, so it really confuses me when I'm attempting to get these kind of numbers. Share this post Link to post Share on other sites
Deadfast 43 Posted September 23, 2012 You posted in the wrong section then, this is a scripting task, not a modelling one. You can walk into the room, getPos your position and then use worldToModel to convert your position to a position relative to the building's center. This is the position that DayZ (guessing here) uses to place the loot. Share this post Link to post Share on other sites
[aps]gnat 28 Posted September 23, 2012 If I grab the world pos, does that mean I will have to grab every single XYZ Co-ordinate of that type of building if I want an item to randomly spawn in a certain room throughout the whole map? Search would be your friend And as Thromp has already described http://community.bistudio.com/wiki/modelToWorld http://community.bistudio.com/wiki/worldToModel Using this you get the model XYZ vs ANY building of that class, then once you have that, you can apply the XYZ to ANY building you find, to get the real world coordinates at that location. Then when it comes to people like the creators of DayZ Lingor, they too have done the same thing, so it really confuses me when I'm attempting to get these kind of numbers. Then I suggest youre better off asking these questions in the DayZ forums (good luck with that! ) Edit: LOL ... Ninja'ed :D Share this post Link to post Share on other sites
colinm9991 20 Posted September 23, 2012 Gnat;2228478']Search would be your friendAnd as Thromp has already described http://community.bistudio.com/wiki/modelToWorld http://community.bistudio.com/wiki/worldToModel Using this you get the model XYZ vs ANY building of that class' date=' then once you have that, you can apply the XYZ to ANY building you find, to get the real world coordinates at that location. Then I suggest youre better off asking these questions in the DayZ forums (good luck with that! ) Edit: LOL ... Ninja'ed :D[/quote'] So by using that I would define the class-name for that building or? This here is what DayZ code uses to define loot positions (without modeltoWorld) At the beginning it defines the store class, as for the lootPos[] = { co-ordinates, I am not sure if they are individual points in each GeneralStore, or if they are co-ordinates of each position of the Stores in the world. class Land_A_GeneralStore_01a: Supermarket { lootPos[] = { { -6.93213,1.0708,-1.20155 }, { -7.2959,-2.68213,-1.20155 }, { -3.41406,-4.39307,-1.20155 }, { -1.28809,-2.57861,-1.20155 }, { 0.903809,-4.35986,-1.20155 }, { 3.1377,-3.40771,-1.20155 }, { 7.53418,-2.69971,-1.20154 }, { 13.9653,-4.50342,-1.20155 }, { 10.2617,0.109863,-1.20155 }, { 10.5869,-3.84375,-1.20155 }, { 7.84521,-0.137207,-1.20154 }, { 3.57471,0.0356445,-1.20154 }, { -0.370605,5.17676,-1.20155 }, { 4.77783,5.57617,-1.20155 }, { 13.0874,4.35645,-1.20155 }, { 12.9932,6.31689,-1.20155 }, { 7.36328,3.00928,-1.20155 }, { 1.93091,2.17236,-1.20154 }, { -3.82715,5.3335,-1.20155 }, { -7.55029,8.54199,-1.20154 }, { -4.42407,8.96631,-1.20154 }, { 3.72705,8.36084,-1.20155 }, { 9.84033,8.3374,-1.20155 }, { -2.90918,1.32031,-1.20155 }}; }; Share this post Link to post Share on other sites
[aps]gnat 28 Posted September 23, 2012 That code alone is not exactly telling the whole story. For example; where did "Supermarket" come from because that is NOT a default BIS class. But Land_A_GeneralStore_01a is ........ so thinking aloud - That code is a CONFIG file - Dean has "copied" every building config - Dean has added his own config parameter called lootpos[] - Dean then re-writes the default buildings config eg "Land_A_GeneralStore_01a" with the new parameter Hence, a script somewhere in the mod; - Searches for buildings on the landscape - If it finds one, it uses isArray(configFile >> ...... to check if it has the lootpos parameter - If it does, it reads the array and randomly spawns some loot. Sooooo ....... To conclude my educated guess; - All default buildings in ArmA2 DO NOT have "loot" parameters by default, Dean added them for DayZ - The XYZ array you see was MANUALLY made by Dean (or his lacky ! ) - The XYZ is very likely to be a model to world off-set for that building class Share this post Link to post Share on other sites