# Does forced_backdrop DECIDE a screen's order, or merely AGREE with it? # # Produced by: cargo run -p sylpheed-formats --example forced_backdrop_necessity -- # over every dat/*.pak, 2026-08-30. SYLPHEED_DISC=/disc. # # 'decides' = derived_paint_order() differs from the same sort with the # forced_backdrop fallback removed. 'no' = the element's own read or implied # key already puts it there, OR every element on the screen is forced so the # declaration-index tie-break gives the same order either way. # # TOTALS: 80 forced instances = 62 decides + 18 agrees. # The 80 reproduces the census in ui-forced-backdrop.md exactly. # Every one of the 62 deciders is keyless; no keyed element is ever moved. # # /disc/dat/GP_BUNK.pak # entry forced decides elements note 0 1 YES 21 forced=[px_bunk_base.tbm] keyless=[px_bunk_base.tbm] 2 1 YES 21 forced=[px_bunk_base.tbm] keyless=[px_bunk_base.tbm] 4 1 YES 19 forced=[pvbase.tbm] keyless=[pvbase.tbm] 6 1 YES 19 forced=[pvbase.tbm] keyless=[pvbase.tbm] # rule DECIDES the order on entries [0, 2, 4, 6] # rule merely AGREES on entries [] # /disc/dat/GP_CHALLENGE.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_DEBRIEFING_PILOTLOG.pak # entry forced decides elements note 118 1 YES 6 forced=[px_deb_base.tbm] keyless=[px_deb_base.tbm] 130 1 YES 6 forced=[px_deb_base.tbm] keyless=[px_deb_base.tbm] 131 1 YES 13 forced=[pjbgbase2.tbm] keyless=[pjbgbase2.tbm] 134 1 YES 10 forced=[px_deb_base.tbm] keyless=[px_deb_base.tbm] 150 1 YES 13 forced=[pjbgbase2.tbm] keyless=[pjbgbase2.tbm] 165 1 YES 10 forced=[px_deb_base.tbm] keyless=[px_deb_base.tbm] # rule DECIDES the order on entries [118, 130, 131, 134, 150, 165] # rule merely AGREES on entries [] # /disc/dat/GP_DIALOG.pak # entry forced decides elements note 2 1 YES 15 forced=[pcbase.tbm] keyless=[pcbase.tbm] 3 1 YES 15 forced=[pcbase.tbm] keyless=[pcbase.tbm] 9 1 YES 34 forced=[pzeff00.prm] keyless=[pzeff00.prm] 10 1 YES 46 forced=[pzeff00.prm] keyless=[pzeff00.prm] 11 1 YES 38 forced=[pzeff00.prm] keyless=[pzeff00.prm] 12 1 YES 32 forced=[pzeff00.prm] keyless=[pzeff00.prm] 13 1 YES 32 forced=[pzeff00.prm] keyless=[pzeff00.prm] 14 1 YES 34 forced=[pzeff00.prm] keyless=[pzeff00.prm] 15 1 YES 26 forced=[pzeff00.prm] keyless=[pzeff00.prm] 16 1 YES 20 forced=[pzeff00.prm] keyless=[pzeff00.prm] 17 1 YES 30 forced=[pzeff00.prm] keyless=[pzeff00.prm] 18 1 YES 38 forced=[pzeff00.prm] keyless=[pzeff00.prm] 19 1 YES 30 forced=[pzeff00.prm] keyless=[pzeff00.prm] 20 1 YES 36 forced=[pzeff00.prm] keyless=[pzeff00.prm] 21 1 YES 38 forced=[pzeff00.prm] keyless=[pzeff00.prm] 22 1 YES 46 forced=[pzeff00.prm] keyless=[pzeff00.prm] 23 1 YES 34 forced=[pzeff00.prm] keyless=[pzeff00.prm] 24 1 YES 36 forced=[pzeff00.prm] keyless=[pzeff00.prm] 25 1 YES 14 forced=[pzeff00.prm] keyless=[pzeff00.prm] 26 1 YES 16 forced=[pzeff00.prm] keyless=[pzeff00.prm] 28 1 YES 14 forced=[pzeff00.prm] keyless=[pzeff00.prm] 29 1 YES 16 forced=[pzeff00.prm] keyless=[pzeff00.prm] 30 1 YES 18 forced=[pzeff00.prm] keyless=[pzeff00.prm] 31 1 YES 18 forced=[pzeff00.prm] keyless=[pzeff00.prm] 32 1 YES 10 forced=[pzeff00.prm] keyless=[pzeff00.prm] 33 1 YES 16 forced=[pzeff00.prm] keyless=[pzeff00.prm] 34 1 YES 14 forced=[pzeff00.prm] keyless=[pzeff00.prm] 35 1 YES 18 forced=[pzeff00.prm] keyless=[pzeff00.prm] 36 1 YES 16 forced=[pzeff00.prm] keyless=[pzeff00.prm] 37 1 YES 18 forced=[pzeff00.prm] keyless=[pzeff00.prm] 38 1 YES 26 forced=[pzeff00.prm] keyless=[pzeff00.prm] 39 1 YES 20 forced=[pzeff00.prm] keyless=[pzeff00.prm] 40 1 YES 18 forced=[pzeff00.prm] keyless=[pzeff00.prm] 41 1 YES 20 forced=[pzeff00.prm] keyless=[pzeff00.prm] 86 1 YES 2 forced=[esrb_base.prm] keyless=[esrb_base.prm] 130 1 YES 2 forced=[esrb_base.prm] keyless=[esrb_base.prm] # rule DECIDES the order on entries [2, 3, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 86, 130] # rule merely AGREES on entries [] # /disc/dat/GP_GAMEOVER.pak # entry forced decides elements note 4 1 YES 13 forced=[pnbase.tbm] keyless=[pnbase.tbm] 7 1 YES 13 forced=[pnbase.tbm] keyless=[pnbase.tbm] # rule DECIDES the order on entries [4, 7] # rule merely AGREES on entries [] # /disc/dat/GP_HANGAR_ARSENAL.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_LEADERBOARD.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_D.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_D2D.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_E.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_E2D.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_F.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_F2D.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_I.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_I2D.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_J.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_J2D.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_S.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MAIN_GAME_S2D.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MISSION_LOG.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_MISSION_SELECT.pak # entry forced decides elements note 3 1 YES 15 forced=[px_mission_base.tbm] keyless=[px_mission_base.tbm] 5 1 YES 15 forced=[px_mission_base.tbm] keyless=[px_mission_base.tbm] # rule DECIDES the order on entries [3, 5] # rule merely AGREES on entries [] # /disc/dat/GP_MOVIE_THEATER.pak # entry forced decides elements note 0 1 YES 12 forced=[px_movie_base.tbm] keyless=[px_movie_base.tbm] 1 1 YES 12 forced=[px_movie_base.tbm] keyless=[px_movie_base.tbm] # rule DECIDES the order on entries [0, 1] # rule merely AGREES on entries [] # /disc/dat/GP_OPTIONS.pak # entry forced decides elements note 0 2 no 2 forced=[po_menu_base.tbm,po_menu_base.tbm] keyless=[po_menu_base.tbm,po_menu_base.tbm] 2 2 no 2 forced=[po_menu_base.tbm,po_menu_base.tbm] keyless=[po_menu_base.tbm,po_menu_base.tbm] # rule DECIDES the order on entries [] # rule merely AGREES on entries [0, 2] # /disc/dat/GP_PAUSE_MENU.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_READY_ROOM.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_SAVE_LOAD.pak # entry forced decides elements note 37 2 no 13 forced=[pfbase.tbm,pfbase.tbm] keyless=[] 40 2 no 13 forced=[pfbase.tbm,pfbase.tbm] keyless=[] 46 1 YES 10 forced=[pgloading_eff00.prm] keyless=[pgloading_eff00.prm] 58 1 no 9 forced=[pfbase.tbm] keyless=[] 69 1 YES 10 forced=[pgloading_eff00.prm] keyless=[pgloading_eff00.prm] 78 1 no 9 forced=[pfbase.tbm] keyless=[] 89 1 YES 7 forced=[px_replay_base.tbm] keyless=[px_replay_base.tbm] 93 2 no 13 forced=[pfbase.tbm,pfbase.tbm] keyless=[] 98 1 YES 7 forced=[px_replay_base.tbm] keyless=[px_replay_base.tbm] 99 2 no 13 forced=[pfbase.tbm,pfbase.tbm] keyless=[] # rule DECIDES the order on entries [46, 69, 89, 98] # rule merely AGREES on entries [37, 40, 58, 78, 93, 99] # /disc/dat/GP_STAGE_CLEAR.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/GP_SYSTEM.pak # entry forced decides elements note 0 1 YES 21 forced=[pqbase.tbm] keyless=[pqbase.tbm] 1 1 YES 21 forced=[pqbase.tbm] keyless=[pqbase.tbm] # rule DECIDES the order on entries [0, 1] # rule merely AGREES on entries [] # /disc/dat/GP_TITLE.pak # entry forced decides elements note 10 1 no 3 forced=[palogo_eff0.prm] keyless=[] 11 1 no 7 forced=[palogo_eff0.prm] keyless=[] 12 1 YES 10 forced=[pgloading_eff00.prm] keyless=[pgloading_eff00.prm] 13 1 no 3 forced=[palogo_eff0.prm] keyless=[] 14 1 no 7 forced=[palogo_eff0.prm] keyless=[] 15 1 YES 10 forced=[pgloading_eff00.prm] keyless=[pgloading_eff00.prm] # rule DECIDES the order on entries [12, 15] # rule merely AGREES on entries [10, 11, 13, 14] # /disc/dat/GP_TUTORIAL.pak # entry forced decides elements note 0 1 YES 18 forced=[pubase.tbm] keyless=[pubase.tbm] 1 1 YES 18 forced=[pubase.tbm] keyless=[pubase.tbm] # rule DECIDES the order on entries [0, 1] # rule merely AGREES on entries [] # /disc/dat/fonts.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/sound.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries [] # /disc/dat/tables.pak # entry forced decides elements note # rule DECIDES the order on entries [] # rule merely AGREES on entries []