jaBote
Community Contributors-
Content Count
2037 -
Joined
-
Last visited
-
Days Won
43
Content Type
Profiles
Forums
Downloads
Staff Applications
Calendar
Everything posted by jaBote
-
Disconnected from Server on Character Select
jaBote replied to Neferupitou's question in General Server Support
As I told you on your Portuguese section post, I think you haven't uncommented and set your map_ip and char_ip to your server's WAN IP: master/conf/map-server.conf // Character Server IP// The map server connects to the character server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.//char_ip: 127.0.0.1// The map server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Character Server Portchar_port: 6121// Map Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.//map_ip: 127.0.0.1// Map Server Portmap_port: 5121 Change to: // Character Server IP// The map server connects to the character server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.char_ip: <YOUR WAN IP>// The map server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Character Server Portchar_port: 6121// Map Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.map_ip: <YOUR WAN IP>// Map Server Portmap_port: 5121 And same in /conf/char-server.conf: // Login Server IP// The character server connects to the login server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.//login_ip: 127.0.0.1// The character server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Login Server Portlogin_port: 6900// Character Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.//char_ip: 127.0.0.1// Character Server Portchar_port: 6121 Change to: // Login Server IP// The character server connects to the login server using this IP address.// NOTE: This is useful when you are running behind a firewall or are on// a machine with multiple interfaces.login_ip: <YOUR WAN IP>// The character server listens on the interface with this IP address.// NOTE: This allows you to run multiple servers on multiple interfaces// while using the same ports for each server.//bind_ip: 127.0.0.1// Login Server Portlogin_port: 6900// Character Server IP// The IP address which clients will use to connect.// Set this to what your server's public IP address is.char_ip: <YOUR WAN IP>// Character Server Portchar_port: 6121 -
Já comprovou nos arquivos map-server.conf e char-server.conf que a IP do map server e char server é a IP extern? Se é configurada para 127.0.0.1 você terá esse tipo de erros no caso de que essa máquina não é o seu próprio computador.
-
Look it up on the conf. I think you can configure the atcommand symbol on atcommand.conf but not sure since I can't access GIT right now.
-
It happens when forcing server quit while it's running a SQL query. Can happen with any table on any database, bit it's more frequent to happen with log tables since server logs lots of things. PS: moving to General Server Support
-
Just repair the table. Google how to repair a MySQL table for that.
-
Not that I know, but you can comment its entries on the proper script conf at the npc folder. Can't fetch you the exact file name right now.
- 1 reply
-
- battleground
- kvm
-
(and 3 more)
Tagged with:
-
Utilize screen. Instalação (se não é já instalado): apt-get install screen (se não usa CentOS) yum install screen (em caso apt-get não funciona) Você pode utilizar esse comando para iniciar o server: screen -amdS <nome para a screen> <arquivo> Para recuperar o processo aberto pela screen você pode utilizar: screen -r <nome da screen> E para fechar uma screen sem forzar o cierre do processo utilize: Ctrl+A, después D (a regra mnemotécnica para mim é AD, um anúncio em inglês) Você pode fechar uma screen e recuperar-la as vezes que deseje. Por exemplo: screen -amdS map ./map-server screen -r map Edito: tudo esto é obviamente para sistemas Linux.
-
Hola. Acabo de terminar el convertidor aunque no pude testearlo. Todos los convertidores o upgrades se encuentran aquí: /sql-files/upgrades y también en tu repositorio local cuando lo actualices. Por cierto, recuerda hacer una copia de respaldo antes de intentar aplicar el convertidor. Si te sale una base de datos funcional (que creo que sí, lo he revisado pero no he podido probarlo), coméntame y doy la actualización del convertidor por buena. P.D.: El wifi del vecino rules, pero si tienes que salir a la calle y coger frío en un pasillo abandonado no tanto, por eso generalmente respondo desde el móvil xD
-
¿De la DB en SQL? Vaya, soy yo el que se ocupaba de eso. Hay un upgrade de eAthena a Hercules (simplemente actualiza la DB de eAthena al máximo, aplicar el upgrade y luego aplicar cada uno de los ficheros de upgrade desde el principio). Para hacer upgrade de rAthena a Hercules (en verdad es un convertidor, aunque lo he llamado upgrade porque así se llama la carpeta inicial) simplemente tienes que ejecutar los convertidores que hice. No están actualizados, aunque tengo un par de horas de PC ahora mismo y trataré de actualizarlos ya si tengo tiempo. ¡Voy al lío! P.D.: En verdad PC tengo, lo que no tengo es Internet de momento y parece que va para largo, tengo que moverme de mi casa a un sitio para poder robar utilizar conexión wifi amablemente cedida por los vecinos
-
is there any chance to make monster on Hercules??
jaBote replied to zackpinoy's question in General Server Support
Yea, and right now it's made the same way you make mobs on any other Athena based server. -
Help with VPS(Virtual Private Server)
jaBote replied to gaurav787's question in General Server Support
I wasn't good at it either, but after googling a lot I'm now able to perform basic user tasks. I also had some Linux at class when I was a kid, but resulted on nothing of profit at all since I never got to know its power and need to have such a nice system till I had to actually use it. I can assure you my Linux knowledge isn't remarkable at all but helps a lot anyways. -
Help with VPS(Virtual Private Server)
jaBote replied to gaurav787's question in General Server Support
You can also use a windows vps without any problem, just like you'd make at your own home, but I'd say have a try learning some Linux knowledge, it doesn't do any harm and could even help in your curriculum later on, when you say you know basic Linux usage. -
Eu não sei muito de português, mas espero que somente dizendo o nome dos arquivos você poderá fazer isso. Adicione o nome do mapa ao final dos arquivos /conf/maps.conf e /db/map_index.conf conforme a estrutura existente. Para refazer o mapcache utilize WeeMapCache e adicione o mapcache existente e o seu grf atual do cliente e salve e sobrescreva (faça um backup previamente). O mapcache existente é na pasta db/re se usa renovação ou no db/pre-re em outro caso. O seu novo mapa deveria estar pronto para usar. Somente faltaria ter um mapa e a edição dos arquivos do cliente para evitar a aparição do mensagem "mapa desconhecido" usando /where e outros problemas leves.
-
Not yet to the best of my knowledge, unless you place a script loop on the player and keep polling till you detect it's no longer on the map (note: highly inefficient)
-
or editing the confs to allow a drop rate become zero, then change drop rates of cards to zero via these confs too (change min and max to 0)
-
Oh, eu estava errado. Esse não é um script oficial, e seu delay é controlado pela variável KVMC_BG_Tick. Procure e mude-la para o valor de delay desejado.
-
Sobre la ASPD sí que puedo echar una mano: Básicamente, en Renewal (y que recuerde en Pre-Renewal), lo que se sube de ASPD en una carta que da un +% de ASPD es contando dicha ASPD desde un inicio, porque la ASPD base de un personaje sin arma y con 1 en todos los parámetros era de 160 y darle un 10% (total 16) de ASPD solo por equiparse esa card sin nada sería demasiado "cheto". Para ello entonces con tener 173 ASPD, te dan 17 si es una carta que es un 10% y se puede llegar a los 190 ASPD casi sin invertir puntos en Agi/Dex. Básicamente la fórmula de Renewal es esta (copiando de iROwiki): Equip ASPD % = [ { 195 − Base ASPD } × Total of Equip ASPD Mod ] Por lo que se supone que funciona bien. Fuente: http://irowiki.org/wiki/ASPD
-
No, no, por supuesto en HPM sigue activo y soportado por Hercules. En otro caso simplemente nombrarlo hubiera sido inútil. En cuanto al item_db.conf, eres de los pocos nuevos a los que les gusta. A mí realmente sí me gusta porque no tienes que andar contando comas mil veces para saber en qué campo estás (que tiene su trabajo), mi única pega es que hay que convertirlo al nuevo formato y creo que ese es exactamente el problema de por que no le gusta a la gente. Como ventaja se tiene que es un sistema muy escalable (solo especificas los campos que necesitas, al resto se les asigna un valor por defecto que puedes saber de antemano, y no tienes que dejar campos vacíos ni recibir errores por contar mal las comas) que además integra los valores del resto de dbs relacionadas con los ítems (item_notrade, item_nouse y demás) y su legibilidad, que ha quedado patente. También se ha acabado con el límite de tamaño del script que el objeto podía contener (creo que era 255 caracteres pero no estoy seguro). Sus inconvenientes (aparte de que la gente se siente reacia a adoptar la nueva estructura) son que el archivo ocupa algo más de espacio en disco (por motivos obvios) y que en su carga (al iniciar el servidor) es ligeramente más lenta que con el formato anterior, aunque se diferencian solo unos pocos milisegundos. También se está trabajando en convertir a este formato la mob_db (y accesorios) de momento. Que tenga conocimiento (y me sorprendería que no fuera así) todas las dbs se cargan en RAM al inicio de la ejecución del emulador porque es muy lento tener que depender del disco duro para abrir y cerrar tantas veces los archivos y buscar la entrada especifica con su debido bucle de programación. Cada db se carga como una suerte de LUT (busca look-up table en Wikipedia) de manera que el acceso a los datos sea prácticamente inmediato. Puedes optar por no cargar las item y mob db en la base de datos SQL, puesto que no se da soporte directo a ellos y solo están para poder ser usados en software de terceros como los paneles de control, porque no suponen una solución buena al ser datos que suelen ser estáticos en su vida útil (y solo se leen al inicio del servidor y cuando se ejecuta @reloaditemdb): las bases de datos SQL están ahí para poder manejar datos de forma dinámica para que suponga menos coste operacional que si se hace de otras formas. ¡Un saludo!
-
La idea principal del Hercules Plugin Manager, que hubiese entendido en su época, era la sobrecarga de funciones del código fuente y puede hacerlo. Adicionalmente, además de los hooks antes o después de una función también se pueden añadir @comandos, comandos de scripting y para ejecutar con la consola, lectura de nuevos parámetros de conf/battle o paquetes de datos y no me acuerdo de nada más. Wiki sí hay, aunque no está muy actualizada. No tengo el enlace a mano aunque prueba con http://herc.ws/wiki Con lo de tapatalk no me puedo meter yo porque no tengo capacidad de decisión al respecto, aunque con la de modificaciones que tiene hechas por el propio personal de aquí dudo que vaya muy bien (tapatalk pide a los dueños de los foros que no toquen el motor que sirve las peticiones...)
-
Oh, ele é já feito? Eu achei que Zephyrus ia dar muita publicidade e nada. Nem uma pequena notícia no seu fórum ainda...
-
Hola. Aunque no tengo acceso a mi ordenador de momento, te voy a comentar brevemente cómo se hace. Todos lonombres de fichero que te comento los estoy sacando de memoria, así que trata de buscar un poco si no se encuentran donde digo. En todos los emuladores de kRO (incluido rAthena) que conozco el proceso es el mismo, aunque quizá los nombres de fichero varíen. Lo primero que debes hacer es ir al archivo conf/maps.conf y añadir el mapa al final con la misma estructura que aparece en el archivo. Algo similar a esto: map: tu_mapa Luego debes añadir ese mismo mapa en el índice de mapas, que está en el archivo db/map_index.txt y simplemente lo que debes hacer es de nuevo ir al final y colocar el nombre de tu mapa (nada más) en una nueva línea. Opcionalmente (no lo recomiendo) puedes añadirle también una ID propia si le pones un espacio y el número de ID que quieres. Trata de que, en ese caso, tal ID no sea inferior a la propuesta ya que en otro caso es posible que tengas problemas muy difíciles de diagnosticar. Tras esto tienes que realizar el mapcache (un archivo llamado map_cache.dat, que generalmente se encuentra en db/{re o pre-re}/map_cache.dat). Para ello puedes usar el generador que viene con el emulador o buscar algún programa que lo haga. Yo suelo simplemente tomar un programa que funciona de maravilla llamado WeeMapCache: permite tomar un mapcache ya hecho y añadirle los mapas nuevos, luego salvar el nuevo map_cache y sustituir el antiguo y funciona de maravilla. Recomiendo hacer una copia de seguridad del mapcache primero para restaurarlo por si acaso te equivocas. Una vez incluido el mapa en las listas del servidor y en el mapcache no necesitas hacer nada más desde el servidor para que funcione. Posteriormente puedes editar tus archivos del cliente (en el grf) para añadirle música (en mp3nametable.txt si mal no recuerdo) o darle un nombre para que sea reconocido al usar comandos como /where (en mapnametable.txt). Y ya está tu mapa perfectamente integrado con el cliente. Me permito recordar que estoy diciendo los nombres de ficheros de memoria, puede que no sean realmente esos aunque espero que mi memoria no me falle . ¡Un saludo! P.D.: Ten cuidado, porque los nombres de mapa no deben superar los 11 caracteres si mal no recuerdo.
-
Voy a comenzar ampliando un poco mi respuesta a lo que me has citado primero, que son más largas y prefiero escribir desee el teléfono con más ganas . Respecto a los plugins: efectivamente na idea es esa, que al hacer update en tu repositorio local no tengas que enfrentarte a problemas que tiene el programa que aplica los diffs de actualización. La función principal del Hercules Plugin Manager (así se llama) es poder añadir estructuras de datos propias y sobrecargar totalmente algunas funciones del código fuente, aunque también se proporciona un plugin para poder añadir hooks antes o después de las funciones del código, bien para modificar las entradas de las funciones (antes) o su resultado para las funciones que deban ser ejecutadas después. La idea de que los hooks sean un plugin es que así no se consume recursos de usuarios que lleven servidores y decidan no hacer uso de ellos. Como contraparte, tampoco es posible de momento sobrecargar estructuras de datos mediante plugins (aunque siempre puedes enlazarlos con estructuras que crees tú mismo en el plugin) y quizá sea ese el motivo por el que los plugins parecen no disponer del favor de muchos terceros desarrolladores que venden modificaciones y por eso comento que el sistema está infrautilizado. Mi visión personal tras hacer un plugin exclusivo para un servidor que no es mío es que la única dificultad añadida que entraña hacer un plugin es simplemente pegar un poco de código que siempre es igual, preocuparte de que añades los encabezados y las interfaces correctamente y de enlazar bien los datos en caso de necesitar extender alguna estructura ya hecha. Sobre los scripts, pues simplemente se han hecho romper (entiéndase dejar de interpretar sin errores) malas prácticas que venían haciéndose incluso antes que en eAthena (pero los scripts bien hechos de la "madre" de eAthena incluso siguen funcionando) como por ejemplo usar el comando close; sin tener una ventana de diálogo con NPC abierta o la sensibilidad a mayúsculas y minúsculas: los comandos de scripting deben estar todo en minúsculas, el nombre de las variables específicas del jugador (como su nivel y tal) tienen mayúscula inicial y así. Deberías fijarte un poco en el manual de scripting si quieres verlo todo, que aunque no haya cambiado gran cosa algo nuevo sí hay. Y como dije, en cuanto a errores de mayúsculas y minúsculas siempre se envía un mensaje de error al usuario diciéndole lo que el servidor entiende que es una mala práctica y le corrige con lo que podría ser su nombre correcto. Respecto a las preguntas: -> Sí, existe un modo pre-renewal aunque es un parámetro que se pasa a través de... editar obligatoriamente el código. Aunque se pensó en incluirlo como configuración en la carpeta /conf, se dijo que como alguien generalmente usa renewal o no y es una decisión que podría ser "para siempre" mejor hacerlo a través de la compilación condicional que puede hacerse en C gracias a su preprocesador. Al desactivar renewal se cargan distintos NPCs y bases de datos, y el emulador se queda por defecto en un estado que llega hasta Brasilis, justo antes de la inclusión de las terceras clases si mal no recuerdo. Dicha configuración está en la carpeta src/config/renewal.h (como estoy en mi teléfono y no puedo mirarlo va de memoria, pero si no está por ahí estará muy cerca). Ya que sabes de C obviaré recalcar lo muy importante que es recompilar tras cambiar algo así para que la modificación surta efecto. El desarrollador que hizo anteriormente esto para rAthena es el "jefazo" actual de Hercules de hecho, por lo que si no lo han cambiado desactivar renewal en rAthena se haría de forma idéntica. -> Por supuesto que puedes probar ambos a la vez si tu máquina tiene potencia suficiente como para ejecutar ambos emuladores a la vez si esa es tu pregunta. Solo recuerda que tendrás que cambiar los puertos de escucha de los servidores (y actualizar tu cliente de forma acorde) para que los emuladores no se peleen por usar los mismos puertos. También recuerda que las bases de datos (me refiero a las SQL) son distintas así que hay que tener una distinta para que ambos emuladores se lleven bien en tu máquina (que ya es mejor que como se llevan algunos entre un emulador y otro). Aquí sigo aunque sea respondiendo desde el móvil a lo que tenga capacidad de responder desde este soporte limitado. ¡Un saludo!
-
eAthena como proyecto murió debido a creo recordar que fueron problemas con su administración, aunque hasta el momento se actualiza muy de higos a brevas y solo para incluir actualizaciones críticas (o sea, puede considerarse que su desarrollo activo ha parado). De eAthena nació rAthena, un proyecto que quería seguir en la misma línea que eAthena pero incluiría las mecánicas renewal que jamás se incluyeron en él. A los casi dos años de una enorme prosperidad en cuanto a inclusión de nuevas ideas y características se produjeron problemas en su staff. Entonces unos cuantos miembros de rAthena decidieron separarse de ese grupo y fundaron Hercules, un emulador que pretende seguir las mecánicas de kRO (igual que sus predecesores), aunque sus principales novedades son una mayor eficiencia en cuanto a coste de RAM y proceso (el map server vacío y sin NPCs solo ocupa alrededor de 70 MB de RAM, en proyectos anteriores llega a los 200 MB) y una mayor depuración del código (esto no quita que algunas revisiones nos salgan mal, como siempre es posible). Además tenemos un sistema de plugins muy bonito (para lo que se revisó todo el código del map server) e infrautilizado para mi gusto que permite que, si la gente lo utilizase bien, puedas introducir modificaciones del código fuente sin ningún riesgo de sufrir conflictos al actualizar el repositorio. También, aunque no le hacemos ascos a desarrollar nuevos sistemas que faciliten el uso del emulador a gente nueva (pero reconozco que cambiar el chip cuesta a los que ya tenemos una experiencia) hemos sido un poco menos transigentes con algunas de las ilegibles dbs en texto que había en el emulador y las hemos convertido a un nuevo formato. O por ejemplo se ha hecho el motor de scripting sensible a mayúsculas y minúsculas, provocando error al interpretar muchos tipos de script que funcionasen pero estuvieran previamente hechos a base de malas prácticas de programación (y pudieran provocar comportamientos inesperados), pero el propio emulador ofrece de momento la solución al error de scripting. Ambas cosas rompen un poco la retrocompatibilidad pero es lo que hay. Personalmente, a mí no se me ha roto ni un solo script que hice antes de saber qué era C en eAthena. Aún así, reparar esos scripts sería muy fácil como te digo: aún no he visto un solo caso en que la consola no te diga que hacer en esos casos y la vasta mayoria de los scripts hechos para eA o rA (que no usen el sistema de instances, ya que se ha rehecho desde cero en Hercules) funcionan tal cual, sin necesidad de modificación alguna. El código es casi el mismo solo que actualizado unas 5000 veces más que lo que hay en eAthena y adaptado a los cambios de los oficiales. Yo mismo resolví un error de documentación que había en el mismo desde hacía unos 9 años (e hice una entrada de blog sobre ello, en inglés). Sobre otros emuladores actuales de interés aparte de eA y rA y que no sean de pago se me ocurren 3CeAM (el primero en incluir 3as clases) y quizá brAthena y Cronus si te interesa la emulación en portugués de Brasil y el oficial bRO. Sobre lo de ayudarte a decidir un emulador, no descarto que si haces la misma pregunta aquí y en los foros de rAthena cada cual te intente llevar a su lado porque el emulador X es mejor. Yo prefiero que te formes tu propia opinión a la vista de lo que hay. La mía ya está hecha y ni mucho menos pienso adoctrinar a nadie. Por último, siento la total ausencia de enlaces en este post o de quizá la aparición de alguna errata grave, estoy tecleando esto desde el teléfono móvil porque en estos instantes no tengo acceso a un PC (en ese caso no me importarla darte una respuesta mucho más detallada). Espero haber sido de ayuda como poco. ¡Un saludo!
-
Você reiniciou o servidor despues de fazer isso?
-
On cellphone, this reply may not be accurate. Change: if( reborncount == 3 prtg_cas03 ) To: if( reborncount >= 3 && strcharinfo(3) == "prtg_cas03" ) Maybe 3 isn't the right argument for strcharinfo script command to retrieve current user's map. In that case please check the documentation and fix for yourself. PS: always enclose arbitrary strings within quotes: ""