Jump to content

gMinion and Tutu


Macready

Recommended Posts

Hello -

 

For starters, welcome to G3. I'm thrilled to see your work here -- it's one less stop on the web to keep tabs on the mods which interest me. :D

 

I was nosing around your gMinion TP2 (the 1.6.6 version to be exact), and I was wondering if it could be adapted to work on Tutu. Obviously, much of it is pointless in a Tutu environment (Mord Swords and Planetars and the like), but lower-level monster and animal summons could certainly benefit from it.

 

After reviewing it, it seems like the only portion which would apply to Tutu is the script extension code right at the top. None of the .CREs that get copied to override (or patched now, according to the 1.7 readme) seem like creatures you'd encounter in Tutu, and I don't think there's any spell-casting clones that will turn up in Tutu, so...

 

Is applying gMinion to an existing Tutu installation as simple as changing the .BCS filenames in the TP2 script to match their names in Tutu? If so, have you considered doing this already? There must be some sort of IF EXIST concept in WeiDU to sense if Tutu BCS files are present, so that you could patch those if they are detected.

 

Thoughts? And even if this does not interest you, can you answer me if it is safe for me to just manually update my Tutu installation as I've described above (extending scripts for the Tutu summons)?

 

Thanks in advance, and welcome again.

Link to comment

Hello again -

 

I looked into this, and it looks as if all you'd really need to add for "Tutu-ization" would be checks for _DASIGHT.BCS and _TASIGHT.BCS. If they're there, an EXTEND_TOP with BOTH.BAF should get it done.

 

I used WeiDU (command line) to extend those two scripts as described and it seemed to kick in fine. I tested both the Wand of Monster Summoning and cleric Animate Dead, and they worked -- both summons were using the new gMinion script (whereas they did not without the two script edits described above).

Link to comment
Hello again -

 

I looked into this, and it looks as if all you'd really need to add for "Tutu-ization" would be checks for _DASIGHT.BCS and _TASIGHT.BCS.  If they're there, an EXTEND_TOP with BOTH.BAF should get it done.

 

I used WeiDU (command line) to extend those two scripts as described and it seemed to kick in fine.  I tested both the Wand of Monster Summoning and cleric Animate Dead, and they worked -- both summons were using the new gMinion script (whereas they did not without the two script edits described above).

 

Greeting Macready,

 

Looks like you have figured out the solution on your own.

 

I don't know if this is the case with BG1 or not, but several summoned creatures in BG2 do not use the WTASIGHT.bcs or one of the other generic scripts.

 

So, realistically, it will probably take a thorough look at the:

 

1. summonable by spell creatures

2. summonable by item creatures (jade hound comes to mind)

 

To ascertain things like their combat scripts and potentially their ENEMY-ALLY designations.

 

If you've got all that, then it is just a matter of Extending scripts, possibly assigning scripts (if they are not correctly assigned in the first place), or possibly altering ENEMY_ALLY designations in certain instances.

 

I don't have TuTu installed, nor do I plan to do so anytime in the near future, so it will be up to someone else to dig up this information.

 

If someone were willing to do that, I'd be happy to help put together a package.

 

Thanks,

Cirerrek

Link to comment

Hello -

 

Well, I've pretty much done this already, although I have no idea what you mean by their "ENEMY_ALLY designations."  But, as far as scripts go, I looked at the following CREs:

 

_gnollsu

_obgobsu

_dogwasu

_oboldsu

_xvartsu

_ibbersu

_dogwisu

_asloisu

_flindsu

_worgsu

_olfdisu

_grillsu

spidgisu

spidphsu

spidswsu

nymphsu

_wolfsu

_earblsu

_earbrsu

 

Plus the ones for the druid kit spirit animals.  I also looked up the jade hound astral dog after reading your post.  Among them all, the following scripts are used:

 

_DASIGHT.BCS

_TASIGHT.BCS

WTASIGHT.BCS

NYMPH.BCS

 

WTASIGHT and NYMPH are already dealth with, no?  So basically you are looking at two extra lines of TP2 code.  Looking at the WeiDU documentation, it seems as if FILE_EXISTS_IN_GAME is the statement that will get the job done.  If _DASIGHT.BCS and_TASIGHT.BCS exist in game, EXTEND_TOP with BOTH.BAF.

 

Now, it is absolutely possible that I've missed something.  But you'll tackle at least 95% of the Tutu summons with the small additions I mentioned -- the project is much smaller in scale because of it being a low-level game.  I'm set for now, since I did it manually, but it would be a nice addition to the next version if you didn't mind doing it.

 

Let me also say that I have had gMinion 1.6.6 installed on Tutu for some time now with no adverse effects.  It's just been largely non-functional, since the vast majority of summons use one of those two "underscore" scripts (I can't remember now which of the two was the common one).  So it's entirely Tutu-compatible as-is; it just needs the two extra lines to "flick the switch" and turn on the lovely improvements for the Tutu summons.

 

Enemy Ally (are you a good guy or bad guy or an innocent bystander). From the EA.IDS, but I meant it in the broader sense of Object Identification.

 

IF

See([EVILCUTOFF.HUMANOID.ELF.MAGE_ALL.0.0.0]

 

As in EA.GENERAL.RACE.CLASS. and so on and so forth.

 

Sometimes it was necessary to change some of these things in order to identify the summoned creature via scripting in order to switch its script.

 

That aside, since you've done all the legwork, consider the "switch being flicked" and look forward to seeing it in the next version.

 

And sorry about editing your post. I apparently have the power of edit over topics in this forum, a power that may be used for Great Good or Great Evil or just happen out of plain ignorance. Now how about the power of Undo?:D?

 

Thanks

Cirerrek

Link to comment

Hello -

 

Enemy Ally (are you a good guy or bad guy or an innocent bystander).  From the EA.IDS, but I meant it in the broader sense of Object Identification. 

 

IF

See([EVILCUTOFF.HUMANOID.ELF.MAGE_ALL.0.0.0]

 

As in EA.GENERAL.RACE.CLASS. and so on and so forth.

 

Sometimes it was necessary to change some of these things in order to identify the summoned creature via scripting in order to switch its script.

 

Well, I am an absolute novice at IE scripting, so I was completely oblivious to this issue. I'll do my best to test any summon-related thing I happen across in my current Tutu game, just to make sure the changes to the _TASIGHT and _DASIGHT scripts have the global effect I'm expecting.

 

That aside, since you've done all the legwork, consider the "switch being flicked" and look forward to seeing it in the next version.

 

Thanks! gMinion kicks ass -- it will be nice to have available in Tutu without the manual script editing. I was pretty psyched when I went to test the script edits, cast animate dead, and all the skeletons swung around to face me.

 

And sorry about editing your post.  I apparently have the power of edit over topics in this forum, a power that may be used for Great Good or Great Evil or just happen out of plain ignorance.  Now how about the power of Undo?:love:

 

Perhaps forum moderation should have been included amongst the BG2 Hell trials. :)

Link to comment

Hello -

 

I've found another Tutu-ization issue. The gMinionM script contains the triggers:

 

HasItem("ETTERC1",Myself)

HasItem("ETTERC2",Myself)

 

In Tutu, a summoned ettercap would possess _ETTERC1 and _ETTERC2.

 

I think all the HasItem lines in gMinionS are OK, because most of those summons (djinns and such) won't be in Tutu. The one that is, the nymph, uses the exact same resource names as in BG2 so it's OK.

 

Is it possible to copy in a modified gMinionM in case Tutu is installed (say, if _DASIGHT and _TASIGHT are found, copy in a Tutu version of gMinionM instead of the normal one)?

Link to comment
Hello -

 

I've found another Tutu-ization issue.  The gMinionM script contains the triggers:

 

HasItem("ETTERC1",Myself)

HasItem("ETTERC2",Myself)

 

In Tutu, a summoned ettercap would possess _ETTERC1 and _ETTERC2.

 

I think all the HasItem lines in gMinionS are OK, because most of those summons (djinns and such) won't be in Tutu.  The one that is, the nymph, uses the exact same resource names as in BG2 so it's OK.

 

Is it possible to copy in a modified gMinionM in case Tutu is installed (say, if _DASIGHT and _TASIGHT are found, copy in a Tutu version of gMinionM instead of the normal one)?

I mentioned this to cirerrek already, but I think the simplest solution is to use the same source scripts and simply make these changes on the fly.

 

ACTION_IF FILE_EXISTS_IN_GAME ~fw0100.are~ THEN BEGIN // tutu check

 COPY ~gminion/build1.7/baf/gMinionM.baf~ ~override/gMinionM.bcs~
   REPLACE_TEXTUALLY ~HasItem("ETTERC1",Myself)~ ~HasItem("_ETTERC1",Myself)~
   REPLACE_TEXTUALLY ~HasItem("ETTERC2",Myself)~ ~HasItem("_ETTERC2",Myself)~
   COMPILE_BAF_TO_BCS

END ELSE BEGIN // bogstandard bg2

 COMPILE ~gminion/build1.7/baf/gMinionM.baf~

END

 

And yeah, you can combine those two R_Ts if you wanted.

Link to comment

Hi Cam -

 

Just wondering: Is FILE_EXISTS_IN_GAME able to dereference a string variable in its filename argument? Because that doesn't seem to be working for me, but it does work for FILE_EXISTS. That is,

 

ACTION_IF (FILE_EXISTS_IN_GAME ~%fileName%~) THEN BEGIN

...

END

 

does not work, even when the %fileName% variable contains the name of an existing file (e.g., _AR0101.BCS). But if I change it to:

 

ACTION_IF (FILE_EXISTS ~override/%filename%~) THEN BEGIN

...

END

 

it evaluates to true when it is supposed to.

 

Have you ever experienced this? Is FILE_EXISTS_IN_GAME expecting a string literal and therefore not able to deal with a variable?

Link to comment

tbh, I didn't think either one took variables. FILE_EXISTS differs from FILE_EXISTS_IN_GAME in that in requires a full path (which is why it was returning false without override/) whereas F_E_I_G checks the override and chitin.key--basically the same places that WeiDU checks when you invoke a COPY_EXISTING. In general F_E_I_G is a better check, because if someone has biffed their override folder or you're looking for an original game file that never left the biff it would still return true. If you're not looking for something in the override directory, you have to use FILE_EXISTS. In this case, all Tutu files are in the override so it won't make much difference which one you want to use.

 

bigg should be along in a moment to mention he's added variable support for F_E_I_G for WeiDU v247 or whatever he's up to this weekend. :)

Link to comment

Hello -

 

tbh, I didn't think either one took variables. FILE_EXISTS differs from FILE_EXISTS_IN_GAME in that in requires a full path (which is why it was returning false without override/) whereas F_E_I_G checks the override and chitin.key--basically the same places that WeiDU checks when you invoke a COPY_EXISTING. In general F_E_I_G is a better check, because if someone has biffed their override folder or you're looking for an original game file that never left the biff it would still return true. If you're not looking for something in the override directory, you have to use FILE_EXISTS. In this case, all Tutu files are in the override so it won't make much difference which one you want to use.

 

bigg should be along in a moment to mention he's added variable support for F_E_I_G for WeiDU v247 or whatever he's up to this weekend. :)

 

F_E definitely supports variables. Worked great, but I don't want to use it for the reason you mentioned: there's more than just the override folder.

 

F_E_I_G doesn't seem to support them. WRITE_ASCII doesn't seem to, either.

Link to comment
F_E definitely supports variables.  Worked great, but I don't want to use it for the reason you mentioned: there's more than just the override folder.

 

F_E_I_G doesn't seem to support them.  WRITE_ASCII doesn't seem to, either.

For writing variables, you'll need WRITE_EVALUATED_ASCII.

Link to comment

Hello -

 

FYI the new 1.7 version of gMinion doesn't install successfully on Tutu. I quickly deleted it and grabbed 1.6.7 from cirrerek's old site before I thought to make a note of the error for you guys, though, so sorry about that. Just remember to test the installation out if the next version is going to have the "Tutu-izations" discussed in this thread.

 

In the meantime, if anyone wants gMinion on Tutu right now, install gMinion 1.6.7 with your other Tutu mods (probably best to install it earlier in the mod order, perhaps right after Tutufix), and then after it is in place, unzip this file into your Tutu override folder to activate it. It contains the updated _DASIGHT and _TASIGHT scripts, as well as an updated gMinionM script to correct the Ettercaps-in-Tutu issue mentioned earlier in the thread.

Link to comment
Hello -

 

FYI the new 1.7 version of gMinion doesn't install successfully on Tutu.  I quickly deleted it and grabbed 1.6.7 from cirrerek's old site before I thought to make a note of the error for you guys, though, so sorry about that.  Just remember to test the installation out if the next version is going to have the "Tutu-izations" discussed in this thread.

 

In the meantime, if anyone wants gMinion on Tutu right now, install gMinion 1.6.7 with your other Tutu mods (probably best to install it earlier in the mod order, perhaps right after Tutufix), and then after it is in place, unzip this file into your Tutu override folder to activate it.  It contains the updated _DASIGHT and _TASIGHT scripts, as well as an updated gMinionM script to correct the Ettercaps-in-Tutu issue mentioned earlier in the thread.

 

No it hasn't been included, yet. I need to get off my lazy arse and read CamDawg's kindly provided HowTo on setting up and distributing a G3 Mod Pack.

 

My excuse is that I've actually been trying to play the game a bit, to keep my interest in the game and modding.

 

So, it could be a bit before I get to it. Likely when I find something else I want to add to the eSeries or gMinion.

 

Thanks,

Cirerrek

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...