Puzz, my apologies for the ambiguity, I wasn't refering to the network code. I was refering to the client/server type executable architecture that id and Valve use, example would be the Quake4.exe and gamex86.dll components.

For those who are not familiar, this is the system in which the main executable houses the server portion and controls such things as rendering, sound system, netcode, physics, etc. The client portion is housed in the gamex86.dll file, which contains the core "game" logic such as objects, weapons, mechanics. There is a defined and documented API which provides a framework that one can essentially write their own game from scratch without ever knowing the proprietary mechanics used in the server component of the system. The code that comprises the core executable is closed and not available to the general public, whereas the code in the dll is fully open and available for download and modification, and are often bundled in full SDKs.

The upshot is that if CA had a system like this, many of the things which we complain about, such as charging mechanics, wall mechanics, unit cohesion, etc, we would be able to fix ourselves. Things such as netcode we wouldn't have access to, but quite a bit we would. Too bad CA has firmly indicated they will not chose to go down this path, hence the "secrecy" that Puzz alluded to.