Edward™ Posted January 5, 2015 Report Share Posted January 5, 2015 Bueno he visto que mucha gente esta buscando una quest que les sirva para "bloquear" la experiencia. Os voy a dejar la quest que he hecho para mi. --Quest by Edward for www.alliance2.com quest test begin state start begin when 20094.chat."Anti-Exp" begin local opcion = select("Activar", "Dezactivar") if opcion == 1 then chat("Has activado el anti-exp") pc.setqf("antiexp", 1) else chat("Has dezactivado el anti-exp") pc.setqf("antiexp", 0) end end when kill with pc.getqf("antiexp") == 1 begin while pc.get_exp() > 100 do local exp = pc.get_exp() pc.give_exp2(-exp) end end when login begin if pc.getqf("antiexp") == 1 then chat("Tienes anti-exp activado") end if pc.getqf("antiexp") == 0 then chat("Tienes anti-exp dezactivado") end end end end Es muy simple pero funciona de maravilla. PD: El texto lo editáis a vuestro gusto. jade9477, Kakuzu, Metin Cosmos and 1 other 3 1 Quote Link to comment Share on other sites More sharing options...
Popular Post pepineitor Posted January 5, 2015 Popular Post Report Share Posted January 5, 2015 Debes iniciar sesión para ver el contenido del enlace en esta publicación. Pegasus, Magnus, [[ADM]Dark and 29 others 29 1 2 Quote Link to comment Share on other sites More sharing options...
Edward™ Posted January 5, 2015 Author Report Share Posted January 5, 2015 Debes iniciar sesión para ver el contenido del enlace en esta publicación. Me alegro de que sepas buscar en google Pero bueno, solo te diré que cada quest tiene una cosa distinta. Si te gusta y la necesitas la usas y si no pues no la uses Mas simple imposible. Magnus, litachi1995l, Night-legionm2.com and 7 others 9 1 Quote Link to comment Share on other sites More sharing options...
pepineitor Posted January 5, 2015 Report Share Posted January 5, 2015 Me alegro de que sepas buscar en google Pero bueno, solo te diré que cada quest tiene una cosa distinta. Si te gusta y la necesitas la usas y si no pues no la uses Mas simple imposible. A ver si aprendemos a buscar, aunque solo sea en Google, que por lo visto es algo que todavía no sabes . Y sí eres tan bueno, me explicas para que sirve o que función tiene este bucle de 'tu' quest? while pc.get_exp() > 100 do local exp = pc.get_exp() pc.give_exp2(-exp) end Porque cada quest tiene cosas distinas sí, pero si son cosas inútiles, innecesarias, etc., es basura que hace que el servidor tenga que ejecutar, por si no lo sabías, buscalo en Google . jade9477 1 Quote Link to comment Share on other sites More sharing options...
Edward™ Posted January 5, 2015 Author Report Share Posted January 5, 2015 A ver si aprendemos a buscar, aunque solo sea en Google, que por lo visto es algo que todavía no sabes . Y sí eres tan bueno, me explicas para que sirve o que función tiene este bucle de 'tu' quest? while pc.get_exp() > 100 do local exp = pc.get_exp() pc.give_exp2(-exp) end Porque cada quest tiene cosas distinas sí, pero si son cosas inútiles, innecesarias, etc., es basura que hace que el servidor tenga que ejecutar, por si no lo sabías, buscalo en Google . Que función tiene? Cuando tienes mas de 100 exp te la quita Asi no vas a pasar de nivel. Quote Link to comment Share on other sites More sharing options...
pepineitor Posted January 5, 2015 Report Share Posted January 5, 2015 Que función tiene? Cuando tienes mas de 100 exp te la quita Asi no vas a pasar de nivel. A ver, a ver, a ver, que parece que estás un poco verde en el tema. pc.give_exp2(-exp)Esto te va a quitar toda la exp que tengas, ¿un bucle para que? ¿vas a quitar más de lo que hay? sí ya lo has quitado todo en la primera pasada, pero bueno, tu a lo tuyo. Y pc.get_exp() > 100 ¿Porque solo cuando tengas + de 100 exp? Me lo puedes explicar, que aún no acabo de encontrarle el sentido. Cuando tienes mas de 100 exp te la quita Asi no vas a pasar de nivel. ¿Y por tener más de 100 de exp vás a pasar de nivel? Me lo puedes explicar también por favor. En fin, aqui los rangos los dan al dedillo. Dragonslayer 1 Quote Link to comment Share on other sites More sharing options...
Dragonslayer Posted January 5, 2015 Report Share Posted January 5, 2015 Es desactivar, no dezactivar. XD. Tanto que te metes con la gente por escribir mal, y cometes una falta bien grave. Shafu'. 1 Quote Link to comment Share on other sites More sharing options...
Edward™ Posted January 5, 2015 Author Report Share Posted January 5, 2015 A ver, a ver, a ver, que parece que estás un poco verde en el tema. pc.give_exp2(-exp)Esto te va a quitar toda la exp que tengas, ¿un bucle para que? ¿vas a quitar más de lo que hay? sí ya lo has quitado todo en la primera pasada, pero bueno, tu a lo tuyo. Y pc.get_exp() > 100 ¿Porque solo cuando tengas + de 100 exp? Me lo puedes explicar, que aún no acabo de encontrarle el sentido. ¿Y por tener más de 100 de exp vás a pasar de nivel? Me lo puedes explicar también por favor. En fin, aqui los rangos los dan al dedillo. Vamos a ver. Cuando tu la activas y estas de metines y no quieres subir al metinero de nivel pues el bucle sirve para detectar que cuando tienes 100 exp o la que tu quieras te la reste para que no puedas pasar de nivel. Si pones if solo solo te lo limpia 1 vez, pero si pones bucle te lo quita todo el rato que tengas mas de 100. Quote Link to comment Share on other sites More sharing options...
pepineitor Posted January 5, 2015 Report Share Posted January 5, 2015 Vamos a ver. Cuando tu la activas y estas de metines y no quieres subir al metinero de nivel pues el bucle sirve para detectar que cuando tienes 100 exp o la que tu quieras te la reste para que no puedas pasar de nivel. Si pones if solo solo te lo limpia 1 vez, pero si pones bucle te lo quita todo el rato que tengas mas de 100. Madre mía chaval, cada vez la lías más. ¿Sabes como funciona esta función? when kill with pc.getqf("antiexp") == 1 begin Que me estás contando de un metinero, y mil tonterias, sí quitas toda la exp el bucle deja de funcionar porque no se cumple la condición, madre mía lo que hay que leer, la exp se quita cada vez que matas a un mob, pero tú a tu rollo. Lo que hay que leer (...). Quote Link to comment Share on other sites More sharing options...
Edward™ Posted January 5, 2015 Author Report Share Posted January 5, 2015 Madre mía chaval, cada vez la lías más. ¿Sabes como funciona esta función? when kill with pc.getqf("antiexp") == 1 begin Que me estás contando de un metinero, y mil tonterias, sí quitas toda la exp el bucle deja de funcionar porque no se cumple la condición, madre mía lo que hay que leer, la exp se quita cada vez que matas a un mob, pero tú a tu rollo. Lo que hay que leer (...). Me estas diciendo que el bucle no sirve? Si tu quieres que por cada bicho que mates te quita esa exp que tengas bien. Si yo lo quiero poner en un bucle y solo la quite apartir de x exp pues lo pongo apartir de x exp. Prueba la quest y me dices si funciona o no como yo te estoy diciendo. Si tu quieres poner: when kill begin pc.give_exp2(-exp) --> Pues ponlo, pero como yo no quiero que por cada minion que mates te quita la exp pues no lo pongo asi y pongo el bucle y solo despues de unos cuantos minions. Quote Link to comment Share on other sites More sharing options...
pepineitor Posted January 5, 2015 Report Share Posted January 5, 2015 Me estas diciendo que el bucle no sirve? Si tu quieres que por cada bicho que mates te quita esa exp que tengas bien. Si yo lo quiero poner en un bucle y solo la quite apartir de x exp pues lo pongo apartir de x exp. Prueba la quest y me dices si funciona o no como yo te estoy diciendo. Lo vas pillando ya, poco a poco, el bucle no sirve, no. Te repito local exp = pc.get_exp() pc.give_exp2(-exp) Esto te quita toda la exp, y ese bucle hace la misma función que un IF, innecesario en este caso, y no hace falta que la pruebe, va a funcionar sí, pero como todas las cosas mal hechas, consumirá más recursos del servidor. Además este tipo de 'anti exp' no valen, una cosa es quitar la exp, y otra muy diferente conjelarla. Quote Link to comment Share on other sites More sharing options...
Edward™ Posted January 5, 2015 Author Report Share Posted January 5, 2015 Lo vas pillando ya, poco a poco, el bucle no sirve, no. Te repito local exp = pc.get_exp() pc.give_exp2(-exp) Esto te quita toda la exp, y ese bucle hace la misma función que un IF, innecesario en este caso, y no hace falta que la pruebe, va a funcionar sí, pero como todas las cosas mal hechas, consumirá más recursos del servidor. Además este tipo de 'anti exp' no valen, una cosa es quitar la exp, y otra muy diferente conjelarla. Es lo mismo que pongas: if pc.get_exp() > 100 then local exp = pc.get_exp() pc.give_exp2(-exp) Es lo mismo que el bucle si pongo when kill begin. Pero si tu quieres poner if ponlo, yo prefiero el bucle. Yo en ningún momento quiero bloquearla. Solo quiero que la quite y ya. Quote Link to comment Share on other sites More sharing options...
Lamarck Posted February 26, 2015 Report Share Posted February 26, 2015 Es lo mismo que pongas: if pc.get_exp() > 100 then local exp = pc.get_exp() pc.give_exp2(-exp) Es lo mismo que el bucle si pongo when kill begin. Pero si tu quieres poner if ponlo, yo prefiero el bucle. Yo en ningún momento quiero bloquearla. Solo quiero que la quite y ya. Aver, se refiere que un bucle va a estar consumiendo recursos del servidor innecesariamente. Cuando esté activa la quest, estará ejecutando el bucle todo el rato hasta que encuentre la condición de que haya más de 100 exp. Aquí una quest hecha por pepineitor que te la congela: --***By Pepineitor***-- quest exp_curse begin state start begin when 72501.use begin if pc.getqf("exp_block") == 1 then pc.setqf("exp_block", 0) syschat("Anillo Anti-Exp activado.") syschat("¡Ahora no ganarás experiencia!") syschat("Para volver a ganar experiencia utiliza otra vez el Anillo Anti-Exp.") else pc.setqf("exp_block", 1) pc.setqf("exp_last", pc.get_exp()) syschat("Anillo Anti-Exp desactivado.") syschat("¡Ahora ganarás experiencia!") syschat("Para no ganar experiencia utiliza otra vez el Anillo Anti-Exp.") end end when kill or party_kill with pc.getqf("exp_block") == 1 and not npc.is_pc() begin pc.give_exp2(-(pc.get_exp()-pc.getqf("exp_last"))) end end end matias18 and jade9477 2 Quote Link to comment Share on other sites More sharing options...
Freddy Di Maria Posted December 18, 2020 Report Share Posted December 18, 2020 En 5/1/2015 a las 16:24, pepineitor dijo: Madre mía chaval, cada vez la lías más. ¿Sabes como funciona esta función? when kill with pc.getqf("antiexp") == 1 begin Que me estás contando de un metinero, y mil tonterias, sí quitas toda la exp el bucle deja de funcionar porque no se cumple la condición, madre mía lo que hay que leer, la exp se quita cada vez que matas a un mob, pero tú a tu rollo. Lo que hay que leer (...). Cada quien tiene su manera de codificar, un mismo problema tiene distintas formas de solucionarse Cada uno a su estilo Quote Link to comment Share on other sites More sharing options...
iMixxx Posted June 30, 2021 Report Share Posted June 30, 2021 Tu quest me dejó los pjs permanentemente bajandole la exp cada que llegan a 100 puntos de exp(los que ejecutaron la quest).. gracias. Quote Link to comment Share on other sites More sharing options...
Dilong Posted June 30, 2021 Report Share Posted June 30, 2021 hace 6 minutos, Miixxxx2 dijo: Tu quest me dejó los pjs permanentemente bajandole la exp cada que llegan a 100 puntos de exp(los que ejecutaron la quest).. gracias. Mejor hacerlo por C++, hay guías por ahí Quote Link to comment Share on other sites More sharing options...
metin2lion.com Posted July 1, 2021 Report Share Posted July 1, 2021 hace 17 horas, Miixxxx2 dijo: Tu quest me dejó los pjs permanentemente bajandole la exp cada que llegan a 100 puntos de exp(los que ejecutaron la quest).. gracias. en eso consiste la quest el problema no es la quest es que la activaste y no la desactivaste por lo que continuamente te retira la experiencia tienes que mirar tambien la parte de desactivar la funcion de retirar experiencia asi la activas y desactivas cuando quieras Quote Link to comment Share on other sites More sharing options...
iMixxx Posted July 7, 2021 Report Share Posted July 7, 2021 En 1/7/2021 a las 13:17, metin2lion.com dijo: en eso consiste la quest el problema no es la quest es que la activaste y no la desactivaste por lo que continuamente te retira la experiencia tienes que mirar tambien la parte de desactivar la funcion de retirar experiencia asi la activas y desactivas cuando quieras El problema era que en la parte de desactivar el Anti-Exp, no está asignado para que deje de quitar exp.. De todas formas ya lo solucioné y tengo una mejor Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.