Jump to content

Original/Vanilla BG1(+ToSC) Mod


Recommended Posts

Hi all,

Basically I have been designing a mod for BG1+ToSC which essentially turns the game into a more hardcore version of the original. Much inspiration came from the Heart of Fury Difficulty in Icewind Dale 2 in which it added in more creatures, tougher enemies, enhanced items etc. Other inspirations are from @DavidW Sword Coast Strategems, in which battles are far more tactical and require a bit more thinking before going in gung-ho. I have currently completed a version of the mod which I had play tested with my brother online via Gameranger. However there were some bugs we encountered as we played, some of which I didn't notice myself while playtesting. I had been working on it for a few months before stopping due to personal reasons,. However I do wish to continue to polish it up and add some more new content into the game. I had only modded up until the Final Battle in BG and did not have time to make changes to any of the ToSC areas, although I had a word document saved with all the content which I will put in eventually. At the current moment I have created a number of new equipment and weapons, added in new merchants which sell new and old items, created some new spells and placed in some spells from other Bioware games such as Neverwinter Nights and Icewind Dale. I have also modified all existing creatures in all areas of the game, changing their stat values and also placing new creatures giving them new items. I have also made some changes to the main storyline progression quests and moved several NPC's to different locations which help make some battles a lot more intense and interesting. From inspiration from SCS, I was also able to figure out a way in order to allow spellcasters to pre-cast magic upon becoming in range. Spellcasters are always targeted first and always killed before they pose a major threat to the party, so I had made sure to give them adequate protections in order to at-least keep them a threat a while longer. I wanted to try and make enemy monsters more realistic. An example being the Ankheg. It is literally a huge beast and yet can get taken down by just pummelling it with arrows. Because of this, I have altered the physical resistances of most creatures to reflect their size and power. I have read through @jastey post about BG1 modding, but a lot of it contains information which I did not fully understand lol so apologies in advance for that. There are a couple of questions I do want to ask though. 

Is it possible to create new areas and add them to the world map? I know that you can alter map scripts and such, but I was wondering if it was possible for example to clone an area like Gnoll Stronghold and place a copy of it somewhere else?

Is it possible to get the BAM image files from Icewind Dale or other games and place them into BG1 and get them to work? I do not understand how it works and the only way I could differentiate the new items I added in was to create copies of the original icon and simply change the colours around. An example being could I take the Resurrection spell icon from BG2 or Icewind Dale and place it into BG1.

Is there a easy way to create scripts for the AI or does it simply come down to trial and error? I have noticed while tinkering that some commands(/triggers?) do not actually work. An example of this would be the ability to allow NPC's to use items like healing potions. I had created a script to allow them to see if they have one equipped or in the inventory and if the health value drops below a certain %, they should drink. However that doesn't seem to be the case at all. They simply stand idle and do not resume attacking. The way I had used to circumvent this was to simply create a spell which only NPC's had access to and allowed that to function as a heal of sorts, but it isn't realistic and is just ridiculous. 

Another thing I noticed is that sometimes when an NPC is casting a spell, if you pause the game, for whatever reason the spell they were casting gets interrupted. I don't know if this is a bug or maybe something to do with a script, but it is incredibly frustrating to deal with. 

Thanks again for any help or tips that you can offer.

Link to comment
2 hours ago, Moonboy187 said:

Another thing I noticed is that sometimes when an NPC is casting a spell, if you pause the game, for whatever reason the spell they were casting gets interrupted. I don't know if this is a bug or maybe something to do with a script, but it is incredibly frustrating to deal with.

Back in 2004, when I was first messing with AI for the BG games, I discovered exactly this issue in BG1. So far as I can see it's a hardcoded feature of the engine and can't be worked around. It's the main reason I stopped trying to do AI for BG1 and moved to TUTU.

Link to comment

Most things you asked (scripts, BAMs) I don't know how exactly they work for original BG1. I tried to make my (quest) mods compatible for original BG1 for a long time, but at least since  the EE came out and most players moved on to Tutu/BGT, I am no longer supporting it because its restrictions is really frustrating and tedious to work around.

Link to comment

First of all, let me warn you that modding for old BG1 is a real pain and just not worth the effort.  You're far better off aiming for Tutu/BGT and/or EE.  And this is from someone who stubbornly stuck to BG1 modding for years after Tutu and BGT came out, and stubbornly stuck to BGT for years after EE came out. 🙂

Here's a few more issues with the old engine that I remember struggling with:

- Opcode 98 (HP: Regeneration) ignores timing mode and always uses duration.  This makes creating a Ring of Regeneration for example nearly impossible.

- Targeting dead party members is bugged, this makes Raise Dead spells a real pain to use.

 

9 hours ago, Moonboy187 said:

Is it possible to create new areas and add them to the world map? I know that you can alter map scripts and such, but I was wondering if it was possible for example to clone an area like Gnoll Stronghold and place a copy of it somewhere else?

Yes, but considering how crowded the BG1 map already is, it's very tricky.  You might try this old area editing tutorial: Dragonflight Design DLTCEP Tutorials

9 hours ago, Moonboy187 said:

Is it possible to get the BAM image files from Icewind Dale or other games and place them into BG1 and get them to work? I do not understand how it works and the only way I could differentiate the new items I added in was to create copies of the original icon and simply change the colours around. An example being could I take the Resurrection spell icon from BG2 or Icewind Dale and place it into BG1.

Yes, but it requires a bit of fiddling.  Icons for BG1 must be RLE encoded and must *not* be compressed.  DLTCEP's bam editor can do this, or BAM Batcher can do it in bulk.

9 hours ago, Moonboy187 said:

Is there a easy way to create scripts for the AI or does it simply come down to trial and error? I have noticed while tinkering that some commands(/triggers?) do not actually work. An example of this would be the ability to allow NPC's to use items like healing potions. I had created a script to allow them to see if they have one equipped or in the inventory and if the health value drops below a certain %, they should drink. However that doesn't seem to be the case at all. They simply stand idle and do not resume attacking. The way I had used to circumvent this was to simply create a spell which only NPC's had access to and allowed that to function as a heal of sorts, but it isn't realistic and is just ridiculous.

Creating AI scripts is not easy in the best of circumstances, but as you are already discovering it's nearly impossible to make a script of any complexity on old BG1.  Many triggers and actions don't quite work like they do in BG2, or don't work at all.  And several effects that are essential to making AI mods like SCS tick simply don't exist in the engine at all.

Edited by Angel
Link to comment
On 8/2/2020 at 3:19 AM, DavidW said:

Back in 2004, when I was first messing with AI for the BG games, I discovered exactly this issue in BG1. So far as I can see it's a hardcoded feature of the engine and can't be worked around. It's the main reason I stopped trying to do AI for BG1 and moved to TUTU.

Ah right I see, that sucks quite a bit. At the time of designing the mod I was too was thinking if I should simply just create the same thing but for EE instead as it has a huge number of additional resources to take advantage of. As incredible as it was, I still felt that I preferred the feel , aesthetic and game-play of the original over EE. One of the reasons I'm not a big fan is the inclusion of a lot of BG2 spells and also the kits. I would not have minded so much if only the kits were added - even though it just ridiculous to choose at level 1 and personally for me just ruins the game - but the main thing I really didn't like was the inclusion of BG2 spells. I know that using modding tools you can simply remove them from the spellbooks and drops but that would have taken far too long. 

One thing I wanted to ask you though is that is the scripting of BG1 basic elements similar to BG2 in the sense of attack priority and spell casting?

For example Script A for mages - Target weakest character and use Fireball, once casting is complete use a range weapon to attack while waiting for next round. Determine next target etc. Because BG1 only really has Mirror Image as a sort of defensive spell against physical and sometimes magic attacks, is there a way to tell the wizard to check if he has it on and if does not then reapply it if he has the spell available? I had actually partially created a spell which acts like a high level defence spell which grants a % bonus against all physical attacks in order to try and keep them alive longer and allows them to go through the spells that they have, but because I had given it a small duration - like Prot from Magical Weapons - I wanted to know if it was possible for the script to check what status affects are active and reapply those which aren't.

I couldn't figure out a way to get the spellcasters to attack while waiting for the next round and also I had scripted Mulahey to target the weakest character and use Glyph of Warding on them, but when it came to playtesting, he simply only locked target to that 1 person and chased them without changing target to someone else and I didnt really know how to implement other code to tell him to do something else if said person moves out of range

. I can attach or paste what I coded in on this thread if someone could help point me in a right direction if thats alright?

On 8/2/2020 at 8:02 AM, jastey said:

Most things you asked (scripts, BAMs) I don't know how exactly they work for original BG1. I tried to make my (quest) mods compatible for original BG1 for a long time, but at least since  the EE came out and most players moved on to Tutu/BGT, I am no longer supporting it because its restrictions is really frustrating and tedious to work around.

Yeah I saw the Balduran tower mod which actually looks really interesting. I wanted to see about adding new areas to the game in order to slightly expand on the ToSC quests, particulary his since most of the content isn't difficult or even lengthy. It took me a good while to fish through using Near Inifinty to understand how a lot of the data was stored for spells, items etc because it was really confusing at first. 

 

On 8/2/2020 at 9:25 AM, Angel said:

First of all, let me warn you that modding for old BG1 is a real pain and just not worth the effort.  You're far better off aiming for Tutu/BGT and/or EE.  And this is from someone who stubbornly stuck to BG1 modding for years after Tutu and BGT came out, and stubbornly stuck to BGT for years after EE came out. 🙂

Here's a few more issues with the old engine that I remember struggling with:

- Opcode 98 (HP: Regeneration) ignores timing mode and always uses duration.  This makes creating a Ring of Regeneration for example nearly impossible.

- Targeting dead party members is bugged, this makes Raise Dead spells a real pain to use.

 

Yes, but considering how crowded the BG1 map already is, it's very tricky.  You might try this old area editing tutorial: Dragonflight Design DLTCEP Tutorials

Yes, but it requires a bit of fiddling.  Icons for BG1 must be RLE encoded and must *not* be compressed.  DLTCEP's bam editor can do this, or BAM Batcher can do it in bulk.

Creating AI scripts is not easy in the best of circumstances, but as you are already discovering it's nearly impossible to make a script of any complexity on old BG1.  Many triggers and actions don't quite work like they do in BG2, or don't work at all.  And several effects that are essential to making AI mods like SCS tick simply don't exist in the engine at all.

Your first paragraph made me chuckle. I knew that the other content and options were available too but still I thought I want to stick with the original because its what my brothers and i prefer to playthrough. 

Regeneration was a bit of a pain, but I only used it specific creatures, and even then I tested it on my party first to see how much it actually gives back to not make it too overpowered. I also managed to create the resurrection spell which fully works now. I have not tested it to allow the AI to use, but when I used it on the party members who had died, they were resurrected with full hp and cured of all ailments which I was glad to see. To be fair I have taken some spells from BG2 and put them into BG1 but it is only a few and they are not too overpowered, even though I feel like I can contradicting myself even though I said I didn't like EE because of it lol.

Yeah the map is quite big and packed but I still felt like adding additional quests which take place in other parts of the map, sort of a like a huge battle sort of thing.

The icons were such a pain especially for the weapons because I added in quite a few new of everything but didn't know how to implement the BAM images which just made it terrible to work with so ended up just having to use recoloured sprites from the old ones. 

Scripting is hard, but from what I had done with my current knowledge it did make the game harder, even though pausing sometimes messes up spellcasting which is a pain, it did not happen too often thankfully. I wanted to AI to smartly target the right people and use the right spells in order to make a lot of the battles more interesting. End of chapter battles and Bounty Hunter fights I managed to tweak to make them that much more difficult to beat, but the payoff with the some new equipment did make it worth it.

Edited by Moonboy187
Link to comment
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...