You put the *label in-between both conditional checks. Of course, this result in something you’re not expecting.
Think of it like a laser-scanner scanning your code from top to bottom. In your code, doesn’t matter if
mountain = 1 or not 1, the *label survivorexperiment will always be encountered.
Try something like this instead.
*if (mountain = 1)
*goto survivorexperiment
*if (mountain != 1)
*goto placetodie
*label placetodie
asdfi;jaskl;dvnioea
*goto settlementchoice
*label survivorexperiment
iouhvne;idsk;io
*goto settlementchoice
P.S. It’s *if (mountain != 1)
, not *if (mountain /= 1) 
