I want to add some clarity here.
(Cherry, don't hate me!)
The term "half sister" is not the same as "stepsister". I think it was explained correctly, except for this.
Mary was part of another family, not mine. Then, her mother and my father got married. Mary is my stepsister.
Mary was part of another family, not mine. Then, my mother married her father. Mary is my stepsister.
Mary did not exist. A woman married my father after he divorced my mother. My father and this woman had a baby, Mary. She is my HALF SISTER, because we share the same father.
Mary did not exist. A man married my mother after my father died. My mother had another child, Mary, with this man. Mary is my half sister, because we share the same mother.
I did not exist. Mary's father had an affair with a woman and got her pregnant. This woman gave birth to me. Mary is my half sister, because we share the same father.
I did not exist. Mary's mother dated my father after both of their spouses died. Mary's mother got pregnant and gave birth to me. Mary is my half sister, because we share the same mother.
In short...
"step-" means the family member shares NO BLOOD with me.
"half" means the family member shares ONE PARENT'S BLOOD with me.
For this reason, you cannot have a "half father" or "half mother", only a "stepmother" or "stepfather".
And notice, there is no hyphen (-). Also, "half" uses a space following, while "step" gets joined to the next part of the word.