Ambrosia Garden Archive
    • Okay, just so you know, I investigated the problem and solved it, and packaged a fix in a tiny (24kb) file; I also made a modified version of the 1.0.1 update that includes the fix (just the ResEdit file, not the readmes and such).

      If you're interested, this is how it went. I could not live any longer knowing there was a bug in an otherwise great and logical layout mod to NovaTools without attempting to do something about it. Having quite some experience with ResEdit, and a little with DITL resources (for instance, I have been able to tell the size of the bar PICT, unused in the default scenario, is 260x130 just by checking the bar DITL that kicks in if there is a bar PICT and getting the information of the rectangle that holds the PICT), I decided monday evening I was in the right mood to attempt to solve this.

      So I locked the NovaTools install file, the NT 1.0.1 install file, and opened the ResEdit prefs with ResEdit itself (no need to take particular precautions and work on a copy, I had put a backup copy of it JustInCase™). I then opened DITL ID 27090 (the one for oütf) in these prefs file, and the "same" one in NT 1.0.0. I didn't notice something really obvious, though they were obviously different in their layout. To begin with, I copied this DITL from NT 1.0.0 and pasted it to the prefs file, overwriting resources with same ID. I save, I quit ResEdit (so as to allow it to reload the prefs file), I relaunch it, open Nova data 4, and the Medium Blaster. Sure enough, I can now change the RequireGovt. This proves me the DITL in NT 1.0.1 is at fault, and nothing else (for instance, it could have been the MENU resource of the popup menu, that NT 1.0.1 changes).

      So I close Nova Data 4, open the the pref file, copy the DITL ID 27090 from NT 1.0.1 in it, and sit down. Maybe this is a problem with item numbering, that Arturo says is the biggest problem when doing DITL editing without having the source code, as you cannot change the numbering of the items (text boxes, popup menus, buttons, etc...) without breaking the DITL since the code links to the DITL using these item numbers, and the code cannot be changed. But making ResEdit show the item numbers just on the items shows there is no difference, the popup menu is number 248 and the text box number 249 in both the 1.0.1 DITL and the 1.0.0 DITL. Then I do something apparently harmless: I move the user item (that are in fact the big rectangles that surround groups of controls, but are opaque in the DITL editor which means I can't edit stuff in the rectangle) around the part we're interested it to a corner, then begin to tinker with the menu and text box, checking their properties, enlarging the text box (no, I don't enlarge penis) without finding anything.

      Still, I decide to save, quit and try. And this time I can edit the RequireGovt. I thought I had made the right thing and solved the problem, maybe that it was just that these things required tinkering. I go back editing the prefs file to put the rectangle in place, though, as it was really off as I had put it. I retry, and sure enough, I can no longer edit the RequireGovt. What did I do between the time it did work and the time it no longer does? I did just move the rectangle, and something made "tilt" in my head, saying that if the rectangle could block DITL editing, it could block editing when the DITL is in actual use, but only in certain conditions, or NovaTools wouldn't be usable at all! I go back to the prefs file and the 1.0.0 install file, and compare the two oütf DITLs. They both have an user item above the RequireGovt part, but it is not the same in both cases: in NT 1.0.0, it has number 255, while in the prefs (coming from 1.0.1), it is number 247... which is LOWER than 248 and 249, but not to those other controls in the part covered with that user item, explaining why these menu and text box were the only two affected!

      So I think I just have to replace the user item with number 247 with another with higher number. I didn't feel like making a new one, since I feared it would renumber everything. So I take another one, incidentally with number 255, resize it, and move it where the one with number 247 is, and I take the one with number 247 and move it to where the 255 were. After checking this would not obscure other controls due to this (and it didn't, since everything between 248 and 254 was either below where 255 is now or at some other place, and not below 247 any longer), I saved, quit, relaunched, tested, and it worked beautifully. Go me.

      Actually, I then wondered if other fields in other parts of the 1.0.1 update were affected by such a problem as well. By ~careful~ checking of the DITLs, I found 4 of them, and when I tried to edit such parts of some resources in the data files, sure enough I couldn't. Guess what I did? Yep, correct them as well (just so you know, affected places are the Contribute and Require checkboxes of the crön resource editor (I've not been able to swap two rectangles there, and creating new ones did not create the border effect, so I just moved the two faulty ones aside), the "show in ränk area" flag of the oütf editor, the "exit from point nearest to target" flag of the wëap editor, and the "fail if disabled" flag of the mďsn editor, all checkboxes interestingly enough). If you happen to meet something that doesn't work in my update (or NT 1.0.0 or NT 1.0.1), tell me, I'll see if it is for the same reason and I'll make a fix if I can.

      Then I made a copy of the NT 1.0.1 instal file, renamed it to be 1.0.1.1, and made the mod to the DITLs there (I modified the top-right corner text to indicate 1.0.1.1 as well); on top of that, I copied these DITLs to put in a standalone 101->1011 24 kb file. Then I .bin'ed it for the resource fork to survive the mighty perils of the Internet, and now I bring it to you. Enjoy.

      To install, first unbin the file with Stuffit, then use ResEdit to copy the contents to the ResEdit prefs file (or the place you choose the NT resources to be) as you did with NT and NT 1.0.1, replacing resources with same ID. Restart ResEdit, first check that the fix does its job, and enjoy. You need this only if you're using NT 1.0.1.

      P.S.: okay, file upload does not seem to be enabled. And I can't do FTP with my school's internet connection (preventing me from uploading it to my webspace). Wait a bit as I find a solution.

      This post has been edited by Zacha Pedro : 28 September 2004 - 06:18 AM


    • Zacha Pedro, on Sep 28 2004, 04:17 AM, said:

      P.S.: okay, file upload does not seem to be enabled. And I can't do FTP with my school's internet connection (preventing me from uploading it to my webspace). Wait a bit as I find a solution.
      View Post


      Good debugging skills there ZP, but I'd really appreciate it if you would not post your fixes since I'm putting the finishing touches on NovatoolsUpdate1.0.2 (NtU102). Your deduction is correct that the item numbering of the section outlines affects entry of items within the outline. The outline item number must always be greater than the item numbers of the entries "underneath" the outline.

      I've been off-planet for a month or so and since returning I've been working feverishly on fixing the bugs in NovatoolsUpdate1.0.1 (NtU101), including all those that you mentioned. NtU102 will provide further reorganization of the oütf and mďsn resource editor layouts and a dozen or so other minor tweaks and changes. I have identified another bug in the original Novatools RSSC software that affects the entry of jünk names and abbreviations. I'm also investigating some anomalous behaviour in the AvailStel, TravelStel, and ReturnStel modes of spöb selection which I think are either game-engine bugs or Nova Bible documentation errors.

      The new IPB upheaval and the pending EV:N v1.0.9 update are also reasons I've been delayed in the release of NtU102. If I finish everything before EV:N v1.0.9 arrives, I'll just go ahead and post NtU102 anyway. I'll be posting a new thread with the NtU102 change list shortly before I upload to the addons page.

      This post has been edited by Arturo : 28 September 2004 - 04:23 PM

    • Oops, forgot about such issues. Sorry. But it's a non-issue for now since I didn't upload anything yet, so I won't. If you wish me to mail this fix to you, Arturo, I can, but I don't think it's necessary since you managed to fix them as well. If anyone wishes to fix his NT 1.0.1 without having to wait for the 1.0.2, they can apply my directions...