Larian Banner: Baldur's Gate Patch 9
Previous Thread
Next Thread
Print Thread
Joined: Aug 2014
old hand
OP Offline
old hand
Joined: Aug 2014
Lots of feedback here on various issues and limitations I've run into from making my bard mod. Probably some of the things below are possible but I haven't figured out, so ignore those issues if I'm just being ignorant. Already posted some of this feedback in the modding thread in general forums, but most of the stuff here is new. Hope this stuff is helpful. Will add to this as I run into new things.

SCRIPTING

CharacterApplyStatusToCharacter would be an extremely useful scripting command (or just add an optional source character to CharacterApplyStatus). So many things are clunky or impossible without this simple command.

Should be able to how long a character has a status (e.g., CharacterHasStatus(_Char,_Status,_Turns) FetchCharacterApplyStatusData or something I saw looks like it might have that information, but that appears to be a trigger, not entirely sure how it works.

Strange that there's no "DamageCharacter" command. CharacterHeal can take a negative command, but it's a negative blue number and no damage type. Also would be nice if this damage number could use an integer, not just a float. Yes I know statuses can apply damage, but it's not really possible to dynamically generate different damage amounts with statuses barring making a few dozen statuses with slight variations you can reference.

Similarly, "OnDamage," seems to produce no value for the _Damage amount when the damage is dealt to armor, so I assume it's only measuring damage to vitality. Would be nice if armor damage counted, or preferabbly if there was an OnDamageArmor trigger.

We need a way to dynamically generated strings to display as strings, rather than always having to reference pre-written localizations. For example, I want to display something like "X character resisted Y status, with Z chance, based on factors, A + B - C" in the combat text. Localizations should be able to take variables from character scripts like they can from status data for skills. This might also entail a need to append different fixed strings or reference other localizations within an existing localization. This is definitely a big request, but would be very helpful for a number of situations and dynamically generating content.

Char/ItemScript files should be able to have a sort of a "reverse USING" feature, where scripts could have something like "USED BY DefaultCharacter," which would make the DefaultCharacter script reference this script. The benefit of this would be more modularity, where someone could add or delete a new script file without needing to open up DefaultCharacter and add or remove the USING line.

Still hoping to be able to add custom talents, new abilities, new attributes, etc. Adding a "CharacterHasTalentPoint" check would be nice for charscripts as a workaround for adding new talents (already exists for story scripting I think). Would also be cool if statuses could give talents temporarily.


LOOT

It would be great if weapons or armor could receive tags through the random loot generater. These tags could be referenced through character/item scripting to give weapons and armor all sorts of new custom effects. This is possible with uniques when defined within the root template itself, so random loot should have the same option. Or make things in the "Flags" entry for an item get picked up there. Basically, I want someway to be able to reference a specific trait of randomly generated gear for custom effects.

I can't seem to change item weight with a random item modifier. In fact, I think it might have crashed my game. Just a little thing but could be interesting. This would be another way to reference items for custom effects, though it's rather inelegant.

For whatever reason, the last patch seemed to break on-hit chance effects for random magic items. I'm pretty sure these on hit effects still function, but there's no text or anything to indicate the effects (still appear on uniques though.) Additionally, I was very sad that text in the ExtraProperties stat doesn't display on the item any more. This is very useful for explaining how something on a randomly generated items works. Some kind of "Description" parameter for random items would be amazing. Important that these descriptions can stack together, like if you get two different modifiers that have descriptions, both descriptions appear. Basically exactly the extra properties text displayed in D:OS EE.


SKILLS & STATS

General feedback on the stat files: while I can create new stat files and make additions (new skills, weapons, character stats, etc.), I cannot seem to modify an existing stat entry (e.g., modifying fireball) by making a new stat file that contains only that stat entry. I have to copy the entire stat file (e.g., skilldata.txt) to my mod and make changes to that file. I believe this is the case for every file type. Further, some stat entries have to be in the main file type (e.g., delta modifiers always seem to have to be in deltamodifiers.txt.) This is a major barrier to mod compatibility and just keeping modding organized.

The data.txt file has lots of nice things, but a bunch of things don't work. Hopefully this file can be purged of everything non-functional by release so it's not a trial and error thing.

Can't seem to change the starting talents for races. Can delete them, but can't replace them with new talents or add new ones. Would also be cool to give races the ability to give extra attributes, ability points, talent points, etc. Also all the character race stats seem to reference the human male character stat entry, even though the root templates seem to say they reference the other race stat entries.

Push/Pull abilities can't seem to do anything but push or pull (no damage or status application or anything). I also can't seem to pull a character except all the way to caster (-1).

Not sure if this is already possible, but I tested the ResetCooldowns thing for Skin Graft and tried to make it skilltree specific and it didn't work. That'd be nice. A skill specific cooldown reset would be awesome too.

I can't seem to find some statuses in the statusdata.txt, like Charmed and Shackles of Pain and Decaying Touch. Would be nice to able to modify those like everything else.

There needs to be some way to remove or limit height bonuses on certain skills. I'm trying to make a teleport skill with touch range and 6m teleport range, but you can gain like 10m more even for the 3m initial grab, and another 10m on the teleport range.

Some way to reference new ability types in the character creation would be nice. I can't add bard skills to character creation since they use leadership is the base ability.

A "Stack" priority for skills would be awesome. E.g., an "Empowered" skill received from an item could overwrite an existing known skill. Say, empowered fireball on a staff upgrades your fireball skill instead of granting you a second fireball skill. You'd have regular fireball again if you unequipped that staff. A clunkier solution would be to have to be able to tie cooldowns of different skills together, though that might have its own advantages.



Joined: Aug 2014
old hand
OP Offline
old hand
Joined: Aug 2014
This is a huge request, and I hardly expect this to make it into the release version. But a system where status effects and the "potion" effects that status effects reference could take a variable which could reference any character stat or anything or even be calculated from multiple factors would open up so many new possibilities and make tons of things much more convenient.

Let's say Favourable Wind could take the equation:

"MovementSpeedBoost" "CasterIntelligence * 2 + CasterAerothurge"

Or say the heal value of Steel Skin in the Status Data could reference polymorph:

"HealValue" "20 + Polymorph * 2"

In this case 1 polymoroph would be 22% armor recovery per turn, and 10 polymorph would be 40% armor recovery per turn.

This kind of stuff is already possible through scripting and referencing a large array of premade status effects, but that gets ultra clunky very quickly. Even more freedom could be afforded by placing a global value in the effect, like:

"MovementSpeedBoost" "%CasterSpeedBoost, StatusSource, Base"

Which would then reference this variable from the script of the source of the status within their "Base" script.

I really hope you consider a post-release mod-centric update smile

Joined: Aug 2014
M
member
Offline
member
M
Joined: Aug 2014

Joined: Aug 2014
old hand
OP Offline
old hand
Joined: Aug 2014
Heh, of course I was :P Didn't quite work with my schedule though smirk Hopefully this feedback makes up for that.


Moderated by  Larian_KVN 

Link Copied to Clipboard
Powered by UBB.threads™ PHP Forum Software 7.7.5