Mesh Not Responding Correctly to Rigify Rig

Hi y’all! I’m trying to rig this character model for my first game in unreal, but I’m having a lot of trouble getting it to follow the rig correctly. I’ve already gone through and checked all the classic mistakes (not applying scale, fixing weight paint issues, bone roll, recalculating normals, origin points, etc.), but I can’t figure this out. This is my first time rigging a character on my own, and I’d love some help! Here’s the drive link to the .blend file:

You have a lot going on. When you set your model up to rig you first need to parent everything you can which should make it easier to rig. For example you have a mesh called hat clips different from your hat. If it isn’t going to move on its own, I would just consolidate it. Second make sure you don’t have competing modifiers like shrinkwrap on your skull cap. They are fighting each other. Third, your origins are all over the place and that will cause you problems. If you still have your curves impacting your mesh make sure you don’t.

So Let’s start say with the just the head. If you like that and the way it moves then I am assuming that you want some parts to move with it. Say your hat (which you should simplify because it doesn’t need to have that much mesh(but, that is another issue)) OK. Unparent (alt P) and keep transforms and then apply all transforms(control A). Your origin is now at 0,0,0. Select your head. Cursor to selected and that will put your cursor back on the head origin. Now select your hat and put your origin to that cursor. Your hat and head now have the same origin. Parent your hat to the armature with armature deform and keep transform and wiggle your head. The hat should now follow.

Follow the same general procedure with the other parts and you should have it. There are other issue such as a real heavy mesh but this will get you going until you run into those problems.

An alternative to vertex parenting may be bone parenting, but I’m not real sure how UE handles that.