Svof

1192022242535

Comments

  • I just pushed the button to release svof version 30. I'm sorry for being late, but life's first and I got a pretty busy weekend.

    This month is a quiet one, mostly because I joined the Mudlet dev core team and we were all hands on deck preparing and dealing with the aftermath of the 3.0 release. Without further ado, here's the changelog:

    Full Changelog

    Merged pull requests:

    • Updating serverside according to moss config #293 (@Ahmet )
    • Update svo (runeidentifier).xml #292 (@Ahmet )
  • Oh gosh, I had been hoping for this moss configuration thing to work again, for a long time. Thanks so much @Ahmet.

    Much love!
  • So, trying to figure out how to create simple got/lost aff/def echoes. I'm currently going about that by using the related svo events to call scripts with basic echoes in them. Those scripts look like this: 

    function AffEcho(event, affliction)

    if (event == "svo got aff" and affliction:title() ~= "Bleeding") then

    doecho = "GotAff"

    table.insert(gotafftable, affliction)

    elseif (event == "svo lost aff" and affliction:title() ~= "Bleeding") then

    doecho = "LostAff"

    table.insert(lostafftable, affliction)

    end

    end


    function DefenceEcho(event, defence)

    if (event == "svo got def" and defence:title() ~= "Breath") then

    cecho("<gray>[Defences]: <coral>"..defence:title().." Gained!+\n")

    elseif (event == "svo lost def" and defence:title() ~= "Breath") then

    cecho("<gray>[Defences]: <cyan>"..defence:title().." Lost!-\n")

    end

    end


    function DoAffEcho()

    if doecho then

    if doecho == "GotAff" then

    echostring = table.concat(gotafftable)

    cecho("<gray>[Affliction]: <red>"..echostring:title().." Gained!+\n")

    gotafftable = { }

    doecho = nil

    elseif doecho == "LostAff" then

    echostring = table.concat(lostafftable)

    cecho("<gray>[Affliction]: <white>"..echostring:title().." Cured!-\n")

    lostafftable = { }

    doecho = nil

    end

    end

    end


    The first script is called from svo got aff, svo lost aff and svo updated aff. Second script is called from svo got def and svo lost def. The third and final script is called from svo before the prompt

    One of my main issues is that when afflictions/defences are gained/lost within a close time frame, the affs/defs in question are all bundled together like this: 

    [Affliction]: Paralysisproneentangled Gained!

    vs what I want to happen: 

    [Affliction]: Paralysis Gained!

    [Affliction]: Prone Gained!

    [Affliction]: Entangled Gained!


    Help pls?



  • You need to loop over your table of afflictions and do a separate echo for each, rather than using table.concat to join them into a single string that you echo once.
  • edited April 2017

    function DoAffEcho()


    if doecho then


    if doecho == "GotAff" then


    for k, v in pairs(gotafftable) do

    cecho("<gray>[Affliction]: <red>"..v:title().." Gained!+\n")

    end


    gotafftable = { }


    doecho = nil


    elseif doecho == "LostAff" then



    for k, v in pairs(lostafftable) do

    cecho("<gray>[Affliction]: <white>"..v:title().." Cured!-\n")

    end


    lostafftable = { }


    doecho = nil


    end


    end


    end


    @Jovolo  Maybe?
  • It's not a kvp table, but that was definitely along the right lines. I changed it to this: 

    function DoAffEcho()


    if doecho then

    if doecho == "GotAff" then

    tablesize = #gotafftable

    for i=1,tablesize do

    cecho("<gray>[Affliction]: <red>"..gotafftable[i]:title().." Gained!+\n")

    end

    gotafftable = { }

    doecho = nil

    elseif doecho == "LostAff" then

    tablesize = #lostafftable

    for i=1,tablesize do

    cecho("<gray>[Affliction]: <white>"..lostafftable[i]:title().." Cured!-\n")

    end

    lostafftable = { }

    doecho = nil

    end

    end

    end


    and it seems to work fine now :) thanks all

  • It's an indexed (ordered) table (you can tell because they're using table.insert to populate it), so should really be using ipairs as the iterator function. It's literally what it exists for. There's no guarantee of order with pairs (though in this particular case it doesn't really matter). I'm also not a fan of using k, v as the variables in loops unless I don't care at all about either value; I prefer to give them meaningful names so I know what the variable actually refers to without having to look at the line that starts the loop.

    Also, learn what a tab key is! Writing - and reading - code is much, much easier when it's not all starting at the same indentation on every line.

  • Antonius said:

    Also, learn what a tab key is! Writing - and reading - code is much, much easier when it's not all starting at the same indentation on every line.

    Forums removes tab indentation when you copy/paste it here.
  • Ryzeth said:
    Antonius said:

    Also, learn what a tab key is! Writing - and reading - code is much, much easier when it's not all starting at the same indentation on every line.

    Forums removes tab indentation when you copy/paste it here.
    I've seen enough code from Achaeans to know that in 99% of cases that's not the reason.
  • Downloaded this for a new Char I've created, is there anything prio wise in need to change from default?

    (Party): Mezghar says, "Stop."
  • Antonius said:
    Ryzeth said:
    Antonius said:

    Also, learn what a tab key is! Writing - and reading - code is much, much easier when it's not all starting at the same indentation on every line.

    Forums removes tab indentation when you copy/paste it here.
    I've seen enough code from Achaeans to know that in 99% of cases that's not the reason.
    Took me a moment to realise what you were saying... Sad, but true. Give people the benefit of the doubt :( Either no indenting, or they use spacebar indenting... Dunno what's more horrifying to look at honestly. Wundersys uses double spaces, too. :#
  • Is there a toggle for using queuing with Svof.

    I have quite bad latency so would prefer to queue my attacks with QUEUE ADD BAL etc, but queuing them seems to break the limb tracker (anti-illusion stuff?).

    Is there a workaround, or does anyone else experience similar? I might be way off and it could be something totally different causing the problem, but it seemed to work before I started queuing up the attacks.


  • Talroth said:
    Is there a toggle for using queuing with Svof.

    I have quite bad latency so would prefer to queue my attacks with QUEUE ADD BAL etc, but queuing them seems to break the limb tracker (anti-illusion stuff?).

    Is there a workaround, or does anyone else experience similar? I might be way off and it could be something totally different causing the problem, but it seemed to work before I started queuing up the attacks.



    I don't use svof's limb counter myself, for various reasons. However, this is an issue I've heard people complain about. Honestly, illusions that would actually affect Svof aren't really a thing any more, so you could probably just turn anti-illusion off and see if that solves the problem.

  • edited April 2017
    Got a little mini-console on the side of my screen that looks like:

    Head           (0/10)
    Torso           (0/10)
    Lef t Arm     (0/10)
    Right Arm    (0/10)
    Left  Leg      (0/10)
    Right Leg     (0/10)

    Does anyone know how'd I'd reference the variables from Svo's Limb Counter?
  • edited April 2017
    Ryzeth said:
    Antonius said:

    Also, learn what a tab key is! Writing - and reading - code is much, much easier when it's not all starting at the same indentation on every line.

    Forums removes tab indentation when you copy/paste it here.
    I use two spaces in place of tabs to indent my code.
      Different pieces of software/different platforms handle tabs differently.
         Just my experience.

  • I'm having issues since the last update.

    If I log in or die in dragonform and try to def up it tries to put my lesserform class defences up (Depthwalker in this case). The only way I can counteract it is to lesserform, defup, dragonform, defup. Which is a bit tedious.
  • Since the last update and you report it just now? :(

    There was nothing changed about dragonform or defenses in general in the last update, maybe we didn't break anything (:hope:). Is anybody else having this problem?
  • I haven't been playing much. :(
  • AhmetAhmet Wherever I wanna be
    @Tahquil is it -just- gaiartha? Or all depthswalker defences?
    Huh. Neat.
  • I only have a problem if I'm using server side curing - it tries to put up class defences in another class I have.

    I haven't had the dragonform/lesserform issue ever. 

    I have had a writhing issue though - it will withe once properly but I get roped our webbed again it will wait a handful of seconds before writhing. Non issue really though, I just switch to server side. I've only noticed it bashing, don't get webbed in pk.

    Except by Miriew. Ihy.

  • A day late (I have to admit I forgot about it yesterday), but here's what was previewed some days ago already as release 31:

    Full Changelog

    Merged pull requests:

    • Changing hellsight checks from elm to valerian #305 (@Ahmet )
    • Fixing namedb 'qw' issues. #299 (@Ahmet )
    • Adding checks for hypothermia when calculating/removing treeables #290 (@Ahmet )
    • Adding workaround for sending commands mid-alias. #288 (@Ahmet )
    • Making pear/waterbubble deffable #287 (@Ahmet )
    • Removing hard-coded afflictions for phlegmatic inundate #286 (@Ahmet )
  • I don't understand the phlegmatic change. Is it just going off gmcp now?
  • Farrah said:
    I don't understand the phlegmatic change. Is it just going off gmcp now?
    That should be the case, yes.
  • edited May 2017
    I know it specifically says it doesn't but is there a way to set limb counter number of hits needed off of assess?

    For knight limb counter.
  • AhmetAhmet Wherever I wanna be
    Phlegmatic is just using gmcp now. The old stuff was extremely out of date and inaccurate.
    Huh. Neat.
  • Just installed this, few thoughts:

    1) What's going on with these default curing priorities, and why does making a change to a priority only bring up a truncated list of them? Is there a configuration option to show the entire thing each time?

    2) This, in my limited experience, has vastly better defence and precache management than WunderSys. Works pretty flawlessly out of the box for me.

    3) Does this use curing sets instead of mass resetting priorities on diagnose and death?

    Either way, great work folks!
  • Since I don't use Gaiartha, the first defence it tries to put up is Mainaas over and over. I also didn't get a box asking if I would like to update svof like usual. :/

    I downloaded the new version of DW svof from the website and have the same issue. I know it wasn't doing this after the initial download at the start of April, maybe it has been just after the first batch of classleads went in?

    https://ada-young.appspot.com/pastebin/p5cFv6zw
Sign In or Register to comment.