-
Content Count
48 -
Joined
-
Last visited
-
Days Won
5
Content Type
Profiles
Forums
Blogs
Forum & Tracker Requests
Downloads
Gallery
Store
Calendar
Everything posted by Blue
-
My 2 cents: The remake will never be KotOR. It has the potential to recapture the magic, but there will always be a desire to preserve the original experience. If you truly do end up walking away from this project I hope you do decide to release the source. One of the saddest parts of the Lucasforums Era was the lack of source code sharing with the community and as tool makers left the scene so did any hopes of getting a proper source code release from the author. Anyways thanks for what you have done so far to share the things you have found!
-
There is more info here.
- 8 replies
-
- kotor1
- edit rooms
-
(and 2 more)
Tagged with:
-
Sounds like you are missing the doorhooks from the original layout file.
- 8 replies
-
- kotor1
- edit rooms
-
(and 2 more)
Tagged with:
-
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
I've recently been able to do some work on combat animations. For a while now I've been trying to understand how the "fancy" melee on melee combat animations are triggered. This took me a while to figure out because I thought they were controlled by the combatanimations.2da. It appears that all other attacks are handled there except for this particular scenario. I believe this was hardcoded to act this way in the original game, and that is why they are not present in the combatanimations.2da. If the attacking creature is using a basic melee attack, and the target creature is using a melee weapon, and they are both directly attacking each other. Then the attacker and target uses a variation of c*a*, c*d*, and c*p* depending on if they were hit or parried. c*a1, c*a2, c*a3, c*a4, and c*a5 are for attacking (Attack Animation) c*d1, c*d2, c*d3, c*d4, and c*d5 are for damaged (Target Response Animation) c*p1, c*p2, c*p3, c*p4, and c*p5 are for parrying (Target Response Animation) When the attack is queued up a random number is rolled returning 1,2,3,4, or 5 and then proper attack animation is then chosen. Once the attack result is calculated the appropriate response animation is chosen for the target. Example Scenario: So if the the attacker is using a single one handed weapon, and the basic attack random animation number is 4, then the attacker will use the animation c2a4. If the attack hits, the target will use c2d4. If the attack misses, the target will use c2p4. Note: If you are confused by the naming convention for combat animation be sure to check out this post: (Analysis of the Combat Animations) by @JCarter426. Here is a video demonstration of it in action. -
I'm not 100% sure how KotOR's Odyssey Engine handles this flag. Here is what a light bit of research turned up for how NWN's Aurora Engine uses this flag. https://web.archive.org/web/20050131214126/http://nwn.bioware.com/developers/Bioware_Aurora_DoorPlaceableGFF.pdf Interruptable: Conversation can be interrupted https://neverwintervault.org/comment/20484#comment-20484 & https://neverwintervault.org/comment/20512#comment-20512 https://neverwintervault.org/sites/neverwintervault.org/files/project/690/files/toolset_manual_v1.06.pdf No Interrupt: Ticking this box will make it impossible for a player to interrupt the conversation this creature is having with another player. If your module is intended to be playable in multiplayer mode, it might be advisable to tick this box on most important NPCs because there is nothing more annoying than seeing a fellow player interrupting your conversation. This mostly appears to be a multiplayer flag left over from the Aurora Engine. That doesn't mean Odyssey Engine isn't reusing that flag in another way for it's own purposes. Hope this is helpful.
-
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
Yeah there are still too many scripting issues that keep areas like the endar spire from being 100% playable. Mileage varies from area to area. There is still quite a few menus that still need to be implemented. What kind of debug features do you have in mind? -
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
No worries! Thanks for taking the time to check it out -
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
Looks like I left in some buggy code with GetNPCAIStyle that was causing an infinite loop. There are still a few pieces of NWScript that act oddly. The new download can be found here https://github.com/KobaltBlu/KotOR.js/releases/tag/V0.0.2 I never completed the TSL New Game quick start menus like I did in KotOR. It wouldn't take much for me to get them working. Honestly most of the time I use the Dev Console to warp to modules or use the Load Save menu. The Dev Console can be opened by using CTRL + SHIFT + I and then using a code like Game.LoadModule("danm14aa"); //or Game.LoadModule('101PER'); Will open a module with a predefined character template i hardcoded. The steam internet access is used to fetch the art assets for the games used in the launcher. The deadlystream access was being triggered by left over html code inside the launcher. Originally I had another tab called Deadlystream with an iframe view of DS. I took it out because i figured it would weird some people out, but I guess I forgot to remove the iframe code in the process. I disabled the code in question in this release. I believe your heart is in the right place, but I have to disagree with you there. The major side effect of that kind of gate keeping forces people to work on their stuff in a vacuum outside of the modding bubble. If those projects die in that space and no one knows about them, then any work and or discoveries they made wont flow back into the community. A "graveyard of big ideas" as you put it, is the result of the creative process at work. Attempting to "clean up" that process and or gate keep tends to stifle creativity IMHO. -
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
I know it's been quite a while since I made any announcements on this project. 2019 was a very busy year for me. Even so, I was still able to work on the code a bit, and pushed code updates to the GitHub repo every so often. 2020 is still looking to be just as crazy if not more. I'm hoping to be able to post more updates on my progress. I've compiled an alpha build for anyone to test out. It can be downloaded from the release page of the GitHub project here: https://github.com/KobaltBlu/KotOR.js/releases/tag/v0.0.1 Download and unzip the contents somewhere. KotOR-js.exe is the main executable. When you run either game or the toolset for the first time, it will ask you to locate the game directory for the original games first. After that you should be good to go. It is an alpha so expect some things to be broken and or act weird. Compatibility Note: This is a 64bit build. I also believe it only supports win7 and up. I'm always eager to hear any and all feedback! This project continues to be a lot of fun to work on, and it's always forcing me to push the boundaries of what I know about coding and game design. If I can say something of encouragement to the new modders or coders that may be out there browsing these forums. It would be to chase that crazy idea and push yourself to try. When you spend hours and hours writing code or creating a mod, that feeling of seeing your hard work finally bear fruit is amazing. I can't count how many times i've seen modders discouraged from attempting projects because other people think they are biting off more than they can chew. I know that if I would have announced this project when I was just beginning, I fear I would have received similar remarks from some. The thing is that you very well might be over your head, and thats ok! Failure doesn't have to be the end of the road, it can be a stepping stone to better things if you learn something along the way and apply it the next go around. At least that's how I see it 😅. Anyways I apologize for rambling on, I'll sign off for now! -
I'll take a look and see what I can do!
-
Welp it's been a little over a year since I created this thread. Since then I built the LucasForums Archive Project to aid in my KotOR research. I thought I would share it here in case anyone is interested. It isn't anywhere near complete, but there is quite a lot included already. I may attempt to add more at some point in the future.
-
I've spent a lot of time trying to navigate the old Holowan Labs forum on the lucasforums site through WayBackMachine. It is very cumbersome and there are a lot of dead links that were never archived. And things start to go off the rails if you try to navigate to older pages. It would be nice if there was a way to get access to the old Holowan Labs database files (With just the forums posts/threads and no user data) so an archived version could be reconstructed. I would have already attempted to pursue this myself, but I don't know who to contact about it. I would be willing to host and build something like this on my own server, I could even see making it into a GitHub repository for posterity's sake. I'm hopeful that someone can get me in contact with whoever owned the old site, but I fear there has been too much time since it's demise. Any leads would be much appreciated . Edit: Welp it's been a little over a year since I created this thread. Since then I built the LucasForums Archive Project to aid in my KotOR research.
-
I was wondering if anyone has done any research on or attempted to have more than one area defined and included in a module's AreaList struct? NWN supported this and seeing as KotOR was based on NWN it could theoretically be possible. I could see them taking out the code to do this if it wasn't used in KotOR, but I could also see them leaving it in, for fear of breaking something else in the code. Even if it is possible i'm not sure it would make any difference, just a random thought.
-
I know it's a little late but I believe the gui files you are looking for begin with "mipc2". There is a version for each supported resolution. There are similarly named files inside the GUI.bif archive, but I believe they are old unused versions of the UI. KotOR 1 - GUI.bif: mipc210x7.gui mipc212x9.gui mipc216x12.gui mipc28x6.gui KotOR 2 - GUI.bif: mipc210x7_p.gui mipc212x9_p.gui mipc216x12_p.gui mipc28x6_p.gui Hope this helps!
-
Not really, it can import phn files like the original LipSyncEditor by JdNoa. It still needs CSLU to create the phn files.
-
You might want to look into Hyper-V and https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/
-
Here ya go KotOR1 & KotOR2
-
Ah ok. Thanks for the info. I think I can work with that 👍 (Edit: Everything is working in Win7 VM)
-
I'm also working on a visual lip sync editor for my KotOR JS project. I made a post about it here if anyone is interested.
-
I'm getting similar results as @Ashton Scorpius is above. Getting entry point not found errors on all tcl files I have tried. Never worked with this software before so I could be doing something wrong. I also made sure to use Run As Administrator for the CMD prompt install. I'm also running this on Windows 10.
-
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
I've got another small update. This time it's on the KotOR Forge Modding Suite. I took a break from coding over the holidays, so work has been a bit slow on the engine 😇. I had a bit of inspiration over the past couple of days and whipped up a visual lip sync editor. It's still early on, but It will be available for testing in the next release. As always I've thrown in a short video preview below of some of the things it can already do. Key Features List Timeline Editor for easy Keyframe scrubbing and editing Preview heads for visual aid Preview audio that tracks with the timeline Auto loads in audio from the game assets if the lip filename matches Let me know what you all think, and if something like this would be useful. 😃 I'm also thinking it should also be able to add .PHN support since someone seems to have uploaded a version to the site. I just can't get it to install properly on my windows 10 machine. Looks like i'm getting the same error as another person in the support thread for it. 😞 Edit: I was able to get CSLU Toolkit working after some help from @Ashton Scorpius. After referencing the conversion table in LipSyncEditor I was able to get PHN imports working yay! Oh and a little housekeeping.... I don't currently have any plans to do that atm. Thanks for the feedback! -
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
Greetings and Happy Thanksgiving everyone! I've been hard at work over the last few months. I'm close to putting out a new code release, and I'm in the process of working on a new update video for it. In the mean time I wanted to throw up a quick video showing the progress I've made on Dynamic Lighting and Animated Lip Syncing. Some of the things I've been working on for the next code release are: Handling more NWScript actions (I currently have a bug where While loops loop endlessly. I haven't had time to track it down and fix it yet... ) I'm rewriting the collision detection system to use the AABB trees in the models to more efficiently handle which faces to pass to the RayCaster. Reworked the lighting system to handle FadingLights properly (They now fade in and fade out properly) Lip Syncing data in the .LIP files are now read in and processed during conversations. Reworked the emitter system and most Fountain type emitters seem to work like they should. I still need to add support for Chunk emitters and the other types. Added support for weather emitters that are in the fx_snow.mdl and fx_rain.mdl files. And a ton of other small improvements and changes. -
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
Haha that is great! Oh my bad i'll be sure to look into that. I appreciate the heads up Those all sound like great ideas! My main focus at the moment is to get everything running as close to the original as possible. Once that is complete I would love to look into new features and things of the sort. Thanks for the feedback -
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
The code is now up on GitHub https://github.com/KobaltBlu/KotOR.js/ If anyone is looking to get involved hit me up -
[WIP] KotOR JS - A Game Engine For K1 & K2 Written In JavaScript
Blue replied to Blue's topic in Work In Progress
Wow! thanks for the praise. I've always looked up to the work you and your team are doing, so coming from you that means a lot. I agree the term "further along" is misleading because i'm building off of THREE.js as my base which comes with a scene graph, lighting, shaders, materials, and all that jazz. If i'm not mistaken you all are building all of that stuff from scratch. If I was having to do all of that myself for the past two years i'm sure I would have given up by now. Here is what I have so far on the Endar Spire. Things kinda go off the rails once Trask opens the door. I'm only firing a few scripts like onSpawn, onUse, OnDialogue, and a few module specific ones. Heartbeats loop endlessly for the most part so I haven't turned them back on until I can spend some more time looking into why. I know one of the culprits is GetNextObjectInArea, my current implementation just uses GetFirstObjectInArea instead which causes while loops to continuously loop. I believe GetNextObjectInArea is supposed to return invalid once it exhausts itself. I think if I can get a few more of these core functions working I may be able to get a little farther without using the console. And thanks for encouraging me to contribute to xoreos. I'll be sure to see if there is anyway I can think to be of help. My main drawback is fear of proper memory management because most of the languages I have spent the most time with manage memory for me... though that has gotten me into trouble a few times on this project already. I can also now see the benefits of having the power to capture and release memory at will. Thanks! I sure will 😀. Ok yeah that would be a nice addition. The editor has taken a major step back since I merged the code bases back together. I'll try to free up some time to clean it up so it can be messed with once I publish the code. Thanks for the feedback