by Spike » Sun Apr 16, 2017 3:08 am
as mentioned, I moved ODE to a plugin a while back. the primary reason was because I was working on bullet at the time (which I still never gave support for joints), and plugins can be unloaded. It existed as a built-in plugin for a while (that is, treated as a plugin despite not being a separate file), but eventually I kicked it out of the engine and into its own DLL, which allows it to statically link against the ODE library thereby avoiding the need to find a usable+compatible version of ODE.
recently I wanted to rework a few things like not loading random dlls simply because they were found in the quake directory with a suitable filename (some other engines might still have bugs that allow creating such files, even outside of any correct gamedir), so the plug_loaddefault 1 setting now loads only plugins that were selected via the menu_downloads menu. Set it to 2 to restore the previous behaviour.
plug_unload ode will take effect immediately by disabling the rigid body physics stuff, but plug_load ode will only affect physics after a map restart (savegame+loadgame should also count here) although any new cvars should be created promptly if you didn't already set them somehow anyway.
you can tell which plugins are loaded with the plug_list command
the physics_ode_enable cvar was redundant when you can just enable/disable the plugin itself instead (and the engine couldn't enforce its 0 value without lots of hacks) (and of course checking for physics_ode_enable if you're using bullet was weird).
I think I just saw a copypaste bug (from r_meshpitch support) that will probably prevent the ode plugin from working properly. it should still give some results, just not the ones you want.
.