Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


TreeBranchItemTypeFires when expectedContent as ExpectedBugsComments/future dev
Action





Possible add "you are attacked by" type information here.

Heartbeat
CacheYesYes



Damage_dealt
YesYes



Idle
YesYes



Heartbeat_number
YesYes



Xp
YesYes



Damage_received


YesYes


Round
CacheYesYes*
observed issue with stale heartbeat, not repeatable


Round_Heartbeat_number
YesYes*
Request: Add "Singing/Playing", here or effects (bard)


Calm
YesYes*
I am not sure this information is available in the game using normal commands


Berserked
YesYes

Shows Berserk levels

  • 0 → not in berserk or does not have berserk
  • 1 → B1
  • 2 → B2
  • 3 → B3


Protecting_here
YesYes



Fighting
YesYes



Hibernating
YesYes
  • Should this be in Char.Effects?


Meditating
YesYesDoes not update when meditating
  • should this be in Char.Effects?


Damage_dealt
YesYes
Currently includes all damage, including effects from equip etc. This might be "more powerful" than you intend. I like it and would like to keep it (big grin)


Damage_received
YesYes


Spell
EventNo
  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-8
Note, stoneskin used to work on (end) event

Command
Event
No
  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-4
  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-6
  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-7

It would be relevant to determine "success" of commands like "bash" in raid scenarios

I am also not certain it needs to include the "bury" commands.

Char







Effects
EventNo*Yes
  • does not fire instantly when cancelling an effect
  • Seems not to fire instantly when a a new effect is applied (not 100% sure that this is still relevant...)
General duration updates should be cyclic as now, however statechange (on/off) should be instant. possibly in a separate branch or item (char.EffectChanged("bless","off"))

Inventory
EventNoYes
Future, include weight?
  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-2



Carrying
NoYes
MoneyYes*

Is this neccessary when we have worth?

Format is verbose

  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-2



Wielding
NoYes
  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-2

  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-9
Wielding
  • Add main hand, second hand
  • Maybe! rename to "Held" (semantically same as Worn)


Worn
NoYes
  • Jira
    serverJira
    serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
    keyFR-2
Add location (Char.Inventory.Worn.Body= ...)

Skills


Event
Yes



Untrained?
Yes


Spells
Cache
No
Sometimes include a "0x0C" char (FF, form feed).StatusEventYes*

Missing Several attributes from sheet:

  • Major: Wimpy, Encumberance (here or inventory?)
  • Sex, Deity, Repository level, Alignment, Intoxication, Quest points, Achieved points, total xp

Possibly include "walking mode" here?

Jira
serverJira
serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
keyFR-11

Change "learnable" from string to "learnable.maj" etc?

Status
Event
Yes




ac?
Yes
ac?NoShows 24 when AC on sheet is -25




str?
Yes*

Content is string, this might be unavoidable but is inconsistent with other stats (might choose to have a numeric str, then a "str_string" to show extreme strength.

Or numeric, but float (18.6)


Vitals
Event
Yes


Worth
EventNoYesDoes not seem to fire when supposed to
Comm







Channel
CacheNoNo

Jira
serverJira
serverId66fd2cf2-0b60-3662-bd9a-027f8a1d0f24
keyFR-12

Add history on channels, pollable (aka shout <40)

Tell
CacheYesYes


Say
CacheYesYes
Does not work with "mutter"
Game







Time
Event
Yes
Could contain info from "date" command (Year, Month, Day, Hour, Minute) (note these are mud dates)

Who
CacheYesYes



users
?Yes



time
?Need verification


Omiqs
CacheYesYes

Group







Faction
Cache
Yes


Party
Event
Yes


Groups
Cache
Yes*
Not sure, only have guild, dont know what it looks like with sig
Room







Info
Cache
WrongdirCacheBlockdirCache

No?
  • prev_num seems not to work anymore
  • desc includes mud colors (would prefer to keep \n's and strip colors)




WrongDir
CacheYesYes
Typo in name in help wiki, should be "WrongDir"

Blockdir
CacheYesYes
Description Going into modules help


Action.Round.Berserked - null

Mudlet does not really like the null object

  • because it does not have a tostring method
  • because it isnt a string
  • because it isnt really a number
  • because it isnt the lua nil object

We can workaround this in Lua by doing the following:

Code Block
languagelua
rd = gmcp.Action.Round 
rd.Berserked = tonumber(rd.Berserked)
if rd.Berserked == nil then rd.Berserked = 0 end

This will replace the null with 0, however, it would be more convenient if the null was replaced with 0 on the server side to ensure consistent behavior.

Action.Round - Stale data

Code Block
themeMidnight
titlePay attention to the 'Round_Heartbeat_number' and how it staus at 5828 for many rounds, until it sudeenly updates to 5880
linenumberstrue
You crush Rat with your Talin Thunder for 36 HPs damage.
Snake misses you.
Rat misses you.
Rat misses you.
onGmcpActionRound
{
Hunting = {
},
Round_Heartbeat_number = 1600625828,
Protected_by = {
"tarek"
},
Berserked = "No",
Fighting = {
},
Damage_dealt = 4,
Hibernating = "No",
Meditating = "No",
Calm = "Yes",
Damage_received = 0
}
onGmcpCharEffects()
{
["Berserk Fatigue"] = 99
}
-------------------
You flatten Snake with your Talin Thunder for 30 HPs damage.
Snake misses you.
Rat misses you.
Rat misses you.
Your Pendant of Power slashes Snake.
onGmcpActionRound
{
Hunting = {
},
Round_Heartbeat_number = 1600625828,
Protected_by = {
"tarek"
},
Berserked = "No",
Fighting = {
},
Damage_dealt = 4,
Hibernating = "No",
Meditating = "No",
Calm = "Yes",
Damage_received = 0
}
onGmcpCharEffects()
{
["Berserk Fatigue"] = 97
}
-------------------
You pulverize Rat with your Talin Thunder for 34 HPs damage.
Snake misses you.
Rat misses you.
Rat misses you.
You dealt the death blow to Rat.
Rat dies.
onGmcpActionRound
{
Hunting = {
},
Round_Heartbeat_number = 1600625828,
Protected_by = {
"tarek"
},
Berserked = "No",
Fighting = {
},
Damage_dealt = 4,
Hibernating = "No",
Meditating = "No",
Calm = "Yes",
Damage_received = 0
}
onGmcpCharEffects()
{
["Berserk Fatigue"] = 95
}
-------------------
You crush Rat with your Talin Thunder for 32 HPs damage.
Snake misses you.
Rat misses you.
onGmcpActionRound
{
Hunting = {
},
Round_Heartbeat_number = 1600625828,
Protected_by = {
"tarek"
},
Berserked = "No",
Fighting = {
},
Damage_dealt = 4,
Hibernating = "No",
Meditating = "No",
Calm = "Yes",
Damage_received = 0
}
onGmcpCharEffects()
{
["Berserk Fatigue"] = 93
}
-------------------
You pulverize Snake with your Talin Thunder for 53 HPs damage.
You pulverize Snake with your Talin Thunder for 26 HPs damage.
Snake misses you.
Rat misses you.
You dealt the death blow to Snake.
Snake dies.
Your Pendant of Power slashes Rat.
onGmcpActionRound
{
Hunting = {
},
Round_Heartbeat_number = 1600625880,
Protected_by = {
"tarek"
},
Berserked = "No",
Fighting = {
},
Damage_dealt = 57,
Hibernating = "No",
Meditating = "No",
Calm = "No",
Damage_received = 0
}
onGmcpCharEffects()
{
["Berserk Fatigue"] = 91
}
-------------------


gmcp.Char.Action.Command / gmcp.Char.Effects 

Code Block
themeMidnight
// Notice that "evade end" leads to unpredicted results
// Also notice that evade end, does not trigger an instant gmcp.Char.Effects

> evade
onGmcpActionCommand
{
trigger = "command",
initiate = "start",
command = "evade"
}
---------------
You begin to concentrate on evading attack.

...

onGmcpCharEffects()
{
["Lockout : Commands"] = 0,
Bless = 150,
evade = 35
}

...

onGmcpCharEffects()
{
Bless = 148,
evade = 33
}

....

> evade end
onGmcpActionCommand
{
trigger = "command",
initiate = "start",
target = "end",
command = "evade"
}
---------------
You grow tired of holding your defensive stance.

.....
.....
.....
.....
..... 

onGmcpCharEffects()
{
Bless = 146
}