On this page

Insality/defold-saver/saver.saver

Persistent save helpers for Defold: typed tables, versioned slots, and atomic writes.

  • GitHub: Insality/defold-saver — pinned to 2fe3aed
    1. Pick a release from Insality/defold-saver releases and add its Source code (zip) URL (or a packaged .zip asset, if the library ships one) to game.project under [project] dependencies, then Fetch Libraries in the Defold editor.
    2. Run bunx @defold-typescript/cli resolve to materialize its types.
    3. Import it under a namespace alias of your choice:
      import * as saver from "saver.saver"

Functions

init()

bind_save_part(keyId: string, tableReference: any)

Parameters

  • keyId: string
  • tableReference: any

save_game_state(fileName?: string): boolean

Parameters

  • fileName?: string

Returns

  • boolean

load_game_state(fileName?: string): boolean

Parameters

  • fileName?: string

Returns

  • boolean

get_game_state(): unknown

Returns

  • unknown

set_game_state(state: any): boolean

Parameters

  • state: any

Returns

  • boolean

save_file_by_path(data: any, filePath: string): boolean

Parameters

  • data: any
  • filePath: string

Returns

  • boolean

load_file_by_path(path: string): unknown

Parameters

  • path: string

Returns

  • unknown

save_file_by_name(data: any, fileName: string): boolean

Parameters

  • data: any
  • fileName: string

Returns

  • boolean

load_file_by_name(fileName: string): unknown

Parameters

  • fileName: string

Returns

  • unknown

set_autosave_timer(seconds: number)

Parameters

  • seconds: number

get_save_path(fileName?: string): string

Parameters

  • fileName?: string

Returns

  • string

get_save_version(): number

Returns

  • number

set_migrations(migrationList: ((this: void, gameState: any, logger: LoggerInstance) => any)[])

Parameters

  • migrationList: ((this: void, gameState: any, logger: LoggerInstance) => any)[]

apply_migrations()

set_logger(logger: LoggerInstance)

Parameters

  • logger: LoggerInstance

set_logger(remove_logger: undefined)

Parameters

  • remove_logger: undefined

get_current_game_project_folder(): string | undefined

Returns

  • string | undefined

Types

LoggerInstance.trace(this: any, message: string, data?: {})

Parameters

  • this: any
  • message: string
  • data?: {}

LoggerInstance.debug(this: any, message: string, data?: {})

Parameters

  • this: any
  • message: string
  • data?: {}

LoggerInstance.info(this: any, message: string, data?: {})

Parameters

  • this: any
  • message: string
  • data?: {}

LoggerInstance.warn(this: any, message: string, data?: {})

Parameters

  • this: any
  • message: string
  • data?: {}

LoggerInstance.error(this: any, message: string, data?: {})

Parameters

  • this: any
  • message: string
  • data?: {}