APCD Quirk Discoveries
Posted: May 19th, 2020, 5:14 pm
While updating De Zalze I made 3 discoveries about how APCD/Links works (or fails to work) that I wanted to share. They may be useful information to some designers. The first 2 things are only relevant to designers doing any work on courses that were previously planted with another computer or other instance of APCD. In other words - mostly people updating previous courses, but also collaborations where multiple designers work in APCD together on the same course, as well as people who simply use a different computer/APCD than earlier.
Filesize Quirk
TL;DR: When working on a .crz and keeping planting that was made within a different APCD, identify which type of APCD the earlier version was used with (merged with 2001 or not) and try to use the same type of APCD for further work in order to avoid unnecessary file size baggage.
When I was done with my small update of De Zalze, I noticed that the course file had mysteriously increased by about 8 MB that couldnt be explained by any of the updates I had made (Yes I really should have noticed that earlier). I even tested opening the old course version again, changing NOTHING, and only re-saving it with a different filename, and it still increased by about 8 MB. I investigated a lot back and forth, but I eventually tracked down the absolute majority of the difference in file size to 2D Objects. There were somehow a lot more 2D Object files within Links Extender in the updated version, despite me not changing anything whatsoever about 2D Objects. The new objects had graphics of objects that were in the original version, and they seemed to be stock APCD objects.
In the end I arrived at the suspicion that the original course was made with an APCD that had never had its object library merged with the older 2001 library, and that the APCD I used (which had been merged) interpreted the course file as having certain objects that it found in its own library under a different name than the original designer had added them as, and therefore baked in such object files again into the course file. I tested and the objects seemed to function properly within the game, they still looked normal and interacted with the ball as they should, so I dont think it causes any issues other than increasing the file size. I think the cause is that certain stock 2d objects get a different number in the library merge process when combining 2001 and 2003 libraries, likely the 2001 objects push themselves in to take up the lowest numbers or something like that. I know a lot of objects have different categories, e.g. "Palm Trees" vs "PalmTree", but it still seems like some objects get a new number, the categories I can give examples of are Bushes, Flowers, Grasses, Medium Trees, Rocks, Small Trees, Tall Trees. At least for example Bushes134.btx in the merged APCD Dan helped supplying me with, is instead found at Bushes001.btx in the APCD that I got from linkscountryclub.com (or possibly it was another similar site, I only remember I got it through an official link on Links Corner a couple years ago)
So I tried saving the original coure with an APCD that never was merged instead, and then the file size didnt increase (ok it increased by 0.082 MB, what causes that small change is still intriguing, but unlikely to have an affect on anything). 8 MB in this one case perhaps wasnt the end of the world, but still a 20% increase that I didnt feel good about, so I decided to start over and redo my changes, and the final version wasnt bigger than the original.
I tested a bit on some other courses as well, most that increased in file size didnt do so particularly much, but in one case a course grew from 44 MB to 64 MB. Without anything being changed! That is crazy! Im guessing that one had many different stock objects. Interestingly, I also tested on one course that I knew was made with a merged library, I saved it without changes on the APCD that never had been merged, and it grew from 147 to 161 MB, and this being IN SPITE OF 2001 3D objects being stripped from the course due to not being found in the new library. So apparently it works both ways. In the future when updating courses, the first thing I will do is determine which type of APCD the original was made with, and continue working with that type of APCD so as not to increase file sizes unnecessarily. I recommend others to do the same with any update/collaboration/continuation projects started in the future.
Tournament Object setting Quirk
Another thing I've noticed that can accidentally change when saving a course previously planted with another computer/APCD, is that a Validate & Save seems to automatically update which objects are classified as Tournament Objects or not. It happened to one certain 3D object (camera tower) on De Zalze that changed from tournament object to non-tournament object without me touching it. To solve it I started over, added the same object in question into the planting set and ticked the tournament object box before saving. After that the objects remained tournament objects and no longer showed up in practice mode, as intended and like in the original. Note that I never replanted or in any shape or form manipulated the planted objects. APCD changed them from tournament objects to non-tournament objects completely on its own. Possibly the tournament object just needs to be classified as such within the object library and not necessarily in the planting set, and likely one can fix it without having to go back to an earlier file version like I did.
Panorama/Alpha Channel Quirk
The original De Zalze had some white pixels on the horizon on the panorama which I intended to fix. But when I opened it in photoshop there was nothing wrong with the .tga file... I even remade the alpha channel from scratch and it still loaded with white pixels in Links. gator helped me confirm that he was seeing the same thing, but its still possible that its only something that happens to certain users. In the end, the solution was to change the RGB channel colour of pixels that were set to 100% transparent (100% dark in the alpha channel) from white to black. This is extraordinarily weird, since these particular pixels werent the ones that showed up white in Links, they are transparent - fully invisible! It was the pixels next to these, inside the 100% white part of the alpha channel that for some odd reason showed white, just because the ones outside of the alpha channel next to them were white on the RGB channel. This is just too weird for me to make sense of, I assume its simply a flaw in how Links loads panorama files. I've encountered slightly similar issues with 2D objects, although I dont think it was the exact same thing... At any rate, I will from now on make sure to have all my backgrounds black in the RGB channel in any .tga files (something I was already doing anyway for objects I fully made myself).
Filesize Quirk
TL;DR: When working on a .crz and keeping planting that was made within a different APCD, identify which type of APCD the earlier version was used with (merged with 2001 or not) and try to use the same type of APCD for further work in order to avoid unnecessary file size baggage.
When I was done with my small update of De Zalze, I noticed that the course file had mysteriously increased by about 8 MB that couldnt be explained by any of the updates I had made (Yes I really should have noticed that earlier). I even tested opening the old course version again, changing NOTHING, and only re-saving it with a different filename, and it still increased by about 8 MB. I investigated a lot back and forth, but I eventually tracked down the absolute majority of the difference in file size to 2D Objects. There were somehow a lot more 2D Object files within Links Extender in the updated version, despite me not changing anything whatsoever about 2D Objects. The new objects had graphics of objects that were in the original version, and they seemed to be stock APCD objects.
In the end I arrived at the suspicion that the original course was made with an APCD that had never had its object library merged with the older 2001 library, and that the APCD I used (which had been merged) interpreted the course file as having certain objects that it found in its own library under a different name than the original designer had added them as, and therefore baked in such object files again into the course file. I tested and the objects seemed to function properly within the game, they still looked normal and interacted with the ball as they should, so I dont think it causes any issues other than increasing the file size. I think the cause is that certain stock 2d objects get a different number in the library merge process when combining 2001 and 2003 libraries, likely the 2001 objects push themselves in to take up the lowest numbers or something like that. I know a lot of objects have different categories, e.g. "Palm Trees" vs "PalmTree", but it still seems like some objects get a new number, the categories I can give examples of are Bushes, Flowers, Grasses, Medium Trees, Rocks, Small Trees, Tall Trees. At least for example Bushes134.btx in the merged APCD Dan helped supplying me with, is instead found at Bushes001.btx in the APCD that I got from linkscountryclub.com (or possibly it was another similar site, I only remember I got it through an official link on Links Corner a couple years ago)
So I tried saving the original coure with an APCD that never was merged instead, and then the file size didnt increase (ok it increased by 0.082 MB, what causes that small change is still intriguing, but unlikely to have an affect on anything). 8 MB in this one case perhaps wasnt the end of the world, but still a 20% increase that I didnt feel good about, so I decided to start over and redo my changes, and the final version wasnt bigger than the original.
I tested a bit on some other courses as well, most that increased in file size didnt do so particularly much, but in one case a course grew from 44 MB to 64 MB. Without anything being changed! That is crazy! Im guessing that one had many different stock objects. Interestingly, I also tested on one course that I knew was made with a merged library, I saved it without changes on the APCD that never had been merged, and it grew from 147 to 161 MB, and this being IN SPITE OF 2001 3D objects being stripped from the course due to not being found in the new library. So apparently it works both ways. In the future when updating courses, the first thing I will do is determine which type of APCD the original was made with, and continue working with that type of APCD so as not to increase file sizes unnecessarily. I recommend others to do the same with any update/collaboration/continuation projects started in the future.
Tournament Object setting Quirk
Another thing I've noticed that can accidentally change when saving a course previously planted with another computer/APCD, is that a Validate & Save seems to automatically update which objects are classified as Tournament Objects or not. It happened to one certain 3D object (camera tower) on De Zalze that changed from tournament object to non-tournament object without me touching it. To solve it I started over, added the same object in question into the planting set and ticked the tournament object box before saving. After that the objects remained tournament objects and no longer showed up in practice mode, as intended and like in the original. Note that I never replanted or in any shape or form manipulated the planted objects. APCD changed them from tournament objects to non-tournament objects completely on its own. Possibly the tournament object just needs to be classified as such within the object library and not necessarily in the planting set, and likely one can fix it without having to go back to an earlier file version like I did.
Panorama/Alpha Channel Quirk
The original De Zalze had some white pixels on the horizon on the panorama which I intended to fix. But when I opened it in photoshop there was nothing wrong with the .tga file... I even remade the alpha channel from scratch and it still loaded with white pixels in Links. gator helped me confirm that he was seeing the same thing, but its still possible that its only something that happens to certain users. In the end, the solution was to change the RGB channel colour of pixels that were set to 100% transparent (100% dark in the alpha channel) from white to black. This is extraordinarily weird, since these particular pixels werent the ones that showed up white in Links, they are transparent - fully invisible! It was the pixels next to these, inside the 100% white part of the alpha channel that for some odd reason showed white, just because the ones outside of the alpha channel next to them were white on the RGB channel. This is just too weird for me to make sense of, I assume its simply a flaw in how Links loads panorama files. I've encountered slightly similar issues with 2D objects, although I dont think it was the exact same thing... At any rate, I will from now on make sure to have all my backgrounds black in the RGB channel in any .tga files (something I was already doing anyway for objects I fully made myself).