Redo from scratch of CastleVaniaLikeP2Engine