dogma-editor
Table of Contents
Description
dogma-editor is an editor for EVE Online cache2 bulkdata
You start by running dogma-dump.py, you may need to edit the cache_path variable to have it generate a proper SQLite3 database
After that you should be able to open dogma-editor.
Module Flags
This module provides no flags.
Hacks
ImGui Themer
Custom on-the-fly theme engine for ImGui, see src/imgui_themer.h and src/default_dark.cpp
Prerequisites
To build dogma-editor you will need glfw installed system-wide
Feature Matrix
feature | status |
---|---|
Viewing bulkdata | done |
Searching bulkdata | partially-done |
Editing bulkdata | partially-done |
Viewing bulkdata
If you have successfully exported your cache2 files into an SQLite3 database then you can view them in dogma-editor. See Searching bulkdata for caveats.
Searching bulkdata
Each bulkdata recordset allows you to search, however for some sets it will not work. The code generation for dogma editor looks for a ‘name’ or ‘Name’ for the record fields. If it doesn’t find one, searching will be disabled. In most cases, dogma-editor will indicate if a recordset is searchable or not
Editing bulkdata
When viewing a record, all of the values should be editable. When you’re done making changes mark the record as dirty.
Configuration
To start, make sure you have a clean set of `.cache2` files. Edit dogma-dump.py to point to the path of your `.cache2` files. This will generate your bulkdata.db. Alternativly use the one provided in the git repo.
To ensure icons render for applicable edit windows, make a folder `stuffs` in the same directory as the dogma-editor binary. Copy the following `.stuff` files into the `stuffs` directory
- resui.stuff
- resui01.stuff
Troubleshooting
Common issues and their solution, or places to look for help.
WIP [1/7]
cacheDogmaExpressions
OperandID needs to be named with stuff that can be user-readable.
STRT cacheDogmaTypeAttributes
This recordset is not searchable. In this case, should we just list out all records? This has been done, we should test searchablity so the user doesn’t have to type into the search box
Export to MySQL dumps…
Not sure of the best way to do this, it will definitely introduce some jank to our codegen
Saving objects that have the same no unique keys will be difficult.
See: cacheDogmaTypeEffects for an example Maybe when generating the database, we should determine if we need to create an index
iconID index
format is XX_SIZE_XX need to scan for available sizes
iconID picker
If you open a window more than once it will draw the UI twice
We need to add a function when pushing edit windows
- [x] Check tag_*
- [x] Check TypeID