Jump to content
LaunchBox Community Forums

dsync89

Members
  • Posts

    71
  • Joined

  • Last visited

  • Days Won

    1

Posts posted by dsync89

  1. Hey there fellow Launchbox Devs, this is my first attempt to develop a plugin that attempt to read all zip files in a a rom folder recursively and create a new Platform and Games for those. So far I've setup the full .NET 9.0 development environment and confirm LB can load this plugin and I can see it in the Tools menu. What's strange is despite calling `PluginHelper.DataManager.Save()` after `AddNewPlatform` and `AddNewGame` I don't see any XML created. I've checked the Plugin docs but couldn't find anywhere that mention how to save other than this.

    A snippet of the code.

            public void OnSelected()
            {
                var platformName = "JAKKS Pacific TV Games";
                var romFolder = @"c:\temp\mame_curated_romset\jakks-pacific-plug-and-play-tv\";  // Your curated folder
    
                IPlatform platform = PluginHelper.DataManager.GetPlatformByName(platformName)
                              ?? PluginHelper.DataManager.AddNewPlatform(platformName);
    
                platform.SortTitle = platformName;
                //platform.Save();
    
    
                foreach (var file in Directory.GetFiles(romFolder, "*.zip", SearchOption.AllDirectories)) // This makes it recursive
                {
                    var fileName = Path.GetFileNameWithoutExtension(file);
    
                    IGame newGame = dataManager.AddNewGame(fileName);
    
                    // STEP 4: Set game properties
                    newGame.Platform = platform.Name;
                    newGame.ApplicationPath = @"C:\MAME\roms\bubblebobble.zip";
                    newGame.CommandLine = ""; // optional
                    newGame.EmulatorId = dataManager.GetAllEmulators().FirstOrDefault()?.Id; // optional
                    newGame.Version = "Softlist";
                    newGame.SortTitle = "Bubble Bobble";
    
                    PluginHelper.DataManager.Save();
                }
    
                MessageBox.Show("Import complete!", "JAKKS Importer", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
    
            public bool ShowInLaunchBox => true;
            public bool ShowInBigBox => false;
    
            public System.Drawing.Image IconImage
            { get { return Resource1.logo; } }
            public bool AllowInBigBoxWhenLocked => throw new NotImplementedException();
        }

     

    Edit:

    Solved. Turned out I just have to refresh the menu! This will be a first step for a plugin to come that will handily import a curated MAME MESS list.

  2. 1 minute ago, JoeViking245 said:

    That's great to hear!!

    I'm not following you.  Are you changing the ROM path?  Can you maybe provide more details.

    Are you adding the clones separately or as Additional Apps?  Or maybe the "Application list" = Additional Apps?

    To clarify, an existing Parent ROM has a newly added clone?  I'll have to check the code.

     

    I don't recall off hand what all I had logged.  If you could provide the log file(s) for these failed attempts, it might help me deduce what's going (not going) on.  (Just drag and drop the file(s) located in the plugins' /Logs/ folder [vs. copy/paste the whole things]) onto your reply message.

     

    Fortunately that resolve is not a tedious one.  A few seconds to delete and a few seconds to import.  TBH, I kind of figured everyone would be using no-intro or redump sets and not need this 5-ish year-old plugin.  :D  

    Thanks for the reply! I didn't expect a reply so soon 😄

    Quote

    Q: I'm not following you.  Are you changing the ROM path?  Can you maybe provide more details.

    To clarify, I'm updating ROMs that were originally located in:

    MAME-0.263/roms/softlist

    to the newer path:

    MAME-0.277/roms/softlist

    I’ve noticed that if the ROM files in MAME-0.277/roms/softlist are identical (i.e., same filenames and checksums) to those already present in MAME-0.263/roms/softlist, then the LaunchBox MAME Softlist Import Tool will not update the ROM paths.
     

    Quote

    Q: Are you adding the clones separately or as Additional Apps?  Or maybe the "Application list" = Additional Apps?



    Yes, I’m adding the clones as Additional Apps. For example, if a game title like "foo" already exists in Platform A which I imported from 0.263 MAME softlist, and the updated 0.277 MAME softlist set introduces a clone named "foo2", the import tool does not add "foo2" as an Additional App under the existing "foo" entry. It seems that if the base title already exists, newly introduced clones with different filenames aren’t added automatically as Additional Apps.
    image.thumb.png.b1d6431295bec7c3da0be1d4ba3d881c.png

     

    For the two issues above there is no error shown but rather a successful ones. 

     

    Quote

    Fortunately that resolve is not a tedious one.  A few seconds to delete and a few seconds to import.  TBH, I kind of figured everyone would be using no-intro or redump sets and not need this 5-ish year-old plugin.  :D  

    Ah yes I guess I'm one of those niche ones. Too bad ever since MESS being integrated into MAME, there are still using the legacy hash.xml files for those systems. To the best of my knowledge there is no DAT project for those softlist systems. I'm simply being picky so I'm importing those selected softlist platform one by one, and also for me to learn more about these obscure systems. Updating is a pain since I had to manually go through these softlist system and re-run the import tool. 

  3.  

    Error Value cannot be null. (Parameter 'source') when I tried to click the Filter icon on any Platform/Playlist that contains the MAME rom path, after updating MAME 0.263 to 0.277. 

    Not sure if this is related to the MAME update as I haven't use the Filter icon for quite some time until recently when I try to filter and generate different playlist for MAME.

     

    Value cannot be null. (Parameter 'source')
    
    App:     LaunchBox
    Version: 13.21
    Theme:   Omni
    Type:    System.ArgumentNullException
    Site:    Void ThrowArgumentNullException(System.Linq.ExceptionArgument)
    Source:  System.Linq
    
       at System.Linq.ThrowHelper.ThrowArgumentNullException(ExceptionArgument argument)
       at Unbroken.LaunchBox.Windows.Integrations.MAME.MameHighScores.CheckIfSupported(String romFile)
       at ManagerParamWatcher.FindDataSchema(String romFile, ManagerParamWatcher)
       at Unbroken.LaunchBox.Windows.Integrations.MAME.MameHighScores.CheckIfSupported(Game game)
       at ResolverMockWatcher.FindDataSchema(Game game, ResolverMockWatcher)
       at Unbroken.LaunchBox.Windows.Data.Game.get_HasMameHighScoreSupport()
       at Unbroken.LaunchBox.Windows.Desktop.ViewModels.SideBarViewModel.<>c__DisplayClass110_1.CreateCompositeAccount(Object)
       at Unbroken.LaunchBox.Windows.Desktop.ViewModels.SideBarViewModel.<>c__DisplayClass110_1.PatchTypeAuthentication(Game game)
       at Unbroken.LaunchBox.Windows.Threading.<>c__DisplayClass13_1`1.ConcatMetaMock()
       at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
    --- End of stack trace from previous location ---
       at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
    
    Recent Log:
    
       上午 12:54:47 Exception

     

  4. Glad to report that this plugin still works on the latest Launchbox v13.21. 

    When updating any MAME set, e.g. from MAME 0.263 to 0.277 softlist and re-run the importer tool, I noticed that

    1) it won't update the ROM path for any existing rom that still exist in the new romset (issue)

    2) any newly added roms that is a clone of an existing rom won't be added too to the Application list. (issue)

    3) any new rom (not clone) that is in the new romset will get added (OK)

    So I ended up having to delete all entries and re-update again. Not sure if there is any plan to update this? Thanks!

  5. Necromancing this thread again because I noticed the same behaviour on certain platform even on latest LB v13.21 which list nearly all files in a folder when I used the `Scan for new roms` for that platform.

    image.thumb.png.fcee888f07c844f66db1df9f4d481bea.png

     

    What's even stranger is manual import using the ROM files wizard only list the zip files!

    image.thumb.png.b95ef6241d8179dc07173ba4df9f23a9.png

     

    This strange behaviour only exist on certain Platform, as my other Platforms didn't have these problems and only list the .zip files.

    Would be great if we could have an option to filter the rom files for different platform.

  6. Hi Launchbox, I've encountered an issue where the "Scan for Added ROMs" option fails to detect any newly added ROMs for a platform. However, if I use the "Import ROMs" wizard instead, the new ROMs are found and imported without any problems.

    I've attached some screenshots to highlight the issues.

    image.thumb.png.f219306fe0c22d3ab90fb1b972c7f137.png
    image.png.f40c72e60720ca30e2d351c52f4c32ff.png

     

    When I add it manually, it is able to find those newly added roms in that folder.

    image.thumb.png.629e4406a7067f94470dd8bf4c521cd0.png

    image.thumb.png.3d7b85259570bb2114a69f7e8d6a516e.png

    Also made sure that the Games path is pointed to the same path as the newly added folder path when using Import ROM wizard.

    image.thumb.png.f1bf3a24441921db9f2c0a7efa0ae5ef.png

     

  7. @superrob3000 Here's some continous update on using this plugin on 200k+ titles. On a 7 monitor setups that read images/videos from different game/platform media (2 videos, 5 arts), I noticed that some videos/art for platform categories took several seconds before it popup. What is odd is that video/art for platform is usually faster. I'm guessing it is how the lookup is being done hmm. I've excluded any I/O related issues and those arts are on my NVMe PCIe4 Samsung 990 Pro SSD. Once I disabled the plugin, those wheel spinning animation and transition went blazingly fast. Perhaps this is only noticable on huge media system with a lot of artworks that dampens the lookup performance.

    Since this is closed source project I would not be able to help much, but would like to see if my feedback helps to further improve this plugin performance on a huge database game system.

  8. I've been wondering what is the actual cause that slows down Launchbox/BigBox start up time when the number of playlist increases. I'm still unsure if it is the dynamic playlist (autoplaylist) or static playlist that cause the issue.

    If it is the former (slowdown as dynamic playlists increases ), it's probably because it always populate the entries in all autoplaylist by looking up the database, then filter it on-the-fly. Implementation wise it could be better and give the user a choice whether to repopulate those dynamic playlist entries every time it boots up, or reuse the cache instead. For huge multisystem (>200k) game titles and didn't have frequent game update, I would rather use the cache instead of having it populate it from the fresh each time it boots up. Even in the case of any game update, I would rather populate those entries in dynamic playlist explicitly instead of having the system do it for me everytime.

     

    If it is the latter (slowdown as static playlists increases), I really have no idea why it might slows down, as everything should be statically read from a previous generated database entries.

     

    Would probably need LB developer to clarify on this. This issue had caused me to limit my current dynamic playlists to less than 50 for an acceptable startup time.

     

    For reference, other front end like PinUp Popper doesn't have this slowdown issue even with 100+ of automatic playlists.

     

     

  9. 3 hours ago, seaview59 said:

    Super Note Club logo

    not.png

     

    Thanks that was fast and sharp! Will be creating 16:9 banner using these logo for the obscure system :)

    I've only able to found some of the following logo from Silver Rings, but it's blurry or having jagged lines. Not sure if anyone have the Clear Logo for these as well? Thanks much!

    Sega Beena

    SegaBeena.thumb.png.1903191b28fee2d58938d6d2480beec9.png

    Koei Pasogo

    KoeiPasogo.thumb.png.566837a577e7b92623d7a0c92c9a70e5.png

     

    Takara e-kara

    Takarae-kara.thumb.png.e3d9a1a00157e3beeba37a147f2d5f84.png

     

     

    VSmile Motion

    image.thumb.jpeg.df098d645be3aa36b34e9bf681f8e4b9.jpeg

     

    Commodore VIC-10

    Just the VIC-10, not VIC-1010

    commodorevic-10-01.thumb.png.38657e6d52eab769125277a5ba8cdb33.png

     

    EACA EG2000 Colour Genie

    EACAEG2000ColourGenie.thumb.png.e804304928653b6083e984cfe3ed8c5d.png

     

     

    • Like 1
  10. 1 hour ago, AceEsCloud said:

    I am having an issue with Nintendo_Wii_U.  No games from that emulator light the controls (I'm using Cemu as the emulator). I have set the default controls fore Nintendo_Wii_U but still no lights work. I have tried adding a specific game (for example mario kart eight) but this game is not in controls editors unknown game list. This tells me that LED Blinky doesn't even see me launching the game. I have tried deleting the emulator and recreating it using a game that does show up in the list (ex Tekken 7)  but the controls still don't work even for Tekken 7.  All other emulators I have setup work fine just not Nintendo Wii u.  I don't know where to go from here, no web searches lead to anything that relates to this issue. Any help is greatly appreciated.

    I suggest turning on LEDBlinky log and check the logs, keeping eye for the Event name. Most probably its typo. For your reference, this is my LED Blinky Debug.log when I select a game in Nintendo Wii Platform.

     

    image.thumb.png.5ad5664f8f4b5bfc84dce97dc51dc327.png

    My LEDBlinky Controls Editor

    image.thumb.png.5d307b2b8d9ae1d24b1c96a64b4a00ff.png

  11. Added video snaps for Bioshock and Bioshock 2 Remastered, 40s and 1 min version. Let me know if you prefer the long version. I felt the cutscene is simply too amazing to ignore, and the bass drop that transition to the game title screen couldn't felt more right!

    Bioshock Remastered (40s version)

     

     

    Boshock Remastered (1 min version)

     

    Bioshock 2 Remastered (40s version)

     

    Bioshock 2 Remastered (1 min version)


     

  12. I used to make MS-DOS video snaps back in 2015 and submitted to Emumovies, and now I am back to making video snaps, starting with Nintendo Switch since I like the platform and the video snaps submitted, even Official ones are sort of a mixed bags. Most of them are either game trailer or having inconsistent video length. Not to mention the subpar edits that sometimes doesn't reflect the interesting part of the game. E.g. character dialog, meaningless wandering in town. In short, I simply don't like it. I prefer actual game play footage since the trailer could be a hit or miss, some only showing FMV. Not to mention the annoying few seconds ESRB/PEGI rating that announced the start of the trailer that really game browsing experience continuity when using frontend like BigBox.

    Most videos are 40s in duration, in which most of them consist of 35s of gameplay + 5s of title screen. A few of them are 30s gameplay + 10s of title screen if I couldn't find a suitble cutoff point to fit that 35s gameplay duration. An alternate version of 40s length is included if I find the snap interesting such as having different battle music. I also included a couple of long version video snap that are 1 minute in length if I find the gameplay interesting. But the long version is always accompanied with the regular 40s version.

    I am OCD when it comes to content creating. I meticulously and manually pick all scenes in hope that those capture the hightlight and essence of the game. Cuts are also combined with music transition so that the transition from one scene to the next are smooth. I even go as far as picking the interesting part of the title song that is attractive, rather than always the start of the theme song. On average, each video edit took me 20-30 minutes.

    All video snaps are edited using Da Vinci Resolve. Few of the video snaps are recorded by myself if I already have the recordings. For the rest, I manually search and download those game footage from YouTube that contains NO Watermark. I only resorted to video having subtle watermark if I couldn't find otherwise, such as several Atelier titles. Loudness are controlled so that True Peak (TP) is < -1.0dB and LUFS is < -14dB.

    All file are named according to Launchbox naming format, where any special character is replaced with underscore _.

    Enjoy this video snap pack, and leave me a comment or reply to this thread if you find my work interesting or need improvement. Pick your favorite snaps so I know the editing preference that you like.

    If you want, feel free to request any Switch title that you find subpar and I will try to best it out! Enjoy!

     

    Download it from Launchbox now!

    Game List 

    Atelier Lydie & Suelle_ The Alchemists and the Mysterious Paintings DX.mp4
    Atelier Lulua_ The Scion of Arland.mp4
    Atelier Totori_ The Adventurer of Arland DX.mp4
    Atelier Rorona_ The Alchemist of Arland DX.mp4
    Atelier Meruru_ The Apprentice of Arland DX.mp4
    Atelier Ayesha_ The Alchemist of Dusk DX-long.mp4
    Atelier Ayesha_ The Alchemist of Dusk DX.mp4
    Atelier Escha & Logy_ Alchemists of the Dusk Sky DX.mp4
    Atelier Escha & Logy_ Alchemists of the Dusk Sky DX-long.mp4
    Atelier Shallie_ Alchemists of the Dusk Sea DX-02.mp4
    Atelier Shallie_ Alchemists of the Dusk Sea DX.mp4
    Astral Chain.mp4
    Atelier Ryza_ Ever Darkness & the Secret Hideout.mp4
    Atelier Ryza 2_ Lost Legends & the Secret Fairy.mp4
    Atelier Ryza 2_ Lost Legends & the Secret Fairy-long.mp4
    Atelier Ryza 3_ Alchemist of the End & the Secret Key.mp4
    Atelier Marie Remake_ The Alchemist of Salburg.mp4
    Asterix & Obelix XXL3_ The Crystal Menhir.mp4
    Tales of Vesperia_ Definitive Edition.mp4
    Tokyo Mirage Sessions #FE Encore-02.mp4
    Psychic 5 Eternal.mp4
    Radiant Tales.mp4
    Rune Factory 4 Special.mp4
    Shantae and the Pirate_s Curse.mp4
    Shantae_ Half-Genie Hero Ultimate Edition.mp4
    Super Neptunia RPG.mp4
    Tactics Ogre.mp4
    SaGa Emerald.mp4
    Earth Defense Force.mp4
    Etrian Odyssey 3.mp4
    Etrian Odyssey II HD.mp4
    Akiba_s Trip_ Undead & Undressed -  Director_s Cut.mp4
    Attack on Titan 2.mp4
    Bloodstained_ Ritual of the Night.mp4
    DEEMO.mp4
    DEEMO -Reborn-.mp4
    Kingdom Hearts_ Melody of Memory.mp4
    Melon Journey.mp4
    New Pokemon Snap.mp4
    Moving Out 2.mp4
    The Legend of Legacy HD Remastered.mp4
    Mon-Yu_ Defeat Monsters And Gain Strong Weapons And Armor. You May Be Defeated, But Don’t Give Up. Become Stronger. I Believe There Will Be A Day When The Heroes Defeat The Devil King.mp4
    Superbeat_ XONiC.mp4
    SUPER CRAZY RHYTHM CASTLE.mp4
    Tokyo Mirage Sessions #FE Encore.mp4
    Super Bomberman R 2.mp4
    Super Street Racer.mp4
    Darkest Dungeon.mp4
    Star Ocean_ The Second Story R.mp4
    SnowRunner.mp4
    Monster Hunter Rise.mp4
    Layton_s Mystery Journey_ Katrielle and the Millionaires_ Conspiracy Deluxe Edition.mp4
    Langrisser I & II.mp4
    Valkyria Chronicles 4-long.mp4
    Valkyria Chronicles 4.mp4
    Trouble Witches Final! Episode 1_ Daughters of Amalgam.mp4
    Tristia Restore.mp4
    WarioWare_ Move It!.mp4
    Trine 5_ A Clockwork Conspiracy.mp4
    Zombies Ate My Neighbors and Ghoul Patrol.mp4
    Yu-Gi-Oh Legacy of the Duelist.mp4
    Yu-Gi-Oh Legacy of the Duelist-long.mp4

    NintendoSwitchGamesVideoSnapPack01.thumb.png.da1436d180c4a78a360281296983deae.png

    • Thanks 1
  13. @superrob3000

    Hey there again from another avid fans of your plugin! Currently we have Stretch option for a video/image file, is it possible to add additional Fill option so that it doesn't look arkward when stretching a 16:9 to a 3.28:1 (1280x390) aspect ratio marquee screen which is commonly used for marquee? Thanks again!

    P/S: Your plugin is one of the main reason I still stick with Launchbox/Bigbox compared to other even faster and less resource intensive frontend such as Retrobat/EmulationStation :D Other frontend doesn't really have plugin that support indefinite amount of screens

  14. On 4/15/2024 at 4:04 AM, superrob3000 said:

    @dsync89 I added a per-screen mute option to v5.0.0. To get to the option go to Tools->ThirdScreen Settings, select the screen you want to unmute, and click "Additional Settings".

     

    On 4/15/2024 at 5:17 AM, superrob3000 said:

    @dsync89 Ok, the option is working correctly now in v5.0.1.

     

    @superrob3000 Awesome feature! Thanks for implementing it in such as short time, confirmed it does work in my setup and I could finally display those video snaps on my arcade topper monitor and have sounds playing 😄 Hope this benefits those that use their primary screen to display coverflow but video snap playback on other monitors!

  15. On 3/17/2024 at 9:26 AM, punipuni said:

    Hello.

    Great initiative!

    But in my environment I'm getting an error with AHK.

     

    loooooooooooooooooooooooooooooooooooooooooooooooooo!

    Error at line 52.

     

    The following variable name contains an illegal character: "GameInfo.

    "GameInfo.Length".

     

    The program will exit.

     

    Woooooooooooooooooooooooooooooooooooooooo!

     

    I think I tried both V1 and V2 versions of AHK...

    I am an AHK amateur so I could be wrong.

     

    Could you please let me know?

     

     

    Hey there most likely it runs Autohotkey v1 exe by default instead of V2. Try to select `Open With` and then select `Autohotkey\v2\AutoHotkey64.exe`

    In Launchbox, simply create a emulator called `AutoHotKeyV2` to separate from v1, then point to the right EXE.

    image.thumb.png.95a2503953616478aa49bc84a2dc6f7f.png
     

    I used AHKv2 for my platforms below

    image.thumb.png.8e1a9ec8072ebfbe7d18d190ec161884.png

    Let me know if you''re still stuck, the pack should work as-is.

  16. Hey there, I'm currently importing various MAME/MESS system that might have different media/medium for a system, e.g. Atari 800 that has cartridge, floppy disk, and casette. Is there any recommended way to create only a single platform but easier way to group by Media? Reason being the emulator command differ depending on the media, especially when using MAME emulator, using -cart for cartridge, -flop1 for floppy, etc. Wish LB has a native field called Media or Medium for us to sort. Also thinking of using Version field but it's best reserved for its original purpose.

    Initially I was thinking to use a Custom Field: Media, then generate auto playlist based on the filter. Unfortunately the auto playlist field didn't support custom field.

    Another approach is to create separate platform for it, such as Atari 800 (CS), Atari 800 (CT) and Atari 800 (FD). But doing is is convoluted and make BigBox navigation more cumbersome.

    Wish to see how you guys did it!

  17. Hey guys, just wondering where should I put my Game Clear Logo for each platform if I wanted to override in my selected Bigbox Themes? Seems like the image path that BigBox Theme uses to override the default Images folder is a bit different.

    Example:

    Platform Clear Logo in default Images folder = Launchbox/Images/Platforms/<Platform Name>/Clear Logo

    Whereas the folder to override in Bigbox Theme is LaunchBox/Themes/Unified/Images/Platforms/Clear Logo

    Notice the absence of <Platform Name> in BigBig Theme Image

     

×
×
  • Create New...