Again, the results always come out as 0 or 1 when the variable is set to Random(100)<50
That is exactly how it's supposed to work.
Also how can you set something as true or false when the variable isn't a Boolean?
A boolean is in essence just a 1 (true) or 0 (false).
Your code is wrong because you already do the comparison in random(100)<50
And then compare the result of the comparison again with <50. Either you do
Set Odds to random(100)
Odds <50 / Odds >50
OR
Set Odds to random(100)<50
Odds = 0 / else