Recently, I altered the design into a dinosaur vesion.:
These can be really simple to make. Start with a hat pattern that you're comfortable with. It can be knit, crochet, felt, or fabric, just as long as it fits well. If you don't want to bother making a hat, you can also use a purchased one.
I made the cat hat using stockinette stitch with a garter border.
For the dino hat, I used single ribbing with a garter border. I don't recommend using ribbing, since I had a really hard time decreasing it smoothly (i.e. it's not smooth at all), even after trying several methods.
Anyway, here comes the cute part. The ears and spines are made using a tutorial for a triangular shawl that I can't find on YouTube anymore, but here's the pattern for the spines specifically:
(I'm sorry I can't remember needle size, but they were quite small)
Begin with a slip knot on your left needle (like you would have to begin crochet)
Row 1: yo, knit 1
Row 2: yo, knit 2
Row 3: yo, knit 3
Continue this, increasing by one each row until you have 12 stitches. Then knit two more rows without yo or increase (so you'll have 3 rows of 12 stitches). Bind off, and you've got one spine. Once you have enough, just sew them on in as straight a line you can.
If you're making cat ears, sew them on with a slight curve to the center of each ear. This helps them stand up, and shapes them more like actual ears.