Skip to content

Conversation

@thegrb93
Copy link
Collaborator

About time for an update

pingu7867 and others added 30 commits October 29, 2023 16:06
load changes for remaining misc features
I think the new icon should remain an easter egg
outsourcing is a better solution, I used the allparts function for only one use case anyway
stop search if continuous search is grabbing
include distance excess warning in breaklock feedback message
fix mutual grab prevention maybe
should have at most one at a time
try to regain focus as needed
replace indent spaces with tabs
legacy mode help popup action (F1)
rework my shortcut preset
localize global variables
safety return
localize a global
more info in bulk select menu (contents and part orders)
it's overwritten later
pingu7867 and others added 27 commits February 3, 2025 19:26
instead of load vmt, get some quick setups to auto add them and set them up in one click. the submenu root is clickable and deploys all submaterials but the sub-options are right clickable
don't send the edited material to SetMaterials (internal dynamic properties) if only one material exists (the submaterial dynamic properties become invisible in that case)

similar option to sending bulk select to proxy multi target, except it's appending, not overwriting existing ones, while preventing duplicate uids/names
option to deselect bulk selected parts if selecting a part without holding bulk select key

I thought about whether it should be default, it's probably less annoying to handle accidental bulk selects and to deselect faster
add "showtime dynamics" to sprites/beams, a series of options to make simple bursts and fades (multiply size or alpha over time) without proxies (it runs faster and would be more accessible to players)

add decay, fractional chance and fire duration related to particle counts

make particle count hardcoded clamp's limit (per emission) adjustable instead, add limiter for max active particles per emitter
sunbeam multiplier: fade factor is multiplicative, with an additional initial "attack" factor (simple linear fade-in to avoid instant flashes while also allowing the fadeout)

darken: fade factor is additive
for stuff like vehicles and NPCs
it also requests a spawnicon rebuild if it doesn't exist
SetEyeang sets your eyeang to lock's world angle
AimToPos sets eyeang to point from eyeang to lock's world pos

and some small revisions for uniformity related to use of cached cvars
allows for smoothing / less aggressive control of the eye angles by doing an iterated lerp to target every frame
add AND gate
fix OR gate, add ignore_inverts

add ratio_timer (allowing reset on hide and biased ratios e.g. different from 50/50)
timer default interval is now 1 (0 caused spam issues, kinda annoying)

add timerx2 (start and end times instead of needing to stack two timerx)
timerx2 can be quickbuilt with a two-number event input e.g. "1 3" will automatically set start time to 1, end time to 3

bidirectional link between arguments and dynamic properties to reflect edits in real time
actually I want this at the end so that events quick access actions (triggers) are the priority

also don't add the options if there's nothing in bulk select
regarding the event arguments dynamic properties sync feature, I didn't account for the fact that properties can be edited from proxies
split AffectSelf into two to distinguish between player owner and root owner (e.g. projectiles)

for backward compatibility, AffectSelf will still act as both by default, but with AlternateAffectSelf the split occurs. you can then use AffectPlayerOwner to affect your player, and AffectSelf to affect the root part owner separately
it won't go off-screen or above the property divider
accordingly, draw a rectangle with a text and arrows to indicate what property you're editing if out of bounds

fix a narrow bug where the pace.PanelExists check interprets a "Container" bodygroup as the property container panel class. it created an error and dropped all further bodygroups
I'll investigate more later
the parsing error was because these strings for the arrows and property key text at 2146 & 2148 weren't being assigned to the variable, free strings breaking syntax
…hidden

and add more details to logic gates-based events' tutorial entries to clarify how to use uids
clamp max HP / max armor changes
allow/disallow extra healthbars counted hits mode
clamp total value of extra healthbars (it accounts for existing ones applied. can't cheat by adding multiple health modifier parts)

health modifier part gets a nicename

and harmonize some more of the other new convars (the settings manager code required a server-realm copy of the descriptions of the cvars to get proper updates)
create this field on part initialization
some actions for base_class: rename, expand/collapse, show/hide, write notes

some are class-specific: hitscan shoot, sound play/stop, command execute, event invert...

some are event-specific: timerx reset, command trigger, flashlight toggle

you can revert to only the base_class actions or ignore the base_class actions and only trigger actions when a specific action exists for the part

the options are in menu bar and node expander
I will rework my damagezone hitparts code with more consideration later
* Improve network error handling
@thegrb93
Copy link
Collaborator Author

Tested it locally and didn't find any issues

@thegrb93 thegrb93 merged commit d1b92ac into master Apr 16, 2025
1 of 2 checks passed
@pingu7867
Copy link
Collaborator

I was still reluctant (there are still some things I want to sort out), but I guess it's alright since merging into master will give more people the opportunity to / force them to encounter whatever problems might've been outstanding and report them so we can fix it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.