LevelPoints.json

From Halfway
Revision as of 15:15, 19 September 2014 by Seminus (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Overview

In this json and the ProgressPacks.json are the ones that define the progress of the game and how the overview maps looks.

Example Level Point

 {
   "id" : "level01b",
   "map" : "01_WakeUpCall_b.hmap",
   "title" : "Engine Room: Storage C3-Y1 ",
   "description" : "-",
   "requiredCharacters" : [
     "mortenLannis",
     "lindaCarter"
   ],
   "levelType" : "End",
   "connectsFrom" : "level01a",
   "position" : {
     "x" : 70,
     "y" : 220
   }
 },

Description

=How it works

There are two steps you need to do in order to have a map point placed on the overview map and having it activated:

  1. You need to add a level point to this json. It contains all the information needed for the level and the map.
  2. You need to unlock it at the right position in the ProgressPacks.json.

The values

"id" : This is an unique id for the level. (you will need it over in the ProgressPacks.json. Be sure it is unique.

"map" : What map file it is loading when reaching this level. (This needs to be the exact name of the level and it needs to be placed in the root folder of the ./levels folder.

"title" : The title name shown on the overview map when you are hovering over it.

"description" : The mission briefing text shown in the info box when hovering over a level point. (user \n for line breaks)

"requiredCharacters" : Use this to define which character has to come in the mission. This is important when you having dialogs and you have to make sure that the character are there to speak their roles. Use the file names as id, that you can find in the ./characters folder without the .unit ending.

"levelType" : There are 4 types: Normal, End, Optional and Homebase. This defines how the level point looks like on the map. You can replace the assets if you like, so you have 4 different types.

"connectsFrom" : Use the Id from the level that you are connecting from. So in our example we connect from the first level level1a. This is needed to draw the connection lines between levels. (Note: this can be nonlinear)

"position" : The X and Y coordinate of the map point. You have to know some facts to make a usable map:

  1. Make at least 20 pixel difference in between two points or the line won't get drawn.
  2. If the line should be drawn, make sure you have them aligned in 90° to its connection level or else the line does not get dawn.
  3. The coordinate system is not the screen coordinate system. it only represents the map screen.
  4. This is a try and error thing. Sorry.

The Map

You can replace all the map elements if you like. To do so replace the files in the ./gfx/ui/map folder. (The one ending with HD are the one used. The others are obsolete.)