Hello,
J'ai besoin d'un avis sur la correction du code de 1pp. Dans le fichier joint, vous trouverez 3 versions de deux magasins : xxx_vanilla est le fichier d'origine du jeu, xxx_1pp est celui modifié par 1pp, xxx_fixed celui proposé par ma correction.
Le but du jeu est de vérifier les entrées d'objets concernant PLAT01 et PLAT10. Pensez-vous que ma correction a du sens ?
[STO] Avis sur la correction de deux magasins
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
[STO] Avis sur la correction de deux magasins
.
- Fichiers joints
-
- 1pp_fixed.zip
- (3.53 Kio) Téléchargé 51 fois
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Akadis
- Adepte de Grondemarteau
- Araignée éclipsante
- Messages : 1224
- Enregistré le : lun. 28 avr. 2003, 10:58
- Localisation : Bordeaux
- Contact :
- Statut : Hors ligne
.
Je n'ai analysé que les fichiers DMARK1, l'inventaire des marchandises de Fovem sur les docks. Je vois que tu as retiré les 2 objets le mod de 1pp ce qui est logique. D'autres part, comme eux, tu as retiré PLAT10.ITM, l'armure de plates +1.
Pourquoi veux-tu retirer cette objet de son inventaire ?
Pourquoi veux-tu retirer cette objet de son inventaire ?
- Freddy_Gwendo
- Adepte de Grondemarteau
- Orbe ancien
- Messages : 5877
- Enregistré le : sam. 23 avr. 2011, 00:26
- Localisation : Égaré dans un vortex entre Féérune et le Royaume de Diamant Éternel
- Statut : Hors ligne
.
Merci d'y avoir jeté un œil. 
Voici le code initial de 1pp :
Traduction : on ajoute une Plate après la Plate +1 dans le magasin, puis on supprime la plate +1. Ce code date d'une époque préhistorique pour WeiDU. Aujourd'hui, une fonction permet de remplacer la plate +1 par une plate.
Le problème, c'est que ces deux magasins vendaient DÉJÀ une plate avant la modification de 1pp. Du coup, on se retrouve avec deux emplacements vendant chacun une plate. Mon code modifie le stock de plates en vente pour en ajouter une et supprime la plate +1 :
Il me paraît plus logique par rapport au code de 1pp, mais je me demandais si les codeurs de l'époque avaient autre chose en tête que je n'ai pas compris, ou - simplement - s'ils ont reproduit bêtement un code qu'ils utilisent des centaines de fois sans s'apercevoir qu'il n'était pas optimal. 
La modification du second magasin fait exactement la même chose.

Voici le code initial de 1pp :
Code : Tout sélectionner
COPY_EXISTING ~dmark1.sto~ ~override~ // Docks merchant
ADD_STORE_ITEM ~plat01~ AFTER ~plat10~ #0 #0 #0 ~IDENTIFIED~ #1
REMOVE_STORE_ITEM ~plat10~
Le problème, c'est que ces deux magasins vendaient DÉJÀ une plate avant la modification de 1pp. Du coup, on se retrouve avec deux emplacements vendant chacun une plate. Mon code modifie le stock de plates en vente pour en ajouter une et supprime la plate +1 :
Code : Tout sélectionner
COPY ~dmark1.sto~ ~dmark1a.sto~
LPF REPLACE_STORE_ITEM INT_VAR number_in_stock = 2 STR_VAR old_item = PLAT01 new_item = PLAT01 flags = IDENTIFIED END // Plate Mail
REMOVE_STORE_ITEM ~plat10~

La modification du second magasin fait exactement la même chose.
CARPE DIEM...Co-modérateur de La Forge et de La Chambre des Scribes
Moddeur qui s'arrache les cheveux...
Moddeur qui s'arrache les cheveux...
... avec Menace sur le Royaume de Diamant Éternel.
- Akadis
- Adepte de Grondemarteau
- Araignée éclipsante
- Messages : 1224
- Enregistré le : lun. 28 avr. 2003, 10:58
- Localisation : Bordeaux
- Contact :
- Statut : Hors ligne
.
C'est ma faute je n'avais pas regardé les quantités.
En fait je ne vois même pas 2 emplacements avec chacun une plate dans le DMARK1_1pp.sto Au final il ne contient toujours qu'une seule et unique plate. Leur code ne marche pas (ou ne marche plus).
Alors que dans le tien [DMARK1_fixed.sto] il y a bien 2 plates.
Ton code fait le boulot l'autre ne le fait pas. Donc il n'y a pas à hésiter : vive Freddy_Gwendo
Le top c'est de voler l'armure de plate complète à Bel Dalemark, un marchand du quartier du pont
En fait je ne vois même pas 2 emplacements avec chacun une plate dans le DMARK1_1pp.sto Au final il ne contient toujours qu'une seule et unique plate. Leur code ne marche pas (ou ne marche plus).
Alors que dans le tien [DMARK1_fixed.sto] il y a bien 2 plates.
Ton code fait le boulot l'autre ne le fait pas. Donc il n'y a pas à hésiter : vive Freddy_Gwendo

Le top c'est de voler l'armure de plate complète à Bel Dalemark, un marchand du quartier du pont

Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités