The standard defines the range of a node is the distance at which the PER (packet error rate) of a 1024B packet is 10 %. This means that nodes even beyond the range will be able to communicate, but they may do so with high error.
The factors which affect range are:
a. Transmitter power (More Tx power implies higher range)
b. Path loss (Higher path loss exponent leads to lower range)
c. Receiver sensitivity (Lower Rx sensitivity leads to higher range. Rx sensitivity is in negative dB, hence lower means more negative).
Note: There is a common misunderstanding that a range of 100 m implies that transmissions work perfectly till 99 m but suddenly stop at 100 m. This is not so. The error rate gradually increases as the range in increased if other parameters are kept constant.