Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

Since graphic designers/end users are not programmers, what are the technique to allow them to add new tasks or change application logic in a game? what are the end user tools? I want some popular examples.

share|improve this question
Hello, we ask that questions explicitly looking for a list of suggestions be made Community Wiki as a minimum. While this can be answered, (And has by @Jason), if you are looking for a list please mark it as CW. Relevant Meta Thread: meta.gamedev.stackexchange.com/questions/139/… –  Noctrine Aug 17 '10 at 18:58
add comment

2 Answers

Various scripting languages, both text-based (ones with simple syntax - LUA for example - can be more accessible for a non-programmer), and graphical (Unreal, for example, is very GUI oriented).

Alternatively I've seen people just expose tweakable stuff through an editable text file (sometimes a CSV formatted file usable in Excel), if you expose the right stuff you can give designers fairly powerful abilities to change the game, without them having to actually alter the logic.

Basically the tools I've seen being used are:

  • Notepad, or other text editor.
  • Excel.
  • Some ad-hoc graphical interface to a scripting language, sometimes in-game.
share|improve this answer
Giving non-programmers Lua still requires them to program, and to in some sense "be programmers". Depending on the complexity of the task, don't underestimate the value of a programmer/designer, or a programmer with some time budgeted to work next to a designer. –  user744 Aug 17 '10 at 10:34
Joe - yes, that's all quite true. However it's funny how often I've seen an artist or designer complain that they don't want to be a programmer, and yet have no real problem "scripting". As if scripting was in some way different to programming... –  JasonD Aug 17 '10 at 10:57
Artist/designer dissatisfaction isn't what I'm cautioning against - they'll happily "not program" thousands of lines, which a real programmer will then need to debug and maintain, because that's the real skill that's hard to learn. –  user744 Aug 17 '10 at 18:38
Yes, I think I'd be worried if there was a significant amount of code being generated outside of the actual programming team. Having said that, some designers and artists are quite capable. And if the script environment is sufficiently sand-boxed, I'm all for letting them loose. –  JasonD Aug 17 '10 at 18:52
are there any simple game engines which simple support lua scripting for character AI modelling? –  iceman Aug 22 '10 at 2:56
add comment

Unity is a very popular engine/WYSIWYG editor which allows programmers to expose easy to modify "components" which artists/designers can attach to entities to give functionality within the game. A bunch of components come standard which provide a lot of the basic functionality for games.

From the Unity site:

Play, Pause, and Step
Click the Play button to instantly run your game. Pause and Step forward to analyze complex behavior in detail. While the game is running (or paused), you can alter values, assets, or even scripts! This means you can do more experimentation and more testing for a better final game.

Easy Editor Customization
Streamline your workflow using simple, Editor-specific scripts. We wrote the Editor using Unity’s own scripting, so anything we can do in the Editor, you can do as well.

Customizable Editor Layout
Choose from one of many built-in application arrangements, or create and save your own. Different tasks might benefit from different arrangements, so use easy hotkeys to switch arrangements as needed.

Drag 'n Drop Everything
Visually drag assets and objects in the editor to assign Textures, Audio, Behaviors, and script variables. Create logical GameObject hierarchies to manage and maximize your game's functionality.

To streamline the repeated use of complex GameObjects, you can turn one or more of them into a Prefab. This Prefab can then be easily placed throughout the game or instantiated at runtime. Any changes to the original prefab are propagated to all dependents, so both major and minor adjustments can be made very quickly to a large number of GameObjects.

- unity3d.com/unity/features/

share|improve this answer
add comment

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.