665cf4cdb6b0c

665cf4cdb751f
3 Guests are here.
 

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

665cf4cdb7d24Deu sex

665cf4cdb7d8d
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

665cf4cdb8387RoSoDude

665cf4cdb83f3
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.

665cf4cdb8694Deu sex

665cf4cdb870e
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

665cf4cdb8810RoSoDude

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

665cf4cdb8c3dsarge945

665cf4cdb8cbf
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 »

665cf4cdb8e4bsarge945

665cf4cdb8ea3
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.

665cf4cdb8fb5sarge945

665cf4cdb900c
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

665cf4cdb9150sarge945

665cf4cdb920d
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 »

665cf4cdb938dDeu sex

665cf4cdb93ff
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 »

665cf4cdb951esarge945

665cf4cdb9583
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.

665cf4cdb9717voodoo47

665cf4cdb976e
https://thief.fandom.com/wiki/DromEd/Properties/Renderer/Mesh_Textures

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

665cf4cdb984asarge945

665cf4cdb98a7
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.

665cf4cdb9c4dZylonBane

665cf4cdb9cb0
[fucking huge image]
Please refrain from inlining multi-megabyte PNGs.

665cf4cdb9d6esarge945

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

665cf4cdba625sarge945

665cf4cdba695
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

665cf4cdba8e8Deu sex

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

665cf4cdbad0bDeu sex

665cf4cdbad73
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.

665cf4cdbae1esarge945

665cf4cdbae70
Strange, that shouldn't be happening.

I will look into it.

665cf4cdbaf32sarge945

665cf4cdbaf8b
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 »

665cf4cdbb0a0sarge945

665cf4cdbb1a2
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?

665cf4cdbb2f0voodoo47

665cf4cdbb341
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.

665cf4cdbb51bsarge945

665cf4cdbb570
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 »

665cf4cdbb636ZylonBane

665cf4cdbb690
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.

665cf4cdbb755sarge945

665cf4cdbb7ae
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 AI that appears in both System Shock games:
3 Guests are here.
....And here's the thing, it's made of worms.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
665cf4cdbb8fe