https://github.com/zeldamods/event-editor
Event flow editor for Breath of the Wild
https://github.com/zeldamods/event-editor
botw nintendo-switch nintendo-wii-u python3 zelda
Last synced: about 1 year ago
JSON representation
Event flow editor for Breath of the Wild
- Host: GitHub
- URL: https://github.com/zeldamods/event-editor
- Owner: zeldamods
- License: gpl-2.0
- Created: 2018-08-15T17:45:21.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2024-07-07T18:07:28.000Z (almost 2 years ago)
- Last Synced: 2025-06-15T11:57:15.423Z (about 1 year ago)
- Topics: botw, nintendo-switch, nintendo-wii-u, python3, zelda
- Language: JavaScript
- Size: 560 KB
- Stars: 30
- Watchers: 2
- Forks: 10
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## EventEditor for Breath of the Wild
### Setup
Install Python 3.6+ (**64 bit version**) and PyQt5, then run `pip install eventeditor`.
### Configuration
The configuration file is stored:
* On Linux or macOS: at `~/.config/eventeditor/eventeditor.ini`
* On Windows: at `%APPDATA%/eventeditor/eventeditor.ini`
### Auto-completion
#### Breath of the Wild
In order to enable auto-completion for actors, actions, and queries, add:
```ini
[paths]
rom_root=/path/to/game_rom
```
to EventEditor's configuration file, where `/path/to/game_rom` is a path such that
`/path/to/game_rom/Pack/Bootup.pack/Actor/AIDef/AIDef_Game.product.sbyml` exists.
An easy, recommended way to get the required file structure without extracting every archive
is to use [botwfstools](https://github.com/leoetlino/botwfstools).
#### Other games
Alternatively, JSON actor definitions can be generated under *Flowchart* > *Export actor definition data to JSON*. This will generate information for auto-completion from the currently open event flow. The first time this is run, a prompt will appear asking for where to save this information.
This action can be safely repeated in case other event flows contain actors, actions, or queries that have yet to be included in the JSON file (existing entries will not be overwritten).
### Known issues
* On Linux, if the main window view is a completely blank screen, even after opening a file, try running `QTWEBENGINE_DISABLE_SANDBOX=1 eventeditor` to start the tool.
* Unlinking events while in fork/join will break graph generation most of the time. So using that option is not recommended when fork/join events are involved.
### What needs to be done
* Timeline files (reverse engineering)
* Collect event info from EventInfo and have a metadata file for each event flow, so that:
* EventInfo can be automatically regenerated
* All copies of an event flow can be automatically updated
* Node order shuffling to get less crossings. This used to be a dagre.js feature but it got removed...
### License
This software is licensed under the terms of the GNU General Public License, version 2 or later.