Jump to content

Official Soul System


Recommended Posts

  • Honorable Member

This is the hidden content, please

This is the hidden content, please

.png

Temporarily boosts the character's physical attack and / or skill damage.
You can learn more about the system from the official wiki page.

 .png

Thanks to @blackdragonx61 for the reversed effect position.

 

  • Metin2 Dev 176
  • kekw 1
  • Eyes 3
  • Not Good 1
  • Good 36
  • Love 7
  • Love 87
Link to comment
Share on other sites

Hey, I want to thank you for the latest release and tell you that I really liked the images you used in your post. They really enhanced the post and I look forward to seeing more from you. Thank you for your hard work and contribution to our online community! Keep up the good work😉!

  • Love 1
  • Love 2
Link to comment
Share on other sites

  • Honorable Member
3 hours ago, WeedHex said:

What about those who have recently bought on your site?

Thanks anyway!

I could answer that, but to be honest, it's none of your business.

Edited by Owsap
  • Facepalm 1
  • Lmao 1
  • Good 1
Link to comment
Share on other sites

How can i fix this? @ Owsap

char_item.cpp: en la función miembro 'bool CHARACTER::UseItemEx(LPITEM, TItemPos)':
char_item.cpp:6409:74: error: el uso de 'auto' en la declaración de parámetros lambda solo está disponible con -std=c++14 o -std=gnu++14
       auto it = std::find_if(soul_map.begin(), soul_map.end(), [&](const auto& kv_pair) { ^~~~
                                                                          char_item.cpp
: En la función lambda:
char_item. cpp:6410:23: error: solicitud de miembro 'segundo' en 'kv_pair', que no es de tipo de clase 'const int'
        return kv_pair.segundo.punto_tipo == afecto.bApplyOn;
                       ^~~~~~
En archivo incluido desde /usr/local/lib/gcc8/include/c++/bits/stl_algobase.h:71,
                 de /usr/local/lib/gcc8/include/c++/bits/char_traits.h:39,
                 de /usr/local/lib/gcc8/include/c++/string:40,
                 de ../../../ Externo/incluir/msl/utils.h:18,
                 desde ../../common/utils.h:1,
                 desde stdafx.h:15,
                 desde char_item.cpp:1:
/usr/local/lib/gcc8/ include/c++/bits/predefined_ops.h: En instanciación de 'bool __gnu_cxx::__ops::_Iter_pred<_Predicate>::operator()(_Iterator) [with _Iterator = std::__detail::_Node_iterator<std::pair< const carácter sin firmar, CARÁCTER::UseItemEx(LPITEM, TItemPos)::SoulData>, false, false>; _Predicado = CARÁCTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>]':
/usr/local/lib/gcc8/include/c++/bits/stl_algo.h:104:42: requerido de '_InputIterator std::__find_if(_InputIterator, _InputIterator, _Predicate, std::input_iterator_tag) [con _InputIterator = std:: __detail::_Node_iterator<std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos)::SoulData>, false, false>; _Predicado = __gnu_cxx::__ops::_Iter_pred<CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)> >]'
/usr/local/lib/gcc8/include/c++/bits/stl_algo.h: 161:23: requerido de '_Iterator std::__find_if(_Iterator, _Iterator, _Predicate) [with _Iterator = std::__detail::_Node_iterator<std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos): :SoulData>, falso, falso>; _Predicado = __gnu_cxx::__ops::_Iter_pred<CHARACTER::UseItemEx(LPITEM, TItemPos)::
/usr/local/lib/gcc8/include/c++/bits/stl_algo.h:3930:28: requerido de '_IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter = std::__detail::_Node_iterator< std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos)::SoulData>, false, false>; _Predicate = CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>]'
char_item.cpp:6411:9: requerido desde aquí
/usr/local/lib/gcc8/include/c++/bits/predefined_ops. h:283:11: error: no hay coincidencia para llamar a '(CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>) (std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM , TItemPos)::SoulData>&)'
  { return bool(_M_pred(*__it)); }
           ^~~~~~~~~~~~~~~~~~~~
char_item.cpp:6409:87: nota: candidato: 'CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>' auto it =
       std::find_if(soul_map.begin(), soul_map.end( ), [&](const auto& kv_pair) {
                                                                                       ^
char_item.cpp:6409:87: nota: ninguna conversión conocida para el argumento 1 de 'std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos):: SoulData>' a 'const int&'
gmake: *** [Makefile:185: .obj/char_item.o] Error 1
root@jailsrc:/usr/src/Server/game/src #

Edited by nicohare711
Link to comment
Share on other sites

  • Honorable Member

@nicohare711

Spoiler
4 minutes ago, nicohare711 said:

¿Cómo puedo arreglar esto? @ Owsap

char_item.cpp: en la función miembro 'bool CHARACTER::UseItemEx(LPITEM, TItemPos)':
char_item.cpp:6409:74: error: el uso de 'auto' en la declaración de parámetros lambda solo está disponible con -std=c++14 o -std=gnu++14
       auto it = std::find_if(soul_map.begin(), soul_map.end(), [&](const auto& kv_pair) { ^~~~
                                                                          char_item.cpp
: En la función lambda:
char_item. cpp:6410:23: error: solicitud de miembro 'segundo' en 'kv_pair', que no es de tipo de clase 'const int'
        return kv_pair.segundo.punto_tipo == afecto.bApplyOn;
                       ^~~~~~
En archivo incluido desde /usr/local/lib/gcc8/include/c++/bits/stl_algobase.h:71,
                 de /usr/local/lib/gcc8/include/c++/bits/char_traits.h:39,
                 de /usr/local/lib/gcc8/include/c++/string:40,
                 de ../../../ Externo/incluir/msl/utils.h:18,
                 desde ../../common/utils.h:1,
                 desde stdafx.h:15,
                 desde char_item.cpp:1:
/usr/local/lib/gcc8/ include/c++/bits/predefined_ops.h: En instanciación de 'bool __gnu_cxx::__ops::_Iter_pred<_Predicate>::operator()(_Iterator) [with _Iterator = std::__detail::_Node_iterator<std::pair< const carácter sin firmar, CARÁCTER::UseItemEx(LPITEM, TItemPos)::SoulData>, false, false>; _Predicado = CARÁCTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>]':
/usr/local/lib/gcc8/include/c++/bits/stl_algo.h:104:42: requerido de '_InputIterator std::__find_if(_InputIterator, _InputIterator, _Predicate, std::input_iterator_tag) [con _InputIterator = std:: __detail::_Node_iterator<std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos)::SoulData>, false, false>; _Predicado = __gnu_cxx::__ops::_Iter_pred<CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)> >]'
/usr/local/lib/gcc8/include/c++/bits/stl_algo.h: 161:23: requerido de '_Iterator std::__find_if(_Iterator, _Iterator, _Predicate) [with _Iterator = std::__detail::_Node_iterator<std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos): :SoulData>, falso, falso>; _Predicado = __gnu_cxx::__ops::_Iter_pred<CHARACTER::UseItemEx(LPITEM, TItemPos)::
/usr/local/lib/gcc8/include/c++/bits/stl_algo.h:3930:28: requerido de '_IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter = std::__detail::_Node_iterator< std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos)::SoulData>, false, false>; _Predicate = CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>]'
char_item.cpp:6411:9: requerido desde aquí
/usr/local/lib/gcc8/include/c++/bits/predefined_ops. h:283:11: error: no hay coincidencia para llamar a '(CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>) (std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM , TItemPos)::SoulData>&)'
  { return bool(_M_pred(*__it)); }
           ^~~~~~~~~~~~~~~~~~~~
char_item.cpp:6409:87: nota: candidato: 'CHARACTER::UseItemEx(LPITEM, TItemPos)::<lambda(const int&)>' auto it =
       std::find_if(soul_map.begin(), soul_map.end( ), [&](const auto& kv_pair) {
                                                                                       ^
char_item.cpp:6409:87: nota: ninguna conversión conocida para el argumento 1 de 'std::pair<const unsigned char, CHARACTER::UseItemEx(LPITEM, TItemPos):: SoulData>' a 'const int&'
gmake: *** [Makefile:185: .obj/char_item.o] Error 1
root@jailsrc:/usr/src/Server/game/src #

 

To fix this, you can either update the compiler flag to use C++14 or later by adding std=c++14 in your Makefile, or you can specify the data type of the lambda parameter explicitly instead of using auto.

For example, instead of:

auto it = std::find_if(soul_map.begin(), soul_map.end(), [&](const auto& kv_pair) {
    return kv_pair.second.point_type == affect.bApplyOn;
});

You can try:

auto it = std::find_if(soul_map.begin(), soul_map.end(), [&](const std::pair<const BYTE, SoulData>& kv_pair) {
    return kv_pair.second.point_type == affect.bApplyOn;
});

 

I will not reply to every single error you could encounter due to C++ version warnings. Please consider upgrading your version to at least C++14.

 

Link to comment
Share on other sites

  • Honorable Member
5 hours ago, nicohare711 said:

@ Owsap
I think you made a mistake in the part of the client source with the subject of subtypes

Care to share what you're referring to exactly?

Link to comment
Share on other sites

  • Premium
Just now, nicohare711 said:

That's none of his business. You simply set the item's size to 0. Your item_proto's fault.

Edited by Metin2 Dev International
Core X - External 2 Internal
  • Lmao 1

 

"Nothing's free in this life.

Ignorant people have an obligation to make up for their ignorance by paying those who help them.

Either you got the brains or cash, if you lack both you're useless."

Syreldar

Link to comment
Share on other sites

Hi, for fun i will add this system, and i have visual problem. Syserr empty, all included. System working normal, any suggestions?

https://metin2.download/picture/htUp7n0SdoW31Nzn5VoiIvdzBezdFra1/.png

Btw. @ Owsap Great system like always. 🙂

Edited by Metin2 Dev International
Core X - External 2 Internal
  • Love 2
Link to comment
Share on other sites

  • 3 weeks later...
  • 1 month later...
  • Honorable Member
6 hours ago, WeedHex said:

It's different from official 

I know they updated the quest part and removed the quest items because they are no longer in the proto. However, they rarely enable this event on the server so testing it fully is limited and that's why I made based on the old version but if you are sure about something please describe what is missing.

  • Love 1
Link to comment
Share on other sites

  • 5 weeks later...
  • 1 month later...
  • 1 month later...

its not working with me !! 

i reinstalled it 2 times and the same problem when i click to use red or blue soul nothing happen even tooltip not shown on them !

did anyone knows how to fix it or where to look cuz my syserr it empty client and server 😕

@ Owsap can you give me a hint to how i can fix it or where to look thanks 

Edited by LeMo

Lets Go Yes GIF by The Lonely Island

Link to comment
Share on other sites

11 hours ago, LeMo said:

its not working with me !! 

i reinstalled it 2 times and the same problem when i click to use red or blue soul nothing happen even tooltip not shown on them !

did anyone knows how to fix it or where to look cuz my syserr it empty client and server 😕

@ Owsap can you give me a hint to how i can fix it or where to look thanks 

solved there is calls ( RED_SOUL, SOUL_RED, BLUE_SOUL, SOUL_BLUE ) in Source files for my problem i just edited them to be same you need to edit it to one call 

RED_SOUL, BLUE_SOUL or SOUL_BLUE, SOUL_RED

Edited by LeMo

Lets Go Yes GIF by The Lonely Island

Link to comment
Share on other sites

  • 2 months later...

Announcements



×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / 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.