Svengali wrote:e.g if it's possible to define allowed input characters for the current instance or which chars are allowed at all (wink wink suggest suggest).
Maybe. Because of the way the text input works at a low level (I just borrowed the function used for save game and system search), there'd only be a very limited number of alternative definitions - it might be more practical to handle it in the processing script by either rejecting invalid input and redisplaying, or stripping those characters out of the data, as appropriate.
Continuing, in addition to steadily going along with the AI enhancements and related features, one of the bits that came up was a need to flexibly specify certain ship roles as being equivalent to each other for a particular purpose. We already do this in 1.77 for pirate victims with
pirate-victim-roles.plist
, but there are now other roles needing similar treatment. So, there's now a
role-categories.plist
, which obsoletes
pirate-victim-roles.plist
(no need to rewrite OXPs - existing files will of course get processed compatibly)
Here's a couple of entries from it:
Code: Select all
/* Roles used by bounty hunters */
"oolite-bounty-hunter" = (
"hunter",
"hunter-medium",
"hunter-heavy"
);
/* Roles that often attack pirates */
"oolite-pirate-enemy" = (
"hunter",
"hunter-medium",
"hunter-heavy",
"interceptor",
"police",
"police-station-patrol",
"police-witchpoint-patrol"
);
So, if you wanted to add another sort of pirate hunter, you could put your own in, with
Code: Select all
"oolite-pirate-enemy" = (
"myoxp-mercenary-protection"
);
and pirates would react to it in the same way as they do to bounty hunters and police. You can make your own role categories, too.
For those paying very close attention to detail: yes, this file merges in slightly differently to a standard plist dictionary, so the OXP code there does something useful rather than overwriting the standard definition.