This question's been bugging me for a long time. I've always wondered how game developers were solving certain problems or situations that are quite common in certain genres.
For example, how would one implement the quests of a typical role-playing game (e.g. BG or TES)? Or how would you implement weapons with multiple stacking effects in a first-person shooter (e.g. the Shrink-gun or Freezer from DN3D)? How would you implement multiple choice options with a possibly intricate decision tree leading to several different outcomes (e.g. the mission trees in WC)?
Design Patterns come in four different categories: Creational, Structural, Behavioral, and Concurrency [4]. Creational and Behavioral Patterns are used in Reversi++. Creational patterns are ones that manage the creation of instances and what implementation is created.
Pattern methods provide semi-formal tools for problem domains in which rigorously formal methods cannot easily be applied, or are simply not available or even conceivable. Patterns are traditionally expressions of problem-oriented thinking.
MVC describes how to organize your code in such a way that is easy to maintain, and helps in improving code readability. Without structure, your code can get messy very easily and look like “spaghetti code”. To avoid this, developers should separate the game logic from the display code.
The spiral model is for sure one of the best technique that you can use to develop games. There are others techniques that you can use, but the spiral is for sure the best choice if you are new to the game development.
Visitor.
Observer.
Command.
Proxy (for network games).
Just about any of the creational patterns.
Think, "scenegraph."
Games aren't really that different from other types of apps, at least not to the extent that people think they are. I say this having been a professional game developer as well as a professional non-game developer :)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With