Game Development Tips & Tricks: Game Architecture

Forums Resources Game Design & Development Game Development Tips & Tricks: Game Architecture

This topic contains 0 replies, has 1 voice, and was last updated by Animation Pagoda Staff Animation Pagoda Staff 2 years, 3 months ago. This post has been viewed 264 times

  • Author
    Posts
  • #4094
    Animation Pagoda Staff
    Animation Pagoda Staff
    Moderator
    • Topic Count 63
    • Replies 0
    • Offline

    Game Development

    Game development is a gradual process that requires building up assets and code over the course of many months and iterations. Features are constantly being tested and revised to work better. Developers gather feedback from testers, executives, and other designers and discuss ways to solve arising problems. Careful planning and organization plays a major part in keeping the production moving forward and on schedule.

    Game developers are primarily responsible for programming the technical aspects of the game within a framework called a game engine. A game engine is the software that compiles all the graphics, audio, textures and other essential components into a playable game.

    TheHappieCat: How Game Engines Work!

    Unity Tutorials

    Unreal Tutorials

    Udacity: A Beginner’s Git and GitHub Tutorial

    Manifesto: Agile vs Waterfall: Comparing project management methods

    Game Design Pipeline

    Game Development Terms


    Mechanics and Game Logic

    Mechanics seem scary to a lot of people since it is associated with programming, but the reality is that good game mechanics depend mostly on using common sense. Game developers should still be able to code, but more importantly they need to understand the subtle nuances of how a game plays. Developers must use their knowledge of other types of games to predict how gamers will react in certain situations, and address any problems that arise when gamers don’t like certain features. Resources will always be limited, so developers work to maximize the payoff of a game with what time, tools, and team they have to work with.

    Logic systems are what drives the game programming to respond to player control inputs. The more complex the game, the more convoluted the programming options can get, and the higher likelihood of creating unwanted bugs. It is recommended to start with simple mechanics for your first game. All game mechanics can technically be planned out using pencil and paper, which makes things much easier to deal with when it comes to the programming. Many developers create boards covered in post-it notes or notecards outlining all the assets, variables, and programming requirements for each level.

    GDC: Magic: the Gathering: Twenty Years, Twenty Lessons Learned

    PAX East 2011: Game Theory, Predicting Player Choices in Game Mechanics Design


    Architecture and Framework

    If you really want to learn the technical details about this subject, Game Architecture by Jason Gregory is the book to read. Game Architecture is essentially the way everything is organized into tiers and nodes that are then linked together in a very complicated manner to produce a game on screen. Unity and Unreal also have a number of introductory tutorials covering the subject.

    The core organization principle is the same across all programming languages, but the exact interface setup differs slightly for every engine. Most studios use in-house engines and build their own unique software and tools, so be prepared to encounter different setups at different companies. It takes practice to become familiar with the way everything is organized at a new job, so flexibility is an important trait for software programmers.

    Smithsonian: The Art of Video Games- Interview with RJ Mical


    U.I./G.U.I

    User Interface design consists of the menu system, inventory, map, health bar, and skill trees. Few people want to do U.I. design because while controls and navigation are undoubtedly important, it isn’t quite as cool as programming giant monsters or robots. For this reason, user interfaces tend to be neglected until all the other parts of the game have been completed. Throwing together crude user interfaces to port to other consoles at the last minute before a product is shipped out generally results in a bad U.I., and lots of complaints from players. Until game development cycles change from the current frantic production model, U.I. is likely to continue being hit or miss depending on where it ranks in the studio’s long list of priorities.


    Combat and Controls

    Being able to run, jump, swim, and crouch are basic things players expect from games. A surprising number of game developers don’t include these because they spent too much time working on other features and then ran out of time. Movement should be the first thing a programmer works on getting right.

    Combat comprises the biggest portion of the gameplay in most games made today, especially first person shooters. The mechanics of combat are obviously crucial to how well the game is received by players. Over-complicated inventory systems, clunky controls, and quick-time event button mashing are things to avoid. Combat should provide a challenge, but a reasonable one. Different players prefer different styles of game and different degrees of difficulty. Combat systems should accommodate for some flexibility in the way the game can be played.

    Many game companies fall into the habit of reusing tried-and-tested formulaic combat systems that are a safe approach, but don’t do anything particularly new or innovative. Hack and slash, run and gun combat can get repetitive. Throwing in unique abilities and items can add to the gameplay experience.

    Mark Brown: The Mechanics of Movement | Game Maker’s Toolkit

    Gameranx: Why Do We GRIND In Video Games?


    A.I.

    Artificial Intelligence is the programming that determines how the game responds to the player’s actions. Despite all the advances in graphics and game engines, A.I. is still fairly difficult to perfect. Most A.I. can be tricked by the player taking advantage of the computer’s tracking limitations, leading to exploitation and some awkward situations where big scary enemies end up attacking a wall instead of the player crouched in a corner slowly chipping away at their health.

    A navmesh lays out the paths that A.I. can traverse. A.I. tend to have an especially difficult time handling multilevel terrain with obstacles like rocks or columns. Navmesh algorithms can involve some rather complicated programming

    Behavior trees are logic paths that determine what set of directions the A.I. will follow in a certain order. Finite State Machines and Goal-Oriented Action Planning are the most commonly used types of logic paths, but there are lots of other variations of A.I.

    Squared Programming: Intro to Game A.I.

    Gameranx: How Does VIDEO GAME AI Work?

    Game Maker’s Toolkit: What Makes Good AI?

    GDMag: AI Architectures: A Culinary Guide

    Gamasutra: Behavior trees for AI: How they work

You must be logged in to reply to this topic.