-
Contador contenido
470 -
Ingreso
-
Última visita
-
Días ganados
40
Actividad de reputación
-
Johan™ reacted to Dilong in Serverfiles by Maxmi! 32 y 64 bits
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -
Johan™ got a reaction from SuperGamix in [MiniRelease]Fishing_conplete :V
Hola metineros :V
-------------------------------------------------------------------------------------
Imagen
Debes iniciar sesión para ver el contenido del enlace en esta publicación.
-------------------------------------------------------------------------------------
:v no tiene mucha utilidad :V solo me puse a jugar con el source :V y se me ocurrio hacer esto D:
el uso de esto queda a imaginacion de cada 1 e.e
-----------------------------------------------------------------------------------------------------------------------------------------------------
1-Abren el archivo fishing.cpp
Buscamos
FishingSuccess(ch);
Al final del
Case 0:
Agregan esto e.e ///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// quest::CQuestManager::instance().FishingComplete(ch->GetPlayerID()); ///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// Debera quedar como en la imagen e.e
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -----------------------------------------------------------------------------------------------------------------------------------------------------
2.- e.e
Abrimos el archivo quest.h
buscamos lo sigiente
QUEST_ITEM_INFORMER_EVENT,
abajo de eso pegan esto
///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// QUEST_FISHING_COMPLETE, ///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// imagen e.e
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -----------------------------------------------------------------------------------------------------------------------------------------------------
3,-
abrimos el archivo questmanager.cpp
abajo de
m_mapEventName.insert(TEventNameMap::value_type("item_informer", QUEST_ITEM_INFORMER_EVENT));
pegan esto
m_mapEventName.insert(TEventNameMap::value_type("fishing_complete", QUEST_FISHING_COMPLETE));
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
4.-Ahora al final del mismo archivo subiendo una llave pegan esto
///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// void CQuestManager::FishingComplete(unsigned int pc) { PC * pPC; if ((pPC = GetPC(pc))) { if (!CheckQuestLoaded(pPC)) return; m_mapNPC[QUEST_NO_NPC].OnFishingComplete(*pPC); } else sys_err("QUEST no such pc id : %d", pc); } ///////////////////////////////////////////////////////// //Chelo /////////////////////////////////////////////////////////
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5,. creo D:
abrimos el archivo questmanager.h
buscamos
void RegisterNPCVnum(DWORD dwVnum);
abajo de eso pegan lo sigiente
void FishingComplete(unsigned int pc);
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
6,- abrimos el archivo questnpc.cpp
al final del todo subiendo una llave pegan lo sigiente
///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// bool NPC::OnFishingComplete(PC& pc) { return HandleReceiveAllEvent(pc, QUEST_FISHING_COMPLETE); } ///////////////////////////////////////////////////////// //Chelo /////////////////////////////////////////////////////////
Debes iniciar sesión para ver el contenido del enlace en esta publicación. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
7,-abrimos el archivo questnpc.h
abajo de unsigned int GetVnum() { return m_vnum; }
pegan esto
bool OnFishingComplete(PC& pc);
-----------------------
Esto es todo D:
-
Johan™ got a reaction from NeoGod in [MiniRelease]Fishing_conplete :V
Hola metineros :V
-------------------------------------------------------------------------------------
Imagen
Debes iniciar sesión para ver el contenido del enlace en esta publicación.
-------------------------------------------------------------------------------------
:v no tiene mucha utilidad :V solo me puse a jugar con el source :V y se me ocurrio hacer esto D:
el uso de esto queda a imaginacion de cada 1 e.e
-----------------------------------------------------------------------------------------------------------------------------------------------------
1-Abren el archivo fishing.cpp
Buscamos
FishingSuccess(ch);
Al final del
Case 0:
Agregan esto e.e ///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// quest::CQuestManager::instance().FishingComplete(ch->GetPlayerID()); ///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// Debera quedar como en la imagen e.e
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -----------------------------------------------------------------------------------------------------------------------------------------------------
2.- e.e
Abrimos el archivo quest.h
buscamos lo sigiente
QUEST_ITEM_INFORMER_EVENT,
abajo de eso pegan esto
///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// QUEST_FISHING_COMPLETE, ///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// imagen e.e
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -----------------------------------------------------------------------------------------------------------------------------------------------------
3,-
abrimos el archivo questmanager.cpp
abajo de
m_mapEventName.insert(TEventNameMap::value_type("item_informer", QUEST_ITEM_INFORMER_EVENT));
pegan esto
m_mapEventName.insert(TEventNameMap::value_type("fishing_complete", QUEST_FISHING_COMPLETE));
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
4.-Ahora al final del mismo archivo subiendo una llave pegan esto
///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// void CQuestManager::FishingComplete(unsigned int pc) { PC * pPC; if ((pPC = GetPC(pc))) { if (!CheckQuestLoaded(pPC)) return; m_mapNPC[QUEST_NO_NPC].OnFishingComplete(*pPC); } else sys_err("QUEST no such pc id : %d", pc); } ///////////////////////////////////////////////////////// //Chelo /////////////////////////////////////////////////////////
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5,. creo D:
abrimos el archivo questmanager.h
buscamos
void RegisterNPCVnum(DWORD dwVnum);
abajo de eso pegan lo sigiente
void FishingComplete(unsigned int pc);
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
6,- abrimos el archivo questnpc.cpp
al final del todo subiendo una llave pegan lo sigiente
///////////////////////////////////////////////////////// //Chelo ///////////////////////////////////////////////////////// bool NPC::OnFishingComplete(PC& pc) { return HandleReceiveAllEvent(pc, QUEST_FISHING_COMPLETE); } ///////////////////////////////////////////////////////// //Chelo /////////////////////////////////////////////////////////
Debes iniciar sesión para ver el contenido del enlace en esta publicación. ---------------------------------------------------------------------------------------------------------------------------------------------------------------------
7,-abrimos el archivo questnpc.h
abajo de unsigned int GetVnum() { return m_vnum; }
pegan esto
bool OnFishingComplete(PC& pc);
-----------------------
Esto es todo D:
-
Johan™ reacted to carlos21 in Nuevas Ropas Obscenas de Metin2 Solo para Hombres :D
bueno navegando encontré esto
y me llamo la atención lo grandes que eran o.0
y luego vi este video
Debes iniciar sesión para ver el contenido del enlace en esta publicación. y dije valla que melones y entonces pensé en dejarles el link de descarga aca:
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -
Johan™ reacted to carlos21 in Agregar 12345 bonus con los agregars comunes!!
Abrir char_item.cpp (game) Buscar esta linea: if (item2->GetAttributeCount() < 4) y cambiar por esta
if (item2->GetAttributeCount() < 5) Y podrán agregar hasta 5 bonus sin tener que usar el problemático 70024!!
Creditos:Avenue
-
Johan™ reacted to Dilong in Archivos metin2.es actualizado
Pues eso,archivos subidos por mi y actualizados para los que no tengan el cliente del .es,el locale 2014 lo pueden poner a un cliente 40k normal para tenerlo 100% traducido sin problemas
Debes iniciar sesión para ver el contenido del enlace en esta publicación. -
Johan™ reacted to Shang in [C++]Función game.drop_item_and_select()
Que le puedes poner atributos... (+tetas)
-
Johan™ reacted to Shang in [C++]Función game.drop_item_and_select()
Buenas pichas flojas.
Estoy haciendo la quest de la dungeon del nemere y he visto que necesitaba una función para la 5ª planta, así que he mirado de hacerla y pues me ha salido xD (puto amo).
Pues lo que hace la función es dropear un item (sin dueño) y seleccionar el item dropeado. Puediendole poner bonus/piedras al item.
Función (questlua_game.cpp):
Quien no sepa instalarlo que pregunte a PACI.
Prueba de que funciona:
Quest de la prueba:
Uso de la función:
game.drop_item_and_select(item_vnum, item_count)
Saludos!
-
Johan™ reacted in [Guía] Desactivar Minimap
Buenas, aquí tenéis una pequeña guía para desactivar el Minimap en vuestras Dungeon's.
1.- Debemos descompilar Root.
2.- Una vez descompilado buscamos "uiminimap.py".
3.- Lo abrimos y buscamos:
class MiniMap(ui.ScriptWindow): CANNOT_SEE_INFO_MAP_DICT = { Debajo escribiremos:
"nombre de tu mapa, que no quieres que funcione" : FALSE, Guardamos y compilamos.
Después de hacer eso quedará así:
Prueba InGame:
-
Johan™ got a reaction from NazoX in Panel de Control Profesional para tu Metin2 /@Carlos
se parece pero no es, ase tiempo lei que sema coje los diseños publicos pero que el crea el script desde 0 :v
hay sema semita sema.
-
Johan™ got a reaction from mebe in [C++]MiniRelease emociones sin la mascara, acciones entre mismo sexo
Hi :v
Bueno empezamos :v sin antes mandar un saludo a las chamanas e.e
Abrimos el cmd_emotion.cpp
Buscamos
if (!CHARACTER_CanEmotion(*ch))
le agregamos un /* al inicio y al final de tal manera que quedara asi.
/*if (!CHARACTER_CanEmotion(*ch)) { ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("열정의 가면을 착용시에만 할 수 있습니다.")); return; }*/ Listo con eso ya no tendran que usar la mascara de emociones e.e
ahora lo más loco :v
buscamos
if (GET_SEX(ch)==GET_SEX(victim))
Procedemos a realizar lo mismo e.e
debera quedar asi
/*if (GET_SEX(ch)==GET_SEX(victim)) { ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("이성간에만 할 수 있습니다.")); return; }*/
-
Johan™ reacted to HardMetin2 in Mini-Release Coins en c++
Gracias, es bueno. Me gusta más que uno que vi hace un par de días
-
-
Johan™ reacted in Mini-Release Coins en c++
Buen aporte , muchas gracias +1 (te daría chamanas , pero... no me quedan T.T)
Un saludo.
-
Johan™ reacted to PACI in [C++] Nivel de Mobs donde el nombre
Hola. Pues na' que no sabía que los oficiales habían puesto esto, así que hoy decidí hacerlo, y os lo traigo.
Off: Llegan nuevas dungeons al oficial.
Cuando compiléis el binario quedará así:
/* @PACI - 03.08.15 The following changes will allow you to see the Monsters Level without clicking on them. Like a normal character, you'll see the level before the monster's name. Apply these changes on InstanceBaseEffect.cpp (located at InstanceBase). Replace your AttachTextTail() function with mine, don't forget to add the include! */ #include "PythonNonPlayer.h" void CInstanceBase::AttachTextTail() { if (m_isTextTail) { TraceError("CInstanceBase::AttachTextTail - VID [%d] ALREADY EXIST", GetVirtualID()); return; } m_isTextTail=true; DWORD dwVID=GetVirtualID(); float fTextTailHeight=IsMountingHorse() ? 110.0f : 10.0f; static D3DXCOLOR s_kD3DXClrTextTail=D3DXCOLOR(1.0f, 1.0f, 1.0f, 1.0f); CPythonTextTail::Instance().RegisterCharacterTextTail(m_dwGuildID, dwVID, s_kD3DXClrTextTail, fTextTailHeight); if (!m_dwLevel && !IsPC() && !IsNPC() && !IsWarp() && !IsGoto()) { const CPythonNonPlayer::TMobTable * pMobTable = CPythonNonPlayer::Instance().GetTable(GetVirtualNumber()); if (!pMobTable) { TraceError("Could not get mob table %d", GetVirtualNumber()); return; } float fAverageLevel = floor(pMobTable->bLevel+0.5f); m_dwLevel = int(fAverageLevel); } if (m_dwLevel) UpdateTextTailLevel(m_dwLevel); } -
Johan™ got a reaction from tierrilopes in Mini-Release Coins en c++
:v
PD: antes de comenzar quiero aclarar que la parte del SQLMsg *msg; - msg = xxx la saque de elitepvpers. D: yo solo realize algunos cambios e.e.
Abrimos char.cpp y al final ponemos:
int CHARACTER::SetCoins(long coins) { SQLMsg *msg; msg = DBManager::instance().DirectQuery("UPDATE account.account SET coins = coins + '%ld' WHERE id = '%d'", coins, GetAID()); if (msg->uiSQLErrno != 0) { sys_err("pc_update_coins query failed"); return false; } return true; } Ahora nos vamos a char.h y abajo de bool ItemProcess_Polymorph(LPITEM item);
pegamos esto.
public: int SetCoins(long coins = 0); Debe quedar asi D:
Ahora abrimos char_item.cpp y buscamos switch (item->GetType()) arriba de eso pegamos lo sigiente e.e
switch (item->GetVnum()) { //Coins. case 80014: case 80015: case 80016: case 80017: int idx[4]; idx[0] = 100; idx[1] = 500; idx[2] = 1000; idx[3] = 50; int idxs; if (item->GetVnum() == 80014) idxs = 0; if (item->GetVnum() == 80015) idxs = 1; if (item->GetVnum() == 80016) idxs = 2; if (item->GetVnum() == 80017) idxs = 3; long val; val = idx[idxs]; if (SetCoins(val)) { ChatPacket(CHAT_TYPE_INFO, "Has cargado %ld coins a tu cuenta.",val); item->SetCount(item->GetCount() - 1); } else { ChatPacket(CHAT_TYPE_INFO, "Ha ocurrido un error al intentar cambiar tus coins, contacta con el administrador."); } return 1; break; default: break; } D: tambien pueden usar esta funciona para los lua
solo usen el SetCoins(cantidad e.e)
-
Johan™ got a reaction from HardMetin2 in Mini-Release Coins en c++
:v
PD: antes de comenzar quiero aclarar que la parte del SQLMsg *msg; - msg = xxx la saque de elitepvpers. D: yo solo realize algunos cambios e.e.
Abrimos char.cpp y al final ponemos:
int CHARACTER::SetCoins(long coins) { SQLMsg *msg; msg = DBManager::instance().DirectQuery("UPDATE account.account SET coins = coins + '%ld' WHERE id = '%d'", coins, GetAID()); if (msg->uiSQLErrno != 0) { sys_err("pc_update_coins query failed"); return false; } return true; } Ahora nos vamos a char.h y abajo de bool ItemProcess_Polymorph(LPITEM item);
pegamos esto.
public: int SetCoins(long coins = 0); Debe quedar asi D:
Ahora abrimos char_item.cpp y buscamos switch (item->GetType()) arriba de eso pegamos lo sigiente e.e
switch (item->GetVnum()) { //Coins. case 80014: case 80015: case 80016: case 80017: int idx[4]; idx[0] = 100; idx[1] = 500; idx[2] = 1000; idx[3] = 50; int idxs; if (item->GetVnum() == 80014) idxs = 0; if (item->GetVnum() == 80015) idxs = 1; if (item->GetVnum() == 80016) idxs = 2; if (item->GetVnum() == 80017) idxs = 3; long val; val = idx[idxs]; if (SetCoins(val)) { ChatPacket(CHAT_TYPE_INFO, "Has cargado %ld coins a tu cuenta.",val); item->SetCount(item->GetCount() - 1); } else { ChatPacket(CHAT_TYPE_INFO, "Ha ocurrido un error al intentar cambiar tus coins, contacta con el administrador."); } return 1; break; default: break; } D: tambien pueden usar esta funciona para los lua
solo usen el SetCoins(cantidad e.e)
-
Johan™ got a reaction from Jeo in Mini-Release Coins en c++
:v
PD: antes de comenzar quiero aclarar que la parte del SQLMsg *msg; - msg = xxx la saque de elitepvpers. D: yo solo realize algunos cambios e.e.
Abrimos char.cpp y al final ponemos:
int CHARACTER::SetCoins(long coins) { SQLMsg *msg; msg = DBManager::instance().DirectQuery("UPDATE account.account SET coins = coins + '%ld' WHERE id = '%d'", coins, GetAID()); if (msg->uiSQLErrno != 0) { sys_err("pc_update_coins query failed"); return false; } return true; } Ahora nos vamos a char.h y abajo de bool ItemProcess_Polymorph(LPITEM item);
pegamos esto.
public: int SetCoins(long coins = 0); Debe quedar asi D:
Ahora abrimos char_item.cpp y buscamos switch (item->GetType()) arriba de eso pegamos lo sigiente e.e
switch (item->GetVnum()) { //Coins. case 80014: case 80015: case 80016: case 80017: int idx[4]; idx[0] = 100; idx[1] = 500; idx[2] = 1000; idx[3] = 50; int idxs; if (item->GetVnum() == 80014) idxs = 0; if (item->GetVnum() == 80015) idxs = 1; if (item->GetVnum() == 80016) idxs = 2; if (item->GetVnum() == 80017) idxs = 3; long val; val = idx[idxs]; if (SetCoins(val)) { ChatPacket(CHAT_TYPE_INFO, "Has cargado %ld coins a tu cuenta.",val); item->SetCount(item->GetCount() - 1); } else { ChatPacket(CHAT_TYPE_INFO, "Ha ocurrido un error al intentar cambiar tus coins, contacta con el administrador."); } return 1; break; default: break; } D: tambien pueden usar esta funciona para los lua
solo usen el SetCoins(cantidad e.e)
-
Johan™ reacted to WorldArd in [Release]Login Fantasy
Img:
PD: Se ajusta para todas las dimensiones
para que funcione editar el archivo dates y colocar los datos respectivos a su servidor , como ip,port,auth,nombre etc..
-name , es el nombre del servidor el cual aparece debajo del minimapa.
-channel1_img, True igual si quieres que se vea el boton del channel o False si no quieres que se vea.
igual con channel2 , channel3 etc...
-ip, ip del servidor.
-port_channel1, puerto del channel1 de su servidor . Igual con channel2 , channel3 etc.
-port_auth , puesto del auth de su servidor
PD1: si encuentra algun fallo o problema informar y se resuelve
Debes iniciar sesión para ver el contenido del enlace en esta publicación.
Saludos!
-
Johan™ got a reaction from The picos in Para que sirve esto
Esos archivos son copias del servidor :3
-
Johan™ got a reaction from daniel915 in Para que sirve esto
Esos archivos son copias del servidor :3
-
Johan™ reacted to Jex in [C++]Pocion roja y azul ilimitada
Abrimos Char_item.cpp
Buscamos la función USE_POTION:
Debajo buscamos
item->SetCount(item->GetCount() - 1); Y eliminamos las funciones anteriores. Solo fue una guia que me encontre por ahi vine a compartirla con ustedes, tener en cuenta que: 1-No se nada de c++ xD 2-No lo he probado. Saludos. -
Johan™ got a reaction from MiGueLiT0 in [C++]Color Level (Binario)
veo un error :3 pero no se explicarme te dejo el mioo :3
el error es con el ultimo else if creo :3 no veo bien :3
aqui el mio
-
Johan™ got a reaction from Jeo in [Programadores] Tengo que recomendarles esta serie.
Sin chamanas no es buena la serie D:
-
Johan™ got a reaction from PACI in [RLS] Cubil de la Baronesa Araña
Interesante :c esto me va a doler D:
delen una chamana al feo :c