For mobile games, try MIT App Inventor or Game Salad For browser games, try Scratch, or the more serious version Snap! intended as an introductory programming tool For adventure games, use Visionaire. If you want a drag-and-drop program with the option to delve into coding as well, try the free version of GameMaker
For mobile games: ProjectAnarchy For 3D games on any platform: Unity For more advanced coders: LWJGL (based in Java), SFML (based in C++)
ActionScript will let you make a Flash-based engine. This is a good place to start for intermediate programmers. Java is relatively simple to learn. You’ll need a Java Development Kit (JDK), plus Eclipse or another Integrated Development Environment (IDE) for Java. If you’re not sure how to get started. If you already know a programming language (especially a C language or Python), look for an IDE for that language. It should include a compiler and the ability to easily work on graphics, audio, and other code in the same project.
A client-side server, which interprets user input and processes the result. Make the input system responding correctly before you put serious work into graphics and gameplay. (Try researching “action listeners” if you’re stuck. ) AI for other characters, so they react to the user’s actions. For a simpler project, just have the characters move and act in a set path. Ability to render graphics (put together and send instructions to the graphics card). A game loop that runs constantly while the game is executed. This should take user input, process it, process other game logic (such as enemy movement, background animation, and triggered events), calculate what needs to be drawn (displayed on screen), and send the information to the graphics card. Run this at least 30 times per second (30 fps) if your system can handle it.
Pare this down to something way, way simpler than your original idea. A small prototype that explores how your game works and gives a couple levels to play is an excellent start. Once it’s finished, you can use it as a foundation to expand into a full game, or incorporate what you learned into a new project.
There are many places to find free or cheap art assets online. Try this list at makeschool. com. Hiring an artist will make a big difference. If you can’t afford to, gather the assets yourself and show the result to artistic friends or post it to game development or art forums online for advice.
Use light sources and item drops to guide the player to the next spot in the area. Use shadows to discourage players from entering dead-ends or awkward paths, and use enemies for both purposes (depending on how the game teaches you to bypass enemies). A well-designed area makes the player feel like he is making his own decisions or exploring, but guides him along the most straightforward route using subtle clues.
Players are not trained to offer feedback from a developer’s perspective. If players dislike an aspect of the game, there’s usually something about it that could be improved. . . but the specific suggestions the players make are often not useful. Ask them very specific questions to discover the exact features that bother them.