class/function/hook notes:

    ForceFieldExtension.remaining_life()
    ForceFieldExtension.remaining_duration()
        *only work offline
        *can't get husk to work either

    ForceFieldExtension on_player_enter & on_player_exit
        *only work offline



random notes:

    hud element text color/s
        *located: widget.style.counter_text
            *relevant: text_color | default_text_color | disabled_text_color

    cheaper version of the current pulse logic (choppy/binary):
        if math.ceil(remaining_health) % 2 == 0 then
            bubblewidget.style.ability_frame_glow.size = { 160, 160 }
        else
            bubblewidget.style.ability_frame_glow.size = settings.frame.size
        end

    lua's 'ternary' (commonly used as such)
        condition and valA or valB
        is not a true ternary operation. Be careful if valA can be false/null. 
        if valA is false/null -> valB will always evaluate/return



general notes:

    no good idea yet as to how to mix the 2 values (hp/time) & show the outcome to the player well, without using 2 visual representations
    *TODO: find a good way to show both remaining time & health numerically without overwhelming the player

    DT seems to have an existing shield color change function based on shield (hp/time)?
    *bubble changes color over time by default
    *TODO: find & get data from that class/function instead