Inform6 + Z3 Object Class Limit

Is there a hard limit on the number of classes an object may belong to when compiling to .Z3 format? I have an object which is a member of 5 classes and while the compiler doesn’t complain, the object can no longer be TAKEN or PURLOINED as apparently the object doesn’t exist. It’s listed in the room contents so it does exist. If I reduce the number or classes to 4 or build as .Z5 (neither of which is ideal), the issue goes away. My guess is that the NAME property is getting trashed by the existence of the 5th class.

Jeremy

Yes, the list of classes has to be stored in object property 2. In v3 a property list can contain up to four words (as compared to 32 in v4+). So five classes will certainly break something, although I’m not sure exactly what.

The compiler should catch this as an error, but I guess it doesn’t.

2 Likes

Thank you, that makes sense. The fact that classes are stored in a property escaped me. It was easy enough to code round at the expense of a little code duplication.

1 Like