Skip to content

Conflicted Objects

Mario edited this page Jul 12, 2022 · 7 revisions

1

Conflicted Objects view contains a game logic hierarchy of all detected conflicts. Selecting a conflict is easy as opening the dropdown and selecting a conflicted hierarchy folder.

2

After that use the listbox to select a definition.

3

Reset Indicators

Irony by default resets any conflicts if it detects they were modified (i.e a mod file was updated by mod author). The reset happens to bring the change to your attention. These reset conflicts are now indicated on the conflicted objects listbox.

  • Red border around a conflicted object indicates that the reset conflict was previously resolved item
  • Yellow border around a conflicted object indicates that the reset conflict was previously ignored item

To toggle the listbox to only show these items you can toggle this option in the Mod Filter.

Invalid Objects

From time to time Irony can detect what appears to be an invalid definition, this data is gathered by utilizing underneath excellent CWTools. Such errors indicate that a file potentially has an issue and may not perform in the game. These objects can be found in the dropdown under "Invalid" section. By selecting an invalid section you can see the details of the parsing error on the right hand side.

4

For mod developers

If you believe your mod was flagged incorrectly you can write a comment in your script # Dear Irony please fallback to simple parser and this will force Irony to not use CWTools parser but will instead switch to a less sensitive parser.

Sometimes you might also have a definition which you don't want picked up by Irony as this is a placeholder (contains only empty code). There are 2 ways to tell Irony to ignore some definitions:

  1. Put anywhere in a file on a single line:

    # Irony this is a placeholder file please ignore it

    This will tell Irony to ignore any code in that file when it detects duplicates.

  2. Selectively declare definitions by ids using csv. Put on a single line as well:

    # Irony these are placeholder objects please ignore them: id1,id2

Please note that the following identifiers look for an exact match so be sure to copy and paste exactly. Finally note that sometimes Irony might ignore these comments in situations where it detects that your placeholder might win a conflict in a FIOS\LIOS situation.