On 05-Oct-01 Andreas Vogl wrote: > Well, I know: Probably most of you will now think that's crazy > because it's way too much work. But if it is - Then maybe we should > just stick to what we've got and try to make the best out of it? Personally.. all I want is a Class/Subclass *field* in the objects that I can use to categorize them. I don't fully comprehend what Mark really wants, or what the benefit for it is, but I'm just trying to throw this out and get a feel for what people want with it. I guess my point is this. Mark's idea seems logical, from a structure point of view, your idea does as well, but involves c++, which I have an inherent hatred for ;) What I don't really see, is what the payoff is for either. Basically, all I want to be able to do is classify items better.. so.. my vision is this: Item Type: Food, Furniture, Ring, Amulet, Armor, Weapon Class: Sword, Axe, Dagger, polearm, couch, chair, fountain, etc Subclass: slash/bash/stab Flags: Drinkable, two-handed, throwable, sittable(?), giant-only, dwarf-only, etc I don't need a whole inheratance structure.. all I want to do is be able to specify with more precision what an object is. For example, if a fountain was marked: Furniture, fountain, drinkable. Then it wouldn't be difficult to make drinkable fountains, or reusable chests. I'll admit, both your and Mark's idea might make the code a bit easier to read, but looks like it will be a significant rewrite of the engine. I think new fields could be added without much pain, and made optional, as the archetypes were caught up. My way isn't ideal, but gets me the functionality I want, without rewriting half the engine. (rototill usually means more bugs too) --- Tim Rightnour < root at garbled.net > NetBSD: Free multi-architecture OS http://www.netbsd.org/ NetBSD supported hardware database: http://mail-index.netbsd.org/cgi-bin/hw.cgi