What am I doing wrong with components?

This
2.png
should look like this
7.png
And it does normally, but if I make the same component formula on a different glyph plus any other components, it moves all of the other components.

This is the base glyph called “numeral”
1.png
, so it is not meant to have any other glyph components, but [numeral]+[1] looks just like it when I move a component.

All of the components should be directly touching the “numeral” component, but you can see they’re scattered about
4.png
Here is an example to show the components moving differently in different glyphs:
3.png
5.png
6.png

It might behave different if a mark also has a base anchor, as it will then becomes a stacking mark.

Can you send use the font project file, so we can look into the issue?

This?
delian frequency.fcp (48.9 KB)

I think it is hard to make it work without anchors.

This tutorial is aimed at creating an Arabic font, but it shows the concept of marks that are attached to a base glyph:
https://www.high-logic.com/font-editor/fontcreator/tutorials/arabic-font-design

The “Component” Type is part of the font specification, but it is of no use. You should only need Base and Mark types.