-
Content Count
4,607 -
Joined
-
Last visited
-
Days Won
521
Content Type
Profiles
Forums
Blogs
Forum & Tracker Requests
Downloads
Gallery
Store
Calendar
Everything posted by DarthParametric
-
Dantooine Jedi Enclave Landscaping
DarthParametric replied to DarthParametric's topic in Work In Progress
It's an upscaled version of LDA_leaf01 (LDA_leaf02 and LDA_leaf04 use the exact same alpha mask, they are just lower res and have different diffuse). The vanilla texture has no TXI data, if that is what you are asking. However I am using downsamplemax 0 blending punchthrough Currently they are still TGAs, as I have encountered some rendering issues with TPCs with alpha masks that will need @ndix UR's input to resolve. -
Dantooine Jedi Enclave Landscaping
DarthParametric replied to DarthParametric's topic in Work In Progress
Yes, that's an upscaled and recoloured leaf texture with a new clean alpha. The grass ground textures are also recoloured and the grass planes have all been replaced with new textures. -
utc [Query] Patching "First Name" using TSLPatcher
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
If you want to add it manually to changes.ini, then you need something like [mycreature.utc] FirstName(lang0)=Testy McTesterton However, I would suggest that a better approach is to make use of ChangeEdit's differencing ability to make your life easy. Save a copy of the original UTC and a copy of your edited UTC. Then allow ChangeEdit to compare them and determine the changes: Don't forget to set the appropriate destination if it needs to be injected into a MOD.- 14 replies
-
- 1
-
-
- tslpatcher
- name
-
(and 1 more)
Tagged with:
-
utc [Query] Patching "First Name" using TSLPatcher
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
The StrRef field is a dialog.tlk reference. If it is set to -1 then you can enter a custom name. If it is set to anything else then that is the entry ID in dialog.tlk (used to allow dynamic updating for other languages).- 14 replies
-
- tslpatcher
- name
-
(and 1 more)
Tagged with:
-
Dantooine Jedi Enclave Landscaping
DarthParametric replied to DarthParametric's topic in Work In Progress
I noticed none of the trees in the interior module have moving branches, unlike the ones outside, so I swapped the static ones out for the danglymesh ones from the exterior trees: -
Dantooine Jedi Enclave Landscaping
DarthParametric replied to DarthParametric's topic in Work In Progress
Only the biggest central one is a stump in TSL. And I find it hard to believe the side trees could have grown that large in the space of a such a short span on what is a temperate world. Maybe on a jungle world, but not Dantooine. -
Dantooine Jedi Enclave Landscaping
DarthParametric replied to DarthParametric's topic in Work In Progress
Added the extra trees from TSL in (interestingly they aren't lightmapped, they just use a grey self-illum). I'm not sure about them just being plonked on the grass though. Maybe they need more of a garden bed around them. I also swapped the leaf texture for one that is higher res and brighter green. It always struck me as odd that Dantooine is so brown, at least in the K1 version. Especially in and around the enclave. I always thought things should be much more green and vibrant there, as a contrast to everything there being dead and brown in TSL. -
Emitter changes with MDLEdit
DarthParametric replied to Malkior's topic in General Kotor/TSL Modding
Both your issues are texture-based. I think there have been a couple of Force Lightning retextures. I'd track them down and have a look at what they did for pointers. Grass varies depending on what module you are talking about. K1 Dantooine has like half a dozen grass textures as I recall. -
Dantooine Jedi Enclave Landscaping
DarthParametric replied to DarthParametric's topic in Work In Progress
I'm revisiting this now that porting is all fine and dandy. I have played around with various incarnations of TSL's ponds, with the addition of some flowers (derived from that giant Ithorian one). The TSL version has some trees behind the ponds, so I was thinking of adding some of those for a bit more consistency as well. -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
If you want to stop combat before the enemy dies, you'll probably need to add a check to their OnUserDefine script, which checks for their hit point value and surrenders when it drops below a set amount. You may want to summon someone more skilled in scripting for advice on such things. -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
You might want to stop the music first, then switch it, then start it again. You should be able to use those relevant commands I posted at the start of the thread. To play it after combat, assuming combat ends when the target dies, then like I also said earlier, attaching the script to the creature's OnDeath is probably the way to go. -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
You should be able to use basically the same script, just change it to the appropriate row ID taken from the module's GIT instead of using the memory token. Alternatively, you could try the following trick. A cursory glance would suggest that the Day and Night tracks are the same, so you could try the following: void main() { int nTrack = MusicBackgroundGetNightTrack(GetArea(GetFirstPC())); object oArea = GetArea(GetFirstPC()); MusicBackgroundChangeDay(oArea, nTrack); } -
Community Manager Eric Musco mentioned in a post on Reddit that a Double XP event is planned for the game's 7th anniversary, stating Dec 20th. It hasn't been officially announced yet, but I'd expect it to run for 1-2 weeks.
-
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
Wrapping the # around something is what tells TSLPatcher to make a substitution in any script you have told it to compile. So it will turn int nTrack = #2DAMEMORY1#; into something like int nTrack = 49; or whatever your new added row number is. And yes, anything after // is considered "escaped" - that is, the compiler ignores it. Thus it is used for human-readable comments. As @Qui-Gon Glenn mentioned earlier, it is very useful to provide comments in your scripts. Both for yourself, so when you come back to it at a later date you know what you were doing, and for anyone else that may be reading your source, such as when trying to make a compatibility patch. -
Lines Not Showing In Dialogue Editor
DarthParametric replied to ALPHA000102's topic in General Kotor/TSL Modding
I don't see that line in KTool's DLG editor. You won't find it in the DLG with a text search regardless, because it is not in the DLG directly. It's just a TLK stringref. I can see the line in dialog.tlk, <string id="21379" sound="_m45aadart04004_" soundlength="0.000000">I was saved from the darkness, Malak. You can be too, if you wish.</string> But that stringref doesn't appear to be in the DLG. What version of the game are you using? -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
2DAMEMORY1 is a memory token, storing a a row ID number. You can have as many as you want. I assume in this case you will only need the one, but it could be 2DAMEMORY2, 2DAMEMORY3, etc. depending on how many rows you needed to add. So, for example, you could have a scenario where you added say three tracks to the 2DA, and created three separate scripts, one for each track. Each script would use a different memory token, to match the specific track. -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
Lol yeah, it's pretty significant. Double slashes indicates "ignore the rest of this line" to the compiler. I would advise you to use Notepad++ along the NSS template in order to help spot small mistakes like this. Comments should be greyed out when properly escaped with double slashes. Other things to watch out for are the number of brackets (you need matching pairs) and missing semi-colons at the end of statements. You can also trip up on stuff like float values not having the required decimal (i.e. zero as a float is 0.0 - 0 by itself is an integer). -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
Use the instruction manual, young Padawan. void main() { object oArea = GetArea(GetFirstPC()); int nTrack = #2DAMEMORY1#; // Change to appropriate TSLPatcher memory token value MusicBackgroundChangeDay(oArea, nTrack); } Note that you have to let TSLPatcher compile the script during the mod's installation in order for this to work. Read the instructions regarding this. -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
-
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
That is declaring a variable for substitution in the main body of the script. It is perfectly valid. It's not strictly necessary in such a short script, but it's very handy in longer, more complex scripts, thus a useful habit to get into. It also tends to make things much more user-friendly when reading through a script, as it reduces the amount of nesting. -
scripting [Query] Custom Music Playing on Cutscene
DarthParametric replied to ebmar's topic in General Kotor/TSL Modding
There are script commands to stop current sounds and music and play something else. One approach you could try would be defining your custom track in a UTS (see one of the vanilla modules for an example, under Blueprint, Sound in KTool). Then in your encounter you'd need to fire the script through dialogue or a trigger perhaps. Something like: void main() { object oEbMusic = GetObjectByTag("UTS_TAG_HERE", 0); MusicBackgroundStop(GetArea(GetFirstPC())); AmbientSoundStop(GetArea(GetFirstPC())); // This is optional, depending on the area. DelayCommand(0.5, SoundObjectPlay(oEbMusic)); } Then you'd need a second script at the end to restart the original music/sound. If it's a cutscene, you could fire that script through dialogue again. If it's just a straight combat encounter, perhaps through the OnDeath script of the creature (someone more experienced with such things would need to chime in about that). void main() { object oEbMusic = GetObjectByTag("UTS_TAG_HERE", 0); SoundObjectStop(oEbMusic); DelayCommand(0.5, AmbientSoundPlay(GetArea(GetFirstPC()))); //Only if you stopped it in the first script DelayCommand(0.5, MusicBackgroundPlay(GetArea(GetFirstPC()))); } -
There's no need to include a pre-existing GFF file when just making alterations in-place. You only need to include files that are being completely being replaced, or that don't already exist in the target location. All the mod does is edit a single field in the existing GIT. That said, it relies on the target MOD already existing in the modules folder, but that is a given since it is a patch for K1R. Yeah he looks to be fine there. I'd have to go back and determine what the actual rotation values were to see how much of a difference it was.
-
In the meantime, this should be the "proper" solution, rather than the scripts above: [K1]_Vandar_Orientation_Fix_For_K1R.7z I also see they have altered Vrook's rotation in the GIT as well. You didn't notice any problem with that?
-
Not really, in terms of the impact. Making the Y orientation negative changes the rotation from 90° to 180° (the X and Y orientations for creatures is the cosine and sine, respectively, of the rotation in degrees).