Jump to content

NPC Generator: NPC creation made easy!


Recommended Posts

NPC Generator

Download from GitHub

Readme


Introduction

This mod allows you to install any number of pregenerated or exported characters as regular NPCs. They can be met at predetermined locations where you have the chance to invite them into your party or have them tag along without occupying party slots at any time in the game. Kicked out NPCs can be instructed to wait or return to the original meeting place.

Note: The mod isn't registered in the WeiDU.log and can therefore be called at any time and as often as you like to install or remove NPCs to or from the game.

The mod supports the following games and game variants:

  • Original BG2
  • Tutu/EasyTutu
  • BGT
  • BG:EE
  • SoD
  • BG2:EE
  • EET
  • IWD:EE

It is currently available in English, German and Russian.


Components

1. Add custom NPCs to the game (for BG2, Tutu, BGT, BG:EE, SoD, BG2:EE, EET and IWD:EE)

With this component it is possible to install any number of individual characters or all available characters at once.

They can be met at predetermined locations based on the game campaign:

Spoiler

BG1
- The Friendly Arms Inn - First floor

SoD
NPCs can be met at different locations since the campaign prevents you from returning to some of them at one point or another. Characters will move automatically to any of the locations at first visit.
- Elfsong Tavern (Baldur's Gate) - First and second floor
- Coast Way Crossing - Flaming Fist Encampment
- Troll Claw Woods - Flaming Fist Encampment
- Coalition Camp - Spread over southeastern parts of the camp

BG2:SoA
- Copper Coronet in the Slums of Athkatla

BG2:ToB
NPCs can be met at different locations since the campaign prevents you from returning to some of them at one point or another. Characters will move automatically to any of the locations at first visit.
- Saradush Tavern (Tankard Tree)
- Amkethran Inn (The Zephir)

IWD:EE
NPCs can be met at different locations since the campaign prevents you from returning to some of them at one point or another. Characters will move automatically to any of the locations at first visit.
- Winter's Cradle Tavern and Snowdrift Inn (both Easthaven)
- Root Cellar Tavern and Evening Shade Inn (both Kuldahar)
- The Whistling Gallows - first and second floor, in Lonelywood (HoW campaign only)
Note: Since the Winter's Cradle Tavern in Easthaven is used as the starting area NPCs will gather at this place only after the party leaves the tavern to avoid interference with the opening cutscene.

This component provides two installation modes:

Manual NPC installation
A character selection menu allows you to select one or more characters for installation. The mod scans the "characters" folder for exported character files and/or characters in the game resources (depending on selected option) and lists available characters with a short summary of gender, class/kit and level.

Automated NPC installation
This mode is controlled by the file "settings.tpa" which can be found in the mod's base folder. Installation requires no manual input and is therefore the best choice for mod managers or scripted mod installations.
 

2. Enable/Disable alignment checks for custom NPCs (not available for IWD:EE)

By default installed NPCs won't always join or follow the party right away. If their goals don't align with the party's they might ask for a fee or outright refuse to join.

With this component it is possible to toggle this check on or off. When disabled then every installed NPC will automatically join or follow your party when asked. NPCs in IWD:EE will always join or follow your party when asked.

The requirements for NPCs are as follows:

Spoiler

Good-aligned NPCs:
- Join for free if reputation is between 9 and 12 and the protagonist's charisma is 14 or higher.
- Join for free if reputation is 13 or higher.
Neutral NPCs:
- Join for free if reputation is between 5 and 16 and the protagonist's charisma is 14 or higher.
- Join for 250 gold if reputation is between 5 and 16 and the protagonist's charisma is 13 or lower.
- Join for 250 gold if reputation is 17 or higher and the protagonist's charisma is 14 or higher.
- Join for 500 gold if reputation is 4 or lower and the protagonist's charisma is 14 or higher.
Evil NPCs:
- Join for free if reputation is 8 or lower and the protagonist's charisma is 14 or higher.
- Join for 250 gold if reputation is 8 or lower and the protagonist's charisma is 13 or lower.
- Join for 250 gold if reputation is between 9 and 12 and the protagonist's charisma is 14 or higher.
- Join for 500 gold if reputation is between 9 and 12 and the protagonist's charisma is 13 or lower.
- Join for 1000 gold if reputation is between 13 and 16 and the protagonist's charisma is 14 or higher.


3. Remove custom NPCs from the game

This component allows you to remove installed characters from the game. You can choose whether to uninstall selected characters individually or all installed characters at once.

 

Edited by argent77
Link to post

Brilliant idea and brilliant mod! And I even think that one of those beautiful tiefling chicks ( Amber ? ) allows you to  romance second protagonist. Thumbs up! :thumbsup:

Link to post

@argent77
Wow!  Alleluia!

To confirm...

-Does this turn player-generated characters (PCs) into extra party members that sorta hover around outside the party?

-Can these "orbital" characters join the party if there's room?

-How do orbital characters level and change gear?

-Can we do this with existing NPCs, like turning Edwin into an orbital character?

Thankee!

Link to post
10 hours ago, Endarire said:

-Does this turn player-generated characters (PCs) into extra party members that sorta hover around outside the party?

Correct. They will gather at designated meeting places where you can either let them join as regular party members or hire them as followers.

 

Quote

-Can these "orbital" characters join the party if there's room?

Yes, their dialogs provide options to freely switch their roles between party members and followers.

 

Quote

-How do orbital characters level and change gear?

You can't access their gear while they're just tagging along. But it's easy to make them temporary party members (provided you have a free party slot available). As followers they also don't gain experience. This is one issue I'm trying to solve eventually.

 

Quote

-Can we do this with existing NPCs, like turning Edwin into an orbital character?

That wouldn't be advisable. Game NPCs or dedicated NPCs installed by other mods usually have scripted events, dialogs, quests, etc. which might not work correctly if they are not regular party members.

Link to post

Congratulations to the release!

So they can follow as 7th party member as well as join as full party member?

Now I need to study your code to see how you realized this, I am sure your way is more elegant than what I came up with for (some of) my NPC mods.

Link to post
15 hours ago, Greenhorn said:

Brilliant idea and brilliant mod! And I even think that one of those beautiful tiefling chicks ( Amber ? ) allows you to  romance second protagonist. Thumbs up! :thumbsup:

I fear for the purposes of the Amber mod they wouldn't be recognised as eligible, though, seeing as the second PC romance only kicks in in a MP game.

Edited by Isewein
Link to post
1 hour ago, jastey said:

Congratulations to the release!

So they can follow as 7th party member as well as join as full party member?

Now I need to study your code to see how you realized this, I am sure your way is more elegant than what I came up with for (some of) my NPC mods.

Thank you!

The switch is probably not realized as elegantly as you think. The switch itself happens in the dialog. Dialog resref (and also scripts in the next version) is fixed in the character script after a switch is detected.

Link to post
1 hour ago, Isewein said:

I fear for the purposes of the Amber mod they wouldn't be recognised as eligible, though, seeing as the second PC romance only kicks in in a MP game.

Ah, I stand corrected then, thank you. 

Link to post

I suggest letting tagalong NPC gather experience little by little while they are out of the party. "Use repeating EFF." 1 point for every 2 seconds doesn't seem too much, considering that they won't share in kills and quest rewards. This will help keep them on the level somewhat. The XP trickle would need to be dispelled in the join-party dialogue and applied again in the tag-along dialogue.

Link to post
Just now, temnix said:

I suggest letting tagalong NPC gather experience little by little while they are out of the party. "Use repeating EFF." 1 point for every 2 seconds doesn't seem too much, considering that they won't share in kills and quest rewards. This will help keep them on the level somewhat. The XP trickle would need to be dispelled in the join-party dialogue and applied again in the tag-along dialogue.

I have already solved it in another way. A new version will be up shortly.

Link to post

Update: NPC Generator 1.1

NPCs tagging along as followers may now gain experience from killing creatures. Only creatures killed by the NPCs themselves are counted and the amount of XP is approximated differently depending on the game engine. For original BG2 and game variants it's a fixed amount based on the current NPC level. For EE games it's about one quarter of the killed creature XP to simulate shared party experience.

Moreover, this version fixes invalid data in the installed character files, such as non-existing kits, spells, items and effects which may originate from a different mod installation.

Full changelog:
- NPC followers gain experience from killing creatures.
- Automatically fixing invalid character data (kits, spells, items, etc.) when NPCs are installed.
- Fixed typos in readme.

 

Link to post
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...