Skip to content

photographer_cfg_table.yml format is nigh-unusable #335

@Supremekirb

Description

@Supremekirb

The data for photographs taken during the game and displayed during the end credits, decompiled to photographer_cfg_table.yml, is presented by CoilSnake in a format that makes it almost impossible to edit. Other resources that document the format are complete with no unknowns.

Here is the first entry in CoilSnake's format:

0:
  Event Flag: 0x2ba
  Unknown A:
  - 76
  - 1
  - 43
  Unknown B: 0
  Unknown C: 0x0
  Unknown D:
  - 0
  - 0
  - 73
  - 1
  - 56
  - 0
  - 75
  - 1
  - 45
  - 0
  - 73
  - 1
  - 44
  - 0
  - 77
  - 1
  - 44
  - 0
  - 79
  - 1
  - 43
  - 0
  - 71
  - 1
  - 44
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0
  - 0

And the same again in Herringway's disassembly:

	.WORD EVENT_FLAG::FLG_PHOTO_1
	.WORD $014C, $002B ;map (X,Y)
	.WORD $0000 ;Palette offset
	.BYTE $00 ;Slide direction
	.BYTE $00 ;Slide distance
	.WORD $0149, $0038 ;Photographer (X,Y)
	.WORD $014B, $002D ;Party member 1 (X,Y)
	.WORD $0149, $002C ;Party member 2 (X,Y)
	.WORD $014D, $002C ;Party member 3 (X,Y)
	.WORD $014F, $002B ;Party member 4 (X,Y)
	.WORD $0147, $002C ;Party member 5 (X,Y)
	.WORD $0000, $0000 ;Party member 6 (X,Y)
	.WORD $0000, $0000 ;NPC 1 coordinates
	.WORD OVERWORLD_SPRITE::NONE ;NPC 1 sprite
	.WORD $0000, $0000 ;NPC 2 coordinates
	.WORD OVERWORLD_SPRITE::NONE ;NPC 2 sprite
	.WORD $0000, $0000 ;NPC 3 coordinates
	.WORD OVERWORLD_SPRITE::NONE ;NPC 3 sprite
	.WORD $0000, $0000 ;NPC 4 coordinates
	.WORD OVERWORLD_SPRITE::NONE ;NPC 4 sprite

It seems like somebody tried to figure it out, but then eventually gave up and left a massive array of bytes, which in turn became represented as a list of decimal integers in this yml file.

Improving this format makes it easier to both edit by hand and make tools for.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions