├── WikiImages ├── Ban.png ├── Oldest.png ├── Utility.png ├── SongMenu.png └── Suggestions.png ├── TaohSongSuggest ├── UI │ ├── Images │ │ ├── sync.png │ │ └── kofilogo.png │ ├── MapListController.cs │ ├── Views │ │ ├── PlaylistDetailView.bsml │ │ ├── SongSuggestTab.bsml │ │ ├── AccSaberSettings.bsml │ │ ├── LevelDetailSuggestButtonsView.bsml │ │ ├── SongSuggestLeft.bsml │ │ └── SongSuggestMain.bsml │ ├── SettingsLeftController.cs │ ├── TSSFlowCoordinator.cs │ ├── PlaylistDetailViewController.cs │ ├── TabViewController.cs │ ├── SettingsController.cs │ └── LevelDetailViewController.cs ├── Configuration │ ├── InitialData │ │ └── Files.meta │ └── PluginConfig.cs ├── Directory.Build.props ├── manifest.json ├── Managers │ ├── UIManager.cs │ └── SongSuggestManager.cs ├── Properties │ ├── AssemblyInfo.cs │ ├── Resources.Designer.cs │ └── Resources.resx ├── Patches │ ├── LevelDetailPatch.cs │ ├── LevelPackPatch.cs │ └── ProcessScorePatch.cs ├── Plugin.cs └── SmartSongSuggest.csproj ├── Files.meta ├── .editorconfig ├── SmartSongSuggest.sln ├── .gitattributes └── .gitignore /WikiImages/Ban.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HypersonicSharkz/SmartSongSuggest/HEAD/WikiImages/Ban.png -------------------------------------------------------------------------------- /WikiImages/Oldest.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HypersonicSharkz/SmartSongSuggest/HEAD/WikiImages/Oldest.png -------------------------------------------------------------------------------- /WikiImages/Utility.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HypersonicSharkz/SmartSongSuggest/HEAD/WikiImages/Utility.png -------------------------------------------------------------------------------- /WikiImages/SongMenu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HypersonicSharkz/SmartSongSuggest/HEAD/WikiImages/SongMenu.png -------------------------------------------------------------------------------- /WikiImages/Suggestions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HypersonicSharkz/SmartSongSuggest/HEAD/WikiImages/Suggestions.png -------------------------------------------------------------------------------- /TaohSongSuggest/UI/Images/sync.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HypersonicSharkz/SmartSongSuggest/HEAD/TaohSongSuggest/UI/Images/sync.png -------------------------------------------------------------------------------- /TaohSongSuggest/UI/Images/kofilogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HypersonicSharkz/SmartSongSuggest/HEAD/TaohSongSuggest/UI/Images/kofilogo.png -------------------------------------------------------------------------------- /Files.meta: -------------------------------------------------------------------------------- 1 | {"top10kVersion":"50.0","songLibraryVersion":"44.0","top10kUpdated":"2025-12-13T13:47:22.6094171Z","beatLeaderLeaderboardUpdated":1765608371,"beatLeaderSongsUpdated":1765608371} -------------------------------------------------------------------------------- /TaohSongSuggest/Configuration/InitialData/Files.meta: -------------------------------------------------------------------------------- 1 | {"top10kVersion":"50.1","songLibraryVersion":"45.1","top10kUpdated":"2025-12-18T13:09:16.723718Z","beatLeaderLeaderboardUpdated":1766042160,"beatLeaderSongsUpdated":1766042160} -------------------------------------------------------------------------------- /TaohSongSuggest/Directory.Build.props: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | True 6 | BSIPA 7 | 8 | -------------------------------------------------------------------------------- /TaohSongSuggest/UI/MapListController.cs: -------------------------------------------------------------------------------- 1 | using BeatSaberMarkupLanguage.ViewControllers; 2 | using HMUI; 3 | using System; 4 | 5 | namespace SmartSongSuggest.UI 6 | { 7 | class MapListController : BSMLAutomaticViewController 8 | { 9 | public TableCell CellForIdx(TableView tableView, int idx) 10 | { 11 | throw new NotImplementedException(); 12 | } 13 | 14 | public float CellSize() => 14f; 15 | 16 | public int NumberOfCells() 17 | { 18 | throw new NotImplementedException(); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | [*.cs] 2 | 3 | # CS0649: Field 'LevelDetailViewController.parserParams' is never assigned to, and will always have its default value null 4 | dotnet_diagnostic.CS0649.severity = suggestion 5 | 6 | # CS0169: The field 'PlaylistDetailViewController.parserParams' is never used 7 | dotnet_diagnostic.CS0169.severity = suggestion 8 | 9 | # CS0067: The event 'PlaylistDetailViewController.PropertyChanged' is never used 10 | dotnet_diagnostic.CS0067.severity = suggestion 11 | 12 | # CS0414: The field 'PluginConfig._activeLeaderboard' is assigned but its value is never used 13 | dotnet_diagnostic.CS0414.severity = suggestion 14 | -------------------------------------------------------------------------------- /TaohSongSuggest/UI/Views/PlaylistDetailView.bsml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /TaohSongSuggest/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://raw.githubusercontent.com/bsmg/BSIPA-MetadataFileSchema/master/Schema.json", 3 | "id": "SmartSongSuggest", 4 | "name": "SmartSongSuggest", 5 | "author": "HypersonicSharkz & Taoh", 6 | "version": "2.1.1", 7 | "description": "Can make and update a playlist with ranked song suggestions, based on played and liked songs. Option to ban songs temporary or permanent. Can also make a playlist based on oldest ranked scores.", 8 | "gameVersion": "1.38.0", 9 | "dependsOn": { 10 | "BSIPA": "^4.2.0", 11 | "SongCore": "^3.8.0", 12 | "BeatSaberPlaylistsLib": "^1.5.0", 13 | "BeatSaberMarkupLanguage": "^1.5.0", 14 | "SongDetailsCache": "^1.1.2", 15 | "BS Utils": "^1.11.0" 16 | } 17 | } -------------------------------------------------------------------------------- /TaohSongSuggest/UI/Views/SongSuggestTab.bsml: -------------------------------------------------------------------------------- 1 | 2 | 3 |