Jump to content
  • 0

Compilation client/serveur et compatibilité


Nexooh

Question

Version des Files 2014 (Kraizy)

Hello à tous,

 

1. Description du dysfonctionnement / Question :

Nouveau dans l'émulation Metin2, je m'attaque aux sources du client et du serveur.

Après avoir suivi un tutoriel pour l'ajout des niveaux, je suis rendu à compiler :

  • mon game
  • ma db
  • mon client

 

La compilation se passe bien, le démarrage du serveur aussi, la connexion aussi, c'est au moment d'entrer en jeu (après la sélection du personnage), que le client crash.

Au vu des erreurs que je peux voir dans mon syserr côté client, il semble qu'il ne soit plus en phase avec le côté serveur (cf. partie 2), apparemment que le système des ceintures n'est pas implémenté côté client ou serveur (je pencherais ici plus pour le côté client ?).

 

Il est à noter que j'ai suivi ce tutoriel pour la compilation de mon client https://metin2.dev/board/topic/22115-compile-client-with-vs19-src/?tab=comments#comment-120315

J'en suis à supposer qu'il faut faire gaffe à une compatibilité entre le client et le serveur, mais là, je bloque, car je n'ai pas vu ce genre de mention dans les différents tutoriels que j'ai utilisés.

 

Donc, si mon intuition est bonne, avez-vous une piste que je pourrais explorer pour assurer la compatibilité entre mon client et mon serveur, et que je puisse compiler à la façon de Mali61 ? Et si je me plante, avez-vous une idée de ce qui peut bien se passer ? :)

 

2. SysErr ( Client / Server ) / SysLog ( Server )

Révélation

0427 12:22:19036 :: invalid idx 0
0427 12:22:35222 :: CPythonPlayer::SetSkillLevel(SlotIndex=1, SkillLevel=335609856)
0427 12:22:35222 :: CPythonPlayer::SetSkillLevel(SlotIndex=3, SkillLevel=335609856)
0427 12:22:35395 :: Failed to load script file : locale/fr/ui/InventoryWindow.py
0427 12:22:35396 :: 
ui.py(line:2782) LoadScriptFile
system.py(line:192) execfile
system.py(line:163) Run
locale/fr/ui/InventoryWindow.py(line:92) <module>

LoadScriptFile!!!!!!!!!!!!!! - <type 'exceptions.AttributeError'>:'module' object has no attribute 'EQUIPMENT_BELT'

0427 12:22:35396 :: ============================================================================================================
0427 12:22:35396 :: Abort!!!!


0427 12:22:35396 :: 
uiInventory.py(line:284) __LoadWindow
ui.py(line:2799) LoadScriptFile
exception.py(line:36) Abort

InventoryWindow.LoadWindow.LoadObject - <type 'exceptions.SystemExit'>:

0427 12:22:35396 :: ============================================================================================================
0427 12:22:35396 :: Abort!!!!

 

3. Comment le reproduire ?

  1. Utiliser la VDI présentée ici : 
  2. Installer les sources présentées ici
  3. Faire les modifications de ce tutoriel : 
  4. Compiler les sources client en suivant ce tutoriel : https://metin2.dev/board/topic/22115-compile-client-with-vs19-src/?tab=comments#comment-120315

 

 

 

Merci à tous,

Cordialement

Link to post

2 answers to this question

Recommended Posts

  • 0
  • Administrateur

Si je ne m'abuse, je ne pense pas que ton client crash suite à ton upgrade VS2019.

Je l'ai réalisé sans problème...

 

Je constate cette erreur dans ton syserr : Failed to load script file : locale/fr/ui/InventoryWindow.py, je dirai que ton client crash car il n'arrive pas à charger les données de ton ou tes packs...

  • Like 1

logo.pngmiaw-network.png
 

Link to post
  • 0
Posted (edited)

Merci pour ta réponse si rapide ! :)

 

Effectivement j'ai remarqué cette erreur, je me suis dit que c'était à cause de la ligne un peu en-dessous

LoadScriptFile!!!!!!!!!!!!!! - <type 'exceptions.AttributeError'>:'module' object has no attribute 'EQUIPMENT_BELT'

Cependant, en allant chercher dans le pack en question, je ne vois pas de souci particulier...

 

Dans locale/fr/inventorywindow.py, je vois "import item" , qui est utilisé ligne 92 du fichier :

{"index":item.EQUIPMENT_BELT, "x":39, "y":106, "width":32, "height":32},

Cependant, sais-tu où je peux trouver le module correspondant ?

 

EDIT :

Finalement, problème résolu.

 

J'ai trouvé la réponse ici https://metin2.dev/board/topic/979-i-compile-bin-with-mainline-and-this-syserror-accuse/

Avant de compiler le binaire, il fallait éditer le fichier client locale_inc.h et ajouter cette ligne :

#define ENABLE_NEW_EQUIPMENT_SYSTEM

 

Merci pour ton aide ASIKOO, et pardon pour le post un peu inutile finalement...

Edited by Nexooh (see edit history)
Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Flux d'Activité

    1. 9

      serveur Metin2

    2. 0

      Mustang SF - Full - 1.8 Pas de login virtualbox

    3. 9

      serveur Metin2

    4. 9

      serveur Metin2

    5. 1

      [C++] Abbility Potions

    6. 9

      serveur Metin2

    7. 3

      Among Us ( Windows )

    8. 9

      serveur Metin2

    9. 9

      serveur Metin2

  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.