Questions about decompiling

I used to decompile maps a very very long time ago using vmex 0.98 or whatever, It was fairly easy, insert the bsp file, hit decompile, you have the exact map source. I hear people using BSPDecompiler now which apparently “fucks the brushwork”, what changes made it so vmex no longer works the way it used to? I don’t really do anything with maps anymore, but sometimes I still like to go in and find what type of entity something is or how something works, or even edit a small area of the map for my servers.

It’s BSPSource actually. Unless someone made another one I’ve never heard of.

Every version of VMEX and its variants + BSPSource screw up brush work since the beginning of time. They have a good tendency to create small cracks that break the seal of the map, and they don’t properly recreate entities that are destroyed at compile time. I believe areaportals and hints are also completely nonexistent as well.

There’s nothing really wrong with decompiling to see how something works or to look around to get ideas, but you should avoid copying/modifying it for server use. There’s the potential for a bad map (because of all the reasons above), and, what I personally believe is more important, you’re potentially going against the wishes of the original author of the map, who put time and effort into his/her creation, and may not even want it tampered with at all.

There’s nothing they can really do to stop you, so you’ve kind of got to go with your own moral compass on that one. Some people don’t care, some do.

I know for a fact that BSPSource restores areaportals, and I’m pretty sure it does hint/skip brushes as well.
Regarding entities, the only ones it can’t restore are internal entities baked into worldspawn during the compile (func_instance, func_instance_parms, func_instance_origin, func_viscluster, info_no_dynamic_shadow, etc.).

Brushwork fidelity has been improved as of the application’s latest version, which should decrease the probability of errors occurring during recompilation.

use bspsource, everything else is more outdated

Thanks for the information :zoid: