This section will be updated.
When will have more time and if there will be no any video tutorial about it on web i will make it.
INTRODUCTION
LODs are very important in modding. For cars and also for created maps. With LODs you can achieve two important things: performance boost and reflections of custom objects in water or vehicles

Theres two types of LODs:
1. Embedded in ydr models
- give performance boost but dont cast reflections
- got up to 4 levels of detail - high, medium, low and very low
- distance on which levels are switched are defined inside ydr (using 3dsmax or edit of openformat file)

2. External LODs in parenting
- got up to 6 levels of detail (HD, LOD, SLOD1, SLOD2, SLOD3, SLOD4)
- distance on which levels are switched are defined inside ymap
- distance on which levels are switched for reflections are defined inside timecycle metas for each type of weather (using graphic mods like NVR, NVE, VisualV ect change these values and are different than in vanilla)

You can also mix it and use objects with embedded LODs into LOD parenting to achieve reflections for them.


EMBEDDED LODs
How to create embedded LODs for ydr you can see here:
Remember to reduce details for each level of LOD also use textures with lower size (always power of 2). THERES NO POINT CREATING LODS IF YOU WILL NOT REDUCE AMOUNT OF DETAILS FOR EACH LEVEL

For example:
High - 12000 polys texture 1024x1024
Medium - 10000 polys texture 512x512
Low - 6000 polys texture 128x128
Very Low - 2500 polys texture 128x128

above is EXAMPLE not TEMPLATE !

Also remember to paint vertexes for each level of LOD. (for example if you paint red vertexes for high and for other levels of LOD you leave white vertexes then at night your object will glow at distance but near that object - will not glow. So if you want your object to not glow at nigh at any distance you need to paint vertexes for each level of LOD)

Another important thing in embedded LODs is to set correct loddist in ymap, so based on this example:
These values represents on what distance each level of LOD will switch and in game distance is calculated from pivot of that object position to player position in game.
So: when you move in game in distance 0 to 50 from object will be displayed HIGH level of LOD
but when you move from 51 to 100 HIGH will switch to MEDIUM for display
and when you move in distance 101 to 150 MEDIUM will switch to LOW for display
Vlow will display when you reach 151 distance from object and it will be displayed not until 9998 distance but until distance what you will setup in ymap
For example:
If you set in ymap for this object <lodDist value="60.00000000"/> then all levels of LODs will not work. Will be only High 0-50 distance and medium 51-60 when you reach 61 object will dissapear (even when its have LOD distances set in ydr for each levels)
But if you set in ymap <lodDist value="500.00000000"/> all levels of LOD will switch correctly and vlow will be displayed at distances 151-500, when you reach 501 object will dissapear.
LOD PARENTING
This tutorial will be for setting up 5 levels of LODs in LOD parenting.
Also you can download example files here:
>LINK<
Presentation of working above example:
Creating LODs models is similar to embedded ones with two exceptions:
Each level is separate ydr
They dont have setup of LOD distances inside:
Remember to reduce details for each level of LOD also use textures with lower size (always power of 2).
HD>LOD>SLOD1>SLOD2>SLOD3
HD is main object with highest detail, SLOD3 have lowest detail.
Each one is separate ydr.

I suggest to use surfixes in name with level of LODs cuz parenting for now i mostly manual work.
For example house, house_lod, house_slod1 ect.

To set parenting you need:
1. Two ytyps - one for HD archetypes second for LODs
2. Three ymaps HD, LOD, SLOD set in parenting.


3. For each entity you need set up its lodLevel depends of whats object it is - hd, lod, slod1 ect
HD entities have LODTYPES_DEPTH_HD
Entieties without embedded LODs and out of parenting have LODTYPES_DEPTH_ORPHANHD
LOD will LODTYPES_DEPTH_LOD
SLOD1 will LODTYPES_DEPTH_SLOD1
SLOD2 will LODTYPES_DEPTH_SLOD2
SLOD3 will LODTYPES_DEPTH_SLOD3


THIS IS VERY IMPORTANT
Order of entities with specified lodLevel must be exact:

1. In first ymap
- first are entities with <lodLevel>LODTYPES_DEPTH_HD</lodLevel> flag 1572872
-next are entities with <lodLevel>LODTYPES_DEPTH_ORPHANHD</lodLevel>

2. In second ymap
- first are entities with <lodLevel>LODTYPES_DEPTH_SLOD1</lodLevel> flag 1572888
-next are entities with <lodLevel>LODTYPES_DEPTH_LOD</lodLevel> flag 1572864

3. In third ymap:
- first are entities with <lodLevel>LODTYPES_DEPTH_SLOD3</lodLevel> flag 1572864
-next are entities with <lodLevel>LODTYPES_DEPTH_SLOD2</lodLevel> flag 1572864
Every entity got own index in each ymap.
It starts from 0 and increase by 1 for each next entity:
So to set parenting chain for HD object you use indexes.


Heres example:
For entity _test_hd in test_hd ymap need link it to its LOD model.
Its LOD model is second entity in test_lod.ymap so it got index 1
so, for _test_hd parent index will be <parentIndex value="1"/>
<numChildren value="0"/> - its cuz _test_hd dont have any child
 _test_lod got
<parentIndex value="0"/> - linked to its SLOD1 which is in same ymap and its first entity
<numChildren value="1"/> cuz its got linked one child which is _test_hd
_test_slod1 got <parentIndex value="1"/> cuz its linked to its SLOD2 model which is in third ymap at second place
<numChildren value="9"/> cuz its parent to all LOD entities

_test_slod2 got <parentIndex value="0"/> cuz its linked to its SLOD3 model which is in same ymap at first place
<numChildren value="1"/> cuz its parent to SLOD1

_test_slod3 got <parentIndex value="-1"/> cuz its last level of lod and dont have any parent <numChildren value="1"/> cuz its parent to SLOD2

Between all ymaps links looks like:
You can check in Codewalker if parenting is set correctly. You can check how lods are switching also by selecting HD model you can check if every level got its own parent if parent will be 0 that means link in parenting between lods are wrong (broken).
Sometimes you can have issue with reflections only (lods switch corectly but reflections are flickering)
Its caused by wrong flag in #map
Everything depends what you want to achieve, what models you have ect.
If you want only custom props to be reflected you can create only LODTYPES_DEPTH_LOD and set them in parenting (adding LOD level you will receive reflections on cars/water)

Also keep in mind that every graphic mod got its own custom settings for LOD reflections (timecycles for each weather)
MLO LODs
You can add LOD for MLO in lod parenting too. To do it you need:
1. Create LOD model for interior (for example shell with visible entities attatched as one and reduced polys - simply check vanilla examples theres no magic with it)
2. Add its entry into lod ytyp (with other lod archetypes)
3. Create new ymap for lod interior (you can add it to existing ymap with lods but this is quicker at start)
4. Now you need to setup parenting, first between ymaps (ymap with mlo placing and ymap with lod for mlo)

- in your ymap with mlo placement set
<lodLevel>LODTYPES_DEPTH_HD</lodLevel>
<parentIndex value="0"/>
<lodDist value="150.00000000"/> dont set crazy values here like 500 or more its should be based on size of shell


- in your ymap with lod for mlo
<flags value="1572864"/>
position and rotation should be based on mlo values (if position of mlo collision pivot = position of mlos lod pivot)
<lodLevel>LODTYPES_DEPTH_LOD</lodLevel>


loddist for your lod model of mlo should be set based on exterior. For LOD you can set high values.
Or you can set values same as lod for exterior and create more lvls of lods or link mlo lod to exterior slod1 (these how to do it i  will make videos in future when will have more time for it)
Important
In short heres important things:
flags for lods in ytyp - 0 (it can be used also 8192 mostly for grounds or emmisives)
flag in ymap for LOD,SLOD2,SLOD3 - 1572864
flag in ymap for SLOD1 - 1572888
flag in  ymap for HD - 1572872


Order of entities with specified lodLevel must be exact:
1. In first ymap
- first are entities with <lodLevel>LODTYPES_DEPTH_HD</lodLevel>
-next are entities with <lodLevel>LODTYPES_DEPTH_ORPHANHD</lodLevel>
2. In second ymap
- first are entities with <lodLevel>LODTYPES_DEPTH_SLOD1</lodLevel>
-next are entities with <lodLevel>LODTYPES_DEPTH_LOD</lodLevel>
3. In third ymap:
- first are entities with <lodLevel>LODTYPES_DEPTH_SLOD3</lodLevel>
-next are entities with <lodLevel>LODTYPES_DEPTH_SLOD2</lodLevel>

Remember about vertex paint for each LOD level model (to avoid glowing at night set color to red or pink or whatever you need for your object by decreasing green channel)


EMBEDDED LODs IN PARENTING
LODs FOR ANIMATED OBJECTS