What solutions have you tried so far? I tried using Instance.new() to make sure it wasn’t a bad reference to the object I was trying to send. I still got NIL
Hello! I’m a diehard Aero user, but the issue that you’re encountering is not something that is specific to Aero. Right now, you are trying to pass an instance to the server that the client created. That instance does not exist anywhere but the client, meaning it does not exist on the server. When you send an Instance through a Remote of any kind, you aren’t transmitting that Instance, just a hash to identify that Instance. The server receives this hash and looks it up, and since your Instance only exists on the client, the lookup returns nil. Try the same thing but replace Instance.new("Animation") with workspace.Baseplate, or any other thing who’s existence is known by the server, and you will find that it returns the Instance just fine.
That is my mistake, I misunderstood that you were trying to send a client animation to the server.
Why not just send the client the ID of the animation to be played, and then have the client do the heavy lifting of actually creating that animation?
By the way, Aero’s implementation of RemoteEvents and RemoteFunctions does not garble data in any way, the FireClientEvent method literally just fires the given event with the arguments you provide. Anything you notice in regards to the client/server model are not something specific to Aero.
If the value being sent is only visible to the sender then nil will be passed instead of the value. For example, if a server tries to pass a descendant of ServerStorage, the client listening to the event will see nil passed as the value.
local part = Instance.new(“Part”, ServerStorage)
remoteEvent:FireClient(player, part)
In the above code, when the client receives the event it will only see nil passed in and will not have reference to the part.
Calling Instance.new("Animation") on the server without setting its parent to somewhere that it will replicate isn’t going to work because it won’t exist on the client. Sending objects through a remote won’t cause them to replicate.