Skip to content

[MOD] Planetouched Races

2

Comments

  • rapsam2003rapsam2003 Member Posts: 1,636

    @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.

    Indeed. 90% of the work is already done.
  • [Deleted User][Deleted User] Posts: 0
    edited April 2016
    The user and all related content has been deleted.
  • rapsam2003rapsam2003 Member Posts: 1,636
    Hmm, was not aware of that. Appreciate it.
  • kjeronkjeron Member Posts: 2,367

    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.

    Why not just use the "RES" versions of the script trigger/actions and not worry about adding them to spell.ids?
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    kjeron said:

    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.

    Why not just use the "RES" versions of the script trigger/actions and not worry about adding them to spell.ids?
    I could, but that's not as "clean". I prefer to add spells to the spell.ids, since that's the functionality the game expects. It allows me more room to do what I want.
  • The user and all related content has been deleted.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    You make a good point. Although, I'm not sure if it will work in the way that I want without adding it to the spell.ids table. In the script, I use the command "AddSpecialAbility", like so:
    AddSpecialAbility(TIEFLING_ORIGIN)

    The IESDP entry for this action is:
    279 AddSpecialAbility(S:ResRef*)
    This action adds the specified spell to the active creature. The message has gained a special ability: "Ability" is displayed in the message log.

    So, is there a way to do the same kind of thing via WeiDU maybe?
  • [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

    I'm not knowledgeable about scripts - I use Weidu and .spl/.eff files to do this sort of thing.

    Could you just use AddSpellRES, or whatever that script action is, instead of AddSpecialAbility? I don't think you need to specific this as an innate ability in your script; as long as the .spl is coded as Type:(4) and Location: Innate Abilities then it should appear in the right place, regardless of how you add it.

    I will try this tonight. It should still work if you're right, and then I wouldn't need any entries in spell.ids.

    Alternatively, it would complicate things a bit, but you could make a .spl that uses opcode 171 to grant your origins ability, and in your script use ForceSpellRES or something to *cast* that spell on the player.

    A valid option, but as the player will have the option to choose 1 of many origin spells...not how I'd prefer to do this.

    If you want to remove scripts from the equation, you could simply add your origins ability via GA_ in every CLAB file in the game. (This is how I do things.) This would work fine, it would simply make load order important - in this case the mod should be installed after all kit mods and NPC mods (i.e. after all CLAB files have been created).

    I'd like to avoid doing this. lol. I prefer the control that a script gives, as it allows me to specify certain if-then conditions.



    If it all works as I expect it should, then I will probably update things by adding v0.3 tonight.
  • Clumsy_DwarfClumsy_Dwarf Member Posts: 112
    IIRC

    There is a reference to the protagonist's mother being raped by Bhaal. This would make playing an Aasimar a real RP adventure.


    Might be something for my next full play through.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    IIRC

    There is a reference to the protagonist's mother being raped by Bhaal. This would make playing an Aasimar a real RP adventure.


    Might be something for my next full play through.
    Yup. That's why this mod even "works" from a RP perspective. Bhaal raped women of many different mortal races.

    From http://forgottenrealms.wikia.com/wiki/Bhaalspawn :
    It is said that Bhaal foresaw his death during the Time of Troubles and came to Toril before the climactic event, mating with females of almost any species, not all of them humanoid
  • Abdel_AdrianAbdel_Adrian Member Posts: 430
    @rapsam2003 Hey, just thought I'd let you and the fans of your mod know that I just posted v1.1 of my Eldritch Magic mod and included tieflings as an option. My "tiefling" is still just an elf with custom string references, unless the player chooses the Abyssal Warrior kit. Our mods should be compatible, the only thing is that the string references will be that of whichever mod is installed last. I also tried to make mine IWD compatible, but there seems to be some additional hurdles with that game.
  • The user and all related content has been deleted.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    @rapsam2003 Hey, just thought I'd let you and the fans of your mod know that I just posted v1.1 of my Eldritch Magic mod and included tieflings as an option. My "tiefling" is still just an elf with custom string references, unless the player chooses the Abyssal Warrior kit. Our mods should be compatible, the only thing is that the string references will be that of whichever mod is installed last. I also tried to make mine IWD compatible, but there seems to be some additional hurdles with that game.

    Awesome, great to know. :)

    Out of curiosity, are you guys changing strings via STRING_SET or SET_2DA_ENTRY? I've started to change my kids over to using the latter - it can make inter-game compatibility much easier.

    I am using SET_2DA_ENTRY. STRING_SET seemed too...iffy. lol With SET_2DA_ENTRY, I don't have to worry about whether the entry already exists in the dialog.tlk or if some other mod is already using that strref.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430

    Out of curiosity, are you guys changing strings via STRING_SET or SET_2DA_ENTRY? I've started to change my kids over to using the latter - it can make inter-game compatibility much easier.

    I used SET_2DA_ENTRY for racetext.
    Only time I used STRING_SET at all, and I would really love an alternative, is for my Bladesinger getting up to grand mastery in single-weapon style.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    .

    Post edited by rapsam2003 on
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    Ah. Actually it's rather easy once you get the hang of it. Look up ADD_SPELL (for adding spells to the game that you want available in SPELL.IDS)

    IWDEE rudely has no open space available in SPELL.IDS at 1st level for SPIN spells. Easiest workaround is to make your spell a SPCL spell instead.

    ADD_SPELL ~mod/folder/spell.spl~ 4 1 INNATE_NEW_SPELL
    Now, that will automatically add your spell to the next open slot in SPELL.IDS. But, that slot differs in each game. So how can you do anything with your spell? RES_NUM_OF_SPELL_NAME
    LAF RES_NUM_OF_SPELL_NAME STR_VAR spell_name = ~INNATE_NEW_SPELL~ RET spell_res END
    COPY_EXISTING ~%spell_res%.spl~ ~override~
    yadda yadda patch whatever
    BUT_ONLY
    So now you have the new spell's IDS name for inclusion in scripts (because you defined it in the ADD_SPELL command) and you have the spell's filename for use in Weidu (in the form of a variable). And the code works across all games, and nothing has been overwritten.
    How would I then set the spell_res to a string value? The action AddSpecialAbility requires a string for the spell_res.
    AddSpecialAbility(S:ResRef*)
    The value that goes as a parameter for AddSpecialAbility is literally the spell file name without the .spl. So, SPCL107.spl would be put into this action like so:
    AddSpecialAbility("SPCL107")

    Since the file name will now differ in each game, how would I grab that variable for use in my Script?
  • The user and all related content has been deleted.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    Yeah, that seems a lot cleaner. I was a bit confused as to why you were mentioning that stuff. And then I tried it, and I was like, "Uh...it isn't going to work". I will double check, but I'm fairly certain I won't need to add spells to the spell.ids table at all.
  • The user and all related content has been deleted.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016
    Nah, no worries. I'm just thinking I can use the "spellRES" version of all the commands I need, since I won't vary the file name by install. Thanks!

    Sidenote: Doing it this way should make the mod compatible with IWDEE or BG2EE. Will need to verify that.
    Post edited by rapsam2003 on
  • rapsam2003rapsam2003 Member Posts: 1,636
    v0.3 uploaded -- Reworked the spells so that there are no new spell.ids entries required.
  • The user and all related content has been deleted.
  • GrammarsaladGrammarsalad Member Posts: 2,582
    edited April 2016

    You make a good point. Although, I'm not sure if it will work in the way that I want without adding it to the spell.ids table. In the script, I use the command "AddSpecialAbility", like so:
    AddSpecialAbility(TIEFLING_ORIGIN)

    The IESDP entry for this action is:

    279 AddSpecialAbility(S:ResRef*)
    This action adds the specified spell to the active creature. The message has gained a special ability: "Ability" is displayed in the message log.

    So, is there a way to do the same kind of thing via WeiDU maybe?

    Any ResRef reference references a filename. No need to addspell. Say your spell is named* "tiefling", you would put:

    AddSpecialAbility("tiefling")
    *though, you should use a prefix

    edit: nm. looks like you got it.
  • rapsam2003rapsam2003 Member Posts: 1,636

    That's one of the main benefits - it will save you time in the long run.

    Yeah, definitely.

    edit: nm. looks like you got it.

    Yup, thanks. :)
  • steelsoldiersteelsoldier Member Posts: 12
    Actually, remember that to have an aasimar, all you need is your family line to have been planetouched in some way, even if there is not much celestial blood flowing through your family, that does not mean that eventually an aasimar would awaken, potentially since you have
    Bhaal's Blood
    your good heritage could be trying to fight it back potentially awakening your aasimar heritage.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016

    Actually, remember that to have an aasimar, all you need is your family line to have been planetouched in some way, even if there is not much celestial blood flowing through your family, that does not mean that eventually an aasimar would awaken, potentially since you have

    Bhaal's Blood
    your good heritage could be trying to fight it back potentially awakening your aasimar heritage.
    Yes...that's the idea...

    But, Aasimar are planetouched by those of the "Upper Planes". That's definitely clear in the Planeswalker Handbook (link in 1st post of the thread), the Planar Hanbook (the 3E equivalent to the Planewalker Handbook; look it up yourself), etc. Aasimar bloodlines are just "planetouched" in general?...That's not true.
    Post edited by rapsam2003 on
  • rapsam2003rapsam2003 Member Posts: 1,636
    Will be adding and testing Air Genasi this weekend.
  • Abdel_AdrianAbdel_Adrian Member Posts: 430

    Will be adding and testing Air Genasi this weekend.

    I look forward to trying it out.
    Did you do anything for BG2EE racetext that was different from BGEE? I'm not sure if you already addressed it or not, but in BG2EE I had to add a vampire race placeholder between half-orc and tiefling so that I could get both the right classes and the right strrefs. Still waiting on IWDEE 2.0+ before we can mod races for that.
  • rapsam2003rapsam2003 Member Posts: 1,636
    edited April 2016


    I look forward to trying it out.

    :)

    Did you do anything for BG2EE racetext that was different from BGEE? I'm not sure if you already addressed it or not, but in BG2EE I had to add a vampire race placeholder between half-orc and tiefling so that I could get both the right classes and the right strrefs. Still waiting on IWDEE 2.0+ before we can mod races for that.

    I was not aware of that. Is there anything to prevent me from using the racetext.2da from BG2EE in BGEE or in IWDEE? In other words, does it hurt BGEE or SoD or IWDEE to have the BG2EE racetext.2da?

    Of course, note that I am not officially saying this mod is supported for BG2EE or IWDEE yet.
Sign In or Register to comment.