Alright, just played this for the Secret Santa and I’ve got a lot of thoughts about it. I feel like I should just get this out of the way first, though: on the whole, I didn’t enjoy playing Byte Ray. I feel really bad saying that because I don’t know the limitations or difficulties of the platform that you made the game on, and I’m guessing that to put together the gameplay that you did (in a couple of weeks, no less) was probably a pretty big accomplishment. But there were two major issues – very slow play speed and player-unfriendly design – that came together to make the experience frustrating for me, rather than fun.
First, the speed. Everything in the game, including the short animations at the beginning, took a long time to play out. I’d estimate the game was running at about 3 or 4 frames per second. I don’t know whether that’s a necessary evil of the platform you made the game on, or whether the game speed will scale with my computer’s performance (I’m using a middle-of-the-line PC), but as a baseline, the fastest I could get from the beginning of the level to the narrow passage between the two giant walls was probably 30-40 seconds. I would aim for a pace of about 10 seconds if the player is going as fast as he can possibly go.
Such a slow pace took away from the “action feel” of the game. But just as importantly, it also made it feel far more punishing to be sent back to the beginning of the level upon dying. I already know how to navigate that first set of obstacles and I’ve already done so successfully and there’s nothing interesting to do there besides hit the spacebar three times to jump – so please imagine my frustration when, on my twelfth death later on in the stage, I’m sent back to the start to sit there for 40 seconds and hit spacebar thrice
for the thirteenth time.
And that ties in to what I think is the even bigger problem – player-unfriendly design. You say that Byte Ray is a “challenging game” – but I would call it “punishing”. Every time the player does something slightly wrong, including just touching an edge, you “kill” the player, take away all of their progress (unless they’ve reached the one checkpoint, I guess), and tell them “do everything over, even if you don’t want to”. Now, I spent about 35 minutes playing the game, which I think was about 15 or 20 attempts, and I only made it about a quarter of the way through the stage. Had I not been forced to restart every time I touched the edge of a wall, I could have reached this point within a few minutes, and I would have constantly been seeing new and interesting obstacles. It would have been a relatively fun experience, even with the slow speed. But I
was forced to restart every time, and each time it just made me feel more and more despondent. I just cannot emphasize enough how much this damaged my impression of Byte Ray.
It’s a real shame, too, because the few obstacles I was able to see were well-designed and cleverly-placed. They require the player to kind of combine different mechanics to figure out a way around them. For example, the place where you have to jump over a cube, then jump again over a gap. A short ways after the gap are three poles standing next to each other and you have to go around them. What’s really cool is that the player sees the poles a short ways away and thinks (“oh boy, I have to slow down or I’ll crash into them”). But at the same time, you need enough speed to make it over the gap, or you’ll fall into the void. You need to speed up to make the jump, then try to slow down as quickly as possible and get around the obstacle. That’s great design right there. The part where you have to quickly jump left and right between obstacle-laden balance beams really had me saying “oh snap!” and shines as another example of good obstacle design.
But my joy would once again turn to despair when I’d, for example, hit the very edge of the leftmost pole, watch my “character” grind to a halt, and shake my head as I was placed right back at the start of the level. Why not use a “damage bar” instead (and have the character recoil off of hits into walls and obstacles rather than halt entirely), and allow the player to continue along until they’ve taken too much damage? This would allow for a sense of mastery as you navigate the early parts of a level taking less and less damage as you get better, without feeling too punitive. Or better yet, go with the “Marble Madness” solution where the level is timed, and “dying” simply causes you to lose several seconds before continuing right where you left off (with the level only restarting when time runs out)? This would leave the player with the positive notion of “I made it this far, but if I had done X and Y better, I could have definitely completed it.”
One more thing I have to point out as player-unfriendly: the complete lack of in-game instructions. A few minutes after I started playing I did find that there was a read-me file that contained not only the instructions but the background story. Not everyone is going to read your read-me file, though, because most modern games don’t require you to. And even people that do might have trouble remembering what they read. Putting this stuff only in the manual is a very 1990s way of doing things, and even games that make homage to old-school 90s action try to be more player-friendly in how they get information across. In my first few attempts, I had no idea that Up/Down (or W/S) did anything, I didn’t know what the gauge at the bottom of the screen was, and once I intentionally banged into a wall to slow down my momentum. Imagine my surprise when I found out that was instadeath! Even if you don’t want to show all the instructions in-game, saying something like “Don’t Stop!” or labeling the meter “Brake Limit” would go a long way toward easing the player into the game.
The presentation was pretty nice. I really, really loved the music. It fit the theme of the game well. The graphics were nice in a clean, futuristic way, and I like that you used a lot of different colors. The only complaint I have is the black, horizontal edge that could often be seen at the bottom of the stage (way below the horizon) – it made me feel like I was in some weird cube rather than in the infinite deep space that I think you wanted to convey. If you have some way to blur out that edge, I think it would be a smart idea to do so.
For some reason, I couldn’t use the “up” movement, the “left” (or “right”) movement, and the “jump” movement all together near edges. When I was holding up and left (or right) and tried to jump, the ball would roll a bit and then fall, without ever jumping. When I held only one arrow and jump, it jumped fine. When I held both arrows and jumped but was
not near an edge, it also jumped fine.
I liked that you mapped the controls in a similar way to RPG Maker’s. That was a smart design decision since a lot of people playing your game through the contest will be familiar with RPG Maker’s controls.
Finally, when I tried to exit the game, or the config tool, using the X at the top-right of the window, it told me “ACCESS VIOLATION”. I was still able to close it with no other apparent ill-effects.
Overall, Byte Ray felt more like a school project for a course on using a game engine, than it felt like an actual game. A lot of game design decisions were poorly made and there’s not a lot to divert the player during the parts where nothing is happening. I don’t think you should feel bad in any way about making this; I can appreciate what you were going for, and while I don’t know much about the engine you used, I have a feeling what you’ve done is a remarkable technical achievement, especially if this is one of your early tries with the engine. But if you plan to make it into a full game for the purpose of people enjoying it, there are three things I’d highly recommend, in order of importance:
- Don’t make the player restart the level every time they hit an obstacle. A “damage” system, a timer system (probably the best option), or extremely frequent checkpoints are all ways you could get around this.
- Speed the game and the action up, if possible, to about three times the current speed.
- Add instructions to the game instead of just the manual. A tutorial level would be great if you plan on having multiple levels (I think the game is just one level right now, so a tutorial probably isn’t necessary; just some in-game explanation). Adding a bit of narrative into the game would be nice too, instead of having it only in the manual.