There is really not a lot of difference. Wear your dressiest dress for formal, next fanciest for semi. Or....long for formal, short for semi.
After 12 cruises, I still can't look at the clothing and tell which night is which. We dress up for both. An idea---black sandals may save you bringing dress shoes.