-
Content Count
1,377 -
Joined
-
Last visited
-
Days Won
47
Content Type
Profiles
Forums
Blogs
Forum & Tracker Requests
Downloads
Gallery
Store
Calendar
Everything posted by Salk
-
It was exactly as you said, JC. I shouldn't have trusted WinAmp... 😄
-
Hello! Perhaps someone can correct me if I am wrong but it seems to me that the dead sound for Mission is not producing any sound? I used Sith Codec to be able to listen to few .WAV files found in the Streamsounds folder of the game and when I played P_MISSION_DEAD I heard nothing.
-
Hello, Quanon! I have a question. I noticed that you added upscaled normal maps as well and I would like to ask you what happens if the game find an upscaled texture in the override folder but not its corresponding normal map. I am asking specifically because some other person that did texture upscaling told me that he suspects that there is no point in upscaling the normal maps. Would the engine be able to use the game's original normal map which is not upscaled? And an additional question: some of your upscaled textures are in .tpc format but they also come with a .txi file. Isn't the .txi file already included in the .tpc file? Thanks! EDIT: While going through the files I noticed a possible faulty .txi file: LMA_VSub01.txi The content is: envmaptexture CM_Manaan0 Shouldn't it be this instead? bumpyshinytexture CM_UPMAN bumpmaptexture LMA_VSubBMP I'm just asking. I know nothing about graphics and upscaling...
-
SKIN:Darth Sapiens’ T3-M4 HD 2k [Ported to Kotor 1]
Salk replied to N-DReW25's topic in Mod Releases
Nice mod! I have long used Darth_Sapiens' texture after properly renaming the file and was very happy with it but now I will check out SH's recolored version as well. Thanks! -
Hello! I am happy to confirm it was just a user error. I really like this modification and the work you have done with it, WildKarrde! Just a final question about the EH reskin files you instructed to rename: the original files are then no longer necessary (LSF_EHawk01.tga and LSF_EHawk01.txi), I assume?
-
I think I have found the problem. It is all on me as I have altered the spawning points for the party members disembarking the Ebon Hawk. I will test this later but I am quite sure it was a false alarm on my part.
-
Finally I got the chance to install this modification on top of my heavily customized game. I did follow the installation instructions accurately but something went wrong. The main install.log did not report any error and the only warning was about finding the liv_m99aa.mod file in the modules folder of my game. Most files were added and some were instead replaced. I have a total of 79 new or modified files in my override directory after installation. Unfortunately I cannot provide the log of the main install because it seems TSL Patcher overwrites (pretty stupidly, in my opinion) the current one with the one coming from the additional component (Visible Forcefield), which I installed just afterwards. I attached that log here for scrutiny but it reports a successful installation. I describe what the problem is. When I disembark the EH, the party is spawned at the standard location used in the original game (the corridor) and I have no way to even go back (there is no "exit"). I noticed some changes in the corridor which confirmed that the main installation should have been successful, just like the install.log reported and the pictures I am attaching here showing the RIM and the modified MOD of the area are further confirmation about it. Yavin before: Yavin AFTER: I can provide screenshots of the party spawning, if needed. I have also installed the High Quality Cockpit Skyboxes files and the EH reskin but I doubt that is relevant. Thanks! installlog.rtf
-
I seem to recall having also not succeeded with it in the past. What alternatives do I have (if any)?
-
Hello! I was wondering if anyone has ever used the GetObjectSeen() function successfully in the KotOR game. I am trying to use it as trigger in the following code: while (GetIsObjectValid(oCreature)) { if (((GetStandardFaction(oCreature) == STANDARD_FACTION_HOSTILE_1) || (GetStandardFaction(oCreature) == STANDARD_FACTION_HOSTILE_2) || (GetStandardFaction(oCreature) == STANDARD_FACTION_INSANE)) && ((GetDistanceBetween(oCreature, oLeader) < 17.5) || (GetDistanceBetween(oCreature, oNPC2) < 17.5) || (GetDistanceBetween(oCreature, oNPC1) < 17.5))) { nCombatZone = 1; } oCreature = GetNextObjectInArea(GetArea(oSelf), OBJECT_TYPE_CREATURE); } if (IsNPCPartyMember(NPC_MISSION)) { int nUndisturbed = 0; if ((oNPC2 == OBJECT_INVALID) || (!GetObjectSeen(oNPC2, oMission))) { if ((oNPC1 == OBJECT_INVALID) || (!GetObjectSeen(oNPC1, oMission))) { nUndisturbed = 1; } } if ((GetGlobalBoolean("SURVIVAL_INSTINCT")) && ((nUndisturbed == 0) || (nCombatZone == 1) || ((!GetSoloMode()) && (GetPartyMemberCount() > 1)))) { AssignCommand(oMission, ClearAllEffects()); SetGlobalBoolean("SURVIVAL_INSTINCT", FALSE); } if ((!GetGlobalBoolean("SURVIVAL_INSTINCT")) && (nCombatZone == 0) && (nUndisturbed == 1) && (GetSoloMode() || GetPartyMemberCount() == 1)) { AssignCommand(oMission, SurvivalInstinct()); } } The goal is to verify Mission does not detect the presence of other party members so I thought of GetObjectSeen() for the purpose. There is GetLastPerceived() but it is said to be used in OnPerception scripts and that is not my case. Cheers!
-
This is quite a find. Good job reporting it.
-
Thanks to advice from both TamerBill and DarthParametric, I finalized Mission's unique feat (tested and working): Survival Instinct Unique Ability: Mission Mission grew up on the streets of Taris where she learned self-preservation. She gains a +1 bonus to dodging and saving throws when she is the last one standing in combat.
-
Hello again! I was just looking at that as reference (although now I changed a few things around). Very true. I have moved that part to the henchmen's heartbeat. I actually moved everything to the henchmen's heartbeat because my testing was not successful when trying to apply the bonus via k_hen_damage01 while it did work using the heartbeat. I don't like it because of the delay (I think the worst case scenario is the bonus being applied 6 seconds after the death of the other party members) so I am open to alternate solutions. This is the code I introduced in the henchmen's heartbeat: void BuffUp(object oSelf) { SetGlobalBoolean("STREETWISE", TRUE); effect eACUp = EffectACIncrease(1, AC_DODGE_BONUS, AC_VS_DAMAGE_TYPE_ALL); effect eSTUp = EffectSavingThrowIncrease(SAVING_THROW_ALL, 1, SAVING_THROW_TYPE_ALL); ApplyEffectToObject(DURATION_TYPE_PERMANENT, eACUp, oSelf); ApplyEffectToObject(DURATION_TYPE_PERMANENT, eSTUp, oSelf); BarkString(oSelf, 36946); } void FeatStreetwise() { if (GetHasFeat(129, OBJECT_SELF)) { object oFirstPM; object oSecondPM; if (GetPartyMemberCount() == 3) { if (GetPartyMemberByIndex(0) == OBJECT_SELF) { oFirstPM = GetPartyMemberByIndex(1); oSecondPM = GetPartyMemberByIndex(2); } else if (GetPartyMemberByIndex(1) == OBJECT_SELF) { oFirstPM = GetPartyMemberByIndex(0); oSecondPM = GetPartyMemberByIndex(2); } else { oFirstPM = GetPartyMemberByIndex(0); oSecondPM = GetPartyMemberByIndex(1); } if ((GetCurrentHitPoints(oFirstPM) < 1) && (GetCurrentHitPoints(oSecondPM) < 1) && (!GetGlobalBoolean("STREETWISE"))) { BuffUp(OBJECT_SELF); } } else if (GetPartyMemberCount() == 2) { if (GetPartyMemberByIndex(0) == OBJECT_SELF) { oFirstPM = GetPartyMemberByIndex(1); } else { oFirstPM = GetPartyMemberByIndex(0); } if ((GetCurrentHitPoints(oFirstPM) < 1) && (!GetGlobalBoolean("STREETWISE"))) { BuffUp(OBJECT_SELF); } } } } void main() { object oLeader = GetPartyMemberByIndex(0); object oNPC1 = GetPartyMemberByIndex(1); object oNPC2 = GetPartyMemberByIndex(2); (...) if (IsNPCPartyMember(NPC_MISSION)) { if ((GetGlobalBoolean("STREETWISE")) && (!GetIsInCombat(oMission))) { AssignCommand(oMission, ClearAllEffects()); SetGlobalBoolean("STREETWISE", FALSE); } if ((!GetGlobalBoolean("STREETWISE")) && (GetIsInCombat(oMission)) && (GetCurrentHitPoints(oMission) > 0)) { if (GetIsObjectValid(oNPC2)) { if (GetCurrentHitPoints(oLeader) < 1 || GetCurrentHitPoints(oNPC1) < 1 || GetCurrentHitPoints(oNPC2) < 1) { AssignCommand(oMission, FeatStreetwise()); } } else if (GetIsObjectValid(oNPC1)) { if (GetCurrentHitPoints(oLeader) < 1 || GetCurrentHitPoints(oNPC1) < 1) { AssignCommand(oMission, FeatStreetwise()); } } } } (...) } By the way, do you know if BarkString() plays .wav files associated with the string called? And if not, how do I play a sound that is in the Streamsounds folder of the game? Would Playsound("p_mission_bat4") work? Thanks!
-
Hello! I have not tested yet but I did recompile the game's persuasion scripts (k_con_perseasy, k_con_persmed and k_con_pershigh). It should be all, correct?
-
One more thing I realize now is that my code wouldn't work when there are only two party members (unlikely to happen but surely possible). I'll have to remedy that.
-
DURATION_TYPE_TEMPORARY sounds ideal but I have never seen it used anywhere. But other than duration type, would you say things should work? I am unsure about the effect being applied on the player controlled party member and that's my main concern.
-
Alright. Thanks for the advice! Do you see a problem with my revised k_hen_damage01 script, @DarthParametric? The goal is to have Mission gain some bonus once the other two party members are down and remove the bonus once combat is over (feat.2da and globalcat.2da have been modified accordingly, of course). void FeatStreetwise() { if (GetHasFeat(129, OBJECT_SELF)) { if (GetPartyMemberByIndex(1) != OBJECT_INVALID && GetPartyMemberByIndex(2) != OBJECT_INVALID) { object oFirstPM; object oSecondPM; if (GetPartyMemberByIndex(0) == OBJECT_SELF) { oFirstPM = GetPartyMemberByIndex(1); oSecondPM = GetPartyMemberByIndex(2); } else if (GetPartyMemberByIndex(1) == OBJECT_SELF) { oFirstPM = GetPartyMemberByIndex(0); oSecondPM = GetPartyMemberByIndex(2); } else if (GetPartyMemberByIndex(2) == OBJECT_SELF) { oFirstPM = GetPartyMemberByIndex(0); oSecondPM = GetPartyMemberByIndex(1); } if ((GetCurrentHitPoints(oFirstPM) < 1) && (GetCurrentHitPoints(oSecondPM) < 1) && (!GetGlobalBoolean("STREETWISE"))) { SetGlobalBoolean("STREETWISE", TRUE); effect eACUp = EffectACIncrease(1, AC_DODGE_BONUS, AC_VS_DAMAGE_TYPE_ALL); effect eSTUp = EffectSavingThrowIncrease(SAVING_THROW_ALL, 1, SAVING_THROW_TYPE_ALL); ApplyEffectToObject(DURATION_TYPE_INSTANT, eACUp, OBJECT_SELF); ApplyEffectToObject(DURATION_TYPE_INSTANT, eSTUp, OBJECT_SELF); } } } } void main() { object oMission = GetObjectByTag("Mission"); if (IsNPCPartyMember(NPC_MISSION)) { if ((GetGlobalBoolean("STREETWISE")) && (!GetIsInCombat(oMission))) { SetGlobalBoolean("STREETWISE", FALSE); AssignCommand(oMission, ClearAllEffects()); } if ((!GetGlobalBoolean("STREETWISE")) && (GetIsInCombat(oMission)) && (GetCurrentHitPoints(oMission) > 0)) { AssignCommand(oMission, FeatStreetwise()); } } ExecuteScript("k_ai_master", OBJECT_SELF, KOTOR_HENCH_EVENT_ON_DAMAGE); }
-
Hello! Does anyone know whether the OnDeath() script triggers for party members that are incapacitated during combat or if they do need to be "properly" killed?
-
Thanks to Sdub's help I have a new icon for T3-M4's unique feat which now includes the droid's capability of functioning as a portable workbench. I have also modified the k_inc_utility script to allow for Carth's new unique feat. Due to his status as decorated soldier of the Republic his presence in the party grants a +1 bonus to Persuasion checks made by the Player. I would have loved to give Mission TSL's Stealth Run feat but it is unfortunately not doable so I will have to think of something different for her.
-
I take your work very seriously, Amano Jyaku. And since I'm old enough l can tell you for personal experience that many a argument on a Forum or a chat would hardly ever take place between smart people talking face to face. I've not the slightest doubt both you and DrMcCoy are both smart and competent. It's been an awful period for the world (still is) and you're dealing with your own real life issues. Hard sometimes to keep tempers and words in check but I appeal to your intelligence, hoping we can all dismiss the latest exchange as unworthy of you both. Keep up the excellent job done on either side when you can. We'll be here waiting and thankful for future and past contributions! Cheers!
-
Just chiming in to say I'm sorry to see two valuable contributors arguing over something that should be a common interest and passion. I barely understand a fraction of the whole problem but l know both of you put lots of effort and time into your work and it seems to me that the great divide is mostly a formality but again... I might have misunderstood it all.
-
Oh okay, thanks. Then one other possibility was to add the lights around the perimeter where it was missing.
-
Excellent! I don't remember at the moment but l guess other hangars don't need the forcefield?
-
Movement speed can be changed via script though. I will have to try and check if I can speed up Mission when in stealth mode. But I guess it won't work.
-
Oh I understand what you mean now. I'll have to take a two weeks hiatus from any modding activity but I will make sure to explore this possibility once I am back. Cheers!
-
DeathScepter, would you care to elaborate? What do you mean with armbands and hides being able to help me with my ideas? I'm not sure l understand. Thanks.