Piccolo is Goku's arch enemy turned best friend. He was a bad guy throughout the Dragon Ball Series when he was bent on ruling the world. When Kame sought to rid himself of all evil it created another being known of Piccolo-Damioh. When a young Goku killed Piccolo-Damioh, he spit out an egg, and when it hatched the Piccolo of DBZ was born. He joins forces with his enemy Goku to fight a greater menace--Raditz. Then takes on Goku's son as a student while training for the arrival of the other saiyans. He forms a bond with Gohan that lasts throughout the DBZ series and teaches him compassion and friendship, turning him into a real Good Guy. Eventually he even fuses back with Kame.
** On the thing about Piccolo's father, he was born from an egg spit from the original Piccolo-Damioh after a battle with Chibi Goku in the Dragon Ball Series. And Piccolo-Damioh was the exorcised evil half of Kame (who's name is also actually Piccolo, Kame is the title meaning God). So the closest thing Piccolo has to a Father is one of these 2 guys, who are really just other parts of himself. Ok enough of that........