Jump to content

Pysis

Members
  • Posts

    45
  • Joined

  • Last visited

  • Days Won

    1
  • Donations

    0.00 GBP 

Pysis last won the day on June 17 2020

Pysis had the most liked content!

Core Infomation

  • Core
    Zero

Contact Methods

  • Discord
    Pysis#1215

Recent Profile Visitors

1141 profile views

Pysis's Achievements

Advanced Member

Advanced Member (3/3)

5

Reputation

1

Community Answers

  1. Pysis

    account

    Just to document for others: This might be a problem using server software that is not actually supported by this organization, but could be similarly-named, such as CMangos or other various and specific repacks of either, causing these differences, which is why it is recommended to access the software from here or GitHub, release or source variants, or access the correct sites supporting that other software.
  2. Pysis

    account

    https://github.com/mangos/realmd/blob/master/Auth/AuthSocket.cpp#L393 Seems to still use that hash. This document mentions them as the validated and salt vlues. https://github.com/mangos/realmd/blob/master/Auth/AuthSocket.cpp#L225 `AuthSocket::_SetVSFields` has its code you can view, and mentions this: https://en.wikipedia.org/wiki/Secure_Remote_Password_protocol And the similar with these code sections too: https://github.com/mangoszero/server/blob/master/src/game/WorldHandlers/AccountMgr.cpp#L80 https://github.com/mangoszero/server/blob/master/src/game/WorldHandlers/AccountMgr.cpp#L380 `AccountMgr::CalculateShaPassHash` I also see this website account creation code sample too: https://github.com/i-am-fyre/BasicCMS/blob/master/main.py#L94 Maybe you don't need the other values. They could just be temporary per auth exchange with a client following SRP. Seems to be based on this code: https://github.com/mangoszero/server/blob/master/src/game/WorldHandlers/AccountMgr.cpp#245 With this only using the 2 values: https://github.com/mangoszero/server/blob/master/src/game/WorldHandlers/AccountMgr.cpp#361 It's possible you aren't colon-concatenating them first. I also don't think that the property is version specific, and is still used for all older, vanilla clients, since realmd handles account procedures, and is a submodule to all of the server projects.
  3. Having install log files or described procedures always helps more, but I believe jwh's SD3 is not current, and could probably benefit from a `git submodule update` or `pushd server/src/modules/SD3; git pull origin master; popd`. This commit published near before the date of this post will likely help once being included by that update: ⋊> .../server on master ⨯ pushd src/modules/SD3; git log -1 --format=reference (read); popd; read> 61e0b547c827cca9c09714d3580259f991f36fbd 61e0b54 (Replaced SIZEFMTD macro with "%zu" format parameter, 2024-06-04) This commit in Zero's Server repository helped incorporate that SD3 commit: ⋊> /server on master ⨯ git log -1 --format=reference (read); read> 5ab90165fb888d3ee020006d81823247038925a7 5ab90165 ([SD3] Updated SD3, 2024-06-04) My working environment ⋊> neofetch --stdout distro distro: Fedora release 40 (Forty) x86_64 ⋊> gcc --version gcc (GCC) 14.1.1 20240701 (Red Hat 14.1.1-7) Copyright (C) 2024 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ⋊> cmake --version cmake version 3.28.2 CMake suite maintained and supported by Kitware (kitware.com/cmake). ⋊> pushd server; git log -1 --format=reference; popd; 668c89ff (Update core_windows_build.yml, 2024-06-05) ⋊> pushd server/src/modules/SD3; git log -1 --format=reference; popd; 519bbc3 (Merge branch 'master' into patch-1, 2024-06-04) The non-working environment that I have reproduced locally, that may match the poster's ⋊> on master ⨯ git log -1 --format=reference 668c89ff (Update core_windows_build.yml, 2024-06-05) ⋊> on master ⨯ pushd src/modules/SD3; git log -1 --format=reference; popd; 6ee2d21 (Update SD3 to use C++17, 2024-03-10) ⋊> .../server on master ⨯ sudo env \ USE_FZF='true' \ SKIP_USER='true' \ KEEP_USER='true' \ SKIP_PATHS='true' \ SKIP_UNINSTALL='true' \ AUTO_DEFAULT_OPTIONS='true' \ DB_COMMAND="mariadb -u$dbUser -p$dbPP" \ SERVER_USER=(id -un) \ linux/getmangos.sh \ ; Cleaning the old build... This script builds the MaNGOS server. Options that can be used in order to configure the process: General: CMAKE_INSTALL_PREFIX Path where the server should be installed to BUILD_MANGOSD Build the main server BUILD_REALMD Build the login server BUILD_TOOLS Build the map/vmap/mmap extractors USE_STORMLIB Use StormLib for reading MPQs SOAP Enable remote access via SOAP PCH Enable use of precompiled headers DEBUG Debug build, only for systems without IDE (Linux, *BSD) Scripting engines: SCRIPT_LIB_ELUNA Compile with support for Eluna scripts SCRIPT_LIB_SD3 Compile with support for ScriptDev3 scripts Modules: PLAYERBOTS Enable Player Bots To set an option simply type -D<OPTION>=<VALUE> after 'cmake <srcs>'. Also, you can specify the generator with -G. See 'cmake --help' for more details For example: cmake .. -DCMAKE_INSTALL_PREFIX=/opt/mangos -DSCRIPT_LIB_SD3=0 -- Lua version: lua52 -- Lua linking: dynamic =================================================== Mangos revision : 668c89ff2cc5+ 2024-06-05 15:05:43 +0100 (master branch) Build type : Release Install server(s) to : .../server_install/bin Install configs to : .../server_install/etc Detailed Information +-- opeating system : Linux-6.9.9-200.fc40.x86_64 +-- cmake version : 3.28.2 Build main server : Yes (default) +-- with Eluna script engine +-- with SD3 script engine Build login server : Yes (default) Support for SOAP : No (default) Build tools : No =================================================== -- Configuring done (0.3s) -- Generating done (0.2s) -- Build files have been written to: .../server_build ...... [ 54%] Linking CXX static library libshared.a [ 54%] Built target shared [ 54%] Built target revision_data.h [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/cmake_pch.hxx.gch [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/pch.cpp.o [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/include/precompiled.cpp.o [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/include/sc_creature.cpp.o [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/include/sc_grid_searchers.cpp.o [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/include/sc_instance.cpp.o [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/system/ScriptDevMgr.cpp.o [ 55%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/system/ScriptLoader.cpp.o [ 56%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/system/system.cpp.o [ 56%] Building CXX object src/modules/SD3/CMakeFiles/mangosscript.dir/base/escort_ai.cpp.o .../server/src/modules/SD3/base/escort_ai.cpp: In member function ‘void npc_escortAI::Start(bool, const Player*, const Quest*, bool, bool)’: .../server/src/modules/SD3/base/escort_ai.cpp:635:44: error: expected ‘)’ before ‘SIZEFMTD’ 635 | debug_log("SD3: EscortAI started with " SIZEFMTD " waypoints. Run = %d, PlayerGuid = %s", WaypointList.size(), m_bIsRunning, m_playerGuid.GetString().c_str()); | ~ ^~~~~~~~~ | ) make[2]: *** [src/modules/SD3/CMakeFiles/mangosscript.dir/build.make:221: src/modules/SD3/CMakeFiles/mangosscript.dir/base/escort_ai.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:698: src/modules/SD3/CMakeFiles/mangosscript.dir/all] Error 2 make: *** [Makefile:136: all] Error 2 ================================================================================ The selected tasks have been completed. If you built or installed Mangos, please edit your configuration files to use the database you configured for your MaNGOS server. If you have not configured your databases yet, please do so before starting your server for the first time. ================================================================================
  4. Pysis

    account

    I was helping with `realmd` account creation today, and wanted to add some of my own documentation from the personal exchange to further help the public with technical literacy for this topic. https://www.getmangos.eu/wiki/referenceinfo/otherfiles/managing-user-accounts-using-3rd-party-apps-r20088/ This page actually provides this more generic information well, but wanted to link that to here for that reason, and also in case I can add anything more useful too. My statements are not producing the same value, but this is the clarified process, with differing examples. Remember to replace `username` and `password` with your intended, respective values, and your resulting SHA1 hash will most likely be different than my `5b...78` hash. For the shell command examples, I provide alternatives that request user input to compete, to make this more obvious. Using the MariaDB included, or associated, GUI application client, HeidiSQL: https://www.heidisql.com/help.php#queries I use DBeaver, but have also used MySQL Workbench in the past, along with SequelPro for Apple computers, and Navicat even longer ago. The base SQL, mentioned above, that I also wanted to represent a bit differently: `SELECT SHA1(CONCAT(UPPER('username'), ':', UPPER('password')));` Fish shell command line statements: ``` ⋊> echo -n 'SELECT SHA1(CONCAT(UPPER(\'username\'), \':\', UPPER(\'password\')));' | mariadb -s -p"$dbRootPP"; 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ⋊> echo -n 'SELECT SHA1(\''(read -P 'Username: '| upcase)':'(read -P 'Password: '| upcase)'\');' | mariadb -s -p"$dbRootPP"; Username: username Password: password 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ⋊> echo -n 'USERNAME:PASSWORD' | sha1sum | cut -d' ' -f1 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ⋊> echo -n (read -P 'Username: '| upcase)':'(read -P 'Password: '| upcase) | sha1sum | cut -d' ' -f1 Username: username Password: password 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ⋊> echo -n 'USERNAME:PASSWORD' | openssl sha1 | cut -d' ' -f2 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ⋊> echo -n (read -P 'Username: '| upcase)':'(read -P 'Password: '| upcase) | openssl sha1 | cut -d' ' -f2 Username: username Password: password 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ⋊> echo -n 'USERNAME:PASSWORD' | /usr/bin/openssl sha1 | cut -d' ' -f2 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ⋊> echo -n (read -P 'Username: '| upcase)':'(read -P 'Password: '| upcase) | /usr/bin/openssl sha1 | cut -d' ' -f2 Username: username Password: password 5b039d152722e351c8bdebcf06fd8cd4e5244d78 ``` My environment: ``` ⋊> neofetch --stdout distro kernel shell term distro: Fedora release 39 (Thirty Nine) x86_64 kernel: 6.6.13-200.fc39.x86_64 shell: fish 3.7.0 term: gnome-terminal ⋊> mariadb --version mysql Ver 15.1 Distrib 10.1.21-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2 ⋊> sha1sum --version sha1sum (GNU coreutils) 9.3 Copyright (C) 2023 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Written by Ulrich Drepper, Scott Miller, and David Madore. ⋊> openssl version OpenSSL 1.1.1b 26 Feb 2019 ⋊> /usr/bin/openssl version OpenSSL 3.1.1 30 May 2023 (Library: OpenSSL 3.1.1 30 May 2023) ``` The only remaining problem was that the new account, or at some point, any account, were all receiving messages that they were banned, or the account closed, and could basically not login using the WoW client. Changing `LogLevel` to '2' in `realmd.conf` helped show us a message about an AuthChallenge code module reporting "Banned IP ...". https://github.com/search?q=repo%3Amangos%2Frealmd banned&type=code https://github.com/mangos/realmd/blob/8c08d47a9a3e6c64007be67074e7c587a5e63e5e/Auth/AuthSocket.cpp#L375 This could be answered in another article, and I may have seem some posts mentioning various strategies, but I want to briefly list the possible solutions for these other problems here, since they are at least close in function and process. What may have fixed this these problems, while even using the localhost IP address 127.0.0.1 in the `realmd.conf` file, is restarting the realmd process. https://www.getmangos.eu/forums/topic/10721-says-my-account-is-closed/#comment-79515 https://www.getmangos.eu/forums/topic/10690-stuck-on-connected/#comment-79328 For specific account problems, try using the same localhost IP address as the `localAddress`, but changing the `address` field to the external IP address of the machine the server is being hosted on. An alternative is deleting the `address` field record's data. We also checked reduced `failedLogins` to '0', any `active` field to '1', or `locked` to '0', and checking there was no matching record for either IP address in the `ip_banned` table, or even that it was empty. Also, for any solution in this post, make sure all database changes are saved/persisted, so you can reload and find the data you updated again, which is more applicable when using GUI application clients to interact with a database, but also any command line execution in case errors are reported there too.
  5. https://github.com/mangosthree/server/commit/6dd4317dbba12e3245efba6be33324228ef80cfe You can post some local repo details, like `git log -1 --pretty=oneline`. `git pull --recurse-submodules`
  6. Can try tools focused on the parts to help simplify complex problems such as Wireshark and nc in sending and receiving mode, possibly alternating between TCP and UDP packet types too.
  7. If you need to configure the router, then you are testing access external to your LAN, and need to use that IP instead. https://whatismyipaddress.com/ Staying internal to your LAN would only use the typical 192.168.*.* IP address. Whichever scenario you are using, pick that one, and it does need to be set to bind in your conf file, then restart the servers.
  8. Post does not have much detail. Did you perform the conf bind and DB IP update steps? If that's fine, and only on LAN, it should not be a router setting, unless it is using some sort of isolation feature, just configure an OS firewall to allow traffic for that program or port then.
  9. Pysis

    Installing MariaDB

    Using a client on the command line is always possible, and may even support login path like MySQL does. If you want a GUI like MySQL Workbench though, that may still work and just mention a warning every time, or Maria includes HeidiSQL automatically.
  10. Confirmed fixed! https://github.com/mangostwo/database/commit/2f15ca885d377af80df34b4686e654476d1980c7
  11. You can better identify problems that affect the world server (mangosd) using this process. Do this by attaching to the running process from a Microsoft Visual Studio (MSVS) instance with the code project repository downloaded, configured, and the Solution (sln) file opened. The keyboard shortcut for this should be "Ctrl+Alt+P", and other instructions for performing this in the IDE can be viewed here: Microsoft - Attach to running processes with the Visual Studio debugger I'm not sure that you can do this with any other IDE yet, but there have been several similar packages that accomplish this function for the now unsupported Atom editor, with examples such as PHP xdebug functionality. Also unsure if this can be accomplished using Visual Studio Code or not. If this does not work, or seems strange, make sure the version of the project matches the server, and the server has the associated symbol (pdb) files that match the executable you want to inspect. Once connected, you can set breakpoints and view the process state when those are encountered.
  12. Pysis

    Client File Formats Summary

    For working with each of the formats: BLP: https://github.com/PatrickCyr/BLPConverter/issues/1#issue-1585162886 MPQ:
  13. Pysis

    MPQ File

    For users, I found this utility to work nicely for reading and modifying this type of archive format: MPQ Editor https://www.zezula.net/en/mpq/download.html
  14. It was mentioned, at least for Three/Cata (so Two/WotLK), and possibly any, to use "config.wtf" for all changes, to keep them in the same file, in case you see either file mentioned, both can work, just choose a preference.
  15. Remaining task:
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use