Jump to content

caanmasu

Miembro
  • Contador contenido

    357
  • Ingreso

  • Última visita

  • Días ganados

    38

Mensajes publicados por caanmasu

  1. El servidor es la fuente de la verdad.

    Aunque hay guías para hacer las cosas; hay muchas otras cosas que no se aprenden de guías. Tienes que conocer la estructura del servidor. Revisa cada carpeta de los files, abre cada archivo, revisa para qué sirve cada uno, etc.

    Todo está en inglés, así que vas a tener que familiarizarte con el idioma. El nombre de los archivos indican todo, por ejemplo, el mob_drop_item.txt (donde se modifica el drop).

    Ítems en NPC: nadie me enseñó. Revisé cada tabla de la base de datos y me di cuenta cómo se relaciona el npc con las tiendas, y luego en el mob_proto.txt me di cuenta cómo el servidor dice si un npc es tienda u otra cosa.

    Duración permanente en las habilidades: aunque nunca he hecho esto, hay un proto para las habilidades, el skill_proto, que está en player en db.

    Editar las mazmorras: están en quest en la ruta del locale. Hay muchas cosas en las quest que hay allí pero hay que aprender qué cosas son, porque no le encuentro una lógica relacionada allí. Quest significa misión, pero terminó siendo un lenguaje de no solo misiones y pergaminos, sino que uso uso fue un poco más allá, aunque sigue siendo limitado.

    Lo que me hizo aprender bastante sobre el servidor fue revisarlo cada día. Aunque sé que al otro día se me olvidaba qué cosas revisaba, si lo hacía con constancia se me iba quedando las cosas.

    Si definitivamente no pudiste con algo luego de haber hecho muchas cosas, es tiempo de pedir ayuda.

    Espero que esta información te haya servido.

  2. En ClientManagerBoot.cpp (db server) busca:

    bool CClientManager::InitializeItemRareTable()

     

    Unas líneas abajo vas a ver algo así como esto:

     

    	snprintf(query, sizeof(query), "SELECT apply, apply+0, prob, lv1, lv2, lv3, lv4, lv5, weapon, body, wrist, foots, neck, head, shield, ear FROM item_attr%s ORDER BY apply",

     

    En donde dice item_attr, reemplazas por item_attr_rare

     

    PD: recomiendo usar los files como recursos (extraer cosas) no como producción (abrirlo al público).

  3. Estos files por ahora son los que más he visto que se asemejan al oficial más actualizado; salvo algunas armas, dungeons y crafteos que metieron para extender equipamento al nivel 120.

    No los recomiendo para personas que están empezando o que quieren montar un sv al público de la noche a la mañana.

    Detectar errores y saber solucionarlos no es tarea fácil, y tampoco es algo propio de estos files. Todos los files tienen errores.

    He detectado varios bugs graves. Si llegas a montar un sv con estos files, te los van a tumbar muy fácil o aprovecharán unos bugs muy buenos.

    Sin duda estos files son demasiado completos pero se necesita al menos dos personas experimentadas que los trabajen.

  4. Muy bien.

    Ese syserr seguro es de db src porque está manejando consultas.

    Busca en tu source en Server/db/src/ClientManagerPlayer.cpp

    Seguramente tienes esto:

    snprintf(queryStr, sizeof(queryStr), "UPDATE player_index%s SET pid%d=%d WHERE id %d",

    Debes reemplazarlo por:

    snprintf(queryStr, sizeof(queryStr), "UPDATE player_index%s SET pid%d=%d WHERE id=%d",

     

    Fíjate en el signo "=" del final.

  5. hace 59 minutos, VIKSANT dijo:

    Hola man, hay alguna manera de poder ponerme en contacto contigo? la verdad que quiero hablar contigo un tema muy muy concreto y breve.

    Lo agradecería de corazon. Muchas gracias,

    Sí, claro, con gusto

    Mi Discord es Camilo#0869, siempre estoy activo

  6. hace 21 horas, Meruem dijo:

    no he visto el código de esta fuente, pero en los mainline había fallo referente a eso desde hace años, yo lo solucione en clientmanager de la db en la función "QUERY_EMPIRE_SELECT" ojo debes tener en cuenta cual es la version de c++ en que esta trabajando esta fuente y tener un conocimiento del lenguaje no te pongas a seguir tutos, espero te sirva buscar por ahi y añadir unos syslog para ver que pasa y probar hasta que suceda el error y asi encontrar la fuente del problema, buena suerte

    Hola Meruem

    Gracias por el mensaje.

    Ya había revisado esa parte y no había tenido mucha idea pero lo volví a revisar y lo tengo más claro. Voy a hacer unas pruebas.

  7. En 1/5/2019 a las 9:33, NazoX dijo:

    9.APPLY_CAST_SPEED :

    Disminuye la velocidad de carga de las habilidades. No influye en la velocidad del personaje mientras lo lanza.

    En 1/5/2019 a las 9:33, NazoX dijo:

    25.APPLY_MANA_BURN_PCT :

    Lo tiene la Espada Demonio (sura 70) y los mobs en la columna drain_sp. La prob es de 1 a 100, y si cae, robará 50 puntos de SP al enemigo.

     

  8. Estos files tienen un error en un sistema que hace que se crashee el server.

    No intento lucrarme con esto.

    Llevo dos meses trabajándolos y voy a decir dos bugs solamente. El resto los buscan ustedes:

    1. Los guantes cuando los pones en el Seon-Hae (20095) para ponerle 6 y 7 bonus, si lo pones en la casilla y le intentas poner 6 y 7 bonus, el server se cae y genera game.core y toca reiniciar.

     

    Fix:

    Abre aSource\Server\db\src\ClientManagerBoot.cpp

    Busca: 

    #ifdef ENABLE_GLOVE_SYSTEM
            str_to_number(t.bMaxLevelBySet[ATTRIBUTE_SET_PENDANT], data[col++]);
    #endif

    Reemplaza por

    #ifdef ENABLE_GLOVE_SYSTEM
            str_to_number(t.bMaxLevelBySet[ATTRIBUTE_SET_GLOVE], data[col++]);
    #endif


    2. Cuando creas una cuenta, eliges reino, creas un pj e intentas entrar, se queda la pantalla en negro. Debo resaltar que esto no ocurre en todas las cuentas. Llevo mucho tiempo sin encontrar el bug pero una pista es que si revisas player.player_index, la columna empire te aparecerá en 0 porque el reino no fue elegido. Para desbugearlo debes ponerle un 1 (Shinsoo), 2 (Chunjo) o 3 (Jinno).

    Una posible solución por el momento sería ponerle valor por defecto 3 a empire, por si alguna cuenta queda afectada, se elija por defecto Jinno como reino.

     

    Si alguno llega a solucionar el bug de raíz, por favor comentarlo, estaremos muy agradecidos y seguiremos aportando más.

     

×
×
  • Crear nuevo...