The GUI library used by Near Infinity is very old and static. It will probably never fully adapt to high DPI screens without external hacks, which includes the icon label size in the Area Viewer. However, I can experiment with the global UI defaults and see if it results in something useful.
Added option to scale the default font sizes of UI controls (Options > Change Global Font Size), which should improve usability on high DPI monitors.
Switched color selection control, as used by creature colors or effect opcode 7 (Set Color), from slider to list.
Area Viewer: Use individual color shades for different region types (trap, info, travel).
BAM Converter: Resize filter supports scaling along individual axes.
Improved description of PRO area flag labels regarding target selection.
Improved icon display of SPL and ITM resources in Viewer tabs.
Reference search should ignore empty CRE script names.
Fixed a bug that prevented BALDUR.SAV files from being compressed if they contained empty files.
Various internal fixes and optimizations.
The new option "Change Global Font Size" (found under Options menu) has been added to help users on monitors with 4k or higher resolutions. I didn't have the opportunity to test NI with these resolutions yet, so any feedback is highly appreciated.
Hi @argent77 , I see you've changed the aoe description in .pro files, but now I got confused in Haste spell where the description has both "Affect only enemies (6)" and "Affect only allies (7)" flags, which is not how the spell behaves in game - it affects only green-circles. Could you elaborate what's "allies" in here? Thanks.
That's how the PRO target selection bits are working. It's actually a group of two bits that should be evaluated as a single unit.
AoE flags bits 7 and 6 (as described in IESDP): 00 - Affect all targets 01 - Affect only enemies 10 - Affect all targets 11 - Affect only allies
The old description was less accurate and could be interpreted in several different ways. The new description should be more specific and provides a tooltip with additional help for the flag with asterisk (*).
@islandking The "Affect only Allies(7)" flag only works when "Affect only enemies(6)" is also checked. It might be easier to think of it like this: The first one just turns on EA targeting, the second determines the mode. 6) EA targeting: OFF/0, ON/1 7) EA target mode: OFF/0 = Enemy only, ON/1 = Ally only
Requesting more features Can we have more displayed icon labels, eg. containers, regions. Also, now that we have the improved color shades for different region types, is it still possible to red-color the trapped containers?
Requesting more features Can we have more displayed icon labels, eg. containers, regions. Also, now that we have the improved color shades for different region types, is it still possible to red-color the trapped containers?
Containers, regions, etc. don't use icons. They're using polygons instead, which can have any shape and size. It wouldn't really work to implement labels for them.
I don't want to clutter the area viewer with too many color codes either. However, I could add trap/lock information to info box and tooltips.
@argent77 Doesn't necessarily be the labels, if the mouse over tooltips (with traps/lock info you've mentioned) of containers, regions can always stay on, that'd suffice. I made this request because these tooltips can specify each container & region's name thus the area guide can pinpoint them by listing the names then give detailed info to each of them. But as we've discussed before some areas are too large for the snapshot, and if be zoomed-out, the icons will then be large enough cover space around them, specially for areas with many icons. So either we can make the icons small for a zoomed-out snapshot, or better yet, we have an option of exporting the full sized labelled map in addition to the original map.
More fixed zoom levels are certainly doable. Using custom values will be more complicated to implements though.
As a side effect, this change will probably confuse stored zoom settings when you upgrade from a previous NI version, since zoom level is stored as index internally. You would have to manually reset zoom level once to fix it.
So, I noticed that in my game there are a handful of invalid strings. One of them is #44916 -> When I open the string table in NI, I cannot find that number (it seems that strings run from #0 to #36504). Am I doing something wrong?
Are these mod-related strings? Have you selected the same language in NI as for the game (and for WeiDU)?
Yes, I'm talking about mod-related strings (Spell Revision and Atweaks). I'm pretty sure I've selected the same language in NI as for the game (and for WeiDU, my weidu.conf is set to en_US) -> I'll check again later when I am in front of my computer.... Anyway, why are there invalid strings if I successfully installed (without warnings) those mods?
There is most likely nothing wrong with the mod installation itself.
As I said, language of game, WeiDU and NI must be the same to see the new strings. Selecting Autotected language in NI doesn't necessarily use the right language. In this case there are several factors that come into play how the language is choosen.
There is most likely nothing wrong with the mod installation itself.
As I said, language of game, WeiDU and NI must be the same to see the new strings. Selecting Autotected language in NI doesn't necessarily use the right language. In this case there are several factors that come into play how the language is choosen.
So, still no go:
I set the language of NI to English (Options -> TLK Language (EE only) -> English (en_US);
The language of WeiDU is English (if I open weidu.conf I can read: lang_dir = en_us);
The language of game is English (since before installing the first mod I was asked to select a language for the game and I chose English)
Which game are you playing? BGEE+SoD from GOG/Steam requires modmerge before installing mods.
Are the strings correctly displayed in the game?
Also make sure to not have a copy of the dialog.tlk in the root folder of the game. It shouldn't affect NI (or the game itself), but I don't know if this also applies to WeiDU.
Which game are you playing? BGEE+SoD from GOG/Steam requires modmerge before installing mods.
I am modding the iOS version of the game. If you follow my guide, you can get to the game folder (where chitin.key is) and from there install weidu mods normally. In any case, the developers said that mobile version doesn't use multiple .tlk files, so mod-merge isn't required.
No, since I get, for example: invalid string: 44916. The problem is that I am able to locate that string in NI (Search -> StringRef -> 44916 -> Find References), but when I click on edit, string #36504 pops up (simply because 44916 is not between 0 and 36504).
Also make sure to not have a copy of the dialog.tlk in the root folder of the game. It shouldn't affect NI (or the game itself), but I don't know if this also applies to WeiDU.
What do you mean by root folder? There is only one copy of the dialog.tlk in my /lang/en_US folder....
Also make sure to not have a copy of the dialog.tlk in the root folder of the game. It shouldn't affect NI (or the game itself), but I don't know if this also applies to WeiDU.
What do you mean by root folder? There is only one copy of the dialog.tlk in my /lang/en_US folder....
Just covering all options. It was a trick to make legacy WeiDU mods work on EE games in the olden days.
No, since I get, for example: invalid string: 44916. The problem is that I am able to locate that string in NI (Search -> StringRef -> 44916 -> Find References), but when I click on edit, string #36504 pops up (simply because 44916 is not between 0 and 36504).
If the strings are not found in NI and the game, then they are not installed at all. String references (the numeric values) are independent of the actual of strings. You can set them to whatever you like. For example, you might find "magic" strref numbers in some of the games (e.g. -1 to force a non-existing string, or 9999999 for some unknown reason).
Check if the dialog.tlk is writeable. Since WeiDU was able to update strrefs it should have found the correct dialog.tlk either.
I don't know what else can be done. It appears to be more of a local or WeiDU-related issue.
If the strings are not found in NI and the game, then they are not installed at all. String references (the numeric values) are independent of the actual of strings. You can set them to whatever you like. For example, you might find "magic" strref numbers in some of the games (e.g. -1 to force a non-existing string, or 9999999 for some unknown reason).
Just to clarify: if you look at the following screenshot, you can see that string #44916 is present in NI (and also in the game, so it is installed). But as soon as I click edit, the editor for another string pops up....
Yeah, that's what I meant with the strref value not pointing to a valid string. The mod or installation process didn't add a string that relates to the strref in question.
Another explanation could be that the mod in question simply installed the spell resource, but didn't update the strref to a valid string. The strref seen in the screenshot could be a random strref used by the modder in their local game installation.
It's difficult to determine the real cause from afar. Either way, it's not an issue with Near Infinity or the game itself, but more likely with the mod or mod installation process.
Cut/copy and paste operations automatically convert EFF V1.0 structures into EFF V2.0 and vice versa if needed.
Area Viewer: Added setting to disable individual region shades.
Area Viewer: Added option to specify a custom map zoom factor. Select "Custom" from the combobox list.
Area Viewer: Containers, doors and regions provide additional info in quick info box and tooltips (e.g. lock/trap state or associated scripts).
List of codes for ITM > Equipped appearance is determined dynamically based on available game resources. It replaces the (inaccurate) static list from previous versions.
Extended "Edit as string" option from popup menu for ITM > Equipped appearance field.
Added ITM to allowed resource types for opcodes 258, 260, 318, 321 and 324.
Updated several field names in EFF V2.0 structures.
Some internal optimizations.
Btw, has anyone had a chance to test the option "Change Global Font Size" on high DPI monitors yet, that were added by the previous NI release?
I'm sorry if this has been answered before, I can't find the .png when exporting an area map to a png. What is the name of the png created by the export? Thanks.
I'm sorry if this has been answered before, I can't find the .png when exporting an area map to a png. What is the name of the png created by the export? Thanks.
The Save Dialog will point to the game's installation folder by default (where you can find the chitin.key). The suggested filename of the exported file should be the same as the area code (e.g. map of AR0400.ARE will be presented as AR0400.PNG in the save dialog).
Does the debug console show something (Tools > Show Debug Console)?
Btw, map export requires a lot of memory. The operation may fail if you're running Near Infinity with the 32-bit Java Runtime. In that case you should install the 64-bit version if possible.
Comments
Wonder if there's any chance to have an option to adjust the sizes of the icon labels (actors, map notes etc) ?
Thanks.
Update: NearInfinity v2.1-20171124
Changes:The new option "Change Global Font Size" (found under Options menu) has been added to help users on monitors with 4k or higher resolutions. I didn't have the opportunity to test NI with these resolutions yet, so any feedback is highly appreciated.
I see you've changed the aoe description in .pro files, but now I got confused in Haste spell where the description has both "Affect only enemies (6)" and "Affect only allies (7)" flags, which is not how the spell behaves in game - it affects only green-circles.
Could you elaborate what's "allies" in here?
Thanks.
AoE flags bits 7 and 6 (as described in IESDP):
00 - Affect all targets
01 - Affect only enemies
10 - Affect all targets
11 - Affect only allies
The old description was less accurate and could be interpreted in several different ways. The new description should be more specific and provides a tooltip with additional help for the flag with asterisk (*).
The "Affect only Allies(7)" flag only works when "Affect only enemies(6)" is also checked.
It might be easier to think of it like this: The first one just turns on EA targeting, the second determines the mode.
6) EA targeting: OFF/0, ON/1
7) EA target mode: OFF/0 = Enemy only, ON/1 = Ally only
Thanks for the clarification.
Can we have more displayed icon labels, eg. containers, regions.
Also, now that we have the improved color shades for different region types, is it still possible to red-color the trapped containers?
I don't want to clutter the area viewer with too many color codes either. However, I could add trap/lock information to info box and tooltips.
Doesn't necessarily be the labels, if the mouse over tooltips (with traps/lock info you've mentioned) of containers, regions can always stay on, that'd suffice.
I made this request because these tooltips can specify each container & region's name thus the area guide can pinpoint them by listing the names then give detailed info to each of them.
But as we've discussed before some areas are too large for the snapshot, and if be zoomed-out, the icons will then be large enough cover space around them, specially for areas with many icons. So either we can make the icons small for a zoomed-out snapshot, or better yet, we have an option of exporting the full sized labelled map in addition to the original map.
Could you add more ratios from 50% to 100% to the Zoom map function, or let users to custom the magnifier number?
Thank you.
As a side effect, this change will probably confuse stored zoom settings when you upgrade from a previous NI version, since zoom level is stored as index internally. You would have to manually reset zoom level once to fix it.
Anyway, why are there invalid strings if I successfully installed (without warnings) those mods?
As I said, language of game, WeiDU and NI must be the same to see the new strings. Selecting Autotected language in NI doesn't necessarily use the right language. In this case there are several factors that come into play how the language is choosen.
- I set the language of NI to English (Options -> TLK Language (EE only) -> English (en_US);
- The language of WeiDU is English (if I open weidu.conf I can read: lang_dir = en_us);
- The language of game is English (since before installing the first mod I was asked to select a language for the game and I chose English)
Do you have any other tips?Are the strings correctly displayed in the game?
Also make sure to not have a copy of the dialog.tlk in the root folder of the game. It shouldn't affect NI (or the game itself), but I don't know if this also applies to WeiDU.
If the strings are not found in NI and the game, then they are not installed at all. String references (the numeric values) are independent of the actual of strings. You can set them to whatever you like. For example, you might find "magic" strref numbers in some of the games (e.g. -1 to force a non-existing string, or 9999999 for some unknown reason).
Check if the dialog.tlk is writeable. Since WeiDU was able to update strrefs it should have found the correct dialog.tlk either.
I don't know what else can be done. It appears to be more of a local or WeiDU-related issue.
Another explanation could be that the mod in question simply installed the spell resource, but didn't update the strref to a valid string. The strref seen in the screenshot could be a random strref used by the modder in their local game installation.
It's difficult to determine the real cause from afar. Either way, it's not an issue with Near Infinity or the game itself, but more likely with the mod or mod installation process.
Update: NearInfinity v2.1-20171222
Changes:Btw, has anyone had a chance to test the option "Change Global Font Size" on high DPI monitors yet, that were added by the previous NI release?
I can record it if it helps.
Btw, map export requires a lot of memory. The operation may fail if you're running Near Infinity with the 32-bit Java Runtime. In that case you should install the 64-bit version if possible.