CTP Gothic Interiors Question
Moderators: Winterhawk99, Mermut, Bannor Bloodfist, Black Rider
CTP Gothic Interiors Question
When using Chandigar's original version of the Gothic Interiors tileset, I ran into a problem where Druids and Wizards with animal companions/familiars were unable to make use of area transitions. Has this been addressed in the CTP version of the tileset?
I hope so, because this tileset would be awesome for adventures set in Eberron. Also, Resident Evil, Alone in the Dark, etc... mods.:p:
I hope so, because this tileset would be awesome for adventures set in Eberron. Also, Resident Evil, Alone in the Dark, etc... mods.:p:
- Bannor Bloodfist
- Posts: 1244
- Joined: Fri Oct 09, 2009 11:45 pm
- ctp: Yes
- dla: Yes
- TBotR: Yes
- nwnihof: Yes
[quote=dutch206]When using Chandigar's original version of the Gothic Interiors tileset, I ran into a problem where Druids and Wizards with animal companions/familiars were unable to make use of area transitions. Has this been addressed in the CTP version of the tileset?
I hope so, because this tileset would be awesome for adventures set in Eberron. Also, Resident Evil, Alone in the Dark, etc... mods.:p:[/quote]
Hmm, I have never heard of a tileset itself causing this sort of problem
I will be sure to test it out when we do final pass tests on that set. Have you tried with his latest version of that set? It has the same fixes done to it that we have done. Well, almost, we are planning on fixing one or two that got missed in the first major round of fixing that happened.
Anyway, I can test for that easily enough, by creating a level 5 wizard and/or a level 5 Druid and see what happens.
I hope so, because this tileset would be awesome for adventures set in Eberron. Also, Resident Evil, Alone in the Dark, etc... mods.:p:[/quote]
Hmm, I have never heard of a tileset itself causing this sort of problem
I will be sure to test it out when we do final pass tests on that set. Have you tried with his latest version of that set? It has the same fixes done to it that we have done. Well, almost, we are planning on fixing one or two that got missed in the first major round of fixing that happened.
Anyway, I can test for that easily enough, by creating a level 5 wizard and/or a level 5 Druid and see what happens.
-
- Posts: 363
- Joined: Sat Dec 17, 2005 7:11 pm
It was the same with henchmen and secret doors in the original HotU. You can fix their heartbeats (or alternatively their OnPerception if you are cunning).
Otherwise they will only catch up if they can path-find a way around. It might be that the pathnodes in Gothic don't connect up well enough and the path-finding is failing because of that. We should perhaps look into that.
Otherwise they will only catch up if they can path-find a way around. It might be that the pathnodes in Gothic don't connect up well enough and the path-finding is failing because of that. We should perhaps look into that.
-
- Posts: 153
- Joined: Fri Apr 01, 2005 6:00 pm
- ctp: No
- dla: No
- TBotR: No
- nwnihof: No
- Contact:
Hiya,
Seems like the problem is if you're using a transition to go from one area to another area on the same map, your companions get left behind unless they can find a path going from the first to 2nd spot?
IE in the sample map, if you go from downstairs to upstairs, your companions get left behind behind because theres not direct path from the first to 2nd floor?
Or is it broken for all transitions even going from one map to another map?
Seems like the problem is if you're using a transition to go from one area to another area on the same map, your companions get left behind unless they can find a path going from the first to 2nd spot?
IE in the sample map, if you go from downstairs to upstairs, your companions get left behind behind because theres not direct path from the first to 2nd floor?
Or is it broken for all transitions even going from one map to another map?
- Bannor Bloodfist
- Posts: 1244
- Joined: Fri Oct 09, 2009 11:45 pm
- ctp: Yes
- dla: Yes
- TBotR: Yes
- nwnihof: Yes
[quote=dutch206]I was attempting to save space by making one big 16x16 area and placing both levels of the house on the same map. Bad idea?[/quote]
Yes, bad idea.
What you would need to do, would be to create two seperate 16x16, for multiple houses, one for level one for the houses, one for level 2. Then, when you transition 'between' floors, you are actually transitioning between physical areas also... that would prevent the henchmen loss.
A little more work, maybe... but not a whole lot more.
so, you could place say two possibly 3 1st floor 'houses' in one 16x16 (depends on whether or not you care if they see the 'other' houses in the minimap scenes or not.) then create a 2nd 16x16 with the 2nd floor rooms for those houses.
For best usage, turn minimaps off for those 'small' houses, you shouldn't need a minimap in a 2 x 2 sized house anyway. not even a 3 x 3 or 4 x 4. But anything larger, and you should have the minimap turned on. AND should not try to place more than one of those in a single area.
Most homes in nwn land are the 2x2 or 3x3 size anyway.
Yes, bad idea.
What you would need to do, would be to create two seperate 16x16, for multiple houses, one for level one for the houses, one for level 2. Then, when you transition 'between' floors, you are actually transitioning between physical areas also... that would prevent the henchmen loss.
A little more work, maybe... but not a whole lot more.
so, you could place say two possibly 3 1st floor 'houses' in one 16x16 (depends on whether or not you care if they see the 'other' houses in the minimap scenes or not.) then create a 2nd 16x16 with the 2nd floor rooms for those houses.
For best usage, turn minimaps off for those 'small' houses, you shouldn't need a minimap in a 2 x 2 sized house anyway. not even a 3 x 3 or 4 x 4. But anything larger, and you should have the minimap turned on. AND should not try to place more than one of those in a single area.
Most homes in nwn land are the 2x2 or 3x3 size anyway.
[QUOTE=OldMansBeard]It was the same with henchmen and secret doors in the original HotU. You can fix their heartbeats (or alternatively their OnPerception if you are cunning).
Otherwise they will only catch up if they can path-find a way around. It might be that the pathnodes in Gothic don't connect up well enough and the path-finding is failing because of that. We should perhaps look into that.[/QUOTE]
I'll suggest this solution [pure scripty]:
http://nwvault.ign.com/View.php?view=sc ... il&id=2624
We do something similar by editting nw_g0_transition on our PW, but I'm at work and can't reference it directly, but this turned up on the vault.
-Dave
Otherwise they will only catch up if they can path-find a way around. It might be that the pathnodes in Gothic don't connect up well enough and the path-finding is failing because of that. We should perhaps look into that.[/QUOTE]
I'll suggest this solution [pure scripty]:
http://nwvault.ign.com/View.php?view=sc ... il&id=2624
We do something similar by editting nw_g0_transition on our PW, but I'm at work and can't reference it directly, but this turned up on the vault.
-Dave
Amatures(Not you Dave, but that Moon Person sure as hell is)..
The above code is ugly, repetative, and sloppy. The Code below is none of those.
mmm, I managed to trim off 6 lines of code rewriting this to a simpler format. Because function call count is identical, there will be no speed increase doing it this way, however, the script will take up less space, meaning the module will be maybe 0.1KB smaller. Trivial gain on something this small, but if that script off the vault is any indication, DM Moon needs to serirously consider re-reviewing his/her work for clarity and simplicity.
Also note this will only work with 1 henchmen, I can tweek this a bit further to handle all henchmen, if anyone wants it.
Code: Select all
////////////////////////////////////////////////////////////
// OnClick/OnAreaTransitionClick
// NW_G0_Transition.nss
// Copyright (c) 2001 Bioware Corp. - Modified by Moon
////////////////////////////////////////////////////////////
// Created By: Sydney Tang
// Created On: 2001-10-26
// Description: This is the default script that is called
// if no OnClick script is specified for an
// Area Transition Trigger or
// if no OnAreaTransitionClick script is
// specified for a Door that has a LinkedTo
// Destination Type other than None.
// Modification: Ports Associates with PC.
////////////////////////////////////////////////////////////
void main()
{
object oPC = GetClickingObject();
object oTarget = GetTransitionTarget(OBJECT_SELF);
SetAreaTransitionBMP(AREA_TRANSITION_RANDOM);
// Jump the PC
AssignCommand(oPC, ClearAllActions());
AssignCommand(oPC, JumpToObject(oTarget));
// Not a PC, so has no associates
if (!GetIsPC(oPC))
return;
// Get all the possible associates of this PC
// object oHench = GetAssociate(ASSOCIATE_TYPE_HENCHMAN, oPC);
object oDomin = GetAssociate(ASSOCIATE_TYPE_DOMINATED, oPC);
object oFamil = GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oPC);
object oSummon = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPC);
object oAnimalComp = GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION, oPC);
// Jump any associates
//Henchmen commented out
/* if (GetIsObjectValid(oHench)) {
AssignCommand(oHench, ClearAllActions());
AssignCommand(oHench, JumpToObject(oTarget));
} */
if (GetIsObjectValid(oDomin)) {
AssignCommand(oDomin, ClearAllActions());
AssignCommand(oDomin, JumpToObject(oTarget));
}
if (GetIsObjectValid(oFamil)) {
AssignCommand(oFamil, ClearAllActions());
AssignCommand(oFamil, JumpToObject(oTarget));
}
if (GetIsObjectValid(oSummon)) {
AssignCommand(oSummon, ClearAllActions());
AssignCommand(oSummon, JumpToObject(oTarget));
}
if (GetIsObjectValid(oAnimalComp)) {
AssignCommand(oAnimalComp, ClearAllActions());
AssignCommand(oAnimalComp, JumpToObject(oTarget));
}
}
The above code is ugly, repetative, and sloppy. The Code below is none of those.
Code: Select all
////////////////////////////////////////////////////////////
// OnClick/OnAreaTransitionClick
// NW_G0_Transition.nss
// Copyright (c) 2001 Bioware Corp. - Modified by Moon
////////////////////////////////////////////////////////////
// Created By: Sydney Tang
// Created On: 2001-10-26
// Description: This is the default script that is called
// if no OnClick script is specified for an
// Area Transition Trigger or
// if no OnAreaTransitionClick script is
// specified for a Door that has a LinkedTo
// Destination Type other than None.
// Modification: Ports Associates with PC.
////////////////////////////////////////////////////////////
//oCritter is Moved to oTarget, fast cheap and easy.
void MoveMeBaby(object oCritter, object oTarget);
void main()
{
object oPC = GetClickingObject();
object oTarget = GetTransitionTarget(OBJECT_SELF);
SetAreaTransitionBMP(AREA_TRANSITION_RANDOM);
// Jump the PC
MoveMeBaby(oPC, oTarget);
// Not a PC, so has no associates
if (!GetIsPC(oPC))return;
// Get all the possible associates of this PC
object oHench = GetAssociate(ASSOCIATE_TYPE_HENCHMAN, oPC);
object oDomin = GetAssociate(ASSOCIATE_TYPE_DOMINATED, oPC);
object oFamil = GetAssociate(ASSOCIATE_TYPE_FAMILIAR, oPC);
object oSummon = GetAssociate(ASSOCIATE_TYPE_SUMMONED, oPC);
object oAnimalComp = GetAssociate(ASSOCIATE_TYPE_ANIMALCOMPANION, oPC);
// Jump any associates
MoveMeBaby(oHench, oTarget);
MoveMeBaby(oDomin, oTarget);
MoveMeBaby(oFamil, oTarget);
MoveMeBaby(oSummon, oTarget);
MoveMeBaby(oAnimalComp, oTarget);
}
void MoveMeBaby(object oCritter, object oTarget)
{
if (GetIsObjectValid(oCritter))
{
AssignCommand(oCritter, ClearAllActions());
AssignCommand(oCritter, JumpToObject(oTarget));
}
}
Also note this will only work with 1 henchmen, I can tweek this a bit further to handle all henchmen, if anyone wants it.