Leaderboard


Popular Content

Showing content with the highest reputation on 08/18/2018 in Posts

  1. 2 points
    I've started experimenting with editing and creating new areas, so I thought I'd take advantage of our new forum here to document my tinkerings. Areas have been the most problematic matters for KOTOR modding since the early days, mainly because the modeling tools couldn't handle vital things like lights and animations. Also, different tools were necessary for different procedures, and they each had things they couldn't do, and would break different things. Fortunately, recent developments courtesy of @bead-v have sorted that; KOTORMax and MDLEdit can handle any type of model and can successfully import and export everything necessary for area models. But that was only recently, and as such I haven't dabbled much in areas because I thought it was too much of a hassle before. I've always been interested in it, though - I first got into modding making maps for Jedi Academy, and I was thoroughly disappointed when I learned things weren't so simple with KOTOR. I wasn't the only one who felt that way either. Even after making new areas was technically possible, few did. And with the new tools, the limits have yet to be tested. I've decided to do some of that testing. I'm not going into this completely blind - so far I've been able to half-remember several discoveries made by my predecessors, and I've made a few of my own already. The idea of this thread is to document things a little better as I go through them so nobody in the future will have to half-remember anything. And anyone else experimenting with areas is welcome to join in, of course. I think we'll get started with a little show and tell: I've set up a new area as a proof of concept, and I've attached the files below. There's not much of a point to it now, beyond letting you take a look at some empty areas, though I expect I might end up breaking things and require troubleshooting in the future, so here's a working version of it as a baseline I guess. For now you can look at it, and I've included everything so you should be able to fiddle with it for personal experimentation if you want, though obviously don't put it in a mod because go get your own. Anyway, I've created a new area for Citadel Station by rearranging various rooms from three different areas and making some other adjustments. I took the hallway from 204TEL, doubled the length, added doorways at either end, and changed what each door leads to. Most of the side rooms are copies of the apartment complexes from 203TEL, with a few rooms from the Ithorian compound at the end of the hall. I also changed the exit, as I decided to use the existing one as a sort of lobby area, and instead added a doorway to the wall. I pulled the new exit hallway from 208TEL. I made some other edits like putting in new signs and made some changes to the lightmaps so everything blended together better. But for the most part I just pieced together existing models in a new layout. I'd done this before, mostly by editing layout files in Notepad, but I figured more extensive changes would be possible with the new tools, so I wanted to try it out. I was impressed by how easy it was. I did the basic layout with all the rearranging and had a working area in just one evening. It took a bit longer to make the other edits, especially dealing with the lightmaps, and to debug a few things. Though, even a lot of what I didn't know was intuitive enough, like making the new walkmesh. This isn't a brand new area from scratch, but I think it is distinct enough compared to the other Citadel areas - all the residential ones at least have the same architecture, with copies of the same basic rooms but different variations on them. Similar, but not the same. And it was the work of a few days by someone who didn't know what they were doing yet. Pretty easy. Now for some technical details. There were a few things that gave me trouble and between half-remembering things and experimenting, I've come up with solutions for them and perhaps more importantly a guess for why the game is the way it is. Animate UV This is one of the properties on the OdysseyTrimesh modifier in KOTORMax. It's a form of animated texture, but rather than have an animation on the texture file, the game animates the texture mapping. 204TEL has two instances of this: the water fountain and the sign to the Ithorian compound. During my early edits, they wouldn't animate. I was able to conjure up a memory of reading something elsewhere on Deadly Stream and realize the reason for this is that objects with animated UVs cannot be linked directly to the model base. They have to be linked to a dummy that's linked to the base. The dummies in the game seem to be named with the room name + "a" (e.g. trimesh linked to dummy 212tel03a linked to room 212tel03) though I don't know if the name matters. Alpha Shenanigans The parts I've circled are rendering on top of the window rather than behind it. It stands out more if you see it in 3D space, but in the picture you can tell by how they're dark brown when they should be tinted green due to the glass of the window. It's happening because both the window and the offending objects - the skyline, the antennae - make use of alpha channels to have part of the texture transparent. The game doesn't render overlapping alpha channels correctly. The game will always pick one object to render on top of the other object(s) regardless of how it's actually supposed to be. This is actually a known bug in OpenGL, which makes it like the hard-codedest of hard-coded problems. Let's say you have a room with two windows, Window A on the west side of the room and Window B on the east. If you're outside the room on the west side, Window A should appear in front of Window B; if you're outside of the room on the east side, Window B should appear in front of Window A. But the game will always render A on top of B regardless of where you are. You can trick it to render B on top of A if you prefer, because the game determines the rendering order in a very specific way. The object that is rendered most recently is always rendered on top. Normally, the way to do this is to edit the hierarchy of a model's objects - put the one you want rendered on top at the bottom, so it's most recent. The easiest way to do this is to unlink all the transparent objects, then link them in the desired order. But that wasn't applicable here because the rooms are on different models. Yet it wasn't a problem on the original game models, so it had to be something I was doing differently. I tried fiddling with the layout file, the visibility file, even the module's .are, and none worked. It took me a while to figure it out, but the answer again was that transparent objects should not be linked directly to the model base. Like the animated UV issue, they should be linked to a dummy that's linked to the base. I'm not exactly sure how this fixes it, but I'm guessing the game renders all objects linked to all the room bases first before rendering things linked to things rendered to the base. There is some sort of delay, in any case, that makes the window rendered after the skybox room, which is what we want. Lightmaps and Lack Thereof I had another problems with windows when I first started working on my area - they were totally invisible. It didn't take me long to guess this was because they weren't lightmapped; any part of an area model that lacks a lightmap or self illumination is rendered totally black. Since windows use an additive blending mode, and black adds a value of 0, my windows were appearing completely transparent rather than the intended partially transparent. It didn't take me long to guess that, though I had to deal with the other two problems before I figured out the real reason this was happening. Objects that don't have a lightmap or self illumination should not be linked directly to the model base. It was the same damn thing a third time. Once again, they should be linked to a dummy that's linked to the base. To be fair, all the areas I was editing were set up that way. However, I didn't notice because I had to create new rooms to get my new walkmesh to behave, so I had unlinked everything from the start and then linked everything to the new bases. I'm actually glad I overlooked this, though, as I don't think I would've figured out as much as I did if I hadn't broken three things. My guess is that objects linked directly to a room base behave in a certain way, and can only do certain things. Linking them to another dummy is a way of telling the game "don't treat these objects like area model objects" and you if you do that, you can do different things with them. It's already affected three things, so this might have applications in other areas. Smoothing This is kind of a no-brainer - I'm used to having to do my own smoothing for character models, but after all the other troubles I had, when I ran into what turned out to be a smoothing issue, I expected it to be a bigger problem. Generally, area models aren't as complex as character models, and MDLEdit is pretty good figuring them out, but it did mess up one part of my area. So you should double-check your smoothing groups because the tools don't always calculate them correctly. That's all for now. I'll be back as I poke at more things. 212TEL v1.zip
  2. 2 points
    I have all the tools required for creating custom lip files. I’d be happy to share them and write up a tutorial on how to use it. I’ve been doing it for about a year now so I feel confident I could write a cohesive tutorial. Or maybe even a video tutorial? Whatever people think would be easiest.
  3. 2 points
    Nowadays, one doesn't. If you don't already have the necessary tools, there's no way to get them because of bad practices on the toolmakers' part. Unless the folks in Oregon get their servers running again, nobody can install CSLU, which is the only thing that will generate phoneme data that LipSynchEditor can read to generate .lip files for KOTOR. We could, in theory, find another tool to generate the phonemes. I've looked through LipSynchEditor's source scripts and I'm pretty sure if I had phonemes from another source as a text file, I could write a program to convert it from that format to CSLU's so LipSynchEditor would read it. Or, I'm sure, one of the many better programmers on this site could come up with a similar solution. If we had another tool. I've looked, and other people have looked, and it seems CSLU's might be the only one around that works and doesn't cost money. Although right now it doesn't matter how much you money you have if you don't already CSLU installed. You can't install the program unless their servers are running, and you can't copy an installation from one computer to another because the program checks hardware IDs and will refuse to run. Even though it's a free program. Currently, the only way to generate lips is to convince someone who already has CSLU to make them. Though, it would be possible to do most of the work even if you don't have CSLU - most of the work is writing text files - and just have someone who has CSLU batch convert them and send over the files.
  4. 1 point
    @Sith Holocron Sure thing! Give me a few days, as re-casting Zekk in my films is the priority at the moment. @eNoodles Off the top of my head (away from PC atm) all you need is the LipSyncEditor software, dlg_editor & the makephn.tcl programme (and access to notepad, obviously). I think I was sent them a while back from either @JCarter426 or DarthYcey. As I say i’m happy to share these programmes. Either way, I’ll try to get on this as soon as I can. If anyone has any questions, ask them here and I’ll address them in the tutorial.
  5. 1 point
    some other iterations with added wrinkles:
  6. 1 point
    Dang. That was fast! 😂 Still WIP here lol:
  7. 1 point
    hehe..well then, here are 2 iterations of it: dark: white:
  8. 1 point
  9. 1 point
    The more the merrier! Edit: Viva La Czerka!
  10. 1 point
    @ebmar: aww, bad timing i guess - ive just come accross this thread and decided to give it a try and didnt see that you are already on it ebmar.. Well, ive done a quick edit already but i really dont want to take it from you, so....
  11. 1 point
    I'm in, and I'll try. Hope I can pull this off [if the result is bad at least I can use it myself lol]. 🤞
  12. 1 point
    Yes! That update is definitely needed on my end! Anyway, sorry for not straight-forward-ly posting the review picture 'cause I ended-up crashing to sleep after testing and actually taking some screenshots from the attached version of the new sign. 🙏 I do notice a significant change particularly with the frame, and the latest sign which is included on your latest picture does looks lot better! In-game preview from the earlier version: Many thanks for acting-up my request and giving the support that is needed, SH! Very much appreciated. And yes, me personally eager to see some improvements for Czerka sign in KotOR1!
  13. 1 point
    I guess I'll have to post a picture of it myself. If you want the mod package update, either like this post or leave light side points. If you don't think I should bother, dark side points will do.
  14. 1 point
    ”Let me get this straight. We’re supposed to dance straight into the lair of a Force-using, mind-controlling, dual-wielding, unaccounted entity, who either is or is connected to a missing Jedi master, and who creeps out the most seasoned undercover agents?” Kif was about to get up again to shout in agreement the absurdity of the mission before meeting the gaze of Varik. He shot Kif a stern glare, and Kif lowered his head with nary a peep. He had nothing to add that was not already covered, and would do well to not make another fool of himself in front of some of the senior Jedi. Varik sat with his hands clasped. This was definitely going to be one interesting escapade. Taking alive a Jedi master? One who presumably would rather not be? While he had been on worse missions, this is one tall order. Especially for a rag-tag motley crew of Jedi and co. He surveyed the group in the room. He had not taken much notice until now. There were two Republic soldiers from hologram. He couldn't gleam much from them before they left, but they at least seemed capable. Probably grunt fodder, like most soldiers are, but nevertheless still useful. There was Kif. While an idiot, quirky smuggler, Varik would be the first to admit he had a great shot. He saw Zarev around a few times but had only spoken to him on occasion in the dueling chambers. He has a lot of potential with his double-bladed saber and has good technique for a younger Jedi. He'll be fine. The silent SIS agent, who had only peeped up recently, was an oddity in a room consisting of mostly Jedi. But if he had even half the craftiness of some of the other SIS agents Varik had worked with, then he was arguably one of the biggest assets to the team. And then there was Vesi. Poor Vesi. While Varik had much respect for miraluka, especially Master Vek, he could not say the same with the doubtful young Jedi. Is she gifted with the Force? Absolutely. But so are all Jedi brought in for training. She has a thirst for knowledge that is second to none. But so does Varik. And it burned him in the past. Almost literally on Korriban. But the thing that bothers him more than her lack of confidence is her implant. A Jedi that can be hacked? He has never heard of such a thing before, and it's a reason why he generally doesn't trust droids. While many can be afflicted mentally through the Force, Vesi can be literally hardwired. He agreed with her self-assessment. Not only is she grossly underqualified, but she could even be a threat to the mission. Even if she does not, Varik is not impressed with her combat or Force abilities. He had seen her train once or twice in passing. While her issues can be due to her being very young, the fact remains that they exist today. Varik kept such assessments to himself. Maybe he can be proven wrong. Maybe not. Maybe he's being too harsh. Nevertheless, this is a risky mission. There can be no room for error in bringing in a Jedi master alive. If the mission is at stake, he will make no hesitation in leaving behind anyone who can't pull their weight. Even Kif. He looked up to see everyone filing in a line. He sighed. He'll get up soon. Yep. This was going to be an adventure alright.
  15. 0 points
    I'd just like someone to work on this texture from KotOR1 and KotOR2. I'm no good at cloth textures but I'm sure someone could knock it out of the park. It would be nice to complete the Czerka theme.