Jump to content

Rafa23Alzira

Miembro
  • Contador contenido

    588
  • Ingreso

  • Última visita

  • Días ganados

    34

Actividad de reputación

  1. Me Gusta
    Rafa23Alzira got a reaction from PACI in [SUGERENCIA] Modificar regla de la sección "SPAM"   
    Hola chicos, creo que esta sugerencia gustará a unos más que a otros, trata de lo siguiente:
     
    Modificar la sección spam evitando hilos tontos, innecesarios y que puedan resultar incluso ofensivos. Para mi sería bueno incluso cambiarle el nombre a la sección por Zone General (Zona general pero dandole un toque Metin2ZONE)
     
    Para ello creo que deberían añadirse normas como lo siguiente:
     
    - No está permitido abrir hilos sin razón alguna: Básicamente evitar hilos tipo "hola" o cosas así y obligar a que si es spam por lo menos trate de algo, algún juego, compartir un vídeo (se podría abrir una sección para esto incluso) o cosas así.
     
    - Los insultos en la sección spam también se sancionarán.
     
    A esto más o menos es a lo que me refiero. Espero se entienda.
     
    Entre todos podemos hacer un Metin2Zone mejor ¿Porque no hacerlo?
  2. Me Gusta
    Rafa23Alzira reacted to PACI in Sistema de Banco - Como diós manda   
    Hola.
    Bueno, esta tarde me aburria, y decidi hacer un sistema de banco, no como los normales, que es depositar el dinero y ale, pero uno con más seguridad al user, sin que haya un limite de yang para guardar.
    Y nada que lo vengo a postear.
     
    La quest es simple, los jugadores pueden crear su cuenta bancaria escribiendo una contraseña, seleccionando una pregunta de seguridad y una respuesta a la pregunta de seguridad.
    Pueden hacer login a su cuenta con su contraseña, si se olvidan, la pueden recuperar, desde que sepan la respuesta a la pregunta de seguridad. Entonces será generado un numero aleatorio que servirá como contraseña hasta que la cambien otra vez.
    Y también, una vez echo el login, podeis cambiar vuestros datos.
     
    También he adicionado la opción de bloqueo de cuenta. O sea, si falláis la contraseña al hacer login unas 5 veces, sólo podréis volver a intentar conectaros 2 horas después, en mi caso. Y lo mismo sucede si falláis la respuesta a la pregunta de seguridad al intentar recuperar la contraseña.
     
     
    Primero adicionais estas funciones que hice al questlib.lua:
     

    bank_path = '/game/bank' function readline(path, x) local linetable = {} for line in io.lines(path..'/'..pc.name) do table.insert(linetable, line) end return linetable[x]end function write_in_file(path, text) if string.find(text, "%[ENTER%]") then text = string.gsub(text, "%[ENTER%]", "n") end local file = io.open(path..'/'..pc.name, 'w') file:write(text) file:close()endDebereis cambiar la variable bank_path para la ruta de la carpeta donde queréis que se guarden los datos de cada personaje. 
    Lo que se guarda en esta carpeta es la contraseña, datos de seguridad y la cantidad de yang que han depositado.
     
    Y por fin, la quest:
     

    quest advanced_bank begin state start begin when 20090.chat.'Bank' begin local question = {'Your moms name?', 'Your fathers name', 'Your pets name', 'Other'} say_title'Bank' if pc.getqf('has_bank_acc') == 0 then say'Hello! Welcome to our City Bank.[ENTER]I guess you havent an account here.' say'Let me explain you how this works:' say_reward'You have to write a password for your account[ENTER]a security question and a security answer.' say_reward'This will increase your security.[ENTER]No one can access your account unless they[ENTER]have your password.[ENTER]' say'You just need to pay 1.000.000 Gold[ENTER]to get your bank account.[ENTER]But always, remember:' say_reward'Do not use other games password.[ENTER]This would make easier to know your pw.[ENTER]And also because' say_reward'admins can see your password.[ENTER]The same is for your question and answer.[ENTER]' say'So.. you wanna continue, and get a[ENTER]bank account?' if select('Yes, of course.', 'Nah, forget it.') == 1 then if pc.get_gold() < 1000000 then say'Sorry, you dont have enough Gold.[ENTER]Come back when you get 1.000.000 Gold.' return end say'Okay, please write your bank acc pw.' local pw = input() if pw == '' then say'Did you change your mind?' return end say'Next step is choose your security question.[ENTER]You can also write one if you want to.' local sqt = select_table(question) if sqt == 4 then say'Okay, please write your question:' local myquestion = input() if myquestion == '' then say'Did you change your mind?' return end question = myquestion else question = question[sqt] end say'Oh right, we are almost finishing.[ENTER]Now enter the answer to your question.' say_reward(question) local answ = input() if answ == nil then say'Did you change your mind?' return end advanced_bank.set_pc_bank_infos(pw, question, answ, 0) say'Great! You are now registered in our bank.[ENTER]Welcome! :)' pc.change_gold(-1000000) end else local mainmenu = select('Log in into my account','I forgot my password','Cancel') if mainmenu == 2 then if pc.getqf('tries') == 5 then say'Sorry, you have tried too many times.[ENTER]Please, try later.' pc.setqf('tries', get_time()+60*60*2) pc.setqf('is_delayed', 1) return elseif get_time() <= pc.getqf('tries') then say'Since you failed 5 times your password[ENTER]you have to wait 2 hours to try again.[ENTER]Too bad!' return end if pc.getqf('is_delayed') == 1 then pc.delqf('is_delayed') pc.delqf('tries') end say'Wow what the hell![ENTER]If you at least know your[ENTER]security answer, we can generate a new pw 4 you.' say'Please, write the RIGHT answer.' if input() ~= readline(bank_path, 3) then say'Wrong, sorry dude..' pc.setqf('tries', pc.getqf('tries')+1) else say'Okay, wait a minute.[ENTER]A number password is being generated.' wait() local random = number(1000, 9999) say('Your new password is '..tostring(random)..'.') advanced_bank.set_pc_bank_infos(random, readline(bank_path, 2), readline(bank_path, 3), readline(bank_path, 4)) end return end if pc.getqf('tries_to_login') == 5 then say'Sorry, you have tried to log in too many times.[ENTER]Please try later.' pc.setqf('tries_to_login', get_time()+60*60*2) pc.setqf('is_login_delayed', 1) return elseif get_time() <= pc.getqf('tries_to_login') then say'Since you failed 5 times your password[ENTER]you have to wait 2 hours to try again.[ENTER]Too bad!' return end if pc.getqf('is_login_delayed') == 1 then pc.delqf('is_login_delayed') pc.delqf('tries_to_login') end say'Yô dawg[ENTER]Welcome back.[ENTER]Please write your password to log in.' local login = input() say_title('Bank') if login ~= readline(bank_path,1) then say('Sorry, your password is wrong.') pc.setqf('tries_to_login', pc.getqf('tries_to_login')+1) return end say'Welcome to Clients Panel.[ENTER]What do you want to do?' say_reward('Currently you have '..readline(bank_path, 4)..' Gold saved.') local sel = select('Take Gold', 'Save Gold', 'Change data', 'Nothing') if sel ~= 4 then say_title('Bank') if sel ~= 3 then say_reward('Currently you have '..readline(bank_path,4)..' Gold saved.') end end if sel == 1 then say'You have to write how much Gold[ENTER]you want to receive.[ENTER]If you want to cancel, please write 0[ENTER]or do not write nothing.' local qt = tonumber(input()) if qt == nil or qt == 0 then say'Did you change your mind?' return end say('So you want to receive '..qt..' Gold. Isnt it?') if select('Yes, it is.', 'Hmm, no') == 1 then advanced_bank.give_money(qt) end elseif sel == 2 then say'How much Gold you want to save?' local whatiwant = tonumber(input()) if whatiwant ~= nil then say('So do you really want to save '..whatiwant..' Gold?') if select('Yes, I want to', 'No, no sorry.') == 1 then if pc.get_gold() < whatiwant then say('You dont have that Gold to save..') return end advanced_bank.save_money(whatiwant) pc.change_gold(-whatiwant) say('Done.[ENTER]Now you have more '..whatiwant..' Gold in your account.') end end elseif sel == 3 then local new say'What do you want to change?' local change = select('Password', 'Security data (Question & Answer)', 'Nothing') if change ~= 3 then say'Please, write your password.' if input() ~= readline(bank_path,1) then say'The password you entered is wrong.' return end say'Please, write the Answer to your security question:' say_reward(readline(bank_path, 2)) if input() ~= readline(bank_path,3) then say'The answer you entered is wrong.' return end if change == 1 then say'Write your new password:' local newpw = input() if newpw == '' then say'Did you change your mind?' return end advanced_bank.set_pc_bank_infos(newpw, readline(bank_path, 2), readline(bank_path, 3), readline(bank_path,4)) say'Your password has been changed.' else say'Okay, choose your new Security Question:' local newquestion = select_table(question) if newquestion == table.getn(question) then say'Write the security question you want:' local newq = input() if newq == '' then say'Did you change your mind?' return end newquestion = newq else newquestion = question[newquestion] end say'Oh right, one more step left.[ENTER]Write the answer to your question:' local newanswer = input() if newanser == '' then say'Did you changed your mind?' return end advanced_bank.set_pc_bank_infos(readline(bank_path,1), newquestion, newanswer, readline(bank_path,4)) say'Your Security data has been changed.' end end end end end function set_pc_bank_infos(pw, question, answer, money) write_in_file(bank_path, pw..'[ENTER]'..question..'[ENTER]'..answer..'[ENTER]'..money..'[ENTER]') pc.setqf('has_bank_acc', 1) end function give_money(value) if pc.get_gold() + value >= 2000000000 then say'You cant take that value. It will bug!' return elseif tonumber(readline(bank_path ,4)) < value then say'You dont have that much Gold in your bank acc.' return end pc.change_gold(value) advanced_bank.save_money(tonumber(readline(bank_path,4))-value) end function save_money(value) write_in_file(bank_path, readline(bank_path, 1)..'[ENTER]'..readline(bank_path, 2)..'[ENTER]'..readline(bank_path, 3)..'[ENTER]'..value) end endendSaludos.
  3. Me Gusta
    Rafa23Alzira got a reaction from MUERTES in podria alguien ayudarme...   
    quest jefe_muerto begin state start begin when VNUMOB.kill begin notice_all(""..pc.get_name().." ha matado a NOMBREMOB") end endend Cambia VNUMOB por el vnum de tu mob y NOMBREMOB por el nombre de tu monstruo.
  4. Me Gusta
    Rafa23Alzira reacted to TheSuzho in [TUTORIAL PHP] Crear tu propio captcha simple   
    *Nuevos LINKS ( 02/05/2014 21:04 )
     
    Buenas, soy TheSuzho y aca os traigo un tutorial hecho 100% por mi, podeis buscar por google que no vereis otro igual, si quereis mas tutoriales de algo referente a programacion web (html, css, php), o ayuda podeis pedirmelo en comentarios u otros medios.
     
    Si no tienes ganas de ver el tutorial completo y quieres descargarlo: 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación. Para ver la demo de como funciona: 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Empecemos:
     
    Lo primero de todo es crear el archivo .php donde vallamos a crearlo.
    Agregamos los TAGS php para empeza
    <?php?> Paso 1: Preguntas y Respuestas
    Ahora vamos a crear un array con las preguntas y las respuestas respectivamente.
    $_A_CAP_SZ_ = array ('__PREGUNTAS__' => array (1 => 'Cuanto es 1 + 2',2 => 'Cuanto es 2 * 2'),'__RESPUESTAS__' => array (1 => 3,2 => 4),); Para editar las preguntas y respuestas solo vale con cambiar la linea despues de =>, por ejemplo, añadimos una pregunta.
    En este caso, como podeis ver, hay 2 preguntas, añadimos una nueva linea debajo de la pregunta 2
    3 => 'Capital de españa' Ahora como hemos creado otra linea, devemos asegurarnos de que la linea anterior acabe en coma, algo asi
    1 => 'Cuanto es 1 + 2',2 => 'Cuanto es 2 * 2',3 => 'Capital de españa' Ahora vamos a hacer lo mismo pero en el apartado respuestas, agregaremos la respuesta a la pregunta nº 3, en este caso, añadimos una nueva linea bajo la respuesta nº 2.
    3 => 'Madrid' Ahora como hemos creado otra linea, devemos asegurarnos de que la linea anterior acabe en coma, algo asi
    1 => 3,2 => 4,3 => 'Madrid' Paso 2: Obtener una pregunta aleatoria
    Para obtener una pregunta aleatoria, basta con añadir abajo del array la siguiente linea:
    DEFINE(aaii,rand(1,3)); Donde pone el numero 1, es el numero inicial de preguntas, y donde pone el 3, es el total de preguntas, solo editan eso y ya esta.
     
     
    Paso 3: Crear la función que verifica si es o no correcto
    Lo primero de todo es definir la funcion:
    function _CHECK_CAPTCHA_($R,$rr){} “$R´´ sera el resultado que manda el formulario, y “$rr´´ sera la respuesta, ahora vamos a convertir el texto a minusculas para evitar errores de minusculas y mayusculas, agregamos a la función:
    $R = strtolower($R);$rr = strtolower($rr); Ahora solo tenemos que hacer que la funcion nos devueva el resultado TRUE si es correcto y FALSE si es incorrecto, añadimos las siguientes lineas:
    if ($R == $rr){return true;}else{return false;} Os deve quedar una cosa asi:
    function _CHECK_CAPTCHA_($R,$rr){$R = strtolower($R);$rr = strtolower($rr);if ($R == $rr){return true;}else{return false;}} Paso 4: Reconocer cuando das click en comprovar y comprovar si es correcto
    Para ello, creamos una nueva linea:
    if (isset($_POST['_INPUT_CAPTCHA_'])){if (_CHECK_CAPTCHA_($_POST['_INPUT_CAPTCHA_'],$_A_CAP_SZ_['__RESPUESTAS__'][$_POST['_INPUT_CAP_RE_']]) == true){echo 'Captcha correcto – <a href="?reload">RELOAD PAGE</a>';}else{echo 'Incorrecto – <a href="?reload">RELOAD PAGE</a>';}}else{echo '<form method="post">'.$_A_CAP_SZ_['__PREGUNTAS__'][aaii].' <input type="text" value="" name="_INPUT_CAPTCHA_"><input type="hidden" value="'.aaii.'" name="_INPUT_CAP_RE_"><input type="submit" value="verificar"></form>';} Esto lo que ara, es si das al boton de verificar, no mostrara el formulario, si no el resultado de si esta correcto o no.
    Espero que os aya gustado y lo entendais bien.
  5. Me Gusta
    Rafa23Alzira got a reaction from kuvanno in Tablas LOG files 2010   
    Hola chicos, como hay un hilo abierto que pide estas tablas y se de más gente que las ha estado buscando como hice yo en mi día y tarde mucho en encontrarlas totalmente fixeadas pongo este mini-aporte para el que lo necesite.
    -- ------------------------------ Table structure for `bootlog`-- ----------------------------DROP TABLE IF EXISTS `bootlog`;CREATE TABLE `bootlog` ( `time` int(11) DEFAULT NULL, `hostname` int(11) DEFAULT NULL, `channel` int(11) DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `command_log`-- ----------------------------DROP TABLE IF EXISTS `command_log`;CREATE TABLE `command_log` ( `userid` int(11) DEFAULT NULL, `server` int(11) DEFAULT NULL, `ip` text, `port` int(11) DEFAULT NULL, `username` varchar(12) CHARACTER SET big5 NOT NULL DEFAULT 'NONAME', `command` varchar(200) CHARACTER SET big5 COLLATE big5_bin DEFAULT NULL, `date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00') ENGINE=MyISAM DEFAULT CHARSET=latin1;-- ------------------------------ Table structure for `cube`-- ----------------------------DROP TABLE IF EXISTS `cube`;CREATE TABLE `cube` ( `pid` int(11) NOT NULL DEFAULT '0', `time` time DEFAULT NULL, `x` int(11) DEFAULT NULL, `y` int(11) DEFAULT NULL, `item_vnum` int(11) DEFAULT NULL, `item_uid` int(11) DEFAULT NULL, `item_count` int(11) DEFAULT NULL, `success` int(11) DEFAULT NULL, PRIMARY KEY (`pid`)) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `fish_log`-- ----------------------------DROP TABLE IF EXISTS `fish_log`;CREATE TABLE `fish_log` ( `1` int(11) DEFAULT NULL, `2` int(11) DEFAULT NULL, `3` int(11) DEFAULT NULL, `4` int(11) DEFAULT NULL, `5` int(11) DEFAULT NULL, `6` int(11) DEFAULT NULL, `7` int(11) DEFAULT NULL, `8` int(11) DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `gmhost`-- ----------------------------DROP TABLE IF EXISTS `gmhost`;CREATE TABLE `gmhost` ( `mIP` varchar(16) NOT NULL DEFAULT '', PRIMARY KEY (`mIP`)) ENGINE=MyISAM DEFAULT CHARSET=big5;-- ------------------------------ Table structure for `gmlist`-- ----------------------------DROP TABLE IF EXISTS `gmlist`;CREATE TABLE `gmlist` ( `mID` int(10) unsigned NOT NULL AUTO_INCREMENT, `mAccount` varchar(16) NOT NULL DEFAULT '', `mName` varchar(16) NOT NULL DEFAULT '', `mContactIP` varchar(16) NOT NULL DEFAULT '', `mServerIP` varchar(16) NOT NULL DEFAULT 'ALL', `mAuthority` enum('IMPLEMENTOR','HIGH_WIZARD','GOD','LOW_WIZARD','PLAYER') DEFAULT 'PLAYER', PRIMARY KEY (`mID`)) ENGINE=MyISAM DEFAULT CHARSET=big5;-- ------------------------------ Table structure for `goldlog`-- ----------------------------DROP TABLE IF EXISTS `goldlog`;CREATE TABLE `goldlog` ( `date` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `time` time DEFAULT NULL, `pid` int(11) DEFAULT NULL, `what` int(11) DEFAULT NULL, `how` int(11) DEFAULT NULL, `hint` int(11) DEFAULT NULL, PRIMARY KEY (`date`)) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `hack_log`-- ----------------------------DROP TABLE IF EXISTS `hack_log`;CREATE TABLE `hack_log` ( `time` time DEFAULT NULL, `login` longtext COLLATE big5_bin, `name` varchar(11) COLLATE big5_bin DEFAULT NULL, `ip` text CHARACTER SET latin1, `server` varchar(11) COLLATE big5_bin DEFAULT NULL, `why` varchar(22) COLLATE big5_bin DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `levellog`-- ----------------------------DROP TABLE IF EXISTS `levellog`;CREATE TABLE `levellog` ( `name` varchar(50) COLLATE big5_bin DEFAULT NULL, `level` int(11) DEFAULT NULL, `time` datetime DEFAULT NULL, `account_id` int(50) DEFAULT NULL, `pid` int(30) DEFAULT NULL, `playtime` int(11) DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `locale`-- ----------------------------DROP TABLE IF EXISTS `locale`;CREATE TABLE `locale` ( `mKey` varchar(255) NOT NULL DEFAULT '', `mValue` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`mKey`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;-- ------------------------------ Table structure for `locale_bug`-- ----------------------------DROP TABLE IF EXISTS `locale_bug`;CREATE TABLE `locale_bug` ( `mKey` varchar(255) NOT NULL DEFAULT '', `mValue` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`mKey`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;-- ------------------------------ Table structure for `log`-- ----------------------------DROP TABLE IF EXISTS `log`;CREATE TABLE `log` ( `type` varchar(20) COLLATE big5_bin DEFAULT NULL, `time` datetime DEFAULT NULL, `who` int(11) DEFAULT NULL, `x` int(11) DEFAULT NULL, `y` int(11) DEFAULT NULL, `what` int(11) DEFAULT NULL, `how` varchar(20) COLLATE big5_bin DEFAULT NULL, `hint` varchar(20) COLLATE big5_bin DEFAULT NULL, `ip` text CHARACTER SET latin1, `vnum` int(11) DEFAULT '0') ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `loginlog2`-- ----------------------------DROP TABLE IF EXISTS `loginlog2`;CREATE TABLE `loginlog2` ( `id` int(11) NOT NULL AUTO_INCREMENT, `type` text, `is_gm` int(11) DEFAULT NULL, `login_time` datetime DEFAULT NULL, `channel` int(11) DEFAULT NULL, `account_id` int(11) DEFAULT NULL, `pid` int(11) DEFAULT NULL, `client_version` text, `ip` text, `logout_time` datetime DEFAULT NULL, `playtime` int(11) NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;-- ------------------------------ Table structure for `money_log`-- ----------------------------DROP TABLE IF EXISTS `money_log`;CREATE TABLE `money_log` ( `year` int(11) DEFAULT NULL, `time` time DEFAULT NULL, `vnum` int(11) DEFAULT '0', `pid` int(11) DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=latin1;-- ------------------------------ Table structure for `quest_reward_log`-- ----------------------------DROP TABLE IF EXISTS `quest_reward_log`;CREATE TABLE `quest_reward_log` ( `1` varchar(50) COLLATE big5_bin DEFAULT NULL, `2` int(11) DEFAULT NULL, `3` int(11) DEFAULT NULL, `4` int(11) DEFAULT NULL, `5` int(11) DEFAULT NULL, `6` int(11) DEFAULT NULL, `7` time DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `refinelog`-- ----------------------------DROP TABLE IF EXISTS `refinelog`;CREATE TABLE `refinelog` ( `Id` int(11) DEFAULT NULL, `pid` int(11) DEFAULT NULL, `item_name` varchar(50) COLLATE big5_bin DEFAULT NULL, `item_id` int(11) DEFAULT NULL, `step` int(11) DEFAULT NULL, `time` time DEFAULT NULL, `is_success` int(11) DEFAULT NULL, `setType` varchar(50) COLLATE big5_bin DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `shout_log`-- ----------------------------DROP TABLE IF EXISTS `shout_log`;CREATE TABLE `shout_log` ( `1` time DEFAULT NULL, `2` int(11) DEFAULT NULL, `3` int(11) DEFAULT NULL, `4` varchar(50) COLLATE big5_bin DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin;-- ------------------------------ Table structure for `speed_hack`-- ----------------------------DROP TABLE IF EXISTS `speed_hack`;CREATE TABLE `speed_hack` ( `pid` int(11) DEFAULT NULL, `time` time DEFAULT NULL, `x` int(11) DEFAULT NULL, `y` int(11) DEFAULT NULL, `hack_count` varchar(20) COLLATE big5_bin DEFAULT NULL) ENGINE=MyISAM DEFAULT CHARSET=big5 COLLATE=big5_bin; Un saludo.
  6. Me Gusta
    Rafa23Alzira got a reaction from kuvanno in Tablas LOG files 2010   
    Supongo que si, files 2013 serán de base 2010 creo yo.
  7. Me Gusta
    Rafa23Alzira got a reaction from kuvanno in Tabla logs Error   
    Topekone te esta diciendo que cambies solamente las tablas, no los files, luego cuando este en el pc si eso las subo todas fix.
  8. Me Gusta
    Rafa23Alzira reacted to Riochu™ no es in Armaduras Feliz Navidad.   
    Feliz navidad chicos aqui os dejo estas armaduras espero que os gusten
     
    Y que lo paseisi bien estos dias xd
     
    Mas tarde pondre una guia de poner brillos diferentes
     




     
    Descarga
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  9. Me Gusta
    Rafa23Alzira reacted to zyrux in Página para encriptar contraseñas   
    por eso puse usaba xdd
  10. Gracias
    Rafa23Alzira got a reaction from lucascalderaro in Página para encriptar contraseñas   
    Hola chicos, hace tiempo que entraba a una página web para encriptar las contraseñas a el formato que utiliza Metin2 pero la página ya no sirve y me quede sin encriptarlas, por suerte encontré un script para poder hacerlo y funciona muy bien. Ahora lo he puesto en mi web por si alguien quiere utilizarlo.
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    A algunos les servirá y a otros no, espero que no critiquen ni nada, es una tontería pero útil.
     
    No recuerdo de donde lo saque, si lo encuentro pongo créditos.
     
    Si alguien quiere el código fuente que me lo diga y se lo paso.
  11. Me Gusta
    Rafa23Alzira reacted to Serex in Si caes bien a todos algo estas haciendo mal   
    Hola chicos, bueno este tema lo dirijo para usuarios sin personalidad, usuarios inmaduros, usuarios que no saben aceptar críticas.
     
    ¿Para que sirve postear?
    Postear, compartir algo en el foro con los demás usuarios es una forma de devolver a la comunidad, lo que has aprendido de ella.
     
    Posteo algo y me critican.
    Lee detenidamente las críticas, acéptalas lee tambien las opiniones buenas y sabras que estas haciendo bien, intenta corregir tus fallos y vuelve a intentarlo continua compartiendo, mejora tú mismo con las críticas. Llegara un día en que tus post no reciban críticas entonces el que se sentirá orgulloso serás tu porque tu trabajo ha sido reconocido. 
     
    Me enfado y por eso insulto, pero el otro me insulto antes / me provocó.
    Es un foro, tienes un teclado delante, si te enfadas, levántate de la silla y pegale un puñetazo a la pared, vuelve y escribe un comentario formal si te quedan dedos.
     
    SI CAES BIEN A TODOS ALGO ESTAS HACIENDO MAL
    Es imposible caer bien a todos, busca tus target. 
    Debes iniciar sesión para ver el contenido del enlace en esta publicación.  
    Espero esto os haga cambiar un poquito vuestra vista, aunque solo influya en la mete de una persona, merece crear el tema.
     
     
     
    Gracias a los que seguis haciendo posible esto.
  12. Me Gusta
    Rafa23Alzira reacted to Seru in [SUGERENCIA]Dividir secciones armas y armaduras   
    A favor.
     
    Un placer tenerte de nuevo en zone, Rafa.
  13. Me Gusta
    Rafa23Alzira got a reaction from EzekielitohMercury in [PETICION]Quest   
    quest bienvenida begin state start begin when login with pc.getqf("bienvenida") == 0 and pc.get_level() == 1 begin if pc.get_sex() == 0 then elseif pc.get_job() == 0 then notice_all("Le damos la bienvenida a "..pc.get_name().." como un nuevo Guerrero en AngelsMt2") pc.setqf("bienvenida",1) elseif pc.get_job() == 1 then notice_all("Le damos la bienvenida a "..pc.get_name().." como un nuevo Ninja en AngelsMt2") pc.setqf("bienvenida",1) elseif pc.get_job() == 2 then notice_all("Le damos la bienvenida a "..pc.get_name().." como un nuevo Sura en AngelsMt2") pc.setqf("bienvenida",1) elseif pc.get_job() == 3 then notice_all("Le damos la bienvenida a "..pc.get_name().." como un nuevo Shaman en AngelsMt2") pc.setqf("bienvenida",1) elseif pc.get_sex() == 1 then elseif pc.get_job() == 0 then notice_all("Le damos la bienvenida a "..pc.get_name().." como una nueva Guerrera en AngelsMt2") pc.setqf("bienvenida",1) elseif pc.get_job() == 1 then notice_all("Le damos la bienvenida a "..pc.get_name().." como una nueva Ninja en AngelsMt2") pc.setqf("bienvenida",1) elseif pc.get_job() == 2 then notice_all("Le damos la bienvenida a "..pc.get_name().." como una nueva Sura en AngelsMt2") pc.setqf("bienvenida",1) elseif pc.get_job() == 3 then notice_all("Le damos la bienvenida a "..pc.get_name().." como una nueva Shamana en AngelsMt2") pc.setqf("bienvenida",1) end end endend
  14. Me Gusta
    Rafa23Alzira got a reaction from divnos77 in [MINI-FUNCIONES]pc.get_coins() y pc.change_coins()   
    Hola chicos, les traigo dos mini funciones para las quest, es necesario tener puesto el mysql en quest, pero ahora casí todos los tienen así que no creo que haya problema.
     
    Las funciones son las siguientes:
     
    pc.change_coins(x)
    function pc.change_coins(x) mysql_query("UPDATE account.account SET coins=coins+'"..x.."' WHERE id='"..pc.get_account_id().."' LIMIT 1")end Te permite dar o quitar coins del usuario, por ejemplo
    quest cupon_md_1000 begin state start begin when idcupon.use begin pc.change_coins(1000) end endend Para restar simplemente añadir - antes del número pc.change_coins(-100)
     
     
     
     
    pc.get_coins()
    function pc.get_coins() local a = mysql_query("select * from account.account where id ='"..pc.get_account_id().."' LIMIT 1") return a.coins[1] end Te permite ver las coins que tienes, por ejemplo:
    quest consulta_coins begin state start begin when login begin if pc.get_coins() < 100 then say("Tienes menos de 100 coins") else say("Tienes más de 100 Coins") end end endend  
     
  15. Me Gusta
    Rafa23Alzira reacted to SeMa™ in [MINI-FUNCIONES]pc.get_coins() y pc.change_coins()   
    no he caido en eso xDDDDDDDDDDD
  16. Me Gusta
    Rafa23Alzira reacted to Serex in [MINI-FUNCIONES]pc.get_coins() y pc.change_coins()   
    Sencillo y muy util +
  17. Me Gusta
    Rafa23Alzira reacted to LeyendasMt2 in ¿Alguien sabe rootear móvil?   
    Toma , un videotutorial  link de descarga del la version 4.1.2 o sino buscas la version que deseas.
     
    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.
     
     
    P.D: odio la manera en que habla pero ha sido lo primero que he pillado. xD
     
    Que te cunda.
  18. Me Gusta
    Rafa23Alzira got a reaction from Miguelito in Error Con la Item Shop   
    Aquí lo tienes
    ALTER TABLE account ADD coins varchar(20) DEFAULT '0' AFTER channel_company;
  19. Me Gusta
    Rafa23Alzira got a reaction from Miguelito in Error Con la Item Shop   
    Si te esperas un rato te paso la query y añades la tabla que ando en el móvil
  20. Gracias
    Rafa23Alzira got a reaction from Arlequino 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
  21. Me Gusta
    Rafa23Alzira reacted to PACI in Nueva Funcion: write_or_read   
    Hola.
    Bueno, ultimamente anduve trabajando mucho con la edición de archivos por quest, y decidi hacer una función que vamos, me reduce muchísimo el trabajo.
     
    La función es: write_or_read(path, file, act, text, line)
     
    Que sirve para escribir, reescribir y leer un archivo, o leer una línea especifica de un archivo.
     
    Notas:
    Ruta del archivo;
    Nombre del archivo;
    Acción;
    Texto;
    Línea.
     
    Las acciónes:
    Como os dije, esta función puede leer o escribir en un archivo, para eso en act se pone lo que se quiere que haga:
     
    - Para leer se puede usar:
    leer, read, l (L minusculo) u r.
     
    La Acción que queréis tomar hace influenciar a lo que tengáis que poner en text, si queréis leer el contenido de un archivo, obviamente no vais a colocar ahí ningun texto.
    Así que, la función de leer se divide en otras 3 funciones:
     
    -> Leer la primera línea; (line, linea, o l)
    -> Leer el archivo entero; (all, todo, o entero)
    -> Leer una línea específica*. (sline, lineas, o ls) -> sline = specific line; lineas = linea especifica.
     
    *Para leer una línea específica hay que colocar, como último argumento de la función el número de la línea que hay que leer.
     
    - Para escribir se puede usar 2 tipos:
    1. sobreescribir, rewrite, s u re.
    2. escribir, write, e, a+
     
    Lo que hace cada uno es muy simple, el 1. hace que borre el contenido del archivo y escriba de nuevo el texto que habéis puesto. El 2. apenas lo adiciona.
     
    Nota: No se necesita el último argumento, line, para escribir.
     
    Otros:
    Para tener menos trabajo aún, hice que, si el directório o el archivo seleccionados no existan, se creen solos.
    Las tabulaciones en el texto se hacen donde siempre, en el botóncito que está encima del caps lock. Pero para hacer un cambio de línea, hay que escribir __enter__.
     
    Ejemplos:
     
    --> Escribiendo:
     
     
     
    --> Leyendo:
     
     
     
    Y por fin, la función, que hay que colocarla en el questlib.lua:

    function write_or_read(path, file, act, text, line) local type_ if os.execute('cd '..path) ~= 0 then os.execute('mkdir '..path) elseif os.execute('[ -f '..path..'/'..file..' ] && echo "s" || echo "n"') == 'n' then os.execute('cd '..path..' && touch '..file) end if act == 'leer' or act == 'read' or act == 'l' or act == 'r' then type_ = 'r' elseif act == 'sobreescribir' or act == 'rewrite' or act == 's' or act == 're' then type_ = 'w' elseif act == 'escribir' or act == 'write' or act == 'e' or act == 'a+' then type_ = 'a+' end local f = io.open(path..'/'..file, type_) if type_ == 'r' then if text == 'all' or text == 'todo' or text == 'entero' then return f:read('*all') elseif text == 'line' or text == 'linea' or text == 'l' then return f:read('*l') elseif text == 'sline' or text == 'lineas' or text == 'ls' then local ltable = {} for i in f:lines() do table.insert(ltable, i) end f:close() return ltable[line] end elseif type_ == 'a+' or type_ == 'w' then if string.find(text, '__enter__') ~= 0 then f:write(string.gsub(text, '__enter__', 'n', string.find(text,'__enter__'))..'n') else f:write(text..'n') end f:close() endendSaludos
  22. Me Gusta
    Rafa23Alzira got a reaction from Mariano Sanchez Diez in Nuevo game lv105 2089M   
    Aiiiiishh!!! estos post tan currados me hacen llorar
  23. Me Gusta
    Rafa23Alzira got a reaction from Nekchokeno in Una ayuda con mi página web, gente con conocimientos en php   
    Buenas, alguien que entienda de php sería tan amable de hacerme 2 favores, el primero es más esencial el 2 ya da un poco más igual:
     
    1- Tengo un ranking de personajes, pero mi web no lo incluye de gremios, sería tan amable de con el de personajes hacer otro para gremios, si también quiere ponerle una pestañita a la miniatura del top que sale en el index para que puedas elegir gremio o personaje.
     
    2- Contador de personajes online, en 24h, cuentas registradas y gremios.
     
    Si me hacen el favor mejor, si me cobran no puedo dar gran cosa, poneros en contacto conmigo por aquí o skype.
     
    Gracias de antemano.
  24. Me Gusta
    Rafa23Alzira got a reaction from Dominicanxd in [PETICION]Quest Saca Piedras   
    La de sacar todas las piedras no es quest y la otra creo que la original tampoco pero aquí yuko la hizo por quest (la de sacar la ultima piedra)
     

    Debes iniciar sesión para ver el contenido del enlace en esta publicación.
  25. Me Gusta
    Rafa23Alzira got a reaction from ™.Ninjaman28xD ツ in [Peticion] sebastianL2 Metin2Autrales   
    Joker con lo bueno que eres tu eso quedo muy mal xd Simplemente es ponerle 2 renders (están en el foro del .es y en todos lados) al lado de las letras y ya, es una critica constructiva, espero que no lo tomes a mal
×
×
  • Crear nuevo...