Tween Service Styles dont seem to really be what they are supposed to be

I have noticed a small thing while making a replicated tween to client. When i set the Enum.EasyingDirection.InOut it doesnt really do the InOut animation. Its more like Out or just different ones. Any idea why? Even if i try different enums (style, direc) its same mostly-.

– video

– script

local ts= game:GetService("TweenService")
local open = false
local busy  = false
local tf = TweenInfo.new(2.3, Enum.EasingStyle.Cubic,Enum.EasingDirection.InOut)

local tigger1 = script.Parent.Trigger.ProximityPrompt
local tigger2 = script.Parent.Trigger2.ProximityPrompt

local closedpos1 = script.Parent.Door1.dp.CFrame
local closedpos2 = script.Parent.door2.dp.CFrame

local openpos1 = script.Parent.Door1.open.CFrame
local openpos2 = script.Parent.door2.open.CFrame
local tween = require(game.ServerScriptService.ModuleScript)
local door1 = script.Parent.Door1.dp
local door2 = script.Parent.door2.dp

local souind = script.Parent.Trigger.Sound

local open1tween = ts:Create(door1,tf, {CFrame = openpos1})
local open2tween = ts:Create(door2,tf, {CFrame = openpos2})

local cloase1 = ts:Create(door1,tf, {CFrame = closedpos1})
local cloase2 = ts:Create(door2,tf, {CFrame = closedpos2})

tigger1.Triggered:Connect(function(plr)
	if busy == false then
		if open == false then
			busy  = true
			local properties = {CFrame = openpos1}
			local tweeinfo = tf
			
			tween.Tween(door1, tweeinfo, properties)
			local properties = {CFrame = openpos2}
			tween.Tween(door2, tweeinfo, properties)
			souind:Play()
			wait(3)
			script.Parent.Open.Value =true
			open = true
			busy  =false
		else
			busy  = true
			local properties = {CFrame = closedpos1}
			local tweeinfo = tf

			tween.Tween(door1, tweeinfo, properties)
			local properties = {CFrame = closedpos2}
			tween.Tween(door2, tweeinfo, properties)
			souind:Play()
			wait(3)
			open = false
			script.Parent.Open.Value = false
			busy  =false
		end
	end
end)
tigger2.Triggered:Connect(function(plr)
	wait(.1)
	if busy == false then
		if open == false then
			busy  = true
			local properties = {CFrame = openpos1}
			local tweeinfo = tf

			tween.Tween(door1, tweeinfo, properties)
			local properties = {CFrame = openpos2}
			tween.Tween(door2, tweeinfo, properties)
			souind:Play()
			wait(3)
			script.Parent.Open.Value =true
			open = true
			busy  =false
		else
			busy  = true
			local properties = {CFrame = closedpos1}
			local tweeinfo = tf

			tween.Tween(door1, tweeinfo, properties)
			local properties = {CFrame = closedpos2}
			tween.Tween(door2, tweeinfo, properties)
			souind:Play()
			wait(3)
			open = false
			script.Parent.Open.Value = false
			busy  =false
		end
	end
end)

local TweenService = game:GetService("TweenService")

local leftFolder = script.Parent.Left
local rightFolder = script.Parent.Right
local triggerPart = script.Parent.Trigger
local proximityPrompt = triggerPart.ProximityPrompt
local sound = triggerPart.Sound

local tweenInfo = TweenInfo.new(2.3, Enum.EasingStyle.Cubic, Enum.EasingDirection.InOut)

local open = false
local tweening = false

proximityPrompt.Triggered:Connect(function()
	if tweening then return end
	tweening = true
	open = not open
	local positionPartName = open and "OpenPosition" or "ClosedPosition"
	local leftTween = TweenService:Create(leftFolder.Main, tweenInfo, {CFrame = leftFolder[positionPartName].CFrame})
	local rightTween = TweenService:Create(rightFolder.Main, tweenInfo, {CFrame = rightFolder[positionPartName].CFrame})

	leftTween:Play()
	rightTween:Play()
	local tweensComplted = 0
	leftTween.Completed:Once(function()
		tweensComplted += 1
		tweening = tweensComplted < 1
	end)
	rightTween.Completed:Once(function()
		tweensComplted += 1
		tweening = tweensComplted < 1
	end)
end)

05mkRQ8OyA
DoorModel.rbxm (7.7 KB)

I tried your tween info and its same what the hell… its literally a door with no parts. just a flat thing. Wonder what is wronk