This post is a collection of best practices, tools, and recommendations that may be useful to our team.

Code Review

Refer to our guidelines for code reviews in our team here: http://wartothecore.com/2016/09/teamwork-code-reviews/

For general CR advice, see this: https://smartbear.com/learn/code-review/best-practices-for-peer-code-review/

Unity

This article have some interesting Unity best practices that can really come in handy: http://devmag.org.za/2012/07/12/50-tips-for-working-with-unity-best-practices/

Article about UI optimization: https://create.unity3d.com/Unity-UI-optimization-tips.Be sure to check the link to the 2016 updates to that article.

Common Unity pitfalls: https://unity3d.com/how-to/unity-common-mistakes-to-avoid

Azure

Azure tables design guidelines: https://docs.microsoft.com/en-us/azure/storage/storage-table-design-guide

Tools

There is a difference between getting things done and getting them done right quickly. Learning the right skills will help you get it done right and the right tools will help you cut down the time you spend getting there. Here are a few picks.

  • [Essential] Resharper. Any serious developer needs one of the three main productivity plugins. This is the one we recommend. Resharper makes you about 40% more efficient and cuts down development time in our project by more than a half.
  • [Recommended] OzCode. If you find you spend a significant portion of your time debugging, then this is the tool you need to consider. It makes debugging much easier.
  • [Convenient] Visual SVN. This little tool makes it really easy to work with SVN right from VS and helps you avoid forgetting to check in files.

Reporting Problems/Bugs/Exceptions

  • If you ever hit a bug that’s not your own, report it immediately in the public channels. If nobody acknowledges the task, then go ahead and create a bug on our issue tracker.
  • Whenver you report an error whether in the channels or on the issue tracker, ALWAYS provide the full stack trace if you have one. If you don’t have the direct stack trace, provide the relevant logs as attachements.

Important Software Engineering Topics

There are certain software engineering skills that make you a better software engineer. Here are some suggested topics that are relevant to us.

  • C# and .NET
  • Design Patterns
  • SOLID principles
  • Writing testable code
    • Dependency Injection. Read this for a good introduction to dependency injection using Microsoft Unity (Which is not the same as Unity 3D).

Suggested Readings

  • Clean Code
  • Head First Object-Oriented Analysis and Design
  • The Art of Unit Testing (There’s an old online copy hosted here)
  • Design Patterns by the Gang of Four
  • Game Programming Gems series
  • Best Practices in Asynchronous Programming article.
  • The Art of Game Design : A book of lenses.
  • Other game design reading list.

Videos

Comments

comments

Author Lotus
Published
Views 154
War to the Core

Recent Comments

Latest Updates

  • Solo missions

    Solo missions

    Hey guys, here are the specifics of the first two solo missions, those are sketches of the first two missions. First mission: A harvester is placed near the ship, generating supply caches. The player collects energy caches and escapes a ring of mines. No supply links allowed. The sensor component is introduced by one of […]Read More »
  • We made it to the Top 100!

    We made it to the Top 100!

    We are stoked that we managed to land on IndieDB’s Indie of the Year’s Top 100 list! We are also the only MOBA that made it to the list! The support we got from the community was overwhelming, and we would like to thank each and every person that helped us get this far. Whether […]Read More »
  • Full Campaign Series, Version 3

    Full Campaign Series, Version 3

    Characters: Daniel Blaze. Protagonist, player-character. Headstrong and rebellious. Ambiguous loyalty to the Shepherd Coalition. Joseph Blaze. Father of Daniel Blaze. Commander of the Leviathan mothership until executed for treason by the Shepherd Coalition. Sylvia. AI assistant. Provides intel, advice, mission objectives. Captain Zhukov. Cyborg commander assigned to hunt down player during the first several missions. […]Read More »
  • Story: Episode 1, Version 2

    Story: Episode 1, Version 2

    The Blaze family had long been controversial. They supported the Shepherds, but continually frustrated the Orthodox elements of their faction. Joseph Blaze was especially known for his tolerance of the weakling families that used genetic engineering to alleviate the sicknesses that exposure to the Earth’s surface had inflicted on them. Such tensions between orthodoxy and […]Read More »
  • Story: Episode 1

    Story: Episode 1

    Location: The Pole Base. When Daniel Blaze passed his final test and became the primary candidate to pilot the Leviathan, the Shepherds’ newest ship, he caused a quite a stir. Not because he’s the youngest member of the Pole fleet to be nominated for admiralship, the faction had already made peace with this as a […]Read More »
Skip to toolbar