Apologies, I should have checked the video before uploading, didn't realize it's barely noticeable =/ and I'm fairly certain it isn't the case, as the X and the Y are updating at the same time, and only the Y is bouncing(the X moves perfectly along with the player). I think the problem is that the player's Y is changing in small increments, where as the shadow's Y is changing in larger numbers, I've found if I use the code below it stops the bouncing from occurring, however it bounces when the player is dashing with this same code. I wouldn't mind using this, except it continues moving in that direction(which can be fixed with a simple if statement same with the dashing), the only thing is that if the speed is changed to be something other than the default value(3), then i'd have to write out how it increments depending on each possible speed.
I'mfairly certain the solution would be to get how many pixels the player moves each frame, and tell the shadow to update by that as well, I tried using this code below(which I got from updateMovement in game_CharacterBase), and it works, kinda, except any way I try to apply the math it seems to not read the correct location.
// this is the original
this._realY = Math.max(this._realY - this.distancePerFrame(), this._y);
//here's what I tried.
this.shadowY = Math.min(mapzero + (this.jumpLoc * 48), this.jumpLoc * 48)
this code keeps it from bouncing, but the calculation just is off, >.<; I feel I'm just failing the math at this point, but I'm not entirely sure. Apologies hope this reply made sense, been a long day.