🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

Challenge #2: What tools can you not live without?

Started by
28 comments, last by Secretmapper 10 years, 7 months ago

CHALLENGE #3 WILL BE POSTED ON THURSDAY.. Please continue to submit any resources you think are useful. For everyone browsing this, remember to upvote your favorites!

Welcome to the second community writing challenge! Here's how it's going to work for the month of June. Each day or so I'm going to post a new community challenge topic. All you need to do is provide a response to it according to the supplied rules. The winning response according to the MOST upvotes at the end of the month will receive a month of GDNet+.

We are looking to collectively as a community build a list to as many valuable resources on the posted challenge as possible.

Some rules for every challenge:

1. You do NOT need to supply a complete answer or topic reference, but it may help garner more upvotes

2. All descriptions must be written by you with your own justifications for inclusion of the resource

CHALLENGE #2: What tools can you not live without?

Description: We all have our collection of dev tools that we absolutely could not get by without. These are the tools we use for programming, graphics, audio, level design, etc. Let's start creating a list of all the best developer tools that are available for public download so others may benefit from your experience.

Rules:

  1. Post one or more links to great resources with the following: title, url, author, and a brief description of what the tool is
  2. Anything you post is fair game to be included in an article without attribution - we are just looking to create awesome resource pages here of the best stuff
  3. Any site online is fair game as long as you link to the final tool destination (ie. don't link to any other resource mega list pages)
  4. You may update your original responses as many times as you like!
Advertisement

I'm going to kick this off with at least one tool you may not have heard of.. which is absolutely awesome for programmers since it allows you to easily create animations from a single graphic that you cut into pieces.

Spine: 2D Skeletal Animation for Games

Spine replaces traditional raster animation in games, providing smoother animations that are easier to produce. Animations can be created without needing more art and are so tiny that games can make extensive use of them.

Notepad++ - In really every project, small or large, java/lua/c++ whatever, you need a competent text editor, all the time, so notepad++ is a really powerful, open source editor.

Skype

Whilst not directly a dev tool. I find that the need for communication is incredibly important to the development of projects when the various team members are geographically scattered. Written communication can at times have the unfortunate reality of being misinterpreted (or in some cases presented poorly) and the ability to conjoin verbal communication with that of written documentation between team members enables a more efficient and effective way of keeping everyone in synch with each other. Admittedly there are a number of voice communication systems out there but Skype does offer the ability to call telephone numbers which I find to most useful. On the downside teleconferencing with multiple parties can be a bandwidth hog at times. Alternative voice chat systems include Ventrilo, Mumble, TeamSpeak (I should note that I listed primarily gaming oriented voice coms here as they still serve the purpose and function and it has been my experience that many indie game developers have a familiarity with one or more of these (doubtless due to the many many hours of playing games "for research purposes!"))

The following link is an old thread in Gamedev which lists quite a few communication systems as utilised by different members on this site.

Team Communication Software

QtCreator is my IDE of choice. Though it is built on the Qt api, and comes packaged with extra support for it, your code projects don't have to use Qt.

I've recently become a user of Trello for organizing my projects. DropBox also, for file syncing.

And I use Mercurial for my source control, with Bitbucket as my free remote repository.

When first looking at new code, I tend to open it using http://www.scitools.com/ Understand C++. The tool could be classified as DOxygen on steroids in realtime, as it builds dependency graphs, used-by, etc sorts of information. It provides a UI which allows you to click through the different classes, who and how they are used, run queries on the information etc. Additional items it supplies are various metrics such as coupling, standard compliance and other useful items. There are other products which do the same things but I've been using this one since 1998 and it just keeps getting better. It is the only tool I know of which was able to deal with the 2.7 million lines of code on my last project, all the others failed to either complete the processing or died horribly at some point.

On Windows, I constantly use cygwin, which gives you the common *nix applications for Windows. This includes text tools like grep and tail as well as development tools like gcc, clang, make, git, svn, and so on.
Anything that cares about performance is going to need a good profiler eventually. Unfortunately, good profilers are actually not all that easy to find unless you know where to dig. I find myself continually coming back to Very Sleepy and (to a lesser extent) Luke Stackwalker for profiling on Windows. Both tools are free and easy to use.

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

Sublime Text ! A fantastic and light weight text editor that works on multiple platforms. Great for web development ;)

BitTorrent Sync, a p2p file sharing tool which makes for a really lightweight way of sharing non-textual game resources between team members without needing to resort to a 3rd party service like dropbox, or stuffing binary resources into an SCM like git.

Joel Martinez
http://codecube.net
[twitter]joelmartinez[/twitter]

Resharper for C# and IntelliJ for Java. And of course a good TDD-friendly unit testing library.

I needs me refactoring tools, since refactoring is one of the most important steps in writing code. It makes it much easier to evolve your design cleanly when your tools let you refactor efficiently, and that's very important for any programmer who wants to say they take pride in their craft. It's so difficult to go back after being able to just break a function out into an injected dependency by just right clicking on the function and clicking "Extract Class" biggrin.png

Hurry up JetBrains and bring your refactoring voodoo magic to C++ please.

This topic is closed to new replies.

Advertisement