Skip to content

Declarative approach #4

@SmalkiGroove

Description

@SmalkiGroove

Hey,

I was thinking of a better way to work on rom hacking, hear me out :

  • every class that handles editing of some part of the ROM would have a task serializer and deserializer
  • making a change to the ROM through the editor writes it into a local file as a YAML or other data format
  • add a section to run a playbook from YAML file or text (or other) and it would perform the binary editing accordingly

If you are familiar with tools such as Ansible that is kinda what i'm thinking of, because when you lose or corrupt a ROM that you have spent days and days working on you don't want to restart everything manually on some editors you know.

Example of task :

tasks:
- kind: Ability
  id: 53
  data:
    mpCost: 50
    rangeAoeType: "weapon"
    effect-2:
      targets: "self"
      effect: "recover-hp"
...

or alternativerly use enum ineger values instead of strings but with a comment next to it to describe :

...
    rangeAoeType: 2 # line
...

Also that would be useful to share patches to other people. Thoughts ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions