J'aimerais trouver un code qui permette de fixer le prix des parchemins d'arcanes à 100 po par level. (100po pour un parchemin de level 1 , 200po pour un parchemin de level 2, 300 po pour un parchemin de level 3 etc... jusqu'à 900po pour un parchemin de level9)
En effet je trouve le prix des parchemins dans BG vanilla incohérent. (les prix varient du simple au double pour un même niveau de sorts) et surtout ça part en exponentielle avec des parchemins level 9 à 8000 po . Je passe sur le fait qu'on trouve parfois ce genre de parchemins dans un tonneau. bref c'est pas le sujet.
Subbtledoctor m'avait invité du coup à modifier le code d'un de ses composants :
https://github.com/UnearthedArcana/Low_ ... prices.tpa
Il m'a dit que je devais modifier le code en mettant celui çi à la place :
► Afficher le texte
COPY_EXISTING_REGEXP GLOB ~.*\.itm~ ~override~
PATCH_IF (SOURCE_SIZE > 0x71) BEGIN
READ_SHORT 0x1c item_type
PATCH_IF (%item_type% = 11) BEGIN
READ_LONG 0x34 scroll_price
READ_LONG 0x64 header_offset
READ_SHORT 0x68 header_count
READ_LONG 0x6a effect_offset
SET spell_level = 0
SET scroll_level_price = 0
SET can_learn = 0
FOR (header = 0; header < header_count ; ++header) BEGIN
SET this_header = 0
READ_SHORT (header_offset + (header * 0x38) + 0x1e) effect_count
READ_SHORT (header_offset + (header * 0x38) + 0x20) effect_index
FOR (effect = 0; effect < effect_count; ++effect) BEGIN
READ_SHORT (effect_offset + (effect_index + effect)* 0x30) opcode
PATCH_IF (opcode = 147) AND (this_header = 0) BEGIN
READ_ASCII (effect_offset + 0x14 + (effect_index + effect)* 0x30) resref_cast
INNER_PATCH_FILE ~%resref_cast%.spl~ BEGIN
READ_SHORT 0x1c type
READ_SHORT 0x34 cast_spell_level
END
PATCH_IF (type = 1) OR (type = 2) BEGIN // spell scroll
SET this_header = 1
SET can_learn = 1
END
END
END
END
PATCH_IF (can_learn = 1) BEGIN
SET spell_level = %cast_spell_level%
SET scroll_level_price = (%spell_level% * 100)
WRITE_LONG 0x34 %scroll_level_price%
END
END
END
BUT_ONLY
C'est la fin du code qui change un peu. Par contre une fois in game, les prix dans les magasins sont toujours les même donc je pense que ça ne marche pas vraiment.
Est ce que vous voyez d'où peut venir le problème ?
merciii