mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-02-08 07:18:17 +00:00
* Adds a Chat Reliability Layer (#79479) ## About The Pull Request Everyone knows that chat will just eat your messages now and then, isn't that annoying? What if SSchat was smart enough to keep track of your messages and notice when you didn't get one? Well, now it can! ## Why It's Good For The Game Chat messages poofing into the aether is bad, really bad. ## Changelog 🆑 add: Chat Reliability Layer code: TGUI chat messages now track their sequence and will be resent if the client notices a discrepenency /🆑 --------- Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com> * Adds a Chat Reliability Layer --------- Co-authored-by: Zephyr <12817816+ZephyrTFA@users.noreply.github.com> Co-authored-by: Kyle Spier-Swenson <kyleshome@ gmail.com>
48 lines
1.7 KiB
Plaintext
48 lines
1.7 KiB
Plaintext
/*!
|
|
* Copyright (c) 2020 Aleksej Komarov
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
/// How many chat payloads to keep in history
|
|
#define CHAT_RELIABILITY_HISTORY_SIZE 5
|
|
/// How many resends to allow before giving up
|
|
#define CHAT_RELIABILITY_MAX_RESENDS 3
|
|
|
|
#define MESSAGE_TYPE_SYSTEM "system"
|
|
#define MESSAGE_TYPE_LOCALCHAT "localchat"
|
|
#define MESSAGE_TYPE_RADIO "radio"
|
|
#define MESSAGE_TYPE_INFO "info"
|
|
#define MESSAGE_TYPE_WARNING "warning"
|
|
#define MESSAGE_TYPE_DEADCHAT "deadchat"
|
|
#define MESSAGE_TYPE_OOC "ooc"
|
|
#define MESSAGE_TYPE_ADMINPM "adminpm"
|
|
#define MESSAGE_TYPE_COMBAT "combat"
|
|
#define MESSAGE_TYPE_ADMINCHAT "adminchat"
|
|
#define MESSAGE_TYPE_PRAYER "prayer"
|
|
#define MESSAGE_TYPE_MODCHAT "modchat"
|
|
#define MESSAGE_TYPE_EVENTCHAT "eventchat"
|
|
#define MESSAGE_TYPE_ADMINLOG "adminlog"
|
|
#define MESSAGE_TYPE_ATTACKLOG "attacklog"
|
|
#define MESSAGE_TYPE_DEBUG "debug"
|
|
|
|
/// Max length of chat message in characters
|
|
#define CHAT_MESSAGE_MAX_LENGTH 110
|
|
|
|
//debug printing macros (for development and testing)
|
|
/// Used for debug messages to the world
|
|
#define debug_world(msg) if (GLOB.Debug2) to_chat(world, \
|
|
type = MESSAGE_TYPE_DEBUG, \
|
|
text = "DEBUG: [msg]")
|
|
/// Used for debug messages to the player
|
|
#define debug_usr(msg) if (GLOB.Debug2 && usr) to_chat(usr, \
|
|
type = MESSAGE_TYPE_DEBUG, \
|
|
text = "DEBUG: [msg]")
|
|
/// Used for debug messages to the admins
|
|
#define debug_admins(msg) if (GLOB.Debug2) to_chat(GLOB.admins, \
|
|
type = MESSAGE_TYPE_DEBUG, \
|
|
text = "DEBUG: [msg]")
|
|
/// Used for debug messages to the server
|
|
#define debug_world_log(msg) if (GLOB.Debug2) log_world("DEBUG: [msg]")
|
|
/// Adds a generic box around whatever message you're sending in chat. Really makes things stand out.
|
|
#define examine_block(str) ("<div class='examine_block'>" + str + "</div>")
|