Jump to content
  • 0
Sign in to follow this  
Blip

[Ayuda] El cliente no tiene acceso al map server (Aparentemente)

Question

¡Buenas a todos!. Llevo ya muchos años jugando muchos tipos de servidores de RO, y este es el primero que intento montar. Con la Base de Datos y el Compilador, no tuve prácticamente problemas; me doy buena maña con esto, y realmente no me gusta pedir mucha ayuda

Ahora, en cuanto terminé de settear mi servidor, empezaron los problemas. Realmente no tuve la oportunidad de encontrarme un BUEN tutorial para configurar el cliente. La mayoría te dice qué usar, pero nadie te dice para qué sirven. Realmente, no tengo conocimiento previo alguno de cómo se organiza la carpeta del RO. Aún no tengo muy en claro que define el uso de los .lua y los .lub. No sé que es lo que define el que tenga que usar el clientinfo.xml, y tengo menos idea de cómo cambiarme la carpeta data por un .grf (Y ni siquiera sé si lo que haga en Data, me va a servir).

 

Aunque, dejando un poquito mi curiosidad de lado, me gustaría resolver mi problema primero.

Básicamente, me deja loguear con mi cuenta, e incluso crear personaje, pero cuando intento entar con este, me dropea.

 

Hago un resumen de lo que tengo, e hice:

  1. Me baje el Hércules, modifiqué y compilé. 
  2. Lo conecté con MySQL y configuré la base de datos. (Sí, p1/s1 están bien puestos)
  3. Testee el correr los tres servidores. Sin errores.
  4. Me baje el 2014-02-12aRagexe.exe. Modifiqué el PACKETVER mmo.h (20140212). Re-compilé. (Acá empieza lo complicado)
  5. Cree mi clientinfo. ServiceType es korea. ServerType es pk. (Por aguna razón, siendo sakray no pasa de la screen de login). (Y lo copie e hice un sclientinfo, que no sé qué define cual usa)
  6. Me baje el Nemo y el Loki. "Diffee" el Ragexe unas cuantas veces, hastaque funcionó bien.
  7. Me bajé el Client Translation Project. Me pase la carpeta Data y System (Incluso llegué a probar cambiarlos lua por lub). No sé muy bien que hacer con la kRO_lua.
  8. Seguí probando distintos perfiles del Nemo, hasta que me funcionó. (El Punto 5 y 6 los repetí mucho)

Y ahí estoy. Encerrado desde algunos días. Sabiendo poco y sin ideas.

Esta es mi primera opción. Si no, seguiré preguntando por el IRC o de ultima haré un post en la parte de inglés.

Gracias desde ya.

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0

Parece que puedes desactivarlo de dos formas:

 

Una: abriendo tu editor hexadecimal de ficheros de preferencia (el mío por ejemplo es xvi32) y cambiando la cadena de texto NC_CASHSHOP por una cadena vacía:

 

Busca la cadena hexadecimal: 4E 43 5F 43 61 73 68 53 68 6F 70  (o NC_CASHSHOP)

 

Cámbialo por: 00 00 00 00 00 00 00 00 00 00 00 (muy IMPORTANTE, no le des a la tecla delete)

 

Tema de origen: http://herc.ws/board/topic/6758-disabling-cash-shop-button-in-upper-right-corner/?hl=%2Bcash+%2Bshop+%2Bbutton

 

O bien puedes cambiar el fichero del botón en tu GRF, que se encuentra en Data/texture/유저인터페이스/basic_interface/nc_cashshop.bmp por una imagen transparente (color 0xFF00FF) de 1x1px, así si alguno de tus usuarios hace click en ella será de pura mala suerte.

 

¡Un saludo!

Share this post


Link to post
Share on other sites
  • 0

¡Buenas!

 

Sí, entiendo lo que comentas y, por desgracia, lo que hay para cliente hace que todo sea así de poco intuitivo. Yo mismo me encuentro muy limitado en esa parte porque nunca me interesó y se me hace todo muy complicado incluso para las cosas más básicas e incluso mi capacidad de soporte al respecto es también igual de limitada. Me encantaría ver algún tutorial en español sobre el cliente o instruirme yo mismo, aunque por desgracia de momento me es imposible hacerlo por mi cuenta por restricciones temporales.

 

Aún así, vamos a ello:

 

Lo primero que te recomendaría es que encuentres y diffees otra versión de cliente (que desde que murieron los temas de ossi0110 ya ni sé donde se consigue un cliente completo, siquiera). El motivo es que no hay paquetes para la versión de tu cliente en src/map/packets.h y es posible que sea eso lo que causa los errores.

 

Por otro lado, en caso de querer seguir con tu versión actual del cliente, ¿recibes algún error en la consola del mapserver cuando te echa del servidor? ¿Ves que el login ha sido correcto en el loginserver y como el control pasa al char server antes de que tu sesión desaparezca entre el char y el map server?

 

Mis compañeros de la sección hispana (especialmente M45T3R) tiene bastante más conocimiento de clientes que yo, a ver si cuando se pase puede echarte una mano un pelín más útil ;)

 

P.D.: Respondo rápidamente a lo que sé sobre tus curiosidades para que estés algo más informado:

  • ¿Por qué esa estructura de carpeta del RO? No lo sé, creo que así es como la ha dispuesto Gravity y así es como tenemos que organizarnos nosotros para que las cosas nos funcionen, y los nombres de casi todos los archivos de clientes deben permanecer inalterados para que así sea;
  • ¿Qué define usar lua o lub? Los clientes oficiales solo cargan archivos lua encriptados que sepa, pero si al diffear el cliente escoges una opción llamada "Load LUB before LUA" (cargar lubs antes que los lua) simplemente el cliente buscará antes un archivo con ese mismo nobre pero extensión lub, antes que su correspondiente lua. En la mayoría de casos y que tenga conocimiento, puedes usar un lub o un lua indistintamente;
  • ¿Por qué tienes que usar clientinfo.xml? Fundamentalmente, para darle a tu cliente una dirección IP y un puerto que buscar en internet para hacer que el cliente se conecte, junto a información miscelánea como hacerle saber el nombre del servidor, los archivos a cargar para la pantalla de carga, a quién asignarle trajes de GM (que siempre me pareció una mala idea hacerlo desde ahí, aunque no hay otra) y todo lo que ahí se especifica.
  • ¿Qué ocurre con la carpeta Data y los archivos grf? Como has podido averiguar, un archivo grf es básicamente una carpeta data comprimida, con la estructura que se le haya ocurrido a Gravity, aunque por ejemplo algunos clientes requieren que haya archivos dentro de Data fuera de todo grf. Los GRF se leen por orden, de una lista en el archivo DATA.INI (u otro si se modifica en el exe) de tu instalación del RO, en que menor número significa mayor precedencia. En muchas versiones de cliente, si quieres que las cosas se lean desde la carpeta Data, tienes que diffear el exe con la opción "Read data folder first", que hace exactamente eso mismo.

Share this post


Link to post
Share on other sites
  • 0

¡Wow! Probé con 2014-02-05b, y me funcionó perfecto. No tenía idea que fuera así, ni queme funcionara a la primera. Ahora, lo que no estoy muy seguro, es porque me funciona con ServerType en pk, y no en Sakray. 


Ahora me queda bastante por ver. Seguir "diffeando" (¿Se dice así, no?) el exe hasta que quede como me gusta (En vez de hacer que sólo funcione). Terminar de traducir la HUD y otras cosas. Buscarme un buen tuto sobre .grfs y ver si me puedo deshacer de la carpeta data, y algunas cosas más, como jugar con los .conf. Pero, qué se yo. No es nada en lo que necesite mucha ayuda (Aún. Es probable que vuelva a postear sobre estos temas XD)

 

Respondiendo a tus respuestas (xD), sí, estaba al tanto que había algo que daba preferenca a la lectura de lua's sobre lub's (O al revez), lo mismo con la carpeta Data y los .grf. Del DATA.INI también sé que permite hasta 10 valores (0-9), que realmente no creo que necesite usar más, nunca (Bueno... eso pensaba yo de mi 2TB de espacio en disco cuando me compre el ordenador, y apenas me quedan unos GB's XD.

 

Eso sí, muchas gracias. Me estaba volviendo loco. No paraba de mirar el map server, y creo que me centré mucho en eso. 

Voy a seguir experimentando un poco por mi cuenta, y ya os molestaré más con otras cosas

 

EDIT: ¡OH!, Sísísísí, ¿Alguien sabe como sacar el boton de Cash Shop? ES HORRIBLE xD

Edited by Blip

Share this post


Link to post
Share on other sites
  • 0

Revivo mi tema, esta vez por un tema de conexión.

 

Logre setear el cliente. Funciona bien y sin error alguno. No me he querido poner a jugar mucho con las configuraciones porque... ¡Nadie más puede unirse a mi servidor!.

 

Al principio he creído que era un tema de cofiguraciones, luego, de puertos. Incluso me instalé uno de estos programas llenos de spywares para abrir mis puertos porque manualmente no parecía surtir efecto. He llegado a activar mi firewall de windows, sólo para ponerle una whitelist de puertos y los 3 .exe de servidores. 

Usé No-IP, e incluso el odiado (Por mí, sobretodo) Hamachi. 

 

Cuando yo he podido unirme al servidor, mientras usaba la No-IP, tuve varias sospechas de que no eran los puertos. Cuando Hamachi no funcionó, estuve bastante seguro.

 

Así que... ¡No sé!. Estoy seguro que se está olvidado un valor, pero no sé cual, ni en donde. Alguien que no tenga la cabeza tan quemada con esto (Seguro me responde sólo JaBote igual XD), ¿Me puede dar una mano?. Cuatro ojos ven más que dos.

 

confchar-server.conf

// Server Communication username and password.userid: <Blank>passwd: <Blank>// Server name, use alternative character such as ASCII 160 for spaces.// NOTE: Do not use spaces or any of these characters which are not allowed in// Windows filenames /:*?"<>|// ... or else guild emblems won't work client-side!server_name: AlphaRO// Wisp name for server: used to send wisp from server to players (between 4 to 23 characters)wisp_server_name: Server// 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: 25.189.240.75// 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: 270.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: 25.189.240.75// Character Server Portchar_port: 6121

confmap-server.conf

// Interserver communication passwords, set in account.txt (or equiv.)userid: <Blank>passwd: <Blank>// 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: 25.189.240.75// 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: 270.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: 25.189.240.75// Map Server Portmap_port: 5121

conflogin-server.conf

// Login Server Portlogin_port: 6900

confsubnet.conf

// Subnet support file// Format is:// subnet: net-submask:char_ip:map_ip// you can add more than one subnet subnet: 255.255.255.0:25.189.240.75:25.189.240.75

Perfil utilizado en NEMO-Master (2014-02-05bRagexe.exe)

2 Chat Flood Allow8 Custom Window Title9 Disable 1rag1 type parameters (Recommended)10 Disable 4 Letter UserCharacter Limit11 Disable 4 Letter UserID Limit12 Disable 4 Letter UserPassword Limit13 Disable Ragexe Filename Check (Recommended)14 Disable Hallucination Wavy Screen (Recommended)15 Disable HShield (Recommended)16 Disable Swear Filter19 Enable Title Bar Menu20 Extend Chat Box21 Extend Chat Room Box22 Extend PM Box24 Fix Camera Angles (Recommended)28 Increase Headgear ViewID31 Increase Zoom Out 75%33 Always Call SelectKoreaClientInfo() (Recommended)34 Enable /showname (Recommended)35 Read Data Folder First36 Read msgstringtable.txt (Recommended)37 Read questid2display.txt (Recommended)38 Remove Gravity Ads (Recommended)39 Remove Gravity Logo (Recommended)40 Restore Login Window (Recommended)41 Disable Nagle Algorithm (Recommended)44 Translate Client (Recommended)47 Use Ragnarok Icon48 Use Plain Text Descriptions (Recommended)49 Enable Multiple GRFs (Recommended)50 Skip License Sreen52 Use Custom Font53 Use Ascii on All Langtypes (Recommended)61 Disable Packet Encryption (Recommended)64 @ Bug Fix (Recommended)65 Load Custom lua file instead of iteminfo.lub67 Remove Quake skill effect68 Enable 64k Hairstyle69 Extend Npc Dialog Box73 Remove Hourly Announce (Recommended)204 Increase Attack Display74 Increase Screenshot Quality205 Enable Monster tables84 Remove Serial Display (Recommended)86 Only First Login Background88 Allow space in guild name90 Enable DNS Support (Recommended)97 Cancel to Login Window (Recommended)98 Disable dc_scream.txt99 Disable ba_frostjoke.txt102 Fix Tetra Vortex

srccommonmmo.h

#ifndef PACKETVER	#define PACKETVER 20140205#endif // PACKETVER

dataClientinfo.xml

<?xml version="1.0" encoding="euc-kr" ?><clientinfo>	<desc>Ragnarok Client Information</desc>	<servicetype>korea</servicetype>	<servertype>pk</servertype>	<hideaccountlist />	<passwordencrypt />	<passwordencrypt2 />	<extendedslot />	<readfolder />	<connection>		<display>AlphaRO</display>		<desc>Version Alpha</desc>		<balloon>ASD</balloon>		<address>25.189.240.75</address>		<port>6900</port>		<version>20</version>		<langtype>1</langtype>		<registrationweb>https://www.google.com.ar/</registrationweb>		<yellow>			<admin>2000001</admin>			<admin>2000002</admin>			<admin>2000003</admin>		</yellow>		<loading>			<image>loading00.jpg</image>			<image>loading01.jpg</image>			<image>loading02.jpg</image>			<image>loading03.jpg</image>			<image>loading04.jpg</image>			<image>loading05.jpg</image>			<image>loading06.jpg</image>			<image>loading07.jpg</image>			<image>loading08.jpg</image>			<image>loading09.jpg</image>			<image>loading10.jpg</image>		</loading>	</connection></clientinfo> 

 

 

Un poco más de Información:

Usamos este cliente, actualizado (Que lo he leído por ahí, y me lo he bajado sólo para asegurarme que no sea eso. Encima se los obligué a bajar a is colegas). He probado con al menos 2 PC's distintas a la mía (Mañana serán 3).

A mí, conectarme de local, me va perfecto.

No he probado jugar con servicetype y langtype en el Clientinfo.xml, pero servertype no parece aceptar otra cosa que no sea pk (Y no sé porqué).

También probé el quitar/poner la opción de DNS's en el Nemo, pero nada.

Y no, no aparece ningún mensaje en los servidores en cuanto uno de mis amigos se quiere conectar. Y el error de ellos es "Failed to Connect" (O algo así)

 

Puedo poner información de mis puertos también, pero... ¡Aún cerrados con Hamachi debería funcionar! (Que es lo último que probe. Por eso tiene esa IP)

 

¡Ayuda! Ya estoy muy quemado T_T

Edited by Blip

Share this post


Link to post
Share on other sites
  • 0

Yo logré una única vez que otras personas se metieran en mi servidor casero, y era con Hamachi. La siguiente vez no lo logré, aunque logré que llegaran a loguear o no loguear.

 

Recuerdo que todo tenía la misma configuración más o menos, aunque nunca necesité tocar subnet.conf para nada: prueba a revertir el cambio ahí.

 

Parece que lo tienes todo correcto: la IP y los puertos en los servidores, y la IP del servidor y puerto del login server en el clientinfo.xml; lo que sí parece es que o bien NickyZai acaba de cambiar el cliente a 20141001 o estás compilando para un cliente equivocado, pero creo que es lo primero porque pareces bastante meticuloso.

 

Si no aparece absolutamente nada de nada en la consola del login server y estás totalmente seguro de que estás introduciéndolas correctamente, lo único que se me puede ocurrir es que el cliente no esté leyendo correctamente el archivo clientinfo.xml del servidor. ¿Dónde lo habéis colocado? ¿Está dentro del GRF que se lee primero al iniciar el servidor? Creo que se desactivó hace mucho la posibilidad de dejarlo alegremente en la carpeta data, porque no he leído por ahí el diff de "Read Data folder first".

Share this post


Link to post
Share on other sites
  • 0

Si que está, linea 20.

  1. 35 Read Data Folder First

Pero, aun así. El clienfinfo.xml esta, tanto dentro del AlphaRO.grf como de la carpeta Data. De echo, en la carpeta Data sólo existen 3 tristes archivos. El clienfinfo.xml, el cskroption.lub y el csTownInfo.lub (Que, de echo, estaba intentando ver qué eran, y si ya los tenía en los lua o algo /heh).

Y sí, me considero bastante meticuloso. Me gusta hacer las cosas bien, organizadas y con comentario. El intento de levantar el servidor, no viene sólo por las ganas, me gusta la idea de poder experimentar un poco, y ganar un poco de práctica. A fin de cuentas, un servidor tiene necesidades reales, y es algo que me va a servir bien como ejercicio. 

 

DATA.INI

[Data]0=AlphaRO.grf1=rdata.grf2=data.grf

El Data está bien. Está con los valores correctos (Según sé, el rango de valores es del 0-9, sin diffear). A lo sumo podría cambiarle el valor inicial por 1, pero... Así lo lee bien (Todas las texturas traducidas están ahí, y van genial). Pero la verdad, estoy tan desesperado que ya empiezo a probar cosas que no tienen sentido (A todos nos pasó de solucionar algo así.)

 

Voy a probar con lo siguiente, y si no, al foro inglés.

 

  1. Dejar el confsubnet.conf de fábrica.
  2. Duplicar clientinfo.xml y cambiarle el nombre por sclientinfo.xml (Recuerdo haber leído esto en algún lado. No sé ni para qué sirve)
  3. Diffear el cliente con lo básico, que a la vez me permita ejecutarlo sin errores. (Parcial)
  4. Probar con un Ragexe.exe más viejo (Y recompilar. Buff)
  5. Probar, uno a uno, los 20 tipos de servicio y los 20 tipos de idioma del clientinfo.xml (Duplicandlo al sclientinfo.xml) No, no voy a hacer esto 400 veces. Sólo 20, tipo de servicio (región) = idioma.
  6. Volver a montar el server y la base de datos, compilando una única vez.
  7. Llorar
  8. Traducir mi anterior post al inglés y postearlo en el sub-foro en inglés.

No sé. Me quedé despierto hasta super tarde. Cuando testee con gente, te aviso que paso XD (Y seguro se me ocurre algo más que probar)

Edited by Blip

Share this post


Link to post
Share on other sites
  • 0

Hago un poquito de doble post, únicamente para bumpear el tema.

El sclientinfo.xml no lo lee (Obviamente, como sospechaba).
Me he vuelto a bajar el Hercules, y he modificado todo lo necesario antes de compilarlo (Apenas lo hice una vez sola. Imposibilitando que sea un error de este tipo), y siempre en tipo Release (Visual Studio 2012. Usando el Hercules-11.sln).
Decistí con el .exe que estaba usando, y pase a usar el 2013-12-23c (Que es el que viene configurado en el servidor de hércules), para evitar ideas de que fuera por eso. Diffee con Nero, (casi) mismas opciones que arriba, con algunas variaciones con el único propósito de testeo.
Recuperé un antiguo chat en VB6 que tenía del año del naupa, para testear los puertos con un amigo. Hubo conexiones exitosas, y también hemos probado mi No-IP. Luego he cerrardo un puerto y como era de esperarse no nos hemos podido conectar (Sólo para estar seguros que la prueba de puertos había sido exitosa). Con esto pasé a des-instalar el hamachi. Como lo odio.

Lo que me queda hacer es el 3, de forma parcial. Que es, más bien, buscarme una combinación de settings que ya haya probado alguien y le haya funcionado sin error alguno (Como descarte final).
Y el 5 (Que he pasado un poco de tanto testeo. Prefiero averiguar cómo funciona antes que probar 16x16x4 probabilidades, que sería lo necesario para descartar esto) Encima que aún no descubro porqué sólo acepta el servertype pk, dandome error cuando pruebo cualquier otra cosa.

Mañana terminaré de probar eso, y lo postearé en el apartado de inglés. Desearme suerte

Edited by Blip

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.