Fantasy author Brandon Sanderson has actually written a few interesting essays on how to design magic systems. Sanderson’s laws are generally summarized as: 1) An author’s ability to solve conflict with magic is DIRECTLY PROPORTIONAL to how well the reader understands said magic. 2) The limitations of a magic system should be greater than the powers of said magic system, and 3) Expand what you already have before you add something new. Thought you’d find this interesting!