* [Commands] Cleanup #stun Command.
- Cleanup message.
- Add ConvertSecondsToTime() to string_util.h and convert Quest API Methods to use helper.
* Add days to ConvertSecondsToTime() and cleanup logic.
* Cleanup.
* Typo.
* Cleanup.
* Cleanup.
* Sanitize bad words in server names
* Add config options and enforcement for dev/test servers and servers starting with a special character
* Refine bad word logic
* Add installer to dev/test servers
* Change server prefixes
* Special char prefix
* Formatting
* Remove multi words
* Add server types enum
* Add error constants
* Remove sanitize from world level
* Use strn0cpy
* if for whatever reason the world server is not sending an address, use the local address it sends
* Log when world is sending loginserver info
* Force legacy mode when login host is login.eqemulator.net to avoid misconfigurations at least until things change
* Add human IP translation to log messages
* Sanitize world server name
* Code cleanup and renaming member variables
* More cleanup
* Remove this->
* Validation constants
* Key worldserver lookups by both longname and shortname both
* Update allowed character list
* Fix short_name API response field; add world_id to response
* Shorten receiver verbosity
* Remove unnecessary member variables from database and rename database to m_database
* Adjust MAX_SERVER_VERSION_LENGTH
* Fix indents
* [Quest API] Add optional clean name parameter to getnpcnamebyid in Perl/Lua.
- Allows Server Operators to grab the clean name without having to clean it up in their Perl/Lua.
* Convert from a parameter to a method.
* Add safer method.
* Convert to proper type.
* Switch the 2 split calls to SplitString
* Nuke duplicate split in favor of SplitString #1263
* Add a test for SplitString
* Optimize SplitString
Benchmarking:
--------------------------------------------------------------
Benchmark Time CPU Iterations
--------------------------------------------------------------
bench_oldsplit 5201 ns 5201 ns 129500
bench_split 1269 ns 1269 ns 548906
This is splitting a VERY long SpecialAbilities string. This is ~75%
speed up.
* Add a std::string overload for Database::SetMQDetectionFlag
* Replace calls to MakeAnyLenString in client_packet.cpp
At least the SetMQDetectionFlag ones
* Replace MakeAnyLenString calls in client_process
At least SetMQDectectionFlag ones
* Replace MakeAnyLenString in embparser
fmtlib actually is gross here, oh well.
* Replace MakeAnyLenString in merc
* Replace MakeAnyLenString in inventory
Also if'd out an unfinished implementation of Client::GetItemLinkHash
* Replace AppendAnyLenString in zonelist
* Replace AppendAnyLenString in zonelist
* Replace MakeAnyLenString in clientlist
* Nuke MakeAnyLenString/AppendAnyLenString
* Fix formatting string in zonelist
Add Expeditions logging category
Add handlers for all Dynamic Zone/Expedition related opcodes
Add FormatName string_util function to format character names
Add Zone::IsZone helper method
Add cross zone MessageString support with variable parameters
Add static Client method helpers for cross zone messaging
Add #dz gm command to debug expedition cache for current zone