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:
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
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:
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.
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.
I'm a bit late (though I said I always did it around the 15th), but I just released the testing version 30.1, which includes quite a lot of fixes exclusively by @Ahmet: - Pear is now a toggable defense and should be put up when you enter water (before any damage) - NDB shouldn't act strange if you are gemmed off plane or with laggy "qw" anymore - Phlegmatic inundiate now exclusively tracks the afflictions via gmcp - Autopause on dragonforming should now work with server side curing - Svof should now correctly respect inquisition when trying to cure hellsight - Svof should now correctly respect hypothermia when trying to cure freezing or shivering via tree (and remove it correctly from svo.treecurables as well)
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.
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 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.
I've downloaded svof for my alt and have been really impressed @Keneanung, very slick install and easy to navigate. Your bashing script is also amazing, totally changed the way I hunt and makes it much less of a chore. (It doesn't work on Sobby, but no doubt due to my tinkering somewhere).
When I started Achaea almost 14yrs ago Larkin's free ACP system kept me in the game. @Vadimuses, you and everyone else who has contributed to this have no doubt has the same affect on many others, and of course helped over the way for the SS curing.
Shout out to all those who offer free systems and scripts, too many to name but you're also awesome.
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.
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 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.
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?
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?
Comments
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:
GMCP documentation: https://github.com/keneanung/GMCPAdditions
svof github site: https://github.com/svof/svof and documentation at https://svof.github.io/svof
Much love!
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?
Results of disembowel testing | Knight limb counter | GMCP AB files
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?
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.
Results of disembowel testing | Knight limb counter | GMCP AB files
Results of disembowel testing | Knight limb counter | GMCP AB files
- Pear is now a toggable defense and should be put up when you enter water (before any damage)
- NDB shouldn't act strange if you are gemmed off plane or with laggy "qw" anymore
- Phlegmatic inundiate now exclusively tracks the afflictions via gmcp
- Autopause on dragonforming should now work with server side curing
- Svof should now correctly respect inquisition when trying to cure hellsight
- Svof should now correctly respect hypothermia when trying to cure freezing or shivering via tree (and remove it correctly from svo.treecurables as well)
GMCP documentation: https://github.com/keneanung/GMCPAdditions
svof github site: https://github.com/svof/svof and documentation at https://svof.github.io/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.
Results of disembowel testing | Knight limb counter | GMCP AB files
Does anyone know how'd I'd reference the variables from Svo's Limb Counter?
svo.kl_list for knights, see http://svof.github.io/svof/knightlimbcounter.html
svo.ml_list for monk (http://svof.github.io/svof/monklimbcounter.html), magi (http://svof.github.io/svof/magilimbcounter.html) and metamorphosis (http://svof.github.io/svof/metalimbcounter.html)
GMCP documentation: https://github.com/keneanung/GMCPAdditions
svof github site: https://github.com/svof/svof and documentation at https://svof.github.io/svof
When I started Achaea almost 14yrs ago Larkin's free ACP system kept me in the game. @Vadimuses, you and everyone else who has contributed to this have no doubt has the same affect on many others, and of course helped over the way for the SS curing.
Shout out to all those who offer free systems and scripts, too many to name but you're also awesome.
Different pieces of software/different platforms handle tabs differently.
Just my experience.
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.
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?
GMCP documentation: https://github.com/keneanung/GMCPAdditions
svof github site: https://github.com/svof/svof and documentation at https://svof.github.io/svof
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.
Full Changelog
Merged pull requests:
GMCP documentation: https://github.com/keneanung/GMCPAdditions
svof github site: https://github.com/svof/svof and documentation at https://svof.github.io/svof
GMCP documentation: https://github.com/keneanung/GMCPAdditions
svof github site: https://github.com/svof/svof and documentation at https://svof.github.io/svof
For knight limb counter.
Either way, great work folks!
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