mirror of
https://github.com/Dingo-Shenanigans/ReSkate.git
synced 2026-10-27 02:46:41 +01:00
Fix costume merging, restrict server names, add Centrix tag
- Mod merge: rebuild a merged bundle's chunk metadata the way the game writes it (one record per chunk, in chunk GUID order), so costumes from different mods built on the same game costume keep their textures and meshes - Merge audit checks that layout, and there is a new unit test for it - Server names: only letters, numbers, spaces and - _ [ ] ( ), 1 to 64 characters; the server browser hides servers with other names - New Centrix tag from the backend's "centrix" list: blue and white name, badge and item animation, ranked after Dev and before Creator
This commit is contained in:
1 parent
0d5dfda243
commit
2cdc5ee8df
24 files changed
+645
-29
No files matched your search
@@ -23,6 +23,7 @@ std::string text(const std::filesystem::path &file) {
|
||||
|
||||
int run() {
|
||||
using namespace dingosdk::server;
|
||||
using dingosdk::valid_server_name;
|
||||
const auto folder = std::filesystem::temp_directory_path() / "reskate_server_config_tests";
|
||||
std::filesystem::remove_all(folder);
|
||||
std::filesystem::create_directories(folder);
|
||||
@@ -47,6 +48,15 @@ int run() {
|
||||
const auto reloaded = load_config(file);
|
||||
check(reloaded.name == "Old Server" && !reloaded.boosts && reloaded.votes.map.percent == 60, "Values lost on rewrite");
|
||||
|
||||
// Server names: letters, digits, spaces and - _ [ ] ( ) only.
|
||||
check(valid_server_name("Old Server") && valid_server_name("[EU] Skate_Park-2 (24x7)") && valid_server_name("a"),
|
||||
"A plain server name was refused");
|
||||
check(!valid_server_name("") && !valid_server_name(std::string(65, 'a')) && !valid_server_name("Best! Server") &&
|
||||
!valid_server_name("caf\xC3\xA9") && !valid_server_name("a.b") && !valid_server_name("<b>x</b>") &&
|
||||
!valid_server_name(" padded") && !valid_server_name("padded ") && !valid_server_name("[]--()") &&
|
||||
!valid_server_name("two\nlines"),
|
||||
"A server name with other characters was accepted");
|
||||
|
||||
// An up-to-date file is left alone.
|
||||
const auto before = std::filesystem::last_write_time(file);
|
||||
added.clear();
|
||||
|
||||
Reference in new issue
Block a user