Jump to content

Christofer Siguas

Miembro
  • Contador contenido

    15
  • Ingreso

  • Última visita

Actividad de reputación

  1. Me Gusta
    Christofer Siguas reacted to luisito0320 in Pagina web Metin2Kai   
    Buen dia.
    Ya que el servidor Metin2 Kai cerro, les queria compartir la pagina de este.
    esta pagina es un desarrollo propio, esta realizada con un framework que se llama django. Dicho framework usa python como lenguaje de programacion.
    la pagina web en si es muy segura, tiene sistema de templates nativos, y panel de administracion.
    cabe destacar que estare actualizando el proyecto con nuevas versiones de django y tambien se van a publicar mas template para dicha pagina.
    si alguien quiere unirse al desarrollo puede enviar sus comits al proyecto.
    porque la libero gratis?
    Esta pagina es un proyecto open source que busca que la gente que no sepa hacer web, cuenten con una web segura y los dejen de timar con web's que todas usan el mismo codigo de base php con funciones que ya estan deprecated ejemplo la funcion mysql. al estar dichas funciones deprecated dichas paginas web's son muy suceptibles a que sean hackeadas, con inyeccion sql.
    Bueno no siendo mas dejo el enlace a github de la pagina web.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Proximamente estare publicando como montar la pagina.
    si necesitan hosting django para esta web pueden contratar conmigo los servicios de hosting. -> www.vps-hosting.es
     
     
  2. Me Gusta
    Christofer Siguas reacted to MiGueLiT0 in [WEB]Eren2   
    Buenas chicas les dejo esta web :V ❤️ 
    imagen: 


     

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  3. Me Gusta
    Christofer Siguas reacted to ChuchoGamer in pagina web #1   
    Hola buenas  tarde les comparto esta web que esta bastante buena y funciona bien 
    les dejo foto  y link de descargar

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

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  4. Me Gusta
    Christofer Siguas reacted to Slabon in Página Web Azteka   
    Les traigo esta página Web que acabo de encontrar.

     
    Datos:
    El diseño ya tiene algo de tiempo, pero según la fuente es una "Pagina Web Completa".
    Idioma Alemán.
    PD. No he tenido tiempo de testear la pagina ya que mi conocimiento en paginas web es mínimo y últimamente he andado ocupado para aprender xD, pero igual se las traigo y espero que alguien pueda probarla y decirnos que tal funciona.
     

    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.  
    Créditos.
     
  5. Me Gusta
    Christofer Siguas reacted to TheKing24 in Web Daichi2 FULL   
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. posteo esta web hermosa, espero les guste, aun no e logrado hacerla funcionar el que sepa que me diga porfa 
    Editado no paso link. "solución no solucionado"
    fuente:just4metin
    Post@
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  6. Me Gusta
    Christofer Siguas reacted to MiGueLiT0 in Pagina Web Simple   
    DESCARGA: 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  7. Me Gusta
    Christofer Siguas reacted to colcrt in nueva web metin2 2021 [html]   
    estaba aburrido asi que me puse a diseñar una web para metin2 con materialize espero les guste, saludos

     
    descalimar: se que en algunas ocasiones las personas abusan con los links de publicidad (3, 4 o mas links) también entiendo los demás motivos pero se que así se incentiva el compartir material y la comunidad se beneficia con el trabajo que realizamos los desarrolladores/diseñadores, a cualquiera le gustaría que valoraran su trabajo con algunos centavos y es que a ti nada te cuesta ver algunos segundos de publicidad y si obtienes script, items y demás, únicos; saludos 

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  8. Me Gusta
    Christofer Siguas reacted to Kronixer™ in WebSite Premiunm (CMS)   
    Descarga :   
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  9. Me Gusta
    Christofer Siguas reacted to autodesk_metin2 in Launcher V1   
    Si claro, pero si no sabes como instalarlo, te dejo por aqui la parte completa del servidor y todo.
     

    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.  
    No se si está las descarga pero yo me lo descargue hace tiempo.
     
    Saludos.
  10. Me Gusta
    Christofer Siguas reacted to autodesk_metin2 in Launcher V1   
    Hola Zoneros,
     
    Quería darles un launcher que hice asi por aburrimiento y para no perder la costumbre, cogí las imágenes de un juego mmorpg. 
    No es mucha cosa pero bueno algo es algo.
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    IMAGEN
     
     
     
  11. Me Gusta
    Christofer Siguas reacted to ChuchoGamer in Ayuda con esta Quest no Crear Gremio   
    hola buenas amigos mi quest no Crea el Gremio les explico voy al npc quiero crear un gremio pero se me cierra cuando le pico crear gremio y se cierra Alguien me puede ayudar
    aqui les dejo la quest 
    para ver se me pueden ayudar porfavor
     
    quest guild_manage begin
        state start begin
        when guild_man1.chat."GM: Comprobar la Fecha" or 
            guild_man2.chat."GM: Comprobar la Fecha" or
            guild_man3.chat."GM: Comprobar la Fecha" 
            with pc.is_gm() begin
            say("Introduzca por favor, usted quiere asegurarse de que el nombre del usuario.")
            local u_name = input()
            local u_vid=find_pc_by_name(u_name)
            if u_vid==0 then 
            say_title("este usuario no existe. ")
            say(u_name)
            return
            end
            local old_vid = pc.select(u_vid)
            u_withdrawTime=pc.getqf("new_withdraw_time")
            u_disbandTime=pc.getqf("new_disband_time")
            pc.select(old_vid)
            withdrawDelay=game.get_event_flag("guild_withdraw_delay")
            disbandDelay=game.get_event_flag("guild_disband_delay")
            say_title("Compruebe que puede agregar la fecha")
            if u_withdrawTime>0 then
            say("De temps: "..time_to_str(u_withdrawTime))
            say("(Latence: "..withdrawDelay.." Jour)")
            say("")
            end
            if u_disbandTime>0 then
            say("Tiempo de disolución: "..time_to_str(u_disbandTime))
            say("(Latencia: "..disbandDelay.." Jour)")
            say("")
            end
            local retryTime1 = u_withdrawTime + withdrawDelay*86400
            local retryTime2 = u_disbandTime + disbandDelay*86400
        
            local retryTime = 0
            if retryTime1 > retryTime2 then 
            retryTime = retryTime1
             else 
             retryTime = retryTime2 
            end
            local curTime = get_time()
            if curTime < retryTime then
            say("Pour remettre a zero le temps: "..time_to_str(retryTime))
            say("(Gauche : "..((retryTime-curTime)/3600).."Heure)")
            say("")
            if is_test_server() then
                local s=select("Reset", "Fermer")
                if s==1 then
                local old_vid = pc.select(u_vid)
                local curTime=get_time()
                pc.setqf("new_withdraw_time", curTime-withdrawDelay*86400)
                pc.setqf("new_disband_time", curTime-disbandDelay*86400)
                pc.select(old_vid)
                end
            end
            else
            say("Inscrivez-vous maintenant");
            say("")
            end
        end
        when     guild_man1.chat."GM: Asociacion de las variables relevantes" or 
            guild_man2.chat."GM: Asociacion de las variables relevantes" or
            guild_man3.chat."GM: Asociacion de las variables relevantes" 
                with pc.is_gm() begin
            test_chat("pc.has_guild: "..bool_to_str(pc.has_guild()))
            test_chat("pc.is_guildmaster: "..bool_to_str(pc.isguildmaster()))
            test_chat("pc.empire: "..pc.empire)
            test_chat("npc.empire: "..npc.empire)
        end
        when guild_man1.chat.locale.guild.withdraw or 
            guild_man2.chat.locale.guild.withdraw or 
            guild_man3.chat.locale.guild.withdraw 
            with pc.hasguild() and not pc.isguildmaster() and (pc.is_gm() or npc.empire == pc.empire) begin
            -- ??
            say(locale.guild.withdraw_confirm)
            local s = select(locale.guild.yes, locale.guild.no)
            if s==1 then
            say(locale.guild.withdraw_msg)
            pc.remove_from_guild()
            pc.setqf("new_withdraw_time",get_global_time())
            end
        end
        when guild_man1.chat.locale.guild.disband or 
            guild_man2.chat.locale.guild.disband or 
            guild_man3.chat.locale.guild.disband 
            with pc.hasguild() and pc.isguildmaster() and (pc.is_gm() or npc.empire == pc.empire) begin
            -- ??
            say(locale.guild.disband_confirm)
            local s = select(locale.guild.yes, locale.guild.no)
            if s==1 then
            say(locale.guild.disband_msg)
            pc.destroy_guild()
            pc.setqf("new_disband_time",get_global_time())
            pc.setqf("new_withdraw_time",get_global_time())
            end
        end
        when guild_man1.chat." Crear Gremio" or 
            guild_man2.chat." Crear Gremio" or 
            guild_man3.chat." Crear Gremio" 
            with (pc.is_gm() or npc.empire == pc.empire) begin
            local level_limit;
            local guild_create_item
            if get_locale() == "euckr" then
            level_limit = 45
            guild_create_item = false
            else
            level_limit = 45
            guild_create_item = false 
            end
            
            if pc.hasguild() then
            return
            end
            if game.get_event_flag("guild_withdraw_delay")*86400 > 
            get_global_time() - pc.getqf("new_withdraw_time") then
            say(string.format("Después de borrar un gremio, debe esperar un tiempo para crear otro.", game.get_event_flag("guild_withdraw_delay")))
            return
            end
            if game.get_event_flag("guild_disband_delay")*86400 > 
            get_global_time() - pc.getqf("new_disband_time") then
            
            say(string.format("Usted tiene que eliminar el gremio!, No se puede crear otro gremio", game.get_event_flag("guild_disband_delay")))
            return
            end
            say(locale.guild.create_confirm)
            local s = select(locale.guild.yes, locale.guild.no)
            if s == 2 then
            return
            end
            if pc.level >= level_limit then
            if pc.gold >= 200000 then
                if not guild_create_item or pc.countitem(guild_create_item)>0 then
                game.request_make_guild()
                else
                say(locale.guild.no_guild_create_item)
                end
            else
                say(locale.guild.create_not_enough_money)
            end
            else
            say(locale.guild.not_enough_leadership)
            end
        end
        end
    end
     
  12. Me Gusta
    Christofer Siguas reacted to KeKo in [NPC] El reto de los demonios   
    Hola a todos, hoy me dio por ver que hace milenios habí­a posteado un npc que cuando hablabas con él te invocaba unos jefes y si los vencias te daba un premio. Por supuesto de aquella no tenia ni idea de hacer quests y no funcionaba así­ que hoy me dio por volver a hacerlo, pero esta vez funciona claro
     
    El funcionamiento es sencillo, tu hablas con el npc y estes donde estes te invocará el jefe que le digas, cuando mates a los 6 jefes (cuando matas a uno de los que cuentan te sale un mensaje en la barra de chat) te invoca el último jefe que es el que te da el premio.
     
    Sé que es una tonteria pero me da pena que cuando lo hice por primera vez alguien haya podido quedar con las ganas, así­ que ahora que si que sabí­a hacerlo bien pos lo hice.
     
    Aqui teneis unas foticos:
     

    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.
    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.  
    Y aquí­ la quest en sí­, como suponeis podeis editarla todo lo que querais, aunque no taria de más que digais que lo hice yo si lo usasis xd. Como toda quest la meteis en /home/game/quest (o la ruta en la que tengais vuestra carpeta quest) y luego la cargais cn el comando ./qc retodemonios.quest. Os dejo adjunta la quest tmbn ya creado el archivo .quest por si os da pereza hacerlo vosotros.
     
    *El mob que le puse de id 2608 es el dragon de fuego de hdlgp que quedaba bien como jefe del npc y mola verlo, pero vosotros ponerle el que querais xd
     

    quest retodemonios begin state start begin when 20095.chat."El reto de los demonios" begin say_title("El reto de los demonios") say("") say("Veo que estas preparado para afrontarlo") say("Elige a tu adversario") say("Y preparate para la lucha") say("Hay que acabar con 6 jefes") say("pero solo aquellos que te salga un mensaje") say("al acabar con ellos sol validos.") say("Descubre el reto final al acabar con el sexto") say_reward( "NPC by KeKo!" ) local s = select ( "Reaper", "Reina arana", "Rey demonio", "Nueve colas", "Rey arana", "Comandante Zin", "Cerrar" ) local coor_x = pc.get_local_x() local coor_y = pc.get_local_y() local cor_x = math.random(0,10) local cor_y = math.random(0,10) if s == 1 then mob.spawn(1093, coor_x + cor_x , coor_y + cor_y, 1) pc.setqf("jefesdem", 2) elseif s == 2 then mob.spawn(2092, coor_x + cor_x , coor_y + cor_y, 1) pc.setqf("jefesdem", 2) elseif s == 3 then mob.spawn(1092, coor_x + cor_x , coor_y + cor_y, 1) pc.setqf("jefesdem", 2) elseif s == 4 then mob.spawn(1901, coor_x + cor_x , coor_y + cor_y, 1) pc.setqf("jefesdem", 2) elseif s == 5 then mob.spawn(2091, coor_x + cor_x , coor_y + cor_y, 1) pc.setqf("jefesdem", 2) elseif s == 6 then mob.spawn(2494, coor_x + cor_x , coor_y + cor_y, 1) pc.setqf("jefesdem", 2) elseif s == 7 then return end end when 1901.kill or 2494.kil or 2092.kill with pc.getqf("jefesdem") == 2 begin if pc.getqf("jefesdem") > 1 then pc.setqf("retodemonio", pc.getqf("retodemonio") + 1) chat("Has acabado con uno de los jefes") if pc.getqf("retodemonio") > 5 then local coor_x = pc.get_local_x() local coor_y = pc.get_local_y() local cor_x = math.random(0,10) local cor_y = math.random(0,10) mob.spawn(2608, coor_x + cor_x , coor_y + cor_y, 1) pc.setqf("jefereto", 2) pc.setqf("retodemonio", pc.getqf("retodemonio") - 6) chat("Acaba con el dragon azul") end end end when 2608.kill begin if pc.getqf("jefereto") > 1 then say("Has superado el reto de los demonios") say("puedes descansar ya que te has ganado tu premio") say("al exterminar a todos esos jefes.") say_reward("Has ganado 100kk") say_reward("Has ganado 5kk de exp") pc.change_gold(100000000) pc.give_exp2(50000000) notice_all ("El jugador "..pc.get_name().." ha superado el reto de los demonios") pc.setqf("jefereto", pc.getqf("jefereto") - 2) end end end end Quest 100% by KeKo!
  13. Me Gusta
    Christofer Siguas reacted to Alonso Madrigal García in Implementar armaduras por TXT   
    Pues hoy vengo con una pequeña guía para implementar nuevas Armaduras a su servidor de metin2.
    Si bien esto se maneja en 2 partes, la parte del cliente (Carpeta de metin->Carpeta Pack) y la parte del servidor(Win SCP o Filezilla).
    Herramientas a usar; les dejo un link de descarga, en caso de que no lo tengan.
    Usaremos un encriptador, para poder encriptar y desencriptar el cliente.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. un dumpeador el cual no será muy útil para dumpear ciertos archivos.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. una aplicación para lograr mirar nuestros archivos .TGA que serán nuestros iconos.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. un editor de texto de su preferencia, por si acaso les dejo el que uso.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. y por ultimo, la herramienta para ver los Archivos gr2 (GrannyViewer) .

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Antes que nada sin profundizar en el tema explicare que es un archivo Gr2, que son las texturas y nuestro icono.
    Archivo Gr2:
    El archivo Gr2 es el modelo de nuestra armadura o arma.
     
    las texturas:
    es el archivo que permite que veamos los colores de la armadura tal y como tienen que ser; estas se pueden encontrar en 3 diferentes formatos,  los cuales son: .jpg .TGA o .DDS
    Icono:
    Estos serán la imagen con la que ubicaremos los acc/armas/armaduras dentro del juego, se encuentran en formato TGA y van dentro del cliente.
    Las armaduras se implementan por defecto en la ruta d:/ymir work/pc, que corresponde en el cliente al pc.eix y pc.epk, si son de:
     
    Guerrero hombre  Sura hombre Ninja mujer Chamán mujer  
    Las armaduras se implementan por defecto en la ruta d:/ymir work/pc2, que corresponde en el cliente al pc.eix y pc.epk, si son de:
     
    Guerrera mujer Sura mujer Ninja hombre Chamán hombre  
    Según la raza hay cuatro carpetas estándar:
    Bueno ahora si a lo que venimos.
    Si descargaste las herramientas que se mencionaron en la guía  tendremos que crear unas carpetas en la cual meteremos los archivos descomprimidos.

    si ya los tienes omite este paso. 
     
    para esto ocuparemos desencriptar la carpeta root, local/local_#(es, en eu...).
    Bien como hacemos esto, lo primero es ir a nuestra carpeta del cliente (Donde tengamos el "Metin"), una vez dentro tendremos que ubicar la carpeta pack, en la cual encontraremos estos archivos. si no han cambiado las claves de encriptación estas deberían ser .eix y .epk . una vez que ubiquemos estos archivos los moveremos a una carpeta donde tengan su Encriptador/Desencriptador.
    Estos deberán ser 2 y  están con el mismo nombre diferentes extensiones.

     mover el archivo local, root e icono a su carpeta donde hayan colocado su encriptador.

    desencriptar estos archivos, si no saben como funciona el encriptador les dejo una explicación en una imagen a continuación.

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Esto nos generara 3 carpetas: Root/Local/Icon.
     Nos dirigiremos a la carpeta root, ahí encontraremos un archivos .MSM de nombre:
    assassin_m assassin_w shaman_m shaman_w sura_m sura_w warrior_m warrior_w Abrimos todos los archivos con nuestro editor de texto, acá es donde nosotros declaramos nuestro modelo de armadura, atuendo y peinado, para que lo reconozca el juego al momento de equiparlo.
    en estos archivos declaramos tanto peinados como armaduras.
    Peinados:    
    Group HairData00
        {
            HairIndex            0
            Model                "hair/hair_1_1.gr2"
            SourceSkin            "hair/hair_1_1.dds"
            TargetSkin            "warrior_hair_01.dds"
        }
     
    Armaduras:
        Group ShapeData00
        {
            ShapeIndex            0
            Model                "warrior_novice.gr2"
            SourceSkin            "warrior_novice_red.dds"
            TargetSkin            "warrior_novice_red.dds"
        }
    Antes de pegar, mover o editar algo, hay que revisar lo siguiente, Que el ShapeDataCount este en 999 de esta forma le decimo que solo podrá tener implementada 999 armaduras, si uno supera ese limite sin declarar en el datacount, su modelo no se vera en el juego hasta que lo modifique, el numero de armaduras implementada no debe pasar a nuestro contador.
    Group ShapeData
    {
        PathName    "d:/ymir work/pc/warrior/"
        ShapeDataCount            999
     
    Una vez que hayamos colocado esto bajaremos casi al final del documento, en donde encontremos el ultimo Group ShapeData este puede variar dependiendo del numero de armaduras implementadas.
    Bueno nos situamos debajo del ultimo Group ShapeData y metemos nuestro modelo de esta forma:
        Group ShapeData# ----------------># en el signo de gato deberá ir el siguiente digito, es decir si termina en Group ShapeData228 el siguiente siguiente será  Group ShapeData229 y así sucesivamente.
        Group ShapeData#
        }
            SpecialPath            "d:/ymir work/pc/warrior/" ----> SpecialPath es para indicar que lo implementaremos en un archivo especial.
            ShapeIndex            41774  ---------------------------->El shape index será el numero en el cual se guardara la textura. debe ser el mismo del vnum para evitar problemas.
            Model                "warrior_aoh_blue.gr2"----------------> nuestro modelo de armadura
            SourceSkin            "warrior_aoh_blue.dds"
            TargetSkin            "warrior_aoh_blue.dds"
        }
    Esto lo haremos en cada documento .MSM de la carpeta root lo único que cambiara será la ruta del specialpath y posiblemente el nombre del modelo esto depende.
    "d:/ymir work/pc/warrior/" Hombre
    "d:/ymir work/pc2/warrior/" Mujer
    "d:/ymir work/pc/sura/" Hombre
    "d:/ymir work/pc2/sura/" Mujer
    "d:/ymir work/pc2/assassin/" Hombre
    "d:/ymir work/pc/assassin/" Mujer
    "d:/ymir work/pc2/shaman/" Hombre
    "d:/ymir work/pc/shaman/" Mujer.
    Una vez que hayamos terminado de colocar los modelos en cada  .MSM
    nos pasamos a la parte del servidor, en donde iremos a la parte en donde tendremos nuestro item proto e item name, en estos documentos pondremos los vnum de las armaduras que se implementaron. para esto tenemos que revisar que los vnum que se hayan a colocar no existan en EL ITEM_PROTO, si ya existen tendremos que buscar otro numero que no exista y cambiarlo tanto en el item_proto como en los archivos .MSM a continuación les dejare las líneas para implementarlos a la item_proto, en este caso se podrá implementar de 2 formas, como atuendo o como armadura
    Linea para atuendo:
    41774    Atuendo Dragon Azul(M)    ITEM_COSTUME    COSTUME_BODY    2    ANTI_FEMALE | ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_STACK | ANTI_MYSHOP    NONE    NONE    NONE    0    0    0    0    0    LIMIT_NONE    0    LIMIT_NONE    0    APPLY_MAX_HP    2000    APPLY_ATTBONUS_MONSTER    10    APPLY_NONE    0    5    0    0    41774    0    0    0    0    0.
    Linea para armadura:
    41774    Armadura Dragon Azul(M)    ITEM_ARMOR    ARMOR_BODY    2    ANTI_FEMALE | ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_STACK | ANTI_MYSHOP    NONE    NONE    NONE    0    0    0    0    0    LIMIT_NONE    0    LIMIT_NONE    0    APPLY_MAX_HP    2000    APPLY_ATTBONUS_MONSTER    10    APPLY_NONE    0    5    0    0    41774    0    0    0    0    0.
    Si implementaron muchas armaduras, solo cambien el vnum.
    Nota: OJO Tienen que hacer que el ShapeIndex de su armadura coincida con el Value 3 ya que este es el que nos toma las texturas, como pueden notar en la linea el vnum y el value 3 se repiten.
    Ya que terminemos con el item_proto, nos pasamos al item_name, en donde usaremos los vnum que utilizamos para las armaduras y le asignaremos un nombre de esta forma:
    #Vnum    Nombre
     guardamos los documentos y tiramos reboot.
    descargaremos los documentos item_proto e item_name del winscp en nuestra pc.
    Una vez que tengamos los 2 documentos descargados, moveremos los dos archivos a la carpeta donde pusimos nuestro dumpeado (Dumproto) y ejecutamos ya sea el archivo dumproto o dumproto_pack, los dos funcionan igual, esto nos dará un tercer archivo llamado  item_proto.
    Bien una vez que tengamos nuestro tercer archivo nos dirigiremos a la carpeta donde tengamos nuestra carpeta local desencriptada la abrimos y seguimos esta dirección \locale\locale\es (En mi caso en su caso puede variar  el nombre de la ultima carpeta) Ya dentro de la ultima carpeta pegaremos el archivo item_proto generado por el dumproto  directamente, nos pedirá remplazar el anterior y damos en si, si no les aparece es por que están en el lugar equivocado.
    En este mismo sitio abriremos el archivo item_list en el cual declararemos nuestros iconos de la siguiente forma:
    Vnum    ARMOR    icon/item/Nombre del icono.TGA 
    Esto es opcional en caso que no se muestren los iconos : una vez declarado el icono el item_list iremos a la carpeta icono que desencriptamos  y nos iremos a la siguiente ubicación. \icon\icon\item y pegaremos nuestros iconos. 
    ya que hagamos esto creamos 1 carpeta(le colocan el nombre que quieran). dentro de esta carpeta crearemos 2 carpetas una la nombramos icon dentro de esta colocaremos una carpeta llamada item en la cual meteremos los iconos. y en la segunda carpeta la nombramos ymir work en la cual meteremos la carpeta pc y pc2 que contengan nuestros modelos gr2.
     
    para que se efectuen los cambios tanto en el cliente como en el servidor tendremos que encriptar de nuevo la carpeta local, root, icon y la nueva carpeta que crearon, para esto nos generara 8 documentos .eix .epk una vez encriptadas vamos a la carpeta del cliente, nos ubicamos en la carpeta pack  y los remplazamos por los que estén ahí.
    una vez que metamos los archivos en la carpeta pack buscamos un documento llamado Index en esta misma nos colocamos al final del documento y colocamos el nombre de su documento generado por la carpeta que crearon y le colocan un asterisco abajo.
    Entran al cliente y ponen el comando /i vnum de sus armaduras implementaron...
    Espero que les sea de ayuda, en caso de que algo no les quede claro pueden mandarme mensaje y los podría ayudar con gusto, que pasen un excelente día!
     
     
     
     
     
     
     

     
     
     
     
  14. Me Gusta
    Christofer Siguas reacted to PlayMetin in COMO IMPLEMENTAR UNA ARMADURA VIDEO-GUIA PARA PRINCIPIANTES   
    Buena chicos esta guia es para que sepais como implementar una armadura en el servidor pero desde casi cero por la pate de servidor y cliente un video de larga duracion no soy un pro ni mucho menos estoy en eso pero solo doy de lo que se Gracias y se les quiere a todos 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  15. Me Gusta
    Christofer Siguas reacted to Dilong in Evento de apuestas   
    Esto lo hice basandome en la idea de alguien que pedia uno via source con gui y todo, pero en mi caso es solo quest simple, asi que no es gran cosa
    Avisen si hay algun problema con la quest
    Quest:
    Dejo el .sql en un adjunto

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  16. Me Gusta
    Christofer Siguas reacted to Elite™ in Quest Nuevas misiones de Uriel   
    Descubre el siguiente capítulo de tu diario de misiones. ¡Sumérgete en
    una historia vertiginosa sobre la misteriosa Nación Oscura y desvela el
    enigma de la última Sacerdotisa del Dragón! ¿Lograrás evitar el
    resurgimiento de Sung Mahi, el dios de todos los demonios, y salvar a la
    humanidad de la perdición? ¡Nuestro reino cuenta contigo!
     
    Nación Oscura I
     
     
     
     
    Misión anterior: La última página
    Requisito: Nivel 60
    Dado por: Uriel
    Objetivos: Encuentra la vieja lápida sepulcral, consigue la copia de la inscripción
    Recompensa: 980.000 exp, 175.000 yang, 10 Pergaminos de exorcismo, 10 Flores de meloctón, 10 Lilac
     
    Nación Oscura II
     
     
     
     
     
    Misión anterior: Dark Nation I
    Requisito: Nivel 60
    Dado por: Uriel
    Objetivos: Matar arboles diabólicos hasta obtener el documento antiguo y llevar a Uriel. Después recolectar 9 documentos antiguos y dárselos a Uriel.
    Recompensa: 3.000.000 exp, 3 Lecturas concentradas, 1 Tela de araña, 1 Saco de veneno de araña
     
    Pd: Estas misiónes estan creadas 100% por mi
    Espero que os sirva
    Acepto críticas constructivas
  17. Me Gusta
    Christofer Siguas reacted to Rafa23Alzira in [RELEASE-QUEST]Añadir preguntas a OX desde el servidor   
    Hola chicos, después de tanto tiempo os traigo algo que quería hacer desde hace tiempo, es una tontería pero sirve para bastante.
    Se trata de una quest para añadir preguntas al ox desde dentro del servidor, de este modo si quieres que algún gm tuyo o como tu quieras añada una pregunta al oxquiz y no quieres que sepa tus datos del servidor lo puedes hacer fácilmente.
     
    La quest está hecha en un ratillo, así que puede que tenga algún fallo, si lo veis o veis como se puede mejorar decirlo o postear una nueva versión. Sin enrollarme más aquí la dejo:
    --[ QUEST AÑADIR PREGUNTAS AL OX DESDE SV -- REALIZADA POR RAFA23ALZIRA (METIN2NEOCON.COM) -- GRACIAS A PACIFICADOR POR LA FUNCIÓN "write_or_read" -- SERÍA DE AGRADECIMIENTO NO QUITAR LOS CREDITOS]--quest new_ask_ox begin state start begin when 20358.chat."Nueva pregunta para ox's" with pc.is_gm() begin local comilla = string.char(34) say_title("¿Que deseas hacer?") local q = select ("Añadir pregunta", "Información", "Cancelar") if q == 3 then return elseif q == 2 then say_title("Información") say("Hola, mediante este nuevo sistema podrás") say("incluir preguntas en el ox directamente") say("desde el NPC, sin necesidad de abrir el FTP") say("y no hace falta ningún tipo de reload.") wait() say_title("Pasos a seguir") say("1- Pulsar en añadir pregunta.") say("") say("2- Escribir tu pregunta, cuando llegues al límite") say("simplemente pulsa enter y sigue.") say("") say("3- Cuando termines de escribir pulsa la tecla ESC") say("y elige si quieres que la pregunta sea verdadera o[ENTER]falsa") elseif q == 1 then say("Escribe aquí la pregunta") local pregunta = long_input() local prefix = ("add_ox_quiz") if string.len(pregunta) < 5 then -- PONED UN 0 SI NO QUEREIS ESTO say("Esta pregunta no es valida") else say("Es verdadera o falsa") local v_o_f = select ("Verdadera","Falsa") if v_o_f == 1 then write_or_read("/usr/home/game/share/locale/germany", "oxquiz.lua", "escribir", ""..prefix.."(1, "..comilla..""..pregunta..""..comilla..", true)") elseif v_o_f == 2 then write_or_read("/usr/home/game/share/locale/germany", "oxquiz.lua", "escribir", ""..prefix.."(1, "..comilla..""..pregunta..""..comilla..", false)") end end end end endend Para que os funcione necesitareis varias funciones, aquí os las dejo:
     
    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.
     
    Si os pide alguna función más simplemente ponedla en quest_functions y ya está. La quest está testeada y funcionando 100%.
     
    La dejo también en pastebin para respetar tabulaciones.
     
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. -- En modo normal
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. -- En Grande
  18. Me Gusta
    Christofer Siguas reacted to Jfirewall in Sistema de bendiciones   
    Video de sistema en el juego 

    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Buenas noches, este sistema lo cree hace algunos años, mirando mi baúl decidí aportarlo la verdad ya ahora todo avanzado tanto que esto es una "basura" por decirlo de esta manera
    en que consiste el sistema:
    Para ganar puntos de bendiciones lo que tienes que hacer es matar, personaje de otros reinos y ir acumulando, como en todo servidor ay muchos ventajosos y yo lo configure para que fueran 100 muertes, para que tuviera un poquito de dificultad igual en la quest ustedes pueden editar el numero, el beneficio que yo decidi ponerle es poner una mini loteria porque tu das los puntos y el te entrega un item aletoriamente, pero no cualquier item, sino que te entrega un item con el bonus que tu elijas y al maximo (cada cual lo maneja a su modo)
    local items = {19,29,39,49,59,69,89,99,59,109}-- vnum items local bonus = { -- puedes agregar mas bonus si lo deseas {1,5000}, -- Max Hp {2,20}, -- Max Sp {3,20}, -- Vitalidad {4,20}, -- Inteligencia {5,20}, -- Fuerza {6,20}, -- Dextreza {7,20}, -- Velocidad de ataque {8,20}, -- Velocidad de Movimiento {9,20}, -- Velocidad Hechizo {10,20}, -- Regeneración de HP {11,20}, -- Regeneración de SP {12,20}, -- Probabilidad de Envenenamiento {13,20}, -- Probabilidad de Apagon {14,20}, -- Probabilidad de Retardo {15,20}, -- Probabilidad de golpes críticos {16,20}, -- Probabilidad de golpes de penetración {17,20}, -- Fuerza Contra MedioHumanos {18,20}, -- Fuerza Contra Animales {19,20}, -- Fuerza Contra Orcos {20,20}, -- Fuerza Contra Misticos {21,20}, -- Fuerza Contra No-muertos {22,20}, -- Fuerza Contra Demonios {23,20}, -- Probabilidad de Absorver HP {24,20}, -- Probabilidad de Absorver SP {25,20}, -- Probabilidad de robar HP {26,20}, -- Probabilidad de recuperar SP al golpear {27,20} -- Posibilidad de bloquear un ataque cuerpo a cuerpo } Yo agregue una tabla de bonus, no esta toda ya realmente ay muchos servidores que tendrán mas y mejores los numero que van del 1 al 27 son el id del bonus  y deje la descripcion de cada uno ya ustedes deciden si quieren agregar mas, las que van en "20" son el valor que se da en el juego ejm si elijen fuerza contra no muertos el valor sera de 20% ya ustedes lo editan a su manera.
    yo lo diseñe pensando en que fuera aletoriamente, entonces cree el local items, donde va el id del item que entregara al azar
    en el .rar va una mini guia como instalarlo y va con tabulaciones, la verdad es muy sencillo de instalar ademas que lleva el efecto incluido solo tienen que agregarlo
     
    Creditos: Firewall Works
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  19. Me Gusta
    Christofer Siguas reacted to Dilong in Anillo teleport + guardado de coordenadas   
    Agregar esto en player:
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  20. Me Gusta
    Christofer Siguas reacted to Edward™ in [SISTEMA] Sistema premium   
    Bueno @Jfirewall y yo hemos estado haciendo un sistema.
     
    El sistema consta en:
     
    En el npc que queráis, le dais 50 coins y os dan el acceso premium. No desaparece nunca el premium. "Todo esto es fácil de editar"
     
    Dentro del .rar viene toda la información necesaria para instalarlo.
    Sabemos que el sistema tiene muchas consultas sql, pero en la siguiente versión, lo vamos a renderizar mucho mas.
     
    PD: Tiene un bugg que vamos a arreglarlo y es que te sale el logo de V.I.P pero si te pones una armadura por ejemplo, se te quita el logo, pero al cabo de 1 minuto se te vuelve a poner.
    PD2: Vamos a ir actualizando el post con novedades del sistema.
    PD3: Cualquier bugg, dejarlo anotado en el post.
     
    Contraseña del rar con su link de descarga.
     
     
     
     
     
    Agradecimiento:
    -SeMa por ayuda con mysql_query.
    -Rafa23Alzira por sus consejos y unas funciones.
  21. Me Gusta
    Christofer Siguas reacted to caanmasu in borrar   
    borrar
  22. Me Gusta
    Christofer Siguas reacted to -YC- in [QUEST]Registro en Juego   
    Hola shavots viendo en EPVP he encontrado una quest de registro en juego, pero estaba en alemán la he traducido y se las dejo en español espero les sirva, la dejo en adjunto y aquí:
    quest registro begin     state start begin         when 20011.chat"Registrarse" begin             say_title("Crear Nueva Cuenta")             say("")             say("Nombre de la Cuenta:")             account = input()             say("")             if account == "" then                 say_title("Error!")                 say("")                 say("Cada campo es obligatorio.")                 say("")                 say_reward("Un campo está vacío.")             else                 say_title("Crear una cuenta")                 say("")                 say_reward("Cuenta: ".. account .."")                 say("")                 say("Nombre:")                 name = input()                 say("")                 if name == "" then                     say_title("Error!")                     say("")                     say("Cada campo es obligatorio.")                     say("")                     say_reward("Fallo al llenar un campo.")                 else                     say_title("Crear una cuenta")                     say("")                     say_reward("Cuenta: ".. account .."")                     say_reward("Nombre: ".. name .."")                     say("")                     say("Contraseña:")                     password = input()                     say("")                     if password == "" then                         say_title("Error!")                         say("")                         say("Cada campo es obligatorio.")                         say("")                         say_reward("Fallo al llenar un campo.")                     else                         say_title("Crear una cuenta")                         say("")                         say_reward("Cuenta: ".. account .."")                         say_reward("Nombre: ".. name .."")                         say_reward("Contraseña: No visible")                         say("")                         say("E-Mail:")                         email = input()                         say("")                         if email == "" then                             say_title("Error!")                             say("")                             say("Cada campo es obligatorio.")                             say("")                             say_reward("Fallo al llenar un campo.")                         else                             say_title("Crear una cuenta")                             say("")                             say_reward("Cuenta: ".. account .."")                             say_reward("Nombre: ".. name .."")                             say_reward("Contraseña: No visible")                             say_reward("E-Mail: ".. email .."")                             say("")                             say("Código de borrado:")                             deletecode = input()                             say("")                             if deletecode == "" then                                 say_title("Error!")                                 say("")                                 say("Cada campo es obligatorio.")                                 say("")                                 say_reward("Fallo al llenar un campo.")                             else                                 say_title("Crear una cuenta")                                 say("")                                 say_reward("Cuenta: ".. account .."")                                 say_reward("Nombre: ".. name .."")                                 say_reward("Contraseña: nicht sichtbar")                                 say_reward("E-Mail: ".. email .."")                                 say_reward("Código de borrado: ".. deletecode .."")                                 say("")                                 local menu1 = select("Mostrar contraseña", "Crear una cuenta sin mostrar contraseña", "Salir")                                 if menu1 == 3 then                                     return                                 elseif menu1 == 1 then                                     say_title("Crear una cuenta")                                     say("")                                     say_reward("Cuenta: ".. account .."")                                     say_reward("Nombre: ".. name .."")                                     say_reward("Contraseña: ".. password .."")                                     say_reward("E-Mail: ".. email .."")                                     say_reward("Código de borrado: ".. deletecode .."")                                     say("")                                     local menu2 = select("Crear una cuenta", "Salir")                                     if menu2 == 2 then                                         return                                     else                                         say_title("Exito!")                                         say("")                                         say_reward("La cuenta ".. account .." fue creada.")                                         mysql_query("INSERT INTO account.account (login, password, real_name, social_id, email) values ('".. account .."', PASSWORD('".. password .."'), '".. name .."', '".. deletecode .."', '".. email .."');")                                     end                                 elseif menu1 == 2 then                                     say_title("Exito!")                                     say("")                                     say_reward("La cuenta ".. account .." fue creada.")                                     mysql_query("INSERT INTO account.account (login, password, real_name, social_id, email) values ('".. account .."', PASSWORD('".. password .."'), '".. name .."', '".. deletecode .."', '".. email .."');")                                 end                             end                         end                     end                 end             end         end     end end   Se me olvidaba 
     
    Créditos:
    definitely not Sensenmann de EPVP

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  23. Me Gusta
    Christofer Siguas reacted to XhebasT1an in Quitar Lykan de Seleccionar personaje   
    En los archivos se deja las líneas que se deben modificar para quitar el Lykan de seleccionar el personaje, ósea, en pocas palabras ningún jugador le saldrá para poder seleccionarlo.
     
    Si de pronto sale error al implementar me avisan. Sin embargo las modificaciones fueron probadas y no dio ningún error en el syser en cuanto a quitar el Lykan.
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
     
    Lo único que ya faltaría seria eliminar el drop del Lykan del servidor. Las líneas de item_proto en cuanto a Lykan no se debe eliminar si se hace no dejara prender el servidor.
     
    Modificar el autodopador y la tabla de los bonus
  24. Me Gusta
    Christofer Siguas reacted to Yori in [QUEST]Control para GMs   
    wenas a todos!!
     
    He estado haciendo una quest para los que les da pereza andar con comandos de mutear y esas cosas, tambien puse todos lo que se me ocurrieron, si se me paso alguno, decirlo y lo añado.
     
    Para poder usar la parte de banear gente, hace falta tener lo del mysql para quest, podeis encontrarlo
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. , no se si funcionara la quest sin eso...  



    Debes iniciar sesión para ver el contenido del enlace en esta publicación. para descargar la quest  
     
    Descripcion de opciones:
     
    Halloween: Lo que hace es invocar unos npcs para halloween, deben ser configurados en la quest. Como usar el comando "/m"
     
    Dia/noche: creo que no hace falta explicacion xD
     
    Rates: para poner cualquier rate para reinos o por separado. Pronto rates para gremios xD
     
    Bloquear chat: como su nombre dice, es para silenciar el chat, para quitar el silencio o ver la lista de silenciados.
     
    Navidad: Para activar/desactivar cualquier evento de navidad, como la nieva, el arbol de navidad, los villancicos, Santa Claus, venta de fuegos artificiales, etc
     
    Banear: Banea/Desbanear la cuenta de la persona que quieras, pero necesitas implementar mysql para quest,
    Debes iniciar sesión para ver el contenido del enlace en esta publicación..  
    Teleport: Para que te teletrasportes hacia una persona, o para traerlo hacia ti.
     
     
    Recordad:
     
    No os olvideis de poner vuestros datos y esas cosas en las funciones de mysql_query() al final de la quest hay 4 funciones parecidas a la siguiente, en "root" es el usuario del navicat(suele ser root), en PassNavicat, pos eso, la pass xD, en account no tocarle, y en ipNavicat, es la ip del server, los datos esos, van entre comillas como estan puestos ahy, si las quitais os dara error.
     

    mysql_query("Update account.account set account.status = 'OK' WHERE account.id ="..id.account_id[1].."" ,"root","PassNavicat", "account", "IPNavicat") Si teneis alguna duda, preguntaros, y recordad que nunca esta de mas dar las gracias xD
     
    Saludos!!
  25. Me Gusta
    Christofer Siguas reacted to Karol in QUEST DEL BIOLOGO   
    Nose si ya estaban posteadas pero aqui les vengo a dejar las misiones del biologo del Nivel 4 hasta el lvl 96 Creo que estan al 100% traducidas Bueno espero mis +1 Y Con Unas Gracias Esta Todo Bien Aqui les dejo el link por mega 
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
×
×
  • Crear nuevo...