Also I keep finding the weirdest thing going on. I'll edit an item, creature, or spell and save the change and then when I go back to that item/creature/spell my changes won't appear to be there (instead it appears as though no changes are made). However, when I check my override folder, open the file as an external file, or play the game the changes have been implemented. I'm not really sure if this is something on my end, though from the looks of things I'm fairly certain its not a "read-only" issue, but I figured I'd report it here in case anyone else is finding this.
Edit: Apparently at some point I must have hit the setting that ignores the overrides. So just ignore this post
The game's cursor graphics are stored in the file CURSORS.BAM. You can extract them as PNGs or BMPs by selecting the BAM resource in the resource tree and clicking on "Export..." -> "all frames as graphics" at the bottom of the view area.
I have noticed that poison damage from Poison Weapon (the assassin ability) found in SPCL422A.EFF, as well as the other poison effects that creatures like Wyverns (Wyvern2.itm) isn't as clearly labelled as it used to be (i'm not certain when this changed but in a much older version of Near Infinity this was labelled). Now there are a couple of fields listed as unknown, who I assume are the equivalent of an "amount" field but instead just provide series of numbers like
Unknown 02 00 00 00 h
Unfortunately I can't seem to figure out what the version was where this wasn't the case. In any case I guess I figured I'd just point this out.
Thanks for pointing this out. It looks like that for some reason the labeled fields for the poison effect have been removed at some point. The latest version with correct labels was NI v1.33b20 (from around 2010). Furthermore, only BG2 and BG(2)EE are affected. It'll be fixed in the next snapshot.
Changes: - Added "bpsave" folder support for BG(2)EE - Added preliminary game language selection support for BG(2)EE (found under menu Options->TLK Language (EE only)) - Fixed unknown or unhandled field names for a number of effect opcodes
I have to thank you for continuing to work on this fine tool. I downloaded your latest snapshot and I'm finding the script colour coding to be a very handy feature, among other things. Keep up the good work!
@argent77, I've found a small bug in the current version of NearInfinity.
To explain the issue, I will use, as example, AJANTI.DLG in BG:EE, but it affects others DLG files too.
If you perform a text search in the DLG files for the following string (including triggers and action scripts)
SetGlobal("NumberOfTalk","AR2900",1) and then double click the only hits found, NI will open erroneously the last dialogue state (in this case 12) instead of the correct one, i.e. the first dialogue state.
Basically, when searching for an action present in the first state of a dialogue, NI will erroneously return the last state instead.
I can confirm this behavior. It only happens if the keyword is found in the first action entry of the DLG file. The same is true when searching for state triggers or response triggers. I'll look into it.
Changes: - Bugfix in Extended Search: Input fields for numbers in the popup panels did not recognize entered values unless you manually removed focus from the field (e.g. by pressing the Tab key) - Fixed a bug when searching for actions or triggers in DLG resources - Expanded the number of slots in the "Recently Used Games" list and added an option to clear the list. - Added partial support for Icewind Dale: Enhanced Edition - Added "mpbpsave" folder support for BG(2)EE
@argent77, I have a couple of opcode identifier/label requests: Opcode 319 Restrict Item Offset 0x3 (Power): Label "Type", Values: 0 = Not usable by, 1 = Only usable by Offset 0x4 (Unused): If possible, an IDS listing if one is chosen in offset 0x5. Currently have to look up alignment/race/class/kit values manually.
Opcode 258 Activate spell sequencer & Opcode 260 Activate spell sequencer at point & Opcode 321 Remove effects by resource Offset 0x14: Currently a .spl file resource menu for 258 and 321, 260 is just raw. Really should just be a string field, as it can be used with both .spl and .itm file resources, and the .spl file doesn't even need to exist. If possible, optional resource menus for both .spl and .itm files, but not default.
Opcode 233 Modify Proficiencies Offset 0x4 (# Stars): Active class proficiency is stored in the first Octal, Dual-Class(original class) proficiency is stored in the second Octal. Is this possible to display? 034 = octal:42 = 2 stars active class, 4 stars original class //edited to correct
Opcode 214 Select Spell Offset 0x8 (show): Replace "All Spells (0)" with "From File (0)"
Opcode 197 Physical Mirror Offset 0x8 (Projectile): Replace Value "Unknown (0)", with "Melee / None (0)". This will reflect abilities with a projectile value of "0", which also includes all Melee attacks, by default, since they ignore their projectile field.
Opcode 191 Casting Level Bonus Offset 0x4 (Parameter 1): Label "Amount", reduce field to single byte. While I don't know if values above 255 are used by the opcode, the stats that it modifies overflow at 255 and go negative, so no reason to use a higher number.
Opcode 258 Activate spell sequencer & Opcode 260 Activate spell sequencer at point & Opcode 321 Remove effects by resource Offset 0x14: Currently a .spl file resource menu for 258 and 321, 260 is just raw. Really should just be a string field, as it can be used with both .spl and .itm file resources, and the .spl file doesn't even need to exist. If possible, optional resource menus for both .spl and .itm files, but not default.
NI doesn't work that way. The resource selection field has to be the default, but you can change it manually to one of the generic field types (string, hex, binary, decimal) by right-clicking into the field.
Opcode 233 Modify Proficiencies Offset 0x4 (# Stars): Active class proficiency is stored in the first Octal, Dual-Class(original class) proficiency is stored in the second Octal. Is this possible to display? 034 = octal:42 = 2 stars active class, 4 stars original class //edited to correct
Not sure if it's possible. I'll probably have to code a new field type for this.
NI doesn't work that way. The resource selection field has to be the default, but you can change it manually to one of the generic field types (string, hex, binary, decimal) by right-clicking into the field.
Okay, too bad. Then Opcode 260 just needs a resource selection field instead of just raw values, if only to be consistent with the others.
Maybe this has already been mentioned and dealt with, but I've noticed an issue with lag creeping in if I've been using Near Infinity for awhile when working on scripts. It seems to start happening after saving it a few times. Scrolling becomes very slow and unresponsive to the point where I find it's better just to shut it down and reboot. After that it will work fine, then the lag will start creeping in again. Considering the specs on my machine, I see no reason why that should be happening for a simple text based file. I don't have the issue with any other function, just when working with scripts.
Maybe this has already been mentioned and dealt with, but I've noticed an issue with lag creeping in if I've been using Near Infinity for awhile when working on scripts. It seems to start happening after saving it a few times. Scrolling becomes very slow and unresponsive to the point where I find it's better just to shut it down and reboot.
@Belanos I've tested it on my system and in a badly spec'ed Windows VM, but I didn't notice any performance degradation even after saving/loading dozens of BCS files. Does the debug console show anything (open it via Ctrl+D or Tools->Show Debug Console)?
Can you test if it's also happening with this specific NI version? It's the last version without syntax highlighting.
Alternatively you can try out the tool Hide NI DOS to start NearInfinity with enhanced memory parameters (browse to the end of the first post to find the download link). It helps when working with memory intensive features such as the area viewer. Maybe it also helps in your case.
Can you test if it's also happening with this specific NI version? It's the last version without syntax highlighting.
@argent77 I haven't gotten around to DL'ing the latest snapshot yet, I'll do that soon and let you know. I need to make some script changes anyway. It might be awhile though before I can get back to you. BTW it wasn't BSC scripts that I was encountering this issue, it was BS ones. I'm not sure if that would make a difference. I've been making up some custom AI scripts for my party members, using the eSeries scripts as a base. It's not a major issue by any means, though it is kind of annoying having to shut down every so often. I have some fairly long scripts and it can take some time to get back to where I left off when I restart. Sometimes I even forget where I left off.
I'm not sure why it would frankly, they're nothing more than text files. I don't think memory would be an issue with them. I have 8 gig of RAM, so the utility is not being deprived in any way, it can get it's full 2 gig's worth. I presume it's a 32 bit program, right?
BYW, I'm only guessing that it has something to do with saving the script, I can't be certain that's the reason. It just seems to happen after a save. That could just be a coincidence and something else is causing it. For all I know it could have something to do with Java itself, and not Near Infinity at all.
So I've just tried out your new snapshot, though I don't know whether it solves the problem I mentioned earlier. I just thought I'd mention that I don't really care for this new version, the old one was better IMO. My main beef is that the script lines are no longer numbered. After transferring a script made for BG2 to BG1, I have 54 "Warnings" messages and no easy way of finding them now. While the "Warnings" entries are shown as line numbers, there's no way to match them up in the script. So the only option is to use the "Find" function, which is much more time consuming.
Quite some time ago, I used to be able to click on the entries in the "Warnings" list and doing so would automatically bring me to the location in the script where the problem occurred. That was by far the best way to do things, but for some reason you've removed that feature. And now with the removal of the script line numbers as well, it's become even more cumbersome to find these problems.
I also kind of miss the colour coding you had before, it helped to differentiate between various parts of the script. Though that is just a minor thing I can easily live without. Losing those line numbers however is a fairly big deal IMO, it makes it much less convenient to troubleshoot and fix errors.
@Belanos I think you misunderstood my previous post. The NI version I've mentioned is an old version (actually the last version without syntax highlighting). I've linked to this specific version because I wanted to find out if your performance problem is somehow related to the syntax highlighing component I'm using in more recent snapshots.
@Belanos I think you misunderstood my previous post. The NI version I've mentioned is an old version (actually the last version without syntax highlighting). I've linked to this specific version because I wanted to find out if your performance problem is somehow related to the syntax highlighing component I'm using in more recent snapshots.
I see. Thanks for enlightening me. I'll try to slog through it then.
So I made through all the entries in the "Warnings" list, saving for each entry I edited. That was about 300 saves and the lag didn't come up. So it's looking like it might have something to do with the syntaxing, as you suspected. Either that or it has nothing to do with saving at all. As I mentioned, I'm only guessing about that.
PS: So I've been using your latest snapshot for awhile now and there hasn't been any issues with lag. It kind of looks like it was just the particular build that I was using at the time that was causing it.
It might have been a specific script that caused this issue. If you're ever experiencing more lags or performance degradations while working with scripts, you can try to disable the feature Options->"Interactive script names" in the menu. Depending on the size of the game installation this features may require a lot of resources.
If you're ever experiencing more lags or performance degradations while working with scripts, you can try to disable the feature Options->"Interactive script names" in the menu.
Comments
Edit: Apparently at some point I must have hit the setting that ignores the overrides. So just ignore this post
Unknown 02 00 00 00 h
Unfortunately I can't seem to figure out what the version was where this wasn't the case. In any case I guess I figured I'd just point this out.
Update: NearInfinity v1.35.0-snapshot-20140802
Changes:- Added "bpsave" folder support for BG(2)EE
- Added preliminary game language selection support for BG(2)EE (found under menu Options->TLK Language (EE only))
- Fixed unknown or unhandled field names for a number of effect opcodes
To explain the issue, I will use, as example, AJANTI.DLG in BG:EE, but it affects others DLG files too.
If you perform a text search in the DLG files for the following string (including triggers and action scripts)
SetGlobal("NumberOfTalk","AR2900",1)
and then double click the only hits found, NI will open erroneously the last dialogue state (in this case 12) instead of the correct one, i.e. the first dialogue state.
Basically, when searching for an action present in the first state of a dialogue, NI will erroneously return the last state instead.
Update: NearInfinity v1.35.0-snapshot-20140916
Changes:- Bugfix in Extended Search: Input fields for numbers in the popup panels did not recognize entered values unless you manually removed focus from the field (e.g. by pressing the Tab key)
- Fixed a bug when searching for actions or triggers in DLG resources
- Expanded the number of slots in the "Recently Used Games" list and added an option to clear the list.
- Added partial support for Icewind Dale: Enhanced Edition
- Added "mpbpsave" folder support for BG(2)EE
Opcode 319 Restrict Item
Offset 0x3 (Power): Label "Type", Values: 0 = Not usable by, 1 = Only usable by
Offset 0x4 (Unused): If possible, an IDS listing if one is chosen in offset 0x5. Currently have to look up alignment/race/class/kit values manually.
Opcode 258 Activate spell sequencer &
Opcode 260 Activate spell sequencer at point &
Opcode 321 Remove effects by resource
Offset 0x14: Currently a .spl file resource menu for 258 and 321, 260 is just raw. Really should just be a string field, as it can be used with both .spl and .itm file resources, and the .spl file doesn't even need to exist. If possible, optional resource menus for both .spl and .itm files, but not default.
Opcode 233 Modify Proficiencies
Offset 0x4 (# Stars): Active class proficiency is stored in the first Octal, Dual-Class(original class) proficiency is stored in the second Octal. Is this possible to display?
034 = octal:42 = 2 stars active class, 4 stars original class //edited to correct
Opcode 214 Select Spell
Offset 0x8 (show): Replace "All Spells (0)" with "From File (0)"
Opcode 197 Physical Mirror
Offset 0x8 (Projectile): Replace Value "Unknown (0)", with "Melee / None (0)". This will reflect abilities with a projectile value of "0", which also includes all Melee attacks, by default, since they ignore their projectile field.
Opcode 191 Casting Level Bonus
Offset 0x4 (Parameter 1): Label "Amount", reduce field to single byte. While I don't know if values above 255 are used by the opcode, the stats that it modifies overflow at 255 and go negative, so no reason to use a higher number.
Thank you.
NI doesn't work that way. The resource selection field has to be the default, but you can change it manually to one of the generic field types (string, hex, binary, decimal) by right-clicking into the field.
Not sure if it's possible. I'll probably have to code a new field type for this.
Can you test if it's also happening with this specific NI version? It's the last version without syntax highlighting.
Alternatively you can try out the tool Hide NI DOS to start NearInfinity with enhanced memory parameters (browse to the end of the first post to find the download link). It helps when working with memory intensive features such as the area viewer. Maybe it also helps in your case.
BYW, I'm only guessing that it has something to do with saving the script, I can't be certain that's the reason. It just seems to happen after a save. That could just be a coincidence and something else is causing it. For all I know it could have something to do with Java itself, and not Near Infinity at all.
So I've just tried out your new snapshot, though I don't know whether it solves the problem I mentioned earlier. I just thought I'd mention that I don't really care for this new version, the old one was better IMO. My main beef is that the script lines are no longer numbered. After transferring a script made for BG2 to BG1, I have 54 "Warnings" messages and no easy way of finding them now. While the "Warnings" entries are shown as line numbers, there's no way to match them up in the script. So the only option is to use the "Find" function, which is much more time consuming.
Quite some time ago, I used to be able to click on the entries in the "Warnings" list and doing so would automatically bring me to the location in the script where the problem occurred. That was by far the best way to do things, but for some reason you've removed that feature. And now with the removal of the script line numbers as well, it's become even more cumbersome to find these problems.
I also kind of miss the colour coding you had before, it helped to differentiate between various parts of the script. Though that is just a minor thing I can easily live without. Losing those line numbers however is a fairly big deal IMO, it makes it much less convenient to troubleshoot and fix errors.
So I made through all the entries in the "Warnings" list, saving for each entry I edited. That was about 300 saves and the lag didn't come up. So it's looking like it might have something to do with the syntaxing, as you suspected. Either that or it has nothing to do with saving at all. As I mentioned, I'm only guessing about that.
PS: So I've been using your latest snapshot for awhile now and there hasn't been any issues with lag. It kind of looks like it was just the particular build that I was using at the time that was causing it.