Dragon's Dogma 2
0 of 0

File information

Last updated

Original upload

Created by

xyzkljl1

Uploaded by

xyzkljl1

Virus scan

Safe to use

Tags for this mod

About this mod

Show effect valule of items&augments. Customizable and expandable. 显示物品和职业被动的详细数值,可配置和扩展

Requirements
Permissions and credits
Translations
  • German
  • French
Changelogs
Donations
Show effect valule of items&augments. Customizable and expandable. 
This mod has similar function with Better Item Description but much much better so that I decide to call it `Better Better Item Description`.

显示物品和职业被动的详细数值,可配置和扩展。
类似于Better Item Description 但是功能远远胜过前者,所以我决定管他叫`Better Better Item Description`.

All dd2 mods source in github.

Note / 说明

1.Fully Support English & Chinese by defaultOther language users will see detail message in English
But You can easily add a translation of new language in 30 minutes.

User-added built-in translation:
Arabic v0.1 (by DiNaSoR, aka dragonarab, not include item common status translation currently)

User-added Language pack(need to install mod):
German (MOD Link,by Pyr0blad3)
French(MODLink by Mascano)

1.5.Traditional Chinese/English version is translated by me but I'm not quite confident about them.You can tell me if you found some bad translations.

繁中/英文是我翻译的但我对此并没有多少自信,翻译有问题的地方可以评论告诉我

2.Show detail messages for items(including weapon/armor/ring) and augments.
You can disable extra detail for weapon/armor in config
Will show extra description for items/augments in item/storage/vocation guid menu.Won't show augment detail in status menu.

对物品(包括武器/护甲/戒指)和职业被动显示额外信息
可以在设置里关闭武器/护甲的额外信息
会在物品/仓库/职业工会界面显示额外信息,在Status菜单不会显示

3.If an item has extra detail,the new description will replace the old text by default. You can disable in config to display both new and old description.
When an item has many details,they will wrap automatically.You can config the length to controll how it wrap.
Automatically choose the same language with your game.If your language is not supported, use English instead.
You can config `Force using language` in config to force the mod use selected language.

如果一个物品有额外的信息要显示,新的描述默认会替代旧的描述。你可以关闭该设置从而保留原描述
一个物品有多条属性时,会自动换行,你可以在配置里调整换行的长度
默认会根据你的游戏语言自动选择翻译,如果没有该语种翻译则使用英语。
你可以在选项里配置,令其强制使用某种语言

4.This is a lua script mod which read values from the game and generate detail text.
Therefore it won't confict with almost all `pak` mods.
Therefore have a very good chance to be compatible with new game versions.And will reflect the new effect value if it's changed in new game version.
(can only reflect the ”number“,not the ”effect“ ). Can also show detail of future items unless it has a new type of effect.
 
这是一个lua脚本实现的mod,会从游戏内读取数据并生成描述
因此几乎不可能和那些".pak"实现的mod冲突
并且很大概率兼容游戏更新,并且当游戏更新修改了数值时也可以反映出修改后的数值 (仅限"数值"变动,不能反映效果变动);也可以显示今后新加的物品的信息(除非新物品有一种全新类型的效果)

5.Configurable Settings / 可配置选项:
newlinewidth:(only work for items) the length to warp
ignoreArmorAndWeapon: won't show detail for armor/weapon if set to true
removeOriginalText:will remove original description if set to true
Force using this language: use selecte translation file if set to any non-emtpy value
NewLineWidthAlsoAffectOriginalText: literal

newlinewidth:(只对物品有效) 强制换行长度
NewLineWidthAlsoAffectOriginalText: 换行长度影响原描述
ignoreArmorAndWeapon: 不显示武器和护甲
removeOriginalText:有新描述时不显示原描述
Force using this language: 如果不为空,强制使用指定的语言


How to Install? / 安装
Spoiler:  
Show

1. Install Reframework
    安装 Reframework

1.5. Install _XYZApi (Optional.Only necessary when you need to modify settings in UI) 
安装_XYZApi (可选,如果你不需要在UI界面中修改配置,则不需要安装该前置)

2. You can Install by Fluffy Mod Manager or Manually
你可以通过Fluffy Mod管理器 安装或手动安装

3.1. Install by Fluffy Mod Manager:
通过Fluffy Mod Manager安装:

Download this mod and drag into mod manager.Then turn it on in mod manager
下载压缩包,将压缩包拖进mod管理器,然后在mod管理器中开启该mod

3.2.Install Manually
手动安装:
Dowload this mod and extract.Copy the `reframework` folder to game folder. If `reframework` already exists in game folder,then merge these two folders.
下载该mod,解压后将reframework文件夹拷贝至游戏目录下,如果游戏目录下已经存在reframework文件夹,将两个文件夹合并




How to add a new translation?
 
Spoiler:  
Show

As an example,say we are making a german translation

1.Find a build-in translation file in "reframework/data". For example: "BetterBetterItemDescription.English.json"
Duplicate this file to and rename it to "BetterBetterItemDescription.German.json"
If you choose from following candidate language names,this mod can automatically selected language:
Spoiler:  
Show
"Japanese""English","French","Italian","German","Spanish","Russian","Polish","Dutch","Portuguese","PortugueseBr","Korean","TransitionalChinese","SimplelifiedChinese","Finnish","Swedish","Danish","Norwegian","Czech","Hungarian","Slovak","Arabic","Turkish","Bulgarian","Greek","Romanian","Thai",
"Ukrainian","Vietnamese","Indonesian","Fiction","Hindi","LatinAmericanSpanish"



2.edit this file with notepad or any software.Repalce the English translation to your translation.

Remember not to change the symbols 
(If you can't tell which text need to be translated ,you can open other translation file and see which part are translated.)
This file contains three part:
AbilityFormat: translation of augments.Only the text following "format" need to be translated.
For example,the english version is:

"AbilityFormat": {
"10": {
"format": "+{v1} Max Stamina",
"hint": "固定値(150.000000,0.000000)"
},

Then you need to make it
"AbilityFormat": {
"10": {
"format": "sadasds21312313aa +{v1} dadasdjnsdioasd(This is german)",
"hint": "固定値(150.000000,0.000000)"
},
"{v1}" and "{v2}" will be replaced by the real effect value.Keep them.
The "hint" contains hint from devs.You can ignore it.

RingSpecialFormat: translation of ring's buff.Similar with abilityFormat, only "format" part need to be translated.
”hint“ contains the rings that has this buff.
For example :
"RingSpecialFormat": {
  "1": {
"enable": true,
"format": "+{v1} MaxHP",
"hint": "(3502,Ring of Acclamation,200,0,0)(3501,Ring of Exultation,100,0,0)"
  },

should be translated to :
"RingSpecialFormat": {
  "1": {
"enable": true,
"format": "+{v1} asdasdyh0128diowqdhsa09hio(This is german)",
"hint": "(3502,Ring of Acclamation,200,0,0)(3501,Ring of Exultation,100,0,0)"
  },

FieldFormat:translation of common attributes.The text following "format"/"map" and the text directly following "_XXX" need to be translated.
For example:
 "_BuyPrice": {
"enable": false,
"format": "BuyPrice %s.",
"type": "String"
},
"_Category": {
"enable": false,
"format": "Cat %s",
"map": [
  "Material",
  "Other",
  "Equip"
],
"type": "Enum"
},
"_DarkDefence": "%s%% Dark Debuff Resist",
"_FireDefence": "%s%% Fire Damage Reduce",

should be 
"_BuyPrice": {
"enable": false,
"format": "asdsa09dh12ods(this is really german) %s.",
"type": "String"
},
"_Category": {
"enable": false,
"format": "asdsa09dh12ods(this is really german) %s",
"map": [
  "dsagjy(this is really german)",
  "7687yiuhj(this is really german)",
  "gfdh(this is really german)"
],
"type": "Enum"
},
"_DarkDefence": "%s%% zxczxc(this is really german)",
"_FireDefence": "%s%% bbbb(this is really german)",
”%s“ will be replaced by the real effect value.And %% is for a simple "%".Don't change them.

3.validate your file with a web json formatter( you can easily find many by google)

4.Put your file into `reframework/data/` folder.
If it is correctly named to "BetterBetterItemDescription.{YourLanguage}.json" and this language is in the language list mention in step 1.Then the new language will show after you start game.
You can also set "Force using this language" config to your language name(Not whole file name.In this example ,you should set it to "German" ).Then this mod will ignore game's language and choose selected language file



How to customize the item detail?
Spoiler:  
Show

The customize process is a bit more complex than 1+1.
This doesn't meant to let everyone can do it.Thismeant to let someone find a good preset and and share his work.

1.find the translation file in `reframework/data`.For English users,it's "BetterBetterItemDescription.English.json"

2.For common attributes, you need to edit something under "FieldFormat".
Take apple as example .the default extra message is(installed AppleRestoreMaxHP mod) :
Heal 80 HP./Heal 500 MAXHP.
Because the `_HealWhiteHp` and `_HealBlackHp` of  apple is 80/500.And according to these lines in file:
        "_HealBlackHp": "Heal %s MAXHP.",
        "_HealWhiteHp": "Heal %s HP.",

These two attributes are generated.

If you want display `itemID` ,then you need to find it in translation file:
"_Id": {
    "enable": false,
    "format": "Id %s.",
    "type": "String"
},
You will find I already added something for item id.You only need to enable it.
So if you turn it on(modify "false" to "true") and you can get:

Id 1./Heal 80 HP./Heal 500 MAXHP.

If you want another format .you can edit format to:
"_Id": {
"enable": true,
"format": "This has an id of %s and lalala.",
"type": "String"
},
Then you will get
This has an id of 1 and lalala./Heal 80 HP./Heal 500 MAXHP.


3.If you didn't find it in translation ,you need to muanlly add it to translation file
All possible attributes are here:
Spoiler:  
Show
   
--following is common parameters
    _Id
    _SortNo
    _Category
    _Attr
    _ModelId
    _FieldModelId
    _IconNo
    _ItemDropId
    _Weight
    _BuyPrice
    _SellPrice
    _StackNum
    _Material
    _Worth
    _Favor
    _FavoriteAttr
    _AutoSellPrio
    _StolenPrio
    --Following is consumable items
    _SubCategory
    _UseEffect
    _Decay
    _DecayedItemId
    _HealWhiteHp
    _HealBlackHp
    _HealStamina
    _UseAttr
    _AddStatus
    _RemoveStatus
    _FakePrice
    _FakeItemId
    
    --Following is equip(shared by weapon/armor/ring)
    _EquipCategory
    _Lv
    _Series
    _Job
    
    --Following is weapon
    _WeaponName
    _WeaponId
    _PhysicalAttack
    _SlashRate
    _StrikeRate
    _StrikeStore
    _MagicAttack
    _Element
    _ElementStore
    _Shake
    _Blow
    _StaminaReduce
    _ShakeGuard
    _BlowGuard
    _PoisonStore
    _SleepStore
    _SilentStore
    _StoneStore
    _WaterStore
    _OilStore
    --Following is aromor/ring
    _StyleNo
    _PhysicalDefence
    _SlashDefenceRate
    _StrikeDefenceRate
    _MagicDefence
    _FireDefence
    _FireResist
    _IceDefence
    _IceResist
    _ThunderDefence
    _ThunderResist
    _LightDefence
    _DarkDefence
    _ShakeResistRate
    _BlowResistRate
    _PoisonResist
    _SleepResist
    _SilentResist
    _StoneResist
    _WaterResist
    _OilResist

If you want to show "_StackNum" for every item ,you can add the following text:
"_StackNum": {
"enable": true,
"format": "This item's stack num is %s",
"type": "String"
},
or you can use a short format
"_StackNum": "This item's stack num is %s",
Then you can get
This has an id of 1 and lalala./This item's stack num is 99/Heal 80 HP./Heal 500 MAXHP.


4.Some special attributes,such as _SubCategory.
It's basically a number which refers to the item category.But we want to show the real category name rather a number.
Then you need to set the name corrected to each number in file like
    _SubCategory={enable=false,type="Enum",format="Cat %s",
                            map={[1]="Buff",
                            [2]="Material",
                            [3]="Special",
                            [4]="Quest",
                            [5]="Book",
                            [6]="Arrow",
                            [7]="CustomSkill",
                            [8]="PawnSkill",
                            [9]="MagicBook",
                            [10]="Online"}
    },


This means If _SubCategory equals to 1,display "Cat Buff".If _SubCategory equals to 2,display "Cat Material" ,and so on