Tales of the Rampant Coyote

Adventures in Indie Gaming!

Game Development: Tool Add-Ons and Keeping Up-To-Date

Posted by Rampant Coyote on February 12, 2014

This isn’t really an update on Frayed Knights 2 status. I’m overdue to give you one, I know.  This is more of a general-purpose post about game development, but of course my point of reference is Frayed Knights 2. It naturally looms large in my mind and consumes a good deal of my focus.

One big advantage of using Unity (and there are many) is that there are tons of third-party add-ons for the engine that can make the life of a game developer easier. Nowhere is this more apparent than NGUI. Unity’s built-in UI tools are pretty primitive, but NGUI is a relatively inexpensive add-on that provides an awesome UI library and tools to the Unity editor. While nothing is perfect, it’s pretty sweet. Now – I understand they are working on a whole new set of UI tools for the engine which may make NGUI obsolete soon, which is a whole ‘nother issue. But for now – NGUI is well worth the money and takes Unity to a new level of value as a game engine. And it’s not alone. For me, hitting the Unity Asset Store is a little like being a kid in  candy store.

This is all wonderful stuff. But there are problems…

#1 – Compatibility of the add-ons with each other. This hasn’t proved much of a problem for me, but it is something I have to look out for, especially when dependencies come into play.

#2 – Updates for Unity. Unity changes. Sometimes this causes compatibility issues, normally in the form of warnings rather than errors as some functions get deprecated. Sometimes this requires massive code changes, and for a big project like Frayed Knights, an update to a .0 or .5 version of Unity might take a few hours to get things back up to snuff and working correctly. Sometimes the authors of the assets will update their stuff to keep pace with Unity, but not always. It may mean having to go in and change somebody else’s code.  Or, if you wait long enough, the author may update it himself / herself. Which leads to another problem…

#3 – Updates to the add-ons. Sometimes the add-ons don’t update cleanly, and leave cruft in your directory which will cause compile warnings and errors. Weeding all that out can be a pain. Deleting the directories (assuming the asset installs in a clean, compartmentalized manner) and re-installing from scratch can work, but I’m finding it can also lead to other headaches as the editor goes a little crazy dealing with links that no longer work while you are transitioning. And then – as is the case for me transitioning to a newer version of NGUI – the add-on may change, deprecate functions, or completely modify how they do things, requiring a ton of rework.

It’s the ton of rework in #3 than I’m finding myself in right now, but for now I think it’s worth it.

Eventually – usually when I go beta – I stick a stake in the ground and say “This is the version I’m going with, no more changes.” Unless I really, really need the update, in which case it may necessitate a cascade of changes. That’s not a lot of fun when you are trying to make your game as stable as possible and lower your bug count, but sometimes the reward outweighs the risk.

I don’t want to oversell the problems – they are the right kinds of problems, IMO. They are the problems of using a living, popular, and thriving tool with strong third-party support. The advantages don’t come completely free.

If you are curious, some of the add-ons I am using (besides NGUI) include ProBuilder, ProGrids, “Shuriken Magic”, and a few content packs (which I gues Shuriken Magic counts as, although a lot of it is scripting and behaviors for particle effects). There are some others that I’ve picked up because they looked interesting or were temporarily useful (or they were on sale and looked like they could be used on another project) but may not make it in the final game. The Ultimate Rope Editor is one that I will probably find several uses for, but haven’t needed it yet in the game.

Filed Under: Game Development, Programming - Comments: 4 Comments to Read

  • JMab said,

    I agree the Asset Store is one of the key benefits of using Unity, along with the community, Q&As and the continued rapid development of the editor itself.

    NGUI is excellent, though it has a bit of a learning curve, to get your head around the design. The creator went through a frenzy of updates for a while, after he stopped working for Unity, to bring NGUI more in line with the upcoming UnityGUI and to add new functionality to differentiate it. He’s stated that there will still be a market for NGUI after UnityGUI comes out, but let’s see…

    I slavishly update all of my plugins whenever they are upgraded, always using the delete directory and re-import method, and sometimes have the compatibility issues you describe, as well as hitting regression bugs with the plugin itself. Oh well, that’s the lure of the latest and greatest I guess! I would say that the NGUI creator is very responsive to fixing discovered bugs in his support forum though.

    I’ve bought Shuriken Magic too, as you can tell from this mini-gameplay video!


    I also use Quick Ropes for the collapsing rope bridge here:


    and the swinging block trap here:


    I’m not sure if I’d say I’d recommend it yet… it has a lot of compile warnings and runtime errors about destroying game objects. I want to explore these further with the creator first…

  • JMab said,

    Also, I use the Unity Multipurpose Avatar, which I strongly recommend, despite it being early in it’s maturity cycle. And the UMA Power Tools, for added performance.

    I picked up a copy of Dialoguer, while it was free over the weekend. It is a branching dialogue plugin. Haven’t had a chance to play around wit it yet, but the examples look good…

    One more while I think of it – you might want to get a copy of Particle Scaler (I think that’s the name), to get the most out of Shuriken Magic.

  • Rampant Coyote said,

    Great suggestions! A lot of it is really just down to what I am capable of creating myself, and in how much time. A $20 package that saves me a couple of hours of work might not be worth it, but a $20 package that saves me ten hours of work definitely would be, if I know it’ll do what I want and it won’t be too complicated to add to my setup.

    Thanks for the suggestions. I looked at Dialoguer, but that’s really not what I’m doing with FK dialog, so I didn’t pay it too much attention. I’ll check out Particle Scaler.

  • Shane said,

    This is more for readers rather than Jay, as I’d imagine he is already committed to NGUI this far into the project, but check out Daikon Forge if you need a GUI system.

    I used NGUI for year or so and switched to DK month ago and it is really nice to use. I think NGUI has more features still (not sure, just guessing) so if you have more complicated needs NGUI might be what you need. If not then I would really consider DK, it is very easy to use. Plus its on sale right now.