Your two main service concerns are variation and the amount of spin on them.
Variation
For variation, it can be brought down to two main categories; the different serves you have and the serves you choose to use in a game.
Before trying to learn a lot of variations on a specific serve like the reverse version of a serve, focus on the basics. It is important to be able to generate a backspin, sidespin, topspin and no spin service with considerable heaviness and deception. It is more effective to have a few serves of great quality to start out with. This will provide a strong foundation for building and expanding on your serves.
A good video for learning the basic pendulum serve:
In terms of finding new serves and variations, watching a lot of professional matches and analysing their serves is one of the best things to do. Players like Jan Ove Waldner, Liu Guoliang, Werner Schlager and Ma Lin are highly recognized are some of the best servers of the game. Learning from other players is extremely important; this applies to the entire game as well.
In an article, Liu Guoliang said that good service is 80% visualization and 20% practice to which Werner Schlager agreed. He also mentioned that talent is especially needed in regards to serving. This essentially means that some people will naturally be able to create serves better than others. Keep in mind that actually creating the serves is the majority of the work. That is what makes up good service. The other 20% is for practice to develop consistency, along with considering other factors and deciding what parts of the serve need to be modified to maximize its potential.
The article:
http://www.experttabletennis.com/liu-guoliang-on-psychology-tactics-and-player-development/
Innovation and creativity are nothing without safety. It is therefore still important to practice your serve. This will build consistency along with ease of controlling the ball and its spin and speed. However, it is still important to try out new things and new service ideas that come to mind; this is how all serves were made. Try varying the contact point on the ball, bat and table. Try different tosses. Try different angles and ways of hitting the ball. Try standing somewhere else. These are all small variations which can help improve the serve; along with bringing new serves to your collection.
Here is a game which can help make your service training more interesting and effective:
A fairly long video talking about mistakes you may make during service training:
As I said before though, the easiest way to develop new serves is simply by watching different players and their serves. Take the key points from some of the great serves and do your research. Don't be afraid to experiment with the knowledge you have and the things you think of.
A great video by Werner Schlager demonstrating how a slight wrist change can provide an entirely different serve:
In terms of choosing your serve, it is best to choose a serve that is most effective against your opponent. People often get caught up in over-using their favourite and/or 'best' serve but ultimately the best one is the one that works against your opponent. It is also about serving to exploit the strengths of yourself and weaknesses of your opponent.
I could expand on this topic more, but Liu Guoliang explained nearly everything about choosing your serves in game in this interview:
http://www.masatenisi.org/english/roportaj5.htm
Generating heavy spin on your serves
Getting heavy spin on your serve is another way to add variation and make you a better server. Players will really have to pay attention because a mistake can cause a ball to plummet into the net, shoot up and out the end of the table or give you a high ball that's easy to attack. Getting heavy spin makes the serves harder to handle and can often help you construct your plays better. A very heavy, long backspin serve to your opponent's forehand will most indefinitely provide you with a slow, heavy topspin ball which you can then counter. It is having the ability to generate heavy spin that is important as it can help you predict your opponent better and set up, while also having more variation and possibilities.
Generally speaking, there are a few generic tips I can provide which do help quite a lot.
- Hitting the ball on the bottom of the bat.
Essentially I am talking about the end opposite of the handle. The bat is moving faster there than any other part of the racket, and in theory will create more spin.
- Swinging through faster.
This allows you to have more speed and brush to create more spin on the ball.
- Brushing the ball.
This is incredibly important and should be done by using the wrist like a whip. A fast swing can still produce a short serve as long as you are brushing the ball and have a very fine contact.
This article explains it all:
http://www.tabletenniscoaching.com/node/2408
- Using your body.
Using your hips, shoulder, arms, legs and core in synergy can help you get more spin.
- Using a higher toss.
This will allow the ball to come down faster, and in theory, be able to have spin put on it.
Ultimately, getting heavy spin on the ball comes down to having the ability to accelerate your arm while brushing the ball with a fine contact. This will take lots of training and time, and ultimately comes down to your touch.
Here is a good video explaining how to get lots of spin on your serve but still keep it short:
Serving a topspin serve
You also wanted to know how to do a topspin serve. Most serves are sidespin/sidespin-topspin, which generally gain a little bit more topspin as they roll over. This is because they are easier to disguise than pure topspin.
As Werner Schlager covered in the other video, you need to either change the movement of your racket or where you contact the ball.
For topspin, you are brushing up on the ball and/or hitting on the side or top of the ball; it is very hard to make a topspin serve by contacting underneath the ball.
This is not a serve I would recommend doing often unless you know how to disguise it well as it can be very easily attacked.
One last key point is that variation needs deception. After performing a backspin serve, you can drop the bat down to create the illusion of backspin, lift up and create the illusion of topspin or get under the ball to create the illusion of backspin. Keep in mind the best way to do this is using the complete opposite spin like making a topspin serve and dropping your arm since they normally associate that with covering a backspin serve to look like a no spin serve.
Just remember, serving is the only stroke in the game where you have full control of it and that's why it is so important. The best servers often get many free points or easy balls to attack and it can really improve your standard. Keep learning, working hard and improving!