Those are really clear explanations!

Basically, you have to check how many types of pieces are in what you are calculating, determine parities, check permutations and orientations, and do the math.

So megaminx:

Edges: 30

Corners: 20

Corners can be permutated in 20!/2 ways, because you can't switch 2 of them; it must be 3, and orientated in 3^19

Edges can be permutated in 30!/2 ways, for the same reason as corners, and orientated in 2^29

The parity thing can be:

All even => even+even=even, OK

All odd => odd+odd=even, OK

So:

Edges: (30!/2)*2^29

Corners: (20!/2)*3^19

Total: (30!/2)*2^29*(20!*3^19)/2

I hope it is right

Basically, you have to check how many types of pieces are in what you are calculating, determine parities, check permutations and orientations, and do the math.

So megaminx:

Edges: 30

Corners: 20

Corners can be permutated in 20!/2 ways, because you can't switch 2 of them; it must be 3, and orientated in 3^19

Edges can be permutated in 30!/2 ways, for the same reason as corners, and orientated in 2^29

The parity thing can be:

All even => even+even=even, OK

All odd => odd+odd=even, OK

So:

Edges: (30!/2)*2^29

Corners: (20!/2)*3^19

Total: (30!/2)*2^29*(20!*3^19)/2

I hope it is right