Giter Site home page Giter Site logo

ztztopia / gtproxy Goto Github PK

View Code? Open in Web Editor NEW
54.0 1.0 38.0 7.5 MB

⚖️ A proxy for growtopia. NO SHADOW BAN!

License: MIT License

CMake 0.48% C++ 6.99% Python 0.01% Makefile 11.80% C 52.95% Roff 15.81% Shell 1.66% M4 0.11% Assembly 10.09% Batchfile 0.05% Meson 0.04% Dockerfile 0.01% HTML 0.01%
growtopia growtopiaproxy

gtproxy's Introduction

Growtopia Proxy

Github Action GitHub Release

Growtopia Proxy is a free and open-source proxy for Growtopia, which enables the user to debug incoming and outgoing packets and even modify them. It is a useful tool for developers who want to analyze the game's network traffic and develop custom features.

Supported Platforms

  • Windows. Tested with Windows 7, 8, 10 and 11.
  • GNU/Linux. Tested with Ubuntu and Arch Linux. (but who use GNU/Linux to play growtopia?)

Features

  • Open source and free to use.
  • Support for Growtopia 3.92 and newer versions.
  • Includes a built-in http server with metadata from the Growtopia client.
  • Works well with sub-server redirection.
  • Supports packet debugging and modification.
  • Includes a configuration file for customization.

Download

The latest application executable can be found on the releases page.

Build

The following dependencies are required to build from source:

To build from source:

  1. Clone the source code of this project: git clone --recurse-submodules https://github.com/ZTzTopia/GTProxy.git
  2. Install Python 3.5+ (Windows only: select 'Add Python to PATH' in installer)
  3. CMake will install needed package with Conan. pip install "conan>2.0"
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
$ cmake --build .

Credits

  • Conan, the C/C++ Package Manager: The open source, decentralized and multi-platform package manager to create and share all your native binaries
  • cpp-httplib: A C++ header-only HTTP/HTTPS server and client library
  • ENet: ENet reliable UDP networking library
  • eventpp: Event Dispatcher and callback list for C++
  • fmt: A modern formatting library
  • glm: OpenGL Mathematics (GLM)
  • LibreSSL is a version of the TLS/crypto stack forked from OpenSSL in 2014, with goals of modernizing the codebase, improving security, and applying best practice development processes
  • magic_enum: Static reflection for enums (to string, from string, iteration)
  • nlohmann_json: JSON for Modern C++
  • pcg-cpp: Random number generator
  • randutils.hpp: Random utilities
  • spdlog: Fast C++ logging library

License

This project is licensed under the MIT License. See the LICENSE file for details.

gtproxy's People

Contributors

aknoryx28 avatar badewen avatar d41z3r avatar feffylaffy avatar gucktubeyt avatar jadlionhd avatar koftrciali avatar rebillionxx avatar ztztopia avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

gtproxy's Issues

Need help

ISSUE: The code execution cannot proceed because enet.dll was not found. Reinstalling the program may fix the problem.
kami#8422

Error in Building

> -- Selecting Windows SDK version 10.0.22000.0 to target Windows 10.0.19045.
> -- The C compiler identification is MSVC 19.36.32535.0
> -- The CXX compiler identification is MSVC 19.36.32535.0
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe - skipped
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe - skipped
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Looking for fcntl
> -- Looking for fcntl - not found
> -- Looking for poll
> -- Looking for poll - not found
> -- Looking for getaddrinfo
> -- Looking for getaddrinfo - not found
> -- Looking for getnameinfo
> -- Looking for getnameinfo - not found
> -- Looking for gethostbyname_r
> -- Looking for gethostbyname_r - not found
> -- Looking for gethostbyaddr_r
> -- Looking for gethostbyaddr_r - not found
> -- Looking for inet_pton
> -- Looking for inet_pton - not found
> -- Looking for inet_ntop
> -- Looking for inet_ntop - not found
> -- Performing Test HAS_MSGHDR_FLAGS
> -- Performing Test HAS_MSGHDR_FLAGS - Failed
> -- Check size of socklen_t
> -- Check size of socklen_t - failed
> -- GTProxy version: 1.4.2
> -- CMake-Conan: first find_package() found. Installing dependencies with Conan
> -- CMake-Conan: Checking if a default profile exists
> C:\Users\Anon\.conan2\profiles\default
> -- CMake-Conan: cmake_system_name=Windows
> -- CMake-Conan: CMake compiler=MSVC
> -- CMake-Conan: CMake cmpiler version=19.36.32535.0
> -- CMake-Conan: [settings] compiler=msvc
> -- CMake-Conan: [settings] compiler.version=193
> -- CMake-Conan: Creating profile C:/Users/Anon/Desktop/New Folder (4)/GTProxy/build/conan_host_profile
> -- CMake-Conan: Profile:
> include(default)
> [settings]
> os=Windows
> compiler=msvc
> compiler.version=193
> compiler.cppstd=20
> [conf]
> tools.cmake.cmaketoolchain:generator=Visual Studio 17 2022
> 
> -- CMake-Conan: Installing both Debug and Release
> -- CMake-Conan: conan install C:/Users/Anon/Desktop/New Folder (4)/GTProxy -of=C:/Users/Anon/Desktop/New Folder  (4)/GTProxy/build/conan -pr;C:/Users/Anon/Desktop/New Folder (4)/GTProxy/build/conan_host_profile;-s;build_type=Release;--build=missing;-g;CMakeDeps
> 
> ======== Input profiles ========
> Profile host:
> [settings]
> arch=x86_64
> build_type=Release
> compiler=msvc
> compiler.cppstd=20
> compiler.version=193
> os=Windows
> [conf]
> tools.cmake.cmaketoolchain:generator=Visual Studio 17 2022
> 
> Profile build:
> [settings]
> arch=x86_64
> build_type=Release
> os=Windows
> 
> 
> ======== Computing dependency graph ========
> Graph root
>     conanfile.py: C:/Users/Anon/Desktop/New Folder (4)/GTProxy\conanfile.py
> Requirements
>     cpp-httplib/0.12.6#5a09d54eac15e6f979e24676a3efd74a - Cache
>     fmt/9.1.0#44302d39c5a4bf7de8a39adc50bb4568 - Cache
>     libressl/3.5.3#ca95bb7d1b2b78bad04f3d37528158a2 - Cache
>     magic_enum/0.8.2#b5498cdc3f30cf47a1eab005f5012f2c - Cache
>     nlohmann_json/3.11.2#a35423bb6e1eb8f931423557e282c7ed - Cache
>     pcg-cpp/cci.20210406#1891d8a4d379a1d2fe13f9a554671bdc - Cache
>     spdlog/1.11.0#d0fdbaa523550b89156084bf42b41c90 - Cache
> Resolved version ranges
>     cpp-httplib/[~0.12]: cpp-httplib/0.12.6
>     libressl/[~3.5]: libressl/3.5.3
>     magic_enum/[~0.8]: magic_enum/0.8.2
>     nlohmann_json/[~3.11]: nlohmann_json/3.11.2
>     spdlog/[~1.11]: spdlog/1.11.0
> 
> ======== Computing necessary packages ========
> Requirements
>     cpp-httplib/0.12.6#5a09d54eac15e6f979e24676a3efd74a:da39a3ee5e6b4b0d3255bfef95601890afd80709#02678a68cfc77945b7854b8f77ed6910 - Download (conancenter)
>     fmt/9.1.0#44302d39c5a4bf7de8a39adc50bb4568:c65737639af0d7f44a44e35634607053fd36505e - Invalid
>     libressl/3.5.3#ca95bb7d1b2b78bad04f3d37528158a2:195038a1abf9ccae641d6c87a357b7cd6aaa1399 - Invalid
>     magic_enum/0.8.2#b5498cdc3f30cf47a1eab005f5012f2c:da39a3ee5e6b4b0d3255bfef95601890afd80709#333126e22e70e6cffa0020b9b419569e - Download (conancenter)
>     nlohmann_json/3.11.2#a35423bb6e1eb8f931423557e282c7ed:da39a3ee5e6b4b0d3255bfef95601890afd80709#2d1a5b1f5d673e1dab536bed20ce000b - Download (conancenter)
>     pcg-cpp/cci.20210406#1891d8a4d379a1d2fe13f9a554671bdc:da39a3ee5e6b4b0d3255bfef95601890afd80709#4df044b64bdbd5d2d27d6b2561937fa8 - Download (conancenter)
>     spdlog/1.11.0#d0fdbaa523550b89156084bf42b41c90:6893df17de16fc531fa0621dc887319637720c4d - Invalid
> 
> ======== Installing packages ========
> ERROR: There are invalid packages:
> fmt/9.1.0: Invalid: 'settings.compiler.runtime' value not defined
> libressl/3.5.3: Invalid: 'settings.compiler.runtime' value not defined
> spdlog/1.11.0: Invalid: 'settings.compiler.runtime' value not defined
> CMake Error at vendor/cmake-conan/conan_support.cmake:147 (message):
>   Conan install failed='6'
> Call Stack (most recent call first):
>   vendor/cmake-conan/conan_support.cmake:178 (conan_install)
>   src/CMakeLists.txt:52 (find_package)
> 
> 
> -- Configuring incomplete, errors occurred!

Yeah... I don't know

build error

cmake --build . [ 52%] Built target enet [ 57%] Building CXX object src/CMakeFiles/Proxy.dir/client/client.cpp.o In file included from /usr/include/c++/13.2.1/x86_64-pc-linux-gnu/bits/c++allocator.h:33, from /usr/include/c++/13.2.1/bits/allocator.h:46, from /usr/include/c++/13.2.1/bits/alloc_traits.h:39, from /usr/include/c++/13.2.1/ext/alloc_traits.h:34, from /usr/include/c++/13.2.1/bits/hashtable_policy.h:39, from /usr/include/c++/13.2.1/bits/hashtable.h:35, from /usr/include/c++/13.2.1/bits/unordered_map.h:33, from /usr/include/c++/13.2.1/unordered_map:41, from /usr/include/c++/13.2.1/functional:63, from /home/theoplegends/.conan2/p/magicad75af1effc2a/p/include/magic_enum/magic_enum.hpp:42, from /home/theoplegends/Työpöytä/prox/GTProxy/src/client/client.cpp:1: /usr/include/c++/13.2.1/bits/new_allocator.h: In instantiation of ‘class std::__new_allocator<player::Player&>’: /usr/include/c++/13.2.1/bits/allocator.h:130:11: required from ‘class std::allocator<player::Player&>’ /usr/include/c++/13.2.1/bits/stl_set.h:113:65: required from ‘class std::set<player::Player&>’ /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:84:34: required from here /usr/include/c++/13.2.1/bits/new_allocator.h:122:7: error: forming pointer to reference type ‘player::Player&’ 122 | allocate(size_type __n, const void* = static_cast<const void*>(0)) | ^~~~~~~~ /usr/include/c++/13.2.1/bits/new_allocator.h:152:7: error: forming pointer to reference type ‘player::Player&’ 152 | deallocate(_Tp* __p, size_type __n __attribute__ ((__unused__))) | ^~~~~~~~~~ /usr/include/c++/13.2.1/bits/allocator.h: In instantiation of ‘class std::allocator<player::Player&>’: /usr/include/c++/13.2.1/bits/stl_set.h:113:65: required from ‘class std::set<player::Player&>’ /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:84:34: required from here /usr/include/c++/13.2.1/bits/allocator.h:189:7: error: forming pointer to reference type ‘player::Player&’ 189 | allocate(size_t __n) | ^~~~~~~~ /usr/include/c++/13.2.1/bits/allocator.h:203:7: error: forming pointer to reference type ‘player::Player&’ 203 | deallocate(_Tp* __p, size_t __n) | ^~~~~~~~~~ /usr/include/c++/13.2.1/bits/alloc_traits.h: In instantiation of ‘struct std::allocator_traits<std::allocator<player::Player&> >’: /usr/include/c++/13.2.1/ext/alloc_traits.h:45:10: required from ‘struct __gnu_cxx::__alloc_traits<std::allocator<player::Player&>, player::Player&>’ /usr/include/c++/13.2.1/bits/stl_set.h:131:22: required from ‘class std::set<player::Player&>’ /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:84:34: required from here /usr/include/c++/13.2.1/bits/alloc_traits.h:437:13: error: forming pointer to reference type ‘player::Player&’ 437 | using pointer = _Tp*; | ^~~~~~~ /usr/include/c++/13.2.1/bits/alloc_traits.h:440:13: error: forming pointer to reference type ‘player::Player&’ 440 | using const_pointer = const _Tp*; | ^~~~~~~~~~~~~ /usr/include/c++/13.2.1/ext/alloc_traits.h: In instantiation of ‘struct __gnu_cxx::__alloc_traits<std::allocator<player::Player&>, player::Player&>’: /usr/include/c++/13.2.1/bits/stl_set.h:131:22: required from ‘class std::set<player::Player&>’ /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:84:34: required from here /usr/include/c++/13.2.1/ext/alloc_traits.h:61:23: error: ‘allocate’ has not been declared in ‘__gnu_cxx::__alloc_traits<std::allocator<player::Player&>, player::Player&>::_Base_type’ 61 | using _Base_type::allocate; | ^~~~~~~~ /usr/include/c++/13.2.1/ext/alloc_traits.h:62:23: error: ‘deallocate’ has not been declared in ‘__gnu_cxx::__alloc_traits<std::allocator<player::Player&>, player::Player&>::_Base_type’ 62 | using _Base_type::deallocate; | ^~~~~~~~~~ In file included from /usr/include/c++/13.2.1/map:62, from /home/theoplegends/Työpöytä/prox/GTProxy/lib/eventpp/include/eventpp/eventpolicies.h:21, from /home/theoplegends/Työpöytä/prox/GTProxy/lib/eventpp/include/eventpp/callbacklist.h:17, from /home/theoplegends/Työpöytä/prox/GTProxy/src/client/client.hpp:2, from /home/theoplegends/Työpöytä/prox/GTProxy/src/client/client.cpp:5: /usr/include/c++/13.2.1/bits/stl_tree.h: In instantiation of ‘class std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >’: /usr/include/c++/13.2.1/bits/stl_set.h:135:17: required from ‘class std::set<player::Player&>’ /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:84:34: required from here /usr/include/c++/13.2.1/bits/stl_tree.h:540:49: error: forming pointer to reference type ‘std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::value_type’ {aka ‘player::Player&’} 540 | typedef value_type* pointer; | ^~~~~~~ /usr/include/c++/13.2.1/bits/stl_tree.h:541:49: error: forming pointer to reference type ‘std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::value_type’ {aka ‘player::Player&’} 541 | typedef const value_type* const_pointer; | ^~~~~~~~~~~~~ In file included from /usr/include/c++/13.2.1/set:63, from /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:2, from /home/theoplegends/Työpöytä/prox/GTProxy/src/client/client.cpp:6: /usr/include/c++/13.2.1/bits/stl_set.h: In instantiation of ‘class std::set<player::Player&>’: /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:84:34: required from here /usr/include/c++/13.2.1/bits/stl_set.h:520:7: error: ‘std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(value_type&&) [with _Key = player::Player&; _Compare = std::less<player::Player&>; _Alloc = std::allocator<player::Player&>; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other = std::allocator<player::Player&>; typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key> = __gnu_cxx::__alloc_traits<std::allocator<player::Player&>, player::Player&>::rebind<player::Player&>; typename _Allocator::value_type = player::Player&; value_type = player::Player&]’ cannot be overloaded with ‘std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = player::Player&; _Compare = std::less<player::Player&>; _Alloc = std::allocator<player::Player&>; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other = std::allocator<player::Player&>; typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key> = __gnu_cxx::__alloc_traits<std::allocator<player::Player&>, player::Player&>::rebind<player::Player&>; typename _Allocator::value_type = player::Player&; value_type = player::Player&]’ 520 | insert(value_type&& __x) | ^~~~~~ /usr/include/c++/13.2.1/bits/stl_set.h:511:7: note: previous declaration ‘std::pair<typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator, bool> std::set<_Key, _Compare, _Alloc>::insert(const value_type&) [with _Key = player::Player&; _Compare = std::less<player::Player&>; _Alloc = std::allocator<player::Player&>; typename std::_Rb_tree<_Key, _Key, std::_Identity<_Tp>, _Compare, typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other>::const_iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key>::other = std::allocator<player::Player&>; typename __gnu_cxx::__alloc_traits<_Allocator>::rebind<_Key> = __gnu_cxx::__alloc_traits<std::allocator<player::Player&>, player::Player&>::rebind<player::Player&>; typename _Allocator::value_type = player::Player&; value_type = player::Player&]’ 511 | insert(const value_type& __x) | ^~~~~~ /usr/include/c++/13.2.1/bits/stl_set.h:553:7: error: ‘std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(const_iterator, value_type&&) [with _Key = player::Player&; _Compare = std::less<player::Player&>; _Alloc = std::allocator<player::Player&>; iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; const_iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; value_type = player::Player&]’ cannot be overloaded with ‘std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(const_iterator, const value_type&) [with _Key = player::Player&; _Compare = std::less<player::Player&>; _Alloc = std::allocator<player::Player&>; iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; const_iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; value_type = player::Player&]’ 553 | insert(const_iterator __position, value_type&& __x) | ^~~~~~ /usr/include/c++/13.2.1/bits/stl_set.h:548:7: note: previous declaration ‘std::set<_Key, _Compare, _Alloc>::iterator std::set<_Key, _Compare, _Alloc>::insert(const_iterator, const value_type&) [with _Key = player::Player&; _Compare = std::less<player::Player&>; _Alloc = std::allocator<player::Player&>; iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; const_iterator = std::_Rb_tree<player::Player&, player::Player&, std::_Identity<player::Player&>, std::less<player::Player&>, std::allocator<player::Player&> >::const_iterator; value_type = player::Player&]’ 548 | insert(const_iterator __position, const value_type& __x) | ^~~~~~ /usr/include/c++/13.2.1/bits/stl_tree.h: In instantiation of ‘struct std::_Rb_tree_const_iterator<player::Player&>’: /home/theoplegends/Työpöytä/prox/GTProxy/src/client/../packet/packet_helper.hpp:84:34: required from here /usr/include/c++/13.2.1/bits/stl_tree.h:332:26: error: forming pointer to reference type ‘player::Player&’ 332 | typedef const _Tp* pointer; | ^~~~~~~ In file included from /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/fmt/fmt.h:31, from /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/common.h:50, from /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/spdlog.h:12, from /home/theoplegends/Työpöytä/prox/GTProxy/src/client/client.cpp:2: /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h: In instantiation of ‘constexpr decltype (ctx.begin()) fmt::v10::detail::parse_format_specs(ParseContext&) [with T = packet::NetMessageType; ParseContext = compile_parse_context<char>; decltype (ctx.begin()) = const char*]’: /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:2639:51: required from here /home/theoplegends/Työpöytä/prox/GTProxy/src/client/client.cpp:125:21: in ‘constexpr’ expansion of ‘fmt::v10::basic_format_string<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&>("\011{} ({})")’ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:2740:40: in ‘constexpr’ expansion of ‘fmt::v10::detail::parse_format_string<true, char, format_string_checker<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType> >(((fmt::v10::basic_format_string<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&>*)this)->fmt::v10::basic_format_string<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&>::str_, fmt::v10::detail::format_string_checker<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType>(fmt::v10::basic_string_view<char>(((const char*)s))))’ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:2489:44: in ‘constexpr’ expansion of ‘fmt::v10::detail::parse_replacement_field<char, format_string_checker<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType>&>((p + -1), end, (* & handler))’ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:2457:33: in ‘constexpr’ expansion of ‘(& handler)->fmt::v10::detail::format_string_checker<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType>::on_replacement_field((& handler)->fmt::v10::detail::format_string_checker<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType>::on_arg_id(), begin)’ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:2632:20: in ‘constexpr’ expansion of ‘((fmt::v10::detail::format_string_checker<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType>*)this)->fmt::v10::detail::format_string_checker<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType>::on_format_specs(id, begin, begin)’ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:2548:45: error: ‘fmt::v10::detail::type_is_unformattable_for<packet::NetMessageType, char> _’ has incomplete type 2548 | type_is_unformattable_for<T, char_type> _; | ^ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h: In instantiation of ‘constexpr fmt::v10::detail::value<Context> fmt::v10::detail::make_arg(T&) [with bool PACKED = true; Context = fmt::v10::basic_format_context<fmt::v10::appender, char>; T = packet::NetMessageType; typename std::enable_if<PACKED, int>::type <anonymous> = 0]’: /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:1808:51: required from ‘constexpr fmt::v10::format_arg_store<Context, Args>::format_arg_store(T& ...) [with T = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType}; Context = fmt::v10::basic_format_context<fmt::v10::appender, char>; Args = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType}]’ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:1826:18: required from ‘constexpr fmt::v10::format_arg_store<Context, typename std::remove_cv<typename std::remove_reference<_Args>::type>::type ...> fmt::v10::make_format_args(T& ...) [with Context = basic_format_context<appender, char>; T = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType}]’ /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/logger.h:374:75: required from ‘void spdlog::logger::log_(spdlog::source_loc, spdlog::level::level_enum, spdlog::string_view_t, Args&& ...) [with Args = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&}; spdlog::string_view_t = fmt::v10::basic_string_view<char>]’ /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/logger.h:90:13: required from ‘void spdlog::logger::log(spdlog::source_loc, spdlog::level::level_enum, fmt::v10::format_string<T ...>, Args&& ...) [with Args = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&}; fmt::v10::format_string<T ...> = fmt::v10::basic_format_string<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&>]’ /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/logger.h:96:12: required from ‘void spdlog::logger::log(spdlog::level::level_enum, fmt::v10::format_string<T ...>, Args&& ...) [with Args = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&}; fmt::v10::format_string<T ...> = fmt::v10::basic_format_string<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&>]’ /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/logger.h:164:12: required from ‘void spdlog::logger::warn(fmt::v10::format_string<T ...>, Args&& ...) [with Args = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&}; fmt::v10::format_string<T ...> = fmt::v10::basic_format_string<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&>]’ /home/theoplegends/.conan2/p/b/spdlo9b5292a1942e1/p/include/spdlog/spdlog.h:176:31: required from ‘void spdlog::warn(fmt::v10::format_string<T ...>, Args&& ...) [with Args = {std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&}; fmt::v10::format_string<T ...> = fmt::v10::basic_format_string<char, std::basic_string_view<char, std::char_traits<char> >, packet::NetMessageType&>]’ /home/theoplegends/Työpöytä/prox/GTProxy/src/client/client.cpp:125:21: required from here /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:1576:63: error: ‘fmt::v10::detail::type_is_unformattable_for<packet::NetMessageType, char> _’ has incomplete type 1576 | type_is_unformattable_for<T, typename Context::char_type> _; | ^ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:1580:7: error: static assertion failed: Cannot format an argument. To make type T formattable provide a formatter<T> specialization: https://fmt.dev/latest/api.html#udt 1580 | formattable, | ^~~~~~~~~~~ /home/theoplegends/.conan2/p/b/fmtfe2576a40eebe/p/include/fmt/core.h:1580:7: note: ‘formattable’ evaluates to false make[2]: *** [src/CMakeFiles/Proxy.dir/build.make:76: src/CMakeFiles/Proxy.dir/client/client.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:175: src/CMakeFiles/Proxy.dir/all] Error 2 make: *** [Makefile:136: all] Error 2

what I've tried:

  • doing everything from scratch
  • updating all packages
  • trying solutions from closed issues

Growtopia update

Hey! Growtopia received a new update today and the proxy is now not login in :(. Could I know what is the problem here? Thank you for the support on the last issue ❤️

maintenance

When i try to start it it says server is under maintenance, we will be back shortly.
Is that normal or do i have to fix it by myself if that´s even possible

Game Update

It is forcing me to update the game even tho i already have an updated version.

Can't Connect?

I've built the proxy, it's using ports 17000 and 443. I've tried changing to 17091 and 80. (Just a chance if it does work). And both don't seem to work and I keep getting "Getting Server Address | Can't Find Website. Bad Url or No Internet?" and repeats itself even when proxy is up. Hosts file is set to "127.0.0.1 www.growtopia1.com" "127.0.0.1 www.growtopia2.com" "127.0.0.1 growtopia1.com" "127.0.0.1 growtopia2.com" and the error repeats itself... I've even tried using the release version..

Cmake error at conan_support.cmake

Error occurs when building in Termux.

Error:

CMake Error at vendor/cmake-conan/conan_support.cmake:147 (message):
Conan install failed='6'
Call Stack (most recent call first):
vendor/cmake-conan/conan_support.cmake:175 (conan_install)
src/CMakeLists.txt:52 (find_package)

Screenshot_2023-09-01-13-56-40-973_com.termux.png

Build Error

C:\GTProxy\build>cmake` .. -DCMAKE_BUILD_TYPE=Debug
-- Building for: Visual Studio 17 2022
-- Selecting Windows SDK version 10.0.22000.0 to target Windows 10.0.19045.
-- The C compiler identification is MSVC 19.36.32535.0
-- The CXX compiler identification is MSVC 19.36.32535.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.36.32532/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for fcntl
-- Looking for fcntl - not found
-- Looking for poll
-- Looking for poll - not found
-- Looking for getaddrinfo
-- Looking for getaddrinfo - not found
-- Looking for getnameinfo
-- Looking for getnameinfo - not found
-- Looking for gethostbyname_r
-- Looking for gethostbyname_r - not found
-- Looking for gethostbyaddr_r
-- Looking for gethostbyaddr_r - not found
-- Looking for inet_pton
-- Looking for inet_pton - not found
-- Looking for inet_ntop
-- Looking for inet_ntop - not found
-- Performing Test HAS_MSGHDR_FLAGS
-- Performing Test HAS_MSGHDR_FLAGS - Failed
-- Check size of socklen_t
-- Check size of socklen_t - failed
-- GTProxy version: 1.4.2
-- CMake-Conan: first find_package() found. Installing dependencies with Conan
-- CMake-Conan: Checking if a default profile exists
ERROR: Profile not found: default
-- CMake-Conan: The default profile doesn't exist, detecting it.
Found msvc 17
WARN: This profile is a guess of your environment, please check it.
WARN: The output of this command is not guaranteed to be stable and can change in future Conan versions.
WARN: Use your own profile files for stability.
Saving detected profile to C:\Users\qq\.conan2\profiles\default
Detected profile:
[settings]
arch=x86_64
build_type=Release
compiler=msvc
compiler.cppstd=14
compiler.runtime=dynamic
compiler.version=193
os=Windows

-- CMake-Conan: cmake_system_name=Windows
-- CMake-Conan: CMake compiler=MSVC
-- CMake-Conan: CMake cmpiler version=19.36.32535.0
-- CMake-Conan: [settings] compiler=msvc
-- CMake-Conan: [settings] compiler.version=193
-- CMake-Conan: Creating profile C:/GTProxy/build/conan_host_profile
-- CMake-Conan: Profile:
include(default)
[settings]
os=Windows
compiler=msvc
compiler.version=193
compiler.cppstd=20
[conf]
tools.cmake.cmaketoolchain:generator=Visual Studio 17 2022

-- CMake-Conan: Installing both Debug and Release
-- CMake-Conan: conan install C:/GTProxy -of=C:/GTProxy/build/conan -pr;C:/GTProxy/build/conan_host_profile;-s;build_type=Release;--build=missing;-g;CMakeDeps

======== Input profiles ========
Profile host:
[settings]
arch=x86_64
build_type=Release
compiler=msvc
compiler.cppstd=20
compiler.runtime=dynamic
compiler.runtime_type=Release
compiler.version=193
os=Windows
[conf]
tools.cmake.cmaketoolchain:generator=Visual Studio 17 2022

Profile build:
[settings]
arch=x86_64
build_type=Release
compiler=msvc
compiler.cppstd=14
compiler.runtime=dynamic
compiler.runtime_type=Release
compiler.version=193
os=Windows


======== Computing dependency graph ========
cpp-httplib/0.12.6: Not found in local cache, looking in remotes...
cpp-httplib/0.12.6: Checking remote: conancenter
cpp-httplib/0.12.6: Downloaded recipe revision 5a09d54eac15e6f979e24676a3efd74a
fmt/9.1.0: Not found in local cache, looking in remotes...
fmt/9.1.0: Checking remote: conancenter
fmt/9.1.0: Downloaded recipe revision 44302d39c5a4bf7de8a39adc50bb4568
libressl/3.5.3: Not found in local cache, looking in remotes...
libressl/3.5.3: Checking remote: conancenter
libressl/3.5.3: Downloaded recipe revision ca95bb7d1b2b78bad04f3d37528158a2
magic_enum/0.8.2: Not found in local cache, looking in remotes...
magic_enum/0.8.2: Checking remote: conancenter
magic_enum/0.8.2: Downloaded recipe revision b5498cdc3f30cf47a1eab005f5012f2c
nlohmann_json/3.11.2: Not found in local cache, looking in remotes...
nlohmann_json/3.11.2: Checking remote: conancenter
nlohmann_json/3.11.2: Downloaded recipe revision a35423bb6e1eb8f931423557e282c7ed
pcg-cpp/cci.20210406: Not found in local cache, looking in remotes...
pcg-cpp/cci.20210406: Checking remote: conancenter
pcg-cpp/cci.20210406: Downloaded recipe revision 1891d8a4d379a1d2fe13f9a554671bdc
spdlog/1.11.0: Not found in local cache, looking in remotes...
spdlog/1.11.0: Checking remote: conancenter
spdlog/1.11.0: Downloaded recipe revision 8b4bd1da26e0ec97698369d6224d93bf
Graph root
    conanfile.py: C:/GTProxy\conanfile.py
Requirements
    cpp-httplib/0.12.6#5a09d54eac15e6f979e24676a3efd74a - Downloaded (conancenter)
    fmt/9.1.0#44302d39c5a4bf7de8a39adc50bb4568 - Downloaded (conancenter)
    libressl/3.5.3#ca95bb7d1b2b78bad04f3d37528158a2 - Downloaded (conancenter)
    magic_enum/0.8.2#b5498cdc3f30cf47a1eab005f5012f2c - Downloaded (conancenter)
    nlohmann_json/3.11.2#a35423bb6e1eb8f931423557e282c7ed - Downloaded (conancenter)
    pcg-cpp/cci.20210406#1891d8a4d379a1d2fe13f9a554671bdc - Downloaded (conancenter)
    spdlog/1.11.0#8b4bd1da26e0ec97698369d6224d93bf - Downloaded (conancenter)
Resolved version ranges
    cpp-httplib/[~0.12]: cpp-httplib/0.12.6
    libressl/[~3.5]: libressl/3.5.3
    magic_enum/[~0.8]: magic_enum/0.8.2
    nlohmann_json/[~3.11]: nlohmann_json/3.11.2
    spdlog/[~1.11]: spdlog/1.11.0
ERROR: Version conflict: spdlog/1.11.0->fmt/10.0.0, ->fmt/9.1.0.
CMake Error at vendor/cmake-conan/conan_support.cmake:147 (message):
  Conan install failed='1'
Call Stack (most recent call first):
  vendor/cmake-conan/conan_support.cmake:178 (conan_install)
  src/CMakeLists.txt:52 (find_package)


CMake Error at src/CMakeLists.txt:52 (find_package):
  By not providing "Findfmt.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "fmt", but
  CMake did not find one.

  Could not find a package configuration file provided by "fmt" with any of
  the following names:

    fmtConfig.cmake
    fmt-config.cmake

  Add the installation prefix of "fmt" to CMAKE_PREFIX_PATH or set "fmt_DIR"
  to a directory containing one of the above files.  If "fmt" provides a
  separate development package or SDK, be sure it has been installed.


-- Configuring incomplete, errors occurred!

why

How to compile/run the proxy?

Clone the source code of this project: git clone --recurse-submodules https://github.com/ZTzTopia/GTProxy.git
Install Python 3.5+ (Windows only: select 'Add Python to PATH' in installer)
CMake will install needed package with Conan. pip install "conan>2.0"
$ mkdir build
$ cd build
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
$ cmake --build .

I have done these commands already, but now how do I run? I opened src/build/Proxy.sln but when I build it says access denied

Not working in private server

Here's my config.json:
{
"command": {
"prefix": "!"
},
"host": {
"port": 17007
},
"misc": {
"forceUpdateGameVersion": false,
"forceUpdateGameVersionProtocol": false
},
"server": {
"gameVersion": "4.26",
"host": "141.95.66.239",
"platformID": "4",
"protocol": 191
}
}

and here is the CreativePS information got from 79.137.35.236/growtopia/server_data.php
server|141.95.66.239
port|17007
type|1
#maint|$The CreativePS servers`` are under #maintenance for launching Season 8 Update! `#Be right back...
beta_server|beta.creativeps.eu
beta_port|16999
type2|0
beta_type|1
meta|Creative_175972843085195812681
RTENDMARKERBS1001

Login Packet

Growtopia added KLV in 4.23 how to generate it

Ask

this proxy can run in android ?
using termux

Login Error

image

[info] The client just disconnected from the server at 213.179.209.168:17181!

crash

it crashes on login
Uploading image.png…

Not working

Nothing happens when built and launched successfully other than it printing the default log statements.
Näyttökuva 2024-03-05 212122

Nothing happening

image
even if i try logging in gt nothing happening
just outputs these commands when u turn it on and thats it
image

helpp

add me on discord Bjot#8580

Error while try to build

Hi. I was also getting an error while running the command "cmake .. -DCMAKE_BUILD_TYPE=Debug" but I fixed the problem by changing the fmt version to 10.0.0 from the conanfile.py file.
"cmake --build ." I also get an error when I run the command and I don't know how to solve it.

Here is the error:
message.txt

error CMAKE_PROJECT_TOP_LEVEL_INCLUDES

-- Selecting Windows SDK version 10.0.22621.0 to target Windows 10.0.19045.
CMake Error: CMAKE_PROJECT_TOP_LEVEL_INCLUDES file does not exist: C:/Users/anakbabi/Downloads/GTProxy-develop (1)/GTProxy-develop/cmake/cmake-conan/conan_provider.cmake
CMake Error at lib/CMakeLists.txt:1 (project):
Language 'C' is currently being enabled. Recursive call not allowed.

Auto Collect?

Hey, I noticed in the readme you had pathfinding for autocollect added or something like that, so how would I activate auto collect?

Compilation errors

Unable to get the executable when i run cmake --build .
Errors:

gtproxy\src\client\../utils/hash.h(6): error C3615: constexpr function 'utils::fnv1a_hash' cannot result in a constant expression
GTProxy\src\client\client.cpp(113): error C2051: case expression not constant error C2051: case expression not constant
GTProxy\src\client\client.cpp(127): error C2051: case expression not constant
gtproxy\src\utils\hash.h(6): error C3615: constexpr function 'utils:: fnv1a_hash' cannot result in a constant expression
gtproxy\src\utils\hash.h(6): error C3615: constexpr function 'utils:: 
fnv1a_hash' cannot result in a constant expression 

Login Issue

I Cant Login Gt With Proxy Now. Its Stuck In Loggin On, The Problem Is About Login Spoof I Think But I Cant Find Any Fix For It. Anyone Knows How To Fix iT?

send raw packet method

can someone help me about send raw packet kinder a bit confuses for me

int send_raw_packet(eNetMessageType type, GameUpdatePacket* game_update_packet, std::size_t length = sizeof(GameUpdatePacket), uint8_t* extended_data = nullptr, enet_uint32 flags = ENET_PACKET_FLAG_RELIABLE);

eNetMessageType type (packet type from ePacketType?)
GameUpdatePacket* game_update_packet (make a list to create a packet send to server?)
std::size_t length = sizeof(GameUpdatePacket) (size data packet?)
uint8_t* extended_data (extended data size data again?? from list game_update_packet)
flag (ENET_PACKET_FLAG_RELIABLE peer server)

Redirecting issue

When Redirecting the growtopia client sends: PACKET_DISCONNECT
if proxy dont disconnects sometimes redirecting will not work to fix it:
if (game_update_packet->type == player::PACKET_DISCONNECT and m_client->is_redirecting()) {
m_peer->disconnect_now();

}
but it sometimes growtopia client says: Disconnted trying reconnect...
i dont know why

after last edit error building

here is the error building

C:\Users\apolet\Desktop\proxy\GTProxy\src\server\server.cpp(150,91): error C2664: 'int player::Peer::send_packet(player::eNetM
essageType,const std::string &)' : 2 argument 'std::stringstream' from the value 'const std::string &'
turned into value it can't be imagined [C:\Users\alper\Desktop\proxy\build\src\Source.vcxproj]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.