openBVE is coded in an a language known as C Sharp or C#, which is what is called an object oriented language. When the program, refers to an "object," it refers to an object within the source code of openBVE, not an openBVE object (yes, this is a confusing explanation). The error was caused with the source code somehow conflicting with the route. You probably had a version of openBVE modified by someone who didn't do enough error checking.