[WIP] Welcome to FANCY WORLD (07/04 V2 Rewrite!)


(Disclosure: Video was recorded from an early version of V1, while it was still a part of MetaDoom. Terrain effects and animdefs warps are not included. A new video is coming soon. In the mean-time, view this tweet thread.)
FANCY WORLD is an experimental GZDoom mod that aims to add audiovisual effects to pre-existing maps without any mapper intervention necessary. The first version of this was released in 2017, and was fairly poorly programmed. This new 2019 release is also poorly programmed, but less so, and has a bunch of new features, like attaching sounds to walls based on their texture.
Please update to GZDoom 4.0.0 before using this. A bug in GZDoom 3.7.2 causes Very Fatal Errors in certain Doom 1 & 2 IWAD maps.
Currently Implemented
- Nukage flats bubble loudly and disconcertingly
- Water, slime and blood flats make ambient liquid sounds
- Lava flats make noise, bubble and emit smoke every now and then
- Hot rocks flats emit smoke and sizzle every now and then
- Outdoor areas have ambient air sounds.
- Certain wall textures from the IWADs, CC4Tex and whatever texture packs ObAddon uses make ambient noises as appropriate - waterfalls, light fixtures, computers etc.
Known Issues
- The code ain't fantastic, and could use a pass by someone who knows WTF they're doing.
- Maps with real long stretches of certain liquid flats (like MAP28 of JPCP's massive lava ocean) can cause a big framerate hit from all the OpenAL HRTF-processing on ambient audio.
- Maps with lots of lines with textures that have sounds attached can have long load times as sound emitters that are too close together are culled.
Future Plans
- Some better way of defining sounds for textures. The current sea of copy-paste is a pain in the ass. Some sort of new lump for applying things all nice-like ala Nashgore or Dmgnums would be a far better method, but I lack the code-fu to write such things myself (never did get the hang of file i/o, sorry)
- Optimisation optimisations. The current method of deleting actors too close together works and results in good framerates, but can result in long load times, likely on account of CountProximity() being slow or something.
- Applying Soundsequences to sectors based on line textures, so that wooden doors actually sound like wooden doors instead of whirring sci-fi pistons.
Downloads
Version 2 (~3mb)