Post by GooRoo on Oct 6, 2005 16:07:10 GMT -8
Game Logics Dialog Boxez
"Edit Objects" Dialog Box
Below is an image of the "Edit Objects" dialog box that is used to enter "game logic" information. You will use this dialog box MANY times throughout the development of your level. Notice the "Rects..." and "Flags..." buttons. Those buttons are used to bring up the "Object Rectangles" and "Object Flags" dialog boxez (described below) that will allow you to enter more information for certain game logics that require them.
The on-line GLE "Help" file does not go into any detail at all about the "Edit Objects" dialog box. This update will attempt to rectify such omissions.
Identification
ID: Each new object added is (by default) sequentially numbered, starting at 1. For most objects, this is not a problem. However, for Switches, the "ID:" value is of extreme importance! Near the bottom, in the center of the dialog box, is a button named "Calc CowID". "Calc" (I know) is short for "Calculate", and "ID" is short for Identification"; I have no idea what the "Cow" part means. There will be more information later, as I am working from left to right, and top to bottom. For now, just let me say that you must press "Calc CowID" for every Switch!
Paste I have never used it, but I presume that it will take information from the clipboard and add it into the dialog box field(s). My habit is to use the Ctrl-v method of pasting objects where I want them.
Copy Likewise, I have never used it, but it probably copies information from the open dialog box into the clipboard, so it may be pasted somewhere else. (I use Ctrl-c instead.)
Delete will delete the object defined by the open dialog box. (Yes, I have used this one ... frequently! But more often I just select an object via mouse left button click, then hit the Delete key and press Enter to confirm the deletion.)
Name: This is an optional field, usually left blank. However, it can be used to 'group' objects such as the path through a (Crumbling) Bridge maze; or to keep a running count of how many Coinz have been placed into the WapWorldDefinition (Coin #1, Coin #30, etc.).
Logic: Logic names are case-sensitive, and misspelling one can lead to major problems in the design and testing of a Gruntz puzzle. Fortunately, that little down-pointing arrow at the right is an indicator that there is a drop-down menu from which you may select your logic name. The Gruntz Level Editor is also rather intelligent, in that when you add a new logic name that did not exist in the menu, it adds it in so that it is there for the next time you want to use the same logic name. If you spell it correctly the first time, each time you select it from the menu, it will be just as correct. On the other hand, I have not discovered a method of removing incorrect entries.
Image Set: Once again, the drop-down menu saves the designer a lot of (mis-)typing! It is rather unlikely that there will ever be a need to add anything into this menu, providing you do the sensible thing, and begin your Gruntz level from a template, rather than starting 'from scratch'.
Animation: Few Gruntz objects will use this field, BehindCandyAni and GlobalAmbientSound being notable exceptions to that statement. The drop-down menu comes to the fore once again, to save a lot of headaches from (mis-)typing!
Location
X: Is the pixel address from the left edge of the map (starting with 0) of the object. The highest value in this field is 32 times the width of the map in Tilez, minus 1. So for a map that is 32 Tilez wide by 24 Tilez high: (32X32)-1=1023 is the highest possible value in this field. You probably would not be able to select the logic from the map, if you put such a value in, however, so the practical limit is 32 (pixels) X 32 (Tilez) - 16. (The logic box is 16 pixels wide by 16 pixels high. Four logic boxes may be placed on a Tile with no overlap.)
Y: Is the pixel address from the top edge of the map (starting with 0) of the object. The practical highest value in this field is 32 times the height of the map in Tilez, minus 16. So for a map that is 32 Tilez wide by 24 Tilez high: (32X24)-16=752 is the highest practical value in this field.
Z: I have never used anything but 0 in this field. Someone who has had good reason to do otherwise will have to fill in the information about how this field is used in Gruntz.
I: Similarly, I have never used anything but -1 in this field.
Attributes
The contents of the fields below largely depend upon the logic containing them. Where a field is (fairly) consistent in usage, an attempt at a description is provided.
Calc Cow I have never used it, and don't know what it does.
Calc ID I have never used it, and don't know what it does.
Calc CowID The 'calculation' part is:
256X + Y, where X is the Tile number from the left edge, starting at 0 and Y is the Tile number from the top edge, starting at 0.
For a Switch located at X=3, Y=7: 256(3) + 9 = 777. The value stored into the ID: field would be 777. The Location:X value would have a range between 97 and 128, with the Location:Y value having a range between 289 and 321. (256 is the maximum number of Tilez allowed in width and/or height ... one unsigned byte can store valuez between 0 and 255. My deductive reasoning says that Gruntz has one byte for the X and Y relative Tile addresses.)
Other
"Object Rectangles" Dialog Box
Below is an image of the "Object Rectangles" dialog box that is used for certain logics. (e.g. "GiantRock")
Notice that "Object Rectangles" overlays the "Edit Objects" dialog box. I find that rather annoying, but 'centering' dialog boxes is the way of Microsoft Windows. Frequently, this 'centering' winds up covering up the very thing that I am working on! So I usually move the "Edit Objects" dialog box away from the map area that I am working on, and (thankfully) when I then open the "Object Rectangles" dialog box, it is 'centered' atop the "Edit Objects" box ... which is out of my way.
A quick inspection will tell you that there are 24 boxez into which valuez may be entered. The namez of these boxez are meaningless to the game of Gruntz; they were evidently provided for use with another game engine.Some Logic: objectz have very specific placez to put their additional information, such as Brickz, GiantRock, GlobalAmbientSound, GruntStartingPoint, RainCloud, UFO and VoiceTrigger (follow the linkz for information about those specific requirementz). Switch and Pyramid objectz don't seem to care where amongst the 24 boxez you put required valuez ... as long as you put them in there somewhere!
"Object Flags" Dialog Box
Below is an image of the "Object Flags" dialog box that is rarely used in Gruntz. The only time it is typically used is for setting the "No Draw" flag for certain logics (e.g. "Brickz").
Note: Most of the flags in this dialog box are not functional with Gruntz.
Notice that "Object Flags" also overlays the "Edit Objects" dialog box.
"Edit Objects" Dialog Box
Below is an image of the "Edit Objects" dialog box that is used to enter "game logic" information. You will use this dialog box MANY times throughout the development of your level. Notice the "Rects..." and "Flags..." buttons. Those buttons are used to bring up the "Object Rectangles" and "Object Flags" dialog boxez (described below) that will allow you to enter more information for certain game logics that require them.
The on-line GLE "Help" file does not go into any detail at all about the "Edit Objects" dialog box. This update will attempt to rectify such omissions.
Identification
ID: Each new object added is (by default) sequentially numbered, starting at 1. For most objects, this is not a problem. However, for Switches, the "ID:" value is of extreme importance! Near the bottom, in the center of the dialog box, is a button named "Calc CowID". "Calc" (I know) is short for "Calculate", and "ID" is short for Identification"; I have no idea what the "Cow" part means. There will be more information later, as I am working from left to right, and top to bottom. For now, just let me say that you must press "Calc CowID" for every Switch!
Paste I have never used it, but I presume that it will take information from the clipboard and add it into the dialog box field(s). My habit is to use the Ctrl-v method of pasting objects where I want them.
Copy Likewise, I have never used it, but it probably copies information from the open dialog box into the clipboard, so it may be pasted somewhere else. (I use Ctrl-c instead.)
Delete will delete the object defined by the open dialog box. (Yes, I have used this one ... frequently! But more often I just select an object via mouse left button click, then hit the Delete key and press Enter to confirm the deletion.)
Name: This is an optional field, usually left blank. However, it can be used to 'group' objects such as the path through a (Crumbling) Bridge maze; or to keep a running count of how many Coinz have been placed into the WapWorldDefinition (Coin #1, Coin #30, etc.).
Logic: Logic names are case-sensitive, and misspelling one can lead to major problems in the design and testing of a Gruntz puzzle. Fortunately, that little down-pointing arrow at the right is an indicator that there is a drop-down menu from which you may select your logic name. The Gruntz Level Editor is also rather intelligent, in that when you add a new logic name that did not exist in the menu, it adds it in so that it is there for the next time you want to use the same logic name. If you spell it correctly the first time, each time you select it from the menu, it will be just as correct. On the other hand, I have not discovered a method of removing incorrect entries.
Image Set: Once again, the drop-down menu saves the designer a lot of (mis-)typing! It is rather unlikely that there will ever be a need to add anything into this menu, providing you do the sensible thing, and begin your Gruntz level from a template, rather than starting 'from scratch'.
Animation: Few Gruntz objects will use this field, BehindCandyAni and GlobalAmbientSound being notable exceptions to that statement. The drop-down menu comes to the fore once again, to save a lot of headaches from (mis-)typing!
Location
X: Is the pixel address from the left edge of the map (starting with 0) of the object. The highest value in this field is 32 times the width of the map in Tilez, minus 1. So for a map that is 32 Tilez wide by 24 Tilez high: (32X32)-1=1023 is the highest possible value in this field. You probably would not be able to select the logic from the map, if you put such a value in, however, so the practical limit is 32 (pixels) X 32 (Tilez) - 16. (The logic box is 16 pixels wide by 16 pixels high. Four logic boxes may be placed on a Tile with no overlap.)
Y: Is the pixel address from the top edge of the map (starting with 0) of the object. The practical highest value in this field is 32 times the height of the map in Tilez, minus 16. So for a map that is 32 Tilez wide by 24 Tilez high: (32X24)-16=752 is the highest practical value in this field.
Z: I have never used anything but 0 in this field. Someone who has had good reason to do otherwise will have to fill in the information about how this field is used in Gruntz.
I: Similarly, I have never used anything but -1 in this field.
Attributes
The contents of the fields below largely depend upon the logic containing them. Where a field is (fairly) consistent in usage, an attempt at a description is provided.
Score: | 0 | Points: | 0 | Smarts: | 0 |
Powerup: | 0 Tool, Toy, or Powerup ID # | Damage: | 0 | Health: | 0 |
Speed X: | Tile address from left edge, starting with 0 (set by Calc CowID) | Speed Y: | Tile address from top edge, starting with 0 (set by Calc CowID) | Face Dir: | 0 |
X Min: | 0 | X Max: | 0 | Direction: | 0 |
Y Min: | 0 | Y Max: | 0 | Speed: | 0 |
Calc Cow I have never used it, and don't know what it does.
Calc ID I have never used it, and don't know what it does.
Calc CowID The 'calculation' part is:
256X + Y, where X is the Tile number from the left edge, starting at 0 and Y is the Tile number from the top edge, starting at 0.
For a Switch located at X=3, Y=7: 256(3) + 9 = 777. The value stored into the ID: field would be 777. The Location:X value would have a range between 97 and 128, with the Location:Y value having a range between 289 and 321. (256 is the maximum number of Tilez allowed in width and/or height ... one unsigned byte can store valuez between 0 and 255. My deductive reasoning says that Gruntz has one byte for the X and Y relative Tile addresses.)
Other
Rects... | Opens the "Object Rectangles" dialog box (see below) |
Points... | Opens the "Object Points" dialog box (Has no value in Gruntz) |
Flags... | Opens the "Object Flags" dialog box (see below) |
Hits... | Opens the "Object Hit Info" dialog box (Has no value in Gruntz) |
User... | Opens the "Object User Values" dialog box (Has no value in Gruntz) |
Misc... | Opens the "Object Misc Values" dialog box (Has no value in Gruntz) |
"Object Rectangles" Dialog Box
Below is an image of the "Object Rectangles" dialog box that is used for certain logics. (e.g. "GiantRock")
Notice that "Object Rectangles" overlays the "Edit Objects" dialog box. I find that rather annoying, but 'centering' dialog boxes is the way of Microsoft Windows. Frequently, this 'centering' winds up covering up the very thing that I am working on! So I usually move the "Edit Objects" dialog box away from the map area that I am working on, and (thankfully) when I then open the "Object Rectangles" dialog box, it is 'centered' atop the "Edit Objects" box ... which is out of my way.
A quick inspection will tell you that there are 24 boxez into which valuez may be entered. The namez of these boxez are meaningless to the game of Gruntz; they were evidently provided for use with another game engine.Some Logic: objectz have very specific placez to put their additional information, such as Brickz, GiantRock, GlobalAmbientSound, GruntStartingPoint, RainCloud, UFO and VoiceTrigger (follow the linkz for information about those specific requirementz). Switch and Pyramid objectz don't seem to care where amongst the 24 boxez you put required valuez ... as long as you put them in there somewhere!
"Object Flags" Dialog Box
Below is an image of the "Object Flags" dialog box that is rarely used in Gruntz. The only time it is typically used is for setting the "No Draw" flag for certain logics (e.g. "Brickz").
Note: Most of the flags in this dialog box are not functional with Gruntz.
Notice that "Object Flags" also overlays the "Edit Objects" dialog box.