User:MrFunreal/Sandbox: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
No edit summary
(Replaced content with "{{Metanotice | hex = #ff00ff | id = | textstyle = font-family:monospace; | style = border:1px solid currentcolor; | text = This is a test page for edits I want to do ''eventually'', without having to have a half baked page because i don't have enough time to edit it on one sitting. Or whatever possible reason i might have.<br>Assume the data on this page to not be fully fleshed out for as long as it remains here.<br>MrFunreal (User talk:MrFunrea...")
Tag: Replaced
 
(2 intermediate revisions by the same user not shown)
Line 7: Line 7:
}}
}}
{{clr}}
{{clr}}
==List of L4D2 Detail sprites==
{{l4d2|4}} has three different sources of where it got its nature textures and their detail sprites from. Some from {{css|1}}, {{l4d|1}}, and some made new for {{l4d2|1}}.<br>
Unfortunately, these are sometimes mutually exclusive, by virtue of needing to use a different "<code>Detail Material File</code>" setting, which can be found when heading to "Map Properties" in {{hammer|4}}.<br>
Luckily this can be avoided by taking a few extra steps, as described  in the "Making materials compatible" section below.


This page helps to remove the confusion as to what materials are compatible with each other, by listing them by what "<code>Detail Material File</code>" they must use.<br>
- All caught up. Previous edits been turned into standalone page edits. -
Should you want multiple materials that are not compatible because of different "<code>Detail Material File</code>" requirements, you will need to create a dupe of the vmt that you want to use and swap its %Detailtype to one using the same "Detail Material".
 
{{warning|%Detailtype "alleydirt_leaves" was never ported from L4D1 to L4D2. It's only used on "nature/blend_alleydirt_leaves", from Crash Course.<br>%Detailtype "urban_overgrown_docks" does not exist in neither L4D1 nor L4D2.<br>These two are contained in this [https://github.com/Mrfunreal/L4D2-FGD-Edits Github Repo], amongst many other updates to hammers fgd.}}
 
==Separated by Detail Material==
These four lists show all materials in L4D2 that do make use of %Detailtype in their vmt files.<br>
Refer to these when deciding what materials to use, in order to make sure you only use the ones with the identical <code>Detail Material File</code> setting in Hammer.
===DetailSprites===
'''BlendLeavesTrainyardDirtB.vmt''' is the only material that uses detail/detailsprites.
 
Which means your map can not use any other materials with sprites on it, as none other share this Detail Material.<br>
But you may easily edit this vmt to use a different detailtype. Whatever detail type this vmt has when compiling the map will be used, no matter of the vmt on other machines are not the same.
{{note|While there are more %Detailtype that use detail/detailsprites.vmt, no other ones are being used.}}
 
===DetailSprites_Overgrown===
These blend materials all use "details/DetailSprites_Overgrown.vmt". These can only be used with each other, or any blend materials that do not have any sprites to begin with.
{{Table
|
{{tr|{{th|Material Name }} {{th|%Detailtype used }} }}
{{tr|{{td|blendswampmudroots01_lowdensity }} {{td|urban_overgrown_lowdensity      }} }}
{{tr|{{td|blend_blacktop_07 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_blacktop_08 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_blacktop_09 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_brick_brick01 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_brick_brick02 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_brick_dirt_01 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_brick_grass_01 }} {{td|urban_dry_overgrown            }} }}
{{tr|{{td|blend_dirt_cane }} {{td|urban_dry_overgrown            }} }}
{{tr|{{td|blend_grass_concrete_01 }} {{td|urban_dry_overgrown            }} }}
{{tr|{{td|blend_grass_grass_02 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_grass_grass_02_lowdensity }} {{td|urban_grass_overgrown_lowdensity}} }}
{{tr|{{td|blend_grass_gravel_01 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_grass_gravel_lowdensity }} {{td|urban_grass_overgrown_lowdensity}} }}
{{tr|{{td|blend_grass_mud_01 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_milltowngrass01wet }} {{td|urban_dry_overgrown            }} }}
{{tr|{{td|blend_rubble_03 }} {{td|urban_grass_overgrown          }} }}
{{tr|{{td|blend_urbandirtlawn01 }} {{td|urban_dry_overgrown            }} }}
{{tr|{{td|blend_urbandirtlawn01wet }} {{td|urban_dry_overgrown            }} }}
{{tr|{{td|blend_urbandirtlawn01wet }} {{td|urban_dry_overgrown            }} }}
{{tr|{{td|blendswampmudleaves02b }} {{td|urban_overgrown                }} }}
{{tr|{{td|blendswampmudroots01 }} {{td|urban_overgrown                }} }}
{{tr|{{td|blendswamprootleaves01 }} {{td|urban_overgrown                }} }}
{{tr|{{td|blendswamprootleaves01_lowdensity }} {{td|urban_overgrown_lowdensity      }} }}
}}
===RuralDetailSprites===
These blend materials all use "details/RuralDetailSprites.vmt". These can only be used with each other, or any blend materials that do not have any sprites to begin with.
 
{{Table
|
{{tr|{{th|Material Name }} {{th|%Detailtype used }} }}
{{tr|{{td|blend_alleydirt_leaves* }} {{td|alleydirt_leaves }} }}
{{tr|{{td|blend_docks_grass_dirt* }} {{td|urban_overgrown_docks }} }}
{{tr|{{td|blend_leaves_dirt }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blend_leaves_dirt_nomod }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blend_leaves_forest }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blenddirt01grass_ruddy_small }} {{td|rural_dkdirt_grass }} }}
{{tr|{{td|blenddirtlawn01 }} {{td|rural_dkdirt_grass_smalltown}} }}
{{tr|{{td|blenddirtleaves }} {{td|rural_dirt_leaves }} }}
{{tr|{{td|blenddirtleaves02 }} {{td|rural_dirt_leaves }} }}
{{tr|{{td|blenddirtleaves03 }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blenddirtleaves03_smalltown }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blenddirtleaves03_smalltown2 }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blenddirtleaves04 }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blenddirtleaves_docks* }} {{td|urban_overgrown_docks }} }}
{{tr|{{td|blenddrkdirtgrass_ruddy }} {{td|rural_dkdirt_grass_trainyard}} }}
{{tr|{{td|blenddrygrassdirt }} {{td|rural_dirt_road }} }}
{{tr|{{td|blendleavestrainyarddirt }} {{td|rural_trainyarddirt_leaves }} }}
{{tr|{{td|blendroadleaves01 }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blendroadleaves01b }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|blendrootleaves01 }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|grasslawn_dry01 }} {{td|rural_dkdirt_grass }} }}
{{tr|{{td|grasslawn_patchy01_detailprop }} {{td|rural_dirt_leaves02 }} }}
{{tr|{{td|tiblendrockleaves1 }} {{td|rural_dirt_leaves }} }}
{{tr|{{td|tiblendrockstone1 }} {{td|rural_dirt_leaves }} }}
{{tr|{{td|tiblendrockstone2 }} {{td|rural_dirt_leaves }} }}
{{tr|{{td|tiblendrockstone3 }} {{td|rural_dirt_leaves }} }}
{{tr|{{td|tiblendrockstone4 }} {{td|rural_dirt_leaves }} }}
}}
{{note|* These materials only exist in the provided Github Repo. As they originally were broken or didn't exist.}}
===No Detail Material===
{{ExpandBox|title=Materials without Details/Sprites|
* blend_alley_conc_dirt
* blend_blacktop_01
* blend_blacktop_01_cheap
* blend_blacktop_01_wet
* blend_blacktop_02
* blend_blacktop_02wet
* blend_blacktop_03
* blend_blacktop_03wet
* blend_blacktop_03wet_dirt
* blend_blacktop_04
* blend_blacktop_05
* blend_blacktop_06
* blend_blacktop_06
* blend_blacktop_brick_01
* blend_blacktop_brick_01b
* blend_blacktop_cobb_01
* blend_blacktop_cobb_01dry
* blend_blacktop_cobb_02
* blend_blacktop_cobb_02_dry
* blend_cliff_leaves
* blend_concrete_01
* blend_dirt_concrete_01
* blend_dirt_concrete_01wet
* blend_dirt_concrete_02
* blend_dirt_concrete_03
* blend_dirt_concrete_03wet
* blend_dirt_concrete_04
* blend_dirt_concrete_06
* blend_dirt_ext_01
* blend_dirt_ext_03
* blend_dirt_mud_01
* blend_dirtrubble01
* blend_docks_dirt_gravel
* blend_docks_grass_pavement
* blend_donner_rubble1_dirtfloor013a
* blend_grass_black_01
* blend_grass_grass_01
* blend_grass_grass_02_cheap
* blend_grass_gravel_01_cheap
* blend_grasslawn_dirt_nosprites
* blend_leaves_dirt_nodetail
* blend_leaves_dirt_nodetail_mod
* blend_leaves_estuary
* blend_logs_moss
* blend_lots_conc_dirt
* blend_lots_conc_grass
* blend_lots_conc_pavement
* blend_milltowngrass02wet
* blend_milltowngrass03wet
* blend_milltowngrass04wet
* blend_river_dirt02
* blend_roof_01
* blend_rubble_01
* blend_rubble_02
* blend_sand03_cliff
* blend_sidewalk02
* blend_sidewalk_01
* blend_sidewalk_01_wet
* blend_sidewalk_01dry
* blend_sidewalk_dirt
* blend_sidewalk_grass
* blend_urbandirtlawn01_cheap
* blendbeachleaves
* blendconcrete38a12a_noshadow
* blendconcrete_dirt
* blenddirtcorn01
* blenddirtdirt001a
* blenddirtleaves03_burned
* blenddirtleaves03_nodetail
* blenddirtparkinglot01
* blendgrassstonepath
* blendgraveldirt001a
* blendmudleaves
* blendpavementleaves
* blendrockcavewall
* blendrockleaves
* blendrockleaves02
* blendrockleaves03
* blendrockwaterleaves
* blendrockwaterrock
* blendswamprootleaves01_cheap
* grassdirt_blend
* milground011_rock2b
* ti_nospr_blendrockstone1
* ti_nospr_blendrockstone2
* ti_nospr_blendrockstone3
* ti_nospr_blendrockstone4
* tiblendwaterrockstone
* zblendwetrockurock
}}
==Existing %detailtypes==
When creating custom materials you must make sure all materials make use of the same "Detail Material" setting in Hammer {{hammer|4}}.<br>
This list shows what %detailtypes exist and which <code>Detail Material File</code> they use. Pick any of these for your custom materials.
 
{{Table
|
{{tr|{{th|%detailtype }} {{th|Detail Material File }} }}
{{tr|{{td|compound_gravelgrass }} {{td|detail/detailsprites }} }}
{{tr|{{td|desert_2weeds1shrub_01 }} {{td|detail/detailsprites }} }}
{{tr|{{td|militia_darkleaves_grass }} {{td|detail/detailsprites }} }}
{{tr|{{td|militia_leaves_darkleaves }} {{td|detail/detailsprites }} }}
{{tr|{{td|militia_leaves_grass }} {{td|detail/detailsprites }} }}
{{tr|{{td|militia_leaves_sand }} {{td|detail/detailsprites }} }}
{{tr|{{td|militia_rock_grass }} {{td|detail/detailsprites }} }}
{{tr|{{td|militia_sand_grass }} {{td|detail/detailsprites }} }}
{{tr|{{td|prodgrasses }} {{td|detail/detailsprites }} }}
{{tr|{{td|rural_cornfield_leaves }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_dirt_leaves }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_dirt_leaves02 }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_dirt_leaves02_lowdensity }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_dirt_road }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_dkdirt_grass }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_dkdirt_grass_smalltown }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_dkdirt_grass_trainyard }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_grass_leaves }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_gravel_weeds01 }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|rural_trainyarddirt_leaves }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|swamp_ground01 }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|urban_dirt_leaves02 }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|urban_dry_overgrown }} {{td|detail/detailsprites_overgrown }} }}
{{tr|{{td|urban_grass_overgrown }} {{td|detail/detailsprites_overgrown }} }}
{{tr|{{td|urban_grass_overgrown_lowdensity }} {{td|detail/detailsprites_overgrown }} }}
{{tr|{{td|urban_overgrown }} {{td|detail/detailsprites_overgrown }} }}
{{tr|{{td|urban_overgrown_lowdensity }} {{td|detail/detailsprites_overgrown }} }}
{{tr|{{td|alleydirt_leaves }} {{td|detail/ruraldetailsprites }} }}
{{tr|{{td|urban_overgrown_docks }} {{td|detail/ruraldetailsprites }} }}
}}
 
==Making materials compatible==
If you do want to use two or more materials that are usually mutually exclusive, you need to edit them to use any %Detailtype from the table above that use the same <code>Detail Material File</code>.
 
You can achieve this ''without'' needing to ship a custom material with your map.
Simply take the file out of your game, edit the %Detailtype value, and then pack it with the original file name and pack into a vpk named pak01_dir.vpk.<br>
Once that is done, create a folder in your L4D2 directory, next to the DLC folders, named "Detailtype_edits" that contains this pak01_dir.vpk.<br>
Next, open the gameinfo.txt in <code>steamapps\common\Left 4 Dead 2\left4dead2</code> and scroll down until you see "Game update". Above that line, add "Game Detailtype_edits".<br>
This will successfully mount your modified materials with different %Detailtype value.
 
As long as you only change the %Detailtype value, the game will read that date during compile and use that modified %Detailtype value in every subsequent compile.<br>
The genius of this approach is that the maps remember what %Detailtype value had been used when the map was compiled.<br>
This means that the custom %Detailtype value is kept and you do not need to ship this modified material with your map.
 
 
[[Category:Left 4 Dead 2]]
[[Category:Level Design]]
[[Category:Tutorials]]

Latest revision as of 11:33, 30 June 2025

This is a test page for edits I want to do eventually, without having to have a half baked page because i don't have enough time to edit it on one sitting. Or whatever possible reason i might have.
Assume the data on this page to not be fully fleshed out for as long as it remains here.
MrFunreal (talk)

- All caught up. Previous edits been turned into standalone page edits. -