otland / forgottenserver

A free and open-source MMORPG server emulator written in C++
https://otland.net
GNU General Public License v2.0
1.6k stars 1.06k forks source link

[Bug]: [1.4.2] Conditions are not working for spells/weapons .lua files #4813

Open Wirless opened 1 month ago

Wirless commented 1 month ago

By submitting this bug issue, you agree to the following.

Does this bug crash tfs?

no

Server Version

1.4.x (Release)

Operation System

all (listed below)

OS Description

No response

Bug description

Damage is only dealt on players combat.

Possible Pull Requests which are to blame

Steps to reproduce

1. 2. 3. Code to reproduce the issue:

-- paste your script here

Actual Behavior

When player casts spell which should give condition the condition does apply but never ticks the only time u get a tick if player (owner of condition) deals the damage to the monster. e.g try using poison arrow itself it does not actually work dealing the poison ticks over time no matter what way you add condition I tried 50 different ways to force condition create second combat object and everything issue possibly comes from Updated lua libraries or some other stuff while it might have worked in 2018-2019 it does in fact not work nowadays.

Expected Behavior

Conditions should tick in their own respected time use poison arrow for reference. there is never a second tick ever unless player deals the damage to monster via weapon/spell/ or other combat only then it ticks and player has to finely TIME his hit with the tick otherwise it wont tick either.

Backtrace

No response

Wirless commented 1 month ago

in the mean time im probably gonna create "invisible" condition fields that I want :/

Wirless commented 1 month ago

seems fine for the fluids however but thats on self which is odd

Wirless commented 1 month ago

i could not find any reference to the poison arrow addConditionDamage or whatever htat function is anywhere in luascripts

ArturKnopik commented 1 month ago

can you provided some example script?

probably this is source of problems: https://github.com/otland/forgottenserver/blob/3bca716b7a547a5fb78b73483c802b8e523bd8c0/src/combat.cpp#L677

nok1111 commented 3 weeks ago

seems like it happens when u apply a Condition to combat.