6741f3d959a7d

6741f3d95af3e
2 Guests are here.
 

Topic: SS2 Coloured Laser Rapiers All-in-One
Page: « 1 2 [3] 4 »
Read 20164 times  

6741f3d95b7c5Deu sex

6741f3d95b838
Very cool! Love that you implemented the things! I just increased SelfLitRad to 30 and reduced min and max brightness to 200 and 230 to suit my convenience, and just kept the red, purple, and green additional rapiers to 1 in the randomized chance, others at 0, very cool to have such flexibility.

https://i.ibb.co/r7B4qMQ/ss2-2022-07-19-20-06-21.jpg

the rapier gets randomized inside your inventory at level transition or reload though, and sometimes it's a little messed up, like here at Deck 4 with a red rapier and blue light

https://i.ibb.co/hXC59SB/ss2-2022-07-19-19-59-10.jpg

I'm using the latest RSD beta 12 hotfix, rapier assassins, and of course the coloured laser rapier mod

6741f3d95bd0bRoSoDude

6741f3d95bd75
Deu sexHmm, that rapier position on the assassin is off. Is it always like that? And how did you get different rapier colors for the assassin?

I'd like to make rapier colors compatible with the upcoming rapier assassin minimod for Scary Monsters, but I'm not sure precisely how to do it at the moment.

6741f3d95bfa6Deu sex

6741f3d95c004
RoSoDude
The rapier position is good only when it is the neutral rapier, the one from the model that is not actually a rapier if you see what I mean,
scary monsters is loaded above assassins rapier, above RSD beta 12 hotfixed, above Coloured Laser Rapiers

6741f3d95c0c5RoSoDude

6741f3d95c11e
Okay, I figured. They do indeed use a different model, borrowed from Secmod.
Acknowledged by 2 members: sarge945, Deu sex

6741f3d95c398sarge945

6741f3d95c3f3
This makes sense, I actually am using copies of the models (in order to change the texture paths)

Also, I will fix the level transition issue. It seems like it's resetting some values on level load, so I will set the values on load (without rerolling a new colour)

Sorry you're having issues :(
« Last Edit: 20. July 2022, 05:53:41 by sarge945 »

6741f3d95c5c4sarge945

6741f3d95c624
Okay, I believe I have fixed both issues.

The rapier should no longer randomise inside your inventory at all, or on level load etc.

Assassins now use the correct rapier model. Unfortunately, they generate a new rapier each time they attack - it's just part of that mod and I can't change it. This means on every attack, their rapier will reroll a different colour.

This may be desired, but if not, there's a new option in the squirrel script file to force assassins to use a specific colour always.

I have attached a new version to the original release post. I really should start using that as a common post for new releases since this is now an "official" mod with actual users, not just an engineering project.

6741f3d95c789sarge945

6741f3d95c7ea
I introduced an extremely stupid bug in v1.01 that prevented the "changing colour in your inventory" on level change/reload bug from being fixed, and actually made it WORSE.

For the 2 people that downloaded v1.01, please download v1.02. That was my bad, sorry.

Fun Fact: GetData/SetData and friends don't work for inventory items at all, so my usual thing of "set parameters, check them later" doesn't work at all. So I just did everything on create rather than OnScriptBegind (didn't even know about OnCreate) and it all worked like magic.
« Last Edit: 20. July 2022, 05:42:59 by sarge945 »
Acknowledged by: Deu sex

6741f3d95c9e8sarge945

6741f3d95ca46
So there's a property in Renderer->Mesh Textures, which from what it looks like in the editor, apparently allows replacing a texture in a mesh with another one?

This would be extremely useful for this mod because currently it's shipping a bunch of copies of the rapier model in order to effectively replace the texture paths within the model files.

@voodoo47 or @ZylonBane have either of you used this property or know of any similar ones? Has it ever worked? I tried putting in all sorts of inputs but never got anything useful out of it.
« Last Edit: 20. July 2022, 09:58:07 by sarge945 »

6741f3d95cbcbDeu sex

6741f3d95cc25
Works very well now thanks! Doesn't randomize in inventory, keeps the right color, and rapier position on the model is accurate now



The fact that it randomizes on assassins rapiers is not an issue as far as I'm concerned, they'll die before they even get the chance to draw two swords anyways hehehe.

This shapes really good as it is, any chance something can be done with the heat particles?
« Last Edit: 21. July 2022, 08:31:35 by Deu sex »

6741f3d95cdcbsarge945

6741f3d95ce24
What is up with your assassin models? The textures on them look completely broken?

I haven't really looked at heat disks, I feel like it might be a little too much effort for an effect that's not likely to look good, but I might have another look at it soon.

For now though, unless voodoo or ZB come up with a really good answer to my question above that lets me completely change how this mod works (for the better), then I basically consider this done for the most part. I might look into heat particles, but I have some other mods I need to get properly tested and released (like my Keypad mod)

Then again, RSD has been done for almost a year now, and that mod's still going.

6741f3d95cfd1voodoo47

6741f3d95d02a
https://thief.fandom.com/wiki/DromEd/Properties/Renderer/Mesh_Textures

so probably not usable for weapons. that assassin texture looks like outdated Secmod.

6741f3d95d14csarge945

6741f3d95d1a6
Thanks for the info. Yeah I tried putting in texture paths, had no luck, so maybe it's for AI's, or maybe not implemented in the SS2 version of the engine, I don't know.

It's a shame actually. If this sort of feature was properly in the engine, it would allow the creation of pretty compatible skin type mods (like having 2-3 hybrid skins chosen randomly), but ah well.

6741f3d95d4cdZylonBane

6741f3d95d5b2
[fucking huge image]
Please refrain from inlining multi-megabyte PNGs.

6741f3d95d69bsarge945

6741f3d95d6f9
System Shock 2 is such a highly detailed, photorealistic gaming experience we need huge images to really soak in all the minute details

6741f3d95dcb4sarge945

6741f3d95dd2b
I finally figured out Squirrel script messaging, so I have added a system to allow objects to force linked rapiers to use a certain colour. This is used by the assassins - they roll a colour themselves, and pass it on to all rapiers they create (including their loot when they die).

The message system in Dark is easy to use, powerful, flexible and consistent. It has also allowed me to make my code significantly simpler, as the assassin can handle themselves and then tell the rapier what to do. I guess, contrary to popular belief, there are SOME free lunches in Dark.

Since the messaging system is all relatively new to me, I have decided to play it safe. I have uploaded a BETA version for now. Once more people have tested it, it should be good to release as a full version.

Deu sexI'd like to make rapier colors compatible with the upcoming rapier assassin minimod for Scary Monsters, but I'm not sure precisely how to do it at the moment.
Fugetaboutit!

It's already done. Just remember that you need to ship Obj/Txt16/bluegrad.gif from secmod as part of the assassin rapier addon for scary monsters, as it's missing in your beta version. If people decide to use your rapiers addon without this mod, the assassin rapiers will have the jorge textures and be purple-ish rather than bright blue as originally intended. Alternatively, this mod ships an altered version of the model that uses a PCX texture instead, so it has the right colour pallette to represent the original rapier colour EXACTLY, so the assassin rapier looks exactly like the regular one. Feel free to include it in your mod too if you wish (in which case you will also need BLUEORIG.PCX).
« Last Edit: 21. July 2022, 14:34:52 by sarge945 »
Acknowledged by: Deu sex

6741f3d95df2cDeu sex

6741f3d95df8a
ZylonBane
damn I forgot to convert it to jpg first, going to do that asap
-> done

6741f3d95e30fDeu sex

6741f3d95e37e
sarge945
Woops, I just started a new run to try RSD's new version, and with your mod, sadly rapiers placed on the maps still have the default properties (tested with the first one you find at Deck 1 near the reactor), changing level makes the min and max brightness good again, but self lit rad stays default/minimal.
It was also a blue one, not sure if I was very unlucky or if something doesn't work here as well.
Note that I'm not using the beta version you just referred to, but the version just before, the one that fixed randomization in inventory at level transition/reload and such.

6741f3d95e44csarge945

6741f3d95e4a8
Strange, that shouldn't be happening.

I will look into it.

6741f3d95e59fsarge945

6741f3d95e606
Okay, I have fixed all the in-game Laser Rapiers in Vanilla and SCP. I will do Secmod versions of the DML when I get around to it.

This has been tested and it works, but not thoroughly. I haven't completed the game or anything with it.
« Last Edit: 23. July 2022, 17:42:01 by sarge945 »

6741f3d95e7ddsarge945

6741f3d95e84c
I might need some DML help for this one, @voodoo47 or someone.

So basically, I have this fixed for vanilla/scp, using DML files for each mission.

I also want to fix it for Secmod, but....well obviously there's a problem because I am already using DMLs for the mission files, and they are specifically fingerprinted against secmod (because for example Secmod removes the laser rapier in eng1).

How would I make DMLs for the Secmod maps and still have the ones for the regular maps? Do I just create alternate versions of the .mis dmls in the dbmods folder?

6741f3d95ea1fvoodoo47

6741f3d95ea7a
kind of depends, if the Secmod maps are close enough to SCP, then you can just add handling for Secmod exclusive objects and as long as SCP does not have the object, nothing bad will happen, the console will throw an error obj not found but that's it. Repairman does this, working for both vanilla and SCP.

or you can create alternate dml set just for Secmod, a separate download but the safest and cleanest way of doing this.

and it is also possible to keep everything in one single package - you will have to check the TFix fmdml folder and use that setup if you don't want to maintain separate packages - basically, Dark can load a dml with a completely custom name from one specific folder (which can contain loads of dmls), and only actually apply it when a matching fingerprint is found).

also, limited access to the internet for the next week, so only can help with stuff stored directly in my memory.

6741f3d95ed1dsarge945

6741f3d95ed7d
Well I found a far more disgusting solution that works. It's the dirtiest hack I could think of, but as long as it works I am happy to use it.

Tell me what you think of this. Let me know if it's likely to blow up in my face.

The problem with using "OnScriptBegin" is that it re-rolls on every map change. I cannot simply prevent it running by using SetData/GetData because, for some strange reason, GetData and SetData don't seem to work for held weapons or inventory items, so the rapier was changing colours between maps. I originally fixed this by changing it to use OnCreate instead, which only runs once. The problem with using "OnCreate" is that it doesn't affect already existing rapiers in the maps, meaning I had to do a bunch of DML edits and replace rapiers via script, which meant compatibility concerns (needing to do manual DMLs for SCP, Secmod etc) as well as being incompatible with mods like SS2-RSD which dynamically remove, swap and replace items via scripts, which would not affect the newly placed rapiers as they have different object IDs, and depending on various factors would swap before other mods could change their properties.

I instead used a horrible hack to fix both problems. I am using OnBeginScript again, which means it does affect pre-placed rapiers in the maps, but as part of OnBeginScript, I forcibly set my own Script Slot to "", effectively removing the script. This prevents OnScriptBegin from running again on map changes and game reloads.

I gave it a quick test and will upload, but will not be removing the old BETA version because I am not entirely happy with this solution, even if it works. I feel it is inherently fragile and could have implications elsewhere.
« Last Edit: 24. July 2022, 03:55:26 by sarge945 »

6741f3d95ee70ZylonBane

6741f3d95eecb
If you want to store persistent state on an object that doesn't rely on script data, you can just use an inapplicable object property.

6741f3d95efbcsarge945

6741f3d95f01f
Fair enough, got any recommendations?

I eventually went with Door Close Sound.

I try to avoid using object properties because I am not yet experienced enough with the editor to know what will have various implications I don't know about.
« Last Edit: 24. July 2022, 05:05:01 by sarge945 »

Your name:
This box must be left blank:

Name the default melee weapon in System Shock 2:
2 Guests are here.
As I merge my body with the biomass, I begin to sense the borders of rapture.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
6741f3d962c77