Jump to content

metinplay2

Miembro
  • Contador contenido

    4
  • Ingreso

  • Última visita

Actividad de reputación

  1. Me Gusta
    metinplay2 reacted to Desmint in [ServerFiles]Osmanlı2 PVP   
    Hola Amigos de Metin2Zone 
     
    Ya hace rato me encontraba desaparecido.... Pero he vuelto y con unos files que les encantaran.
    No olviden dejar ese "Mencorazona" si te gustaron los files
     
    Texto traido desde el Foro:
    "Son los archivos del proyecto los que hicimos hace 2 años, considero apropiado que sea compartido por el propietario original porque ha estado en manos de las personas equivocadas y circuló debajo de la mesa.
    Los archivos están en plena forma, se puede iniciar sesión en el juego con freebsd 11.3 mariadb 10.3, gcc8.
    Hay un montón de cosas en él, como un ronark de ortografía cero que no se ve en otros lugares (puede que no sea suave), un sistema de comestibles objeto en el juego (estoy hablando de la forma en que estas otras moscas comparten nuestras migas de pan), rubinum offlineshop (incluyendo alquimia, cristal de comercio, precio promedio, etc.), etc; Pero no es del todo transparente. Déjame decirte que este archivo no se ha utilizado desde este proyecto"
     
    Visualizacion de presentacion:

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Descargar Files:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     
    Libs:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     
  2. Me Gusta
    metinplay2 reacted to Mustang Forsaken in Mustang SF 2020 | Most clean   
    Discord : Mustang#1649
    Client test available with 15 account saved : Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  3. Me Gusta
    metinplay2 reacted to Mustang Forsaken in Mustang SF 2020 | Most clean   
    Informations

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. - Discord : Mustang#1649 - Boost 1.7.2 - Cryptopp 8.2.0 - MariaDB 10.3 - FreeBSD 12.1 RELEASE (32 BIT & 64 BIT) - LLVM-DEVEL-11.0 (CLANG 11) - Mob proto & Item Pro from official v20.1.3 - race.msm from officiel v20.1.3 - Save account system - Official create/select character - Syserr clean - Only official Metin2 system - No one custom system added - No one syserr was hide with // - Sell with VDI full source+start - No coredown, all fix applied - Visual Studio 2019 - Granny 2.9 Service.h
    #ifndef __INC_SERVICE_H__ #define __INC_SERVICE_H__ /**************************************** * title_name : System Info Client * filename : ../../common/service.h * author : Mustang * version : Version 1.2 * date : 25 03 2020 * update : 01 05 2020 ****************************************/ /*** YMIR System ***/ #define ENABLE_PET_SYSTEM // Système de pet de Ymir #define ENABLE_UDP_BLOCK // Block UDP port #define ENABLE_TRADABLE_ICON // Effet d'icon lors des échanges #define ENABLE_HIGHLIGHT_SYSTEM // Effet slot nouveau item #define ENABLE_CHEQUE_SYSTEM // Système de Won #define ENABLE_GAYA_SYSTEM // Système de Gaya #define ENABLE_SASH_SYSTEM // Système d'étole #define ENABLE_PENDANT_SYSTEM // Système de talisman du FR #define ENABLE_NEW_BONUS // Les nouveaux bonus du FR #define ENABLE_ELEMENT_TARGET // Affiche l'élement du monstre #define ENABLE_MAGIC_REDUCTION_SYSTEM // Pierre réduction magique du FR #define ENABLE_QUIVER_SYSTEM // Système de carquois #define ENABLE_SOULBIND_SYSTEM // Système de liaison d'âme #define ENABLE_TRANSMUTATION_SYSTEM // Système de transmutation #define ENABLE_SHOW_MOB_INFO // Niveau et aggresivité des monstres #define ENABLE_DICE_SYSTEM // Système de drop aléatoire #define ENABLE_COSTUME_WEAPON_SYSTEM // Système de costume d'arme #define ENABLE_MOUNT_COSTUME_SYSTEM // Système de costume monture #define ENABLE_NEW_EMOTION // Système de new emotion #define ENABLE_MESSENGER_BLOCK // Système de block message #define ENABLE_VIEW_EQUIPMENT_SYSTEM // Système de visualisation du profil #define ENABLE_OX_RENEWAL // Mise à jours de l'OX de l'officiel #define ENABLE_AGGREGATE_MONSTER_EFFECT // Système d'effet des capes #define ENABLE_CHANGE_CHANNEL_SYSTEM // Système de changement de channel #define ENABLE_MAILBOX_SYSTEM // Système de boîte aux lettres #define ENABLE_AURA_SYSTEM // Système d'aura de l'officiel #define ENABLE_COSTUME_ENCHANT_SYSTEM // Changement de switch bonus costume #define ENABLE_ATTR_TRANSFER_SYSTEM // Système de transfert bonus costume #define ENABLE_SOUL_EVENT_SYSTEM // Soul event system #define ENABLE_GROWTH_PET_SYSTEM // Système de familier /*** YMIR System ***/ /*** Official Update System ***/ #define ENABLE_PARTY_UPDATE // Mise à jour de l'officiel #define ENABLE_MOUNT_TRANSMUTATION_SYSTEM // Système de transmutation monture #define ENABLE_CUBE_RENEWAL // Les bonus sont sauvés lors d'un craft #define ENABLE_CUBE_STONE_RENEWAL // Les pierres sont sauvés lors d'un craft #define ENABLE_YMIR_AFFECT_FIX // Accumulation de bonus d'effet à la connexion #define ENABLE_PAERYONG_CENTER // Rugissement du dragon à distance #define ENABLE_KNOCBACK_SYSTEM // KNOCKBACK Patch Skill 17.5 #define ENABLE_NEW_GYEONGGONG_SKILL // Pas de plume explosif de l'officiel #define ENABLE_GACHA_SYSTEM // ITEM_GACHA #define ENABLE_QUEST_RENEWAL // Quest renewal with categories #define ENABLE_GRADE_MYTH // Dragon soul mythical grade #define ENABLE_EXTENDED_SOCKET // Extend item sockets /*** Official Update System ***/ /*** Enable Hack System ***/ #define ENABLE_CHECK_GHOSTMODE_HACK // Respawn si le joueurs est en ghost mode /*** Enable Hack System ***/ /*** Enable System ***/ #define ENABLE_PORT_SECURITY // Port p2p fix #define ENABLE_IMPROVED_PACKET_ENCRYPTION // Encryption des packets #define ENABLE_EXTENDED_INVENTORY // Pages d'inventaire supplémentaire //#define ENABLE_IGNORE_LOW_POWER_BUFF // Ignore low power buff /*** Enable System ***/ #endif Locale_inc.h
    /**************************************** * title_name : System Info Client * filename : ../../UserInterface/Locale_inc.h * author : Mustang * version : Version 1.2 * date : 25 03 2020 * update : 08 06 2020 ****************************************/ /*** YMIR Services System ***/ #define LOCALE_SERVICE_EUROPE /*** YMIR Services System ***/ /*** YMIR System ***/ #define ENABLE_COSTUME_SYSTEM // Système de costume #define ENABLE_ENERGY_SYSTEM // Système d'energie #define ENABLE_DRAGON_SOUL_SYSTEM // Système d'alchimie du dragon #define ENABLE_NEW_EQUIPMENT_SYSTEM // Système de ceinture #define ENABLE_TRADABLE_ICON // Système d'effet d'échanges #define ENABLE_HIGHLIGHT_SYSTEM // Système "nouveau item" #define ENABLE_CHEQUE_SYSTEM // Système de Won #define ENABLE_GAYA_SYSTEM // Système de Gaya #define ENABLE_SASH_SYSTEM // Système de sash #define ENABLE_MOUNT_COSTUME_SYSTEM // Système de monture #define ENABLE_PENDANT_SYSTEM // Système de talisman #define ENABLE_NEW_BONUS // Système de talisman et nouveau bonus #define ENABLE_ELEMENT_TARGET // Système de target d'élement #define ENABLE_MAGIC_REDUCTION_SYSTEM // Système de réduction magie #define ENABLE_COSTUME_WEAPON_SYSTEM // Système de costume d'arme #define ENABLE_QUIVER_SYSTEM // Système de carquois #define ENABLE_SOULBIND_SYSTEM // Système de liason d'âme #define ENABLE_TRANSMUTATION_SYSTEM // Système de transmutation #define ENABLE_BONUS_BOARD // Système de tableau de bonus #define ENABLE_NEW_MINIMAP // Renew de la minimap #define ENABLE_TAB_NEXT_TARGET // Système de switch de cible #define ENABLE_SHOW_MOB_INFO // Système d'info niveau/aggressivité #define ENABLE_TASKBAR_GROUPING // Fenêtre barre de tache séparé comme l'officiel #define ENABLE_DICE_SYSTEM // Système de drop aléatoire #define ENABLE_NEW_EMOTION // Système de new emotion #define ENABLE_MESSENGER_BLOCK // Système de block joueur #define ENABLE_VIEW_EQUIPMENT_SYSTEM // Système de visualisation des équipements #define ENABLE_AGGREGATE_MONSTER_EFFECT // Système d'effet des capes #define ENABLE_CHANNEL_CHANGE_SYSTEM // Système de changement de channel #define ENABLE_MAILBOX_SYSTEM // Système de boite aux lettres #define ENABLE_AURA_SYSTEM // Système d'aura #define ENABLE_ENCHANT_COSTUME_SYSTEM // Système switch bonus costume #define ENABLE_ATTR_TRANSFER_SYSTEM // Système de transfert bonus costume #define ENABLE_SOUL_SYSTEM // Soul system #define ENABLE_GROWTH_PET_SYSTEM // Growth pet system /*** YMIR System ***/ /*** Official Update ***/ #define ENABLE_PARTY_UPDATE // Système de groupe map officiel #define ENABLE_MOUNT_TRANSMUTATION_SYSTEM // Système de transmutation pour monture #define ENABLE_OX_RENEWAL // Message OX de l'officiel #define ENABLE_NEW_GYEONGGONG_SKILL // Pas de plume explosif de l'officiel #define ENABLE_NINJA_INVISIBILITY_RENEW // Système d'invisibilité au complet #define ENABLE_GACHA_SYSTEM // ITEM_GACHA #define ENABLE_QUEST_RENEWAL // Quest page renewal #define ENABLE_DS_GRADE_MYTH // Dragon soul mythical grade #define ENABLE_MOB_SCALE // ENABLE_MOB_SCALE like official #define ENABLE_EXTENDED_SOCKET // Extended item sockets /*** Official Update ***/ /*** Enable System by Mustang ***/ #define ENABLE_EXTENDED_INVENTORY // 4 Pages d'inventaire #define ENABLE_NEW_REFRESH_MONEY // Nouvelle actualisation des yangs #define ENABLE_PERFORMANCE_BOOST // Boost des performance du client /*** Enable System by Mustang ***/  
    Update 05/07/2020
    - Compatibility with 32/64 bits FREEBSD
    - All errors encountered resolved 
    Client test available with 15 account saved : Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  4. Me Gusta
    metinplay2 reacted to XhebasT1an in VDI con freeebsd 11.4 gcc8 mysql 5.5   
    Para los que andan buscando VDI con estas características.
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Usuario: root
    pass:  mt2zone
     
    bsdconfig para cambiar la ip
     
  5. Me Gusta
    metinplay2 got a reaction from tikiwiki in Files Metin2 Rage   
    sua lib está com problema
     
  6. Me Gusta
    metinplay2 reacted to Zart in [Beta] Autopatch Generator Online   
    Muy buenas a todos,
    En nombre de la comunidad M2Tec, me gustaría presentarles el generador de parches en línea.
    ¿Qué es y qué hace exactamente?
    Esta es una herramienta sencilla creada por el personal de M2Tec, con la que puede crear fácilmente un parcheador en línea de forma gratuita para su cliente.
    Actualmente estamos en una fase beta y comenzaremos a actualizar su contenido muy pronto, incluyendo un selector multi-idioma, ahora mismo está disponible únicamente en Ingles.
     

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.  
    Puede acceder a través de este enlace:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Analisis de URL:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Si tiene algún problema o sugerencia, por favor contacte con nosotros en el foro de la comunidad, es la única forma que tenemos de contacto directo por el momento (aunque también puede contactar conmigo por mensaje privado).
    (Quiero aclarar que esto no se pública con la intención de generar SPAM o publicidad de dicha comunidad, simplemente queremos dar a conocer dicha herramienta, por lo tanto la atención por parte de la publicación va diriga a la misma, y si existe algún inconviente por favor le pido honestamente a la administración que me lo haga saber para retirarlo, gracias por su comprensión.)
    Saludos cordiales,
    Jayden
  7. Me Gusta
    metinplay2 reacted to caanmasu in borrar   
    borrar
  8. Me Gusta
    metinplay2 reacted to ReuS in Quest premios tanakas   
    Bueno, les hago un pequeño aporte de una quest que usaba para dar premios mediante orejas de tanaka,  debido a que se ha modernizado la cosa, con el sistema de crafteo es mucho mas facil a la hora de que los usuarios elijan sus premios.
    Pero siempre habra uno a quien le sirva esta quest 😄
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  9. Me Gusta
    metinplay2 reacted to KeKo in [Quest+cliente] El sistema de logros   
    Buenasss zoneros y zoneras, hoy os voi a explicar como implementar en vuestro servidores el sistema de logros que meti en Metin2Extasis, hasta con mi querida quest de canjes xd (aunque en elite hay una mas completa la mia es mas sencillita).
     
    ESTA GUIA ES EXCLUSIVA DE METIN2ZONE, QUE NADIE LA COPY PASTEE A OTROS FOROS
     
    1 - Qué es el sistema de logros?
     
    Este sistema consiste en una quest y una edicion del cliente que hace que cada vez que un jugador alcance un objetivo concreto, que tu fijas en la quest, le da los puntos correspondientes al logro que haya alcanzando. Si un jugador acumula puntos luego los puede canjear por premios.
     
    Aqui teneis algunas fotos del resultado final (son antiguas del extasis xd):
     

     

     
     
     
    2 - Como meto yo esto?
     
    El sistema de logros consiste en una quest y en editar unos archivos en el cliente, así que vamos a ir paso por paso:
     
     
    2.1: Parte del cliente:
     
    *Todos los archivos que tengais que meter estan en esta descarga:
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    2.1.1 - Que archivos vamos a editar? En el cliente editaremos los siguientes archivos:
     
    -Root: dentro de el los archivos game.py y uiachievement.py (este lo meteremos nosotros).
    -Etc: donde meteremos los archivos achievement_small.sub y achievement_small.dds
    -Uiscript: aqui meteremos el archivo achievementboard.py y warteschleife.py
     
    2.1.2 - Manos a la obra, a implementar!
     
     
    2.1.2.1: Primero empezaremos con el root. Decompilad vuestro root, abrid el archivo game.py y buscad esto:
     

    def __ServerCommand_Build(self): Una vez esteis ahi, vais hasta donde pone "CloseSafeBox" y cuando esteis en esa linea le dais a a enter y pegais esto:
     

    # Achievement System START "achievement" : self.__AchievementTest, "achievementpoints" : self.__ShowAchievementPoints, # Achievement System END Quedandoos asi:
     

     
    (Las -------------------- las pongo solo para que distingais la parte que acabamos de añadir, no hay que ponerlas)
     
    Ahora vais al final del archivo, le dais a enter para dejar algo de espacio y pegais esto:
     

    # Achievement System START def __ShowAchievementPoints(self, points): import uiAchievement import uiTaskbar self.uiAchievement = uiAchievement.AchievementDialog() uiAchievement.AchievementPoints = int(points) def __AchievementTest(self, archivement): import uiAchievement self.uiAchievement = uiAchievement.AchievementDialog() self.uiAchievement.Show(1, str(archivement)) self.uiAchievement.SetTop() # Achievement System END Quedará asi:
     

     
     
    *Siguiente paso: metemos en la carpeta root el archivo uiachievement.py y lo añadimos al xml
     

    <File archivedPath="uiachievement.py" type="2"><![CDATA[Sourceuiachievement.py]]></File> Listo el root! Sigamos con el etc.
     
    2.1.2.2: Decompilamos nuestro etc, vamos a la carpeta ymir work/ui y metemos el achievement_small.dds. Despues vamos a la carpeta ymir work/ui/public y metemos el achievement_small.sub. Por ultimo agregamos ambos al xml:
     

    <File archivedPath="d:/ymir work/ui/public/achievement_small.sub" type="0"><![CDATA[Sourceymir workuipublicachievement_small.sub]]></File> <File archivedPath="d:/ymir work/ui/achievement_small.dds" type="0"><![CDATA[Sourceymir workuiachievement_small.dds]]></File> 2.1.2.3: El ultimo paso en el cliente es decompilar nuestro uiscript y meter el archivo achievementboard.py y el warteschleife.py: en la carpeta. Los añadimos al xml y compilamos:
     

    <File archivedPath="uiscript/achievementboard.py" type="2"><![CDATA[Sourceuiscriptachievementboard.py]]></File> <File archivedPath="uiscript/warteschleife.py" type="2"><![CDATA[Sourceuiscriptwarteschleife.py]]></File> Y listo ya tenemos todo lo del cliente
     
     
    2.1: Parte del server:
     
    Bueno ahora ya solo nos queda meter nuestra quest del sistema de logros en la carpeta /home/game/quest (o la ruta en la que tengais la carpeta quest). Aqui os dejo la mia, con los nombres en español, algunos logros añadidos, canje, un item que te da logros (pa quien lo quiera xd), una opcion que te dice tus logros, etc
     

    quest logros_keko begin state start begin --LOGIN when login begin local actual_achievement_points = pc.getqf("achievement_points") if pc.getqf("firstlogin") != 1 then local Reward = 1 pc.setqf("firstlogin", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Primer_login%".. actual_achievement_points + Reward .."") else cmdchat("achievementpoints ".. pc.getqf("achievement_points")) end end --BOSSE when 691.kill begin local Reward = 2 local Achievement = "Jefe_Orco" local killcount = pc.getqf("691") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("691", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 791.kill begin local Reward = 3 local Achievement = "Lider_esoterico" local killcount = pc.getqf("791") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("791", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 2493.kill begin local Reward = 100 local Achievement = "Dragon_azul" local killcount = pc.getqf("2493") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("2493", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 2492.kill begin local Reward = 20 local Achievement = "Comandante_Setaou" local killcount = pc.getqf("2492") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("2492", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 1091.kill begin local Reward = 5 local Achievement = "Rey_demonio" local killcount = pc.getqf("1091") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("1091", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 2597.kill begin local Reward = 20 local Achievement = "Muerte" local killcount = pc.getqf("2597") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("2597", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 1192.kill begin local Reward = 12 local Achievement = "Bruja_de_hielo" local killcount = pc.getqf("1192") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("1192", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 1304.kill begin local Reward = 5 local Achievement = "Tigre_fantasma" local killcount = pc.getqf("1304") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("1304", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 1901.kill begin local Reward = 4 local Achievement = "9_colas" local killcount = pc.getqf("1901") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("1901", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 2091.kill begin local Reward = 3 local Achievement = "Reina_araña" local killcount = pc.getqf("2091") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("2091", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 2206.kill begin local Reward = 4 local Achievement = "Jefe_logros" local killcount = pc.getqf("2206") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("2206", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 2191.kill begin local Reward = 5 local Achievement = "Tortuga_del_desierto" local killcount = pc.getqf("2191") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("2191", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 692.kill begin local Reward = 3 local Achievement = "Orco_elite" local killcount = pc.getqf("692") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("692", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 693.kill begin local Reward = 5 local Achievement = "Orco_renacido" local killcount = pc.getqf("693") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("693", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end --Item shop--- when 50129.use begin say_title ( "Obten puntos logro") local actual_achievement_points = pc . getqf ( "achievement_points" ) local p = select ( "Obten 200 puntos logro" ) if p == 1 then local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points + 200 ) say ( "Enorabuena tienes 200 logros mas" ) say ( "Disfrutalos!" ) item.remove ( "50129", 1 ) end end when 50130.use begin say_title ( "Obten puntos logro") local actual_achievement_points = pc . getqf ( "achievement_points" ) local p = select ( "Obten 100 puntos logro" ) if p == 1 then local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points + 100 ) say ( "Enorabuena tienes 100 logros mas" ) say ( "Disfrutalos!" ) item.remove ( "50130", 1 ) end end when 50131.use begin say_title ( "Obten puntos logro") local actual_achievement_points = pc . getqf ( "achievement_points" ) local p = select ( "Obten 50 puntos logro" ) if p == 1 then local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points + 50 ) say ( "Enorabuena tienes 50 logros mas" ) say ( "Disfrutalos!" ) item.remove ( "50131", 1 ) end end when 50132.use begin say_title ( "Obten puntos logro") local actual_achievement_points = pc . getqf ( "achievement_points" ) local p = select ( "Obten 25 puntos logro" ) if p == 1 then local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points + 25 ) say ( "Enorabuena tienes 25 logros mas" ) say ( "Disfrutalos!" ) item.remove ( "50132", 1 ) end end --CANJES-- when 50115.use begin say_title ( "Canjea tus puntos logro" ) local actual_achievement_points = pc . getqf ( "achievement_points" ) local p = select ( "Caballo armado - 5 puntos" , "Caballo militar - 30 puntos" , "Bonus mediohumanos +20% por 30min - 50 puntos" , "Bonus HP +5000 por 30min - 60 puntos" , "Armadura divina - 400 logros" , "Mascota de ataque - 30 puntos" , "Mas" ) if p == 1 then if pc . getqf ( "achievement_points" ) <= 4 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 5 ) say ( "Has recibido un caballo armado" ) horse . set_level ( "11" ) horse . unsummon ( ) horse . summon ( ) pc . give_item2 ( "50052" , 1 ) return elseif p == 2 then if pc . getqf ( "achievement_points" ) <= 29 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 30 ) say ( "Has recibido un caballo militar" ) horse . set_level ( "21" ) horse . unsummon ( ) horse . summon ( ) pc . give_item2 ( "50053" , 1 ) return elseif p == 3 then if pc . getqf ( "achievement_points" ) <= 49 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 50 ) say ( "Has recibido 20% fuerza contra mediohumanos por 30min" ) affect . add_collect ( apply . ATTBONUS_HUMAN , 20 , 60 * 30 ) return elseif p == 4 then if pc . getqf ( "achievement_points" ) <= 59 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 60 ) say ( "Has recibido 5000hp por 30min" ) affect . add_collect ( apply . MAX_HP , 5000 , 60 * 30 ) return elseif p == 5 then if pc. getqf ( "achievement_points" ) <= 399 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 399 ) local armor = select ( "Armd. divina (G)" , "Armd. divina (N)" , "Armd. divina (S)" , "Armd. divina (C)" ) if armor == 1 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "42080" , 1 ) return elseif armor == 2 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "44080" , 1 ) return elseif armor == 3 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "46080" , 1 ) return elseif armor == 4 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "48080" , 1 ) return end elseif p == 6 then if pc . getqf ( "achievement_points" ) <= 29 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 29 ) say ( "Has recibido la mascota de ataque" ) pc . give_item2 ( "30312" , 1 ) return elseif p == 7 then local p2 = select ( "Leon Blanco - 40 puntos" , "Anillo experiencia - 5 puntos" , "Fuerza monstruo +20% 30min - 15 puntos" , "Velocidad movimiento +25% 30min - 10 puntos" , "Mascota de defensa - 25 puntos" , "Cuantos logros tengo?" , "Cerrar" ) if p2 == 1 then if pc . getqf ( "achievement_points" ) <= 39 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 40 ) say ( "Has recibido un leon blanco disfrtualo, no se acaba" ) pc . give_item2 ( "50110" , 1 ) return elseif p2 == 2 then if pc . getqf ( "achievement_points" ) <= 4 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 5 ) say ( "Disfruta de un anillo de experiencia" ) pc . give_item2 ( "71015" , 1 ) return elseif p2 == 3 then if pc . getqf ( "achievement_points" ) <= 14 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 15 ) say ( "Has recibido 20% fuerza monstruo por 30min" ) affect . add_collect ( apply . ATTBONUS_MONSTER , 20 , 60 * 30 ) return elseif p2 == 4 then if pc . getqf ( "achievement_points" ) <= 9 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 10 ) say ( "Has recibido 25% velo.movimiento por 30min" ) affect . add_collect ( apply . MOV_SPEED , 25 , 60 * 30 ) return elseif p2 == 5 then if pc . getqf ( "achievement_points" ) <= 24 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 25 ) say ( "Has recibido la mascota de defensa" ) pc . give_item2 ( "71124" , 1 ) return elseif p2 == 6 then local Reward = 0 local Achievement = "Ver_tus_logros" local killcount = pc.getqf("logros") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") elseif p2 == 7 then return end end end --METINS when 8013.kill begin local Reward = 8 local Achievement = "Metin_muerte" local killcount = pc.getqf("8013") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("8013", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_destruido#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 8016.kill begin local Reward = 5 local Achievement = "Metin_demonio" local killcount = pc.getqf("8016") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("8016", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_destruido#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 8012.kill begin local Reward = 6 local Achievement = "Metin_caida" local killcount = pc.getqf("8012") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("8012", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_destruido#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 8015.kill begin local Reward = 5 local Achievement = "Metin_dureza" local killcount = pc.getqf("8015") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("8015", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_destruido#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 8026.kill begin local Reward = 2 local Achievement = "Metin_85" local killcount = pc.getqf("8026") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("8026", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_destruido#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end when 8027.kill begin local Reward = 3 local Achievement = "Metin_90" local killcount = pc.getqf("8027") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("8027", killcount + 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_destruido#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") end --LEVELS when login or levelup with pc.get_level() >= 15 and pc.getqf("Level15") != 1 begin local Reward = 2 local Achievement = "Level_15" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level15", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 30 and pc.getqf("Level30") != 1 begin local Reward = 2 local Achievement = "Level_30" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level30", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 40 and pc.getqf("Level40") != 1 begin local Reward = 3 local Achievement = "Level_40" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level40", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 50 and pc.getqf("Level50") != 1 begin local Reward = 4 local Achievement = "Level_50" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level50", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 75 and pc.getqf("Level75") != 1 begin local Reward = 5 local Achievement = "Level_75" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level75", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 85 and pc.getqf("Level85") != 1 begin local Reward = 10 local Achievement = "Level_85" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level85", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 90 and pc.getqf("Level90") != 1 begin local Reward = 25 local Achievement = "Level_90" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level90", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 95 and pc.getqf("Level95") != 1 begin local Reward = 50 local Achievement = "Level_95" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level95", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end when login or levelup with pc.get_level() >= 99 and pc.getqf("Level99") != 1 begin local Reward = 100 local Achievement = "Level_99" local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("Level99", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_alcanzado%".. actual_achievement_points + Reward .."") end --CHECK EQUIP when login begin loop_timer("check_eq", 10) end when check_eq.timer begin local russi = pc.get_armor() local waffe = pc.get_weapon() local actual_achievement_points = pc.getqf("achievement_points") local Reward = 5 if russi==11299 and pc.getqf("achievement_ssp") != 1 then pc.setqf("achievement_ssp", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Armadura negra+9%".. actual_achievement_points + Reward .."") elseif russi==11499 and pc.getqf("achievement_swa") != 1 then pc.setqf("achievement_swa", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Armadura negra+9%".. actual_achievement_points + Reward .."") elseif russi==11699 and pc.getqf("achievement_mpp") != 1 then pc.setqf("achievement_mpp", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Armadura negra+9%".. actual_achievement_points + Reward .."") elseif russi==11899 and pc.getqf("achievement_sk") != 1 then pc.setqf("achievement_sk", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Armadura negra+9%".. actual_achievement_points + Reward .."") elseif waffe==189 and pc.getqf("achievement_gifti") != 1 then pc.setqf("achievement_gifti", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Giftschwert+9%".. actual_achievement_points + Reward .."") elseif waffe==199 and pc.getqf("achievement_lowenschw.") != 1 then pc.setqf("achievement_lowenschw.", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Löwenschwert+9%".. actual_achievement_points + Reward .."") elseif waffe==5129 and pc.getqf("achievement_orchiglocke") != 1 then pc.setqf("achievement_orchiglocke", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Orchideenglocke+9%".. actual_achievement_points + Reward .."") elseif waffe==2179 and pc.getqf("achievement_krahenstahl") != 1 then pc.setqf("achievement_krahenstahl", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Krähenstahlbogen+9%".. actual_achievement_points + Reward .."") elseif waffe==1139 and pc.getqf("achievement_teufelsflugenchak") != 1 then pc.setqf("achievement_teufelsflugenchak", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Teufelsflügel-Chakram+9%".. actual_achievement_points + Reward .."") elseif waffe==3169 and pc.getqf("achievement_Grolli") != 1 then pc.setqf("achievement_Grolli", 1) pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement Grollschwert+9%".. actual_achievement_points + Reward .."") end end end end Y para que no os quedeis simplemente metiendo la quest y ya ta os voi a explicar como funciona:
     
    1 - Lo mas importante de los logros es que cuando alcanzas uno (por ejemplo matar al jefe orco) te suma puntos mediante un pc.setqf:
     

    when 691.kill begin local Reward = 2 pc.setqf("achievement_points", actual_achievement_points + Reward) Como veis ahí al jefe orco (mob de id 691) le asigna los puntos que vale con local Reward = 2 y luego te suma 2 puntos con el pc.setqf("achievement_points", actual_achievement_points + Reward (el reward en este caso seria un +2).
     
    Por lo tanto si quereis añadir otro mob a la lista de logros solo tendreis que hacer lo siguiente:
     

    when idmob.kill begin local Reward = puntos -- Poneis cuantos puntos quereis que os de local Achievement = "Nombre del mob que saldra en el cliente" local killcount = pc.getqf("idmob") -- Se usa para que el juego lleve la cuenta de cuantas veces lo mataste local actual_achievement_points = pc.getqf("achievement_points") -- Calcula cuantos puntos tenes pc.setqf("693", killcount + 1) -- Aqui os suma 1 al numero de ese mob que llevais pc.setqf("achievement_points", actual_achievement_points + Reward) -- aqui te suma tus puntos por matarlo cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") -- Con esto te saldra la ventana en el cliente diciendo que lo mataste y cuantos puntos tenes end Ahora os enseñare como hacer los canjes. En mi caso los canjes se hacen mediante un item, pero vosotros podeis hacerlo como querais simplement cambiando el when iditem.use por un when npc.chat."Canje de Logros" o como os apetezca.
     
    Veamos como tengo yo los canjes:
     

    when 50115.use begin say_title ( "Canjea tus puntos logro" ) local actual_achievement_points = pc . getqf ( "achievement_points" ) local p = select ( "Caballo armado - 5 puntos" , "Caballo militar - 30 puntos" , "Bonus mediohumanos +20% por 30min - 50 puntos" , "Bonus HP +5000 por 30min - 60 puntos" , "Armadura divina - 400 logros" , "Mascota de ataque - 30 puntos" , "Mas" ) if p == 1 then if pc . getqf ( "achievement_points" ) <= 4 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 5 ) say ( "Has recibido un caballo armado" ) horse . set_level ( "11" ) horse . unsummon ( ) horse . summon ( ) pc . give_item2 ( "50052" , 1 ) return elseif p == 2 then if pc . getqf ( "achievement_points" ) <= 29 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 30 ) say ( "Has recibido un caballo militar" ) horse . set_level ( "21" ) horse . unsummon ( ) horse . summon ( ) pc . give_item2 ( "50053" , 1 ) return elseif p == 3 then if pc . getqf ( "achievement_points" ) <= 49 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 50 ) say ( "Has recibido 20% fuerza contra mediohumanos por 30min" ) affect . add_collect ( apply . ATTBONUS_HUMAN , 20 , 60 * 30 ) return elseif p == 4 then if pc . getqf ( "achievement_points" ) <= 59 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 60 ) say ( "Has recibido 5000hp por 30min" ) affect . add_collect ( apply . MAX_HP , 5000 , 60 * 30 ) return elseif p == 5 then if pc. getqf ( "achievement_points" ) <= 399 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 399 ) local armor = select ( "Armd. divina (G)" , "Armd. divina (N)" , "Armd. divina (S)" , "Armd. divina (C)" ) if armor == 1 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "42080" , 1 ) return elseif armor == 2 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "44080" , 1 ) return elseif armor == 3 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "46080" , 1 ) return elseif armor == 4 then say ( "Has recibido la Armadura divina" ) pc . give_item2 ( "48080" , 1 ) return end elseif p == 6 then if pc . getqf ( "achievement_points" ) <= 29 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 29 ) say ( "Has recibido la mascota de ataque" ) pc . give_item2 ( "30312" , 1 ) return elseif p == 7 then local p2 = select ( "Leon Blanco - 40 puntos" , "Anillo experiencia - 5 puntos" , "Fuerza monstruo +20% 30min - 15 puntos" , "Velocidad movimiento +25% 30min - 10 puntos" , "Mascota de defensa - 25 puntos" , "Cuantos logros tengo?" , "Cerrar" ) if p2 == 1 then if pc . getqf ( "achievement_points" ) <= 39 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 40 ) say ( "Has recibido un leon blanco disfrtualo, no se acaba" ) pc . give_item2 ( "50110" , 1 ) return elseif p2 == 2 then if pc . getqf ( "achievement_points" ) <= 4 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 5 ) say ( "Disfruta de un anillo de experiencia" ) pc . give_item2 ( "71015" , 1 ) return elseif p2 == 3 then if pc . getqf ( "achievement_points" ) <= 14 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 15 ) say ( "Has recibido 20% fuerza monstruo por 30min" ) affect . add_collect ( apply . ATTBONUS_MONSTER , 20 , 60 * 30 ) return elseif p2 == 4 then if pc . getqf ( "achievement_points" ) <= 9 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 10 ) say ( "Has recibido 25% velo.movimiento por 30min" ) affect . add_collect ( apply . MOV_SPEED , 25 , 60 * 30 ) return elseif p2 == 5 then if pc . getqf ( "achievement_points" ) <= 24 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 25 ) say ( "Has recibido la mascota de defensa" ) pc . give_item2 ( "71124" , 1 ) return elseif p2 == 6 then local Reward = 0 local Achievement = "Ver_tus_logros" local killcount = pc.getqf("logros") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") elseif p2 == 7 then return end end end *Si os fijais la ultima opcion de la tienda de canjes te permite ver tus logros, para ello le hice un logro que te sume 0 puntos pero que te enseña cuantos tienes:
     

    elseif p2 == 6 then local Reward = 0 local Achievement = "Ver_tus_logros" local killcount = pc.getqf("logros") local actual_achievement_points = pc.getqf("achievement_points") pc.setqf("achievement_points", actual_achievement_points + Reward) cmdchat("achievement ".. Achievement .."_derrotado#".. killcount + 1 .."%".. actual_achievement_points + Reward .."") Asi que si necesitais hacer vuestra opcion de ver logros ahi teneis
     
    Tal como eso son todos los canjes, si quereis hacer vuestros propios canjes os hago aqui un pequeño script de canje para explicaros como seria:
     
     

    when 20095.chat."Canjear mis logros" begin say_title("Canjear mis logros") say("") say("Hola jugador, si tienes logros") say("yo te los puedo cambiar por cositas.") say("") say("Si no tienes intenta conseguir alguno") say("porque merece la pena") say("") say_reward("Quieres canjear tus punots?") local canje = select ("Si" , "No") if canje == 1 then say_title("Canjes de logros") say("") say("Elige lo que quieras") local elegir = select ("Quinto bonus - 3 logros" , "Añadir 6-7 bonus - 4 logros" , "Cambiar 6-7 bonus - 5 logros" , "Caballo armado - 6 logros" , "Caballo militar - 8 logros" , "Cerrar") if elegir == 1 then if pc . getqf ( "achievement_points" ) <= 2 then chat( "Lo siento necesitas mas puntos" ) return end pc.give_item2("70024", 1) local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 3 ) return elseif elegir == 2 then if pc . getqf ( "achievement_points" ) <= 3 then chat( "Lo siento necesitas mas puntos" ) return end pc.give_item2("71051", 1) local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 4 ) return elseif elegir == 3 then if pc . getqf ( "achievement_points" ) <= 4 then say ( "Lo siento necesitas mas puntos" ) return end pc.give_item2("71052", 1) local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 5 ) return elseif elegir == 4 then if pc . getqf ( "achievement_points" ) <= 5 then chat( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 6 ) chat ( "Has recibido un caballo armado" ) horse . set_level ( "11" ) horse . unsummon ( ) horse . summon ( ) pc . give_item2 ( "50052" , 1 ) return elseif elegir == 5 then elseif p == 2 then if pc . getqf ( "achievement_points" ) <= 7 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 8 ) chat( "Has recibido un caballo militar" ) horse . set_level ( "21" ) horse . unsummon ( ) horse . summon ( ) pc . give_item2 ( "50053" , 1 ) return elseif elegir == 6 then return end elseif canje == 2 then return end end Este script es un pequeño regalo para vosotros, lo hice ahora para que podais usar otro si no quereis el que tenia en el extasis.
     
    *Para meterla en vuestra quest podeis quitar mi tienda de canjes y pegar esta si quereis, o hacerla como quest separada.
     
    Por ultimo os explicare como funcionan los canjes con un ejemplo:
     

    local p = select ( "Caballo armado - 5 logros") if p == 1 then if pc . getqf ( "achievement_points" ) <= 4 then say ( "Lo siento necesitas mas puntos" ) return end local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 5 ) say ( "Has recibido un caballo armado" ) horse . set_level ( "11" ) horse . unsummon ( ) horse . summon ( ) pc . give_item2 ( "50052" , 1 ) return Empieza con un local = select para que escojais vuestro premio y os aconsejo que pongais ahi cuantos logros cuesta como hice yo.
     
    Luego puse una restriccion para que si teneis menos puntos que los que pide el item no os deje comprarlo:
     

    if pc . getqf ( "achievement_points" ) <= 2 then chat( "Lo siento necesitas mas puntos" ) return end Funciona de la siguiente manera: donde pone <= 2 teneis que poner un punto menos que los que pide, ya que eso dice que si tienes esos puntos o menos no te deje comprar.
     
    Despues del return end ya solo teneis que poner el comando para que os quite los puntos que es este:
     

    local actual_achievement_points = pc . getqf ( "achievement_points" ) pc . setqf ( "achievement_points" , actual_achievement_points - 5 ) --Poneis ahi los que quereis que quite Y lo que quereis que os dea justo debajo de esas dos lineas:
     

    pc.give_item2("71052", 1) --- Ahi poned lo que quereis que dea Y eso es todo zoneros, que disfruteis del sistema de logros !!!
     
    Creditos: al creador del sistema (que no es mio xd) y a mi por la parte de la quest mia y la traduccion de la original.
  10. Me Gusta
    metinplay2 got a reaction from llollo300 in Files Metin2 Rage   
    sua lib está com problema
     
  11. Me Gusta
    metinplay2 reacted to MesterLum in [Guia]Instalar autopach oficial   
    Ola k ase (yawn) , pues aki yo de nuevo pero esta vez con la guia de instalar autopach por .lz bueno empezamos.. primero que nada quiero aclarar que el compilador del autopach no es mio pero lo dejare , pero todo lo demas me toco investigarme por mi mismo repito me toco investigar por mi mismo.. bueno primero que nada aca estan los links:

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Debes iniciar sesión para ver el contenido del enlace en esta publicación. Bueno una ves teniendo eso empesaremos por la parte de la web subiremos la carpeta autopach a tu web , localhost o lo que tengamos..
    Una ves subido editaremos el metin2torrent.config.xml y lo configuraremos algo asi:

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Bien una ves hecho eso quedara algo haci en la web:
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Cuidado aqui el 0.0.0.1 es donde se subiran los parches.. en fin seguimos con la parte del cliente
     
     
    Bien vamos a autopach creator (por zetsu) que por cierto tambien traduci la parte del torrent y blabla . bien entonces haremos lo siguiente
    abriremos..

    TorrentPatch.url.xml TorrentPatch.locale.xmleditaremos los URL de los autopach.. en mi caso seria algo asi:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Bueno aora seguimos con el TorrentPatch.url.xml
    bueno este es muy delicado teneis que poner exactamente donde esta tu URL con el metin2torrent.config.xml
    Bien en mi caso seria algo asi:
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Bueno una ves hecho guardamos eso crearemos el patch.. que seria con el que creò zetsu.. (Metin2_Autopatcher_Creator.exe) con ese lo crearemos y quedara Metin2Patch.exe ese meteremos al cliente
    despues de eso abriremos la carpeta client cojemos eso y lo pegamos en el cliente y bien aremos lo siguiente (cuando ya copies y peges en el cliente) , Pondremos el URL del autopach que en mi caso seria algo asi:
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Bueno una ves hecho eso abrimos y todo estara terminado lo que les faltara que acontinuacion explicare como hacer patch's, que se compilan con .lz y se pega el codigo en el crclist.. y se crean directorios en 0.0.0.1 que por ejemplo es algo asi
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Cada actualisacion que vallas haciendo metela dependiendo en donde quieres que llegue del cliente..
     
    y bueno es todo al final se mirara algo asi:
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    bueno eso es todo saludos y gracias a rafa por motivarme (aunque lo aiga hecho en contra de mi voluntad xd)
     
    bueno si me falto algo decirme :')
  12. Me Gusta
    metinplay2 reacted to Zwergx in Sell, oldschool Server files   
    Files are based on Easy Oldschool
    Files included
    Advance duel (choose type of duel)
    normal duel
    Advance duel (without critical, penetration or poison)
    Inventory Yang (example 1T 987M 654K 32 Yang)
    Skills over P.
    New emotes
    It's called inventory
    Insert link in chat
    Petsytem as official
    New pets from Official
    Costumes
    Weapon costumes
    3D weapons
    Target information system
    Item Buff System
    Wing system
    Title system from Vegas
    Offline shop
    Sidebar (day / night switchbot, teleporting, recycling)
    Bonus page
    Block EXP and Shadow (options)
    Shop name Pickup Yang Drop (game options)
    Offline messages
    New trade "$"
    Inventory lock via password
    interface color system
    record video
    prestige system
    vip system (miss and mister over head)
    alchemy
    transmutation
     
    little review
    #define LOCALE_SERVICE_SINGAPORE
    #define ENABLE_COSTUME_SYSTEM
    #define ITEM_BUFF_SYSTEM
    #define ENABLE_ENERGY_SYSTEM
    #define ENABLE_DRAGON_SOUL_SYSTEM
    #define ENABLE_NEW_EQUIPMENT_SYSTEM
    #define OFFLINE_MESSAGE
    #define ENABLE_SASH_SYSTEM
    #define ENABLE_HIGHLIGHT_SYSTEM
    #define ENABLE_NEW_ARROW_SYSTEM
    #define ENABLE_COSTUME_WEAPON_SYSTEM
    #define ENABLE_NEW_EXCHANGE_WINDOW
    #define WJ_SHOW_MOB_INFO
    #define NEW_PET_SYSTEM
    #define ENABLE_OFFLINE_SHOP_SYSTEM
    #define ENABLE_STOP_COLISSION_GLOBAL
    #define ENABLE_STOP_COLLISION_PLAYER_OX
    #define ENABLE_SEND_TARGET_INFO
    #define NEW_ADD_INVENTORY
    #define ENABLE_VIEW_TARGET_PLAYER_HP
    #define ENABLE_VIEW_TARGET_DECIMAL_HP
    #define ENABLE_TITLE_SYSTEM
    #define ENABLE_NEW_AFFECT_POTION
    #define INVENTORY_PROTECT
    #define ENABLE_OKEY_CARD_SYSTEM
    // #define XTRAP_CLIENT_ENABLE
    #define ANTI_RESIST_MAGIC_BONUS
    /**************************************************
    ***************************************************/
    #define PASTE_LINK_IN_CHAT
    #define BARBUT_SYSTEM
    #define SKILLS_OVER_P
    /**************************************************
    ***************************************************/
    #define MOUNT_SYSTEM
    #define ITEM_EFFECTS_SYSTEM
    #define NEW_EMOTES
     
     
    Inlcuding
     
    Game - Mysql
    Client
    Server/Client Source
    Dump Proto Source.
    etwas PSD
    Ich habe einige Bilder hinzugefügt. Debes iniciar sesión para ver el contenido del enlace en esta publicación. 
    OX MAP 

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Automatically polymorph at OX map

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Buff system

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Charinterface

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Color system 2

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Color system

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. enter password inventory password

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Inventory lock

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Offline shop

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Options

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Paste link open

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. paste link

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. recycle

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Sidebar

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Teleport

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Title system

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. 150 € 
     
    If I'm interested, please write a letter. Price can also be traded
    Weitere Informationen    Zwerg # 2967
     
  13. Me Gusta
    metinplay2 reacted to fuuton97 in [NEW]Dungeon: *TEMPLO PERDIDO*.   
    Hola, les vengo a regalar esta quest tipo dungeon hecha por mi, la tengo en mi servidor como dungeon y va súper bien, espero que les guste, les dejo los regen también.
     
    Quest:
     

    ---------------- -Quest By Fuuton97 -www.metin2skill.com & www.fuuton97.com -Dungeon Templo Perdido ---------------- quest templo_perdido begin state start begin when login begin if pc.get_map_index() == 42 then pc.set_warp_location(42, 216, 3335) end end when 20095.chat."Mapa Templo Perdido" begin if pc.get_level() <= 209 then say_title("*ANCIANO*:") say("") say_reward("Usted debe ser Nivel 210 para Entrar.!") return end say_title("*TEMPLO PERDIDO*") say("") say("Guerrero ".. pc.get_name() .." estás hablando con el anciano") say("que te va a llevar al mundo donde han despertados las bestias.") say("Te encomiendo este reto viajero") say("Estos mob te dropearán 5to bonos.") say("Cyclops, bestias jamas antes vistas en este mundo.") say("Recuerda deberás ser Nivel 210 para Entrar.") say("Suerte Viajeros...!!") say("") say_reward("Quieres entrar?") local templo = select("Si" , "No") if templo == 1 then pc.warp(21600, 336000) else say_title("*ANCIANO*:") say("Vale, vuelve cuando estés listo.") say("By Metin2 Skill - www.metin2skill.com") return end end when 20094.chat."Acceso al Templo Perdido" with pc.get_map_index() == 42 begin timer("entrada_templo", 5) chat("Suerte Viajeros") end ---PLANTA:1--- when entrada_templo.timer begin d.new_jump_all(42, 216, 3367) d.setf("fuuton", 1) d.regen_file("data/dungeon/fuuton/planta_1.txt") d.notice("Viajeros, destruye el Metin para liberar el Mal de esta primera Planta") d.spawn_mob(8027, 240, 166) end when 8027.kill with d.getf("fuuton") == 1 begin d.notice("Han destruido el Metin del Mal, avanzarán a la 2da Planta.") timer("segunda_planta", 5) end ---PLANTA:2--- when segunda_planta.timer begin d.jump_all(190, 3657) d.setf("fuuton", 2) d.regen_file("data/dungeon/fuuton/planta_2.txt") d.notice("Destruye al Guardían de esta Planta") d.spawn_mob(2738, 186, 405) end when 2738.kill with d.getf("fuuton")== 2 begin d.notice("Han destruido al Guardían") timer("tercera_planta", 5) end ---PLANTA:3--- when tercera_planta.timer begin d.jump_all(501, 3471) d.setf("fuuton", 3) d.setf("metines", 5) d.regen_file("data/dungeon/fuuton/planta_3.txt") d.notice("Destruye los Metines, tienen 5 minutos.") d.spawn_mob(8025, 570, 224) d.spawn_mob(8025, 556, 225) d.spawn_mob(8025, 563, 226) d.spawn_mob(8025, 560, 225) d.spawn_mob(8025, 556, 220) end when 8025.kill and d.getf("fuuton") == 3 begin d.setf("metines", d.getf("metines")-1) if d.getf("metines") == 0 then d.notice("Han destruido todos Metines, ascendereis") timer("cuarta_planta", 5) end d.notice("Han destruido 1 Metin, aun les quedan "..d.getf("metines").." por destruir") end ---PLANTA:4--- when cuarta_planta.timer begin d.jump_all(573, 3904) d.setf("fuuton", 4) d.regen_file("data/dungeon/fuuton/planta_4.txt") d.notice("Matar a los mob y dar con el verdadero.") local fuu = math.random(1, 5) if fuu == 1 then local vid = d.spawn_mob(2740, 544, 582) d.set_unique("real", vid) elseif fuu == 2 then local vid = d.spawn_mob(2740, 545, 567) d.set_unique("real", vid) elseif fuu == 3 then local vid = d.spawn_mob(2740, 599, 555) d.set_unique("real", vid) elseif fuu == 4 then local vid = d.spawn_mob(2740, 578, 556) d.set_unique("real", vid) elseif fuu == 5 then local vid = d.spawn_mob(2740, 589, 565) d.set_unique("real", vid) end end when 2740.kill with pc.in_dungeon() and d.getf("fuuton")== 4 begin if d.is_unique_dead("real") then d.notice("Haveis matado el mob verdadero") d.notice("Ascendereis de planta") timer("quinta_planta", 5) else d.notice("Este mob no es el correcto") end end ---PLANTA:5--- when quinta_planta.timer begin d.jump_all(282, 3993) d.setf("fuuton", 5) d.regen_file("data/dungeon/fuuton/planta_5.txt") d.notice("Mata al Gran Jefe *|CYCLOPS BOSS DEVIL|*") d.spawn_mob(2739, 187, 670) end when 2739.kill with d.getf("fuuton") == 5 begin notice_all("El personaje ".. pc.get_name() .." ha derrotado al Gran Jefe *|CYCLOPS BOSS DEVIL|*") chat("Viajeros, haveís completado el desafio, Metin2 Skill Team - By Fuuton97") timer("final_planta", 60) end ---SALIDA--- when final_planta.timer begin warp_to_village() end end end Si la deseas descargar la dungeon en formato .quest acá:

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Descargar regen's:

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Espero que les guste, un saludo Fuuton97.
  14. Me Gusta
    metinplay2 reacted to Akroma in Baul del Aprendiz   
    Bueno, ya que estaba hablando con vampirito, e decidido hacer el baul del aprendiz, esta bastante simplificado con 1 array muy facilmente modificable.
    Aqui os la dejo.
     
    Link:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  15. Me Gusta
    metinplay2 reacted to Mikimous in [Plechito] Maps/Dungeon/Weapons/Mount/Pets   
    Hello, bears. Here you have a list where you can find the entire plechito available on the internet. You don't have to search, and we provide it to prevent the sale of free items, as is the case with one of the Polish forums.
    free
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    The list is constantly updated
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  16. Me Gusta
    metinplay2 reacted to Robert in Cliente Metin35 año 2007   
    Descarga: 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Contraseña: Metin35

  17. Me Gusta
    metinplay2 reacted to Randaron in Cliente 2008 Virgen 100%   
    Buenas tardes , Vengo a traer un cliente virgen 2008 para los que quieran trabajar files antiguos !


    Link:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Puede descomprimir los archivos en el paquete con EterNexus y para iniciar el cliente puede crear un archivo .bat con el texto de inicio metin2.bin dentro de él.
  18. Me Gusta
    metinplay2 reacted to Randaron in Sv Files Metin2009 V1.2 Full   
    Buena Zone! Cuando publiqué ServerFile2009 ... tengo un pequeño error ... ¡y lo resolví en el lado del cliente! y lo instalé todo !!! ¡va bien para el juego 2089m! ¡Base de misiones de miembros! ¡miembro del cliente solo 4 systeme! Tamaño 680 MB! ¡Vaya bueno y con 512 MB de RAM!

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. 1) ¡Pregunta a la Ayuda de GM!
    2) Modificar la interfaz Clog-Client
    3) ¡el nuevo cluster de mapas map1 con plantas!
    4) el sistema pvp cuando mata a un jugador aparece por encima del efecto normal * NO POKEMAN * ERROR ¡Cliente resuelto!
    ¡TUT MYSQL! Instalar mysql y juego! dar reinicio! Restablecer contraseña mysql dar reinicio y listo!   Files:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Cliente:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Creditos a :
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. NO OLVIDES DEJAR TU MG Y DAR GRACIAS !!
  19. Caca
    metinplay2 got a reaction from Acer in Files Metin2 Rage   
    sua lib está com problema
     
  20. Me Gusta
    metinplay2 got a reaction from Troya9212 in Files Metin2 Rage   
    sua lib está com problema
     
  21. Me Gusta
    metinplay2 reacted to Lord Ahriman in Files - Metin2Apology + Sources + Pagina Web! Liberados.   
    Post cerrado.
  22. Gracias
    metinplay2 got a reaction from wille damare in Files Metin2 Rage   
    sua lib está com problema
     
  23. Me Gusta
    metinplay2 reacted to Dragonslayer in [Source]Mainline listo para compilar   
    Bueno pues me lo pidieron y de paso os lo posteo por si a alguien le sirve. 
    Solo tiene fixs. Esta limpio.
    Esto lo copiais en vuestro mainline.
     
    Trae:
    - Makefiles cambiados. - Version.cpp arreglado. - Fix tiempo. - Fix internal ip. - Fix sura espada. - Fix warrior. - Fix cube. Descarga:
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  24. Me Gusta
    metinplay2 reacted to Kronixer™ in Serverfiles MT2Pesege 2020   
    Hola Chicos, de mt2zone mirando foros encontre estos SF capaz y alguien los quiera trabajar.




    NOTA: Establezca la configuración de información del servidor en la sección "lib / server /".
    Inicie sesión en Putty y escriba
    Cd / usr / home / game e ingrese
    Sh start.sh, y cuántos canales abrirá, ingrese y entre se abrirán sin problemas.
     
     
    Creditos a: @ AsiLZаde @ Nikoo85
    DB: 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. : Debes iniciar sesión para ver el contenido del enlace en esta publicación.
     
     
     
     
     

  25. Me Gusta
    metinplay2 got a reaction from Mari Carmen Rodriguez Morete in Files Metin2 Rage   
    sua lib está com problema
     
×
×
  • Crear nuevo...