1a) Current price >= 100.5. Your stop loss buy order has trigger 100.5 and quote 101. So the trigger is done already and your order is effectively a limit order now with price 101. It gets executed depending on that limit and what sell quotes available then & after (till you cancel the order).
1b) Same as above, except your order is a market order.
2) You cannot put a trigger price for limit order. Your approach is not correct here. If the LTP is 100 and you want to buy at 99, just use a plain limit order with price 99. The stop loss buy order here is not required because the triggering is already done.
The confusion here, as I understand, is the result of forgetting the "loss" part in stop loss order.
The stop loss buy order has a meaning only when trigger price is greater than LTP. Similarly the stop loss sell order has meaning only when the trigger price is less than LTP.
When the trigger price is less than LTP for stop loss buy, the triggering is already done. The opposite for stop loss sell. In these cases you do not need stop loss order. Plain limit order will behave same and save you some typing effort.
Do not forget the "LOSS" part. The stop "loss" orders are meant to be used to close the position cutting the loss. If you have a short position, you would put a stop loss buy order with trigger price > LTP and an appropriate quoting price depending on the liquidity. If you have a long position, you would put a stop loss buy order with trigger price less than LTP. On both these cases you cannot use plain limit order, because they will become effective right away and that is not your intention.
4) No order can guarantee execution at 99 or any price in any scenario. If the scrip is very very liquid and your quantity is much smaller, then you can hope to get filled at 99.