• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

Dayshine

Second Lieutenant
43 Badges
Aug 25, 2016
111
45
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Common Sense
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Conclave
  • Stellaris
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings II: Horse Lords
  • BATTLETECH
  • Surviving Mars
  • Stellaris: Humanoids Species Pack
  • Cities: Skylines - Parklife
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III
  • Crusader Kings III: Royal Edition
  • Europa Universalis IV: El Dorado
  • Crusader Kings II: Way of Life
  • Cities: Skylines
  • Europa Universalis IV
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Imperator: Rome
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Stellaris - Path to Destruction bundle
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Call to arms event
  • Magicka
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Mare Nostrum
  • Sword of the Stars II
  • Crusader Kings II
CK2 Events viewer (working title) is a standalone tool that draws an interactive graph of events and how they connect to each other. Point it at your game directory, choose the rip_eternal_life file and it'll show you how to finally get that immortal character. It'll even try to pull in localisation so you don't have to look it up what WoL10202OPTA means.

It supports CK2, HOI4, EU4 ad Stellaris.

Current version: v0.2.0
Released: 2017-12-28

I've only tested it against 2.7.2 but it should be fine with any version.

A4919kq.png

v0.2.0
* Add EU4 and Stellaris event support
* Add localisation support for HOI4, EU4 and Stellaris
* Choose localisation language
* Use native menus

v0.1.4
* Fix details view to correctly output event file data
* Add HOI4 event support

v0.1.3
* Support multiple event files in one graph
* Fix settings saving/game folder validation

v0.1.2
* Make localisation more resilient
* Add localisation status page
* Add option to bundle multiple edges

v0.1.1
* Add naive handling of ">=", "<=", etc
* Tell the user when the parser fails (and why)
* Add error page for application crashes
* Close the application when all windows are shut
* Remember game directory setting

v0.1
* First release

Usage instructions:
  1. Download the attached file "CK2Events-win-0.2.0.7z"
  2. Extract into a folder of your choice
  3. If linux, set execute permissions
  4. Run "CK2Events.exe"
Requirements:
None, although the current versions only supports Windows and Linux. Mac builds may come eventually.

Possible future features:
  • Key for graph
  • Show is_triggered_only
  • Better details view (breakdown of conditions for options?)
  • Replace electron branding
  • Show links from decisions to events
  • Add graph display settings
    • Bundle edges when more than say 5
    • Straight edges instead of curves?
    • Multiple layout options
  • Improve localisation
Notice: Use at your own risk, this app is still in early development.
 

Attachments

  • CK2Events-0.1.4.7zip
    64,8 MB · Views: 53
  • CK2Events-win-0.2.0.7z
    64,9 MB · Views: 128
  • CK2Events-linux-0.2.0.7z
    97,3 MB · Views: 12
Last edited:
It doesn't work, at least with 2.8.1. Screen stays empty after selecting events folder. Then if you close the app it doesn't load anymore.

Try selecting the game folder not the events folder.

I need to add error notifications for the user.

If you kill the application in task manager you should be able to run it again, I'll look into getting it to tidy itself up when it crashes!
 
Ok now it's working. This tool is very useful. Thanks.
I think you should change the select events folder with base game/mod folder to avoid confusion.
There's a bug when you click on select event folder and then click cancel (or any incorrect folder), the screen stays blank . It requires closing it, reopening and waiting like 10 sec for the menu to reappear.
Also, antivirus flags it as IDP.Generic
 
I think you should change the select events folder with base game/mod folder to avoid confusion.
There's a bug when you click on select event folder and then click cancel (or any incorrect folder), the screen stays blank . It requires closing it, reopening and waiting like 10 sec for the menu to reappear.

I'll try and make these changes tonight.


Very interesting. Does it work with mods? Does work with chains that go between several files, .

It should work with mods as long as I've got the file format right and the mod doesn't have any syntax errors.
Are multi-file chains common? I didn't come across any examples in the base game event files, but there's no reason I couldn't allow you to create a graph from more than one file.
The graph could be *huge* though!

or that are started outside of an event file (e.g. by a decision or an on_action)
I had no idea this was a thing, could you point me at an example? I'll look at how easy it would be to include those.
 
I'll try and make these changes tonight.




It should work with mods as long as I've got the file format right and the mod doesn't have any syntax errors.
Are multi-file chains common? I didn't come across any examples in the base game event files, but there's no reason I couldn't allow you to create a graph from more than one file.
The graph could be *huge* though!


I had no idea this was a thing, could you point me at an example? I'll look at how easy it would be to include those.

The wol_seduction events start in the targeted decision to seduce someone (I think the file for that is called something along wol_decisions).
 
Great! Wow this could be really helpful, especially to find non-syntax errors that the validator will not pick up.
Immensely useful if you plan to draw huge chains of events (which I do), so thx a lot!

It should work with mods as long as I've got the file format right and the mod doesn't have any syntax errors.
Are multi-file chains common? I didn't come across any examples in the base game event files, but there's no reason I couldn't allow you to create a graph from more than one file.
The graph could be *huge* though!
That definitely should be a thing. There are examples in vanilla even I think, but I can't name one from memory. But yeah, in mods you might do that frequently. edit: okay there really is an example, see the post above

I had no idea this was a thing, could you point me at an example? I'll look at how easy it would be to include those.
Well, frankly I don't think that is this that important - every decision will call a certain event, and you can start this tool from that event. It shouldn't be too hard to take a look at the decisions file to see the first event, and then search from there on.
But of course, if it can be added, then there's no reason to not do it, because it'd be even more comfortable.
Edit: As for an example, in vanilla minor_decisions.txt, there is the decision for a feast, that will call a feast event:
Code:
decisions = {
   
    feast_0 = {
        only_playable = yes
        ai_check_interval = 12
        potential = {
            ...
        }
        allow = {
            ...
        }
        effect = {
            ...
            hidden_tooltip = {
                character_event = {
                    id = 72109
                }
            }
            ...
        }
        ...
    }
   
    ...
}
 
Look interesting, doesn't seem to work with my trade league or chivalry mod however. Perhaps the file is too long (chivalry is 25k lines, with a lot of large scripted trigger in additions) or events that goes in circles break it?
 
Look interesting, doesn't seem to work with my trade league or chivalry mod however. Perhaps the file is too long (chivalry is 25k lines, with a lot of large scripted trigger in additions) or events that goes in circles break it?
I tested "The Great Trade League". It fails because on line 94 you have
Code:
society_rank <= 3
None of the base game events have greater than/less than, so my parser fails.

I'll add that into the grammar, and I'll add some feedback when it fails to parse!
 
I tested "The Great Trade League". It fails because on line 94 you have
Code:
society_rank <= 3
None of the base game events have greater than/less than, so my parser fails.

I'll add that into the grammar, and I'll add some feedback when it fails to parse!

Neat, and just for accuracy, some of the vanilla events (specially societies ones) since Monks and Mystics have > < >= <= == signs and jade dragons added them to more events too.
 
Neat, and just for accuracy, some of the vanilla events (specially societies ones) since Monks and Mystics have > < >= <= == signs and jade dragons added them to more events too.
A teaser for you:
r55hFQ33STyPGnuXFftXjg.png

I'll release a new version tomorrow with fixes for some of the issues mentioned so far.
 
Interesting, your tool see the #comment above each events?

Thanks in any cases, I'm curious to see how it'll look.
 
v0.1.1
Edit: Now attached at the top

I'll release version 0.1.1 later today, which probably supports jade dragon. Let me know if there are any errors!

v0.1.1
* Add naive handling of ">=", "<=", etc
* Tell the user when the parser fails (and why)
* Add error page for application crashes
* Close the application when all windows are shut
* Remember game directory setting

Interesting, your tool see the #comment above each events?
It looks like it's the convention people use for naming events, so I take the last comment before the event and assume that's relevant!
I could try and use "desc" but the first few words are usually flavour-text and don't actually tell you much.
 
Last edited:
I was expecting one of the event chain (my duel engine) in my martial societies mod to be a mess, but I didn't expect it to be this bad lol.
NqXIzhE.png

In any case, cool work.
 
Got this when trying it on my mod :/

Exception: Invalid CSV file: header row not found

Do you need the full log ?


edit:does it mean i need to have :
Code:
#CODE;ENGLISH;FRENCH;GERMAN;;SPANISH;;;;;;;;;x
at the top of each localisation file ? or only the first read ?
 
Last edited:
I was expecting one of the event chain (my duel engine) in my martial societies mod to be a mess, but I didn't expect it to be this bad lol.

I'll add an option to show only a single edge when there are multiple between the same nodes, should tidy that up a bit. :)

edit:does it mean i need to have :
Code:
#CODE;ENGLISH;FRENCH;GERMAN;;SPANISH;;;;;;;;;x
at the top of each localisation file ? or only the first read ?

If it tells you which file it failed on that would be good to know (and if it's a mod file a copy of it!)
I would guess it's expecting headers on every file yes, I'll see if I can turn that requirement off (or at least just ignore that file).
 
If it tells you which file it failed on that would be good to know (and if it's a mod file a copy of it!)
I would guess it's expecting headers on every file yes, I'll see if I can turn that requirement off (or at least just ignore that file).
It doesn't point the specific file, no.
 
v0.1.2
I've released version v0.1.2, which makes localisation errors more transparent and lets you bundle edges to stop really messy graphs!

v0.1.2
* Make localisation more resilient
* Add localisation status page
* Add option to bundle multiple edges