Skip to content

[MOD] Planetouched Races

rapsam2003rapsam2003 Member Posts: 1,636
edited December 2019 in General Modding
Mod no longer supported.


Spawned from the discussion here: https://forums.beamdog.com/discussion/49575/bringing-tieflings-adding-other-planetouched-races-later-to-bg1-2-iwd1-wip/p1

This mod adds Planetouched Races to BGEE and SoD. Currently, Tieflings and Aasimars are implemented. It is intended that Air Genasi, Earth Genasi, Fire Genasi, and Water Genasi will also be added. All races are based on the Planeswalker Handbook Planeswalker Handbook, 2nd Edition rules, and balanced for BGEE/SoD.
To play as a Tiefling or Aasimar, select elf and then complete character creation as an elf. The Genasi subraces will probably branch off of Human.

Tieflings
Carrying the taint of evil in their forms — and perhaps their very souls — tieflings are often persecuted and feared throughout the planes. The distant descendants of humans and evil outsiders, tieflings are regarded as twisted, devious, and untrustworthy. More often than not, this opinion is accurate.
Tieflings have the following traits:
  • +1 Intelligence, +1 Charisma, -1 Strength, -1 Wisdom; +1 Constitution, -1 Dexterity*;
  • Infravision;
  • 10% Resistance to Cold, Electricity, & Fire;
  • +2 saves vs. Death/Poison & Wands;
  • +2 Melee weapon damage Bonus**;
  • and +5% Find Traps, +10% Move Silently, +10% Hide in Shadows, & +5% Set Traps.
*Because the game treats Tieflings as renamed Elves, and Elves have +1DEX/-1CON, adjustments are made to bring them back to the human baseline before adjusting their other stats.
**This is meant to help out Tiefling fighters. Because Tiefling fighters will never have greater than 17 Strength (this is Canon in the Planeswalker Handbook), a +2 to melee weapon damage will balance things out.

Aasimars
Carrying the blood of a celestial, an aasimar is usually good-aligned and fights against evil in the world. Some aasimars have a minor physical trait suggesting their heritage, such as silver hair, golden eyes, or an unnaturally intense stare.
Aasimars have the following traits:
  • +1 Strength, -2 Constitution, & +1 Wisdom;
  • Infravision;
  • +2 saves vs. Spells;
  • 10% Resistance to Magic;
  • and +10% Find Traps, +5% Move Silently, +10% Hide in Shadows, & +5% Set Traps.


Air Genasi
coming soon

Earth Genasi
coming soon

Fire Genasi
coming soon

Water Genasi
coming soon

The attached file is to be considered an alpha, as only 2/6 of the new races are added. This mod currently works with BGEE and SoD.
It is NOT recommended to use this mod with BG2EE or IWDEE. One person already temporarily broke their IWDEE install.

Thank you for choosing to use Planetouched Races!

Change Log:

0.1:
Original version

0.2:
Fixed issue where choosing the "Aasimar Origin" ability didn't remove the "Tiefling Origin".

0.3:
Reworked the spells so that there are no new spell.ids entries required.
Post edited by rapsam2003 on
«13

Comments

  • moody_magemoody_mage Member Posts: 2,054
    What class options are available for these two races? The same as Elves?
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    decado said:

    What class options are available for these two races? The same as Elves?

    Yes. Class options are hardcoded, so there's no way to change that. If you wish to expand class options for Elves, I believe Might & Guile allows that.
  • [Deleted User][Deleted User] Posts: 0
    edited April 2016
    The user and all related content has been deleted.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    Might & Guile does in a targeted way. (I think.) Tweaks Anthology does in a very comprehensive way.

    Constructive criticism: I don't recall ever seeing that aasimar get magic resistance.

    From the Planewalker's Handbook (see page 71):
    Though in some ways the aasimar are light of build and even somewhat frail, their celestial heritage protects them from half of the damage normally delivered from heat and cold attacks. Additionally, they gain a +2 bonus to saving throws versus any sort of magical charm, fear, emotion, or domination effect. All nonwizard aasimar have 10% magic resistance on top of all that.
    So, as you can see, I chose somewhat less of a bonus than I could have. Imagine +50% Resistance to Cold and Fire on top of what I chose. Also, rather than differentiate between wizard and non-wizard Aasimar, I chose a flat bonus of 10% Magic Resistance.
    Post edited by rapsam2003 on
  • The user and all related content has been deleted.
  • elminsterelminster Member, Developer Posts: 16,317
    edited April 2016
    I assume rapsam2003 meant the planeswalker's handbook. Its a 2E accessory book for planescape.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    elminster said:

    I assume rapsam2003 meant the planeswalker's handbook. Its a 2E accessory book for planescape.

    I did. Apologies.

    There is a link for it in the original post, so folks may peruse the main source I'm using.
  • ThelsThels Member Posts: 1,422
    Are Aasimar also based on elves, ie, do they also inherit the +1 dex/-1 con penalty on top of their own modifiers? If not, then Aasimar looks like a really strong race for non-warriors. Having constitution reduced to 16 is a non-issue, and having strength upped to 19 completely bypasses the "only warriors can have exceptional strength" trait.
  • [Deleted User][Deleted User] Posts: 0
    edited April 2016
    The user and all related content has been deleted.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    Thels said:

    Are Aasimar also based on elves, ie, do they also inherit the +1 dex/-1 con penalty on top of their own modifiers? If not, then Aasimar looks like a really strong race for non-warriors. Having constitution reduced to 16 is a non-issue

    Kind of. On the character creation screen, the adjustments are made (behind the scenes, as with normal elves). But no further adjustments are made when the script fires. So, the maximum constitution value for Aasimars is 16.
    Thels said:

    and having strength upped to 19 completely bypasses the "only warriors can have exceptional strength" trait.

    Of course, there's also the issue that the +1 bonus to to STR was originally mean to shift it from 18 to 18/01.

    This "you go right to 19!" thing is complete nonsense - for half-orcs as well.

    I think there's an opcode for going from 18 to 18/01. Iirc, it's opcode #97 (Stat: Strength-Bonus Modifier). I've not tested that yet, but I may switch over to that for Aasimar. If I understand correctly, opcode #97 will add +1 strength if CHARNAME's strength is less than 18. But if it's at 18 or greater, it makes it 18/01. I will investigate tonight. Currently, both tiefling and aasimar use opcode #44 (Stat: Strength Modifier). Here's the info for opcode #97:
    #97 (0x97) Stat: Strength-Bonus Modifier [97]
    Parameter #1: Statistic Modifier
    Parameter #2: Type
    Description:
    Applies the modifier value specified by the 'Statistic Modifier' field in the style specified by the 'Type' field.
    Known values for 'Type' are:
    0 Cumulative Modifier -> Bonus = Bonus + 'Statistic Modifier' value
    1 Flat Value Modifier -> Bonus = 'Statistic Modifier' value
    2 Percentage Modifier -> Bonus = (Bonus * 'Statistic Modifier' value) / 100
    Like I said, I will test this tonight. If it doesn't work, then we're all going to have to deal with the idea that Aasimars can have a maximum strength of 19, which makes Aasimar Paladins OP... :/
    Post edited by rapsam2003 on
  • Abdel_AdrianAbdel_Adrian Member Posts: 430
    @rapsam2003 This is great, I'm so glad to see that you got an alpha published. I installed it and plan on testing it out later, but right now I'm just curious why you chose the race IDS that you did.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    @rapsam2003 This is great, I'm so glad to see that you got an alpha published. I installed it and plan on testing it out later, but right now I'm just curious why you chose the race IDS that you did.

    No particular reason. They were just values that were never set or defined. /shrug

    I kind of figured (although I admit I never tested it) that race id 255 was the "max value"; that it was hard coded.

    Is there a conflict with something? I mean, if there's a conflict with something you did, I can change things.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430

    @rapsam2003 This is great, I'm so glad to see that you got an alpha published. I installed it and plan on testing it out later, but right now I'm just curious why you chose the race IDS that you did.

    No particular reason. They were just values that were never set or defined. /shrug

    I kind of figured (although I admit I never tested it) that race id 255 was the "max value"; that it was hard coded.

    Is there a conflict with something? I mean, if there's a conflict with something you did, I can change things.
    No, I was just curious. I'm just interested in seeing how we did things differently and arrived at a very similar endpoint. Overall I think you did a great job and I see nothing wrong with it, from a cursory glance.
    I thought the same thing with races ending at 255.
  • rapsam2003rapsam2003 Member Posts: 1,636
    Huh, great minds think alike?...lol
  • rapsam2003rapsam2003 Member Posts: 1,636
    So, I'm growing to hate how BG handles "overwhelming strength", because it kind of screws with Aasimar gaining +1 Strength.

    Using opcode 44 vs opcode 97...it seems that the only way to make this work is to account for Aasimar possibly having 19 Strength, which is OP. The problem is, what could balance this without unbalancing it when Aasimar have 18 or less Strength? Any suggestions?
  • rapsam2003rapsam2003 Member Posts: 1,636
    Uploaded v0.2 -- Fixed issue where choosing the "Aasimar Origin" ability didn't remove the "Tiefling Origin".
  • Swifty_MageeSwifty_Magee Member Posts: 229
    I don't know if I should be posting this as I'm not sure if Icewind Dale: Enhanced Edition is supported yet, but I get a bug during character creation. After installing Planetouched, the option to choose the Half-Orc race is replaced with the text "There is nothing more I can tell you. Farewell". On the right-hand side, there is no race description.

    After choosing the selection, when you get back to the Character Generation page, the description for the race is "I am Xactile, priestess of Sekolah and custodian of the Field of Bones. How may I serve you?"

    Again, this could just be that the mod is in alpha and may not be compatible with IWDEE yet, but I just wanted to report this just in case.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430
    I know that the race.ids file is different for IWDEE, but this mod still doesn't overwrite any existing race as far as that file. The racetext.2da is also different though, including vampire as the 8th race and tiefling as the 9th, despite not being selectable.
  • Swifty_MageeSwifty_Magee Member Posts: 229
    @Abdel_Adrian , Well, the Planetouched mod installs fine...I do get a "Installed with Warnings" for the component "Races: Tieflings, Aasimars". Here are the messages I get when trying to install the "Races: Tieflings, Aasimars" component:

    Installing [Races: Tieflings, Aasimars]
    Copying and patching 1 file...
    Copying and patching 1 file...
    Copying and patching 1 file...
    Copying and patching 1 file...
    Copying and patching 1 file...
    Extending game scripts...
    WARNING: EXTEND Planetouched/BAF/racespell.baf with strings from setup.tra
    WARNING: @50 taken from setup.tra.

    [Planetouched/BAF/racespell.baf] PARSE ERROR at line 15 column 1-42 Near Text: )
    [SpellCastInnate] argument [TIEFLING_ORIGIN] not found in [Spell.IDS]

    [Planetouched/BAF/racespell.baf] PARSE ERROR at line 18 column 1-31 Near Text: )
    [RemoveSpell] argument [AASIMAR_ORIGIN] not found in [Spell.IDS]
    WARNING: @103 taken from setup.tra.

    [Planetouched/BAF/racespell.baf] PARSE ERROR at line 28 column 1-41 Near Text: )
    [SpellCastInnate] argument [ASSIMAR_ORIGIN] not found in [Spell.IDS]

    [Planetouched/BAF/racespell.baf] PARSE ERROR at line 31 column 1-32 Near Text: )
    [RemoveSpell] argument [TIEFLING_ORIGIN] not found in [Spell.IDS]
    WARNING: @109 taken from setup.tra.

    Installing [Planetouched (Finish)]
    Extending game scripts...
    WARNING: EXTEND Planetouched/BAF/end.baf with strings from setup.tra


    I have no idea if any of that is the reason why I'm getting the weirdness during character creation. Like I said, I'm not even sure this mod is compatible yet with IWDEE as the first post only says "This mod adds Planetouched Races to BGEE and SoD." I just wanted to post this issue in case the mod should work with IWDEE and all this is an unknown bug.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430
    @Swifty_Magee Yeah the issues with tiefling at the very least are due to the racetext.2da's being different, but that's an easy enough fix with an ACTION_IF GAME_IS kind of change.
    As for IWDEE spell.ids, this mod is absolutely not compatible yet. It currently tries to overwrite existing spell ids at 3161-3164. Also an easy fix with the same method as the other issue.
  • The user and all related content has been deleted.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430
    edited April 2016

    It currently tries to overwrite existing spell ids at 3161-3164.

    What? Why??
    Because those spell ids are already being used in IWD. It's either overwriting those spell ids, or failing to install that part due to the existence of those spell ids.

  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    I don't know if I should be posting this as I'm not sure if Icewind Dale: Enhanced Edition is supported yet, but I get a bug during character creation. After installing Planetouched, the option to choose the Half-Orc race is replaced with the text "There is nothing more I can tell you. Farewell". On the right-hand side, there is no race description.

    After choosing the selection, when you get back to the Character Generation page, the description for the race is "I am Xactile, priestess of Sekolah and custodian of the Field of Bones. How may I serve you?"

    Again, this could just be that the mod is in alpha and may not be compatible with IWDEE yet, but I just wanted to report this just in case.

    The mod is NOT supported for IWDEE yet. Also, it sounds like you screwed up your IWDEE dialog.tlk file. As I said in the first post:

    This mod currently works with BGEE and SoD. It is NOT tested with BG2EE or IWDEE, so use in those games at your own risk.

    I will be noting that the mod does NOT work with IWDEE, based on your findings. The warnings are generated because the spell.ids file for IWDEE is not the same as the spell.ids file for BGEE or SoD. (The race.ids are also not the same, as @Abdel_Adrian stated; although that didn't cause your issue.) Since the mod was trying to overwrite existing spell.ids entries, WeiDU likely could not correctly write the spell-related dialog.tlk entries.

    I apologize for what happened, but I did warn folks.
  • The user and all related content has been deleted.
  • Swifty_MageeSwifty_Magee Member Posts: 229
    edited April 2016
    @rapsam2003 , No apologies necessary. Since it said IWDEE wasn't supported in your first post, I figured that was the case. I took a shot at installing it though, since this sounds like such an awesome mod!

    Anyway, it's not that big of a deal as I was working on a clean install and nothing happened a quick uninstall of the mod couldn't fix. I do, however, look forward to when the Planetouched is IWDEE compatible.
  • rapsam2003rapsam2003 Member Posts: 1,636

    No, I mean,

    It currently tries to overwrite existing spell ids at 3161-3164.

    What? Why??
    Because those spell ids are already being used in IWD. It's either overwriting those spell ids, or failing to install that part due to the existence of those spell ids.
    No, I mean, why is this mod overwriting those spells?
    Because, in BGEE & SoD, those spells DO NOT EXIST. Those spell ids were specifically chosen because they did not exist prior to this mod. The way spell.ids and the .spl files interact is the reason here.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430
    @rapsam2003 At least it seems like a pretty easy change if/when you want to make compatibility for BG2EE and IWDEE, just a few ACTION_IF GAME_IS lines and your custom races can see the spine of the world.

    @subtledoctor I didn't mean overwriting the spell, I meant the spell ID in spell.ids. Furthermore, I'm not sure if it does overwrite the spell ID, or if it simply fails to add the new spell ID due to the old one.
  • rapsam2003rapsam2003 Member Posts: 1,636

    @rapsam2003 , No apologies necessary. Since it said IWDEE wasn't supported in your first post, I figured that was the case. I took a shot at installing it though, since this sounds like such an awesome mod!

    Anyway, it's not that big of a deal as I was working on a clean install and nothing happened a quick uninstall of the mod couldn't fix. I do, however, look forward to when the Planetouched is IWDEE compatible.

    Once the mod is completed for BGEE & SoD, I will work on a version for IWDEE. I appreciate the compliment, btw. :)

  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    @rapsam2003 At least it seems like a pretty easy change if/when you want to make compatibility for BG2EE and IWDEE, just a few ACTION_IF GAME_IS lines and your custom races can see the spine of the world.

    Yeah, shouldn't be too hard. Only thing is...well, I'll cover that in a sec...

    @subtledoctor I didn't mean overwriting the spell, I meant the spell ID in spell.ids. Furthermore, I'm not sure if it does overwrite the spell ID, or if it simply fails to add the new spell ID due to the old one.

    I'll cover what I alluded to earlier. I researched it and found out that spell.ids and .spl files have an interesting interaction. Let's take the pre-existing file SPIN199.spl. This is obviously an innate spell. The number 1 denotes that this SHOULD be a level 1 spell. The number 99 is the number for this level 1 spell. To declare SPIN199.spl in the spell.ids (note it's already declared in BGEE's spell.ids file by default), the type of spell (innate) means you use "3", then the spell level comes next as "1", and finally "99". So, in the spell.ids, the format is:
    3199 *insert spell name here*
    See here: http://gemrb.org/iesdp/files/ids/bg2/spell.htm

    By declaring my new spells ("Tiefling Origin", "Aasimar Origin", etc.) in the spell.ids, I can use them in scripts and allow there to be some if-then logic. Without if-then logic, my mod isn't really...functional.


    In short, while it wouldn't be a ton of work to get the mod working for IWDEE, I would need to use find a range of ids in the IWDEE spell.ids file that is not already declared. Then, it's a simple matter to duplicate the spells specifically for IWDEE, in order to tell the mod to use the IWDEE range instead of the BGEE range by using the WeiDU logical statement "ACTION_IF GAME_IS ~iwdee~". It's not a lot of work, I think.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430
    @rapsam2003 Yes, that's all correct. I personally try to not touch the ids files for that very reason, but it's not much more work seeing how much you have done right now.
Sign In or Register to comment.