View Single Post
Re: the new event interface...
Old
  (#4)
botman
Super Moderator
 
Status: Offline
Posts: 280
Join Date: Jan 2004
Location: Plano, TX
Default Re: the new event interface... - 23-02-2005

I think the engine maintains backward compatibility by keeping EACH version of a class separate. (i.e. the engine keeps a separate copy of version 001, and a separate copy of version 002, and a separate copy of version 003, etc). So that when you ask for version 002, you get EXACTLY that class definition as it was defined at the time that SDK was released. For newer MODs (using a newer SDK) that ask for version 003, they get EXACTLY what the class definition was in the SDK at the time that interface version was released in the SDK (and these class definitions can be completely different from each other).

The engine basically keeps an archive of all the current and previous class definitions and has code that supports each one, so that no matter which interface version you ask for, the engine gives you exactly that one (without any assumed knowledge of what previous versions of that interface looked like). So you shouldn't assume that version C is version B with a little bit more added at the end and version B is version A with a little bit more added at the end. It could be that they created version A, then went "Oh, shit!", we can do this an entirely different way, let's change everything in version B. Then when version C comes out they go, "Oh, heck!", we could have used version A with some minor changes, lets change the class definition again to go back to version A with a couple of minor changes, etc. Each class definition can be completely different than the previous version. It makes the engine a lot bigger and a lot more complicated, but it completely prevents the newer version of the engine from breaking older (not updated) MODs.

botman

Last edited by botman; 23-02-2005 at 15:23..
  
Reply With Quote