Request Modfile for Android BGEE
basic item changes to make multi play through s less annoying.




















A Simple XP cap remover. Now compatible with Siege of Dragonspear!
Updated post with information about the new file added by Siege of Dragonspear. Thanks to @Avenger_teambg for pointing out the new file :)
Just download the file attached to this post. And now that I've given the download links, let's have some instructions and a word of warning. XP Cap in BG:EE is controlled by three files: XPCAP.2DA STARTARE.2DA STARTBP.2DA Siege of Dragonspear added a new file to the mix: SODSTRTA.2DA Actually this had me scratching my head when I tried to make a simple XPCap remover as modifying XPCAP.2DA has always been enough. In BG:EE's case changing just the XPCAP.2DA did not remove the cap, so I went on looking for the cause. STARTARE.2DA and STARTBP.2DA control the starting conditions of the main quest and Black Pits, respectively, controlling among other things your starting position, starting XP and XP Cap for that campaign, proving that the new EE engine is able to deal with multiple campaigns with their own individual limits. The release of SoD made it clear there was something new as modifying the original 3 files from the EE didn't remove the cap in the expansion. Thanks to a post by @Avenger_teambg pointing out wich file it was, it was quite seimply to remove the cap there as well. The game has all the tables up to level 40 BUT there are no HLAs (High Level Abilities) present. That means that if somehow you reach a level where you'd normally get an HLA you have to hit ENTER on the character screen to skip that. If you want to change the XP Cap to any other fixed value all you have to do is edit the 2DA files and change the -1 into whatever value you want. Actually you can also change the starting XP in the main quest and Black Pits as well. Just change START_XP from 0 to the value you want in both STARTARE.2DA and STARBP.2DA. To remove or change the cap in SoD you need to edit SODSTRTA.2DA. Notice you'll need a text editor to change the file such as Editpad Lite. The game will not recognize the 2DA files if they're converted to Rich Text Files or Word Documents. So you must be asking yourself how to make it work. It's very simple. Just copy the four files into your override folder. If you don't have one, create one in the same place the movies and scripts folders are located (usually bgee installation path/data/00766), In my computer, for instance, it would be placed in C:\Games\Baldur's Gate Enhanced Edition\Data\00766 If you are a Steam user, the default override folder path would look something like this: C:\Program Files (x86)\Steam\steamapps\common\Baldur's Gate Enhanced Edition\overrideExp Cap Remover - iPad (via WeiDu?)
[MOD] Smooth Selling v1.3
- [Store UI] Single-clicking a stack of items in the Sell pane selects the whole stack (this includes selling items from bags)
- [Item Bag UI] Single-clicking a stack of items (in either pane) selects the whole stack
- [Choose Amount UI] The default split stack item amount is set to 1 consistently
- [Choose Amount UI] Pressing Enter closes the window and selects the specified amount
- [Choose Amount UI] Closing the window with Escape or Cancel deselects the item
action
"
local cnt = tonumber(itemRequestAmt)
Infinity_PopMenu()
if(cnt and cnt > 0 and cnt <= requester.requesterMax) then
requester.requesterFunc(cnt)
end
"</code>
Insert before the above code segment:
on return
2. Find this code segment:
action
"
if store.storeItems[storeItemsVar].clickable == 1 then
if not storeScreen:IsCloseBagButtonClickable() or store.storeItems[storeItemsVar].valid == 1 then
local highlight = true
if(store.storeItems[storeItemsVar].highlight == 1) then highlight = false end
storeScreen:SelectStoreItem( storeItemsVar - 1, highlight)
end
end
"
actionalt
"
showItemDescription(store.storeItems[storeItemsVar].item, 1)
"
actionDbl
"
if store.storeItems[storeItemsVar].clickable == 1 then
if not storeScreen:IsCloseBagButtonClickable() or store.storeItems[storeItemsVar].valid == 1 then
local maxCount = store.storeItems[storeItemsVar].maxCount
if(maxCount > 1) then
popupRequester(maxCount, storeSplitStack, false)
end
end
end
"
Replace the above code segment with:
action
"
if store.storeItems[storeItemsVar].clickable == 1 then
if not storeScreen:IsContainer() then
if not storeScreen:IsCloseBagButtonClickable() or store.storeItems[storeItemsVar].valid == 1 then
local highlight = true
if(store.storeItems[storeItemsVar].highlight == 1) then highlight = false end
storeScreen:SelectStoreItem(storeItemsVar - 1, highlight)
end
elseif (store.storeItems[storeItemsVar].highlight == 1) then
storeScreen:SelectStoreItem(storeItemsVar - 1, false)
else
storeScreen:SelectStoreItem(storeItemsVar - 1, true)
local count = store.storeItems[storeItemsVar].item.count
local stock = store.storeItems[storeItemsVar].numInStock
if (count > 1) then
storeScreen:SetStoreItemCount(storeItemsVar - 1, count)
elseif (stock > 1) then
storeScreen:SetStoreItemCount(storeItemsVar - 1, stock)
end
end
end
"
actionalt
"
showItemDescription(store.storeItems[storeItemsVar].item, 1)
"
actionDbl
"
if store.storeItems[storeItemsVar].clickable == 1 then
if not storeScreen:IsCloseBagButtonClickable() or store.storeItems[storeItemsVar].valid == 1 then
local maxCount = store.storeItems[storeItemsVar].maxCount
if(maxCount > 1) then
popupRequester(maxCount, storeSplitStack, false)
storeScreen:SelectStoreItem(storeItemsVar - 1, false)
end
end
end
"
3. Find this code segment:
action
"
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
local selected = true
if(store.groupItems[storeGroupItemsVar].highlight == 1) then selected = false end
storeScreen:SelectGroupItem( storeGroupItemsVar - 1, selected)
end
"
actionalt
"
showItemDescription(store.groupItems[storeGroupItemsVar].item, 1)
"
actionDbl
"
if(store.groupItems[storeGroupItemsVar].item.isBag == 1) then
showItemDescription(store.groupItems[storeGroupItemsVar].item, 1)
itemDescLeftButtonAction()
else
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
local count = store.groupItems[storeGroupItemsVar].item.count
local stock = store.groupItems[storeGroupItemsVar].numInStock
if(count > 1) then
popupRequester(count, groupSplitStack, true)
elseif stock > 1 then
popupRequester(stock, groupSplitStack, true)
end
end
end
"
Replace the above code segment with:
action
"
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
if (store.groupItems[storeGroupItemsVar].highlight == 1) then
storeScreen:SelectGroupItem(storeGroupItemsVar - 1, false)
else
storeScreen:SelectGroupItem(storeGroupItemsVar - 1, true)
local count = store.groupItems[storeGroupItemsVar].item.count
local stock = store.groupItems[storeGroupItemsVar].numInStock
if (count > 1) then
storeScreen:SetGroupItemCount(storeGroupItemsVar - 1, count)
elseif (stock > 1) then
storeScreen:SetGroupItemCount(storeGroupItemsVar - 1, stock)
end
end
end
"
actionalt
"
showItemDescription(store.groupItems[storeGroupItemsVar].item, 1)
"
actionDbl
"
if(store.groupItems[storeGroupItemsVar].item.isBag == 1) then
showItemDescription(store.groupItems[storeGroupItemsVar].item, 1)
itemDescLeftButtonAction()
else
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
local count = store.groupItems[storeGroupItemsVar].item.count
local stock = store.groupItems[storeGroupItemsVar].numInStock
if(count > 1) then
popupRequester(count, groupSplitStack, false)
elseif stock > 1 then
popupRequester(stock, groupSplitStack, false)
end
storeScreen:SelectGroupItem(storeGroupItemsVar - 1, false)
end
end
"
4. Find this code segment:
action
"
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
local selected = true
if(store.groupItems[storeGroupItemsVar].highlight == 1) then selected = false end
storeScreen:SelectGroupItem( storeGroupItemsVar - 1, selected)
end
"
actionalt
"
showItemDescription(store.groupItems[storeGroupItemsVar].item, 1)
"
actionDbl
"
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
local count = store.groupItems[storeGroupItemsVar].item.count
local stock = store.groupItems[storeGroupItemsVar].numInStock
if(count > 1) then
popupRequester(count, groupSplitStack, true)
elseif stock > 1 then
popupRequester(stock, groupSplitStack, true)
end
end
"
Replace the above code segment with:
action
"
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
if (store.groupItems[storeGroupItemsVar].highlight == 1) then
storeScreen:SelectGroupItem(storeGroupItemsVar - 1, false)
else
storeScreen:SelectGroupItem(storeGroupItemsVar - 1, true)
local count = store.groupItems[storeGroupItemsVar].item.count
local stock = store.groupItems[storeGroupItemsVar].numInStock
if (count > 1) then
storeScreen:SetGroupItemCount(storeGroupItemsVar - 1, count)
elseif (stock > 1) then
storeScreen:SetGroupItemCount(storeGroupItemsVar - 1, stock)
end
end
end
"
actionalt
"
showItemDescription(store.groupItems[storeGroupItemsVar].item, 1)
"
actionDbl
"
if store.groupItems[storeGroupItemsVar].valid ~= 0 then
local count = store.groupItems[storeGroupItemsVar].item.count
local stock = store.groupItems[storeGroupItemsVar].numInStock
if(count > 1) then
popupRequester(count, groupSplitStack, false)
elseif stock > 1 then
popupRequester(stock, groupSplitStack, false)
end
storeScreen:SelectGroupItem(storeGroupItemsVar - 1, false)
end
"
And... you're done. Enjoy!Question: Can I make a button that stays silent when the player clicks it?
[MOD] Better Quick Loot v1.7

- Turned the quick loot bar into a compact, easy-to-navigate panel
- Can be opened and closed via a hotkey (default: E)
- When the quick loot panel is opened, it appears right next to the mouse cursor so you can start looting immediately
- Added encumbrance indicator
- New page indicator shows the current page number as well as the page total
- Previous/next page buttons only become highlighted when appropriate, they're otherwise greyed out
- Scrolling the mouse wheel over the quick loot panel scrolls between the item pages
-- BEGIN BETTER QUICK LOOT INIT 1.7
button
{
area 21 12 32 32
bam ROUNDBUT
scaleToClip
toggle groundItemsButtonToggle
tooltip "Quick Loot"
action
"
if(groundItemsButtonToggle == 1) then
worldScreen:StartGroundItems()
setQuickLootPosition(true)
else
worldScreen:StopGroundItems()
end
"
actionAlt
"
if(groundItemsButtonToggle == 1) then
worldScreen:StartGroundItems()
setQuickLootPosition(true)
else
worldScreen:StopGroundItems()
end
"
}
button
{
area 21 12 0 0
on e
toggle groundItemsButtonToggle
action
"
Infinity_PlaySound('GAM_09')
if(groundItemsButtonToggle == 1) then
worldScreen:StartGroundItems()
setQuickLootPosition()
else
worldScreen:StopGroundItems()
end
"
}
-- END BETTER QUICK LOOT INIT
-- BEGIN BETTER QUICK LOOT MAIN 1.7
menu
{
name 'WORLD_QUICKLOOT'
align center center
ignoreEsc
onClose
"
mouseOverQuicklootContainer = nil
"
label
{
area 0 0 422 132
rectangle 0
actionScroll "scrollQuickLootItems()"
}
label
{
area 341 16 68 100
encumbrance
actionScroll "scrollQuickLootItems()"
}
label
{
area 330 53 37 27
mosaic A0BQAR
opacity 220
actionScroll "scrollQuickLootItems()"
}
label
{
area 273 54 65 24
text lua "getQuickLootPageText()"
text style "label"
align center center
actionScroll "scrollQuickLootItems()"
}
label
{
area 283 8 45 48
bam A0BQSV10
sequence 0
frame 1
opacity 180
actionScroll "scrollQuickLootItems()"
}
label
{
area 283 76 45 48
bam A0BQSV10
sequence 1
frame 1
opacity 180
actionScroll "scrollQuickLootItems()"
}
button
{
area 283 8 45 48
bam A0BQSV10
sequence 0
enabled "worldScreen:GroundScrollEnabled(-1)"
action
"
worldScreen:OnGroundScroll(-1)
"
actionScroll "scrollQuickLootItems()"
}
button
{
area 283 76 45 48
bam A0BQSV10
sequence 1
enabled "worldScreen:GroundScrollEnabled(1)"
action
"
worldScreen:OnGroundScroll(1)
"
actionScroll "scrollQuickLootItems()"
}
button
{
area 13 13 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(0,'name')"
tint lua "getGroundItemProperty(0,'tint')"
icon lua "getGroundItemProperty(0,'icon')"
count lua "getGroundItemProperty(0,'count')"
usages lua "getGroundItemProperty(0,'usages')"
action "groundItemClick(0)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(0,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 67 13 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(1,'name')"
tint lua "getGroundItemProperty(1,'tint')"
icon lua "getGroundItemProperty(1,'icon')"
count lua "getGroundItemProperty(1,'count')"
usages lua "getGroundItemProperty(1,'usages')"
action "groundItemClick(1)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(1,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 121 13 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(2,'name')"
tint lua "getGroundItemProperty(2,'tint')"
icon lua "getGroundItemProperty(2,'icon')"
count lua "getGroundItemProperty(2,'count')"
usages lua "getGroundItemProperty(2,'usages')"
action "groundItemClick(2)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(2,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 175 13 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(3,'name')"
tint lua "getGroundItemProperty(3,'tint')"
icon lua "getGroundItemProperty(3,'icon')"
count lua "getGroundItemProperty(3,'count')"
usages lua "getGroundItemProperty(3,'usages')"
action "groundItemClick(3)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(3,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 229 13 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(4,'name')"
tint lua "getGroundItemProperty(4,'tint')"
icon lua "getGroundItemProperty(4,'icon')"
count lua "getGroundItemProperty(4,'count')"
usages lua "getGroundItemProperty(4,'usages')"
action "groundItemClick(4)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(4,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 13 67 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(5,'name')"
tint lua "getGroundItemProperty(5,'tint')"
icon lua "getGroundItemProperty(5,'icon')"
count lua "getGroundItemProperty(5,'count')"
usages lua "getGroundItemProperty(5,'usages')"
action "groundItemClick(5)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(5,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 67 67 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(6,'name')"
tint lua "getGroundItemProperty(6,'tint')"
icon lua "getGroundItemProperty(6,'icon')"
count lua "getGroundItemProperty(6,'count')"
usages lua "getGroundItemProperty(6,'usages')"
action "groundItemClick(6)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(6,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 121 67 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(7,'name')"
tint lua "getGroundItemProperty(7,'tint')"
icon lua "getGroundItemProperty(7,'icon')"
count lua "getGroundItemProperty(7,'count')"
usages lua "getGroundItemProperty(7,'usages')"
action "groundItemClick(7)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(7,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 175 67 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(8,'name')"
tint lua "getGroundItemProperty(8,'tint')"
icon lua "getGroundItemProperty(8,'icon')"
count lua "getGroundItemProperty(8,'count')"
usages lua "getGroundItemProperty(8,'usages')"
action "groundItemClick(8)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(8,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
button
{
area 229 67 52 52
bam STONSLOT
tooltip lua "getGroundItemProperty(9,'name')"
tint lua "getGroundItemProperty(9,'tint')"
icon lua "getGroundItemProperty(9,'icon')"
count lua "getGroundItemProperty(9,'count')"
usages lua "getGroundItemProperty(9,'usages')"
action "groundItemClick(9)"
actionEnter "mouseOverQuicklootContainer = getSlotContainerId(9,'containerId')"
actionExit "mouseOverQuicklootContainer = nil"
actionScroll "scrollQuickLootItems()"
}
}
`
function setQuickLootPosition(buttonPress)
local x,y = Infinity_GetMousePosition()
if (buttonPress) then
x = x - 39
else
x = x + 26
end
y = y - 66
local screenWidth,screenHeight = Infinity_GetScreenSize()
if (x < (-screenWidth+422)/2 + 10) then
x = (-screenWidth+422)/2 + 10
else
if (x > (screenWidth+422)/2 - 432) then
x = (screenWidth+422)/2 - 432
end
end
if (y < (-screenHeight+132)/2 + 10) then
y = (-screenHeight+132)/2 + 10
else
if (y > (screenHeight+132)/2 - 182) then
y = (screenHeight+132)/2 - 182
end
end
Infinity_SetOffset('WORLD_QUICKLOOT',x,y)
local i = 0
while (worldScreen:GroundScrollEnabled(i-1)) do
i = i - 1
end
worldScreen:OnGroundScroll(i)
end
function scrollQuickLootItems()
if scrollDirection > 0 then
if worldScreen:GroundScrollEnabled(-1) then
worldScreen:OnGroundScroll(-1)
end
elseif scrollDirection < 0 then
if worldScreen:GroundScrollEnabled(1) then
worldScreen:OnGroundScroll(1)
end
end
end
function getQuickLootPageText()
local prev = 0
while (worldScreen:GroundScrollEnabled(-prev-1)) do
prev = prev + 1
end
local next = 0
while (worldScreen:GroundScrollEnabled(next+1)) do
next = next + 1
end
return (prev+1) .. "/" .. (prev+next+1)
end
`
-- END BETTER QUICK LOOT MAIN
Infinity_SetOffset('WORLD_QUICKLOOT',0, -toolbarTop)
Customization:
- You can edit the line "on e" to change the quick loot hotkey.
- If you're using a language other than English, you can edit the line tooltip "Quick Loot" with the appropriate translation for the quick loot button's tooltip.
[MOD] EEUITweaks Mod Collection - All EE (v2.2+) Platforms
EEUITweaks User Interface Mods Collection Version 2.6
The goal of EEUITweaks is to be a collection of the individual UI.MENU (i.e. Extended Edition 2.x+) mods/patches/tweaks from the BeamDog UI Modding forum; packaged as a single WeiDU collection. The advantages are to automate the tedious manual editing of UI.MENU, simplify multiple mod installations (particularly after an update), and to provide a single source from which many EE GUI mods can be accessed. It does NOT install the full UI replacement environments, although it does support modding them.
EEUITweaks supports BGEE, BG2EE, BGEE/SoD, PST:EE, and EET with the BG2(default) and SoD (EET_gui) user interfaces. It also supports installing mods on the Dragonspear UI++, BG2EE GUI To BGEE, LeUI, Revised Dragon Scale, IWD GUI for BG2:EE and BG:EE, and IWD2 for BG2 replacement UIs. In all cases, it will skip attempting to install useless or invalid mods for a particular environment (e.g. transparent sidebars on Dragonspear UI++).
EEUITweaks-master.zip contains the usual WeiDU setup-EEUITweaks.exe installation program and EEUITweaks mod files directory and should present no problem for those who are familiar with using WeiDU. For those who are not so familiar, there is a file named 'Installation.txt' within the zip's EEUITweaks directory that contains step-by-step instructions. For EET installations, EEUITweaks mods should be installed after Finalize EET (setup-EET_end component 1) and after any optional 'full UI.MENU' GUI packages.
If you've previously installed any of the mods supported by EEUITweaks using a stand-alone WeiDU setup, Please use the same stand-alone setup to un-install the mod prior to installing it with EEUITweaks. EEUITweaks will not be able to un-install it. Similarly, if you've manually installed a mod contained in EEUITweaks, I'd recommend manually un-installing it prior to re-installing via EEUITweaks.
Something that may not be familiar (unless you've used @CamDawg's excellent 'The Tweaks Anthology' package), is that EEUITweaks makes use of mod 'Groups'. This mechanism defines a relatively small number of categories, and associates each mod in EEUITweaks with the most relevant category. When you start EEUITweaks, it will ask you select the categories of interest. This makes it easier to install only a subset of the full collection - saves wearing out the 'N' key :smile:. Details of the groups (and the currently included mods) is in the message below.
I would like to thank all of the folks who have developed the mods/tweaks that appear in this collection. Without their efforts - it wouldn't be much of a collection. I'd particularly like to thank @lefreut whose suggestion in another Discussion provided encouragement to move this project from the "One of these days I need to..." phase to actual development.
Enjoy!
[v1.9.35] Shadow Magic
SHADOW MAGIC
- Link to mod page at my site: https://artisans-corner.com/shadow-magic/
- Note: this mod is only compatible with versions 2.0+ of BG:EE, BG2:EE and IWD:EE.
Component 1: SHADOW MAGIC MAIN COMPONENT
The Shadow Adept is a mage kit with a completely unique spell selection with 100+ new spells to choose from. A lot of them are copies of existing spells but there are quite a few relatively unique ones in there. A list of spells with descriptions can be viewed here.STAT BONUS TABLES

OPTIONAL: ALTERNATE SPELL COSTS
This required subcomponent allows the installer to choose the resource cost that Shadow Weave magic uses. The options are:- Drain Constitution (cost = spell level, lasts 3 rounds)
- Current Hit Points (cost = spell level*2)
- Maximum Hit Points (cost = spell level*2, lasts 6 rounds, current hit points do not recover)
- No cost
SORCERER KIT: SHADOW DISCIPLE
The main component also adds the Shadow Disciple kit, the sorcerer variant of the shadow adept with the same abilities.BARD KIT: NIGHTSINGER
The main component also adds the Nightsinger kit, a bard that uses shadow magic.ITEM PACK
The main component also adds several items that are exclusive to the shadow adept. Some can be found in BG1+SoD and all can be found in BG2. Some items require the shadow adept to have a secondary class in addition to the kit itself. Bear in mind that the quest component is required for a few of the items to show up in-game in BG:EE.FAMILIARS
The shadow adept has the ability to summon a familiar at 6th level. The shadow adept's familiar has a few differences in strength and function compared to a mage's familiar but mostly imitates vanilla familiar behavior. Familiars and their abilities may be viewed here.Component 2: SHADOW MONK
Component 3: QUESTS & ENCOUNTERS
Kryn Darkflame is a Shadovar mage of Thultanthar, the Shade Enclave. He is in the grounds of the Friendly Arm Inn and serves as a merchant of magical wares including many Shadow Adept-exclusive items. Finding and dealing with his missing apprentices will net the player a sizable reward. Spoilers on items and their locations can be found here.[mod] Valygar Friendship
Text Errors for Companion Mods


Question about ARP Mod (Almateria's Restoration Project Component - Final Slayer Dream)
The New UI System: How to Use It
What you'll need:
• A good text editor (I recommend Sublime Text) • A keyboard with working F5 and F11 keys • A desire to create stunning UI layouts It also doesn't hurt to familiarize yourself with the Lua programming language, but it's not absolutely necessary. (If you want to know more about the Lua programming language, I highly recommend this guide as a one-stop shop for everything you'd want to know. Google is your friend.) It's very important to save and back up your work often. There may be occasional hiccups that can corrupt your UI.menu, which can ruin hours of hard work if you're not careful.Guide Index
1. UI Edit Mode and the F11 key 2. Changing Game Fonts 3. An Introduction to UI.menu 4. UI Sample: Classic-Style Character Sheet 5. Using PNGs Instead of MOS Files 6. Using Lua in UI.menu In each section, I’ll start with the basics, and then provide a short tutorial on how to do something specific. If after reading through the entire guide you have questions about how to do something, please don’t hesitate to ask. I’ll do my best to answer your questions, or to find the answers out from our programmers.Pet peeves and small adjustments to your game (tiny mod included)
NearInfinity creating weapon with life drain
Baldur's Gate Arms and Armour Emporium





EE Keeper, Updated to v1.0.4
FAQ Quick Links
- Where do I start?
- I want to load custom kits, Shadow Keeper\EE Keeper won't let me do it. How can I load custom kits?
- EE Keeper won't automatically detect my Baldur's Gate: Enhanced Edition installation directory - what can I do?
- Will this work with the Steam version?
- EE Keeper says it can't load effects, what's wrong?
- I changed the installation directory settings to a different location but EE Keeper is/is not reloading resources, what's it doing?
- Keeper isn't finding my save games. What's wrong?
- I have a question about the INI config file—what are the valid settings?
- I have a serious bug and want to share/report it!
Download
Modification Disclaimer
EE Keeper is a save game editor. It can also be used as a character and creature editor. It's not a mod itself, but it can be used to make modifications. If asked by a member of the Beamdog team in reply to a bug report, "are you using any mods?" please be aware that this counts as a mod, as it is used to modify something outside of the game. Most modifications achievable via EE Keeper are harmless, this is just an advisory notice. |
Compatibility
Credits
@AHF | Testing |
@Anton | Testing |
@argent77 | Testing, feedback. |
@AstroBryGuy | Maintainer of the Mac Wineskin version. |
@CrevsDaak | Testing |
@Davide | Testing, Italian Translation |
@Dee | Testing |
@egbert | Testing |
@Erg | Testing |
@ermo | Testing |
@Heas | Testing |
@Isaya | Testing, French Translation |
@Kunikos | Testing |
@mattinm | Work on the Qt version so as to natively support other platforms. |
@Mikaal | Testing |
@mlnevese | Testing |
@Nifft | Testing |
@Pibaro | Testing, Italian Translation |
@silver_gp | Chinese Translation |
@swnmcmlxi | Testing |
@Teflon | Korean Translation |
@Tresset | Testing |