-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathChangeLog.txt
More file actions
2308 lines (1270 loc) · 104 KB
/
ChangeLog.txt
File metadata and controls
2308 lines (1270 loc) · 104 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
///CHANGELOG///
--------------
---1.66
--------------
- Updated SharpOcarina plugin to 1.1.5 (update it via Help > Update Blender plugins, or manually by importing BlenderScripts\io_export_so_3.0.zip)
- Groups are now kept together with a new #Group tag that its exported automatically, necessary for type 2 rooms (cullable room type) to work properly
- Updated Objex2 plugin to 2.6.5 (update it via Help > Update Blender plugins, or manually by importing BlenderScripts\io_export_objex2.zip)
- Added a button to automatically fix the vertex assigned to various groups of the selected model by only keeping those with the highest weight
- Cullable Rooms (Type 2) now properly group dlists by how the groups are defined in blender, so this feature is now fully functional. You need to update the SO plugin to 1.1.5 else the group data is lost on export.
- Groups with #NoMesh tag no longer appear in the room tab, they're no longer rendered in non-N64 preview and they cant be selected via ctrl+rightclick. This is a big optimization change so it may lead to new bugs, let me know if you find any.
- Values that can only be 0 or 1 are now displayed as checkboxes in actor settings
- Switch flags can now be given a name in the scene, this has 0 impact ingame and its only for organization purposes. Name will also be displayed in the flag log.
- Fog distance in environments is now displayed in decimal
- Prerendered scenes are now accurately aligned to ingame resolution when previewing cameras, as well as the fov
- FOV value is now displayed in decimals, and fixed cameras will be previewed with their fov value, as long as its indicated that they make use of the FOV
- Added --force-code, --force-audio and --clean in advanced z64rom builds tab
- Fixed a rendering issue with prerendered scenes (present since 1.65)
- Fixed an issue where multitexture slot failed to be match Blender's in certain cases when pressing Reload button
- Fixed an issue where the tags of a multitexture would not get updated on reload
--------------
---1.65
--------------
- Added Cullable Room setting (Type 2) in Room Env. This is used by the game to cull groups that are behind others, however due how SO is built, hitting the 64 DList cap is quite easy, this will be improved in 1.66
- Added Options > Export .h files with offsets (z64rom), this generates a header file with all display list offsets of each room, good for coding purposes
- Playing cutscene cameras now properly resizes the window to 4:3 aspect ratio and centers it instead of staying in top left corner
- Added button in custom combiner to copy the 3 commands to the clipboard, you can then paste it in the group's name in blender to store them more effectively
- Fixed a critical issue where the new crash debugger would stop working on consecutive usages
- Fixed an issue where attempting to preview texture animations on alternate headers with "inherit from main header" would potentially error out
- Fixed major issues regarding alternate headers when viewing vanilla scenes or importing data from scenes, such as not being able to import cutscenes (bug present since 1.62)
- Fixed an issue where billboard display lists would corrupt the render ingame if they had more than 1 material assigned
- Fixed an issue where autoadd objects would add Link objects to the scene if custom actors used them
- Fixed an issue where creating a custom actor would not put ACT_ in front of the header define, causing conflicts with objects of the same name
- Fixed an issue where polytype field in groups didnt behaved correctly and could potentially crash the app since 1.63
- Due vertex optimization, it wasn't possible to separate triangles for the metallic effect. As a temporal measure, groups with #Metallic tag are now ignored during optimization.
--------------
---1.64
--------------
- Added better crash debugger, installable on z64rom projects via Tools tab. Features:
- Now displays the stack trace on first page
- Displays the function names of: Code (Global), Hooks, Actors, Link, Pause menu
- Can resume the game after an ASSERT
- Removed unhelpful pages
Note: You need to click it in tools tab to update the function names database after building once. Enable "Options -> Run SO additional tasks when building"
to do this automatically whenever you build/run the game via SO.
- Auto-hook window:
- Added button to open vanilla actor folder and renamed some buttons
- Added auto-completion on the hook function box
- Window can now be resized properly
- Fixed an issue where adding a hook to an existing would also write again all function declarations and structures
- Fixed an issue where trying to hook an existing function would not report its filename correctly
- Fixed an issue where multiline includes wouldnt behave correctly
- Adjusted the scale of some windows when maximizing them
- Fixed an object rendering issue where actors with skeletons couldnt make use of the ScaleArray feature
- [1.64.1] Fixed a logical issue where better crash debugger would update the function list before z64rom built, sometimes resulting in outdated function offsets (this fix will not apply to --force and --release however)
- [1.64.1] Fixed an issue where better crash debugger would override any custom change in CrashScreen.c
- [1.64.1] Fixed an issue where new link animations would make player.c recompile everytime even if no new changes were made
- [1.64.1] Fixed an issue where texture animations in segment F couldnt be previewed
--------------
---1.63
--------------
- Updated SharpOcarina plugin to 1.1.4 (update it via Help > Update Blender plugins, or manually by importing BlenderScripts\io_export_so_3.0.zip)
- #Pivot tag will be replaced on export with the coordinates of the object's origin. So far it only affects billboards in latest SO, it will have more uses in the future.
- Added #Polytype property, this is used to link a collision material to Collision tab in SO (main purpose being the new Polytype Swap)
- Fixed an issue where Mass Initialize would sometimes fail to import fast64 collision
- Updated Objex2 plugin to 2.6.4 (update it via Help > Update Blender plugins, or manually by importing BlenderScripts\io_export_objex2.zip)
- Now creates a config.toml on export if it doesnt exists, you still need to configure it via notepad
- Mass Initialize can now convert fast64 flipbooks to objex format
- Simplified fold/unfold tab, now you just need to add a pose and click switch. It also locks the armature into rest pose while unfolded.
- Fixed an issue where Mass Initialize would sometimes fail to import fast64 collision
- Improved names and descriptions of f3dzex2 tab
- Added subdivision and collision bounds editor in collision tab, z64rom only. A prompt asking to update bgcheck file will show up on project load, to update existing projects
- Added new texture anim command: Polytype Swap, this lets swaping polytypes ingame, based on flag. For this you must use #Polytype00 tags and configure the collision inside SO.
- Added multitexture alpha in texture anim color commands
- Redesigned collision tab so it now uses dropdowns instead of radio buttons, ID now starts from 0 instead of 1
- Added Zelda64 Text Editor (Skawo fork) in Tools tab. It will download the latest version in Tools folder and check for updates automatically.
- Pressing G on the viewport acts identically to middle mouse button (alternate bind for touchpad users)
- Updated the "Show Controls" window with new bindings from last updates
- Added #Pivot tag, as of now the only use of this tag is to set the pivot point of billboards. Simply put #Pivot tag on a group in blender for its pivot point to transfer into the exported .obj. New SO plugin required.
- #Polytype00 tag now uses decimal numbers for the ID instead of hexadecimal
- Added Help > Update/Install Blender Plugins to easily update them, note that it will fail if your blender appdata is not in your main disk drive
- Added Help > Update z64convert/z64rom .exe files (z64rom mode), as the name says it partially updates the current project with new exe files, this doesnt fully update an old project ()
- Slightly performance boost
- Fixed an issue where add object button was still limited to 15 objects in z64rom installations that had the object cap increased (autoadd object still worked)
- Fixed an issue where a debug dummy checkbox appeared in room tab
- Fixed an issue where texture scrolling speed of advanced texture anims didnt matched ingame speed
- Fixed an issue where transparent I4/I8 textures werent being rendered in SO viewport (reminder, for an I4/I8 texture to be considered transparent, the group needs to have less than 255 alpha)
- Fixed an issue where all vertex in the object file were taken into account when calculating the collision bounds, instead of only the collision vertex
- Fixed an issue where the pivot point of 2D billboards was missplaced by 5 units vertically
- Fixed an issue where collision window would not refresh properly when creating a polytype
- Fixed an issue where color blending animations with transparent dlists werent rendered correctly inside SO
- Fixed an issue where color blending animations were rendered in backwards order
- Removed "Help > Getting crashes? go here" as the guide was too ancient and barely applicable to modern standards
--------------
---1.62
--------------
Note: unfortunately 1.61 was broken on autoupdater and didnt noticed till 5 months after, so also check 1.61 changelog if you only use autoupdate
- Updated SharpOcarina plugin to 1.1.3 (update it manually by importing BlenderScripts\io_export_so_3.0.zip)
- Added collision checkboxes for Block Epona, Priority, Wall Damage
- IA4 texture type support
- Mass Initialize can now convert Fast64 collision materials
- Added unknown collision flags for modding purposes
- Added quick exporting with one click in the viewport menu
- Fixed an issue where converting from Fast64 would assign multitextures to faces that werent supposed to have one
- Fixed small void and conveyor direction not exporting
- Updated Objex2 plugin to 2.6.3 (update it manually by importing BlenderScripts\io_export_objex2.zip)
- Added quick exporting with one click in the viewport menu
- Mass Initialize can now convert Fast64 collision materials
- Mass Initialize now sets the Deform checkbox of all bones to true
- Fixed an issue where converting from Fast64 would assign multitextures to faces that werent supposed to have one
- (2.6.2) Added the armature folding menu from objex 2.0
- Added snap features when moving actors
- Hold C to snap to nearest vertex
- Hold V to snap to the center of the nearest edge
- Hold B to snap alongside the nearest edge
- The rom will no longer be played in the emulator if the project has build errors (z64rom)
- Added feature to move all cutscene commands from an specified start frame by X frames in Extra tab
- Added feature to change the frame duration of all cutscene points / textboxes of the selected command from an specified start frame by X frames in Extra tab
- Added feature to move selected actor to another room in Extra tab
- Added feature in auto-hook to create empty actors, finds empty ID's automatically
- Added 2 advanced build options in File tab for z64rom:
- Rebuild all files to fix a broken project (--force)
- Public release, turns all debug features off (--release) (it also takes care of the --release bug that plagues z64rom with a temporal fix)
- Added "Import data from ROM/.zscene/SharpOcarina XML" in Extra tab, as the name suggest it allows importing data from scenes in different formats, also hidded the old options to import stuff from zscenes since they're now obsolete
- Auto-update feature rewriten to fetch updates from a github server, improving speed and showing a download bar
- Added setting to be able to fully spin the camera and have it upside down. When the camera is upside down, camera and actor movement is also adjusted to take care of the inverted view.
- Added copy&paste buttons on actors and pathway points, this copies their data in the clipboard meaning it works between SO windows. Pathway points can read the position data of actors and viceversa.
- Added view button in pathway tab, which renders the actors that use this pathway in the selected point (needs global ROM/z64rom mode)
- Information about which actors are using the switch/chest/collectible flags is now displayed in the actor window
- XMLs can now be loaded from an XML folder inside a z64rom installation, for example <z64rom_path>/XML/ModelFlags.xml
- Cutscene window now displays the start frame of selected camera position / text box / actor position
- I4 and I8 textures now use alpha values if alpha is set below 255 (not rendered inside SO)
- If switch flag property is selected on current actor and then a different one with switch flag property is selected, the cursor will automatically select switch flag
- You can now load a model when viewing a scene, doing so will allow you to save it and test ingame
- Overall performance boost
- IMPORTANT! Fixed an issue where more vertex than usual were written in the scene file (performance boost ingame on hardware/LLE emus), added option to disable it for collision since one test performed better with the old code
- Added auto checkbox next to collision, if checked it will use the room model as collision (if single room mode, only room0 provides it)
- Fixed an issue where instances would be dragged 2x faster than intended when holding Z or X (stick to ground/ceiling)
- Removed the redundant option "Add object to all rooms" since Scene Objects tab does the same thing
- Fixed an issue where working directory pointed to system32 when opening the application via task bar
- Fixed an issue where the droptable link in the droptable editor was broken
- Fixed an issue where Motion blur would not be set to true when using the cutscene command in new projects
- Fixed an issue where doing undo (ctrl+Z) after an actor change on a different room would remove all actors from current room
- Fixed an issue where undo/redo (ctrl+Z ctrl+Y) didnt worked at all with pathways, cameras, pointlights, waterboxes and cutscenes
- Fixed an issue where the wrong pathway or cutscene command would be selected sometimes when trying to select points
- Fixed an issue where z64rom would not compile if an MM titlecard was blank
- Removed Vertex Normals checkbox since it was simply an unfinished version of Scaled Normals
- Fixed an issue where the game would get a bg_check crash: !IS_ZERO(ac_size) on unoptimized maps
- Cutscene entrance parameters are now invisible in z64rom mode since they're not needed
- Fixed issues related to reload button and scene headers
- Fixed an issue where materials named "None" would appear on multitexture list when having collision only materials in the scene
- Fixed an issue where spawnpoints with room set to FF would fail to detect which room they're in
- Fixed an issue where arrow keys didnt worked for selecting properties
--------------
---1.61
--------------
- New cutscene commands (all require z64rom, on older installations SO will provide the needed updates to use them):
- Motion Blur: Camera effect imported from MM, credits to Thar0
- Trigger Exit: Triggers an exit, supports both vanilla and z64rom exits
- Play Sound: Plays a sound, supports both vanilla and z64rom custom ones
- Set Flag: Sets/Disables a flag, or also Adds/Removes an item or rupees
- Object space/size is now displayed in Kilobytes
- SO will only prompt to update a file (such as scenerender.c) if its necessary for using a new feature. Older files will go to a trashbin folder instead of being permanently deleted.
- Added customization settings in z64rom post-install operations window
- Added full support to Majora's Mask style titlecards (requires up to date z64rom)
- Added support to extended object cap, so you can have 42 objects in a scene instead of 19 (requires up to date z64rom)
- Fixed an issue where custom Link anims hook would fail if more DMA files were also created in the project (z64rom)
- Fixed an issue where stop music command didnt worked at all
- Fixed an issue where imported cutscenes would not import the textbox command correctly
- Fixed an issue regarding custom actor database not assigning the actor ID of dependencies correctly
- Fixed an issue where using arrow keys to scroll the object list would not refresh the description
--------------
---1.60
--------------
- Added a post install operation to remove prerendered cutscenes from z64rom (4 MB more of ROM space)
- Post install operations can now be accessed at any time in tools tab
- Convert File to C array window can now create .inc files and split big images into several parts. C arrays are now u64 instead of u32
- Updated Custom Actor Database to allow actors that depend on other actors, such as Eyegore, as well as actors that share the same custom object
- Added a build task in Tools tab to compile all .pngs in a z64rom folder to .inc files, useful for #include's. #SplitWWxHH can be used in the filename to split big images into several parts.
- Added a build task in Tools tab to compile all files found in src/system/DMA/<filename>/ into a DMA file, creating entries in dma.toml and a header file in /include/DMA/
- Added option to run all build tasks everytime z64rom is built (via File or play button)
- Added command line to run only the build tasks of SharpOcarina without opening the UI part itself
"PathToSharpOcarina.exe" --z64romtasks "PathToZ64project.toml"
- Added button to view source file in Auto-Hooker window
- Crawlspace cameras (type 0x1E) now render both their points in the viewport (there's 6 points in fact, but 4 are unused, they can be seen by editing settings.xml)
- Enabled Z shortcut (stick to ground) to fixed camera's, mostly to help with crawlspace placement
- Toned down the April Fools pranks due complains over the years
- Cleaned the menus to not show binary exclusive options in z64rom mode and viceversa
- [MM] Actor database can now display debug names
- Fixed an issue where a good amount of scenes could not be previewed with File > View Scene
- Fixed an issue where autosaves were happening while viewing scenes. This caused lagspikes every 60 seconds.
- Fixed an issue where images of uneven resolutions would bring up error messages
- Fixed an issue where ignore rotation in actor rendering would not work with rigged actors
- Fixed an issue where the application didn't worked in windows 7 (since 1.40)
--------------
---1.59
--------------
- Added Auto-Hooker & Actors (z64rom)
- Instantly hook any function you want by typing its name
- Move an actor from decomp to z64rom in a single click, this will also take care of the png images
- Downloads z64oot folder if its not found
- Download bars will appear when any download occurs, minus for SO updates
- Binutils is now stored locally after download, making z64rom installation faster after the first time
- Actor database can now display debug names
- Documented more cutscene misc actions, added stop music command, added flag presets in texture animations
- Custom music will now appear in the scene tab in z64rom mode
- Slightly improved performance when previewing scenes, specially with a high amount of instances (actors/cameras/cutscenes etc)
- Added z64decompress as rom decompressor
- Changes in zobj copy tool:
- Added a copy all button. This will append the source zobj to the target zobj, updating all offsets. (more accurate than 1 by 1)
- If a z64oot decomp folder is detected inside the z64rom folder, it will automatically pick .xmls from the decomp
- Automatic .ld/.xml detection now also works with objects inside .vanilla folder
- Updated Objex2 plugin to 2.61 (update it manually by importing BlenderScripts\io_export_objex2.zip)
- Exported Link anim bins will have the frame count at the beginning of the filename, this is to have their name ready for the new link anims feature of SO
- Fixed an issue when converting materials from Fast64
- Fixed an error that would sometimes appear when reloading rooms, adding pathways or exits
--------------
---1.58
--------------
- Added "Tex Pointer +1" checkbox in group settings, this lets you set a texture swap animation at 1 segment higher than the selected one.
- Added "Add New Link Animations" in tools tab (only visible in z64rom mode). This is a solution to a feature that was never implemented in z64rom, click if you want to add new link animations.
- Fixed an issue where it was hard to interact with any waterbox,camera or pathway after the 2nd added one since last update
- Fixed an issue where an error would sometimes show up when selecting pathways via mouse click
- Fixed an issue where a crash would occur when deleting additional textures that were assigned to an animation.
- Fixed an issue where the application version appeared as v21.7
--------------
---1.57
--------------
- The program now loads with a new scene already created
- Slightly performance increase
- View .zscene now displays the exit list
- Added support for IA4 texture format across the entire application
- Added controls for command E2 (SetOtherMode_L) in the customizer
- Added a setting to only render pathways in pathway tab
- Added a setting to not render group selection highlight (it will do a short flash instead)
- Added a setting to use Majora's Mask texture scrolling orientation (z64rom)
- Optimized display lists to use 1 less command (reduces room filesize by 8 bytes per group)
- Added arguments to SharpOcarina.exe (draw&drop files inside it or pass them via shortcut param / cmd)
- if a ROM .z64 or a z64rom .toml is present, they will be loaded as Global ROM/z64rom
- if a .xml is present, it will open the scene
- if a .obj is present, it will be added as collision and rooms in a new scene
- Changes to "Convert image or file to C array"
- Images now display in their proper resolution instead of stretched to 64x64
- 8x8 textures are supported
- Fixed rgba16 not working with most resolutions
- Allows drag&drop
- Changed some DList combiners
- Vertex alpha supports more combinations, such as transparent multitextures
- Vertex alpha and Alpha mask now react to the alpha value when multitexture is disabled
- Any setting will react to prim color when multitexture is disabled
- NEW: Using vertex alpha with 255 alpha will make so vertex alpha erases the 1st texture
- Features and fixed issues regarding Texture Anims:
- Fixed conditional draw animation not working at all in z64rom projects
- Fixed an issue where the first frame of a color blend animation would be black if "Freeze if flag is not set" was checked
- Added "Freeze at End" checkbox, this will stop the color blend animation at the last frame
- SharpOcarina can now automatically prompt an update if the SceneRender version is outdated
- Fixed various issues with pause map editor in z64rom mode
- Fixed an issue where it would crash if the current scene ID is 0-9
- Fixed an issue where it would crash if the prompt to open a z64rom folder was cancelled
- Fixed an issue where the amount of floors per dungeon wasn't written, leading to unexpected behaviours
- Fixed an issue where a null chest flag would be written as 65535 instead of -1
- Fixed an issue regarding new chest icons not saving correctly
- Fixed an issue where boss floors could not be set for scenes 8 and 9
- Fixed an issue where changes in the chest icons would reset after saving
- Fixed an issue where updating the position of icons would not be reflected instantly on the listbox
- Chest flag now appears in the listbox
- If not in z64rom mode, manually exporting to z64rom will save the rom first, due limitations
- Removed Env color checkbox from group settings (did nothing before)
- Fixed an issue where playbutton was not correctly anchored in the UI
- Fixed an issue where SO sometimes would wronly name rooms when reloading a model that got rooms added
- Fixed an issue where a dlist must had multitexture to be affected by color blending texture animation
- Fixed an issue where unchecking customize in group setting would not cause a render refresh
- Fixed an issue where conditional draw animation would sometimes not write a required dlist in z64rom mode
- Fixed an issue where the D9 command of the customizer wasnt saved correctly when using the checkboxes
- Fixed an issue where the exit numeric box of collision tab didnt worked with z64rom exit mode
--------------
---1.56
--------------
Note: This update has been released sooner due a critical issue
- Fixed a critical issue where opening a scene made before 1.54 and saving it would make it impossible to open back
- Fixed an issue where vertex beyond int16 range would crash SO when rendering. They now get clamped as failsafe
- Fixed an issue where reload button would not update the rendering without the user having to reenable it manually
- [MM] Fixed an issue where view scenes from ROM (beta) didnt worked with MM roms
- [MM] Fixed an issue where actors with locked rotation would appear as Unknown, not render, not get their object autoadded and not appear in the flag log
--------------
---1.55
--------------
- Updated SharpOcarina plugin to 1.1.2 (update it manually by importing BlenderScripts\io_export_so_3.0.zip)
- Added a few missing tags in the form of checkboxes, only Alpha Mask is rendered inside Blender
- Initializing a material that was a Fast64 material before will transfer some data to SO and remove all Fast64 related data
- Added a Mass Initialize button in viewport sidemenu, this inits all materials as SO materials (the feature mentioned above also applies)
- Added dropdowns to choose the texture format of each texture
- Clamp and mirror are now texture tags instead of group tags
- Updated Objex2 plugin to 2.6 (update it manually by importing BlenderScripts\io_export_objex2.zip)
- Initializing a material that was a Fast64 material before will transfer some data to Objex2 and remove all Fast64 related data
- Added a Mass Initialize button in viewport sidemenu, this inits all materials as Objex2 materials (the feature mentioned above also applies)
- Fixed an issue where everything was rendered black&white if it was used above Blender 3.0 version
Note: it still crashes if used above 3.4, so stay at 3.3 LTS or 3.4 for now
- Texture tags can now also go in a Tags line inside the .mtl
- Changed z64rom exit's default header to 0
- Changed spawner's default variable to 0FFF
- Updated the parameter values of wooden doors and sliding doors
- Added an option to export a scene as C array to use in decomp based projects (no more support is planned besides this)
- Changed so dummy points are added when attempting to preview a cutscene camera with less than 4 points and dummy points setting is enabled
- Changed #AlphaMask tag to #MaskAlpha to avoid parse issues
- Fixed an issue where trying to update Set Cutscene custom actor in the custom actor database would give a name conflict
- Fixed an issue where multitextures would not be rendered in alternate headers
- Fixed an issue where "there's no collision file!" error would sometimes appear when loading z64rom project
- Fixed an issue where additional textures would be added multiple times when reloading a model
- Fixed an issue where texture tag #ia16 would set the texture to IA8 instead
--------------
---1.54
--------------
- Added a new tool "Copy data between .zobjs" that allows transfering data between .zobjs, among other things this provides the ability to easily edit the gameplay_keep objects in z64rom
- Added a new tool "Convert image or file to C array", with it you can instantly convert an image to N64 format and turn it into a C array
- Added a new param "Decimal" in the property fields of actor.toml. Set it to true to turn the numeric box decimal
- Cutscene Table Editor becomes Remove Cutscene Table when in z64rom mode, and it has been added in z64rom post-installation options (use actor 0x01E0 to start cutscenes)
- Changed so .zroom is an allowed extension whith "import actors and objects from room" option, and also in io_import_z64.py plugin
- Updated SO Blender export plugin, now supports Blender 4.1+ (thanks Dragorn421)
- Fixed an issue where multitextures could get corrupted if a texture was deleted in the model, alongside possible crashes when loading a scene, WARNING from now on 2 textures cant have same filename!
- Fixed an issue where the program would prompt an error if a z64rom actor attempted to load an object that was still not compiled
- Fixed an issue where attempting to render multiple dlists in an actor.toml would sometimes prompt an error
- Fixed an issue where the program would set its working directory as system32 when starting it from the start menu
- Fixed an issue where View scenes (beta) would crash in MM mode
--------------
---1.53
--------------
- Added Custom Actor Database! download custom actors made by other people with ease! accessible in Tools tab (z64rom needed)
- Instance focus (F key) now works with all kinds of instances, not just actors
- Added a "Custom Actor" filter in the actor database, filter both custom actors and edited vanilla actors (Only works with z64rom)
- Changed so custom actors no longer appear at the beginning of the actor database
- Increased Actor Database filtering speed, and also loading speed after the first time by storing the data in a cache
- Actor database now can setup multiple actors in real time without automatically closing, and added a "set on select" checkbox
- Its now possible to write database notes for the custom actors in the actor.toml using the Notes tag (z64rom)
- Actor.toml now supports multiple display lists (separated by comma), loading display lists and textures from vanilla zobjs and using hierarchys other than the first
- SO will warn the user if they want to close the application or opening another scene without saving after changing collision, rooms, injecting or saving binary
- Added "Overwrite debug savefile data too" option in Filesave creation editor (both binary and z64rom)
- Updated SO export plugin to 1.1.0 (previous version was 1.0.8):
- Addressed an issue where it was impossible to keep group setting changes made inside SO when reloading model (1.0.9)
- Fixed a bug where camera ID was exported incorrectly
(install the plugin manually from BlenderScripts folder)
- Installing z64rom now also creates binary data (used by a few of the editors) and applies the titlescreen values if selected
- Flag log now displays actor variable
- Fixed an issue where having a cutscene camera command without points would prompt an index error
- Fixed an issue where "View scenes from rom (Beta)" always prompted an error
- Fixed an issue where "Show Titlecard" did the opposite in z64rom exits
- Fixed an issue where a crash message would occurr when trying to inject or reload a scene with no rooms or groups
- Fixed an issue where breakable pot wasn't documented enough and always asked for object 0003
- Fixed an issue where z64rom projects couldn't be used if the path had blank spaces
- Fixed an issue where installing z64rom without creating a new scene would prompt an error
- Fixed an issue with the autodetection of hierarchies when drawing actors
- Fixed an inconvenience where the save button disappeared in filesave editor when in z64rom mode
--------------
---1.52
--------------
- Greatly reduced lag when rotating actors with the mouse wheel
- Reduced lag when scrolling through the actor lists with the mouse wheel
- Changed the logic where you had to select an instance with right click and then middle click before being able to rotate an actor
- A yellow border shows up on the instance that can be interacted with middle click/wheel
- Cutscene actor points Y rotation can be modified via mouse wheel
- Instance axis is now only drawn if its ready to be interacted with middle mouse
- Holding CTRL while dragging middle mouse now lets you move the selected instance from anywhere, good for actors that have their bounding box hidden by their 3D models
- Additional lights default as point lights with radius one when added, as thats their most common use
- Changed all textboxes of the actor controls into numeric boxes, allowing some advantages such as mouse wheel
- Fixed an issue that appeared in 1.51 where it was impossible to edit multiple waterboxes if the room of one was set to a value different than 3F
- Fixed an issue where all numeric fields would display an error when they have a value bigger than the maximum instead of adjusting it
- Fixed an issue where SO would prompt an error if the mouse wheel was used after deleting all actors or waterboxes
- Fixed an issue where play button could be pressed without creating a scene first
- Fixed an issue where a compiled rom could be given when creating z64rom binary data, corrupting it
- Fixed an issue where Flag Log crashed unless global rom or z64rom was being used
- Fixed an issue where Flag Log crashed if an unknown actor ID was used in a room
- Fixed an issue where the modifier keys to make the camera faster or slower would get stuck when interacting with the UI while moving the camera
- Fixed an issue that appeared in 1.51 where some buttons were missing their icons
--------------
---1.51
--------------
- Added z64rom support to Initial Filesave Editor
- You can now let SO install z64rom for you, simply go to File > Create new z64rom project.
- Added new tag #ScaledNormals, this lets you define how light A/B affects the mesh by using a grayscale of vertex colors to define the normal map.
- Injecting a scene on a rom bigger than 64 mb will trim its size to 64 mb. The purpose of this is to autotrim the popular "ZELOOTMA" debug rom.
- The [Beta] tag of "Build and launch z64rom + warp to scene" is removed since the feature now properly works with the latest z64rom version
- "Build and launch z64rom + warp to scene" now also saves the scene to z64rom, turning this option into 1 click to test
- Added play button when in global rom or z64rom mode
global rom mode: acts as a shortcut of inject + launch rom
z64rom mode: acts as a shortcut of build and launch z64rom + warp to scene
- Added a button in the actor database to search actors by vanilla category.
- Turned some text fields into numeric fields
- [MM] Fixed an issue where texture scrolling wasnt rendered
- Fixed an issue where the flag value of texture animation conditions would reset to value 3F
- Fixed an issue where it was impossible to import certain vanilla cutscenes
- Fixed an issue where the scene name would lose the last letter if the scene was exported straight away after typing the name
- Fixed an issue regarding simple texture swap animation
- Fixed an issue where a texture frame animation couldnt have different frame timings
- Fixed an issue where an error would show up if you cancel "select a base rom" window
- Fixed an issue where "View scenes from rom (Beta)" didnt warned about the rom being compressed
- (1.511 hotfix) Fixed not being able to save zzrtl scenes
- (1.511 hotfix) Fixed not being able to open properly scenes saved in 1.50
--------------
---1.50
--------------
- Added the drop table editor from custom actor toolkit and gave it z64rom support. SO will create all the necessary hooks inside lib_user for you.
- Added property Object in actor rendering (z64rom) to load a different object from the one assigned in init_vars
- Added property Collision in actor rendering, its main purpose is for other actors to detect it when using "stick to ground", also gets rendered with show collision option enabled
- Delete key can now be used any selectable element, such as actors. You must select the instance in the viewport for it to work.
- Armos statues and all kind of dungeon switches are now rendered properly
- (Beta) Enabled the unfinished .zscene viewer, saving is disabled
- Fixed an issue where the property DisplayList in actor rendering (z64rom) didnt accepted hexadecimal offsets
- Fixed an issue where FC D9 E2 tags would always prompt an usage warning, being impossible to use them
- Fixed an issue where reloading a single room that has less groups than before would lead to a crash
- Fixed an issue regarding relative paths not being stored correctly inside saved scenes
- Fixed an issue where a scene would crash in z64rom if the texture animation list was empty with advanced texture animation option enabled
- Fixed an issue where a scene would crash if alternate headers had inherit texture animations enabled while the main header had an empty texture animation list
- Fixed an issue where holding Z (or using the UI) to stick an actor to collision would not ignore #NoCollision tags
- Fixed an issue where an error could show up when deleting pathways
- The features that dont support z64rom now warn the user in z64rom mode
- The setting "Disable Texture Warnings" will also disable texture resolution warnings
--------------
---1.49
--------------
- Added full z64rom support to pause screen map editor
- Make sure to be in z64rom mode before opening the editor
- Automatically creates all the necessary hooks inside lib_user for you
- Added option to reset group settings on scene reload
- Fixed an issue where the scene Name and other textboxes would revert back in some situations
- Fixed an issue where moving chest icons by holding shift in the pause screen map editor would bring an error
- Fixed an issue where visited floors pause screen maps weren't working correctly ingame (z64rom only), Thanks Jinnosuke
- Fixed an issue where actors without a custom render and the 3D axis werent rotated correctly in the Z axis
- [MM] Fixed an issue where SO didnt created any actor cutscene by default, leading to an ingame crash unless one was added manually
- Fixed an issue where an scene could be rendered unusable if SO failed to locate multitexture files
- Fixed an issue where group selection would be permanently invisible after closing optimize window (being invisible while its open is intended)
- Auto-add transition doors now warns the user if scene scale is not set to 1.00
--------------
---1.48
--------------
- [MM] Added support for command 1B: Actor Cutscenes, you can find the UI by going in Pathways tab in Majora's Mask mode
- Added property IgnoreRotation in actor rendering to ignore the rotation fields when rendering its model
- [MM] Added the actor property IgnoreMMRot to ignore the rotation conversion, this also takes care of the bitflag values in Actor ID
- [MM] Added the actor property NoMMYRot to display the Y rotation as degrees + camera ID regardless of ignore MM day/night system option
- [MM] Added properties to chests, switches and torches
- [MM] Switching to MM mode automatically enables "Force DMA on inject"
- [MM] Default actor ID in MM mode is now rupee instead of butterfly
- [MM] Added option to import Actor Cutscenes from .zscene
- [MM] When importing cameras from .zscene in MM mode, it will pick them from the scene header instead of collision
- Fixed an issue where adding or deleting rooms with reload would not add or delete rooms to the rest of the headers
- Fixed an issue where error prompts would appear when loading scenes with no actors and objects
- Fixed an issue where deleting objects in the UI would set the cursor position at 0
- Fixed an issue where ScaleArray render property didnt worked in XML format (check actor 0x015F for example)
- Fixed an issue where the actor render cache wasnt reseted when swaping between OoT and MM or opening an MM rom in global mode
- Fixed an issue where properties of selected actor weren't refreshed when opening z64rom project or swaping between OoT and MM
- [MM] Fixed an issue where set title card and set restriction flags buttons were visible in MM mode (they're only usable for OoT)
- Fixed an issue where the global rom label wasnt properly anchored to window size
- Fixed an issue where an error indicating that there's no collision file would show up if global rom / z64rom mode was used before opening a scene
- Fixed an issue where unchecking global time and leaving the time at 00:00 would make it go back to global time enabled when swaping rooms
- [MM] Fixed an issue where fixed cameras in MM weren't stored correctly in the scene file
--------------
---1.46
--------------
- Fixed an issue where saving a scene without activating N64 render during the session, or reloading z64rom after saving a scene would give a path error
- Fixed an issue where the hotkey of holding shift to increase position/rotation by 20x more didnt worked
- Fixed an issue where loading z64rom after pressing N64 render would not refresh the zobj models
- Fixed an issue where adding a pathway would prompt an error till a point was added
- Changed the controls popup to mention that F key focuses the camera on the active actor
- When updating SO starting with 1.46, a Downloading... text will appear
--------------
---1.45
--------------
- Added setting to preview cutscenes without the black bars at the top and bottom of the screen
- Added ScaleMask, ScaleTarget, ScaleArray, ColorMask, ColorTarget, EnvColorArray, PrimColorArray, RotY in actor.toml Render settings
- Updated Blender io_export_so2 plugin to 1.07
- if a material has the same name as a texture (or contains it) when initializing the SO material, it will assign it to textel0 automatically
- the option to ignore material groups on export is back
- Fixed an issue where z64rom actor.toml could not be loaded with certain directory names
- Fixed an issue where hierarchy was mispelled as hirearchy in SO code, which made this property not load from z64rom actor.toml files
- Fixed an issue where Yoffset could not be negative in actor rendering
- Fixed an issue where SO would crash when clicking various buttons with no collision loaded
- Fixed an issue where reloading model after saving would prompt an error
- Fixed an issue where the chest actor would not display all item IDs
- Fixed an issue where TextureOffsets wasnt implemented in actor.toml Render
- Fixed an issue where badly modeled #Door groups would crash SO on inject
- Fixed an issue where XYZ rotations were applied wrongly on the models since a few updates
- Room tags will function even if they're followed by . or _, this avoids a common error with Blender appending .001 and _Collection in group names
- Attempting to load build-dev.z64 will make SO suggest about opening z64project.toml
- Removed debug prints to improve performance
- Improved rendering of crystal switches, rupees and iron knuckles, and some actors like the scythe trap rotate in real time
--------------
---1.44
--------------
- Billboards and 2D billboards are now rendered inside SO viewport
- Updated MM actor xml, thanks doncamilo!
- Fixed an issue where actor.toml properties in z64rom projects wasnt working
- Fixed an issue where SO would sometimes fail to warn the user about incorrect numeric tag usage
- Added extra tooltip on billboard and 2D billboard checkboxes explaining how to use them
--------------
---1.43
--------------
- Added #Tint mesh tag (wasn't present due an oversight)
- Command D9 (Geometry Mode) can now be customized via UI when clicking Customize button in group settings
- Fixed an issue where vanilla modified actors in z64rom would appear twice in the actor database
- Fixed an issue where scene names where not correctly displayed in cutscene editor
--------------
---1.42
--------------
- Added options to build and launch z64rom when in z64rom mode. [Beta] There's an additional one to warp Link directly on the scene you're editing, skiping titlescreen.
- Entrance table editor now support z64rom, they will automatically open the .toml files in z64rom mode, and can also export tables to .toml format
- Added "Save to binary" options in entrance table editor and cutscene table editor
- Fixed an issue where opening rom 2 times without closing cutscene table editor would prompt an error
- Fixed an issue with the starting room time when importing old scenes
- Fixed an issue where the time of all rooms would be set to 0 if atleast 1 room had global time enabled
- Fixed an issue where time could not be changed after opening a scene without rechecking global time checkbox
- Fixed an issue where loading a z64rom project would not correctly detect custom actors and objects
- Fixed an issue where saving a scene in a z64rom project, then deleting rooms and saving it again would make z64rom crash when building
- Fixed an issue where exits could not be deleted
- Fixed an issue where importing collision from zscene would rarely crash the program
--------------
---1.41
--------------
- Added feature to add objects on all scenes at once via the scene object tab
- Added support for azerty and dvorak keyboards
- Added #Echo collision tag
- Rendered actors can now use prim color and env color (so actors like bronze boulder and fire are now displayed in their correct colors)
- Fixed an issue where if 2 textures had the same filename but different folder it would display incorrectly in SO
- Fixed an issue where SO wasnt compatible with the multitexture settings of the new blender export plugin
- Fixed an issue regarding cutscene preview and dummy points
- Fixed an issue where changing map scale during simulate n64 graphics would not refresh the viewport
- Fixed an issue in the submap editor, where clearing all the maps did not set the amount of floors for each map to 0, causing issues on reload
- Fixed an issue where the final map's floors in the submap editor were not saved
- Fixed an issue where the imagedata for only the first 8 submaps was saved
- Fixed an issue where texture swap animations couldnt be previewed when alpha was set below 255
- Fixed an issue where pushable block actor would appear without texture
- Editor properly clears all the map image data when "clear all maps" is used
- The submap editor will now open even if a scene is not open
- The submap editor will now automatically ensure that texture IDs given to floors are consecutive to minimize data usage
- The "Auto Reload" setting can now be saved
--------------
---1.40
--------------
- Flag Log does not display empty flags, improved readability
- YOff affects actor skeleton renders
- Tracks recent Global ROMs and romtool projects
- Rooms are renameable
- Changed Reverb to Sound Space and added XML's for these
- Added the necessary support for the current version z64rom to work
- Supports the new exit system that completely skips the use of exit table
- Global z64rom mode which lets you directly save into the project without having to constantly select the .toml
- Get actor properties and preview render info through 'actor.toml'
- Reworked restriction flags, now you edit them per scene instead of having to modify a table
- Reworked titlecards, now you set them per scene and SO handles the offsets instead of having to inject them manually
- Added an option to only render waterboxes in general tab (enabled by default)
- Added an option to toggle on/off texture warnings
- Added color blind option in the dropdown menu (previously you had to edit settings.xml)
- Changed direction params of environment lights so they're displayed as X Y Z values
- Added camera direction to light direction copy buttons
- Added value 0000 - None in special objects
- Cutscene parameter changes affect camera while in the camera view mode (position changes, fov, roll)
- Cutscene Add Position now inserts the added position after the selected position
- You can now switch with a numeric selector at the top of the window
- You can now select rooms and groups by holding ctrl and right clicking on a room in the viewport
- Fixed an issue where changing a texture animation to "texture swap" in n64 render mode would give an error message
- Fixed an issue where you could not add an animation type "texture swap animation" while n64 render mode was enabled
- Fixed an issue where waterboxes would turn opaque after playing a cutscene
- Fixed an issue where the camera would move awkward if you pressed middle click while having no rooms
- Fixed an issue where scenes would crash if no animated texture command was added
- Fixed an issue where the UI would not be correctly refreshed after saving to binnary when an alternate header was selected
- Fixed an issue where alternate headers could not have their own texture anims despite the inherit checkbox being unchecked
- Fixed an issue where an alternate header that clones the main header could lead to a crash
- Fixed cutscene camera preview to be more accurate
- Fixed camera preview to restore previous FOV
- Fixed the inequality where collision and texture tags were case sensitive while mesh tags werent
--------------
---1.34
--------------
- Added partial support to z64rom projects (save binary and patches)
- Exits are now caped at 0x1F instead of 0xF (twice the amount), #Exit tag now uses 2 digits