Search the Community
Showing results for tags 'nwscript'.
Found 3 results
I put my original mod on hold since someone else is making it. And, wow, does it look good! So, on to the most neglected project: a new DeNCS. It's currently able to interpret op codes and arguments, so the next step is the higher-level control flow. Here's where you can help: Byte Code - I obtained a list of op codes from here. I need to make sure it's complete and correct. NWScript - I am compiling a list of operators, punctuators, and keywords from here, and here. I need to make sure it's complete and correct. Mapping - This is the big one, making sure script converts to byte code, and vice versa. 100% identical conversion, every time. No pressure. DOT Diagram - I need a program that can make diagrams from DOT DOT Generator - I can generate the DOT from my code, but it would be helpful if something could do this for me, as well. Name - Right now, it's called DeNCS 2020. Narrowly edging out NewNCS. Please, give it a good name. A couple of things I want to address. DeNCS sometimes reports a partial-byte mismatch. At first, I ignored this just like every other modder. However, while testing this tool I compared the output of an NCS file straight from the game to the output DeNCS generated... Well, it looks like DeNCS attempts to convert the NCS to source code, then attempts to convert the source code back to an NCS file. Then, it compares the original NCS to the new one. And, if they don't match? Partial-byte mismatch. I don't know why DeNCS doesn't always perform a perfect conversion, but it's something to investigate. Particularly, since there are reports that even NCS files generated by Bioware and Obsidian had bugs in them. Troubleshooting the NCS files will make this longer since I have no way of knowing what the original files should have looked like. (But, I can guess just like DeNCS seems to do.) This is command-line only. There was never any intention to make this a stand-alone tool. However, development will take longer than I expected, which means a GUI is the least of my priorities. At some point, I want to merge this into a toolset, maybe even the one up above. So, no GUI. (That also means the stand-alone tool won't be around for very long.) Got any feedback? Thanks! Edit: I just downloaded Graphviz, so I am covered with DOT diagrams. I think the included library will allow me to generate DOT, too.
Greetings, fellow Jedi. May the Force be with you. In k_inc_utility there's a UserDefined events called HOSTILE_RETREAT which I was told it refers to UT_ReturnToBase that also belongs to the aforementioned script. I'm in an attempt on reconstructing one, that is part of k_punk_restrig and wanted to ask if this script seems legit or does the opposite - [Oops, the script has been removed as the wrong one was posted and the right one has been lost in eternity.] Details are commented on the script My concern is; the nwnnsscomp does compile the script, but to see if it's working or not is kind of hard to produce [and I haven't actually seeing it]. The relevant roaming Rakata which is unk42_rakbreed01 rarely moves towards the exit of trigger's geometry. So I'm down to a guessing game and that is not convincing. Many thanks for considering this. ____________________________________________ Update: oof, after countless of trial-and-errors and insightful thoughts from @DarthParametric on #mod_development at Discord, I finally able to come to a resolve. First of all, scrap the above script - my modification to UT_ReturnToBase was all garbage, and is nowhere near working, lol! The idea on having oExiting replacing the role of OBJECT_SELF was all wrong. In short, it should have fired by the creature's OUD itself. Therefore, in the end I'm using this with the k_punk_restrig - and having each creatures their own customized ScriptUserDefine to have something like this - By then, the script worked as intended. Eureka!
Over at xoreos.org I wrote a blog post about Disassembling NWScript Bytecode. This is basically a progress report of me writing an NWScript disassembler, which might be extended into a full-fledged decompiler. It might be of interest to people here.