<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
    <channel>
        <title>Super Saiyan X's site</title>
        <link>http://www.byond.com/members/SuperSaiyanX</link>
        <description></description>
        <lastBuildDate>Sat, 11 Feb 2012 05:01:34 +0000</lastBuildDate>
        <language>en-us</language>
    
                <item>
            <title>test »«</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=279851</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=279851</guid>
            <pubDate>Wed, 08 Feb 2012 01:03:10 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=279851#comments</comments>
            
            <description>Â» Â«&lt;br&gt;
&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
Â«&lt;br&gt;Â»
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;</description>
        </item>
                <item>
            <title>Errors &amp; Warning</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=279743</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=279743</guid>
            <pubDate>Tue, 07 Feb 2012 23:33:57 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=279743#comments</comments>
            
            <description>&lt;font color=&quot;red&quot;&gt;&lt;b&gt;Note: This opening post is just a copy and paste from the dead BYOND Bwicki; information has been recovered via the Wayback machine. Feel free to add your own entries for errors/warnings, and how to fix them. BYOND moderators, feel welcome to fix any errors in this post pointed out if I don't edit them.&lt;/b&gt;&lt;/font&gt;&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;
&lt;br&gt;
&lt;font size=&quot;3&quot;&gt;the &quot;&amp;gt;&quot; symbol within DM tags represents an indentation.&lt;/font&gt;&lt;br&gt;
&lt;center&gt;
&lt;h1&gt;Dream Maker Error Code Listing&lt;/h1&gt;
&lt;/center&gt;
&lt;br&gt;
&lt;p&gt;Listed below are the error codes from Dream Maker, if you see someone asking a question in the forum or elsewhere for an error, post the fix you gave here under the error code itself. Over time it is my hope that people can be referenced here to just look up error codes they get in Dream Maker, by Error code, and find a solution to their problem.&lt;/p&gt;
&lt;br&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;
&lt;a name=&quot;constantexpression&quot; id=&quot;constantexpression&quot;&gt;&lt;/a&gt;&lt;b&gt;error: expected a constant expression&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; Trying to assign a variable with a random result at compile-time&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt; mob/var/hitpoints = roll(&quot;2d4&quot;)&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; It's not a constant value that can be calculated at compile-time. Hence the error. To fix the problem, you need to set the variable at &lt;i&gt;run-time&lt;/i&gt;; the easiest way to do this is inside the New() proc (which belongs to all objects in the DM programming language)&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/hitpoints = 0 &lt;span class=&quot;dmcomment&quot;&gt;//placeholder value&lt;/span&gt;&lt;br&gt;&lt;br&gt;&amp;gt; New()&lt;br&gt;&amp;gt; &amp;gt; ..() &lt;span class=&quot;dmcomment&quot;&gt;//Perform default New() procedure (almost always necessary!)&lt;/span&gt;&lt;br&gt;&amp;gt; &amp;gt; hitpoints = roll(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;2d4&amp;quot;&lt;/span&gt;) &lt;span class=&quot;dmcomment&quot;&gt;//When mob is created, assign random value to hitpoints var&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
This is also a common mistake with strings. You can't use brackets to include another value at compile-time, like so&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/icon_state = &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[class]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;duplicatedefinition&quot; id=&quot;duplicatedefinition&quot;&gt;&lt;/a&gt;&lt;b&gt;error:&lt;/b&gt; [variable name] &lt;b&gt;:duplicate definition&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; Declared the same variable twice.&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/a&lt;br&gt;&lt;br&gt;mob&lt;br&gt;&amp;gt; Login()&lt;br&gt;&amp;gt; &amp;gt; ..()&lt;br&gt;&amp;gt; &amp;gt; world&amp;lt;&amp;lt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[src]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt; says \&quot;Howdy.\&quot;&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;&lt;br&gt;&amp;gt; &amp;gt; a&lt;br&gt;&amp;gt; &amp;gt; b&lt;br&gt;&amp;gt; &amp;gt; c
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Delete or change the name of one them&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/a2&lt;br&gt;&lt;br&gt;mob&lt;br&gt;&amp;gt; Login()&lt;br&gt;&amp;gt; &amp;gt; ..()&lt;br&gt;&amp;gt; &amp;gt; world&amp;lt;&amp;lt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[src]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt; says \&quot;Howdy.\&quot;&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;&lt;br&gt;&amp;gt; &amp;gt; a&lt;br&gt;&amp;gt; &amp;gt; b&lt;br&gt;&amp;gt; &amp;gt; c
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;inconsistentindentation&quot; id=&quot;inconsistentindentation&quot;&gt;&lt;/a&gt;&lt;b&gt;error:: Inconsistent indentation.&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; Failing to correctly indent a line where it is an obvious error.&lt;br&gt;
&lt;i&gt;Example 1:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;verb&lt;/span&gt;/Hi()&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; &lt;span class=&quot;dmcomment&quot;&gt;// Code goes here.&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;i&gt;Example 2:&lt;/i&gt; [note: In this case, _ represents a space ( )&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob&lt;br&gt;&amp;gt; _verb/Hi()&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmcomment&quot;&gt;// Code goes here.&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Go over the block of code that the error leads to. Try scanning upward from there. On every line, delete all of the tabs and spaces and re-indent it to its proper level -- make sure you understand what proper indentation is, though! The above example should look like&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;verb&lt;/span&gt;/Hi()&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmcomment&quot;&gt;// Code goes here.&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
Dream Maker allows you to use either tabs or spaces for indentation. The only requirement is that you be consistent for any given block of code. If you prefer to use 3 spaces instead of tabs, DM will let you, but you can't mix and match them within any already indented block of code. Use Ctrl+T in the editor to make tabs and spaces visible, which will make it easier to spot stray spaces in your code.&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;invalidvariablename&quot; id=&quot;invalidvariablename&quot;&gt;&lt;/a&gt;&lt;b&gt;error:&lt;/b&gt; [variable name] &lt;b&gt;:invalid variable name: reserved word&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; Your trying to name a variable the same as one of BYOND's reserved words.&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/&lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Just change the name of the variable, if you really like the name you can just put an underscore in front of it&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/_if
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;missingcommaorparenthesis&quot; id=&quot;missingcommaorparenthesis&quot;&gt;&lt;/a&gt;&lt;b&gt;error:: missing comma ',' or right parenthesis ')'&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; One line of code is missing one of the two above symbols. Also note that the line the error message is reported on is usually the line following the error, not the line the error appears on!&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/strength = 50&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/toughness = 64&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/hitpoints = 0 &lt;span class=&quot;dmcomment&quot;&gt;//will be filled in at run-time (in New())&lt;/span&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/stamina = 0&lt;br&gt;&lt;br&gt;&amp;gt; New()&lt;br&gt;&amp;gt; &amp;gt; src.hitpoints = 25*(strength**(toughness-32) + 64&lt;br&gt;&amp;gt; &amp;gt; src.stamina = 5*hitpoints&lt;br&gt;&amp;gt; &amp;gt; ..()
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Locate the line above the line that the error is reported on, and count each parenthesis. For every left parenthesis &quot;(&quot;, mentally increase a number by one. For every right parenthesis &quot;)&quot;, mentally decrease that number by one. By the time you reach the end of the line, your number should be zero. If not, you'll have to figure out where you need to put the parenthesis&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
&amp;gt; New()&lt;br&gt;&amp;gt; &amp;gt; src.hitpoints = 25*(strength**toughness-32)&amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt; + 64&lt;br&gt;&amp;gt; &amp;gt; src.stamina = 5*hitpoints&lt;br&gt;&amp;gt; &amp;gt; ..()
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;nosuchnode&quot; id=&quot;nosuchnode&quot;&gt;&lt;/a&gt;&lt;b&gt;error: No such node: mob/var/&lt;/b&gt;[number]&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; You have a variable that's name starts with a number.&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/1_Piece_Of_Pie
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Make sure the number isn't the first character of the variable name&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/_1_Piece_Of_Pie
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;procdefinitionnotallowedinsideanotherproc&quot; id=&quot;procdefinitionnotallowedinsideanotherproc&quot;&gt;&lt;/a&gt;&lt;b&gt;error: proc definition not allowed inside another proc&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; A proc or verb has been defined inside another proc or verb. The line the error message is reported on is usually a line below the real error for this one as well.&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;verb&lt;/span&gt;&lt;br&gt;&amp;gt; Say(msg &lt;span class=&quot;dmkeyword&quot;&gt;as&lt;/span&gt; text)&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(msg)&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; view()&amp;lt;&amp;lt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[usr]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt; says \&quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[msg]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;\&quot;&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; &amp;gt; Shout(msg &lt;span class=&quot;dmkeyword&quot;&gt;as&lt;/span&gt; text)&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(msg)&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; &amp;gt; world&amp;lt;&amp;lt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[usr]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt; shouts \&quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[msg]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;\&quot;&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; This one should be obvious once you get the error, just un-indent the proc or verb to the correct spot&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;verb&lt;/span&gt;&lt;br&gt;&amp;gt; Say(msg &lt;span class=&quot;dmkeyword&quot;&gt;as&lt;/span&gt; text)&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(msg)&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; view()&amp;lt;&amp;lt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[usr]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt; says \&quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[msg]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;\&quot;&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; Shout(msg &lt;span class=&quot;dmkeyword&quot;&gt;as&lt;/span&gt; text)&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(msg)&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; world&amp;lt;&amp;lt;&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[usr]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt; shouts \&quot;&lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[msg]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;\&quot;&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
This is often caused by an indentation error as well. If the indentation looks correct like the second part of this example, then there's probably a mix of tabs and spaces in the indentation. Press Ctrl+T in the editor to see them.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;undefinedvariable&quot; id=&quot;undefinedvariable&quot;&gt;&lt;/a&gt;&lt;b&gt;error: Undefined variable&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; Most often, this happens when you didn't tell DM that the var you were using should be a certain type.&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Change the var's type, or create a new var with the type you want to use.&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/hp = 20&lt;br&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;verb&lt;/span&gt;/Attack(M &lt;span class=&quot;dmkeyword&quot;&gt;as&lt;/span&gt; mob &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; oview(1))&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(!M) &lt;span class=&quot;dmkeyword&quot;&gt;return&lt;/span&gt;&lt;br&gt;&amp;gt; &amp;gt; M.hp -= rand(3,8)&lt;br&gt;&amp;gt; &amp;gt; M. DeathCheckusr)
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
Here M is never defined as a /mob type. The &quot;as mob&quot; clause only limits Dream Seeker to choosing mobs, but Dream Maker doesn't automatically expect M to be a /mob. The solution is to define M as mob/M. Although you can use the : operator to get out of this, it's sloppy. You should use a technique called type casting to avoid the problem.&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/player/&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/kills = 0&lt;br&gt;&lt;br&gt;mob/creature/&lt;span class=&quot;dmkeyword&quot;&gt;verb&lt;/span&gt;/Kill()&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;set&lt;/span&gt; src &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; oview(1)&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/mob/player/M = usr    &lt;span class=&quot;dmcomment&quot;&gt;// this is type casting&lt;/span&gt;&lt;br&gt;&amp;gt; ++M.kills                 &lt;span class=&quot;dmcomment&quot;&gt;// usr is /mob, but M is /mob/player&lt;/span&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;del&lt;/span&gt;(src)
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
If you try to change usr.kills directly here, you'll get the error because usr is always a /mob type as far as Dream Maker is concerned. usr's actual type may really be /mob/player, but since DM doesn't know that in advance, it assumes usr is a generic mob. ++usr:kills would have worked, but ++M.kills is a much cleaner solution.&lt;br&gt;
&lt;br&gt;
&lt;a name=&quot;infinitexref&quot; id=&quot;infinitexref&quot;&gt;&lt;/a&gt;&lt;b&gt;error: compile failed (possible infinite cross-reference loop)&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem:&lt;/i&gt; Usually this happens because you're using a var the same place you first define it.&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Define the var first, then change it.&lt;br&gt;
&lt;i&gt;Example:&lt;/i&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/thing = &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;This is a &lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[thing]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;.&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
That line is prefectly legal without the var/ part, if thing is defined somewhere else.&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
&lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/thing = &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;duck&amp;quot;&lt;/span&gt;&lt;br&gt;thing = &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;This is a &lt;/span&gt;&lt;span class=&quot;dmbrace&quot;&gt;[thing]&lt;/span&gt;&lt;span class=&quot;dmstring&quot;&gt;.&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;
&lt;center&gt;&lt;br&gt;
&lt;h1&gt;Dream Maker Warning Code Listing&lt;/h1&gt;
&lt;/center&gt;
&lt;br&gt;
&lt;br&gt;
Listed below are the warnings from Dream Maker, if you see someone asking a question in the forum or elsewhere for an error, post the fix you gave here under the error code itself. Over time it is my hope that people can be referenced here to just look up warnings they get in Dream Maker and find a solution to their problem.&lt;br&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;Warning: empty switch statement&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem&lt;/i&gt;: The choices of the switch statement has not been correctly indented.&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Example&lt;/i&gt;:&lt;br&gt;
&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/gender()&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;switch&lt;/span&gt;(input(src, &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;What is your gender?&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Gender&amp;quot;&lt;/span&gt;) &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; list(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;male&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;female&amp;quot;&lt;/span&gt;))&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;male&amp;quot;&lt;/span&gt;)&lt;br&gt;&amp;gt; &amp;gt; gender=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;male&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;else&lt;/span&gt; gender=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;female&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Indent the choices in&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/gender()&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;switch&lt;/span&gt;(input(src,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;What is your gender?&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Gender&amp;quot;&lt;/span&gt;) &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; list(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;male&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;female&amp;quot;&lt;/span&gt;))&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;if&lt;/span&gt;(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;male&amp;quot;&lt;/span&gt;)&lt;br&gt;&amp;gt; &amp;gt; &amp;gt; gender=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;male&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; &amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;else&lt;/span&gt; gender=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;female&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;[variable] :warning: variable defined but not used&lt;/b&gt;&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Problem&lt;/i&gt;: The variable shown is not being used (does not matter if it was defined).&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Example&lt;/i&gt;:&lt;br&gt;
&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/gender()&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/name2=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;LoL&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/gender2=input(src, &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;What is your gender?&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Gender&amp;quot;&lt;/span&gt;) &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; list(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Male&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Female&amp;quot;&lt;/span&gt;)&lt;br&gt;&amp;gt; gender=ckey(gender2)
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
Note that name is defined but nothing is done with it.&lt;br&gt;
&lt;br&gt;
&lt;i&gt;Fix:&lt;/i&gt; Use OR delete the variable.&lt;br&gt;
&lt;div class=&quot;dmcode&quot;&gt;
&lt;table width=&quot;100%&quot; border=&quot;0&quot;&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;pre class=&quot;dmcode&quot;&gt;
mob/&lt;span class=&quot;dmkeyword&quot;&gt;proc&lt;/span&gt;/gender()&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/name2=&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;LoL&amp;quot;&lt;/span&gt;&lt;br&gt;&amp;gt; &lt;span class=&quot;dmkeyword&quot;&gt;var&lt;/span&gt;/gender2=input(src, &lt;span class=&quot;dmstring&quot;&gt;&amp;quot;What is your gender?&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Gender&amp;quot;&lt;/span&gt;) &lt;span class=&quot;dmkeyword&quot;&gt;in&lt;/span&gt; list(&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Male&amp;quot;&lt;/span&gt;,&lt;span class=&quot;dmstring&quot;&gt;&amp;quot;Female&amp;quot;&lt;/span&gt;)&lt;br&gt;&amp;gt; gender=ckey(gender2)&lt;br&gt;&amp;gt; name=html_encode(name2)
&lt;/pre&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;br&gt;
&lt;hr&gt;
&lt;br&gt;
&lt;br&gt;
&lt;font color=&quot;red&quot;&gt;&lt;b&gt;Note: This opening post is just a copy and paste from the dead BYOND Bwicki; information has been recovered via the Wayback machine. Feel free to add your own entries for errors/warnings, and how to fix them, in the form of a new post. BYOND moderators, feel welcome to fix any errors in (or add anything to) this post.&lt;/b&gt;&lt;/font&gt;&lt;br&gt;</description>
        </item>
                <item>
            <title>What ever happened to Mike H?</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=249788</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=249788</guid>
            <pubDate>Sun, 05 Feb 2012 03:08:22 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=249788#comments</comments>
            
            <description>This is totally fit for the BYOND Discussion forum, btw.&lt;br&gt;
&lt;br&gt;
The last time I saw Mike H. was when the Bug Tracker was introduced. Where is he now? I know he's probably working somewhere...but he was also a 'BYOND developer', mostly with the website, though.&lt;br&gt;
&lt;br&gt;
Along with that, what happened to Deadron, Shadowdarke, and whoever else was a big contributor to BYOND?&lt;br&gt;</description>
        </item>
                <item>
            <title>I am poor, buy me a membership, please.</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=122415</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=122415</guid>
            <pubDate>Sat, 31 Dec 2011 03:20:39 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=122415#comments</comments>
            
            <description>I'm very poor. I received nothing for Christmas. Membership please.</description>
        </item>
                <item>
            <title>The Mystery of the 100,000th hub</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=119575</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=119575</guid>
            <pubDate>Thu, 06 Oct 2011 21:16:09 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=119575#comments</comments>
            
            <description>So, today, I decided to check if we had passed 100,000 hubs in terms of the hub id value, to my surprise, we had a hub 99,999 and a 100,001 (latest when I checked was 100,087).&lt;br&gt;
However, we lacked a 100,000. It seems to have been created &amp; deleted, or perhaps just skipped over in the system? Who was the individual that created hub 100,000? Does anyone really care?!&lt;br&gt;
&lt;br&gt;
( &lt;a href=&quot;http://www.byond.com/games/?hub=100000&quot;&gt;http://www.byond.com/games/?hub=100000&lt;/a&gt; )</description>
        </item>
                <item>
            <title>All Pokemon Games</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=115967</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=115967</guid>
            <pubDate>Sat, 16 Jul 2011 16:50:56 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=115967#comments</comments>
            
            <description>Why are any Pokemon games allowed to be listed?&lt;br&gt;
They are all the same game, really. They all use the same sprites from all kinds of Nintendo Games, there is no difference between the games at all. Half of them are probably not even original in terms of source- yet I see like 20 being listed, and 5 being declined for being rips...they are all the same game. I look at 7 games hub screenshot - they are all exactly the same.</description>
        </item>
                <item>
            <title>Marked as rip? Really?</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=260924</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=260924</guid>
            <pubDate>Sun, 16 Jan 2011 19:48:58 +0000</pubDate>
            
            <description>I'd like to know what constitutes a game to be a 'rip'? The programming that was released by it's previous owner? The use of icons everyone you can find anywhere on BYOND?&lt;br&gt;
&lt;br&gt;
See, my game, hub://supersaiyanx.dbrp was rejected and marked as a 'rip', beyond this was no explanation as to why. DBRP has never been a rip of any kind. The source was released by it's previous owner. I continued the game and stayed true to it's original purpose/design, added new features, made new icons, etc. The previous owner(s) declared me the new owner of DBRP, and the official continuation. Today, I logged on, I was editing my hub, when I saw in the Options tab- DBRP was rejected as a rip. I quickly typed in DBRP into the search bar, and noticed there was a game, based on the public source of DBRP, but with barely anything making it unique still listed- the game was added today; hub://Dutch3d.DBRP.&lt;br&gt;
&lt;br&gt;
Can someone, please explain, what the heck is a 'rip' these days, and why DBRP was listed is listed as one?</description>
        </item>
                <item>
            <title>Is there really a reason to clone/rip games?</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=107088</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=107088</guid>
            <pubDate>Sun, 16 Jan 2011 04:00:46 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=107088#comments</comments>
            
            <description>What's up with these clone games now? People just take it upon themselves to launch a new game, based on the source of an old one, when that game is still up and running. Is there really a point to copying a game? What do you get out of it? If you think you'd be a better owner, and can improve the game beyond the original owner; then make your own game.&lt;br&gt;
&lt;br&gt;
I don't understand why people copy games, rip them, clone them, whatever they heck they do. Don't they realize that the more of the same game there is, it's all the same crappy game, with less players per game? Why can't everyone just be happy on one big game? If it's games with the same source, same features, just a different name, and 'owner' plaque on it, who really does this make happy?</description>
        </item>
                <item>
            <title>Overlays with offsets</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=273565</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=273565</guid>
            <pubDate>Wed, 18 Aug 2010 19:28:09 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=273565#comments</comments>
            
            <description>Alright, so let say I wanted to add an overlay, such as clothing, to a mob, keeping the offset of the original object. Normally, I would just add the object to the mob's overlay list. However, when you save, re log, and load again, the overlay sticks to the mob, and you are unable to remove the overlay from the mob, even though the object never changes.&lt;br&gt;
&lt;br&gt;
A way around this is completely emptying the overlays list, and reaading the overlays of the objects that are equipped, but there are some overlays like effects and hair that I'd rather have not get messed up with layering issues.&lt;br&gt;
&lt;br&gt;
Is there any way I could make it so I can add an overlay with the offset of it's object, AND remove that single overlay after saving, and reloading?</description>
        </item>
                <item>
            <title>New troll key yo;</title>
            <link>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=99319</link>
            <guid>http://www.byond.com/members/SuperSaiyanX?command=view_post&amp;post=99319</guid>
            <pubDate>Wed, 28 Jul 2010 05:10:58 +0000</pubDate>
            
            <comments>http://www.byond.com/members/SuperSaiyanX?command=view_comments&amp;post=99319#comments</comments>
            
            <description>&lt;a href=&quot;http://byond.com/members/SuperSaiyanSwagga&quot;&gt;Super Saiyan Swagga&lt;/a&gt;</description>
        </item>
            
    </channel>
</rss>


