Déjà est-ce que tu peux commencer par souhaiter le bonjour ? Ça serait mieux non, à un moment j'ai hésité à lire et à répondre à ton message.
Concernant ton problème, cela implique les KindOf comme tu l'a démontré, personnellement je serai toi j'éviterai de toucher à ça. Les KindOf sont des propriétés immatérielles que l'on attribuent aux objets de tout type, gérées par le fichier maître (système) du jeu, et offrant aux objets des possibilités d'actions.
Exemple : Si tu mets HERO, ton objet au quelconque nom sera considéré comme un héros pour le jeu et sera pour lui logique qu'il ait une vie plus grande que les autres objets, plus de pouvoirs, etc...
Exemple : Si tu mets WALK_ON_TOP, ton objet au quelconque nom aura la capacité à prendre en charge d'autres objets sur son dos, en d'autres termes, tes objets auront la capacité de marcher cet objet (qui est généralement un mur). Attention ! Cette propriété seule ne suffit pas, c'est plus compliqué que ça ! Pour marcher sur un mur, un plan 3D incrusté dans ton modèle 3D munies de fonctions est requis en plus de cette propriété !
Exemple : Si tu mets SHIP, ton objet au quelconque nom sera considéré comme un bateau par exemple et aura donc la capacité à flotter sur les étendues d'eau. Attention ! Cette propriété seule ne suffit pas, c'est plus compliqué que ça ! Pour diriger un objet quelconque sur une étendue d'eau, un nouveau jeu de locomotion comportant la propriété WATER est requis.
Etc...
A bientôt...