User:SirYodaJedi/Porting Quake DM maps to Deathmatch Classic
This is a draft user page. It is a work in progress open to editing by anyone.
Remember to check for any notes left by the tagger at this article's talk page.
Remember to check for any notes left by the tagger at this article's talk page.
This page covers some oddities about porting Quake I deathmatch maps to Deathmatch Classic. Maps can mostly ported directly with minimal edits, but there are some quirks to work out
Contents
Uncompiled map file
Todo: Axial Projection → Valve220
Textures
Todo: porting from WAD2 to WAD3; renaming tool textures
Liquids
Todo:
- renaming * to !
- setting semi-accurate fog color and density
- WinQuake tints the palette relative to rgb(130,80,50), but only does it half way; perhaps doubling the luma by setting the fog color to rgb(212,171,145) would be more accurate?
Skies
Todo: method using two scrolling func_illusionary entities (via rendercolor)
Lighting
Todo: * light (+ _color) to _light
- model/sprite based lights (the flame models do exist, but they need to be played back at 1/3 speed)
Sounds
Todo: simulating visleaf-based ambient sounds for water and sky
Ambient sounds
The following entities emit ambient sounds, which should be replicated with ambient_generic:
Entity | WAV file (relative to /id1/sound/ ) |
Volume |
---|---|---|
ambient_suck_wind | ambience/suck1.wav |
10 |
ambient_drone | ambience/drone6.wav |
5 |
ambient_fluoro_buzz | ambience/buzz1.wav |
10 |
ambient_drip | ambience/drip1.wav |
5 |
ambient_comp_hum | ambience/comp1.wav |
10 |
ambient_thunder | ambience/thunder1.wav |
5 |
ambient_light_buzz | ambience/fl_hum1.wav |
5 |
ambient_swamp1 | ambience/swamp1.wav |
5 |
ambient_swamp2 | ambience/swamp2.wav |
5 |
FireAmbient | ambience/fire1.wav |
5 |
light_fluoro | ambience/fl_hum1.wav |
5 |
light_fluorospark | ambience/buzz1.wav |
5 |
light_torch_small_walltorch | ambience/fire1.wav |
5 |
light_flame_large_yellow | ambience/fire1.wav |
5 |
light_flame_small_yellow | ambience/fire1.wav |
5 |
light_flame_small_white | ambience/fire1.wav |
5 |
trigger_teleport (if spawnflag 2 not set) | ambience/hum1.wav |
5 |
Other entities
info_notnull
- info_targetmisc_explobox
ormisc_explobox2
- using the source MAPs for b_explob or b_exbox2 (respectively), create a func_breakable with health of 20 and an explosion magnitude of 160.func_dm_only
- trigger_teleport (doesn't actually exist, but this is what it allegedly would be)func_bossgate
- func_wall (disappears when all episodes are complete, which in deathmatch is never)func_illusionary
- func_detail, with at least one face of each brush textured with CONTENTEMPTY (split brushes if necessary. Func_illusionary in Quake doesn't count as an edict after initially being spawned, but this behavior was removed in GoldSrc because they couldn't get it to work with the revamped save system.)trigger_secret
- trigger_multiple
Entities to remove outright
If any entities have the "not in deathmatch" spawnflag set, then they can be removed.
monster_*
- monsters don't appear in deathmatchfunc_episodegate
- appears when an episode is complete, which in deathmatch is nevertrigger_onlyregistered
- Shows a message if pop.lmp fails to validate (unregistered). This feature doesn't exist in GoldSrc.