Fix the detection of the solved state.
progress with configurable stickers
(limited) support for different strokes across each edge of each sticker.
progress with new sorting methods.
Next step toward separating TwistyObject metadata.
Big step toward separating TwistyObject metadata.
14 is enough :)
final bugfix for scrambling shapeshifting cuboids; up JSON version to 15 (as we have a new scrambling type!)
Support for shape-shifting cuboids. (except for the flat ones like the Super Floppy)
Make it possible to download objects with no extras file. Up VERSION_OBJECT_APP to 13.
Remove the generic 'MINOR' object and extras versions from JsonWriter, and replace them with per-ObjectType values. This was the reason why objects which had their 'minor' (really: version) updated to '1' in the server then never updated the jsons with locally stored versions.
Support drawing stickers with multiple holes in them.
change the way the coordinates of stickers are kept from float[2*N] to float[N][2]
minor
support Multigon in JSONs
remember the rotation factors in the JSONs.
We have just introduced a non-backwards compatible improvement to the interpreter - up the interpreter version to 11.
Coin tetrahedron: bugfix, new mesh & json; move to json version 10.
Up the MAJOR version to 9 to account for the new SPLIT type supported by the interpreter.
Bump major to 8 (in accoount of the BAN6_4 - Burr Cube - where scrambling woudn't work with version 7)
Make it possible to (fully!) read version 6 JSONs - some users might have Pyraminx Duo v. 6 already downloaded!
Produce new JSONs files (version 7, with new scrambling method)
Move scrambling to a new model where there are spearete scrambling 'algorithms' and 'edges' of the scrambling graph.Now each edge can contain a whole algorithm, i.e. a sequence of moves leading from state to state, which permits construction of scrambling for more complicated bandaged objects such as the AI cube....
Fix touch-replacing colors of the stickers. Now correctly takes into account the shape of the sticker.
Minor bugfixes for creating JSON files version 6 (with per-cubit lists of VertexEffects)
Major change in JSOn file format:
replace the old (corners,centers) system with a list of VertexEffects which are applied to each cubit variant.
Changes to the initialization - initialize the 'bought objects'
Make it possible to create Diamond and Icosahedron-shaped objects to be read from json.
More support for pillowing; pillow Morphix and Jing by default.
IAP, part 1: Introduce the concept of a 'free' and 'not free' object to
- ObjectType- DownloadedObject- RubikObject- jsons
Make ObjectSignature ready for any size bandaged cube.
main: license.
Bugfix
Progress with sticker overrides.
Beginnings of support for 'sticker overrides' - possibility to override the color of an individual face of an individual cubit. Ultimately this will enable overriding with any bitmap; so far only a solid color.
Also, fixes for two crashers.
Crazy Planets: now can be created in J1 M0 mode. J1 M1 still doesn't work.
Crazy Planets: introduce cubit type and offset to the JSON; create (shared) mesh and all the JSONs.
Bump MAJOR version to 3 (we cannot intermix the new Mixup json objects with version 2 app interpreter)
Introduce ObjectSignature that can incorporate 192-bit signatures (for 5x5x5 bandaged cubes).ObjectScrambler does not fully work yet.
Bandaged: progress with creating the object.
Preparation for Mixup Cube: take advantage of the recent bump in MAJOR_VERSION number and change the format of basicAngles to int[][] 'per-axis-per-layer' [ Mixup Cube has different basicAngle in its middle layers (8) - and different in its edge layers (4) ]
Turns out latest changes to the FactorySticker force us to increment the MAJOR_VERSION as now we produce incompatible stickers. We'll also use this occasion to support the Mixup Cube (change basic rotations to per-layer-per-axis)
Bandaged 3x3: progress with saving.
Preparation for local creation of puzzles: remove the 'ObjectType' enum from TwistyObject class.
New, generalized ScrambleState generator that should work for any bandaged 3x3.
Progress downloading objects and extras.
Step towards tutorial JSON files.
Configurable internal colors. This somehow screwed up the Container!
Implement the Windmill Cube
unify every isSolved() routine except one: part II : new JSONs.
unify every isSolved() routine except one - the Dino4 is still special.
Preparation for further unification of the isSolved() routine.
Convert Ulti, Jing, Pyra, Diamond, Dinos, Redi, Skewbs, Ivy & Rex to the new scheme where the quaternion group is computed automatically.
Simplification.
Remove the 'getNumCubitFaces()' object API.
Split ObjectShape into ObjectShape and ObjectFaceShape
Finally move the 'getVariantFaceColor()' method to the base class.
Progress
Include the info about 'numFaces' of a puzzle in the jsons.Based on this, and the recently introduced 'DEFAULT_ROTs' to the basic Shape classes, rotate each object in the Config so it looks attractive.
Make the ShapeChanging the default TouchControl during MODE_REPLACE.
Float vertices - scratchbook
Add 'shouldResetTextureMaps' to the JSON puzzle description.
Move the main app to the 'J1M1' object creation mode, i.e. create them from the Json files and using the Dmesh fiels as well.
Make it possible for any app descending from the 'objectlib' to use any of the J0M0, J0M1, J1M0, J1M1 modes.
Remove ObjectType and info it held (icons, mesh file, num of scrambles, shortname) from the JSON file.
Correect JSON reading and writing: shape corners and centers are optional!
JsonReader (?) finished: the creator app can now read objects from JSON files.
Do not pull the inventors and the names of objects from Resources.