You can find the powerful weapons for each character except for Mario and The Princess in Bowser's Castle. Mario's best weapon is the Lazy Shell. To obtain it, you must first have the seeds and fertilizer. You get the seed after fighting the plant in Bean Valley to get into Nimbus Land. After it has been defeated, you will see a sheet of paper fall to the ground. Go to it and then you will be asked if you want to take it. Do so. Then after you defeat Queen Valentina, return back to Nimbus Land. Go out to where all the shops are and move to the far right. Somewhere at that location is a invisible track to walk on. Go down it and to find a Shy Away. He will give you the fertilizer if you let him go. Next, go to Rose Town. Move in the same direction you are facing when you entered Rose Town. In the back you should see an opening. Enter and you will see a house. Enter it and talk to the man. After the conversation, a bean stalk will grow. Climb up and get the Lazy Shell. You will also get armor called Lazy Shell.
Back to Cheats
The Princess best weapon is the Frying Pan. Go to Molesville and enter the shop. You should see a man wearing a blue hat behind the counter. You first have to buy two items from him before you can buy the Frying Pan. The first one cost 100 coins, the next is 200, and the Frying Pan is 300.