Young Upali Giniwella (Ajith Jinadasa) is resentful of his new stepmother (Somalatha Subasinghe) and lashes out by committing harmless acts of mischief around the village. For this Upali is sent to a boarding school where he bonds with the headmaster (Joe Abeywickrema). He once again gets into trouble however and is returned home when a new headmaster installed.
Upali is punished by his father back home. He becomes more resentful and takes off with his servant boy Jinna (Padmasena Athukorala) to the island dubbed Madol Duwa. After some adventures there, Upali is found by a friend of his father. Upali learns that his father is sick and returns home to ask for forgiveness.