<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.2.3" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>
<channel>
	<title>Comments on: Scripting for Designers</title>
	<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/</link>
	<description>Joe Ludwig\'s blog</description>
	<pubDate>Mon, 01 Dec 2008 17:19:47 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.3</generator>

	<item>
		<title>By: Joe</title>
		<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60330</link>
		<dc:creator>Joe</dc:creator>
		<pubDate>Fri, 09 Nov 2007 23:41:25 +0000</pubDate>
		<guid>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60330</guid>
		<description>While scripting languages can certainly teach some shitty coding habits, I think a far bigger concern is the kudzu effect.  Once you have a scripting language in your game it starts to get into everything and you end up writing far more of the game in scripts than you expected. When your scripts are of marginal quality to begin with, the script-creep makes them really really bad.</description>
		<content:encoded><![CDATA[<p>While scripting languages can certainly teach some shitty coding habits, I think a far bigger concern is the kudzu effect.  Once you have a scripting language in your game it starts to get into everything and you end up writing far more of the game in scripts than you expected. When your scripts are of marginal quality to begin with, the script-creep makes them really really bad.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rich Bryant</title>
		<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60318</link>
		<dc:creator>Rich Bryant</dc:creator>
		<pubDate>Fri, 09 Nov 2007 23:02:08 +0000</pubDate>
		<guid>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60318</guid>
		<description>Hah, I'm currently recruiting coders.  I guess it makes me worse than usual.</description>
		<content:encoded><![CDATA[<p>Hah, I&#8217;m currently recruiting coders.  I guess it makes me worse than usual.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe</title>
		<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60282</link>
		<dc:creator>Joe</dc:creator>
		<pubDate>Fri, 09 Nov 2007 19:10:29 +0000</pubDate>
		<guid>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60282</guid>
		<description>Wow, you're even more hardcore than I am. :)</description>
		<content:encoded><![CDATA[<p>Wow, you&#8217;re even more hardcore than I am. <img src='http://programmerjoe.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rich Bryant</title>
		<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60250</link>
		<dc:creator>Rich Bryant</dc:creator>
		<pubDate>Fri, 09 Nov 2007 16:19:43 +0000</pubDate>
		<guid>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-60250</guid>
		<description>I'm afraid I side with Joe here, almost completely.  I'd much rather designers were producing use cases than scripts.

Or scripts for rewriting.  And not to be executed by a scripting engine.  There is one very simple reason for this stance:

SCRIPT LANGUAGES TEACH SHITTY CODING HABITS.

I wouldn't want any programmer working in a team with me to spend time on lua, javascript or (god forbid) vbscript, &lt;b&gt;ever&lt;/b&gt;.

Your code must be maintainable and above all else, that means any talented programmer should be able to walk in off the street, read the relevant documentation, look at the diagrams and make the changes you need.  It absolutely must not ever look like amateur baby-talk script language.

I'd say this was even more important than the performance and testing issues which come up around script-blocks (which is again mostly due to shitty coding habits taught by script languages).

A programmer must be replaceable.</description>
		<content:encoded><![CDATA[<p>I&#8217;m afraid I side with Joe here, almost completely.  I&#8217;d much rather designers were producing use cases than scripts.</p>
<p>Or scripts for rewriting.  And not to be executed by a scripting engine.  There is one very simple reason for this stance:</p>
<p>SCRIPT LANGUAGES TEACH SHITTY CODING HABITS.</p>
<p>I wouldn&#8217;t want any programmer working in a team with me to spend time on lua, javascript or (god forbid) vbscript, <b>ever</b>.</p>
<p>Your code must be maintainable and above all else, that means any talented programmer should be able to walk in off the street, read the relevant documentation, look at the diagrams and make the changes you need.  It absolutely must not ever look like amateur baby-talk script language.</p>
<p>I&#8217;d say this was even more important than the performance and testing issues which come up around script-blocks (which is again mostly due to shitty coding habits taught by script languages).</p>
<p>A programmer must be replaceable.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Chris White</title>
		<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-58901</link>
		<dc:creator>Chris White</dc:creator>
		<pubDate>Wed, 07 Nov 2007 05:11:27 +0000</pubDate>
		<guid>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-58901</guid>
		<description>Before I got into making games, I did some work for a defense contractor building battlefield simulations, and found this debate interesting to watch because we faced the same problem.  The "designers" in this case were Army officers who needed to specify mission scenarios and doctrinal rules that agents in the simulation were required to follow.  Our original simulation involved a point-and-click interface that allowed them to draw up glorified flow-charts that got saved in a database in a format  that the simulator could interpret at run-time, but after a while of using this, the Army officers told us that this was too cumbersome, and wondered if they could develop simulation scenarios in a format more similar to how they were used to describing doctrine.  It turns out that the Army has stacks and stacks of books describing exactly what soldiers are supposed to do in a given situation.  They sent us a couple of these books and one of our leads drew up a formal grammar that looked similar to the format they were using to describe the doctrine, and 2 months later we had a compiler and editor for this new language that let our designers script situations in a way that was very familiar to them.  The big take-away from this is that, as you mentioned above, it depends on your situation and who your designers are.  There won't ever be a cookie cutter solution that will work for everybody.</description>
		<content:encoded><![CDATA[<p>Before I got into making games, I did some work for a defense contractor building battlefield simulations, and found this debate interesting to watch because we faced the same problem.  The &#8220;designers&#8221; in this case were Army officers who needed to specify mission scenarios and doctrinal rules that agents in the simulation were required to follow.  Our original simulation involved a point-and-click interface that allowed them to draw up glorified flow-charts that got saved in a database in a format  that the simulator could interpret at run-time, but after a while of using this, the Army officers told us that this was too cumbersome, and wondered if they could develop simulation scenarios in a format more similar to how they were used to describing doctrine.  It turns out that the Army has stacks and stacks of books describing exactly what soldiers are supposed to do in a given situation.  They sent us a couple of these books and one of our leads drew up a formal grammar that looked similar to the format they were using to describe the doctrine, and 2 months later we had a compiler and editor for this new language that let our designers script situations in a way that was very familiar to them.  The big take-away from this is that, as you mentioned above, it depends on your situation and who your designers are.  There won&#8217;t ever be a cookie cutter solution that will work for everybody.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe</title>
		<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-58112</link>
		<dc:creator>Joe</dc:creator>
		<pubDate>Mon, 05 Nov 2007 17:51:07 +0000</pubDate>
		<guid>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-58112</guid>
		<description>Oddly enough the post on sweng-gamedev that started people talking about scripting at all was a question about using native code in DLLs instead of a scripting language. It's certainly a possibility.</description>
		<content:encoded><![CDATA[<p>Oddly enough the post on sweng-gamedev that started people talking about scripting at all was a question about using native code in DLLs instead of a scripting language. It&#8217;s certainly a possibility.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: robusticus</title>
		<link>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-58101</link>
		<dc:creator>robusticus</dc:creator>
		<pubDate>Mon, 05 Nov 2007 16:59:54 +0000</pubDate>
		<guid>http://programmerjoe.com/2007/11/03/scripting-for-designers/#comment-58101</guid>
		<description>I thought it was a good point.  It did get lost in all that faction warfare, but still... I'm now wondering how to store pre-compiled DLLs instead of scripts and if that will work seamlessly with my debugger.</description>
		<content:encoded><![CDATA[<p>I thought it was a good point.  It did get lost in all that faction warfare, but still&#8230; I&#8217;m now wondering how to store pre-compiled DLLs instead of scripts and if that will work seamlessly with my debugger.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
