Issues with the new Blink Rune

Where bugs go to lie down and rest

Moderator: Moderator

Post Reply
Message
Author
Tradewind_Rider
Thalore
Posts: 182
Joined: Sat Oct 05, 2019 8:55 pm

Issues with the new Blink Rune

#1 Post by Tradewind_Rider »

Hey, hi!

I found some "problems" or maybe non-intended mechanics with the new Blink Rune:


1 st issue:

The rune says, targeting requires line of sight, but in the code, a condition is missing.

I.g. Dimensional Step has this in its code:

if not self:hasLOS(x, y) or game.level.map:checkEntity(x, y, Map.TERRAIN, "block_move") then
game.logPlayer(self, "You do not have line of sight.")
return nil
end

The focus in on : game.level.map:checkEntity(x, y, Map.TERRAIN, "block_move")


The new Blink rune just have:

if not self:hasLOS(x, y) then return end

So, that means, I can target a wall or any other object that block movement with Blink.
And after this, the code is searching for a valid tile to teleport me.
Therefore I can teleport through 1 tile thick walls, so on...


2 nd issue:

The Out of Phase from your gear and the Out of Phase from Blink rune are not stacking.

This is because the code of the new Blink rune is missing a part.
The old Phase Door rune had it in 1.5.10:

self:setEffect(self.EFF_OUT_OF_PHASE, data.dur or 3, {
defense=(data.power or data.range) + data.inc_stat * 3 + (self:attr("defense_on_teleport") or 0),

But the new Blink rune in 1.6 has just:

self:setEffect(self.EFF_OUT_OF_PHASE, data.dur or 3, {
defense = data.power + data.inc_stat * 3,

So, the " + (self:attr("defense_on_teleport") or 0) " part is missing.

Therefore if I have OOP from gear and I activate a Bink Rune, the game
counts the 2 OOP separately and just applies the higher value.
(For example having 23% OOP from gear and using a 16% OOP Blink Rune will result in a 23% OOP effect,
having 14% OOP from gear and activating a 16% OOP Blink Rune will result in a 16% OOP effect)


3 rd issue:

The UI seems a bit buggy.

As you can see in the first image, the range in the Range field is equal with the range in the decsription.
blink_ok.png
blink_ok.png (99.45 KiB) Viewed 877 times

But in several cases I found a difference of 1.
blink_notok.png
blink_notok.png (102.51 KiB) Viewed 877 times
As you can see, the range in the description is 8, while the range in the "range" field is 7.

I guess, this is coming from:

In the range field, the using: math.floor(data.range + data.inc_stat)

But in the description field, the code uses: format(data.range + data.inc_stat,

So, there is a missing "math.floor" function in the description.


Thanks for reading.

Post Reply