Particle goes wrong way

the particles are pointing to the wrong way(it should be infront of the player/ the way player’s facing), so I made Part when cloned, the particles will point in the direction the player is facing (I used lookvector).


what I expected (the direction the particle is facing is the same as the direction the player is facing) only works when I face left, not front, back, and right
gambar

in reality (not facing the direction the player is facing, the particle should be infront of the player not to the right)


Here’s the script I used to emit the particles, and set the lookvector

local humanoidRootPart = character:FindFirstChild(“HumanoidRootPart”) if not humanoidRootPart then return end – Calculating the position in front of the player local forwardDirection = humanoidRootPart.CFrame.LookVector local newPosition = humanoidRootPart.Position + (forwardDirection * 7) – 3 poles in the front
local rotatePart = humanoidRootPart.CFrame.LookVector local newRotate = humanoidRootPart.Orientation + (rotatePart) – Create part local part = game.ServerStorage.emit_for_later.emitted_tool:Clone() part.Position = newPosition part.Orientation = newRotate part. Parent = workspace – Weld part to humanoidroot local weld = Instance.new(“WeldConstraint”) weld.Parent = part weld.Part0 = part weld.Part1 = humanoidRootPart – Emit particles local emit1 = part.emit1 local emit2 = part.emit2 local emit3 = part.emit3 emit1:Emit(1) emit2: Emit

note: the part works and facing infront of the player’s but not with particle help meh? none has solved this :frowning:

1 Like

Are you using attachments?
It is very useful in these type of situations

i already did and its still not working(still not facing forward)

Here’s some code that could help you.
It creates a part and welds it to the Characters HumanoidRootPart, rotated -90 so it’s always facing front and adds a ParticleEmitter to that part. Particles are always in front of the character.

local humanoidRootPart = Character:FindFirstChild("HumanoidRootPart") if not humanoidRootPart then return end 
local Emitter=Instance.new("Part")
Emitter.Position=humanoidRootPart.Position
Emitter.Orientation=humanoidRootPart.Orientation+Vector3.new(-90, 0, 0)
Emitter.Size=Vector3.new(1,1,1)
Emitter.Transparency=1
local Weld=Instance.new("WeldConstraint")
Weld.Part0=humanoidRootPart
Weld.Part1=Emitter
Weld.Parent=Emitter
Emitter.Parent=humanoidRootPart
local Particle=Instance.new("ParticleEmitter")
Particle.Parent=Emitter

nope still not working maam
i change from using cloned to instance ,every rotation and changed the script


also im using cloning not instance

ParticleEmitters always point upward to match CurrentCamera.CFrame.UpVector. Don’t use a ParticleEmitter for this usage case, and instead go for SurfaceGui and put it on the floor in front of the character.
Create an ImageLabel inside of it and set the image to the arrow asset.

I can’t use Surface gui for the effect because We already use the emot Particle system for emit particles, is there any other solution? Thanks for the advice

No. There’s no way to change the rotation of particles or even a BillboardGui. If you want your desired effect, you must use SurfaceGui.

But how can other games but I can’t, most games use it using particles instead of surfacegui, the problem with particles is only in emit1 but not other emit particles
So true This problem cannot be solved

This is also beyond reason, particles do not rotate randomly when in Edit mode(rate 1) but rotate randomly when playing the game(emit 1)