Release Notes for 702

Hey everyone, we have a bit of a shifted release schedule this week, so 702 is out the door! This should be the last release of 2025 – wishing each and every one of you a safe, happy, and warm holiday season.

https://create.roblox.com/docs/release-notes/release-notes-702

38 Likes

Will be be seeing constrained generics in the new Luau type solver soon? Generics are amazing, but sometimes (especially for mathematical functions), just generics aren’t enough:

-->> doesn't work; warns
local function add<addable>(a: addable, b: addable): addable
    return a + b
end

But if we can constrain the values, perhaps something like that could work:

-->> works!
local function add<addable: Vector3 | number>(a: addable, b: addable): addable
    return a + b
end
7 Likes

It would be beneficial for the team to begin providing Luau type solver updates in their own category separate from engine API updates as they are interleaved sporadically across improvements and fixes, because the way it stands it makes it hard to flick through all the release notes when looking specifically for type solver updates.

If you want an even more elegant solution, post a link to the Luau github repo’s release notes for anything Luau-related as that would more clearly define what is engine specific and what is Luau specific - That could be a step forward for allowing the Luau team to make use of github’s issue tracking rather than letting them be lost to time, like this one here: Incorrect warning requiring an optional key to be provided by table returned by function · Issue #521 · luau-lang/luau · GitHub

10 Likes

The team is considering the implementation of generic type constraints. However, I doubt it will happen soon.

2 Likes

They added alpha mode to materialvariants wwww

5 Likes

wheres ExampleService, my game relies on its behavior and has been broken since its removal

1 Like

Love all of the optimizations this update! Much appreciated.

This is confusing though:

Why not just do array<number>? What’s the difference between that and array<<number>>? They seem to do the same thing.

1 Like

image

2 Likes

https://rfcs.luau.org/explicit-type-parameter-instantiation.html

1 Like

image
I can’t believe IAS finally has Touch inputs! Time to say goodbye to UIS.
image
Are there also any plans adding TintMask for MaterialVariants to have similar materials like Material.Brick?
image
Also is this alluding to RunService:BindToSimulation() method?

But good release :+1:

1 Like

I believe the opaque mode will add a opacity map image id type thing uhhhh

Have you considered that the staff members responsible for posting release notes have nothing to do with that update and additionally would have no influence or control over it? You’re just polluting random announcement/release notes posts at this point with spam that achieves nothing.

16 Likes

Ooooh, I assumed that was related to having similar property like in SurfaceAppearance.AlphaMode.
mb, still hope they’ll add something similar in the future.

also roblox where is 4k textures

image

What’s the before and after for this?

local function f()
    return a<b, c>(d)
end

…is valid Luau code today–it is two comparisons.

5 Likes

There hasn’t been any official docs, but it looks like in the API reference, load character is deprecated and is replaced with two different versions: one traling with Async, the other with Blocking.

For example LoadCharacterAsync() and LoadCharacterBlocking().

This was silently rolled, what were the reasons for this change? Are we planning on migration? What’s the deal with this?

Cheers.

1 Like

LoadCharacterBlocking has existed since 2017 and is probably used for something internal seeing as it’s not accessible by normal code.

2 Likes

Nearly all yielding methods have been renamed to add Async() at the end. :LoadCharacterAsync() is equivalent to :LoadCharacter(). An announcement is coming soon, but that is the TL;DR. Old methods are not being removed or broken, just aliased.

LoadCharacterBlocking() exists for internal reasons and is unrelated.

7 Likes

NO WAY! Does this fix the long-standing bug reported here, where particles not in front of an opaque pixel would appear washed out, lacking any color??

This has affected so many accessories & gears for the longest time now (Periastrons, Crescendo/Telamonster, Fiery Horns, Seasonal Fairys, 8-Bit Series, Sparkling angel wings, the dozens of off-sale particle items).

So happy to see this finally being resolved if I’m understanding correctly :pray:


I’m curious if particle items will also have their thumbnails force updated in this fix, as Crescendo still appears white, but the fire is actually red.

3 Likes