After ten years of working with the Source engine, I just can't find this leak!

Maybe you guys can help, but I’m stomped. Here’s the compile logs- Hey, wait a second…

Sorry, just a little Source humor. I thought some of you might appreciate it, and I’m just happy I finally managed to squash a bug that’s been bothering me.

Essentially I had your average water texture, but it was invisible in-game. You could run up and into it, and it would do the physics/underwater effects, but it wouldn’t display the top reflection whatsoever. Firstly of course, I made sure there were no leaks. Not that there was room to have any, I had just changed the revision and tested it all/ran through the compile logs to ensure there were no errors, before I set out on this cave with the water texture. I cordon’d the map off, couldn’t find anything wrong. Changed the skybox texture and compiled without HDR on a whim, no effect. Added another cubemap above it, and set it’s faces specifically to the water texture… Nothing. Spent the past couple days on this, and it bothered me. I searched and searched, and everyone kept stating it was a leak, or suggesting ridiculous ideas. Because yes, putting a giant hallow box around it would ‘somehow’ fix it. [/sarcasm]

Until it hit me, the one brush I didn’t remove the entire time. A func_viscluster. I deleted it and hit compile, already heading to the wiki page to double check, remembering the bug. Sure as hell, it was there.

Oh, Source…

What.

What.

uh

Well, that’s good to know for future reference, I guess.

I avoided that by reading the VDC page before i used visclusters. :v:

That might be my issue with water… But I dont believe there is a viscluster down there

I have done this too many times to count
and it happens with other brush entities too, water is buggy in general in this regard

When you’ve solely been using the engine for so long, you just use entities. I can almost guarantee you that I’ve forgotten that point_clientcommand/point_servercommand’s corrupted your entire VMF file if you put a single space between quotes within your string to execute.