Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add stash support feature #4885

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

Conversation

jromap7
Copy link

@jromap7 jromap7 commented Jan 8, 2025

Pull Request Prelude

  • I have followed [proper The Forgotten Server code styling][code].
  • I have read and understood the [contribution guidelines][cont] before making this PR.
  • I am aware that this PR may be closed if the above-mentioned criteria are not fulfilled.

Changes Proposed

This pull request introduces initial source code changes to establish the base for a new "stash" system in The Forgotten Server. The stash system aims to provide players with a dedicated storage feature for better inventory organization and long-term item management.


Current Status

⚠️ This is a work-in-progress.
The current implementation focuses on laying the groundwork in the source code. It is not yet fully functional or integrated into the game mechanics. This pull request is being shared to invite collaboration from the community to:

  • Test the current implementation.
  • Provide feedback.
  • Suggest improvements.
  • Contribute additional features or functionality.

Key Changes in the Source Code

  1. Added placeholder methods and structures to handle a "stash" system.
  2. Updated relevant files (e.g., player.cpp, luascript.cpp, etc.) to support the concept of stashing items.
  3. Established a framework for future UI or command integration.

Issues Addressed

This pull request does not address a specific issue but is an effort to introduce a new feature collaboratively.


How to Test

  1. Review the changes made in the source code.
  2. Compile the server and look for any compilation errors.
  3. Analyze the initial implementation to ensure it aligns with The Forgotten Server's architecture and coding standards.
  4. Identify potential edge cases or challenges in integrating the stash system into gameplay.

Call for Collaboration

I am seeking feedback and contributions from the community to complete this feature. Specifically, help is welcome for:

  • Designing the user-facing mechanics (e.g., stash commands, UI integration).
  • Optimizing the current code for performance and compatibility.
  • Expanding functionality (e.g., search filters, limits, etc.).

Let’s build this feature together!

@ArturKnopik
Copy link
Contributor

lack of update for db schema
lack of migration lua file for db changes
commented logs
overall comment, after if statatment that returns i preffer to have new line

example for logs and new line from your code

	if (!player) {
		//std::cout << "Error: Player not found for ID: " << playerId << std::endl;
		return;
	} // << LACK OF NEW LINE THERE
	if (!player->isPremium()) {
		//std::cout << "Error: Player does not have a premium account." << std::endl;
		player->sendCancelMessage(RETURNVALUE_YOUNEEDPREMIUMACCOUNT);
		return;
	}

@jromap7
Copy link
Author

jromap7 commented Jan 21, 2025

image

So far, is working as intended (you require some client source modifications that I can also provide)
Anyone can take a look at the code?

@ArturKnopik
Copy link
Contributor

image

So far, is working as intended (you require some client source modifications that I can also provide) Anyone can take a look at the code?

what about Cipsoft client?

@jromap7
Copy link
Author

jromap7 commented Jan 22, 2025

I don't know the protocols and parse/send functions they use for it. But should be easy to tackle. It works with otcv8 with source edits.
If someone can provide me the Cip client parse/send functions for stash I can tweak it easy.
Cheers

@Shawak
Copy link
Contributor

Shawak commented Jan 22, 2025

So you implemented it but it doesnt work with either the cip client or otclient?

@jromap7
Copy link
Author

jromap7 commented Jan 22, 2025

So you implemented it but it doesnt work with either the cip client or otclient?

Thank you for your comment! Let me clarify:

  • OTClient/OTCv8/Mehah: The current implementation supports withdrawing items but lacks the client-side functions necessary to "stow" items. Out-of-the-box, it will only partially work unless the missing functions are added on the client side.

  • CipSoft Client: I have not tested it with the CipSoft client. If anyone can provide the relevant functions or details on how it handles stashing mechanics, I’m happy to tweak the code accordingly to make it compatible.

As this is a work-in-progress feature, the intention is to establish the groundwork for a stash system and invite collaboration to fully implement and refine it. Contributions to make it fully functional (especially for client-side integration) are very welcome!

Let’s work together to make this feature robust and compatible for all users.

@ArturKnopik
Copy link
Contributor

Windows build is not working
commit

commit ecc57cdcc33ad7c964579423fef8072f0059ad81 (HEAD, jromap7/stash-support)
Author: jromap7 <[email protected]>
Date:   Sun Jan 19 15:42:26 2025 +0100
    added migrations, schema, refactored code

Errors

Build started at 16:16...
1>------ Build started: Project: theforgottenserver, Configuration: Debug x64 ------
1>Installing vcpkg dependencies to D:\dev\forgottenserver_AK\vcpkg_installed\x64-windows\
1>"D:\dev\vcpkg\vcpkg.exe" install  --x-wait-for-lock --triplet "x64-windows" --vcpkg-root "D:\dev\vcpkg\\" "--x-manifest-root=D:\dev\forgottenserver_AK\\" "--x-install-root=D:\dev\forgottenserver_AK\vcpkg_installed\x64-windows\\"
1>Detecting compiler hash for triplet x64-windows...
1>Compiler found: D:/programy/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe
1>All requested packages are currently installed.
1>Total install time: 2.3 us
1>The package boost is compatible with built-in CMake targets:
1>
1>    find_package(Boost REQUIRED [COMPONENTS <libs>...])
1>    target_link_libraries(main PRIVATE Boost::boost Boost::<lib1> Boost::<lib2> ...)
1>
1>The package zlib is compatible with built-in CMake targets:
1>
1>    find_package(ZLIB REQUIRED)
1>    target_link_libraries(main PRIVATE ZLIB::ZLIB)
1>
1>The package fmt provides CMake targets:
1>
1>    find_package(fmt CONFIG REQUIRED)
1>    target_link_libraries(main PRIVATE fmt::fmt)
1>
1>    # Or use the header-only version
1>    find_package(fmt CONFIG REQUIRED)
1>    target_link_libraries(main PRIVATE fmt::fmt-header-only)
1>
1>The package openssl is compatible with built-in CMake targets:
1>
1>    find_package(OpenSSL REQUIRED)
1>    target_link_libraries(main PRIVATE OpenSSL::SSL OpenSSL::Crypto)
1>
1>pugixml provides CMake targets:
1>
1>  # this is heuristically generated, and may not be correct
1>  find_package(pugixml CONFIG REQUIRED)
1>  target_link_libraries(main PRIVATE pugixml::shared pugixml::pugixml)
1>
1>pugixml provides pkg-config modules:
1>
1>  # Light-weight, simple and fast XML parser for C++ with XPath support.
1>  pugixml
1>
1>libmariadb provides CMake targets:
1>
1>  # this is heuristically generated, and may not be correct
1>  find_package(unofficial-libmariadb CONFIG REQUIRED)
1>  target_link_libraries(main PRIVATE unofficial::libmariadb)
1>
1>libmariadb provides pkg-config modules:
1>
1>  # MariaDB Connector/C dynamic library
1>  libmariadb
1>
1>Use this package via the module FindLua that comes with CMake. To use in your CMakeLists.txt:
1>
1>    find_package(Lua REQUIRED)
1>    target_include_directories(main PRIVATE ${LUA_INCLUDE_DIR})
1>    target_link_libraries(main PRIVATE ${LUA_LIBRARIES})
1>
1>unity_0AGSI5G3Z5535N51.cpp
1>unity_1DPEEZ4LZRJ3S1Z0.cpp
1>unity_1VLF5P562DOPEF10.cpp
1>unity_3T9N5MQW2VCLDS2A.cpp
1>unity_5IH14NGQD9NGDU3L.cpp
1>unity_77FSC3BGNP8NH6V1.cpp
1>unity_BGSH1P4X1A35WXT6.cpp
1>unity_DZ3LR55GLXSB1BAK.cpp
1>unity_EWLV0PP6KZONBJVU.cpp
1>unity_G04P1EHV4K1HTVG0.cpp
1>unity_GPM7005YF04EK7DS.cpp
1>unity_JH3YLTMRQOI8JJHS.cpp
1>unity_LI1VAWKX6BHX46T0.cpp
1>unity_NCM8KITUJTRYAHZB.cpp
1>unity_NU1WWO76DPW2I2CD.cpp
1>unity_S3W7OSCI7BZUEWNW.cpp
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_77FSC3BGNP8NH6V1.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_LI1VAWKX6BHX46T0.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_5IH14NGQD9NGDU3L.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_BGSH1P4X1A35WXT6.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_NCM8KITUJTRYAHZB.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_GPM7005YF04EK7DS.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_DZ3LR55GLXSB1BAK.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_NU1WWO76DPW2I2CD.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_G04P1EHV4K1HTVG0.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1VLF5P562DOPEF10.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_EWLV0PP6KZONBJVU.cpp')
1>D:\dev\forgottenserver_AK\src\iologindata.cpp(491,2): error C2065: 'query': undeclared identifier
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_DZ3LR55GLXSB1BAK.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_JH3YLTMRQOI8JJHS.cpp')
1>D:\dev\forgottenserver_AK\src\iologindata.cpp(492,2): error C2065: 'query': undeclared identifier
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_DZ3LR55GLXSB1BAK.cpp')
1>D:\dev\forgottenserver_AK\src\iologindata.cpp(493,30): error C2065: 'query': undeclared identifier
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_DZ3LR55GLXSB1BAK.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3043,14): error C2511: 'void Player::stashContainer(StashContainerList)': overloaded member function not found in 'Player'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(92,7):
1>see declaration of 'Player'
1>D:\dev\forgottenserver_AK\src\game.cpp(2596,36): error C2039: 'areInRange': is not a member of 'Position'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_LI1VAWKX6BHX46T0.cpp')
1>D:\dev\forgottenserver_AK\src\position.h(30,8):
1>see declaration of 'Position'
1>D:\dev\forgottenserver_AK\src\game.cpp(2596,25): error C2171: operator '!' cannot be applied to an operand of type 'unknown-type'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_LI1VAWKX6BHX46T0.cpp')
1>D:\dev\forgottenserver_AK\src\game.cpp(2596,54): error C2677: binary '>': no global operator found which takes type 'const Position' (or there is no acceptable conversion)
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_LI1VAWKX6BHX46T0.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27): error C2597: illegal reference to non-static member 'Player::stashItems'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1322,16):
1>see declaration of 'Player::stashItems'
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27): error C3535: cannot deduce type for 'auto &&' from 'unknown'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27): error C2440: 'initializing': cannot convert from 'unknown' to 'int &&'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>Reason: cannot convert from 'unknown' to 'int'
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>ill-formed reference to a non-static member
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27): error C2672: 'begin': no matching overloaded function found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\valarray(613,23):
1>could be 'const _Ty *std::begin(const std::valarray<_Ty> &) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'const _Ty *std::begin(const std::valarray<_Ty> &) noexcept': could not deduce template argument for 'const std::valarray<_Ty> &' from 'int'
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\valarray(608,17):
1>or       '_Ty *std::begin(std::valarray<_Ty> &) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'_Ty *std::begin(std::valarray<_Ty> &) noexcept': could not deduce template argument for 'std::valarray<_Ty> &' from 'int'
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1834,27):
1>or       '_Ty *std::begin(_Ty (&)[_Size]) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'_Ty *std::begin(_Ty (&)[_Size]) noexcept': could not deduce template argument for '_Ty (&)[_Size]' from 'int'
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1816,30):
1>or       'unknown-type std::begin(const _Container &) noexcept(<expr>)'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	Failed to specialize function template 'unknown-type std::begin(const _Container &) noexcept(<expr>)'
1>		D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>		With the following template arguments:
1>			D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>			'_Container=int'
1>		D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1817,23):
1>		left of '.begin' must have class/struct/union
1>			D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1817,23):
1>			type is 'const _Container'
1>        with
1>        [
1>            _Container=int
1>        ]
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1810,30):
1>or       'unknown-type std::begin(_Container &) noexcept(<expr>)'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	Failed to specialize function template 'unknown-type std::begin(_Container &) noexcept(<expr>)'
1>		D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>		With the following template arguments:
1>			D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>			'_Container=int'
1>		D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1811,23):
1>		left of '.begin' must have class/struct/union
1>			D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1811,23):
1>			type is '_Container'
1>        with
1>        [
1>            _Container=int
1>        ]
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\initializer_list(54,35):
1>or       'const _Elem *std::begin(std::initializer_list<_Elem>) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'const _Elem *std::begin(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int'
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27): error C2672: 'end': no matching overloaded function found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\valarray(623,23):
1>could be 'const _Ty *std::end(const std::valarray<_Ty> &) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'const _Ty *std::end(const std::valarray<_Ty> &) noexcept': could not deduce template argument for 'const std::valarray<_Ty> &' from 'int'
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\valarray(618,17):
1>or       '_Ty *std::end(std::valarray<_Ty> &) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'_Ty *std::end(std::valarray<_Ty> &) noexcept': could not deduce template argument for 'std::valarray<_Ty> &' from 'int'
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1839,27):
1>or       '_Ty *std::end(_Ty (&)[_Size]) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'_Ty *std::end(_Ty (&)[_Size]) noexcept': could not deduce template argument for '_Ty (&)[_Size]' from 'int'
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1828,30):
1>or       'unknown-type std::end(const _Container &) noexcept(<expr>)'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	Failed to specialize function template 'unknown-type std::end(const _Container &) noexcept(<expr>)'
1>		D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>		With the following template arguments:
1>			D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>			'_Container=int'
1>		D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1829,23):
1>		left of '.end' must have class/struct/union
1>			D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1829,23):
1>			type is 'const _Container'
1>        with
1>        [
1>            _Container=int
1>        ]
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1822,30):
1>or       'unknown-type std::end(_Container &) noexcept(<expr>)'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	Failed to specialize function template 'unknown-type std::end(_Container &) noexcept(<expr>)'
1>		D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>		With the following template arguments:
1>			D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>			'_Container=int'
1>		D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1823,23):
1>		left of '.end' must have class/struct/union
1>			D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1823,23):
1>			type is '_Container'
1>        with
1>        [
1>            _Container=int
1>        ]
1>D:\programy\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\initializer_list(59,35):
1>or       'const _Elem *std::end(std::initializer_list<_Elem>) noexcept'
1>	D:\dev\forgottenserver_AK\src\player.cpp(3055,27):
1>	'const _Elem *std::end(std::initializer_list<_Elem>) noexcept': could not deduce template argument for 'std::initializer_list<_Elem>' from 'int'
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27): error C3536: '<begin>$L1': cannot be used before it is initialized
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,27): error C3536: '<end>$L1': cannot be used before it is initialized
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3055,37): error C2100: you cannot dereference an operand of type 'int'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3061,21): error C2065: 'g_config': undeclared identifier
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(3062,9): error C2352: 'Player::sendCancelMessage': a call of a non-static member function requires an object
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(850,7):
1>see declaration of 'Player::sendCancelMessage'
1>D:\dev\forgottenserver_AK\src\player.cpp(3075,13): error C2352: 'Player::addItemOnStash': a call of a non-static member function requires an object
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(317,7):
1>see declaration of 'Player::addItemOnStash'
1>D:\dev\forgottenserver_AK\src\player.cpp(3081,13): error C2352: 'Player::sendTextMessage': a call of a non-static member function requires an object
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(935,7):
1>see declaration of 'Player::sendTextMessage'
1>D:\dev\forgottenserver_AK\src\player.cpp(3086,9): error C2352: 'Player::sendCancelMessage': a call of a non-static member function requires an object
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(850,7):
1>see declaration of 'Player::sendCancelMessage'
1>D:\dev\forgottenserver_AK\src\player.cpp(3093,5): error C2352: 'Player::sendTextMessage': a call of a non-static member function requires an object
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(935,7):
1>see declaration of 'Player::sendTextMessage'
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_S3W7OSCI7BZUEWNW.cpp')
1>D:\dev\forgottenserver_AK\src\protocolgame.cpp(3794,49): error C2065: 'g_config': undeclared identifier
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_NU1WWO76DPW2I2CD.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(4856,13): error C2065: 'g_config': undeclared identifier
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(4861,39): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(4859,27): error C2664: 'ReturnValue Game::internalMoveItem(Cylinder *,Cylinder *,int32_t,Item *,uint32_t,Item **,uint32_t,Creature *,Item *,const Position *,const Position *)': cannot convert argument 2 from 'DepotChest_ptr' to 'Cylinder *'
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_3T9N5MQW2VCLDS2A.cpp')
1>D:\dev\forgottenserver_AK\src\player.cpp(4861,38):
1>No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
1>D:\dev\forgottenserver_AK\src\game.h(216,14):
1>see declaration of 'Game::internalMoveItem'
1>D:\dev\forgottenserver_AK\src\player.cpp(4859,27):
1>while trying to match the argument list '(Cylinder *, DepotChest_ptr, const int32_t, Item *, uint16_t, nullptr)'
1>unity_UMMNY30MTVN23R5P.cpp
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2932,2): error C2660: 'tfs::lua::registerMethod': function does not take 3 arguments
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.h(1546,6):
1>see declaration of 'tfs::lua::registerMethod'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2932,2):
1>while trying to match the argument list '(const char [7], const char [18], overloaded-function)'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2933,2): error C2660: 'tfs::lua::registerMethod': function does not take 3 arguments
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.h(1546,6):
1>see declaration of 'tfs::lua::registerMethod'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2933,2):
1>while trying to match the argument list '(const char [7], const char [14], overloaded-function)'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2934,2): error C2660: 'tfs::lua::registerMethod': function does not take 3 arguments
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.h(1546,6):
1>see declaration of 'tfs::lua::registerMethod'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2934,2):
1>while trying to match the argument list '(const char [7], const char [10], overloaded-function)'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2935,2): error C2660: 'tfs::lua::registerMethod': function does not take 3 arguments
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.h(1546,6):
1>see declaration of 'tfs::lua::registerMethod'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2935,2):
1>while trying to match the argument list '(const char [7], const char [13], overloaded-function)'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2936,2): error C2660: 'tfs::lua::registerMethod': function does not take 3 arguments
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.h(1546,6):
1>see declaration of 'tfs::lua::registerMethod'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(2936,2):
1>while trying to match the argument list '(const char [7], const char [16], overloaded-function)'
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11312,19): error C3861: 'getUserdata': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11319,12): error C3861: 'getNumber': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11321,40): error C3861: 'getString': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11338,19): error C3861: 'getUserdata': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11350,19): error C3861: 'getUserdata': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11351,15): error C3861: 'getBoolean': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11354,3): error C3861: 'pushBoolean': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11363,19): error C3861: 'getUserdata': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11369,16): error C3861: 'getNumber': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11370,15): error C3861: 'getNumber': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11375,2): error C3861: 'pushBoolean': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11381,19): error C3861: 'getUserdata': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11388,12): error C3861: 'getNumber': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11390,40): error C3861: 'getString': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11401,19): error C3861: 'getNumber': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\luascript.cpp(11402,2): error C3861: 'pushBoolean': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_1DPEEZ4LZRJ3S1Z0.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_UMMNY30MTVN23R5P.cpp')
1>D:\dev\forgottenserver_AK\src\player.h(1115,19): error C3861: 'getLastDepotId': identifier not found
1>(compiling source file '/theforgo.A10F9657/x64/Debug/unity_0AGSI5G3Z5535N51.cpp')
1>Done building project "theforgottenserver.vcxproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
========== Build completed at 16:16 and took 23,807 seconds ==========

Copy link
Contributor

@ArturKnopik ArturKnopik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please, fix windows build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants