DeP3d Version 1.xx by Mikero
 

see readme general and fixes
Dep3d is not intended to reverse engineer odol p3d's back to mlods



Without options, DeP3d  simply inspects any p3d for errors.

With options, you can:

output is generally produced on screen


Syntax:

DeP3d [-options...]   Anyfile[.p3d] or AnyFolder or  Any List or "Comma,Separated,list"
 

options: (CaSE InsenSitivE)

none  list type of p3d(s) encountered and analyse for errors
-P don't pause
-W Warnings are errors (for trailing spaces in named selections)
-S[nn] list named selections (see below)
-Es folder | nameof[.p3d] | <file.list> : extract skeleton(s) to <model.cfgs>
-Ex list skeleton name (if any) to screen
-Em folder | nameof[.p3d] | <file.list> : extract rvmat(s) to screen
-nn no longer supported
-FL[nn] list files (see below)
+FX fix files (see below)
-Gx edit lod properties (see below)
-O Origami
-LB list boundingbox

 


Generic Scanning options (all dos tools operate this way, not just dep3d)

It is useful to quickly scan a folder, series of folders, or a list of p3d's looking for changes to the format, or broken p3d's

one such example is introduction of a physx lod.

To that end, and in keeping with other tools, dep3d  accepts scan syntax on the command line

folders are recursively scanned inspecting each p3d it encounters

if some.file is NOT a .p3d it is taken to be a text scan list

This list file can be a permanently held test suite of 'favorite' p3d's and this list can be generated from something as simple as

dir/b somefolder >some.lst

the net effect of a "comma,separated,list" is the same as specifying a file.list. Quotes are ONLY required when spaces exist in the file names or between commas. In both cases (file.list or comma separated), these in turn can be mixtures of specific files, folders and more scan lists.


 

 


LIST FILES

-FL[n]

by default, returns a sorted list of lowercase filenames referenced in the p3d. This normally contains mixtures of proxies, paa, and rvmats

[n] is an optional number in decimal or hex. by default, is zero

n translates to a bit field. The combined values are as follows:

1:    do not sort.
2:    do not convert to lowercase


(it makes no sense to do a non lowercase sort)

FIX FILES

dep3d will


ORIGAMI

dep3d will convert ODOL (binarised) to MLOD (unbinarised) origami (paper) models.

They have no use whatsoever to the thief but will prove useful/instructive for everyone else.

The purpose of providing this feature is to allow authors the create either encrypted, or obfuscated pbos AND supply origami for map makers so that those models can also be used in maps.

 


PROPERTIES

all credit to kju for remorseless testing of 'undocumented features' in this section

you can list, change, add or delete properties with the following syntax

-GL[nn] [-lod=whatever ] List lod(s)    
  [nn] is an optional number in decimal or hex. By default, is zero    
  nn translates to a bit field. The combined values are as follows:

1:    do not sort.
2:    do not convert to lowercase
4:    do not list lods which don't have properties

 

   
-GLname   List all lods with this named property    
       
-GDname [-lod=whatever] delete property    
-GSname=value  [-lod=whatever] set/add/change    
-GSname=value change only, do not add    
       

regardless of how a geolod is determined. (explicitly or implicitly), a p3d containing a single lod, IS the geolod regardless of it's resolution.

dammage and damage are born equal. dammage is always replaced/removed from the lod

geolod class,map,and damage= alter the mapinfo header too

examples:

     
listing -GL -lod=2 list all properties in the 2nd lod
  -GL -lod=7.0e15 list all properties in the firegeometry lod
  -GL -lod=Memory list all properties in the Memory lod
  -GL list all properties all lods
  -GL4 list only lods that have properties
  -GLname list all properties of lods that have this property
delete -GDname delete 'name' from all lods
  -GDname -lod=1000.0 delete 'name' from the viewgunner lod
     
set -GSname=value -lod=Geometry add or change value in the geolod
  -GSname=value -lod=1.0e15         change or add property in the memory lod
  -GSname=value change value in  all lods that have it

LOD RESOLUTIONS

-lod=whatever can be a physical lod number OR a lod's resolution OR the 'accepted' name of the lod itself as below (case insensitive)

lod's accepted name or, lod's resolution
All all lods
ViewGunner 1000.0
ViewPilot 1100.0
ViewCargo 1200.0
ViewCargoGeom 1202.0
shadowvolumes 10000.0 ...
edits 20000.0 ...
Geometry 1.0e13
Bouyancy 2.0e13
Physx(old) 3.0e13
Physx 4.0e13
Memory 1.0e15
LandContact 2.0e15
Roadway 3.0e15
Paths 4.0e15
Hitpoints 5.0e15
ViewGeometry 6.0e15
FireGeometry 7.0e15
ViewCargoGeometry 8.0e15
ViewCargoFireGeometry 9.0e15
ViewCommander 1.0e16
ViewCommanderGeometry 1.1e16
ViewCommanderFireGeometry 1.2e16
ViewPilotGeometry 1.3e16
ViewPilotFireGeometry 1.4e16
ViewGunnerGeometry 1.5e16
ViewGunnerFireGeometry 1.6e16
SubParts 1.7e16
ShadowVolumeViewCargo 1.8e16
ShadowVolumeViewPilot 1.9e16
ShadowVolumeViewGunner 2.0e16
Wreck 2.1e16

 


NAMED SELECTIONS

(referred to as 'sections' in a model.cfg)

dep3d -S[n]

the default is to list all lods in the p3d whether they have named selections or not

the default is to include proxies as a named selection (which they are)

the default is to sort these selections

the default is to lowercase everything for sorting purposes

[n] is optional n, by default, is zero

n is a decimal number which translates to a bit field. The combined values are as follows:

1:    do not sort.
2:    do not convert to lowercase

4:    do not list lods which have no namedselections

8:    do not list proxies
16:   list only a summary of all lods, not each lod