Data model

See also: Progression and achievement system

Requirements:

  • track progress for individual players
  • mini games added over time
  • progress of the mini games will be tracked for individual players
  • incorporate the progress and completion of the mini games into the main game, as well as other mini games
  • an efficient, extensible solution

Layers

OBJECT LAYERS – export as data

  • Exit – 
  • Entrance – 
  • Hole – BLACK
  • Transport – 
  • Items – RED – this would be what is INSIDE a pot, for example, NOT if there is a pot there…
  • Sprite Spawn – PINK – Sprite ID and name

COLLISION (folder) – export as data

  • Collision – 

GRAPHICS (folder) – export as data and graphics

  • foreground (folder)
  • background (folder)

Question – is it better to generate background/foreground map at runtime (or at load/set up time) – or load a complete graphic? I feel that its better to generate it at load time…

Why? potential for saving memory – can also be changed at run/game time…

I mean, apart from the graphics, all the other things are being generated at run time…

Why not? processor overhead – 

See: Tile Buffer

Load adjoining

each map has a list of surrounding, adjoining map pieces, as well as 

load map sections, including

the loadAdjoining array should start with the first 8 (top left, top middle, top right, middle left, middle right, bottom left, bottom middle, bottom right) slots always there – even if they are set to ‘null’ – the algorithm uses their position to determine which map joins where

Examples

start – load the map – load adjoining (seen in red below)

move to adjoining – load adjoining (seen in red below) – leave already adjoining (seen in orange below) unload others except for adjoining (seen in blue below)

So, there will always be 9 map sections at minimum loaded at once.

But what about going into a house – start in house then what is loaded?

from within a room you can: go outside – go to other rooms

from outside you can: go to another section of map – go into a room

Needs to load all of the ‘layers’ of data

To be honest – these days, is this kind of thing required? For example, a map like the zelda overworld is 8×8(64) map sections of 64×64(4096) – 262144 tiles

Well, if i keep adding to it, it will allow for that and maintain it performance… ish…

Resources