I have a few q's.. (I have *never* cruised before.. so it's not really in comparison to other cruise lines but more of a 'cruising for dummies'

)
What is really the difference between formal/semi-formal nights? I read it somewhere awhile ago in an old post and now I'm not finding what I'm looking for. Do men *have* to wear tuxes on formal nights? (no idea where I'd find that in the middle of nowhere, Sicily..). Dark dressy suit and tie okay? For formal is it actual super fancy ballgowns or something you'd almost wear as a bridesmaid dress or is it dressed down? If you don't what to go that route can you just eat elsewhere that night?
And for semi-formal.. then is it more cocktail dresses, etc.? Do most people do the formal/semi-formals.. esp being a long cruise?
ETA: We love dressing up.. my main concern is the cruise is only 8 weeks away (hooray!) and we live out in the country where we don't really have access to shops for gowns/tuxes. Might be able to order cocktail dresses and that type online for atleast the semi-formal.. but if not many do it I wouldn't want to waste my time, kwim? It sounds so fun!!!
I'm sure I'll have more Q's soon. Thanks for letting me ask!