The combat system in Paper Mario is a menu based system. As mentioned earlier, there is a first attack feature on the main map so you or your opponent may get a free attack. Once this is out of the way, Mario and his companion each get an action. Once these actions are performed then each of the opponents get a turn. You can face up to four opponents at a time.
Mario has a basic jump attack and a hammer attack once he has acquired the first hammer. In addition to these basic attacks, more advanced jump and hammer attacks can be performed if you have the appropriate badge equipped and enough flower points. Each badge has a badge point cost so you are limited to how many different types of attacks you can have. There are also badges that are defensive in nature and some that give you other abilities. The most important badge to me is the quick swap badge that lets you swap out your companion while letting the replacement companion still get an attack. As an alternative to attacking, Mario can use an item or use a star power (once star powers have been acquired).
The companions can only attack or swap. Swapping a companion for a different one takes up the companion's turn unless the quick swap badge is equipped. Each companion has their own set of up to four attacks, based on the level of the character. The first attack is free, while the other attacks cost Mario flower points. Many of the special attacks do things such as put the opponent(s) to sleep. One of your companions can make you invisible for a turn making the opponents miss you when they attack. While this sounds great, the designers play-balanced this power by having that companion unable to act the following turn.
The monsters attack Mario pretty much exclusively, with the rare attack on your companion only having the effect of temporarily knocking out your companion for a number of turns. As the companion can not use items or heal Mario, you do occasionally end up in a situation where Mario is dazed, frozen, or asleep and the only thing you can do is hope that Mario's heart points last until he recovers or your companion wins the battle. This is a very big flaw but thankfully does not come into play too often.
There is a slight arcade element to the combat. Every attack has an arcade action (timing related for the most part) that can cause the attack to do extra damage. For the most part this is not a requirement but there are a few monsters that you will encounter for which you will do no damage unless you get the bonus damage to register. Very poor design. Damage can also be reduced by clicking on the action button just before the opponent hits you. I almost always took full damage.