-
-
Notifications
You must be signed in to change notification settings - Fork 35
Open
Description
As of this moment, moddesc properties such as altfiles or altdlc do not support new lines in middle of the blocks, as well as have limited whitespace support. As those blocks can be thousands of characters long, this causes writing complicated install options difficult.
Alternatives I've tried
-
Using significant amount of whitespace where possible:
- What worked here: this is my current go-to to create visual separation between install options
- What doesn't work: unfortunately it's a hacky workaround which -- while creating some visual separation -- leaves all the option misaligned in a text editor and has limits on where the whitespaces can be inserted
-
Using a separate moddesc.ini file with newlines and removing them for the final release:
- What worked here: can neatly format the file so that it can be comfortably worked on
- What doesn't work: the need to maintain two separate moddesc files - one for development, and another for shipping - vastly lowers the development and iteration speed, as well as creates potential issues with wrong removing of the new lines.
-
Using the moddesc editor:
- What doesn't work: the moddesc editor lacks crucial file-editing functionality, like copy-pasting or being able to quickly navigate through options with keyboard, making it a non-suitable replacement for mods with large amounts of options.
Proposed solution
The solution I would like to see would be the ability to escape new lines with \, C++ - macro style. It would allow an altdlc to be written as such:
altdlc = (\
(\
Condition=COND_MANUAL,\
ModOperation=OP_SUBSTITUTE,\
AltFile=InstantUnlockAlt\BIOGame.ini,\
ModFile=DLC_EXP_MdrnWpn\CookedPCConsole\BIOGame.ini,\
FriendlyName="Instant unlocks",\
Description="Check to unlock all the weapons instantly.",\
CheckedByDefault=False\
)\
)The sequences of \\\r\n and \\\n would be then replaced with empty string, to maintain the compatibility with ini file format.
Metadata
Metadata
Assignees
Labels
No labels