665cf428dc2ab

665cf428dccd8
3 Guests are here.
 

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

665cf428dd3e9Deu sex

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

665cf428dd8aeRoSoDude

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

665cf428ddb2fDeu sex

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

665cf428ddc1fRoSoDude

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

665cf428ddea6sarge945

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

665cf428de045sarge945

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

665cf428de190sarge945

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

665cf428de315sarge945

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

665cf428de4baDeu sex

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

665cf428de624sarge945

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

665cf428de7c1voodoo47

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

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

665cf428de8e4sarge945

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

665cf428debd3ZylonBane

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

665cf428deccfsarge945

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

665cf428df24fsarge945

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

665cf428df4e7Deu sex

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

665cf428df882Deu sex

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

665cf428df98asarge945

665cf428df9da
Strange, that shouldn't be happening.

I will look into it.

665cf428dfa97sarge945

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

665cf428dfc03sarge945

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

665cf428dfd83voodoo47

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

665cf428dff9bsarge945

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

665cf428e0091ZylonBane

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

665cf428e01b1sarge945

665cf428e0205
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:

TriOptimum counter-terrorism consultant Rebecca ____ (Fill in the last name):
3 Guests are here.
Whoever fights monsters should see to it that in the process he does not become a monster
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
665cf428e0eec