Jump to content

Rusef

Miembro
  • Contador contenido

    80
  • Ingreso

  • Última visita

Mensajes publicados por Rusef

  1. Buenas, esto vale para cuando dejas presionado CTRL las teclas 1 a 9 haces emociones ahora las teclas ? y ¡ - ejecutaran esas emociones.

    1. Descompilamos root y abrimos game.py

    2. Hacemos la siguiente guía

    #BUSCAMOS
    		onPressKeyDict[app.DIK_1]	= lambda : self.__PressNumKey(1)
    		onPressKeyDict[app.DIK_2]	= lambda : self.__PressNumKey(2)
    		onPressKeyDict[app.DIK_3]	= lambda : self.__PressNumKey(3)
    		onPressKeyDict[app.DIK_4]	= lambda : self.__PressNumKey(4)
    		onPressKeyDict[app.DIK_5]	= lambda : self.__PressNumKey(5)
    		onPressKeyDict[app.DIK_6]	= lambda : self.__PressNumKey(6)
    		onPressKeyDict[app.DIK_7]	= lambda : self.__PressNumKey(7)
    		onPressKeyDict[app.DIK_8]	= lambda : self.__PressNumKey(8)
    		onPressKeyDict[app.DIK_9]	= lambda : self.__PressNumKey(9)
    		onPressKeyDict[app.DIK_F1]	= lambda : self.__PressQuickSlot(4)
    		onPressKeyDict[app.DIK_F2]	= lambda : self.__PressQuickSlot(5)
    		onPressKeyDict[app.DIK_F3]	= lambda : self.__PressQuickSlot(6)
    		onPressKeyDict[app.DIK_F4]	= lambda : self.__PressQuickSlot(7)
    #DETRAS DE
    		onPressKeyDict[app.DIK_9]	= lambda : self.__PressNumKey(9)
    
    #DAMOS ENTER Y PEGAMOS
    		onPressKeyDict[app.DIK_EQUALS]	= lambda : self.__PressNumKey(10)
    		onPressKeyDict[app.DIK_MINUS]	= lambda : self.__PressNumKey(11)
    #BUSCAMOS
    	def __PressNumKey(self,num):
    		MapName = str(background.GetCurrentMapName())
    		if MapName == "mapa_guerra":
    			if constInfo.ataque_guerra == 1:
    				return
    		if app.IsPressed(app.DIK_LCONTROL) or app.IsPressed(app.DIK_RCONTROL):
    			
    			if num >= 1 and num <= 9:
    				if(chrmgr.IsPossibleEmoticon(-1)):				
    					chrmgr.SetEmoticon(-1,int(num)-1)
    					net.SendEmoticon(int(num)-1)
    		else:
    			if num >= 1 and num <= 4:
    				self.pressNumber(num-1)
    #DETRAS DE
    					net.SendEmoticon(int(num)-1)
    
    #DAMOS ENTER Y PEGAMOS
    			if num >= 10 and 11:
    				if(chrmgr.IsPossibleEmoticon(-1)):				
    					chrmgr.SetEmoticon(-1,int(num)-1)
    					net.SendEmoticon(int(num)-1)

    3. Compilamos root

     

    Respuestas básicas:

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

     

    Otros:

    #Dejo un regalo para el que lo entienda
    
    		onPressKeyDict[app.DIK_F5]	= lambda : self.__PressQuickSlot(19)
    		onPressKeyDict[app.DIK_F6]	= lambda : self.__PressQuickSlot(20)
    		onPressKeyDict[app.DIK_F7]	= lambda : self.__PressQuickSlot(21)
    		onPressKeyDict[app.DIK_F8]	= lambda : self.__PressQuickSlot(22)
    
    	def __PressQuickSlot(self, localSlotIndex):
    
    		MapName = str(background.GetCurrentMapName())
    		if MapName == "mapa_guerra":
    			if constInfo.ataque_guerra == 1:
    				return
    		if app.IsPressed(app.DIK_LCONTROL) or app.IsPressed(app.DIK_RCONTROL):
    
    			if localSlotIndex >= 19 and 20 and 21 and 22:
    				if(chrmgr.IsPossibleEmoticon(-1)):				
    					chrmgr.SetEmoticon(-1,int(localSlotIndex)-1)
    					net.SendEmoticon(int(localSlotIndex)-1)
    
    			if localSlotIndex >= 4 and 5 and 6 and 7:
    				if(chrmgr.IsPossibleEmoticon(-1)):				
    					chrmgr.SetEmoticon(-1,int(localSlotIndex)+10)
    					net.SendEmoticon(int(localSlotIndex)-1)
    		else:
    			player.RequestUseLocalQuickSlot(localSlotIndex)

     

    Un saludo, espero que a alguien le valga.

  2. hace 10 minutos, NazoX dijo:

    No solo me robas las ideas y las ejecutas, si no que robas las cosas que voy a publicar y me copias poniendo imágenes. <.< JAJAJAJA gracias por el aporte a más de uno le vendrá bien, con tu permiso lo pondré también en mi guía general de C++, este sistema funciona, simplemente seguir los pasos.

    Jaja, esta de cómico, nos llevamos muy bien, no le presten atención 🙂  yo te daba

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

  3. Buenas, esto vale para cuando quieras cerrar el cliente en un segundo, por tus propios motivos ( se ha quedado pillado, te ha dado algún error, etc... )

    Abrimos Bloc de notas u otros.

    Agregamos la siguiente línea

    TASKKILL /F /IM Metin2nombre.exe

    en donde dice "Metin2nombre" debemos remplazar el nombre de nuestro cliente ( ejecutable ). En mi caso es así:

    TASKKILL /F /IM Metin2RusefCliente.exe

    Luego, damos en " Guardar como..."

    Vamos a la ruta de nuestro cliente, o en cualquier carpeta, ( para guardarlo ).

    Le ponemos el nombre "kill.bat" y en tipo de archivo, le damos en "Todos los archivos (*.*)" y damos en "Guardar".

    A continuación, vamos a donde has guardado el archivo, y damos click derecho en él, seleccionamos "Enviar a" > "Escritorio (crear acceso directo).

    En el escritorio, buscamos nuestro archivo "kill.bat" y damos click derecho en él, seleccionamos "Propiedades"

    Ahora de le damos en "Opciones avanzadas..." , damos en "Ejecutar como administrador" y damos en "Aceptar" en ambas ventanas.

    Por ultimo ya solo queda probar cuando abres el cliente y luego abres "kill.bat" que lo cierre.

     

    Notas:

    No guardar kill.bat en escritorio.

    Si tu ejecutable ( .exe ) tiene espacios, has de quitarlos > Metin2 Rusef Cliente. exe  a  Metin2RusefCliente.exe

    También puedes cerrar el cliente con una tecla del teclado, en "Opciones avanzadas..." "Tecla de método abreviado:".

     

    Respuestas básica:

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

     

    Un saludo, espero que a alguien le valga.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

  4. Buenas, esto vale para cuando usa el libro del caballo, cuando lo llamas puedes volver a guardarlo con el mismo libro.

    		when 50053.use with horse.get_grade()==3 begin
    
    			if pc.is_riding() then
    				return
    			end
    
    			if horse.is_summon() then
    				horse.unsummon()
    				return
    			end
    
    			if pc.getsp()>=500 then
    				horse.summon()
    				pc.change_sp(-500)
    			else
    				syschat ( "<Personaje> No tienes suficiente SP." )
    			end
    
    		end

    O también podemos usarlo para llamar, montar y desmontar

    		when 50053.use with horse.get_grade()==3 begin
    
    			if pc.is_riding() then
    				horse.unride()
    				return
    			end
    
    			if horse.is_summon() then
    				horse.ride()
    				return
    			end
    
    			if pc.getsp()>=500 then
    				horse.summon()
    				pc.change_sp(-500)
    			else
    				syschat ( "<Personaje> No tienes suficiente SP." )
    			end
    
    		end

     

    Respuestas básicas:

    No tengo la quest original del caballo (horse_summon.quest) para adaptarla y compartirla tal cual, confió en que alguien me la pase, o sepa instalar esto, está suprimida la posibilidad de que el caballo falle al llamarlo, y en vez de 50 sp requeridos pide 500.

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

  5. Buenas, esto vale para cuando abras una quest ( en formato .quest ) podemos visualizar como si fuera una .lua (Lenguaje Lua).

     

    -1. Abrimos Notepad++

    -2. En la Barra de Pestañas vamos a Configuración>Configurador de estilo

    -3. Buscamos " Lua " en " Lenguajes " y lo seleccionamos, agregamos " quest " en donde dice " Ext. usuario: " , una vez añadido, podemos dar en " Guardar y Cerrar " .

     

    Respuestas básicas:

    Tienes imágenes adjuntadas para guiarte mejor.

    A la hora de escribir o leer, olvida las " comillas " .

     

     

    Un saludo, espero que a alguien le valga.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

    Debes iniciar sesión para ver el contenido del archivo adjunto en esta publicación.

  6. No lo confirmo al 100%, pero en un 80%,

    hace la funcionalidad que vemos.. pero prueben algo

    mejoren una espada luna desde +0 hasta +9 y que tenga algun fallo da igual cuantos,

    luego cuando quede +9, cierra y abre el servidor

    " sh close && sh run "

    en la parte donde ha fallado, se empieza a duplicar las armas 

  7. En 7/9/2019 a las 19:10, mtcosmos dijo:

    Buenas, no encuentro la siguiente información y no entiendo mucho de quest.

    Mi pregunta es como obtengo por quest si una habilidad si ya esta en P e impedir que esta sea subida de nuevo? Gracias!

    Haber pero con qué sentido?

    Si ya tienes un ítem que sube todas las habilidades a P de tirón

    Y quieres que cuando ya tengas 1 habilidad a P te diga que ya está a P

    Cuál es el fin? Si decimos que esa quest solo te sube 1 habilidad a P, pues

    Hay por hay quest que te sube una sola habilidad y la que tengas en P a la

    Hora de elegirlo, no aparece la que está en P

  8. Este problema lo presenta ahora antes el game y db siempre ivan bien...

    igualmente

    root@metin2rusef:/usr/game/db # gdb
    GNU gdb 6.1.1 [FreeBSD]
    Copyright 2004 Free Software Foundation, Inc.
    GDB is free software, covered by the GNU General Public License, and you are
    welcome to change it and/or distribute copies of it under certain conditions.
    Type "show copying" to see the conditions.
    There is absolutely no warranty for GDB.  Type "show warranty" for details.
    This GDB was configured as "i386-marcel-freebsd".
    (gdb) file db
    Reading symbols from db...done.
    (gdb) core db.core
    Core was generated by `db'.
    Program terminated with signal 11, Segmentation fault.
    Reading symbols from /lib/libz.so.6...done.
    Loaded symbols for /lib/libz.so.6
    Reading symbols from /usr/lib/libstdc++.so.6...Error while reading shared library symbols:
    Dwarf Error: wrong version in compilation unit header (is 4, should be 2) [in module /usr/lib/libstdc++.so.6]
    Reading symbols from /lib/libm.so.5...done.
    Loaded symbols for /lib/libm.so.5
    Reading symbols from /lib/libgcc_s.so.1...done.
    Loaded symbols for /lib/libgcc_s.so.1
    Reading symbols from /lib/libthr.so.3...done.
    Loaded symbols for /lib/libthr.so.3
    Reading symbols from /lib/libc.so.7...done.
    Loaded symbols for /lib/libc.so.7
    Reading symbols from /libexec/ld-elf.so.1...done.
    Loaded symbols for /libexec/ld-elf.so.1
    #0  0x28336ef0 in strtoul_l () from /lib/libc.so.7
    [New Thread 28406100 (LWP 100440/db)]
    [New Thread 28405e00 (LWP 100439/db)]
    [New Thread 28405b00 (LWP 100438/db)]
    [New Thread 28405800 (LWP 100437/db)]
    [New Thread 28405500 (LWP 100436/db)]
    [New Thread 28405200 (LWP 100435/db)]
    [New Thread 28404f00 (LWP 100434/db)]
    [New Thread 28404c00 (LWP 100433/db)]
    [New Thread 28404300 (LWP 100366/db)]
    (gdb) bt full
    #0  0x28336ef0 in strtoul_l () from /lib/libc.so.7
    No symbol table info available.
    Cannot find thread 9: Thread ID=100366, no thread to satisfy query

     

  9. Resulta que le di un formateo"" al pc, y con ello hice sus copias y tal, tanto como en .tar.gz files, source y demás,

    y tanto como a donde estaban los files, en mi caso en un .vdi (virtual box).

    Pero ahora al volver a instalar virtual box, y prepara la maquina para su arranque, tiene un buen despegue, pero al momento da error o al reiniciar la maquina, e interactuar con ella, el servidor se cierra.

    Literalmente, ya e probado a actualizar - portsnap  - mysql56-server - compact -

    Pero tras probar todos los métodos que me recomendaron, ninguno reparo mi problema.

    Así que por aquí dejo los sysers y los autorung de ch1 game db y auth

    Auth - CH1 - GAME99
    
    SYSERR: Mar 11 19:07:56 :: pid_init: 
    Start of pid: 938
    
    SYSERR: Mar 11 19:07:56 :: socket_connect: HOST localhost:15000, could not connect.
    DB
    SYSERR: Mar 11 19:07:51 :: pid_init: 
    Start of pid: 931
    
    
    Hace spam de está linea sin parar. También crea un .core de db

     

    Espero un poco de ayuda de alguien, si no encuentro ayuda podría pagar unos 10€ por que me lo arreglen. ( Vía Team viewer, Anydesk, similares ).

  10. hace 36 minutos, Tibelian dijo:

    ias Rob

    Yo estuve un mes, 

    y no culpa a Twain, pero tuve ciertos problemas de " poca experiencia en los administradores "

     

    Mi web estuvo caida por un problema de internal error 500 algo así 2 días y hasta pasados no me lo solucionaron.

    Y otro motivo que me jodió bastante fue que el servidor se apagaba pero apagarse de una manera wtf

    como un shutdown. No doy mas detalles por que ya es decir algo que quizás no tenga nada que ver, pero ...

    por lo tanto twain ni tan malo me parecio, solo que un soporte algo lento y pasota.""

×
×
  • Crear nuevo...