You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here's the November 2023 newsletter! We've got a ton of fixes and additions to Wiremod that I'm sure will ease your nerves, in case you were concerned about last month's update. Thank you truly to everyone who submitted bug reports and contributed this month!
CPU Resurrection!
CPU users rise up! We've received a lot of contributions from community contributor DerelictDrone for Wire CPUs, who has single-handedly decided to bring CPU back from the dead. Not only have there been fixes for long-standing bugs, but also new additions that makes CPU coding so much better. DerelictDrone stated that his goal was to inspire the community to pitch in, so feel encouraged to help out in any way you can! In his words, "I'm not even like, a seasoned lua developer or nothing so it almost feels like anyone could've done it really." If you haven't checked out the CPU repo and are interested in trying them out, now is the perfect time! With these contributions, we've considered CPU may be ready to come back onto the Workshop, so stay tuned to hear more about that in the coming weeks!
Next Stop: Lambda Complex
Now onto the E2 side, Vurv has once again flipped E2 on its head by revolutionizing how functions work. First off, compile-time functions. Pretty simple: functions defined the normal way are now generated at compile-time. This means they're faster to call and create, but they're no longer able to be overriden. That's okay, however, since this second change is all about that part; lambda functions. If you're unaware, lambdas are functions objects that can be used like and assigned to variables. If you've used string calls before, well, don't, because now we have lambdas, and they're better, but lambdas do a similar thing to string calls. You can use a lambda pretty intuitively just like the old string calls. (Also, check out the new let keyword. It's just like local, but shorter.)
But lambdas are especially cool because they're real functions, not just strings. If you're curious on all that cool stuff you can do with lambdas, well, we'll keep it short here, but you should definitely check out the Syntax, Pull Request, and the Wiki Guide to see just how much better they are.
And to top that all off, we've got plenty of smaller additions and fixes all over Wiremod, which you can find in the full changelog on the Github. Some of you may be particularly enthused to hear that the $ delta operator has been fixed—for real, now. We've also had a rewrite of the number extension which includes some much-needed performance improvements, a new keybind to the E2 editor, getters for holos' angle and position, and a lerp function to replace mix for vectors.
That does it for this month's changelog. Don't forget, the Canary branch gives you early access to these features (and any hitches that may come with them). See you here again hopefully in a month!
Full changelog:
Wiremod
Additions
Added reading and writing offsets to Address Busses
Changes
Modified Workshop Wiremod version to be based off of Github commit hash
Reduced filesize of various materials (Community contribution from Redox)
Fixes
Fixed certain entity force gates could be used on players (Community contribution from Aws0mee)
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Here's the November 2023 newsletter! We've got a ton of fixes and additions to Wiremod that I'm sure will ease your nerves, in case you were concerned about last month's update. Thank you truly to everyone who submitted bug reports and contributed this month!
CPU Resurrection!
CPU users rise up! We've received a lot of contributions from community contributor DerelictDrone for Wire CPUs, who has single-handedly decided to bring CPU back from the dead. Not only have there been fixes for long-standing bugs, but also new additions that makes CPU coding so much better. DerelictDrone stated that his goal was to inspire the community to pitch in, so feel encouraged to help out in any way you can! In his words, "I'm not even like, a seasoned lua developer or nothing so it almost feels like anyone could've done it really." If you haven't checked out the CPU repo and are interested in trying them out, now is the perfect time! With these contributions, we've considered CPU may be ready to come back onto the Workshop, so stay tuned to hear more about that in the coming weeks!
Next Stop: Lambda Complex
Now onto the E2 side, Vurv has once again flipped E2 on its head by revolutionizing how functions work. First off, compile-time functions. Pretty simple: functions defined the normal way are now generated at compile-time. This means they're faster to call and create, but they're no longer able to be overriden. That's okay, however, since this second change is all about that part; lambda functions. If you're unaware, lambdas are functions objects that can be used like and assigned to variables. If you've used string calls before, well, don't, because now we have lambdas, and they're better, but lambdas do a similar thing to string calls. You can use a lambda pretty intuitively just like the old string calls. (Also, check out the new
let
keyword. It's just likelocal
, but shorter.)But lambdas are especially cool because they're real functions, not just strings. If you're curious on all that cool stuff you can do with lambdas, well, we'll keep it short here, but you should definitely check out the Syntax, Pull Request, and the Wiki Guide to see just how much better they are.
And to top that all off, we've got plenty of smaller additions and fixes all over Wiremod, which you can find in the full changelog on the Github. Some of you may be particularly enthused to hear that the
$
delta operator has been fixed—for real, now. We've also had a rewrite of the number extension which includes some much-needed performance improvements, a new keybind to the E2 editor, getters for holos' angle and position, and alerp
function to replacemix
for vectors.That does it for this month's changelog. Don't forget, the Canary branch gives you early access to these features (and any hitches that may come with them). See you here again hopefully in a month!
Full changelog:
Wiremod
Additions
Changes
Fixes
Expression 2
Additions
\x
and\u{}
let
as an alternative tolocal
getExtensions
andgetExtensionStatus
to query for enabled E2 extensions on the serverCTRL + BACKSPACE
to remove leftmost word from the cursor (Community contribution from Smigg-y)holoAng(number)
andholoPos(number)
to get holo angle and position (Community contribution from bjcscat)lerp(vector, vector, number)
to replacemix
_INF
to represent infinityChanges
@strict
@persist
definitions of the same variable name and typetoString(number)
from 15 to 5toString(number, number)
from 25 to 10Fixes
setName
would error despite waiting 1 secondCTRL + L
would error on an empty line (Community contribution from Smigg-y)vector4
andquaternion
typeschanged
on angles wasn't defined properlybreak
in switch statements nested in loops didn't break out of the switch statementegpobject:getVertices
would error on objects without verticesrunOnSpawn
could not be disabledlog2
would errorRemovals
mix(vector, vector, number)
e()
,inf()
, andpi()
CPU
The following have all been community contributions by DerelictDrone, thank you very much!
Additions
zap
andpreserve
to zap or preserve rangesSTERR
andCLERR
instructions to set and clear error codeNewIfDefs
to selectifdef
behaviour between new and oldsilence
to mute compiler warnings in editorLOOPXY
instructionChanges
Fixes
#ifdef
to evaluate properlyAdvDupe2
Changes
Beta Was this translation helpful? Give feedback.
All reactions