-
Notifications
You must be signed in to change notification settings - Fork 7
GLBA #26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
GLBA #26
Conversation
|
Cool story, bro. You took my comments out of context after I retracted some of my statements in #25. This crusade you're on is not worth my time. |
|
This PR addresses the comments made in the previous request. I am not on a crusade, I am submitting GLBA to the LBA repo in the interest of the community at large. There is not enough collaboration within this open source project, a system which is nearly universally adopted. |
I see no reason to move the current LBA Scripts into a Below I will outline the overall projects goals:
Once again I don't understand the intention of moving the existing and currently maintained scripts into a legacy folder. I would be perfectly fine updating the ReadMe to point to the current active forks and LBA Adjacent projects like the Flare system that Criss has been working on. Please do not open another PR for this. Wait until Dread has a chance to look at it, and discuss it with other community scripters in one of the Discord servers we all share or privately. There is no point in flooding people's inboxes with notifications, and there was no need to close the old commit if you need to reset your work you can do a hard reset to the latest master commit with |
|
As one final note. I just noticed you updated the community gun script stuff. I would be fine merging that in a Separate PR now, as yeah there's Regex in the filenames that would break things. I'd also be fine with just removing that directory entirely. I won't be around much until Monday or Tuesday. |
This resolves the comments made in PR#25.
Per the unsubstantiated comments in the prior PR, GLBA is not bare-bones, fast, or responsive.
I, however, submit this substantiation for why this is incorrect:
I modified LBA slim by deferring updates that use costly functions such as
llSetPrimitiveParamsFastby using timer events.Per @ThunderRahja's comment,
This is false. Updating primitive properties in every frame is FAR more costly. Simply using a timer instead of doing more work every frame does not "reduce script responsiveness" in a busy or idle sim. Timer events also do not stack up. If you can provide proof of "stacking", please do.
All event execution (and for that matter, every single instruction within the events) happens during a frame. If event execution takes longer than what the scheduler has allocated, the execution state of the script (the stack) is serialized, being deserialized and resuming during the next frame the script is scheduled. So, with a costly instruction, such as
llSetLinkPrimitiveParamsFast, while having less resource needs thanllSetLinkPrimitiveParmas, may not finish executing during a frame.Setting prim text is not something that needs to happen every frame. Per your own comment, the timer event gets delayed when there is resource exhaustion. Good. The sim can defer that event until it is less busy. The collision events (and listen events) still continue to process each frame it is scheduled. If the LBA health goes below zero, it will submit
llDiejust at the same time LBA-Slim would.For these reasons, "adding more events will actually reduce script responsiveness" is incorrect. The only impact will be that the text above the object will not update until 0.15s (or so) later. Best practices in UX design will tell you that 200ms is a good target for "responsiveness." 150ms is below that.
I chose 0.15s as the timer because that is an update roughly every 7 frames (if there have been any actual hits). If your issue is with my choice of every 7 frames, please offer a different option.