diff --git a/common/patches/larion.cpp b/common/patches/larion.cpp index 9c5db909a..3ab49ff8f 100644 --- a/common/patches/larion.cpp +++ b/common/patches/larion.cpp @@ -2563,8 +2563,8 @@ namespace Larion VARSTRUCT_DECODE_STRING(Sender, InBuffer); VARSTRUCT_DECODE_STRING(Target, InBuffer); - //packet seems the same as rof2 with 5 more empty bytes before language - InBuffer += 9; + //packet seems the same as rof2 with 4 more empty bytes before language + InBuffer += 8; uint32 Language = VARSTRUCT_DECODE_TYPE(uint32, InBuffer); uint32 Channel = VARSTRUCT_DECODE_TYPE(uint32, InBuffer); diff --git a/zone/client.cpp b/zone/client.cpp index 268d37c8a..a8b57286d 100644 --- a/zone/client.cpp +++ b/zone/client.cpp @@ -1177,7 +1177,7 @@ void Client::ChannelMessageReceived(uint8 chan_num, uint8 language, uint8 lang_s } } - if (message[0] == COMMAND_CHAR) { + if (message[0] == COMMAND_CHAR || message[0] == COMMAND_CHAR_NON_HASH) { if (command_dispatch(this, message, false) == -2) { if (parse->PlayerHasQuestSub(EVENT_COMMAND)) { int i = parse->EventPlayer(EVENT_COMMAND, this, message, 0); @@ -7527,7 +7527,7 @@ void Client::GarbleMessage(char *message, uint8 variance) int delimiter_count = 0; // Don't garble # commands - if (message[0] == COMMAND_CHAR || message[0] == BOT_COMMAND_CHAR) { + if (message[0] == COMMAND_CHAR || message[0] == COMMAND_CHAR_NON_HASH || message[0] == BOT_COMMAND_CHAR) { return; } diff --git a/zone/command.h b/zone/command.h index d59fdf9a5..3f03a19ab 100644 --- a/zone/command.h +++ b/zone/command.h @@ -8,6 +8,7 @@ class Seperator; #include #define COMMAND_CHAR '#' +#define COMMAND_CHAR_NON_HASH '.' typedef void (*CmdFuncPtr)(Client *, const Seperator *);