Unit Design - unit property sheet/visuals

Post Reply
Stratego (dev)
Site Admin
Posts: 8560
Joined: Fri Apr 25, 2014 9:28 pm

Unit Design - unit property sheet/visuals

Post by Stratego (dev) » Fri Nov 23, 2018 2:11 pm

Here i describe the visual definition part

"visuals" part is a list, a list of visuality types of a unit eg: DEFAULT, CONSTRUCTION, JOIN, JOINX, OCCUPIED

General

here a sample:

Code: Select all

      "visuals":[
      
      
         {
            "imgName":"64_unit_celt.png",
            "type":"DEFAULT",
            "shiftIndicatorsDown":32,
            "typeExtra":0.0,
            "imgColumns":1,
            "imageDefParts":[
	                   {
	                      "cropToRect":{"top":0, "left":0,"bottom":32,"right":32},
	                      "layer":"OVERLAPS",
	                      "shiftCol":0,
	                      "shiftRow":-1,
	                      "clickable":false
	                   },
	                   {
	                      "cropToRect":{"top":32,"left":0,"bottom":64,"right":32},
	                      "layer":"UNITS",
	                      "shiftCol":0,
	                      "shiftRow":0,
	                      "clickable":true
	                   }
            ]
         }

         
         ]
         

"imgName": here u give the asset image name under the assets/gfx folder
"type":"DEFAULT", this is the visuality type, DEFAULT is the normal image for unit it can be: DEFAULT, CONSTRUCTION, JOIN, JOINX, OCCUPIED
"shiftIndicatorsDown": a value how much pixe the indicators needed to be shifted down from the top left position.
"imgColumns": how many columns of the image or animation: 1: single, 2: can be 2 tile animation or an occupiable building, more: animation.
"typeExtra": some extra input for some options.
"imageDefParts": here you can define which part of the image you define to which layer
"imageDefShort" this is a simpler way to set imageDefParts


Image positioning
Use imageDefParts or imageDefShort?
if u have non animating simple unit image i suggest the short version, in any complex case the detailly configurable version.

instead of this

Code: Select all

            "imageDefParts":[
               {
                  "cropToRect":{"top": 0,"left":0,"bottom":32,"right":32},
                  "layer":"UNITS",
                  "shiftCol":0,
                  "shiftRow":0,
                  "clickable":true
               }
            ]
you can write this:

Code: Select all

"imageDefShort":"NORMAL_1x1"
also instead of this

Code: Select all

            "imageDefParts":[
               {
	       	                      "cropToRect":{"top":0, "left":0,"bottom":32,"right":32},
	       	                      "layer":"OVERLAPS",
	       	                      "shiftCol":0,
	       	                      "shiftRow":-1,
	       	                      "clickable":false
	       	                   },
	       	                   {
	       	                      "cropToRect":{"top":32,"left":0,"bottom":64,"right":32},
	       	                      "layer":"UNITS",
	       	                      "shiftCol":0,
	       	                      "shiftRow":0,
	       	                      "clickable":true
	                   }
            ]
you can write this

Code: Select all

"imageDefShort":"OVERLAP_1x2"
and we have 4 options currently:
- NORMAL_1x1 for a normal 1x1 tile unit
- OVERLAP_1x2 for a tall unit like a trebuchet, this will overlap the tile above its "foot" tile.
- NORMAL_COL2_2x1 this is for a 1x1 building that shows occupacy so image is 2x1 sized
- OVERLAP_COL2_2x2 this is for a 1x2 building that shows occupacy so image is 2x2 sized

Visual definition TYPE-s
"type":"DEFAULT", this is the visuality type, DEFAULT is the normal image for unit
other options:
CONSTRUCTION - this is used when the unit is under construction, set in "typeExtra" the readiness limits (over this limit this image is used)
OCCUPIED - this image is used if the eg. building is occupied (carried some units)
JOIN and JOINX: use these to autotile this unit: eg a wall that transforms as u put an other wall next to it (it joins)

Post Reply

Return to “Unit Design”