For Boolean values you'd need to use a condition to check the value, as you were already doing, which could then also assign the proper value to the target variable.
Numeric values can be converted as mentioned.
The "Another Boolean variable value" field is intended for passing the name of a Boolean variable, so that the value of that variable can be copied to the variable you're setting using the "Set a True/False (Boolean) Value" action.
You're passing in a token that retrieves the value of a text variable, which is then interpreted as the name of a Boolean variable. Unless a Boolean variable by that name happens to have been set, the value will logically be not set.