Hiveworkshop sanity checker 中的附着点检查
attachment points in sanity checker
Hiveworkshop 的 sanity checker 更新后已不区分大小写检查模型缺失 origin 附着点,并停止对相似关键词冲突报警(ref 除外)。模型验证新增从标签检查功能,但 Mount Ref 仍被校验器误判非标准;社区还提议增加 Worker 与 Morphs 标签校验及粒子发射器纹理错误报警。
1. I think sanity test must be made case-insensitive for names of attachment points.
2. Also to check an attachment point's name with ".StartsWith($"{name} ")" or even .Contains($" {name}"), because many models in the section have attachment
points of type "Head - Ref" (or another with dash) which works in-game but the sanity test flags it as warning.
If you have, for example, "Origin Head Overhead Chest Ref" the game can still use it.
3. because of that, check if two or more attachment points contain the same keywords (not exactly the same name) because that creates conflict
Attachment point names are conventions rather than strict requirements.. So if an attachment point contains a particular word, a trigger or the the game can attach to it,.
So I suggest to:
1. remove the warning "X is not a standard name for attachment"
and
2. make attachment name lowercase before checking if it's origin, for the warning "there is no origin attachment point"
Example pseudo func
C#:
bool hasString(string Nodename, string lookFor){
string lowerName = Nodename.ToLower();
string lowerPart = lookFor.ToLower();
if (lowerName == lowerPart) return true;
if (lowerName.startsWith($"{lowerPart} ") return true;
if (lowerName.Contains($" {lowerPart}") return true;
return false;
}Last edited: Jul 18, 2026
Hello stan, thanks for bringing this to our attention. Is this the case for both sanity checkers or only the new built-in one?
Hello stan, thanks for bringing this to our attention. Is this the case for both sanity checkers or only the new built-in one?
the built-in, the one that dispays errors on the card of a model in the bundle
Hello stan, thanks for bringing this to our attention. Is this the case for both sanity checkers or only the new built-in one?
the built-in, the one that dispays errors on the card of a model in the bundle
actually the origin ref thing exists in proper sanity check too, not just built-in one
I've noticed this too, I even added an option to capitalize refs (although only the Origin one IIRC) to Model Optimizer. The dashes (e.g. Origin - Ref) I also noticed recently, but that one I only saw in the built-in one, never noticed it in the old separate one.
I think this was updated. Did you see the change yet and does it work better? This is for the embedded sanity status and not the GhostWolf one.
I think this was updated. Did you see the change yet and does it work better? This is for the embedded sanity status and not the GhostWolf one.
OK, I tested the embedded sanity check (on this) - now it does check for missing origin attahcment point with case-insensitive , and does not compare attachment names for similar keywords for conflict (bad) ("ref" is exception),;
one more thing: change the the warning "X is not a standard name for attachment" to "X is not a standard keyword for attachment" (typical are: head, overhead, chest, origin, foot, hand, left, right, weapon, mount, rallypoint, sprite, BirthLink, first, second, third, fourth)
EDIT: This validation for attachment point names is a bit complex, I asked chatGPT to write example: Check out this chat
Last edited: Jul 23, 2026
Check now ![]()
Check now
![]()
Heh, I see that the Model validation has now "Checked as... from tags"
Is that Tillinghast's idea? Not bad.
Just a note, you are right that these att. tags can conflict, if we attach different effects to head and origin, both can appear in one position.

Hmm, I think 'Mount Ref' is used for transport but the validator thinks is non-standard
Just a note, you are right that these att. tags can conflict, if we attach different effects to head and origin, both can appear in one position.
Is this something that could be automated, e.g. by simply splitting it into two tags origin, ref and head ref? Or how would you fix that?
Is this something that could be automated, e.g. by simply splitting it into two tags origin, ref and head ref? Or how would you fix that?
programatically splitting an attachment point based on tags in it? ofc you can
Last edited: Sep 6, 2026
you programatically splitting an attachment point based on tags in it? ofc you can
Cool, wasn't sure if that was the proper way to fix it.
@Ralle
Idea for the models section and the model checker.
Since the model checker analyzyes a model based on its checked tags:
add available tags "Worker" and "Morphs" when uploading a model
then in the model checker:
- worker requires variations of all sequences with suffix " lumber" and " gold", and sequences "stand work", "stand work gold" and "stand work lumber"
- "Morphs" requires the model to have variations of all sequences with suffix " alternate" and also sequences "morph" and "morph alternate"
add red error message to model validation "particle emitter 2 must not use replaceAbleID as texture" because it causes the game to crash
Example: Jade Guardian
来源:Hiveworkshop · hiveworkshop.com