Leaderboard
Popular Content
Showing content with the highest reputation since 09/19/2026 in Posts
-
2 points
-
The next big project was a retexture of the Ebon Hawk’s exterior hull. Looking at the vanilla one was genuinely painful, and the existing retextures didn’t really improve the situation. I really wanted to bring its appearance closer to this: https://www.artstation.com/artwork/GXwXyB Because in my game I’ve replaced the original cutscenes with several very beautiful ones that use this model. And the model itself is just awesome! But I immediately ran into the problem that the UV layout was completely unsuitable - a lot of overlapping, and many areas of the texture were shared between completely different parts. And… I went down the wrong path. I found the "v_ehawk" model in the game files and started fixing the UV unwrap. I did everything properly: separated the overlaps, made the areas that are visible up close when you walk around the ship larger. Texture in 4K. I was even about to start editing vertices and adding polygons. But then I discovered that none of my changes were visible in the game at all. I spent several days scratching my head, thinking I was exporting the model incorrectly somehow. Of course it turned out to be much more mundane - the model I was editing had nothing to do with the ones that appear on the landing pads on different planets. I have no idea where the game actually uses it - probably in some cutscenes? What we see on the landing pads and in the docks is part of the area, not a separate model. And if I want to edit it, that means editing the entire area - which automatically means incompatibility with any other mod that also edits that area. So I sulked a bit, complained a bit, and decided for now to limit myself to pure texture work. But then another “brilliant” idea struck me - we don’t look for easy ways, right? Realising that adding polygons wasn’t going to happen, I wanted to add a normal map, inspired by my previous experience with the Twi’lek head. I thought, at least it won’t be a flat picture stretched over polygons, there will be some relief. I also spent a long time on the texture itself, adjusting it so that the overlapping UV pieces still looked decent… It was challenging to strike a balance between the desire to match the reference and the limitations of the existing UV layout. I hope the result turned out well. I wanted to make 8K textures, but the engine was clearly starting to struggle when loading areas, so I settled on 6K. But with the bump I was in for a fiasco. Actually, I could have suspected something when looking at the original game files - there was no bump specified in the .txi files at all, even though bump maps were provided for every texture. Why do they exist? I still don’t know the answer to that question. Interestingly, the engine did react to the presence or absence of the bump map - the shaders changed and the image looked different. But the actual content of the bump map didn’t affect anything. For the experiment I tried both a completely flat solid “blue” bump map and an extremely contrasty one amplified 15× during conversion to TPC. There was zero difference. After quite a long series of experiments with different bump settings, .txi options, and the alpha channel of the main texture, I finally found the answer — and I’m sure it has been discussed somewhere on this forum, I just never came across it. On area objects the lighting is almost completely baked into the lightmap. Dynamic bump (the kind that reacts to real-time light direction) barely shows up at all. Especially if the lightmapped flag is enabled on the mesh. I looked into the node of the long-suffering ship, and sure enough, there it was: As an experiment I turned off the lightmapped flag. And to my astonished eyes this is what appeared (the bump map at that moment was the extreme one) — view with caution! 🤣 Of course it’s pure horror, some kind of Dark Side of the Force visions. 😁 So I don’t know whether to include these normal maps in the mod release for the textures where the ship is part of the area. Are they needed? Probably not. For the model that isn’t part of an area - apparently the one used in some cutscenes - I will of course add the bump. Might be useful. A few nice pictures: All that’s left is to add the texture for the upper hull (roof) model that is used in the mini-game where you shoot down fighters, and touch up small details here and there. And then the mod can be released.2 points
-
2 points
-
Hi everyone on this great forum! 😊 I decided to start my own little thread, even though I’m still relatively new here. I’ll be posting my work-in-progress, notes on how things are done - mainly for myself, so I can come back and refresh my memory later. If it ends up being useful to someone else as well, I’ll be happy of course. I’m sure everything I’m writing about has already been discussed countless times on this forum and is familiar to everyone. But I’m still a newcomer! My already released mods: https://deadlystream.com/files/file/3054-new-portraits-for-partymembers/ https://deadlystream.com/files/file/3055-hd-animated-computer-interface/ https://deadlystream.com/files/file/3079-saul-karath-retexture/ https://deadlystream.com/files/file/3092-narves-new-high-poly-canderous-head/ While working on the Canderous head I made a bit of progress learning Blender. I only knew it at a very basic level before, because I’m a 2D artist, not a 3D one. I still don’t really know what proper topology should look like, how to paint weights correctly, how to build textures with nodes, and so on. I’ll be learning all of that gradually. For this particular head I took a high poly mesh from this mod - big thanks to the author! Of course I heavily edited it: the geometry, the UV unwrap, and the texture. I also learned a few useful texture painting tricks. Geometry-wise the hardest parts are always the eyes and the lips, because the animation has to deform them properly, and what looks fine in Blender often ends up looking completely different in the game. Something I’d like to note here for myself - how to get rid of grey spots on the model after exporting from Blender to mdl/mdx: 1. The most important step - clear Custom Split Normals Data: Select the head mesh in Object Mode. Go to the Object Data Properties tab. Expand the Geometry Data panel. If the “Clear Custom Split Normals Data” button is active, click it. This removes the old broken data and forces Blender to recalculate the normals. Also helpful: 2. Apply smoothing — Right-click the model → Shade Smooth. 3. Apply transforms — Use with caution and only when needed! Things can shift in unexpected ways. In Object Mode select the head and press Ctrl + A → Apply All Transforms. ____________________________________________ P.S. English is not my native language, so I apologise in advance if anything is phrased awkwardly. ____________________________________________ Then I decided to retexture the high-poly Bastila body from the TCS mod. The thing is, we started playing through BOSSR on stream, and there Shadow uses Bastila’s body. And we have this Bastila mod installed. So I made her this outfit. I didn’t touch the model or the UV unwrap, only the texture. I painted the alpha channel in the places that should be more shiny. Since I don’t know how the original model author would feel about this little “side project” of mine, of course I won’t be releasing this texture anywhere — it’s purely for personal use. After that I moved on to her head. I wanted both the lekku and the face itself to have more polygons. So I simply applied a Subdivide, then worked on the mesh — editing vertices, sculpting, and so on. Then I started texturing, and at that point I really wanted to add a bump map so the lekku would look bumpy the way vanilla Twi’leks do (even if the vanilla ones are very low quality). I dove deep into the problem — I remember spending entire weekends glued to this forum reading everything people wrote about adding bump. Nothing was working for me. I tried every piece of advice, converted the poor bump map to TPC every which way, opened the model files in ASCII and searched for tangent vectors… I even started recalling university calculus about quaternions and how I used to redefine matrix multiplication in C++ practicals…🤣 It turned out the problem was completely different. The BOSSR mod authors used the "Twilek05" head model, but in heads.2da they assigned it the texture name "matilda_headd". Meanwhile the model itself is linked to the texture "Twilek05". And even though the engine can pull the main (diffuse) texture information from a texture that isn’t the one specified in the model, it cannot pull bump map information (and apparently txi info as well) from a texture with a different name! I don’t know why it works this way — maybe some internal script. Anyway, once I renamed the main texture to "Twilek05.tga", the bump map to "Twilek05b.tpc", wrote this in the "Twilek05.txi": bumpyshinytexture CM_SpecMap bumpmaptexture Twilek_F05b and also put "Twilek05" as the texture in heads.2da — miracle of miracles, the game finally saw the bump map! Yes, it didn’t turn out perfect — the bumps are too fine and therefore look a bit like shimmering. I probably won’t fix it, because we had to abandon that mod playthrough — it conflicted with other mods. But I’ll write down the key points needed to add bump (even though all of this is already on the forum — huge thanks to DarthParametric and everyone else who shared advice and tutorials): Before exporting, you must enable the “Tangent Space” checkbox in the KotOR Model Node plugin options for all the meshes that need it (in my case “hair” and “head”). To verify — open the model in MDLEdit, save it as ASCII, open it in Notepad++ and search for the word “tangentspace”. On the relevant nodes it should say tangentspace 1, not 0. If it somehow still shows 0 even though the checkbox was enabled on export from Blender, change it to 1, save, open that ASCII file again in MDLEdit (it might complain that it can’t recalculate the vectors — hopefully that’s not a problem), and then save it back to binary mdl/mdx. You can also just tick the corresponding checkbox in MDLEdit itself and re-save — but keep in mind that the bump will then be applied to every mesh in the model that uses that texture, not only the ones you might have wanted. Preparing the .txi. It must have the exact same name as the main texture, and the main texture must be the one that is actually linked to the model. Inside the .txi you need: bumpyshinytexture (your Cubemap) bumpmaptexture (your bump map name) In theory bump should work without the shiny part (only the line "bumpmaptexture " in txi), but for me it never did — because in that case the engine treated the alpha channel of the main texture as transparency. Meaning: if you darken the alpha to make the bump stronger → the object becomes transparent if you leave it white → no bump is visible. Maybe I’m doing something wrong? Preparing the main texture. It must be named exactly as specified in the model (you can check that here). It needs an alpha channel that controls both the shininess (via the Cubemap) and the strength of the bump. The darker the alpha, the stronger both effects. Yes, both at once — there’s no other way. Preparing the bump map. Save the main texture as an image and throw it into this website (again, thanks for the link — found it on the forum). You can increase Strength if the texture isn’t very contrasty, and add a bit of blur (slider to the negative side). Download the result and save the texture as TGA with a pure white alpha channel. Then use tga2tpc with these settings. You can also add extra lines or strengthen the bump with the bumpmapscaling value, as DarthParametric wrote here: https://deadlystream.com/topic/9353-bump-mapping-tutorial-request-for-novices/#findComment-87017 Final contents for the override folder: the model (mdl + mdx), the main texture (tga), the .txi with the parameters, and the bump map (tpc). Phew. The last thing I learned on this head was adding new geometry — I wanted to model headphones and a stone on her forehead. Important points here: convert everything to triangles and weight-paint it to the head. To check — switch to Weight Paint mode and make sure it’s painted red. If you need a piece not to move with the head, weight-paint it to the neck instead (a different vertex group). If you don’t weight anything at all, those pieces of the model simply won’t appear in the game. 🙃🙃 I’ll say it again: I’m by no means an expert on KOTOR modding, so I apologize if I write or do anything incorrectly! And, of course, I’d be grateful for any advice, comments, or corrections.1 point
-
Hi, I can make the hd icon packs and portraits optional in the next update And yes I am releasing full native controller support with rumble on the next update, that works even on 800x6001 point
-
1 point
-
View File High poly PFHB04 The mod replaces the PFHB04 model and textures. To Install 1. Download: PFHB04 2. Copy all files to the Knights of the Old republic's Override folder. (Example location - C:\Program Files (x86)\Steam\steamapps\common\swkotor\Override) 3. When/if prompted to overwrite files, press okay. 4. If you like the mod; leave a comment or endorse! (It would be much appreciated) Made with love. Submitter Dark Hope Submitted 09/23/2026 Category Mods K1R Compatible Yes1 point
-
1 point
-
1 point
-
1 point
-
DP, in case you believe this won't ever become a published modification, I was wondering if you could share the room model with the TSL ponds but without the additional trees, if you still have those files somewhere.1 point
-
Sith Holocron asked me to repost my old 2013 tutorial on this subject from LucasForums here, which you may have seen before, either in its original form or in the helpful video forms made by Xuul (if you have difficulty understanding any of the steps here, I recommend seeking those videos out). This method was originally discovered and posted for KotOR II, but works for KotOR I as well. Here is the guide, with some minor changes: --- The ability to run the KotOR games in custom resolutions has existed for many years now. Personally, I have patched KotOR I and II to run in a 1920x1080 widescreen resolution (and KotOR II now supports higher resolutions by default after the Aspyr patch), and many other people have done the same, with various resolutions. However, despite these patches, no matter what resolution the game is patched to run in, the games' .bik movies do not run in the patched resolution. They merely upscale to fit the width of the screen. For KotOR II, which was the original subject of this guide, the vanilla non-HQ movies play in an awful 640x272 and upscale from there, maintaining the 640x272 aspect ratio of ~2.353:1 until they are the width of the screen, with ugly black bars on the top and bottom of the movies. In late 2012, in this LucasForums thread, I pieced together the method to getting KotOR II to run the .bik movies in different resolutions -- in my case, 1920x1080. This thread will explain that method, applied to both games, and should allow anyone to force the games to run the movies in the same resolution that their game is patched to. WARNING: This modification requires the hex editing of KotOR I/II's executable. Mistakes could cause it to stop working, requiring you to redownload the file if you do not know how to fix the problem yourself. With Steam, this is an easy thing to do; on a physical copy of the game, it would require a full reinstallation. Remember to back up any and all files that you will be altering in case something goes wrong. Things you'll need: The KotOR I/II no-CD patch -- If you've already patched your game to run in a custom resolution, then you've already gotten the no-CD patch, because the normal executable isn't editable. I can't link to the no-CD patches since they are technically illegal, but they are easily found via Google. This should not be required for the GOG versions of the games. In the case of KotOR II, you should also grab the KotOR II HQ movies patch -- this is included by default with the Steam and GOG versions, so most people shouldn't need to worry about this. If you are playing with a physical copy, then you'll need to find a mirror of the patch online somewhere. There are 6 parts in total. RAD Video Tools -- this program is used to output the HQ movies to your desired resolution. **** The latest update of RAD Video Tools no longer works with kotor movies. Users will need to download version RADTools_1200e located here HxD Hex Editor -- You will need a hex editor to edit the games' executables. Any will work, but HxD is the one I used, and it's free. Download here. Now, the instructions. ----------------------------------------------------------------------------------------------------- Step 1: First, make sure you've backed up everything that you'll be editing. I suggest creating a folder entitled "Backup" inside your KotOR I/II directory, in which you can put the game's executable and any other important files (such as the original movie files), although the executable is really the only one that is at risk of being screwed up by a mistake. If you have the Steam version, you can just use the "verify integrity of game cache" function to redownload the original version(s) of any broken file(s). Step 2: Create a folder entitled something like "Outputted Movies" and put it somewhere like your desktop. It doesn't really matter where; the desktop is probably the best place. You'll be deleting it once you're finished, as it will no longer be needed. Step 3: KotOR II users should install the official KotOR II HQ movies patch. This will overwrite many of the files in your \Movies directory with higher quality ones. Remember that this is not necessary on the Steam version. Step 4: Get the no-CD patch for your game (I can't link here as stated above, so use Google) and, if necessary, patch your game to run in whatever resolution you want. Instructions on how to do that can be found online and will not be given here so as to reduce the size of this post. I'm sure most people reading this have already done this step eons ago, anyways. Step 5: If you haven't already, download and install the RAD Video Tools linked above. Step 6a: Now, the fun stuff begins. You'll need to use RAD Video Tools to convert all of KotOR I/II's .bik movies to your desired resolution. Depending on the power of your computer, this can take a significant amount of time. It might be best to just do this step overnight, as the processing takes a while and is very resource-intensive, slowing your PC while in progress. If you are on an old/weak PC, this process could take too long to be worthwhile for you. I can't estimate how long it will take, as it will vary wildly based on the power of your PC. To convert the files, open RAD Video Tools and navigate to your KotOR I/II installation directory, and then open the Movies subfolder. Select all of the .bik movies. Step 6b: Now that you've selected all of the files, click "Bink it!" in the lower left corner of the RAD Video Tools window. A new window should open wherein you can select the output settings. Under "Browse," select the desktop folder we created earlier called "Outputted Movies." All of the converted movies will now be outputted there. Under "Input video settings," enter your desired resolutions. I, for example, put 1920 in the width boxes and 1080 in the height boxes. KotOR I users should make sure that the "Compress audio" option is checked and that lossiness is set to 0, otherwise the files will be rendered without sound (thanks milestails for noting this); KotOR II users can uncheck compress audio. Click "Bink" on the right-hand side. Step 7: Now you play the waiting game. Wait for the movies to be converted. Step 8: Once the movies have been outputted to your desktop folder (or wherever else), copy and paste them to your KotOR I/II's Movies folder (e.g. C:\Program Files (x86)\Steam\steamapps\common\Knights of the Old Republic II\Movies). Select yes when asked to overwrite. You can also backup the originals beforehand, if you want. Once all the files are in place, you can delete the "Outputted Movies" folder from your desktop; it has served its purpose. Step 9: Install HxD (or any hex editor, really) and open the game's executable (swkotor.exe or swkotor2.exe), located in your KotOR I/II installation directory. Here comes the only complex part of these instructions. You will need to find the following hex values (in HxD, make sure to change the search datatype from Text-string to Hex-values) and edit them to match your desired resolution. Change the bolded resolution pairs to your desired widescreen resolution. Remember to flip the order of the hexadecimal values. For example, 1920 is 0x780 in hexadecimal. I would flip the order (ignoring the x) and enter 1920 as "8007." 1080 is 0x438, and thus, it would be entered as "3804." For KotOR II: TSL, the hex values you must edit are: For KotOR I, the hex values you must edit are (thanks to Kainzorus Prime for finding these hex values online): Note: If the game minimizes during cinematics, this may be fixed by setting the game's executable to run in compatibility mode for Windows XP with Service Pack 3. If you are having trouble finding the coordinates, it may be because the UniWS patcher already edited the hex coordinates for you. You can verify this by searching for what you plan on changing the coordinates to (instead of the original pre-patch values); if you find a match, that means the editing has already been done by the patcher. Step 10: Most people have probably already done this, but if you haven't, it's vital: open the file swkotor.ini/swkotor2.ini with Notepad (or any text editor) in your KotOR I/II directory and change the width and height under [Graphics Options] (and [Display Options] for KotOR II) to whatever your custom resolution is. ----------------------------------------------------------------------------------------------------- That's it! Assuming everything worked correctly, your KotOR I/II movies should now play full-screen, with no ugly black bars on the top and bottom. Enjoy the fixed movies, and PM me if you have any questions or anything that could be added to this guide. I will update this thread in the future to correct any mistakes or to add any additional information.1 point