Closed karl-police closed 10 months ago
I get what you are trying to do, and I have done something like this for other projects, but I really do not want to go with this approach. Most games load in the latest version of Nexus VR Character Model. Stating that it is ok to replace the FindCollidablePartOnRay
module either requires me to lock in this implementation + location, or to accept breaking the games later that were told they can rely on this. This means you should never rely on an undocumented API or module in Nexus VR Character Model. I'd like a different solution for this to work, either with the APIs or something not coupled to Nexus VR Character Model at all, since the API docs start by saying to avoid them if you can.
I get what you are trying to do, and I have done something like this for other projects, but I really do not want to go with this approach. Most games load in the latest version of Nexus VR Character Model. Stating that it is ok to replace the
FindCollidablePartOnRay
module either requires me to lock in this implementation + location, or to accept breaking the games later that were told they can rely on this. This means you should never rely on an undocumented API or module in Nexus VR Character Model. I'd like a different solution for this to work, either with the APIs or something not coupled to Nexus VR Character Model at all, since the API docs start by saying to avoid them if you can.
Can we discuss solutions for it?
Post what you want to present and I'll give my response. The 2 concepts mentioned at the end of my previous response are what I would accept.
Post what you want to present and I'll give my response. The 2 concepts mentioned at the end of my previous response are what I would accept.
Yeah I understand the thing you are talking about, about how it could break games that were ment to rely on it.
AS IN, for the future, cuz currently it's like an anonymous function.
It's good that we have these discussions so we can discuss a better solution.
I only wanted it, to add stuff to a ray ignore thing.
Do you think adding a setting for it, in the configuration is better? But the thing is like, people may wanna add stuff to the rayignore, that eventually doesn't exist yet.
Maybe a callback function, but that just sounds hacky..
A configuration setting would not work because the configuration is serialized to JSON on the server and deserialized on the client.
A configuration setting would not work because the configuration is serialized to JSON on the server and deserialized on the client.
soo, do I like implement an API that scripts just can access, specifically for Ray Ignores? 🤔
@TheNexusAvenger
The problem is. The finding rays part is encapsulated.
We need to like let something in.
I wanted to change
FindCollidablePartOnRay
to filter out rays. Since it is like it's standalone Utility function. I changed it so that another script can require it and then override the behavior to their own liking.Like that one can do that but still keep an updated version of the Module, without having to re-upload it entirely.
Now one can just require it and replace
.FindCollidablePartOnRay =
to override the function.