Jump to content

KeKo

Miembro
  • Contador contenido

    518
  • Ingreso

  • Última visita

  • Días ganados

    74

Todo lo publicado por KeKo

  1. quest subir begin state start begin when levelup or login with pc.get_level() == 5 begin local exp = pc.get_next_exp() pc.change_alignment(20000) -- chivalric pc.change_money(300000000) -- 300kk while pc.get_level() < 80 do pc.give_exp2(exp) -- nivel end end end end
  2. Asi deberia ir, no la he probado asi que dime si algo falla quest comienzo begin state start begin when login with pc.get_level() == 1 begin set_state(comenzar) end end state comenzar begin when letter begin local v = find_npc_by_vnum(idnpc) -- pones la id del npc if v != 0 then target.vid("__TARGET__", v, "Nombrenpc") -- pones el nombre del npc send_letter("Regalo de Bienvenida") -- de nuevo el nombre end end when button or info begin say_title("Regalo de Bienvenida") say("") say("Veo que eres nuevo aqui, te dare un consejo") say("si vas a hablar con nombrenpc en city1") -- de nuevo el nombre say("te dara nivel 80 y yang para comenzar tu aventura") say("") end when __TARGET__.target.click or idnpc.chat."Regalo de Bienvenida" begin -- la id del npc target.delete("__TARGET__") say_title("Regalo de Bienvenida") say("") say("Asi que eres nuevo?") say("aqui tienes entonces nivel 80") say("y 100kk de yang, disfrutalos") say("") pc.change_money(100000000) -- 100 kk de yang while pc.get_level() < 80 do local exp = pc.get_next_exp() pc.give_exp2(exp) -- subirte de nivel end clear_letter() set_state(__COMPLETE__) end end state __COMPLETE__ begin end end
  3. quest portercity begin state start begin when idnpc.chat."Teleporter City" begin say_title("Teleporter") say("") say("A que city quieres viajar?") say("") local main_set3 =select ("Ciudad 1 Jinno","Ciudad 2 Jinno","Ciudad 1 Chunjo","Ciudad 2 Chunjo","Ciudad 1 Shinsoo","Ciudad 2 Shinsoo","Cancelar") if main_set3 == 1 then pc.warp ( 969600 , 278400 ) elseif main_set3 == 2 then pc.warp ( 873100 , 242600 ) elseif main_set3 == 3 then pc.warp ( 55700 , 157900 ) elseif main_set3 == 4 then pc.warp ( 138500 , 234900 ) elseif main_set3 == 5 then pc.warp ( 469300 , 964200 ) elseif main_set3 == 6 then pc.warp ( 360800 , 877600 ) elseif main_set3 == 7 then return end end end end
  4. Lo que viene siendo ponerle un 18 en el campo type en el navicat.
  5. Precisamente yo sí respeto tu postura, eres tu el que no quieres admitir que puede haber misiones para gente de cualquier nivel (por lo tanto eres tu el que no repetas la libre expresion).
  6. Creo que si que la he posteado yo, pero personalmente me gusta mas de esta manera: quest almacen_portatil begin state start begin when ID_OBJETO.use begin -- 70045 tal vez la astilla? game.open_safebox() end end end De ese modo simplemente usas y abre almacen, sin menu ni nada.
  7. Yo nunca posteo armas/armors/mobs/acces con item_proto, para que cada uno pueda hacerselos con los valores que quiera
  8. Por qué? No puedes acaso hacer acaso misiones para gente de cualquier nivel? :tiocereales:
  9. No te emociones demasiado fuuton, primero porque tu no tienes las misiones de ymir para ver si de verdad son todas así (no lo son) y segundo porque no todas las misiones necesitan empezar cn un levelup o login with pc.get_level when login begin set_state(comenzar) end end when 20095.chat."Mision de caza" begin say_title("Mata 50 perros") say("") set_state(caza) end end Y como se te ocurra. El unico problema de eso es que el pergamino anterior dejara de salirte, y suele usarse para decir los mobs restantes.
  10. Tienes que usar el descompilador del cliente del extasis.
  11. Siento deciros que ninguna de las dos va a funcionar. La del command solo servira si el pj que se baja a lvl1 es gm y la segunda solo te bajara 1 nivel, no a nivel 1 Para hacer el npc que quieres necesitas meter esta funcion: This difference file is created by The Interactive Disassembler game2089 00157334: 31 8B 00157335: C0 92 00157336: 85 DC 00157337: D2 00 00157338: 74 00 00157339: 26 00 0015733A: A1 89 0015733B: 20 14 0015733C: 37 24 0015733D: 4C C7 0015733E: 08 44 0015733F: 8B 24 00157340: 80 04 00157341: DC 01 00157345: 89 E8 00157346: 04 26 00157347: 24 AA 00157348: E8 ED 00157349: B3 FF 0015734A: 71 90 0015734B: EE 90 0015734C: FF 90 00312D3E: 70 72 00312D3F: 63 65 00312D40: 5F 73 00312D41: 61 65 00312D43: 74 5F 00312D44: 72 70 00312D45: 61 6F 00312D46: 63 69 00312D47: 74 6E 00312D48: 5F 74 00312D49: 72 73 00312D4A: 61 00 Y añadir al quest_functions las funciones correspondientes: pc.reset_points() -- Te baja a level 1 pc.clear_skill() -- Te reinicia las habs Asi que para hacer el npc puedes cualquier de los que te han hecho ellos pero meterle la funcion buena, x ejemplo: quest reset begin state start begin when login or levelup with pc.get_level() == 250 begin set_state ( information ) end end state information start when letter begin send_letter("Reseteo de level") local iditem = xxxxxxxxx Aqui pones el id del item que quieres que pida xxxxxxxxxxx local cofre = xxxxxxxxx Aqui pones el id del cofre que quieres que regale xxxxxxxxxxx say_title("Reseteo de level") say("Hola "..pc.get_name().." Como eres lv 250") say("Tienes la oportunidad de volver a ser level 1") say("Pero para volver a ser lv 1 necesitas el item:") say("") say_item_vnum(iditem) say("") say_reward("¿Deseas resetear tu level?") local lv = select("Si", "No") if lv == 2 then say_title("Reseteo de level") say("Oh ok, vuelve a clicear en el pergamino") say("cuando quieras reiniciar tu level") say("suerte.") return elseif lv == 1 then say_title("Reseteo de level") say("Estas a punto de bajarte a lv 1") say("") say_reward("¿Estas realmente seguro?") local confirmar = select("Si", "No") if confirmar == 2 then return elseif confirmar == 1 then if pc.count_item(iditem) >= 1 then say_title("Reseteo de level") say("Seras reiniciado...") pc.reset_points() pc.clear_skill() say("Listo! ya eres lv 1") say("Suerte!") pc.remove_item(iditem, 1) pc.give_item(cofre, 1) elseif pc.count_item(iditem) == 0 then say_title("Reseteo de level") say("Lo siento, no tienes el item necesario") say("para el reseteo de level,") say("vuelve cuando lo tengas.") end end end end end end Creditos x supuesto al creador del diff, de inforge.
  12. No esta mal la dungeon, pero no se si te habras fijado en el bug que tiene el mapa xd
  13. Este es pa los configs con + de 30 mapas en games 2089: This difference file is created by The Interactive game_r2089M_32 000A6AA0: 20 FF Tu simplemente abres el parcheador de games: http://metin2zone.net/index.php?/topic/1371-parcheador-diffs/ Donde dice seleccionar game pos eliges tu game y donde diff el archivo .diff que hayas creado pegandole dentro el diff que he puesto arriba y le das a parchear.
  14. Buscando por el baul de los recuerdos me he acordado de la guia de mi amigo narcotico de hace taaaaaanto tiempo sobre como implementar ese mapa y un par dellos mas, asi que aqui la tienes. http://foro.universo...hread-2525.html Por increible que parezca el link de la descarga todavía seguía activo pero por si no tienes cuenta en 4shared te lo dejo en mega: https://mega.co.nz/#!SIAxTKqK!aa_0AFd0SZUG1T739WmCYQkpJKFfpOldQ6z1d6qGYu0
  15. Ese mapa es súper viejo, la mayoria de clientes actuales ya lo traen
  16. Claro, tu unico problema fue usar en pc.getqf en vez de game.get_event por lo demas la estructura estaba bien
  17. Pos mu facil, cojes mi quest de items a P y le bajas el numero quest perfect begin state start begin when 30100.use begin table.foreachi(special.active_skill_list[pc.get_job()+1][pc.get_skill_group()],function(r,skill) pc.set_skill_level(skill,30) end) chat("Has recibido tus P") item.remove() end end end Asi cuando uses el item detectara tu raza y habs y te las subira a G
  18. El procedimiento que sigo es el siguiente: adapto el objeto del juego X (no es que sea un secreto pero prefiero dejaros cn la intriga :trollface: ) y entonces cojo un mapa que este hecho con gr2, como en el caso de esos videos el mapa de demonios, y coloco en el mis nuevos gr2 y regulo el tamaño y la altura a la que aparece el objeto en el mapa hasta que quedan como veis en los videos. En verda tiene su trabajillo, sobre todo el jugar con las cordenazas z P.D: Ya llevo otra mas xd
  19. Vale ya estoi. De paso que te escribo la quest explico para todo aquel que lo lea por si le sirve de utilidad. @sema: has pecado del tipico error de no diferenciar entre jugador y jugadores. Cuando quieras hacer algo que se limite a afectar a un jugador usaras un pc.get o pc.setqf pero cuando quieras hacer cosas que influyan a muchos jugadores usaras siempre un game.get o game.set_event_flag. En este caso como la cosa es limitar el numero de jugadores que pueden entrar al mapa simplemente tendras que meter un game.set_event_flag("jugadores") + 1 cuando un jugador entre al mapa. Para ello puedes ponerlo con un when login pero yo lo haria directamente con el npc que te lleve alli para evitar que entren y los saque si el numero de jugadores excede el maximo. quest limite begin state start begin when idnpc.chat."Teleporter" begin say_title("Teleporter") say("Este mapa es algo especial, solo puede haber") say("cantidadgente personas en el a la vez") -- ahi pones el numero maximo de pj say("") say("En estos momentos hay "..game.get_event_flag("jugadores").." en el") say("") say("Quieres ir al mapa?") say("") local ir = select ("Si" , "Paso") if ir == 1 then if game.get_event_flag("jugadores") >= cantidadgente then chat("Lo siento, el mapa ya esta lleno") return end pc.warp(cordesx, cordesy) -- pones las cordenadas game.set_event_flag("jugadores", game.get_event_flag("jugadores") + 1) -- hay un jugador mas en el mapa end end when logout with pc.get_map_index() == indexmapa begin game.set_event_flag("jugadores", game.get_event_flag("jugadores") - 1) -- cuando se desconectan descuenta un jugador dentro del mapa end end end Y eso seria todo
  20. Otro video subido enseñando otra plataforma, espero que os guste
  21. Buenas zoneros, Actualmente estoi trabajando en la creacion de mis propias mazmorras y aqui teneis un pequeño ejemplo de la primera que he conseguido adaptar a metin2 http-~~-//www.youtube.com/watch?v=6qynBdMyif0&feature=youtu.be Aqui teneis otra muestra de otra plataforma acabada http-~~-//www.youtube.com/watch?v=viN4F9eA6nU&feature=youtu.be Tercera plataforma: Preview del castillo helado:
  22. Ummm, eso usa monturas que se ponen mediante el diff de las mascotas, no de las de pc.mount... asi no vas poder tener mascotas xd
  23. Buenas zoneros, Hoy os voi a explicar un truquillo que aprendi hace mucho tiempo y que a algunos os puede ser muy util en algunas ocasiones. Antes de nada: a que me refiero con "reparar texturas solo cn el gr2"? Pues la cosa es que con este sencillo truco os enseñare a sacar la textura de un gr2 para casos en los que la textura no viene en la descarga de lo que nos hemos bajado 1 - Abrimos el gr2 del cual queremos recuperar la textura con el granny: 2 - Pinchamos en texture inspection y veremos la textura asi: 3 - Pinchamos en back to main menu, le damos a camera y seleccionamos 90 vertical FOV para que la imagen se haga mas pequeña: 4 - Ahora le damos a impr pantalla para hacer una screenshot. Una vez hecha abrimos el paint (o cualquier otro programa de edicion de graficos) y le damos pegar, nos quedara algo asi: 5 - Pues ahora le damos a la herramienta seleccionar y rodeamos la textura y le damos a cortar: 6 - Le damos a nueva imagen y pegamos la textura que hemos recortado. Ahora solo tenemos que guardarla en el formato y con el nombre que diga el gr2. Para ello lo comprobamos abriendo el gr2 y dandole a texture list: Y eso sería todo, ya podeis recuperar texturas de gr2 que no las traen en sus descargas P.D: Ademas os dejo adjunta el arma que he usado en la guía como regalo, es adaptada por mi Un saludo, KeKo espada.rar
  24. Que te de un item pa llamarlo o te suba a monturas?
  25. Aqui la tienes, simplemente te quedara ir rellenando los campos en los que he puesto idmineral y demas quest evento begin state start begin when idnpc.chat."Evento de minerales" begin -- pones la id del npc say_title("Evento de Minerales") say("") say("Buenas "..pc.get_name().." si me traes 200 minerales") say("sean de lo que sean, te dare un objeto") say("") say("Tienes alguno para mi?") say("") local eleg = select ("Si" , "No") if eleg == 1 then say_title("Evento de Minerales") say("") say("Que mineral tienes?") say("") local min = select ("Mineral 1" , "Mineral 2" , "Mineral 3" , "Mineral 4" , "Mineral 5" , "Mineral 6" . "Mineral 7" , "Cerrar") -- ponle el nombre de cada uno if min == 1 then if pc.count_item("idmineral") < 200 then -- pones la id del mineral chat("Lo siento no tienes mineral suficiente, traeme 200") return end pc.remove_item("idmineral", 200) -- pones la id del mineral pc.give_item2("iditem", cantidad) -- pones la id del premio y la cantidad elseif min == 2 then if pc.count_item("idmineral") < 200 then -- pones la id del mineral chat("Lo siento no tienes mineral suficiente, traeme 200") return end pc.remove_item("idmineral", 200) -- pones la id del mineral pc.give_item2("iditem", cantidad) -- pones la id del premio y la cantidad elseif min == 3 then if pc.count_item("idmineral") < 200 then -- pones la id del mineral chat("Lo siento no tienes mineral suficiente, traeme 200") return end pc.remove_item("idmineral", 200) -- pones la id del mineral pc.give_item2("iditem", cantidad) -- pones la id del premio y la cantidad elseif min == 4 then if pc.count_item("idmineral") < 200 then -- pones la id del mineral chat("Lo siento no tienes mineral suficiente, traeme 200") return end pc.remove_item("idmineral", 200) -- pones la id del mineral pc.give_item2("iditem", cantidad) -- pones la id del premio y la cantidad elseif min == 5 then if pc.count_item("idmineral") < 200 then -- pones la id del mineral chat("Lo siento no tienes mineral suficiente, traeme 200") return end pc.remove_item("idmineral", 200) -- pones la id del mineral pc.give_item2("iditem", cantidad) -- pones la id del premio y la cantidad elseif min == 6 then if pc.count_item("idmineral") < 200 then -- pones la id del mineral chat("Lo siento no tienes mineral suficiente, traeme 200") return end pc.remove_item("idmineral", 200) -- pones la id del mineral pc.give_item2("iditem", cantidad) -- pones la id del premio y la cantidad elseif min == 7 then if pc.count_item("idmineral") < 200 then -- pones la id del mineral chat("Lo siento no tienes mineral suficiente, traeme 200") return end pc.remove_item("idmineral", 200) -- pones la id del mineral pc.give_item2("iditem", cantidad) -- pones la id del premio y la cantidad end end end end end
×
×
  • Crear nuevo...