Skip to content

[MOD] Dragonspear UI++ (v2.42)

1252628303150

Comments

  • SourSour Member Posts: 115
    Thanks, that worked great. I'm on a 4K screen so I have to use the UI upscaling and that makes the map scale to the full verticality of the screen. The files you posted earlier are a godsend as well. The character auto select and one click item selection in combination with the modern interface make this UI the most powerful and modern interface both visually and from a game play perspective. Dragonspear UI++ really has gone beyond anything that has ever been made for this game officially or otherwise in my opinion. Thanks Pecca, and everyone else that has contributed.
  • ArjukKagrimArjukKagrim Member Posts: 44
    I found an imcompatibility of DragonspearUI with Might&Guile as well as Olvynspells: When chosing a feat the game immediately crashed to desktop, same when using certain spells like backstab sequencer. Is there an easy way to fix this? Thx in advance :)
  • SourSour Member Posts: 115
    edited April 2020
    Never mind, I figured it out.
    Post edited by Sour on
  • LeiluLeilu Member Posts: 67
    meowdog wrote: »
    Ludwig_II wrote: »
    InKal wrote: »


    I have this strange red markings/dots. Latest DSUI++, SCS R10, bunch of other mods.

    Have you managed to solve this issue? I have the same red markings on both BGEE and BG2EE with latest DSUI++ on Record screen. I will appreciate if anyone has any ideas about it.
    Screenshot is attached.

    u6uicz7dmzka.png

    I had the same issue on my last installation, I identified it comes from STATES.BAM or STATES2.BAM in the override folder.
    I don't know exactly from which module and how it happens. But if you replace them by the ones in attachment, the issue seems to be gone. At least, it works for me.
    Here is a fix that works with the SCS IWD component STATES.BAM file.
    diff --git a/dragonspear_ui++/content-bg2/UI.MENU b/dragonspear_ui++/content-bg2/UI.MENU
    index d3f32b1..7a0b9e9 100644
    --- a/dragonspear_ui++/content-bg2/UI.MENU
    +++ b/dragonspear_ui++/content-bg2/UI.MENU
    @@ -281,43 +281,43 @@ function updateAttrTablex()
     listItems = {}
     
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
    +        table.insert(listItems, { nil, '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
         end
     	for k, v in pairs(characters[currentID].statusEffects) do
     		table.insert(listItems, {v.current, '    ' .. Infinity_FetchString(v.strRef)})
     	end
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '' })
    +        table.insert(listItems, { nil, '' })
         end
    -	table.insert(listItems, { '233', '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    -	table.insert(listItems, { '233', t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
    +	table.insert(listItems, { nil, '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    +	table.insert(listItems, { nil, t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
     	
     	
     	for k, v in ipairs(characters[currentID].proficiencies.class_skills) do
    -		table.insert(listItems, { '233', Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
    +		table.insert(listItems, { nil, Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
     	if characters[currentID].proficiencies.weapons.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.weapons.current })
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.weapons.current })
     	end
     	
     	if characters[currentID].proficiencies.fightingstyles.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.fightingstyles.current})
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.fightingstyles.current})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.savingThrows})
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.resistances})
    -	--table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.savingThrows})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.resistances})
    +	--table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
     	for k, v in ipairs(characters[currentID].proficiencies.ability) do
    -		table.insert(listItems, {'233', v.current})
    +		table.insert(listItems, {nil, v.current})
     	end
     end
     
    @@ -379,43 +379,43 @@ function updateAttrTable()
     
     
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
    +        table.insert(listItems, { nil, '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
         end
     	for k, v in pairs(characters[currentID].statusEffects) do
     		table.insert(listItems, {v.current, '    ' .. Infinity_FetchString(v.strRef)})
     	end
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '' })
    +        table.insert(listItems, { nil, '' })
         end
    -	table.insert(listItems, { '233', '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    -	table.insert(listItems, { '233', t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
    +	table.insert(listItems, { nil, '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    +	table.insert(listItems, { nil, t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
     	
     	
     	for k, v in ipairs(characters[currentID].proficiencies.class_skills) do
    -		table.insert(listItems, { '233', Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
    +		table.insert(listItems, { nil, Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
     	if characters[currentID].proficiencies.weapons.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.weapons.current })
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.weapons.current })
     	end
     	
     	if characters[currentID].proficiencies.fightingstyles.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.fightingstyles.current})
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.fightingstyles.current})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.savingThrows})
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.resistances})
    -	--table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.savingThrows})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.resistances})
    +	--table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
     	for k, v in ipairs(characters[currentID].proficiencies.ability) do
    -		table.insert(listItems, {'233', v.current})
    +		table.insert(listItems, {nil, v.current})
     	end
     
     end
    @@ -1183,9 +1183,13 @@ menu
                 width 100
                 label
                 {
    -                area        0 0 -1 -1
    +                area        0 5 -1 -1
                     bam            'STATES'
                     sequence    lua "listItems[rowNumber][1]"
    +                enabled     "listItems[rowNumber][1] ~= nil"
    +            }
    +			label {
    +				area        0 0 -1 -1
     				text        lua "listItems[rowNumber][2]"
     				text style  'normal'
                     text align    left bottom    
    
    
    Basically replace all '233' with nil and add the new label to the character menu.

    Also status effect icons and names are now better aligned with each other.
    Screenshot:
    uvsmlr8v84ee.png

    Thanks.
    For those who would like to take advantage of this modification, I have uploaded the edited file.
    PS: I included the correction for magic weapons in the autoloot window and the correction for the cropped combat text.
  • LeiluLeilu Member Posts: 67
    meowdog wrote: »
    Ludwig_II wrote: »
    InKal wrote: »


    I have this strange red markings/dots. Latest DSUI++, SCS R10, bunch of other mods.

    Have you managed to solve this issue? I have the same red markings on both BGEE and BG2EE with latest DSUI++ on Record screen. I will appreciate if anyone has any ideas about it.
    Screenshot is attached.

    u6uicz7dmzka.png

    I had the same issue on my last installation, I identified it comes from STATES.BAM or STATES2.BAM in the override folder.
    I don't know exactly from which module and how it happens. But if you replace them by the ones in attachment, the issue seems to be gone. At least, it works for me.
    Here is a fix that works with the SCS IWD component STATES.BAM file.
    diff --git a/dragonspear_ui++/content-bg2/UI.MENU b/dragonspear_ui++/content-bg2/UI.MENU
    index d3f32b1..7a0b9e9 100644
    --- a/dragonspear_ui++/content-bg2/UI.MENU
    +++ b/dragonspear_ui++/content-bg2/UI.MENU
    @@ -281,43 +281,43 @@ function updateAttrTablex()
     listItems = {}
     
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
    +        table.insert(listItems, { nil, '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
         end
     	for k, v in pairs(characters[currentID].statusEffects) do
     		table.insert(listItems, {v.current, '    ' .. Infinity_FetchString(v.strRef)})
     	end
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '' })
    +        table.insert(listItems, { nil, '' })
         end
    -	table.insert(listItems, { '233', '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    -	table.insert(listItems, { '233', t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
    +	table.insert(listItems, { nil, '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    +	table.insert(listItems, { nil, t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
     	
     	
     	for k, v in ipairs(characters[currentID].proficiencies.class_skills) do
    -		table.insert(listItems, { '233', Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
    +		table.insert(listItems, { nil, Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
     	if characters[currentID].proficiencies.weapons.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.weapons.current })
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.weapons.current })
     	end
     	
     	if characters[currentID].proficiencies.fightingstyles.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.fightingstyles.current})
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.fightingstyles.current})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.savingThrows})
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.resistances})
    -	--table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.savingThrows})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.resistances})
    +	--table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
     	for k, v in ipairs(characters[currentID].proficiencies.ability) do
    -		table.insert(listItems, {'233', v.current})
    +		table.insert(listItems, {nil, v.current})
     	end
     end
     
    @@ -379,43 +379,43 @@ function updateAttrTable()
     
     
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
    +        table.insert(listItems, { nil, '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
         end
     	for k, v in pairs(characters[currentID].statusEffects) do
     		table.insert(listItems, {v.current, '    ' .. Infinity_FetchString(v.strRef)})
     	end
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '' })
    +        table.insert(listItems, { nil, '' })
         end
    -	table.insert(listItems, { '233', '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    -	table.insert(listItems, { '233', t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
    +	table.insert(listItems, { nil, '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    +	table.insert(listItems, { nil, t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
     	
     	
     	for k, v in ipairs(characters[currentID].proficiencies.class_skills) do
    -		table.insert(listItems, { '233', Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
    +		table.insert(listItems, { nil, Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
     	if characters[currentID].proficiencies.weapons.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.weapons.current })
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.weapons.current })
     	end
     	
     	if characters[currentID].proficiencies.fightingstyles.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.fightingstyles.current})
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.fightingstyles.current})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.savingThrows})
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.resistances})
    -	--table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.savingThrows})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.resistances})
    +	--table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
     	for k, v in ipairs(characters[currentID].proficiencies.ability) do
    -		table.insert(listItems, {'233', v.current})
    +		table.insert(listItems, {nil, v.current})
     	end
     
     end
    @@ -1183,9 +1183,13 @@ menu
                 width 100
                 label
                 {
    -                area        0 0 -1 -1
    +                area        0 5 -1 -1
                     bam            'STATES'
                     sequence    lua "listItems[rowNumber][1]"
    +                enabled     "listItems[rowNumber][1] ~= nil"
    +            }
    +			label {
    +				area        0 0 -1 -1
     				text        lua "listItems[rowNumber][2]"
     				text style  'normal'
                     text align    left bottom    
    
    
    Basically replace all '233' with nil and add the new label to the character menu.

    Also status effect icons and names are now better aligned with each other.
    Screenshot:
    uvsmlr8v84ee.png

    Thanks.
    For those who would like to take advantage of this modification, I have uploaded the edited file.
    PS: I included the correction for magic weapons in the autoloot window and the correction for the cropped combat text.
    UI.menu
  • LeiluLeilu Member Posts: 67
    meowdog wrote: »
    Ludwig_II wrote: »
    InKal wrote: »


    I have this strange red markings/dots. Latest DSUI++, SCS R10, bunch of other mods.

    Have you managed to solve this issue? I have the same red markings on both BGEE and BG2EE with latest DSUI++ on Record screen. I will appreciate if anyone has any ideas about it.
    Screenshot is attached.

    u6uicz7dmzka.png

    I had the same issue on my last installation, I identified it comes from STATES.BAM or STATES2.BAM in the override folder.
    I don't know exactly from which module and how it happens. But if you replace them by the ones in attachment, the issue seems to be gone. At least, it works for me.
    Here is a fix that works with the SCS IWD component STATES.BAM file.
    diff --git a/dragonspear_ui++/content-bg2/UI.MENU b/dragonspear_ui++/content-bg2/UI.MENU
    index d3f32b1..7a0b9e9 100644
    --- a/dragonspear_ui++/content-bg2/UI.MENU
    +++ b/dragonspear_ui++/content-bg2/UI.MENU
    @@ -281,43 +281,43 @@ function updateAttrTablex()
     listItems = {}
     
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
    +        table.insert(listItems, { nil, '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
         end
     	for k, v in pairs(characters[currentID].statusEffects) do
     		table.insert(listItems, {v.current, '    ' .. Infinity_FetchString(v.strRef)})
     	end
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '' })
    +        table.insert(listItems, { nil, '' })
         end
    -	table.insert(listItems, { '233', '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    -	table.insert(listItems, { '233', t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
    +	table.insert(listItems, { nil, '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    +	table.insert(listItems, { nil, t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
     	
     	
     	for k, v in ipairs(characters[currentID].proficiencies.class_skills) do
    -		table.insert(listItems, { '233', Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
    +		table.insert(listItems, { nil, Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
     	if characters[currentID].proficiencies.weapons.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.weapons.current })
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.weapons.current })
     	end
     	
     	if characters[currentID].proficiencies.fightingstyles.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.fightingstyles.current})
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.fightingstyles.current})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.savingThrows})
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.resistances})
    -	--table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.savingThrows})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.resistances})
    +	--table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
     	for k, v in ipairs(characters[currentID].proficiencies.ability) do
    -		table.insert(listItems, {'233', v.current})
    +		table.insert(listItems, {nil, v.current})
     	end
     end
     
    @@ -379,43 +379,43 @@ function updateAttrTable()
     
     
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
    +        table.insert(listItems, { nil, '^D' .. t('STATUS_EFFECTS_LABEL') .. ':' .. '^B'})
         end
     	for k, v in pairs(characters[currentID].statusEffects) do
     		table.insert(listItems, {v.current, '    ' .. Infinity_FetchString(v.strRef)})
     	end
     	if statusEffects[1] ~= nil then
    -        table.insert(listItems, { '233', '' })
    +        table.insert(listItems, { nil, '' })
         end
    -	table.insert(listItems, { '233', '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    -	table.insert(listItems, { '233', t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
    +	table.insert(listItems, { nil, '^D' .. t('SKILLS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, t('LORE_LABEL') .. ': ' .. characters[currentID].proficiencies.lore.current })
    +	table.insert(listItems, { nil, t('REPUTATION_LABEL') .. ': ' .. characters[currentID].proficiencies.reputation.current })
     	
     	
     	for k, v in ipairs(characters[currentID].proficiencies.class_skills) do
    -		table.insert(listItems, { '233', Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
    +		table.insert(listItems, { nil, Infinity_FetchString(v.strRef) .. ': '.. v.current .. '^-'})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('PROFICIENCIES_LABEL') .. ':' .. '^B'})
     	if characters[currentID].proficiencies.weapons.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.weapons.current })
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.weapons.current })
     	end
     	
     	if characters[currentID].proficiencies.fightingstyles.current ~= "" then
    -		table.insert(listItems, { '233', characters[currentID].proficiencies.fightingstyles.current})
    +		table.insert(listItems, { nil, characters[currentID].proficiencies.fightingstyles.current})
     	end
     	
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.savingThrows})
    -	table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    -	table.insert(listItems, { '233', characters[currentID].proficiencies.resistances})
    -	--table.insert(listItems, { '233', '' })
    -	table.insert(listItems, { '233', '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('SAVING_THROWS_LABEL') .. ':' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.savingThrows})
    +	table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. t('RESISTANCES_LABEL') .. ':' .. '^B' .. '^B'})
    +	table.insert(listItems, { nil, characters[currentID].proficiencies.resistances})
    +	--table.insert(listItems, { nil, '' })
    +	table.insert(listItems, { nil, '^D' .. '\n' .. 'Ability bonuses:' .. '^B'})
     	for k, v in ipairs(characters[currentID].proficiencies.ability) do
    -		table.insert(listItems, {'233', v.current})
    +		table.insert(listItems, {nil, v.current})
     	end
     
     end
    @@ -1183,9 +1183,13 @@ menu
                 width 100
                 label
                 {
    -                area        0 0 -1 -1
    +                area        0 5 -1 -1
                     bam            'STATES'
                     sequence    lua "listItems[rowNumber][1]"
    +                enabled     "listItems[rowNumber][1] ~= nil"
    +            }
    +			label {
    +				area        0 0 -1 -1
     				text        lua "listItems[rowNumber][2]"
     				text style  'normal'
                     text align    left bottom    
    
    
    Basically replace all '233' with nil and add the new label to the character menu.

    Also status effect icons and names are now better aligned with each other.
    Screenshot:
    uvsmlr8v84ee.png

    Thanks.
    For those who would like to take advantage of this modification, I have uploaded the edited file.
    PS: I included the correction for magic weapons in the autoloot window and the correction for the cropped combat text.
    UI.menu
  • HemingbaeHemingbae Member Posts: 19
    edited April 2020
    @Pecca

    I'm having an issue with the journal where some entries don't have the corresponding text (both small and large journal suffer from this), see screenshot below where Dorn and Troubles don't show (also, something feels wrong with how cramped the text in the Dorn thing is).
    kifleewb5m0s.png

    When I click on the pop-up for new journal entry, I'm lead to the notes screen as per this screenshot but there no entry named How Rude :/
    mgao7nxmcncz.png


    Post edited by Hemingbae on
  • websterr33websterr33 Member Posts: 13
    edited April 2020
    Hi Hemingbae, i had the same problem as you can see in the thread here.


    Here are the fixes for it. They are by a person named lefreut, but he was banned or something, so you cant see them on beamdog forums. I tried his mod, but didnt work, only worked when i put the fixes in manually.

    Apparently, the culprit was indeed DragonspearUI, because i didnt have this bug on a clean, no-mod install. These are just journal infos(How Rude), that somehow get written in a as empty quests instead (Dorn Il Khan Blackguard etc).

    I'm curious if others with DragonspearUI experience this bug too.
    Post edited by websterr33 on
  • meowdogmeowdog Member Posts: 71
    websterr33 wrote: »
    Apparently, the culprit was indeed DragonspearUI, because i didnt have this bug on a clean, no-mod install.
    One of those fixes you linked was incorporated in a later patch, you can even find the comment "Many thanks to 'lefreut'" in the no-mod UI.menu file, but it's missing in DragonspearUI, because the mod is based on an older version.
  • mèxmèx Member Posts: 4
    edited May 2020
    Just a bug report: I finally finished ToB, and noticed that the companion epilogues were not displaying for me. It displayed the credits 6 times (the credits of SoD actually, not the ones for SoA/ToB) instead of the epilogues: I had to uninstall the UI mod to see the epilogues.
  • Ryz009Ryz009 Member Posts: 100
    mèx wrote: »
    Just a bug report: I finally finished ToB, and noticed that the companion epilogues were not displaying for me. It displayed the credits 6 times (the credits of SoD actually, not the ones for SoA/ToB) instead of the epilogues: I had to uninstall the UI mod to see the epilogues.

    wait it's the UI doing that? I was pulling my hair out because I thought it was one of my other mods.
  • mèxmèx Member Posts: 4
    Ryz009 wrote: »
    mèx wrote: »
    Just a bug report: I finally finished ToB, and noticed that the companion epilogues were not displaying for me. It displayed the credits 6 times (the credits of SoD actually, not the ones for SoA/ToB) instead of the epilogues: I had to uninstall the UI mod to see the epilogues.

    wait it's the UI doing that? I was pulling my hair out because I thought it was one of my other mods.

    Well, I don't know, but what I did was to click on the Dragonspear UI .exe file and remove its components (without removing the other mods I had installed, which were just fixes and UB anyway). So I suppose it might be the UI mod that makes this happen, but I'm no expert.
  • Ryz009Ryz009 Member Posts: 100
    mèx wrote: »
    Ryz009 wrote: »
    mèx wrote: »
    Just a bug report: I finally finished ToB, and noticed that the companion epilogues were not displaying for me. It displayed the credits 6 times (the credits of SoD actually, not the ones for SoA/ToB) instead of the epilogues: I had to uninstall the UI mod to see the epilogues.

    wait it's the UI doing that? I was pulling my hair out because I thought it was one of my other mods.

    Well, I don't know, but what I did was to click on the Dragonspear UI .exe file and remove its components (without removing the other mods I had installed, which were just fixes and UB anyway). So I suppose it might be the UI mod that makes this happen, but I'm no expert.


    Yeah I double checked and it's definitely the UI for me. Wonder why.
  • prowlerprowler Member Posts: 9
    edited May 2020
    We have transform this mod into Wiedu-format for EET and added russian translation. Waiting other bug fixes. Anyone could be use this version as a base for future update.
    https://1drv.ms/u/s!AkA92b6JxTcfhRpXSNripvhpT1V0?e=htqr5n
    Post edited by prowler on
  • Ryz009Ryz009 Member Posts: 100
    edited May 2020
    Nvm I'm a derp lol.
  • Stoney_MasonStoney_Mason Member Posts: 4
    New to modding Baldur's Gate but had a couple of questions related to this mod.

    So I did an EET install and it seemed to go well and everything works but then I came across this mod and it seemed so cool I wanted to add it after the fact. I noticed the mod author had added files to have it work with EET and I downloaded those and dropped them into my overwrite folder and now it seems to work.

    My question is, is that the proper procedure to add this mod to an existing installation? Everything seems to work but I was just wanted to make sure I was doing things correctly. The only odd thing I noticed was that the difficulty labels and text in the menu had reverted to the default labels and text of the base game. My question was is that okay? Are the SCS difficulty levels still intact and its just a visual issue? Or is there something extra I need to do to make the difficulty settings of SCS work? Thx in advance.
  • PeccaPecca Member Posts: 2,215
    @Stoney_Mason hi, yes you can install the mod for EET that way. You don't need to worry about the labels, it is only visual bug, the mod just uses default labels.
  • Stoney_MasonStoney_Mason Member Posts: 4
    Cool. Thx. I just wanted to say great work on an amazing mod. It's so good, I'm kinda stunned they haven't contacted you guys to try to make it the default version in the game. Keep up the good work.
  • Stoney_MasonStoney_Mason Member Posts: 4
    edited June 2020
    doubled posted for some reason
    Post edited by Stoney_Mason on
  • Stoney_MasonStoney_Mason Member Posts: 4
    websterr33 wrote: »
    Hi Hemingbae, i had the same problem as you can see in the thread here.


    Here are the fixes for it. They are by a person named lefreut, but he was banned or something, so you cant see them on beamdog forums. I tried his mod, but didnt work, only worked when i put the fixes in manually.

    Apparently, the culprit was indeed DragonspearUI, because i didnt have this bug on a clean, no-mod install. These are just journal infos(How Rude), that somehow get written in a as empty quests instead (Dorn Il Khan Blackguard etc).

    I'm curious if others with DragonspearUI experience this bug too.

    Just curious if anyone has a workaround for this issue. I tried making the edits at the link in the ui file but it didn't seem to fix the journal issues in the eet edition (unless I made a mistake there or something)

    Currently I do a workaround where I replace the override folder with a backup copy without the dragonspear ui to check the journal for the missing entries and then swap it back afterwards to play with the new ui but it gets a little tiresome to do that just to check the journal.
  • ZorenolZorenol Member Posts: 2
    edited June 2020
    Hey man first off, FANTASTIC work on this mod, this Ui is sleek, practical and cool as hell.
    However I'm currently experiencing a minor bug and I was wondering if there was any fix?

    When playing as a sorcerer and leveling up, the spell selection menu does not allow me to learn any new spells if I already know some spells on that level.

    For example leveling up from lv. 10 to 11 a sorcerer should learn 1 new spell in each level from 2 to 5.
    The spell selection screen does pop up but it does not allow you to pick any. I've tested this on a fresh EET installation (no extra mods).

    Again, just a minor bug and overall the UI is just amazing. Kudos to you.


  • Ryz009Ryz009 Member Posts: 100
    edited June 2020
    @Zorenol with that bug if you save before leveling up and reload the bugged save it should work. Just get into the habit of saving before you level. Worst case you might have to restart the game and it should work fine. (restart as in restart the game exe not restart you journey lol :P)
  • BarachielBarachiel Member Posts: 82
    edited June 2020
    Decided to give this excellent looking mod a try, and found a rather odd issue during character generation, specifically, the voice select screen.
    erpbbqajxvk4.png

    Also having mild text alignment issues on the "Save Game" screen. And lastly, there's a section of the Records page where the heading is just wing-ding-esque blocks.

    EDIT: I don't know, maybe I installed it wrong? Should I use the latest update off Github from just a couple days ago, or the one posted a few posts up that says its specifically for EET? Do i need to uninstall EET_Gui first or leave it in place?

    I tried using the github installer, and it says it can't find BGEE and quits out. I thought BG2EE support was added a couple updates ago? I'm probably being really dense and missing something obvious.
    Post edited by Barachiel on
  • ZorenolZorenol Member Posts: 2
    Ryz009 wrote: »
    @Zorenol with that bug if you save before leveling up and reload the bugged save it should work. Just get into the habit of saving before you level. Worst case you might have to restart the game and it should work fine. (restart as in restart the game exe not restart you journey lol :P)

    Ahh thank you so very much!!! Reloading didn't do it but restarting the game did! As long as I can remember to save before leveling, it's fine. Thank you :)
  • ToveriJuriToveriJuri Member Posts: 14
    edited July 2020
    meowdog wrote: »
    I'm attaching 2 zip files containing UI.menu files for all three versions (SoD, BG2, EET) with the following fixes:
    • Put the interface on top of the mage spellbook (source)
    • Fix cropped text in the combat log (source)
    • Fix quickloot highlight for magical items (source)
    • SoD save game UI for BG2 — GUISRRQB.PNG (source)
    • Save position of enhanced dialog between restarts (issue)
    • Fix info for dual classes in the Record screen (issue)
    • Compatibility with SCS IWD spells component (issue)
    • Fix animation misalignment for unmemorized spells (issue)
    • Restore "take all" button in containers (issue)
    • Add an option to continue conversations on space key (issue)
      You need to change the Baldur.lua file manually, add the following line to it:
      SetPrivateProfileString('Game Options','Disable Space Key In Conversations','0')
    The second zip file also contains inventory changes, no need to click twice anymore, but when you hover an inventory slot you also select the character it belongs to. Switching characters with hotkeys now puts an overlay over currently hovered inventory slots, preventing from clicking on them, since it would actually click on a corresponding slot of the newly selected character.

    I don't have EET installed, so I didn't test it, but I only changed the code common with BG2, so it should work.

    Have to thank you for these. These fixes pretty much stopped me from switching back to regular UI.
    Post edited by ToveriJuri on
  • Rik_KirtaniyaRik_Kirtaniya Member Posts: 1,742
    Wanted to try this mod (since it looks absolutely beautiful) on my BG2EE SCS install, but apparently, it reverts the difficulty settings text in the options and in the new game start menu. I don't know if this is just a visual difference or changes something functionally (and whether the positions on the slider will actually correspond to the right SCS variants.) Not sure if this has been reported before, but there you go.

    29i4affq1sf9.png

    Looking forward to see the updated version of this mod after 2.6 comes out. It looks absolutely gorgeous! :smiley:
  • DasEndraDasEndra Member Posts: 1
    My game crashes everytime I try to access the spells one can buy at a temple. Is this a known issue? Any fix available?

    I'm playing the Enhanced Edition of BG1 with SCS, unfinished buisness and bg1npc. I'm also playing in German, but had the same problem, when switching to english language.
  • SamWARSamWAR Member Posts: 4
    Hello there, first of all, thanks for the amazing mod. I finished both BG1 (and SoD) and BG2 separated using it and it worked perfectly.
    I've decided to go for a EET run now however, and run into a minor bug. It's only cosmetic but I really don't know to fix it.

    5e2p1uv7ey2y.png
    ngkohr6hxzgn.png

    If anyone has any idea on what to do, it would be great. But if not, may it helps as a bug report. Thank you again.
  • The user and all related content has been deleted.
Sign In or Register to comment.