TweenReloaded - A Better Tweening Solution for Roblox!

:tada: TweenReloaded v1.1.0 – A Better Tweening Solution for Roblox!

Introducing TweenReloaded v1.1.0, an updated version of the Roblox TweenService, now with smoother transitions, flexible functions, and optimized performance for mobile devices! It’s designed to work seamlessly across all framerates, providing smoother animations for your game.

:star2: Features:

  • Enhanced smoothing: Improved easing functions for more fluid animations.
  • Optimized for mobile: Built with performance in mind to run efficiently on all devices.
  • Supports all framerates: Whether your game runs at 30 or 60 FPS, TweenReloaded ensures smooth transitions every time.
  • Flexible value interpolation: Tween various types of values including Color3, Vector3, UDim2, and more.
  • Custom easing styles: Utilize built-in and custom easing styles for tailored animation effects.

:medal_sports: Credits:

  • Developed entirely by @xLoads_x (Roblox), @load0 (Discord), and @seb1noo (Instagram).

:bulb: This project was fully self-developed, and no external contributions were involved.


:date: Version v1.1.0 released on 19th September 2024.

:link: Get the package here:
TweenReloaded v1.1.0 Package


Feel free to try it out, and let me know if you have any feedback or suggestions!


Tutorial:

  1. Create a Local Script or Server Script: Place it where you want in your game.
  2. Require TweenReloaded: Load the TweenReloaded module.
    local TweenReloaded = require(game.ReplicatedStorage.TweenReloaded)
    
  3. Create Tween Info: Define the tweening parameters.
    local Info = TweenReloaded.NewInfo(
        0.3, -- Time that the tween will take
        Enum.EasingStyle.Quad, -- Easing style
        0, -- Repeat count (0 for playing animation 1 time)
        false -- Reversed
    )
    
  4. Create Animation Element: Create the tween animation.
    local Tween = TweenReloaded.New(script.Parent.ScreenGui.Frame, Info, {["Size"]=UDim2.new(0, 500,0, 500)})
    
  5. Control the Tween: Use the following functions to control the tween.
    Tween:Play() -- Plays the tween
    Tween:Stop() -- Stops the tween
    Tween:Pause() -- Pauses the tween
    Tween:Resume() -- Resumes the tween after pausing.
    
  6. (Optional) Check if the Tween Finished: Monitor when the tween ends.
    Tween.OnEnd:Connect(function()
        print("Tween Ended!")
    end)
    
  7. Tweening Arbitrary Values: You can use TweenReloaded.TweenValue to tween any value type.
    local tweenInfo = TweenReloaded.NewInfo(1, Enum.EasingStyle.Quad, 0, false)
    local tween = TweenReloaded.TweenValue(startValue, endValue, tweenInfo)
    tween.OnValueUpdated:Connect(function(value)
        print(value) -- Update your value
    end)
    tween:Play()
    
  8. Tweening Value Objects: Tween the value of objects directly.
    local tweenInfo = TweenReloaded.NewInfo(0.5, Enum.EasingStyle.Linear, 0, false)
    local valueObject = script.Parent.SomeValueObject
    local tween = TweenReloaded.TweenValueObject(valueObject, tweenInfo, 100) -- Target value
    tween.OnValueUpdated:Connect(function(value)
        print(value) -- Updated value of ValueObject
    end)
    tween:Play()
    

Thank you for reading! Please provide feedback or request updates at this post. Your support is appreciated!


1 Like

This is certainly interesting! Though, I’m wondering what the key differences between TweenReloaded and TweenService are?

Also, I’m not able to get the model :confused:

1 Like

Hi thank you for reporting the issue of not being able to get the model.

The differences between TweenReloaded (TR) and TweenService (TS) are:

  • No FPS Tween Locking → TR is Working on the logic, that the FPS (Frames Per Second) dont make role in. That means, TR tries to do smooth Tweens on every possible Frame rate. So FPS will not make the Tween lag (atleast i got this result from testing it). Also the ping has this same explanation.
  • TR has Enhanced Smoothing → Improved Functions for more animations, and smoother animations.
  • Easy Info Setup → By removing some configuration that TS have in TweenInfo, the TR makes unique easy setup configuration. It will still make the Smooth Tweening.

Many more features will be added in future, when I decide to update this package.

hmm, I’m confused.
What do you mean by smooth animations on any framerate? TweenService already does the math for you so the tweens run properly no matter the framerate.
TweenService is also optimized for any device.
I also don’t know what “enhanced smoothing” means or how can you make tweens more smooth.

1 Like

yeah im also confused, i mean no offense, i could never do this, but im not sure how its better than tweenService if it already performs all the math and calculations


I cannot get the package.

Now you should be able to get model also with the updated things.

1 Like

In todays update i updated and added things what I think are not in normal TweenService.
Try it out and give me feedback, thank you!

Hi I updated the package a little bit and now you should be able to get the model.

what’s the difference between TweenReloaded and BoatBomber’s tween module BoatTween?

I didnt know that thing like this already exists. And as I read thru,

You dont need to :Destroy() tweens after completion, and also TweenReloaded (TR) doesnt have event Stopped, since when the Tween is stopped, it will call event “OnEnd”. So i think that TR is better for starting ones or for people who knows how to work with TweenService (TS, Original) and some features are missing in that TS, that means they can use most of the missing features in TR (as I will try to update it what community needs or is missing in TweenService).

1 Like

Thanks for fixing that! I’ll be sure to check it out.

1 Like