I don't know if someone has said this. But things following you. IE, Ents/players/anything but hidden Syssin people. Would be nice to have a competent way to track ents without having to use 'entourage'. Something I can easily make tables with and parse things and make it so that I can better track it.
'Those that do not attempt are those with the least stories to tell.'
Please refer to bug 9958 though I'll quickly outline the issues here for transparency.
GMCP is really not being used efficiently and at times, incorrect strings are sent for events. The main thing I have observed is that gmcp.Char.Items.Update is not being used at all for mobile deaths. When a mobile is slain, the server sends a whole slew of .Add and .Remove for both room and inv items, though in most cases, the key strings are incorrect. Most notably, there is a Items.Remove event sent for room_items which takes into account the current state rather than the correct one. For example, in my test, I received a key string for a slain mobile as 'the corpse of a reticulated planthopper' when the correct string should be just 'a reticulated planthopper' - This is where .Update should be used. Secondly we're receiving an inv_items Remove event for the same string. We should not be receiving this at all as no item was ever removed from ones inventory. Again, .Update should be used here, to simply update it's state, along with updating gmcp.Char.Items.Update.item.name.
Sorry to go on a bit, though I think that's plenty to go on. Hopefully I am not tracking these wrong client-side, though my GMCP functions work across all IRE games, except here.
Finally, .Remove really could use trimming down. It's inefficient to use so many keys for this but then I'm just back onto the .Update usage argument.
Tagging @Keroc as apparently you're the person who deals with this stuff!
Unrelated and simply treat this as a request, though passing sendGMCP([[Core.Supports.Add ["IRE.Target 1"] ]]) does nothing. Nothing is ever returned and gmcp.IRE always returns nil. Not bothered to deal with Rift tracking as that's all done serverside these days.
Unrelated and simply treat this as a request, though passing sendGMCP([[Core.Supports.Add ["IRE.Target 1"] ]]) does nothing. Nothing is ever returned and gmcp.IRE always returns nil. Not bothered to deal with Rift tracking as that's all done serverside these days.
If you're using Mudlet, a far more effective way to get the extra modules is to create a trigger on a correct login sequence ("Password correct. Welcome to Aetolia.") that executes the following:
Yeah, I do that already, though personally prefer to stick with the prescribed methods from IRE for explicitly enabling modules rather than a third party namespace function set.
I probably should also add, you're aware those functions are nothing more than fancy wrappers for Core.Supports.Add and Core.Supports.Remove, right?
Finally, passing the character name as an argument to enableModule() is not required. registerUser() exists for this purpose which completely negates the need for that initial argument.
To add to this, I get level out of QSC; I run QSC once when I log in, then anytime I receive maxxp different than the last maxxp received. I don't like how level still has to be edited when received though.
Char.Status { "level": "107 (49%)" }
Please to be getting just level in Char.Vitals.
Anyway, can we get something to tag aggressive creatures in GMCP? We currently get:
I'd love aggro tag for helping other people bash- if it was further swapped to show things targetting you, glorious day for newbies everywhere.
I'd also like it to show your group/party size in gmcp for basher purposes - if I take 6 guys hunting, I have to go edit my basher manually so I don't bash a room some random is trying to bash in already.
Arbre-Today at 7:27 PM
You're a vindictive lil unicorn ---------------------------
Lartus-Today at 7:16 PM
oh wait, toz is famous
Karhast-Today at 7:01 PM
You're a singularity of fucking awfulness Toz
--------------------------- Didi's voice resonates across the land, "Yay tox."
---------------------------
Ictinus — 11/01/2021
Block Toz
---------------------------
lim — Today at 10:38 PM
you disgust me
---------------------------
(Web): Bryn says, "Toz is why we can't have nice things."
Can I please please please please please get some sort of gmcp thing that states whether you are dead or not. It's so easy if you're playing a living character, if your hp = 0 then you're dead. As vampire you regen health while dead and can even go into negative health so I have to go out of my freaking way to illusion proof 'you have been slain' messages to obtain the same sort of death checks I could add in as living.
Please.
(Web): Toz says, "Emir's Express Evacuation and Existence Eradicator, Every Experience is Explosive - Experience the Entirety of your Existence!"
Can I please please please please please get some sort of gmcp thing that states whether you are dead or not. It's so easy if you're playing a living character, if your hp = 0 then you're dead. As vampire you regen health while dead and can even go into negative health so I have to go out of my freaking way to illusion proof 'you have been slain' messages to obtain the same sort of death checks I could add in as living.
Please.
i have an easy solution for you:
don't die you scrub fufufufufu >:3c
edited to add: HONEY GANG HONEY GANG HONEY GANG
Indoran'i is back baby. It's good again. Awoouu (wolf Howl)
An Atzob cultist says, "Is a shamatato as tasty as a potato?"
(Tells): From afar, Mephistoles hisses harshly to you, "Hey baby, show me your ovipositor?"
The mighty Jy'Barrak Golgotha opens his maw, catches the glowing spear in his many jagged teeth, and chomps down. The Divine spear breaks with a noise like thunder, shards toppling from the Emperor's jaws. "OM NOM NOM!" He declares, then spits the last of the ruined weapon from his lips.
If you need help tracking golem info, hit me up when i'm in the game next. I have some aliases/triggers I can share with you so that you can track it as well.
Poking at this for Archivist: -What you have empowered. (this should really show on def, too, tbh) -Your token. -If the token is inverted/traced. -Current impress on your token.
They're already filtered out!! I don't want to have to put in code to filter what's already been filtered!!
And it would be a nightmare because if I'm in a room with dozens of people, I'm going to see everyone nodding their head or whatnot. I don't want to see that. I'd rather it just stick with emotes/thoughts. Premotes have no real value other than a quick reaction.
Probably not going to get gmcp updates any time soon, but here's my shortlist:
Premotes would be nice
This may be a tall order, but help file fulltext would be pretty cool. Nexus has a popup helpfile thingie that I really want to emulate in MUDlet but from what I can tell, it's built manually by sending a GMPC ping and then scraping the text and then piping it to a popup, which is a pretty rough thing to emulate in MUDlet.
Probably not going to get gmcp updates any time soon, but here's my shortlist:
Premotes would be nice
This may be a tall order, but help file fulltext would be pretty cool. Nexus has a popup helpfile thingie that I really want to emulate in MUDlet but from what I can tell, it's built manually by sending a GMPC ping and then scraping the text and then piping it to a popup, which is a pretty rough thing to emulate in MUDlet.
Same as above, but for news posts.
A little bit off topic, but I wish Nexus used the pop up thing for more stuff in general. It is only used for help files at the moment, but AB Files, News Posts even the Artifact Shop I would love to be able to browse while bashing.
They're already filtered out!! I don't want to have to put in code to filter what's already been filtered!!
And it would be a nightmare because if I'm in a room with dozens of people, I'm going to see everyone nodding their head or whatnot. I don't want to see that. I'd rather it just stick with emotes/thoughts. Premotes have no real value other than a quick reaction.
They're already filtered out!! I don't want to have to put in code to filter what's already been filtered!!
And it would be a nightmare because if I'm in a room with dozens of people, I'm going to see everyone nodding their head or whatnot. I don't want to see that. I'd rather it just stick with emotes/thoughts. Premotes have no real value other than a quick reaction.
I'm not really sure what the issue is, you could patch out premotes in like two seconds if it's in the Comm table. Here:
channelcode = gmcp.Comm.Channel.Text.channel
if channelcode == "premote" then
end
Justifying reduced functionality for people who'd like a feature just because it would mildly inconvenience you personally is meh.
I'm either going crazy or 1(or more) items was changed around in GMCP some time recently, the one that I know of being gmcp.Char.Name.name->gmcp.Char.Status.name.
Comments
Please Lord @Keroc
GMCP is really not being used efficiently and at times, incorrect strings are sent for events. The main thing I have observed is that gmcp.Char.Items.Update is not being used at all for mobile deaths. When a mobile is slain, the server sends a whole slew of .Add and .Remove for both room and inv items, though in most cases, the key strings are incorrect. Most notably, there is a Items.Remove event sent for room_items which takes into account the current state rather than the correct one. For example, in my test, I received a key string for a slain mobile as 'the corpse of a reticulated planthopper' when the correct string should be just 'a reticulated planthopper' - This is where .Update should be used. Secondly we're receiving an inv_items Remove event for the same string. We should not be receiving this at all as no item was ever removed from ones inventory. Again, .Update should be used here, to simply update it's state, along with updating gmcp.Char.Items.Update.item.name.
Sorry to go on a bit, though I think that's plenty to go on. Hopefully I am not tracking these wrong client-side, though my GMCP functions work across all IRE games, except here.
Finally, .Remove really could use trimming down. It's inefficient to use so many keys for this but then I'm just back onto the .Update usage argument.
Tagging @Keroc as apparently you're the person who deals with this stuff!
Thanks.
gmod.enableModule(yourname, "IRE.Rift") gmod.enableModule(yourname, "Comm.Channel") gmod.enableModule(yourname, "IRE.Time")
I probably should also add, you're aware those functions are nothing more than fancy wrappers for Core.Supports.Add and Core.Supports.Remove, right?
martin@vertex:~/projects/mudlet/src/mudlet-lua
$ grep -r 'module' *|grep Supports
lua/GMCP.lua: sendGMCP(string.format([[Core.Supports.Remove ["%s"] ]],module))
Finally, passing the character name as an argument to enableModule() is not required. registerUser() exists for this purpose which completely negates the need for that initial argument.
lua display(gmcp.Char.Vitals.charstats) currently only shows
{
"Class: Archivist",
"Bleeding: 0",
}
It used to show level but it doesn't no more it's pretty hard to track level without the weird (90%) thing added
Char.Status { "level": "107 (49%)" }
Please to be getting just level in Char.Vitals.
Anyway, can we get something to tag aggressive creatures in GMCP? We currently get:
{ "id": "84782", "name": "a mutilated creature", "icon": "monster", "attrib": "m" }
The only way I can tell what monsters are aggressive is by using IH, and looking for the red text.
Neither of these bits of information can be accessed from GMCP alone; you have to tie it to some command in game.
I'd also like it to show your group/party size in gmcp for basher purposes - if I take 6 guys hunting, I have to go edit my basher manually so I don't bash a room some random is trying to bash in already.
Please.
don't die you scrub fufufufufu >:3c
edited to add: HONEY GANG HONEY GANG HONEY GANG
Can we get sand (sand flood) added? It's not super important, but being able to track if a room has sand this way would make life easier.I've been informed this is already implemented!
Hi.
Hi.
-What you have empowered. (this should really show on def, too, tbh)
-Your token.
-If the token is inverted/traced.
-Current impress on your token.
- Premotes
- Thoughts
Could we get these added in?Thoughts would be cool... But dear God not premotes.
And it would be a nightmare because if I'm in a room with dozens of people, I'm going to see everyone nodding their head or whatnot. I don't want to see that. I'd rather it just stick with emotes/thoughts. Premotes have no real value other than a quick reaction.
Nothing is going to get better. It's not.”
― Dr. Seuss, The Lorax
@Keroc Was there any others?