The titles for the links for the System Shock 2 and Thief Gold scripts were reversed when I tried to download them.
Thanks, Yandros.
More specifically, it would skip the first letter of the archetype name, but only if you didn't specify a maximum distance.
The titles for the links for the System Shock 2 and Thief Gold scripts were reversed when I tried to download them.
Oops. I fixed the links.
A basic technical question: how exactly do I install NVScript? Do I just place nvscript.osm in the [D:\Whatever\Thief 2] directory, or do I need to do something else as well?
I'm asking because I did a reinstall of T2 last year, so now it's missing pretty much every optional bell and whistle except for NewDark 1.27 and a copy of squirrel.osm in the game directory. I'm having probably scripting-related malfunctions in an FM and I suspect it might be because I don't have NVScript. However, the last time I've installed it must have been close to a decade ago, I no longer remember how I did it back then, and this thread doesn't seem to say so. Hence the question.
Yes, it can go in your T2 directory.
You will also want tnhScript (1st link here: https://dromed.whoopdedo.org/tnhscript/index - you only need to extract the two .osm files and "dh2.osl")
Also Telliamed's rewrite of script.osm: https://dromed.whoopdedo.org/public_scripts/index - one of the 'script...osm files', depends on which game, renamed to 'script.osm' after extracting. The included 'version.osm' looks like it's the same for both downloads.
If this is just for playing FMs, the above should be sufficient.
Sometimes FMs include their own copies of the required scripts, which is both good and bad. Good if the player doesn't already have them, bad if the FM is using an older version which doesn't work on newer computers, but that's only worth investigating if you still have problems.
Thanks!
That actually helped at least partially fix the thing. Will continue pursuing this in the specific FM's thread, but this was already helpful!![]()
New Update: NVScript v1.2.9
The main new thing here is that the archives now contains full source code for all scripts - something I'd been meaning to add for years, but never got around to until now.
Downloads are in the first post of the thread.
NV, I think there's something not quite right about NVTweqDevice.
I've been trying it on an object with 2 joints, but it only works on the primary joint
Properties:
Tweq Joints:
Halt: Stop Tweq
AnimC: Sim
Primary Joint:1
Joint1AnimC: Sim
rate-low-high: 25, 0, 90
(Same for joint 2)
Tweq JointsState:
all [None]If I change the above so that Joint2AnimS is On, the second joint goes foward on TurnOn, but on TurnOff it sort of jiggles a bit and remains in the 'foward' position.
I had a look at your source code to see how the Tweqs were being activated* to see how to do this in Squirrel.
I noticed something:
You declare a charcter array of 16 chars, then the loop writes ControlJointi to it, but then it writes JointiAnimS to it. The latter is 2 characters shorter, so when i is 4, would that buffer actually contain Joint4AnimSt4?
*thought it would be a dedicated function but learned it was just setting property fields
No, the C++ string functions will automatically null-terminate the string being printed, it won't leave the old contents in there.
For TurnOff, it should be setting all of the requested joints to "On, Reverse"
IIRC, there was some oddness with the primary joint when trying to animate multiple joints on the same object, and the animation of all joints will stop when the primary joint finishes.
What design note are you using?
I believe you need to specify every joint that you want it to control, with a non-zero value:
Code:NVTweqDeviceControlJoint1=1; NVTweqDeviceControlJoint2=1;
The above does make both joints work, thanks.
It could do with being added to the documention.![]()
NVScript is now on GitHub: https://github.com/NamelessVoice/nvscript
New releases will now be here: https://github.com/NamelessVoice/nvscript/releases/
I don't think I've ever properly thanked you, but Thank you, NV. Your script work (and so much else) is greatly appreciated and a huge asset to the community.
Glad to have helped this community stay around, producing such quality FMs for all these years!