I do have a few comments!
1) I know the game is called
Agitation Agitated, but there are good ways and bad ways to accomplish this. The room shown below is an example of one of the bad ways. Here, the player knows exactly what to do, but it simply takes a long time to do it. In other words, one can very quickly catch on to the fact that they ought to check every ground-level wall in order to see if it is movable, so when the player sees the objects in this room, it's a trivial task to collect them.
2) On the "value" of the objects: why is the player collecting these? Currently, the only reward for obtaining the objects is to advance to the next room. My advice is to give the player a really strong incentive to collect these. As an example, make the doors normally unreachable (perhaps too high to jump to, or across a chasm that is too long for the player to jump across) and have one of the objects offer the player a higher, longer jump. This changes the game from being a chore (i.e., collect objects, then move on to another level and collect more objects) to one where the player values the objects they pick up.
3) Remember that a very large aspect of a good game is scarcity. At every moment, the player ought to see something in the game that they currently can't have. Then, when new possibilities are introduced in the game, the player will enjoy them more. Further, you may decide to make the players make painful choices, like choosing between a jet pack or a higher jump. Of course, make it so that either choice will allow the player to finish the level, but make every choice show the player what they're missing by choosing! A good example of this is in the campaign of Starcraft II: Heart of the Swarm. In this campaign, each level offers the player a choice between two or three very interesting power-ups. The player locks in this choice, and as they play the next level, they constantly have to wonder if they made the "right" choice. This is true agitation, and I think that your game could benefit greatly from this.
4) Bugs--I noticed a few. The first is that if you press ESC while in a room (or view) other than the one you started in, your splash screen will not show. This leads me to believe that your rooms are very large, and when the player exits the current view, the view shifts to the new portion of the room. I imagine your code looks something like this:
draw_text('Press Q to quit etc...');
Here, you might consider adding view_xview to each x-argument and view_yview to each y-argument. This will fix it.
Another bug: Blocks can be pushed into other blocks. This is undesirable from the player's standpoint. Also, the player's jumping can sometimes cause the player to get stuck in the corner of an overhead block.
That's about all I have for you. Good work so far! You've gotten the basic mechanics of the game down, and now it's time to introduce some fun mechanics. Brainstorm and see what additions make you enjoy running through the levels and collecting the objects!
- 2% Milk
Edited by 2% Milk, 17 March 2016 - 06:11 AM.