This release makes the Unity menu find objects whose class derives from the one you searched for, lets Search maps take several words, and puts Breeze's overlay into screenshots.
1. Unity: Instances Include Subclasses
Unity games often keep a value in a base class and create objects of a class derived from it. In the test game the player's health is Life in BUP.ModCharResources, but the player's object is a BUP.ModCharResourcesBup, which derives from it. Asking for live objects of ModCharResources listed two objects with Life 0 and never the player, whose Life was 120: both searches only took objects whose class was exactly the one asked for.
- Live objects of this class (heap scan) -- the list from Instances / Open on an instance field -- also recognises the class records of subclasses while it scans, then runs another pass for their objects (up to four levels deep). Rows found through a subclass name their real class, e.g.
[ModCharResourcesBup]. The status line reads Scanning subclasses during that pass and N instance(s), M subclass(es) included when done. - Search instance (ZL+X in the field view) does the same with its pointer search, and reports subclasses searched too when it found any. A subclass's class record is no longer counted as an instance.
- Keep searched on the instance list still works on the combined list.
2. Unity: Search Maps Takes Several Words
Search maps took the whole entry as one piece of text, so modchar life found nothing. Now the entry is split into words, and a row is listed when it contains every word, in any order and any case. A field row's text includes its type, so a word can name the type too (float, int, bool, string; System.Single style names match as well).
On the test game, modchar life lists 6 fields, among them ModCharResources::<Life>k__BackingField and <MaxLife>k__BackingField; modchar float lists 64.
3. Overlay Mode Shows in Screenshots
With Home toggle = Overlay, the Capture button took the game without Breeze on it; the other modes, and Tesla overlays, were captured. Breeze's overlay layer is now also added to the screenshot and recording layer stacks.