Jump to content


Photo

Creating fully-customized characters


  • Please log in to reply
9 replies to this topic

#1 Katrina

Katrina

    Dark Master

  • Member
  • 56 posts

Posted 04 November 2005 - 05:16 PM

I'm working on creating summoned versions of some of my custom characters. My intent is to get them to be able to function at least as well as a familiar (I want them to have their own vision and be able to move through area transitions). I've been able to create the units their equipment and powers, the abilities that summon them, and even functioning voicesets; I just can't seem to figure out how to give them the ability to function somewhat independently as I described. I think I remember an example of what I'm trying to do; the Spirit of Yoshimo item that was available from the Ruad item mod summoned Yoshimo's Ghost who had his own vision and ability to move from area to area like a familiar. I feel like I'm wasting my time trying to figure it out on my own, so if anyone can help me, please let me know.
"Open thy mouth that will swallow us all! Yah, Avoozl, Dark One COME!" ~Katrina of QfGIV

#2 Ghreyfain

Ghreyfain
  • Member
  • 137 posts

Posted 04 November 2005 - 06:50 PM

Set their allegiance to FAMILIAR, I believe. Or open up a familiar's .cre file and see what they use.

#3 Katrina

Katrina

    Dark Master

  • Member
  • 56 posts

Posted 04 November 2005 - 08:05 PM

I tried setting their classifications to "familiar" and "ally", along with all the more obvious methods, but it didn't work. I think the "Find Familiar" spell property must affect it, because I used the original familiar .cre files with the "Creature Summoning" spell property, and they were NOT able to transition areas or explore areas on their own. Unfortunately, the find familiar spell property won't let me use my own .cre files (probably due to the whole "different alignments get different familiars" issue). I'd rather not have them classified as familiars bound to the character who summoned them if possible, anyway. According to the .cre files of the familiars, they are classified as "Ally", not as "Familiar". Is there any purpose for the familiar classification?

Edited by Katrina, 04 November 2005 - 08:08 PM.

"Open thy mouth that will swallow us all! Yah, Avoozl, Dark One COME!" ~Katrina of QfGIV

#4 hlidskialf

hlidskialf

    Incarnation of the Eternal Ale Warrior

  • Modder
  • 2510 posts

Posted 04 November 2005 - 09:17 PM

Check this out: Igi's Companion Tutorial.

The great wolf Fenrir gapes ever at the dwelling of the gods.


#5 Katrina

Katrina

    Dark Master

  • Member
  • 56 posts

Posted 04 November 2005 - 10:02 PM

Hmm, that's a bit more complicated than what I was hoping for. I did manage to give the characters the effect that wizard eyes have to dispel fog of war, so all I need is to get them able to area transition. I've never done script work before, so I'd probably have a lot of trouble using the method you suggest. I'll try, but I don't have much confidence that I'll succeed this way.
"Open thy mouth that will swallow us all! Yah, Avoozl, Dark One COME!" ~Katrina of QfGIV

#6 Katrina

Katrina

    Dark Master

  • Member
  • 56 posts

Posted 05 November 2005 - 09:23 AM

Alright, I made the script and it looks like this:

IF
!Exists("iifam0") // We haven't ever summoned iifam0
THEN
RESPONSE #100
ReallyForceSpellRES("<summon_fam0>",LastSummonerOf(Myself)) // get the caster of the summon spell to summon iifam0 (this sets the companions LastSummonerOf tag correctly
ActionOverride(LastSummonerOf(Myself),SetGlobal("iiMyFamIs0","LOCALS",1)) // tell the summoner which companion they have
SetGlobal("iiFam0Free","GLOBAL",0) // marker global, slot 0 is now used
DestroySelf() // get rid of myself
END

IF
Exists("iifam0") // We have summoned iifam0 before
Dead("iifam0") // iifam0 dead
Global("iiFam0Free","GLOBAL",1) // the 0 slot is free
THEN
RESPONSE #100
SetGlobal("iiFam0Free","GLOBAL",0) // marker global, slot 0 is used
ReallyForceSpellRES("<summon_fam0>",LastSummonerOf(Myself)) // get the caster of the summon spell to summon iifam0 (this sets the companions LastSummonerOf tag correctly
ActionOverride(LastSummonerOf(Myself),SetGlobal("iiMyFamIs0","LOCALS",1)) // tell the summoner which companion they have
DestroySelf() // get rid of myself
END

IF
True()
THEN
RESPONSE #100
DisplayStringHead(LastSummonerOf(Myself),~You are not permitted a companion at this time~)
DestroySelf()
END

However, there is an error at line 27 -which is the third up from the bottom- that says: Expected I:StrRef* but found ~You are not permitted a companion at this time~

Should I ignore this, or what should I do to fix it?
"Open thy mouth that will swallow us all! Yah, Avoozl, Dark One COME!" ~Katrina of QfGIV

#7 Rabain

Rabain

    God

  • Member
  • 653 posts

Posted 05 November 2005 - 09:52 AM

That is just telling you that there should be a string reference for the line to be displayed. Weidu will create this from the ~text~ you have inserted at install.

Also you should change all ii's in the script to something else as per the tutorial as this is igi's personal prefix and using it may cause conflict with any mods he uses this script in. Just pick any two letters that you might want to use as a personal prefix, most modders do this to avoid filename conflicts with other mods.
A knight without armour in a savage land...

#8 Katrina

Katrina

    Dark Master

  • Member
  • 56 posts

Posted 05 November 2005 - 04:04 PM

I didn't have much success with that method. I've spent several hours today trying to get it to work, so I gave up on it. I also spent a lot of time experimenting with different effects to see if I could get what I wanted, but I didn't succeed there either. As a recap, all I'm trying to do is to enable a summoned .cre file to transition areas on its own. If there is no way to do it without making expansive scripts, then I probably can't do it. Maybe I'll just wait until a working example is released so I can hack into it and see how to make my own.
"Open thy mouth that will swallow us all! Yah, Avoozl, Dark One COME!" ~Katrina of QfGIV

#9 hlidskialf

hlidskialf

    Incarnation of the Eternal Ale Warrior

  • Modder
  • 2510 posts

Posted 05 November 2005 - 04:45 PM

You have to script it at some point to do this. The MakeGlobal() action is what allows the multi-area transition. Just try buckling down and see if you can get it to work. If not, post what you're doing and we can add some help. Don't forget to list what tools you're using for each setup as well. (Or are you doing all weidu?)

The great wolf Fenrir gapes ever at the dwelling of the gods.


#10 Katrina

Katrina

    Dark Master

  • Member
  • 56 posts

Posted 05 November 2005 - 05:05 PM

The only tools I've been using for this process are InfinityEngineEditorPro (just for the spells and items), NearInfinity(Beta), and DLTCEP. I haven't used any other modding tools or programs yet (except BAMWorkshop, but that's not related to this topic). I'm pretty new to the aspect of any modding beyond spell, item and artistic areas.
"Open thy mouth that will swallow us all! Yah, Avoozl, Dark One COME!" ~Katrina of QfGIV