[-] PerfectDark@lemmy.world 2 points 15 hours ago

Thank you!!!

I'm really glad you found it interesting :)

[-] PerfectDark@lemmy.world 10 points 1 day ago

Thank you! Its *ma'am!

But I think its sad too, that something has made us all doubt everything we read, and judge it all so harshly. What a strange world now :(

[-] PerfectDark@lemmy.world 4 points 2 days ago

Oh that's so kind of you to say!

One thing I had to change with my writing was dropping my en and em dash use. I loved them, but seeing how Chat has adopted them and throws them out like confetti has made me change my ways :(

I'm really glad you enjoyed the content, Kazeta feels so unique and fun to me, it really desveres some attention!

[-] PerfectDark@lemmy.world 11 points 2 days ago

If you join his Discord, you'll see he's working out other physical 'devices' which will work on the same principle!

Early days so far, but its exciting to see all kinds of ideas being suggested in there :)

[-] PerfectDark@lemmy.world 7 points 2 days ago

Let me know how you find it when you do! Would love to see them :)

[-] PerfectDark@lemmy.world 15 points 2 days ago

Thanks!

I've written...well a bunch of different 'styles' of things over the last two or so years. I've had plenty of rambling rants on general gaming news (which gets shared exclusively here on Lemmy), and I've done just straight interviews (Heroic, Lutris, RetroDECK and so on), I figured it was time to at least try something different. I like the idea of a kind of feature article, and Alkazar was so kind to chat to me for awhile on Kazeta. It felt right.

I'm glad you enjoyed it, even if it kinda took you aback to begin with :)
Thanks for the comment!

[-] PerfectDark@lemmy.world 16 points 2 days ago* (last edited 2 days ago)

Oh yikes, well that's a hard thing to read when I wrote it! I'll try make sure in future to diversify what the heck I'm trying to get across. Thanks for letting me know, even if it is a tough thing to read!

A little edit:

Alkazar is very happy with the article, as is Gardiner (whose site this is posted on). I've been writing for a long time now, you can check my post history here if you'd like to check through those which I've written exclusively for Lemmy. Or you can filter my posts on Gardiner's site to see the others I've written. I've had a couple things posted on Gaming on Linux, and also on SDHQ.

As much as I try to not let it get under my skin, the dismissive 'it's just A.I.' comment does get under my skin. It's awful to read when a ton of work goes into these, and when friendships are formed because of what I write. I get that its not for you, and maybe my pacing of the article wasn't for you either. Can't pretend that it doesn't hurt to read that.

I'm not a professional, this isn't my business or my life. Its a hobby.

184

Kazeta is a new OS by the creator of ChimeraOS. You might have seen some news on it in the last few days, or at least some posts on social media. Its not trying to be the next big gaming platform, it’s more like a little love letter to the old style of gaming. Instead of all those menus, online accounts, and updates, it takes things back to the basics: stick in a 'cartridge' you make yourself, turn on the system, and play. That’s it! No fuss, just the game you wanted to play.

What makes it extra fun is that the 'cartridges' are really just SD cards you load games onto. Label them, stack them, swap them around, it’s built to make you feel like you’re back in the ’90s, digging through a shoebox of game carts. For someone who wasn’t alive for that era of gaming (not even close, honestly), it’s a neat little glimpse of what it was like. A tactile vision of when games came on actual carts...well, kind of.

Kazeta is a neat mix of nostalgia and practicality, especially if you’re tired of modern gaming feeling like a chore.

I got the chance to chat with Alkazar, the dev behind Kazeta, and he shared some great insights into building the OS. This feature pulls together our conversation and what makes the project so unique.

You can find the link to that article I wrote here (on Gardiner Bryant's site), and I hope you enjoy it! Please let me know what you think, of it...and my writing!

89
submitted 2 days ago* (last edited 2 days ago) by PerfectDark@lemmy.world to c/games@lemmy.world

Kazeta is a new OS by the creator of ChimeraOS. You might have seen some news on it in the last few days, or at least some posts on social media. Its not trying to be the next big gaming platform, it’s more like a little love letter to the old style of gaming. Instead of all those menus, online accounts, and updates, it takes things back to the basics: stick in a 'cartridge' you make yourself, turn on the system, and play. That’s it! No fuss, just the game you wanted to play.

What makes it extra fun is that the 'cartridges' are really just SD cards you load games onto. Label them, stack them, swap them around, it’s built to make you feel like you’re back in the ’90s, digging through a shoebox of game carts. For someone who wasn’t alive for that era of gaming (not even close, honestly), it’s a neat little glimpse of what it was like. A tactile vision of when games came on actual carts...well, kind of.

Kazeta is a neat mix of nostalgia and practicality, especially if you’re tired of modern gaming feeling like a chore.

I got the chance to chat with Alkazar, the dev behind Kazeta, and he shared some great insights into building the OS. This feature pulls together our conversation and what makes the project so unique.

You can find the link to that article I wrote here (on Gardiner Bryant's site), and I hope you enjoy it! Please let me know what you think, of it...and my writing!

[-] PerfectDark@lemmy.world 8 points 3 days ago

That's very kind of you!

I haven't been sharing so much of these articles or interviews I've been doing here lately, mostly I think because it makes me look like I'm inundating the place.

But that's so kind of you to say, glad you enjoyed it!

158
submitted 3 days ago* (last edited 3 days ago) by PerfectDark@lemmy.world to c/games@lemmy.world

A few weeks ago I reached out to Lbrpdx, who is the developer of Batocera, asking him if he's okay with the idea of an interview.

Batocera itself is a free, plug-and-play operating system that turns a PC, handheld, or single-board computer into a retro gaming console with built-in emulators. I've used it on my PC's, and I've used it on my Steam Deck - everything from the ROMs to bios, emulators and files all stored on a SD card without any performance issues. It's pure magic to me.

Anyway, Lbrpdx said he's very much okay with chatting to me, so I got the chance to ask him a bunch of questions!

If you're interested in reading what he and I talked about (how Batocera began, how it is developing, the community and the future of things!), then you can follow this link to read all about it

[-] PerfectDark@lemmy.world 1 points 4 days ago

I'm so glad you enjoyed it!

52

A few weeks back I reached out to RetroStyle Games, the Ukraine-based indie studio behind their first full release, Ocean Keeper: Dome Survival. I had first stumbled across the game (back when it was still called Codename: Ocean Keeper) during a Steam sale, and as someone obsessed with anything ocean-themed—books (The Deep), films (Leviathan), and of course games—I knew I had to dive in.

In this (what technically is, but I shudder to call: 'exclusive') interview, I got to speak with Diana, RetroStyle’s content manager, who shares insights into the creative inspirations, development process, and community-driven evolution of Ocean Keeper. From how the team mixed influences ranging from cult sci-fi films to classic roguelikes, to their approach to building player relationships through Discord and Reddit, Diana offers a candid look at what it takes to bring a complex indie game from concept to launch and beyond.

I do hope you enjoy this one!


The Background:

To start with, introduce us to the team behind Ocean Keeper!

Hi! We’re RetroStyle Games, a small but passionate team based in Kyiv, Ukraine. We all absolutely love everything related to games. While the company was originally founded back in 2010 and has been working as an outsourcing studio ever since (you might’ve even seen our work in titles by Ubisoft, King, Sega and other). But recently we’ve taken the exciting leap into making our own full-scale games.

Inside our company we’ve launched a full-on gamedev department with a super young and energetic crew: everyone here is around 25 years old. The core team behind Ocean Keeper includes a few developers, QA testers, one game designer and a humble little marketing team.

Answering your questions today is Diana, content manager at RetroStyle Games with a lot of help from our devs and game designer.

What inspired Ocean Keeper?

We’re big fans of games like Dome Keeper and Vampire Survivors for their loop, pacing, and satisfying power scaling. The thrill of diving deep and uncovering long-lost secrets has always pulled us in so yeah Subnautica definitely left its mark too.

Also StarCraft had a huge influence! Not just as a design reference but as a game that shaped many of us growing up. It’s a childhood favorite for several team members. In Ocean Keeper you’ll definitely catch echoes of that in how enemies are designed. Silhouettes and animations are key. We wanted each creature even as a shadow in the deep to feel instantly threatening.

Our whole team loves roguelikes and replayability was a big focus from day one.

And the underwater setting itself? It felt like such a rare space in games. It’s unpredictable and perfect for building tension. Plus it opens up tons of fun mechanics.

Any non-gaming influences?

Oh yeah a ton. What’s cool is that everyone on the team brought different tastes and ideas to the table. During brainstorms you’d hear everything from Pacific Rim and Edge of Tomorrow to War of the Worlds (both the movie and the book), Evangelion, The Iron Giant. That mix of references helped shape everything.

Our moodboards also had plenty of refs to Peni Parker’s mech from Spider-Verse when we were designing our mech and EVE from WALL-E when we were shaping the emotional bond between the mech and the Digger.

How much did the game change during development?

A lot honestly. Early on it was more generic, but we gradually leaned harder into the underwater vibe and added subtle "easter eggs" to real-world landmarks. You’ll see sunken historical locations which helps the world feel full of mystery even before we added a full narrative.

(an old build of the game, with a more 'rusty' mech type)

The mech also changed a bunch. It started as one rusty old machine but eventually grew into three distinct mech types that reflect your level of progress in the game.

(The mech builds soon got more detailed and more expansive)

On inspiration in general:

We believe the best ideas come from mixing things up. Art, movies, books, memes etc. Ocean Keeper has a serious tone but there’s warmth and a bit of soul underneath. That contrast is something we kept stick to the whole way through.

The indie gaming scene is thriving like never before. In recent years, we’ve seen growing frustration with big-budget AAA titles, while smaller studios (often working with just a fraction of the resources) have delivered some of the most creative and compelling experiences around. What led you to self-publish rather than partner with a publisher or turn to crowdfunding options like Kickstarter?

Honestly because we wanted to see what we’re capable of. It was a challenge we gave ourselves to grow not just as individuals but as a studio. Sure it’s hard but we knew what we signed for. Going all in on our own game from idea to release felt like the next step if we really want to grow as a team and as a company.

How early did you start promoting the game, and what was that process like? Especially when trying to build interest and visibility ahead of launch?

Marketing didn’t come easy at first if we’re being honest. It was all pretty new for us so the early steps were a bit messy.

Things really picked up around the beta launch, that’s when we started making real noise. Steam Next Fest helped a ton too it’s a crazy powerful event for visibility if you come in prepared.

Right after the beta we started reaching out to influencers, basically anyone we could find. We knocked on every door not knowing if anyone would answer. Sometimes they did sometimes they didn’t but we kept going.

Another big moment for us was the livestream we ran on Steam. It was just our own team playing the game and chatting with the audience live on Steam. And that worked — people connected with us and the game on a real level.

(Screenshot of that livestream held on Steam by the team)

We’re putting a lot of effort into organic reach and trying to catch every opportunity that comes our way. It’s scrappy but it’s real.

As a small team, which marketing platforms ended up making the biggest impact: Reddit, Discord, dev blogs, Steam forums...or somewhere else?

Discord and Reddit definitely made the biggest impact for us, mostly through open communication and creating spaces where players felt heard. During the beta testing phase of Ocean Keeper, our Discord server was buzzing with daily conversations between players and developers. That early interaction helped shape the game and also created a strong sense of community. Many of those players are still there, chatting and joking around, not about bugs anymore, but just because they’ve genuinely connected, even with some of our team members.

Another major moment was an AMA we recently hosted on the r/NintendoSwitch subreddit. It brought a huge spike of attention to the game, with lots of thoughtful questions and feedback. We think this kind of genuine engagement is what makes people want to spread the word. Screenshots and trailers are great, but conversations build loyalty.

(Their AMA!)

Were there any lessons (or surprises) you’d like shared, in trying to break through the noise of so many other indie releases?

One big lesson for us was understanding how different the marketing approach needs to be between our outsourcing services and our own game projects. With outsourcing, it’s about clarity, structure, and client trust. But in game dev, you’re building emotional connections, with your audience, your world, and your team’s personality.

What helped us stand out wasn’t just the game concept (although underwater mechs are definitely rare), but finding the right way to position it and build a niche. Instead of trying to appeal to everyone, we focused on players who specifically love roguelikes, underwater themes, and mechs. That gave us a clear voice and message.

And most importantly, we learned the value of community. Not just as a one-time campaign, but as a long-term commitment. Real conversations, real care, those things cut through the noise better than any paid ad ever could.


The Development Process:

Let’s talk a bit about the development process itself. Ocean Keeper is a game that clearly underwent a lot of iteration, from early access to full release across multiple platforms. What did development look like day-to-day?

It felt like one long never-ending brainstorm honestly. The whole process was super feedback-driven especially as we got closer to release.

Pre-launch was basically the feedback era. You test a version, collect thoughts from the team, patch it up, rinse and repeat. First it was all internal suggestions from our devs and designers but once we launched the open beta the feedback floodgates really opened.

Bug reports, improvement ideas - it all poured in and honestly helped us a lot. One cool story from that phase is how we found our QA Sophia. She was one of the beta players and her bug reports were so detailed and sharp, we just had to reach out. We invited her to an interview and now she’s been with us for over a year.

So yeah, lots of back and forth testing rebuilding tweaking again.

The procedural generation element plays a big part in replayability for me. How did you go about designing levels that still feel purposeful and satisfying within that randomness?

First thing - procedural generation in Ocean Keeper only applies to the caves. The surface map stays the same.

For us replayability isn’t just about random levels. It’s about how each run feels. So we focused on balancing action with a more meditative flow. The game splits into two main rhythms - blasting fish with big guns and then mining peacefully. That contrast is super important to the vibe we wanted to achieve.

The caves are few, but important, and we didn’t want them to get stale. So procedural generation made perfect sense there. It keeps things fresh. You never know exactly what layout or surprises you’ll get which helps a lot with keeping each run interesting.

Replayability also comes from the upgrade system. The map may be small but every run gives you different weapons, different paths to power and different combinations. That completely changes how the gameplay feels.

We also sprinkled in some puzzles and little narrative beats that act like twists during the digging phase.

And we kind of “cheated” a bit, because our studio has years of experience in level and system design from outsourcing projects. So we took that know-how and put it straight into our own game.

Were there any features that had to be cut or postponed because of time or resource constraints? If so, are they still on the roadmap? And any sneak peeks at what they might be?

There are plenty of examples. When you start a project you’re full of ideas and ambition and then reality hits, at some point you gotta actually put it all together into one working game. And, unless you want to spend the next ten years in dev hell, some things just have to go.

We originally planned more weapon types and chip mods for them. There were ideas for adding variety to the Digger’s tools, more destruction on the surface, more interactivity in the world.

Narrative was also something we had to delay, for almost a year the game had zero story. We only added it right before release.

At one point we were even planning to have different biomes inside the caves but that turned out to be way too much for the timeline.

Still we managed to sneak in a lot of those ideas just in a simpler more “budget-friendly” way. And that honestly helped both the game and our team grow. It forced us to test systems faster and be more creative with what we had. Some of that stuff is still on the wishlist though. So who knows, maybe in an update.

Looking back now, what was the hardest system or mechanic to get right, and what finally made it click?

The hardest part wasn’t a single mechanic, it was getting all of them to work together as one system. Each individual feature was challenging in its own way, sure, but the real headache was syncing it all up so nothing broke the game.

You’ve got combat, mining, upgrades, puzzles, the mech systems, enemies events — and they all need to feel like one game, not just a pile of features.

What finally made it work? Just persistence really.


Platform Support/Launch:

Ocean Keeper didn’t just launch on Steam; there was Steam Deck support out of the gate, a mobile release not long after, and a full PlayStation 5 version too. That’s a huge feat for an indie team.

How did you decide which platforms to prioritize, and what did your release timeline look like behind the scenes?

Right now Ocean Keeper is available pretty much everywhere: Steam, Steam Deck, PlayStation, Xbox, Nintendo Switch, Android, iOS, even Linux and macOS.

From the start we really wanted the game to be accessible on all major platforms. That was both a big goal and a challenge for us. Kind of like expanding our territory of possibilities if you will.

We paid special attention to portable consoles and especially mobile gaming. We already had experience with our mobile games like Last Pirate (10M+ downloads), Zombie Run (1M+ downloads), and more. So bringing a full-scale game to mobile felt like a top priority.

The release pipeline went roughly like this: mobile platforms first, then PlayStation, followed by Xbox and finally Nintendo Switch. Of course, real-world workflow isn’t always that linear, console porting comes with its own quirks, certification steps, build approvals. Sometimes you’re juggling multiple platforms at once just to keep things moving. But that’s the norm in multi-platform development.

This kind of strategic and time management played a major role in helping us bring Ocean Keeper to major consoles in under six months!

Steam Deck support was available right from launch (which is lovely to see), was that a focus early in development, or something that came together late in the process?

It was kind of part accident, part intention. Making a build for Steam Deck isn’t too complicated. You can actually submit your regular PC version and Steam will test it and assign a compatibility rating.

Ocean Keeper got the “Playable” status at launch which means it runs fine but still has a few things to polish. We’re still working on improving that and aiming for the full “Verified” badge.

So while we didn’t build the game just for Steam Deck from day one we always had it in mind. We’re big fans of handhelds in general so making sure the game feels good on Deck was important to us.

(writer's note - since this interview, Ocean Keeper has been verified!)

What were some of the biggest challenges with console or mobile development: UI adaptation, optimization, certification, or something else?

Porting to consoles can definitely feel like opening Pandora’s box. It’s a cycle of endless checks, re-checks, optimizations, approvals, rejections, and trying again. But honestly, we feel things went pretty smoothly for us overall. Each platform’s support team was helpful throughout the process, which made a big difference.

The biggest time sink, though, has been mobile development. The sheer variety of devices and system versions makes porting much more complex. We’re aiming to make the game run well on as many phones as possible, which means finding the right balance between visual compression (without losing the game’s look and feel) and adapting gameplay for touch controls.

It’s a multi-layered challenge, but one we’re actively working through, because we want the game to be accessible on every platform possible.

Do you approach performance and controls differently on each platform? And how important is parity across PC and console experiences?

Yeah the porting approach was different for each platform. Everything had to be tweaked: from controls and UI to how we ran playtests.

Adapting performance settings from PC to Xbox and PlayStation was fairly smooth. But Switch and mobile versions were a lot more challenging. On portable platforms the key is to find that sweet spot where you’re not cutting core gameplay just to make things run.

Parity was super important to us. We wanted the experience to feel unified no matter where you play. So sometimes that meant sacrificing a bit of visual fidelity or texture quality or model complexity just to make sure the gameplay stayed consistent.

Another thing we kept in mind was game size. Especially for mobile. We didn’t want players waiting forever just to download the game. So we did a lot of optimization there to keep it light without losing the feel of the full experience.


Community Feedback & Post-Launch:

What was the most common player feedback post-launch?

Aside from the usual bug reports, gameplay feedback, and requests to tweak the balance a little (yes, we admit the game can make you sweat a bit xD), we’ve also received some incredibly heartwarming messages.

One of our favorite stories comes from a father and son who both play Ocean Keeper on Nintendo Switch and are huge fans of the game. They’ve been actively following development, regularly sending feedback, reporting bugs, and cheering us on. The father often shares how much his son loves the game and keeps asking how things are going on our side. Every time we hear from them, the whole team sends a big hello back to his son, it’s become a bit of a tradition now! ^^

It's moments like these that remind us why we make games.

How has the game changed since release based on community input?

Feedback is a core part of Ocean Keeper from the very beginning. Ever since we launched the beta and brought in our first wave of external testers the conversations never stopped. Our Discord has been buzzing daily with ideas, bug reports and suggestions.

At one point our CEO literally asked the team to make a top list of player-submitted bugs and feature requests and many of those ended up in the game. That kind of direct connection with the community shaped a lot of what Ocean Keeper became.

(credits to the Beta-Testers in the game's credits)

We’re super grateful to everyone who’s contributed. That’s why the most active beta testers are credited in the game. And when we hit our Early Access launch we even invited some of them to our office to celebrate with the team.

Do you find it hard to balance your own creative vision with community suggestions?

It all comes down to critical thinking really. If a community idea is great and it fits the game - we’ll find a way to make it happen.

Of course not everything can go in. We’ve got deadlines and a limited team size so we have to be selective. Sometimes we have to say no not because the idea’s bad but because the timing or scope just doesn’t line up.

Could you share an update or feature that exists only because of player feedback?

Honestly a huge part of how the game looks and feels now is thanks to player feedback.

The underwater vibe especially got a major upgrade after the beta. Players kept saying the game didn’t feel “underwater” enough and they were right. So we added reflections, water caustics, floating corpses of defeated enemies, subtle fog, particles. All those little touches came straight from community suggestions.

A lot of small ideas from players ended up becoming core parts of the atmosphere.

*Are there new biomes, enemies, or mechanics you’re excited to add?

Since the 1.0 release on PC we’ve already dropped update 1.0.3 with a bunch of new upgrades, rebalancing, and optimization tweaks.

Right now we’re working on getting that same update rolled out to all consoles.

We’re definitely continuing to support the project and we know it still has room to grow. There are plenty of things we’re excited to explore next, but we’ll let the updates speak for themselves when the time comes.


Finally:

What games have you been playing lately - indie or otherwise?

Everyone on our team has different tastes when it comes to games. Personally, lately I really enjoy spending time playing with friends, and recently we’ve been playing a lot of DayZ and PEAK (we just love WALKING in games :D).

As for indie games, one that really caught my attention since launch, both for its storytelling and its incredibly unique visual style - is ENA: Dream BBQ. The game touched me deeply with its originality and the way it creates such a vivid interaction with the player.

*Do any of you feel the ‘burn out’ from developing your own game? Most developers I chat to end up having such little time to play games yourself, or even much desire to, when the day-to-day is spent maintaining your own project. Is that the case here, too?

As a company based in Kyiv, Ukraine, I can say that dealing with burnout is something we have to manage very carefully. Especially when our country is at war. Day after day, with air raid sirens, sad news, and explosions, it deeply affects both the company as a whole and each person individually. Everyone worries about themselves and their loved ones.

In these circumstances, you start seeing life and your free time in a completely different way. It makes you realize it’s better to do something now because you never know what might happen next. This applies to everything: from spending time with loved ones to even finding the desire to play a new game.

So yes, burnout is a challenge, but it also brings a new perspective and determination to make the most of every moment. And the support within our team helps us keep going.

If you weren’t working on Ocean Keeper right now, what kind of game do you think you’d be making instead? And, what would you love to make next?

We’re definitely not done with Ocean Keeper just yet, but that doesn’t mean we’re not working on new things too! Here’s a little exclusive: right now we’re actively preparing the beta launch of a co-op version of Ocean Keeper, which we plan to release in late summer or early fall.

Funny enough, we already had the idea for co-op back when we were working on version 1.0 and now it’s finally becoming its own standalone project! We're aiming for an even better launch this time, learning from our stumbles and building on everything we learned from the original game.

We’ll be sharing more details on our social media soon, especially in our Discord, where we’ll likely be recruiting beta testers from the community. So stay tuned! :3

Where can the community find you, if they want to know more, or join in?

Whether you want to follow updates, join the conversation, or just hang out: we’d love to see you around:

And of course, the Steam page!


A big thank you to Diana and the entire RetroStyle Games team for taking the time to share such thoughtful and detailed answers. It’s clear how much passion and care went into creating Ocean Keeper: Dome Survival, and that dedication truly shines through in the game itself. I’ve really enjoyed diving into its world and can’t wait to see how the game (and the team behind it) continue to grow.

I’ve always been a fan of 80s and 90s underwater movies like Sphere, The Abyss, Leviathan, and Deep Star Six. As an avid SCUBA diver, I’m constantly on the lookout for more deep ocean video games to explore. Ocean Keeper was an impulse buy in its early days, and I’m so glad I took the plunge. Maybe you’ll enjoy it too!

51

A few weeks back I reached out to RetroStyle Games, the Ukraine-based indie studio behind their first full release, Ocean Keeper: Dome Survival. I had first stumbled across the game (back when it was still called Codename: Ocean Keeper) during a Steam sale, and as someone obsessed with anything ocean-themed—books (The Deep), films (Leviathan), and of course games—I knew I had to dive in.

In this (what technically is, but I shudder to call: 'exclusive') interview, I got to speak with Diana, RetroStyle’s content manager, who shares insights into the creative inspirations, development process, and community-driven evolution of Ocean Keeper. From how the team mixed influences ranging from cult sci-fi films to classic roguelikes, to their approach to building player relationships through Discord and Reddit, Diana offers a candid look at what it takes to bring a complex indie game from concept to launch and beyond.

I do hope you enjoy this one!


The Background:

To start with, introduce us to the team behind Ocean Keeper!

Hi! We’re RetroStyle Games, a small but passionate team based in Kyiv, Ukraine. We all absolutely love everything related to games. While the company was originally founded back in 2010 and has been working as an outsourcing studio ever since (you might’ve even seen our work in titles by Ubisoft, King, Sega and other). But recently we’ve taken the exciting leap into making our own full-scale games.

Inside our company we’ve launched a full-on gamedev department with a super young and energetic crew: everyone here is around 25 years old. The core team behind Ocean Keeper includes a few developers, QA testers, one game designer and a humble little marketing team.

Answering your questions today is Diana, content manager at RetroStyle Games with a lot of help from our devs and game designer.

What inspired Ocean Keeper?

We’re big fans of games like Dome Keeper and Vampire Survivors for their loop, pacing, and satisfying power scaling. The thrill of diving deep and uncovering long-lost secrets has always pulled us in so yeah Subnautica definitely left its mark too.

Also StarCraft had a huge influence! Not just as a design reference but as a game that shaped many of us growing up. It’s a childhood favorite for several team members. In Ocean Keeper you’ll definitely catch echoes of that in how enemies are designed. Silhouettes and animations are key. We wanted each creature even as a shadow in the deep to feel instantly threatening.

Our whole team loves roguelikes and replayability was a big focus from day one.

And the underwater setting itself? It felt like such a rare space in games. It’s unpredictable and perfect for building tension. Plus it opens up tons of fun mechanics.

Any non-gaming influences?

Oh yeah a ton. What’s cool is that everyone on the team brought different tastes and ideas to the table. During brainstorms you’d hear everything from Pacific Rim and Edge of Tomorrow to War of the Worlds (both the movie and the book), Evangelion, The Iron Giant. That mix of references helped shape everything.

Our moodboards also had plenty of refs to Peni Parker’s mech from Spider-Verse when we were designing our mech and EVE from WALL-E when we were shaping the emotional bond between the mech and the Digger.

How much did the game change during development?

A lot honestly. Early on it was more generic, but we gradually leaned harder into the underwater vibe and added subtle "easter eggs" to real-world landmarks. You’ll see sunken historical locations which helps the world feel full of mystery even before we added a full narrative.

(an old build of the game, with a more 'rusty' mech type)

The mech also changed a bunch. It started as one rusty old machine but eventually grew into three distinct mech types that reflect your level of progress in the game.

(The mech builds soon got more detailed and more expansive)

On inspiration in general:

We believe the best ideas come from mixing things up. Art, movies, books, memes etc. Ocean Keeper has a serious tone but there’s warmth and a bit of soul underneath. That contrast is something we kept stick to the whole way through.

The indie gaming scene is thriving like never before. In recent years, we’ve seen growing frustration with big-budget AAA titles, while smaller studios (often working with just a fraction of the resources) have delivered some of the most creative and compelling experiences around. What led you to self-publish rather than partner with a publisher or turn to crowdfunding options like Kickstarter?

Honestly because we wanted to see what we’re capable of. It was a challenge we gave ourselves to grow not just as individuals but as a studio. Sure it’s hard but we knew what we signed for. Going all in on our own game from idea to release felt like the next step if we really want to grow as a team and as a company.

How early did you start promoting the game, and what was that process like? Especially when trying to build interest and visibility ahead of launch?

Marketing didn’t come easy at first if we’re being honest. It was all pretty new for us so the early steps were a bit messy.

Things really picked up around the beta launch, that’s when we started making real noise. Steam Next Fest helped a ton too it’s a crazy powerful event for visibility if you come in prepared.

Right after the beta we started reaching out to influencers, basically anyone we could find. We knocked on every door not knowing if anyone would answer. Sometimes they did sometimes they didn’t but we kept going.

Another big moment for us was the livestream we ran on Steam. It was just our own team playing the game and chatting with the audience live on Steam. And that worked — people connected with us and the game on a real level.

(Screenshot of that livestream held on Steam by the team)

We’re putting a lot of effort into organic reach and trying to catch every opportunity that comes our way. It’s scrappy but it’s real.

As a small team, which marketing platforms ended up making the biggest impact: Reddit, Discord, dev blogs, Steam forums...or somewhere else?

Discord and Reddit definitely made the biggest impact for us, mostly through open communication and creating spaces where players felt heard. During the beta testing phase of Ocean Keeper, our Discord server was buzzing with daily conversations between players and developers. That early interaction helped shape the game and also created a strong sense of community. Many of those players are still there, chatting and joking around, not about bugs anymore, but just because they’ve genuinely connected, even with some of our team members.

Another major moment was an AMA we recently hosted on the r/NintendoSwitch subreddit. It brought a huge spike of attention to the game, with lots of thoughtful questions and feedback. We think this kind of genuine engagement is what makes people want to spread the word. Screenshots and trailers are great, but conversations build loyalty.

(Their AMA!)

Were there any lessons (or surprises) you’d like shared, in trying to break through the noise of so many other indie releases?

One big lesson for us was understanding how different the marketing approach needs to be between our outsourcing services and our own game projects. With outsourcing, it’s about clarity, structure, and client trust. But in game dev, you’re building emotional connections, with your audience, your world, and your team’s personality.

What helped us stand out wasn’t just the game concept (although underwater mechs are definitely rare), but finding the right way to position it and build a niche. Instead of trying to appeal to everyone, we focused on players who specifically love roguelikes, underwater themes, and mechs. That gave us a clear voice and message.

And most importantly, we learned the value of community. Not just as a one-time campaign, but as a long-term commitment. Real conversations, real care, those things cut through the noise better than any paid ad ever could.


The Development Process:

Let’s talk a bit about the development process itself. Ocean Keeper is a game that clearly underwent a lot of iteration, from early access to full release across multiple platforms. What did development look like day-to-day?

It felt like one long never-ending brainstorm honestly. The whole process was super feedback-driven especially as we got closer to release.

Pre-launch was basically the feedback era. You test a version, collect thoughts from the team, patch it up, rinse and repeat. First it was all internal suggestions from our devs and designers but once we launched the open beta the feedback floodgates really opened.

Bug reports, improvement ideas - it all poured in and honestly helped us a lot. One cool story from that phase is how we found our QA Sophia. She was one of the beta players and her bug reports were so detailed and sharp, we just had to reach out. We invited her to an interview and now she’s been with us for over a year.

So yeah, lots of back and forth testing rebuilding tweaking again.

The procedural generation element plays a big part in replayability for me. How did you go about designing levels that still feel purposeful and satisfying within that randomness?

First thing - procedural generation in Ocean Keeper only applies to the caves. The surface map stays the same.

For us replayability isn’t just about random levels. It’s about how each run feels. So we focused on balancing action with a more meditative flow. The game splits into two main rhythms - blasting fish with big guns and then mining peacefully. That contrast is super important to the vibe we wanted to achieve.

The caves are few, but important, and we didn’t want them to get stale. So procedural generation made perfect sense there. It keeps things fresh. You never know exactly what layout or surprises you’ll get which helps a lot with keeping each run interesting.

Replayability also comes from the upgrade system. The map may be small but every run gives you different weapons, different paths to power and different combinations. That completely changes how the gameplay feels.

We also sprinkled in some puzzles and little narrative beats that act like twists during the digging phase.

And we kind of “cheated” a bit, because our studio has years of experience in level and system design from outsourcing projects. So we took that know-how and put it straight into our own game.

Were there any features that had to be cut or postponed because of time or resource constraints? If so, are they still on the roadmap? And any sneak peeks at what they might be?

There are plenty of examples. When you start a project you’re full of ideas and ambition and then reality hits, at some point you gotta actually put it all together into one working game. And, unless you want to spend the next ten years in dev hell, some things just have to go.

We originally planned more weapon types and chip mods for them. There were ideas for adding variety to the Digger’s tools, more destruction on the surface, more interactivity in the world.

Narrative was also something we had to delay, for almost a year the game had zero story. We only added it right before release.

At one point we were even planning to have different biomes inside the caves but that turned out to be way too much for the timeline.

Still we managed to sneak in a lot of those ideas just in a simpler more “budget-friendly” way. And that honestly helped both the game and our team grow. It forced us to test systems faster and be more creative with what we had. Some of that stuff is still on the wishlist though. So who knows, maybe in an update.

Looking back now, what was the hardest system or mechanic to get right, and what finally made it click?

The hardest part wasn’t a single mechanic, it was getting all of them to work together as one system. Each individual feature was challenging in its own way, sure, but the real headache was syncing it all up so nothing broke the game.

You’ve got combat, mining, upgrades, puzzles, the mech systems, enemies events — and they all need to feel like one game, not just a pile of features.

What finally made it work? Just persistence really.


Platform Support/Launch:

Ocean Keeper didn’t just launch on Steam; there was Steam Deck support out of the gate, a mobile release not long after, and a full PlayStation 5 version too. That’s a huge feat for an indie team.

How did you decide which platforms to prioritize, and what did your release timeline look like behind the scenes?

Right now Ocean Keeper is available pretty much everywhere: Steam, Steam Deck, PlayStation, Xbox, Nintendo Switch, Android, iOS, even Linux and macOS.

From the start we really wanted the game to be accessible on all major platforms. That was both a big goal and a challenge for us. Kind of like expanding our territory of possibilities if you will.

We paid special attention to portable consoles and especially mobile gaming. We already had experience with our mobile games like Last Pirate (10M+ downloads), Zombie Run (1M+ downloads), and more. So bringing a full-scale game to mobile felt like a top priority.

The release pipeline went roughly like this: mobile platforms first, then PlayStation, followed by Xbox and finally Nintendo Switch. Of course, real-world workflow isn’t always that linear, console porting comes with its own quirks, certification steps, build approvals. Sometimes you’re juggling multiple platforms at once just to keep things moving. But that’s the norm in multi-platform development.

This kind of strategic and time management played a major role in helping us bring Ocean Keeper to major consoles in under six months!

Steam Deck support was available right from launch (which is lovely to see), was that a focus early in development, or something that came together late in the process?

It was kind of part accident, part intention. Making a build for Steam Deck isn’t too complicated. You can actually submit your regular PC version and Steam will test it and assign a compatibility rating.

Ocean Keeper got the “Playable” status at launch which means it runs fine but still has a few things to polish. We’re still working on improving that and aiming for the full “Verified” badge.

So while we didn’t build the game just for Steam Deck from day one we always had it in mind. We’re big fans of handhelds in general so making sure the game feels good on Deck was important to us.

(writer's note - since this interview, Ocean Keeper has been verified!)

What were some of the biggest challenges with console or mobile development: UI adaptation, optimization, certification, or something else?

Porting to consoles can definitely feel like opening Pandora’s box. It’s a cycle of endless checks, re-checks, optimizations, approvals, rejections, and trying again. But honestly, we feel things went pretty smoothly for us overall. Each platform’s support team was helpful throughout the process, which made a big difference.

The biggest time sink, though, has been mobile development. The sheer variety of devices and system versions makes porting much more complex. We’re aiming to make the game run well on as many phones as possible, which means finding the right balance between visual compression (without losing the game’s look and feel) and adapting gameplay for touch controls.

It’s a multi-layered challenge, but one we’re actively working through, because we want the game to be accessible on every platform possible.

Do you approach performance and controls differently on each platform? And how important is parity across PC and console experiences?

Yeah the porting approach was different for each platform. Everything had to be tweaked: from controls and UI to how we ran playtests.

Adapting performance settings from PC to Xbox and PlayStation was fairly smooth. But Switch and mobile versions were a lot more challenging. On portable platforms the key is to find that sweet spot where you’re not cutting core gameplay just to make things run.

Parity was super important to us. We wanted the experience to feel unified no matter where you play. So sometimes that meant sacrificing a bit of visual fidelity or texture quality or model complexity just to make sure the gameplay stayed consistent.

Another thing we kept in mind was game size. Especially for mobile. We didn’t want players waiting forever just to download the game. So we did a lot of optimization there to keep it light without losing the feel of the full experience.


Community Feedback & Post-Launch:

What was the most common player feedback post-launch?

Aside from the usual bug reports, gameplay feedback, and requests to tweak the balance a little (yes, we admit the game can make you sweat a bit xD), we’ve also received some incredibly heartwarming messages.

One of our favorite stories comes from a father and son who both play Ocean Keeper on Nintendo Switch and are huge fans of the game. They’ve been actively following development, regularly sending feedback, reporting bugs, and cheering us on. The father often shares how much his son loves the game and keeps asking how things are going on our side. Every time we hear from them, the whole team sends a big hello back to his son, it’s become a bit of a tradition now! ^^

It's moments like these that remind us why we make games.

How has the game changed since release based on community input?

Feedback is a core part of Ocean Keeper from the very beginning. Ever since we launched the beta and brought in our first wave of external testers the conversations never stopped. Our Discord has been buzzing daily with ideas, bug reports and suggestions.

At one point our CEO literally asked the team to make a top list of player-submitted bugs and feature requests and many of those ended up in the game. That kind of direct connection with the community shaped a lot of what Ocean Keeper became.

(credits to the Beta-Testers in the game's credits)

We’re super grateful to everyone who’s contributed. That’s why the most active beta testers are credited in the game. And when we hit our Early Access launch we even invited some of them to our office to celebrate with the team.

Do you find it hard to balance your own creative vision with community suggestions?

It all comes down to critical thinking really. If a community idea is great and it fits the game - we’ll find a way to make it happen.

Of course not everything can go in. We’ve got deadlines and a limited team size so we have to be selective. Sometimes we have to say no not because the idea’s bad but because the timing or scope just doesn’t line up.

Could you share an update or feature that exists only because of player feedback?

Honestly a huge part of how the game looks and feels now is thanks to player feedback.

The underwater vibe especially got a major upgrade after the beta. Players kept saying the game didn’t feel “underwater” enough and they were right. So we added reflections, water caustics, floating corpses of defeated enemies, subtle fog, particles. All those little touches came straight from community suggestions.

A lot of small ideas from players ended up becoming core parts of the atmosphere.

Are there new biomes, enemies, or mechanics you’re excited to add?

Since the 1.0 release on PC we’ve already dropped update 1.0.3 with a bunch of new upgrades, rebalancing, and optimization tweaks.

Right now we’re working on getting that same update rolled out to all consoles.

We’re definitely continuing to support the project and we know it still has room to grow. There are plenty of things we’re excited to explore next, but we’ll let the updates speak for themselves when the time comes.


Finally:

What games have you been playing lately - indie or otherwise?

Everyone on our team has different tastes when it comes to games. Personally, lately I really enjoy spending time playing with friends, and recently we’ve been playing a lot of DayZ and PEAK (we just love WALKING in games :D).

As for indie games, one that really caught my attention since launch, both for its storytelling and its incredibly unique visual style - is ENA: Dream BBQ. The game touched me deeply with its originality and the way it creates such a vivid interaction with the player.

*Do any of you feel the ‘burn out’ from developing your own game? Most developers I chat to end up having such little time to play games yourself, or even much desire to, when the day-to-day is spent maintaining your own project. Is that the case here, too?

As a company based in Kyiv, Ukraine, I can say that dealing with burnout is something we have to manage very carefully. Especially when our country is at war. Day after day, with air raid sirens, sad news, and explosions, it deeply affects both the company as a whole and each person individually. Everyone worries about themselves and their loved ones.

In these circumstances, you start seeing life and your free time in a completely different way. It makes you realize it’s better to do something now because you never know what might happen next. This applies to everything: from spending time with loved ones to even finding the desire to play a new game.

So yes, burnout is a challenge, but it also brings a new perspective and determination to make the most of every moment. And the support within our team helps us keep going.

If you weren’t working on Ocean Keeper right now, what kind of game do you think you’d be making instead? And, what would you love to make next?

We’re definitely not done with Ocean Keeper just yet, but that doesn’t mean we’re not working on new things too! Here’s a little exclusive: right now we’re actively preparing the beta launch of a co-op version of Ocean Keeper, which we plan to release in late summer or early fall.

Funny enough, we already had the idea for co-op back when we were working on version 1.0 and now it’s finally becoming its own standalone project! We're aiming for an even better launch this time, learning from our stumbles and building on everything we learned from the original game.

We’ll be sharing more details on our social media soon, especially in our Discord, where we’ll likely be recruiting beta testers from the community. So stay tuned! :3

Where can the community find you, if they want to know more, or join in?

Whether you want to follow updates, join the conversation, or just hang out: we’d love to see you around:

And of course, the Steam page!


A big thank you to Diana and the entire RetroStyle Games team for taking the time to share such thoughtful and detailed answers. It’s clear how much passion and care went into creating Ocean Keeper: Dome Survival, and that dedication truly shines through in the game itself. I’ve really enjoyed diving into its world and can’t wait to see how the game (and the team behind it) continue to grow.

I’ve always been a fan of 80s and 90s underwater movies like Sphere, The Abyss, Leviathan, and Deep Star Six. As an avid SCUBA diver, I’m constantly on the lookout for more deep ocean video games to explore. Ocean Keeper was an impulse buy in its early days, and I’m so glad I took the plunge. Maybe you’ll enjoy it too!

262
submitted 1 week ago* (last edited 1 week ago) by PerfectDark@lemmy.world to c/games@lemmy.world

I recently had the good fortune to interview the two developers of CrankBoy - an emulator for the Playdate console which allows users to play original Game Boy games on there (and yes, you can use that crank to play them!)

I've always found the Playdate to be a super interesting console, it doesn't compete on any level with the typical handhelds...it doesn't even have a backlight. But it makes up for that in how utterly fresh and unique it is. Creativity is the focus for it, and the games devs themselves all seem to have true passion for their creations.

After seeing some social media posts about CrankBoy get shared about, I reached out to the devs, asking if they'd let me interview them to write up a feature article on their project, and they were so kind to say yes. If you've got any interest in emulation, dev work, or the crazy cute yellow handheld, then you might enjoy this one I wrote.

Here is the link to the article, please let me know what you think!

62

I've been lucky in my incessant poking at the developers of all kinds of gaming projects, programs and sites recently.

I'm sure by now you'll know that I've done this with plenty of devs: from Heroic and Lutris, to RomM and RetroDECK. With plenty others as well. My aim is to chat to the people who create the things you all know and love, and might use yourselves. I feel that it can be rare to hear from those devs. Rare that they get any of the spotlight, so my series of these interviews is my attempt to change that!

This time I've befriended and chatted to the dev who runs the site called EmuReady, which is a site dedicated to compatibility reports - what emulators, devices and settings work best for emulated games.

The developer, Producevity, was kind enough to agree, and I'll share the full little Q&A I did with him here, in its entirety and without me picking and choosing quotes from him.

However, if you're more interested in an article format, I wrote one up and shared it on Gardiner Bryant's site (which you can find here with this link! - he's been kind enough to let me submit lots of articles and interviews on his site, and posts them there)


THE BEGINNING:


Can you tell me about how the idea for EmuReady first came to you? What pushed you from "this should exist" to actually building it?

This might sound weird, but I have never been into gaming, this changed about a year or 2 ago when I tried the game Elden Ring. Maybe not the best game to start with, but it really showed me the art of games and storytelling. After discovering the world of gaming, I felt like I had missed out on so much, especially the games from my childhood that somehow never interested me back then.

Natually, I started looking into retro gaming and emulation. A lot of emulators not being as mature and stable, the compatibility Google Sheets were a decent solution the community came up with to share this information.

That said, Google sheets suck for information like this, allow me to list a few.

  • They are not easily searchable
  • Everyone and their dog has their own version of a sheet, for every emulator, every device, every configuration, etc.
  • The same people (and their dog) are constantly updating these sheets. Having no archive meant that usefull information would get lost.
  • There is no room for discussion and most importantly, no room for verification of the information.

So I started building EmuReady, being pretty new to this community I asked around and received a lot of useful feedback. In particular, Ryan Retro's community and Ryan himself has been very helpful.

Was it something you made for yourself at first, or did you always imagine it as a public tool? And are you still running it solo...or have others joined you behind the scenes now?

I never intended to use it myself, which may sound weird, but I personally enjoy the tinkering process and it may even be more fun than playing the games themselves. But since Reddit is filled with people asking for help regarding emulation, it's clear that not everyone enjoys the tinkering process and just want to enjoy their games. I like making things, and emulation quickly turned into a passion. So I might not be the target audience, but I do understand the target audience and this was my way of giving back to the community.

Currently, the development side is mostly done by me, there has been a couple PR's from the community, which is a way developers can contribute code to the project.

However, there is a lot of moderation work that needs to be done, and I am very grateful for the help I get from the community in this regard. A user by the name of Drackool has been a great help in moderating the site, since every single report needs to be verified by a human before it can be added to the site to ensure the quality of the information.

Then of course, there is the community itself. Once a report is approved, it's up to the community to verify the information. EmuReady has a voting/verification system in place, where users can vote on the accuracy of the information. If a report gets enough votes, of gets verified by one of the developers of the emulator the report is for, it will be marked as verified and show up higher in the search results.

The community contributions seem to be growing fast lately, with more reports coming in every day. That must be exciting to watch those numbers grow!

Yes, it absolutely is! I did not expect the site to grow this fast, it almost started to stress me out since this hobby project started to cost me 50-60 euros a month in server costs. It's very exciting to see that we get 10k to 20k unique visitors a day, and as long as I can afford it, I will keep the site running and improving it.


COMMUNITY:


Have there been any standout moments or bits of feedback in your short site-life so far that stuck with you?

Yes, there have been a few, but one in particular. A user on Reddit suggested something like a "trust system".

This is probably the most complex part of EmuReady and I won't go into too much detail here, but there are essentially a lot of systems in place that work together to ensure the quality of the information on the site. Voting is a big part of this, but also the amount of contributions, and what information a user has contributed.

A benefit of this sytem is that it slowly allows EmuReady to become self-sustaining, since the more trusted a user is, the more permissions they gain. Being able to edit reports for typos, and having their reports automatically verified, are just 2 examples of this.

Do you feel like the people using EmuReady “get” the vision you had when building it, or has the community helped shape that vision in unexpected ways?

There are a lot of people that do, and use it exactly as I intended it to be used. There are also users who fail to see the benefit of this over the 7392468 different Google Sheets that are out there.

A lot of these users changed there mind, but EmuReady is an alternative, and in my opinion, a better alternative to Google Sheets. People can just use what they prefer, and I am happy that EmuReady is an option for them.

By all means, for anyone unaware on what EmuReady is, tell them how they can help!

EmuReady is a community-driven platform that allows people to find, share, vote/verify and discuss game compatibility for their specific device and emulator. If you are a developer, the project is Open Source and the community is doing a great job of submitting GitHub issues, so if you see something that you think you can implement or fix, you are more than welcome to do so!

As for other people, simply using the platform helps a lot, but the most valuable thing you can do is vote/verify reports to let other know if the information is accurate or not. If you find a report that is incorrect, you can downvote it and if a report matches your experience you can upvote it. This way EmuReady can prioritize the most accurate reports and show them higher in the search results.


THE FUTURE:


I noticed you recently added support for PC games, which seems like a nice move, to really be an all-in-one site.

That's a funny story, haha. I was personally arguing against this, but the community was very vocal about it. I was worried that it wouldn't provide enough value because of the sheer amount of different PC configurations, it just isn't as reliable as a report for a specific device with the exact same hardware.

That said, I don't see EmuReady as my platform anymore, it's a community platform and with the amount of people asking for it, I decided to give it a try. Unfortuately, about 2% of all the searches and submitted reports are for PC, the other 98% is still for handheld devices, which still contain PC handhelds like the Steam Deck, GPD Win, ROG Ally, etc.

Maybe it needs a bit more time to grow, but I am happy that we have it now and I am sure it will be useful for some people.

What are your current goals for the site? And what are the wild, dream features you’d love to build one day?

The site is mostly feature complete, but as with any project, done doesn't really mean done. I recently added a lot more quality of life features and some neccessary features to present EmuReady as a more mature platform. For example, it's very likely that there are also a lot of users that are minors, so I added a way to report inappropriate content and a NSFW filter to hide NSFW content. So only users that opt-in to see these games will see them, and the rest will be hidden by default.

Could you see something like an Android app, emulator integrations, or even personal game libraries happening? Basically, what does your “perfect future version” of EmuReady look like?

Absolutly! And this is the part I am most excited about. The Android app is already in the works and I have been closely working with the developers of "Eden" (Switch Emulator) and Winlator (x86_64/windows emulation on Android) to make an integration with EmuReady. This will allow users to find a compatibility report and with a single click, open the game in the emulator with the correct settings applied. This is a feature that I am very excited about and I think it will be a game changer for a lot of users. The goal is essentially to make emulation as easy and accessible as possible, so that anyone can enjoy their favorite games without having to worry about the technical details.

This will require a lot of work, and it is work that needs to be done on a per-emulator basis. I am currenlty making the implementation for Eden and Winlator, but I am also open to working with other emulator developers to make this a reality for their emulators as well.


YOU:


Tell us all about you! Is this your first project like this?

It's not my first project, I have been a software developer for about 15 years now and I love to build things.

This is however my first project relaled to gaming and emulation, and I am very happy that it has been so well received by the community.

(I HAVE to ask this one) – give us your fav games, maybe a top 5 or 10 retro game list?

Well, I don't have a huge library since I only started gaming about 2 years ago, but I can give you a list of games that I have enjoyed so far:

  1. Elden Ring
  2. Portal 1 & 2
  3. Subnautica
  4. Hollow Knight
  5. Undertale
  6. Cyberpunk 2077

As for retro (or older) games:

  1. The Legend of Zelda: The Minish Cap (GBA)
  2. GTA: San Andreas (PS2)
  3. Soul Reaver: Legacy of Kain (PS1)
  4. Gravity Rush (PS Vita)
  5. Hotline Miami (PS Vita)
  6. Super Mario Bros. 3 (NES)
  7. Super Mario 65 (N64)

Are you an avid handheld SBC collector, like some are?

This feels like a self report, since I just mentioned that I only started gaming about 2 years ago. Don't tell my wife but I have a few handhelds, I currently own:

  • Anbernic RG35XX-SP
  • Anbernic RG35XX-H
  • Anbernic RG40XX-H
  • R63A
  • Sony PlayStation Portable
  • Sony PlayStation Vita
  • Retroid Pocket 5
  • Steam Deck OLED

And one final thing of note, which he told me in chat after the questions and answers were sent back and forth:

Something I should have mentioned: all money donated goes to server costs, everything above that gets donated to other emulator developers and people in the community like TheGamesDB


If you'd like to see more of EmuReady, and what it is and does:


I know this one's rather short, but again, I'm sharing this to get the full answers from my questions when chatting to Producevity. If you're a gamer who loves SBC handhelds, then you might have some experience with what settings worked best on which devices. I know EmuReady would love you to contribute your findings to the site.

I do have more articles/interviews coming with other developers in the coming week or two, as well. So, I'll share here as they happen (if you'd like)

...and I'm curious, anyone use, or submitted info on here to EmuReady?

If you want to follow along with my gaming words, you can find me on Mastodon, too:

28
submitted 1 month ago* (last edited 1 month ago) by PerfectDark@lemmy.world to c/steamdeck@sopuli.xyz

I'm sure you'll know by now that some time ago I did a full interview-ish effort with the dev team behind RomM. RomM - three our of five of the team gave me answers on their history of the project, emulation as a whole, self-hosting, ROMs and building what they did.

That RomM Project is an open-source, self-hosted application that's designed to organize and give you a nice, clean and pretty way to view and play your retro video game collections. Its got a clean, responsive web interface that allows users to scan their ROM libraries, then grabs the metadata from sources like IGDB, MobyGames, and Screenscraper, and playing games directly in your browser via built-in EmulatorJS support.

It supports over 400 gaming platforms (seriously), accommodates various naming conventions, multi-disk games, and custom tags. It even integrates with tools like Playnite and muOS, and upcoming features include device syncing for games, saves, and emulator settings.

I reached out to the team again about their new release for RomM - RomM 4.0.0, which also included at the same time a full Android app made by a community member. They agreed to share their thoughts and experiences putting it together with me, and while 24 or so hours ago I shared a full 'article' I wrote on this, based on these answers they gave me, I'm sharing their full answers here on Lemmy with you.


I write these little interviews, Q&As and articles with devs from all kinds of gaming, Linux and Steam Deck projects and programs. Its fun for me, and I love to help people get a peek behind the curtain, and get to know who is behind these bits of software they might know and love.

I've previous shared interviews on Lemmy with:

Do be warned, this is a little rough, since I intended to cherry-pick the quotes for an article, there might be some general statements from one dev, then some direct answers to direct questions from another.

Regardless, I do hope you enjoy this!



With danblu3:

About the Android App:

Our main goal is to have RomM reachable from any platform, we want to be the centre piece of your retro library and an android app has always been an idea in the devs head. That said, the Android app is not something we claim (fully) an amazing user by the discord name of "MattSays" actually made the application and just dropped it into our discord one day without warning, we did have a very basic and functional version from a user called "samnwella" which did do the job, but it was clunky and I know they won't mind me saying this. MattSays dropped it and the UI was there, the functions was there, everything. It was gorgeous even from a 1.0 release. Community reaction has been positive, bugs have been raised and already squashed, and in relation to the RomM team both Zurdi and Arcane have reached out to MattSays for further discussion, it's currently being branded as the official Android connector app for RomM and as for team status for MattSays, that is up in the air. The future? It's definitely bright for the Android app, the dev is very keen and even wants to get save syncing up and running. Imagine this flow: Going into ES-DE and with the recent Android app launch update you open the RomM android app, using your controller you scroll to a game you fancy playing, press A and that's it, downloaded, you exit the app, back to es-de, scrape the game and play. No removed SD cards, no plugging into your PC, no dealing with SMB users or NFS perms, just, done. Dusted. The future is very bright for this app.

About the new 4.0.0 release:

Right. So. 4.0 4.0 from many different point of views is huge, from preservation enthusiasts, from retro nerds, from the people who just want a retro fix and the completionists, 4.0 is HUGE. Before I go on to say what 4.0 is let me explain about hash matching, I'll make this very simple and it's possible I might get something a little bit wrong here or there but the theory is correct. A hash is like a signature, and each ROM (file) has a unique signature, some people way back when began groups to dump these games in the name of preservation and put all this together into a library called .dats, these .dats files store a unique signature and this unique signature will match to a game name, it's development date, if it was ever released to retail etc etc. Two of the biggest names of these groups is NoIntro and Redump, they both specialise in different media formats but with them combined they built a "digital bible" of what game is what signature, with 4.0 we finally introduce hash matching with the help of two incredibly skilled developers. Why is hash matching better, why am I so excited?

  • It's faster, much much faster. Right now when a ROM is scanned into RomM it breaks apart the file name, removes the (tags) and then sends an API call to the metadata agent of your choice with the name, even though we began to get a high success rate it relied HEAVILY on your files being named correctly.

With hash matching, ROM reads the unique signature of the file and is told near instantly what the game is and what data is needed to be scraped, without wasting time doing a fuzzy match.

  • It's more accurate

The fact we can now match on hash means that you could have a game named "TLOZ: AltP.zip" which is a snes game from way back when and you named it like for ease of use, you load it into RomM and are confused why it doesn't match, you know it's the legend of zelda! But RomM does not, because of the weird name you chose, like come on? It's one of the best games, give it the full name! Anyway, with hash matching it'll look inside and see the game file, extract and work out the signature and instantly match it against the matching signature online, pulling all metadata and information it needs, without you needing to rename your whole collection.

  • It's prettier - Now we have confidence in what your matching, we've made SteamgridDB a metadata agent, it was before but we left it to user decision. Now that we are confident in the matching we can pull gorgeous artwork for the matched games directly from SteamgridDB, and we still give user the choice if they want to change it.

Now that is out the way, I want to give a huge shout out to Yukine for making Playmatch and FlibbleHexEyes for making Hasheous both these technologies have been implemented in RomM and honestly they are flawless. Yukine has been a regular around discord and I'm pretty sure he began working on hash matching pretty damn quickly just for his own benefit, he then released a small tool which caught the eye of the RomM team, a few conversations later and here we are with it as a service. It's essentially a 2 in 1 service where it does the hash matching through a lighting quick database and then proxies that over to IGDB to pull the relevant metadata from their servers, all in record time compared to our API to IGDB route. Then onto FlibbleHexEyes, people who are around the self hosting scene might recognise the names, and yes he is the lead dev and creator of Gaseous, I would say a competitor but not really only because of how well we get on with him, the self hosted space is large and there is enough room for all of us, no point sniffling creativity! It's another hash matching service (we go from 0 to 2!) and it's similar in the vein of playmatch, just on its own location and maintained directly by Flibble.

Without these two amazing devs 4.0 would not be as huge as it is now. We have more news as well! In 4.0 we introduced launchbox support, this is essentially an offline database that is downloaded every day and used for matching. It does not do hash matching but it does fair better with ROM hacks on testing, it's also very good for people who want to control exactly what is coming in and out of their server as it does not need an API key and the queries are ran locally (until we go to LB to collect the art) Something that might have been missed is that we also support retro achievements! This is purely display purposes but if you have a matching hash, 9.9/10 you have a matching retro achievement and it will update your status on how your doing when it resyncs, it's a nice little QoL feature and we even show the difference between hardcore and soft core achievements. Want to help contribute? Well now it's now easier then ever with an official devcontainers RomM container, which will be explained further in the release notes but the environment is contained in the container, just pull it and start developing, no setting up extra libraries and so forth. 4.0 is huge for RomM. It's deserving of the major number and this has lit a fire under the dev team, I'm sure there will be a small hiatus between updates to let them recover but as we always keep saying. We're just getting started.



With Yukine (community member and contributor:

What changes are you making?

The main changes for RomM 4.0 besides adding new Metadata sources (like LaunchBox) is the integration of Playmatch and Hasheous I've created the Pull Request to add Playmatch Support into RomM and arcane added Hasheous support a little bit later Playmatch (and Hasheous too) is a Microservice which does Hash based matching for Roms, it incoperates DAT files from Groups such as No-Intro and Redump and keeps a database of those Roms with a mapping to external Gaming Databases such as IGDB, right now only IGDB is support but i plan to add other Gaming Databases such as Screenscraper, MobyGames, Launchbox, SteamGridDB and more

How was your experience, making these changes with RomM?

The Pull Request to RomM wasn't really all that hard, even me who doesn't usually do or write python was able to integrate it quite easily into RomM that said there was work the RomM Team did before my change was merged to ensure that the logic runs in the correct order What i mean by that is that in RomM 3.10.x it used to be so that the resolution step of Metadata was running before the calcuation of hashes When you integrate services which require you to send the hashes of files for the metadata provider resolution you usually want these hashes calculated which before wasn't possible because Matching of Metadata Provider was running before the hash calculation step After arcaneasada changed that and did some other side work the Playmatch PR was quite fast ready to be merged, i think it took less than 2 weeks to get it merged into RomM

How long has this release been 'in the works' for?

As i said above the PR itself was only ~2 weeks of work but Playmatch itself was quite a lot more work I've started Playmatch back in June 2024 (over a year ago already ) as a side Project of mine, at the time RomM was quite a bit more immature especially the Metadata Matching part, i personally have quite a big Rom collection and when only ~40% of all games got a match on IGDB i was quite annoyed because i didn't want to go through my whole collection and manually match all the unidentified games to get the nice looking metadata for them Out of annoyance i thought how i would fix that, thinking about other Projects who also use Metadata Providers i checked out how they solved it and then i also found Hasheous at the time which basically was @FlibblesHexEyes Solution to the issue. After checking it out i decided that while i know C# and i think he did a good Job i wasn't quite sure if i would've solved it this way and the database structure of it wasn't quite speaking to me (when i thought about performance and how many req/s it would likely get) so i decided that i could probably write a small microservice myself and i oriented myself at Hasheous but also at Skyhook which is a Metadata API Sonarr uses and how they solved a lot of issues with that

What can the users, both existing and new, expect from this 4.0.0 release?

Generally speaking 4.0 with Playmatch and Hasheous enabled should improve Automatic Metadata matchinig a lot. When users enable them they will be queried for each rom and if either has a metadata match in there database it will be used This makes RomM a lot less reliant on Rom Names and exact naming matches and basically kills the naming requirement completely assuming the Rom Hash is in either Playmatch and Hasheous (usually if your ROM matches the No-Intro or Redump DAT thats the case) and has a Provider match in either. Playmatch does by default automatically try to match ROMs it gets from the dat files to IGDB but sometimes that also fails when for example the ROM name is localized and on IGDB there is no Alias for that name. Playmatch also allows users to "suggest" manual mappings for No-Intro/Redump roms, if a rom was not automatically mapped due to naming issues i described before users can now use a Discord Bot to suggest a mapping to be added to Playmatch, after an Admin (currently thats me) reviews it and approves it it'll be added to playmatch and RomM can make use of it This Discord Bot is also added to the RomM Server so that users can do the suggestion there if they like to, this also helps out the whole community (so when the next person then checks playmatch for the same hash it already has a mapping!) which is generally the ideal state that the community can "maintain" a mapping database themself

Any significant difficulties? Anything you're particularly proud of with this release?

There were a lot of difficulties to be fair but thats normal Playmatch is written in Rust which is a Memory Safe Language and a very fast and performant language too. When i initially thought about how i would create Playmatch i had a few key aspects in Mind.

It needs to be fast and handle a lot of http req/s when a lot of RomM users run library scans

It should keep a low memory usage so i can run on a small VPSIt should have a good Database ORM because i dislike writing raw SQL queries in code generally My choices were between Rust, Golang and C# but i decided for Rust because the HTTP Server Actix im using has decently fast benchmarks, the language can run a http api on only a few MB ram and also the Database Driver im using (SeaORM) is great and very fast for database queries Playmatch does a lot of things automatically by now, it can automatically download & import dats and after import also automatically try to match unmatched games to IGDB for example the matching logic is also decently smart, the datting group No-Intro for example has a cloneof id relationship set in there dat file, basically if a game like Pokemon Emerald has multiple versions (different regions, Demos, Betas etc) they write it down in the dat file with an id and a clone of id field, Playmatch can make usage of that and use it for matching, if any game gets matched playmatch automatically matches the games parents and of the parent other child games as well so that if i manually match lets say No-Intros German Pokemon Platin ROM playmatch will check the database and see that other roms (Like the Italy Pokemon Platin Rom) is a clone of the same parent (The Europe or USA Pokemon Platin Rom usually) and then apply the same mapping to it as well For automatically matches this is a great benefit, like if one of the different region name is either the Direct Name or an Alias of the Game on IGDB then we can match all versions of a game This fixes the issue for localized rom naming a lot as well, if you use any Rom Manager or tool which renames your ROMs to match names from No-Intro/Redump dats this will now not make the Identify step of RomM fail because the name is localized and not like that on IGDB and also if one region gets matched now all region gets matched! this makes it less annoying to manually match as well when instead of 20 matches for all different versions (Regions, Beta, different Revisions) of Pokemon Platin you just match any of it and Playmatch does the other one fully automatically Another big issue generally is compression, RomM does not enforce any format when accepting ROM files for Platforms, users usually want to compress there roms if possible to save space zipping Roms is one way but usually the compression rate is not that good especially for newer consoles with for example encryption (which decreases compression rate by a ton) so most Homebrew Communities have developed own formats to compress ROMs a few examples are Wii / Gamecube raw format is .iso and the a common compression format is .rvz which is supported by Dolpin Emulator Wii U Raw format is .ISO but the common compression format is .wux A lot of Disc based system Emulators support .chd files which is a format the MAME team developed with a very good compression rate DAT groups such as No-Intro and Redump usually only create dat files for "RAW" or original formats so if you want to compress your roms it will not be matching to Playmatch anymore as Playmatch only holds rom data which is from a DAT group Luckly the Community already has made DAT files for a few of those formats but depending on the format and compression used these formats might have some randomness depending on what compression level and settings are used Playmatch currently has community dats for .rvz, .wux and decrypted PS3 Games



With FlibblesHexEyes - community member and contributor:

Hey! So, just to clarify I'm not part of the Romm team, though I do work closely with them.

I work on Hasheous (https://hasheous.org/), which provides hash based ROM matching to metadata providers as well as metadata proxying.

Hasheous came about from my other project called Gaseous Server (which is similar to Romm - started about the same time) where I noticed a major point of friction for users was matching their ROM files to metadata providers such as IGDB.

This led me to begin the Hasheous project where a user adding a ROM to their ROM Manager of choice (Hasheous was always designed to be client agnostic and not favour one client over another).

The idea here is that when adding a ROM, instead of the user having to manually say that file is "Choplifter", the client (Romm or Gaseous), would reach out to Hasheous and say "do you know what this file with this SHA1 hash is?" and Hasheous would respond with information about the ROM and where the client could find metadata such as summaries, and cover art.

Which led to solving a further point of friction for users which is that many metadata providers require an API key - and an often convoluted method to generate them - which led to Hasheous having the ability to proxy some metadata providers.

This allows users of Romm (and others) to have a completely friction free experience when adding ROMs to their libraries. It's this part that I'm particularly proud of.

It's taken me about a year to get Hasheous to where it is today. By far the biggest issue is that of data integrity. Hasheous relies on DAT providers (such as TOSEC and NoIntro) who all name games slightly differently. The same is also true of the metadata providers. Examples include that a DAT might name a game with a dash, which the metadata provider might use a colon. Individually these are reasonably easy to match, but at scale it gets a lot harder. So building out a community contribution method (to fix bad matches) that is abuse resistant was also a challenge.



With MattSays - community member and developer responsible for the Android app:

Yeah sure! You may want to know why I decided to make this app. I recently got into retrogaming handhelds and in particular Android retro handhelds, and I also discovered the existence of RomM. However, to my surprise there wasn't an app that could easily handle all of my rom collection without having to go to my browser and manually do all the steps required to just play my desired games. So I developed a client that could improve the usability of RomM on Android without too much hassle and shared all of this with the charming community that instantly tested it and gave me precious feedback.


And that's that!

Well, like I said, perhaps a little rougher than my regular efforts at these, but the contents in the answers really did deserve to be read through, but anyone interested. I love how passionate about gaming, self-hosting and emulation the team (and contributors) are in RomM. It makes me smile to see!

You can find more on The RomM Project with these links:

And don't forget, if you like this kind of gaming nonsense I share, you can find me on Mastodon, where I tend to post every day:

43
submitted 1 month ago* (last edited 1 month ago) by PerfectDark@lemmy.world to c/games@lemmy.world

I'm sure you'll know by now that some time ago I did a full interview-ish effort with the dev team behind RomM. RomM - three our of five of the team gave me answers on their history of the project, emulation as a whole, self-hosting, ROMs and building what they did.

That RomM Project is an open-source, self-hosted application that's designed to organize and give you a nice, clean and pretty way to view and play your retro video game collections. Its got a clean, responsive web interface that allows users to scan their ROM libraries, then grabs the metadata from sources like IGDB, MobyGames, and Screenscraper, and playing games directly in your browser via built-in EmulatorJS support.

It supports over 400 gaming platforms (seriously), accommodates various naming conventions, multi-disk games, and custom tags. It even integrates with tools like Playnite and muOS, and upcoming features include device syncing for games, saves, and emulator settings.

I reached out to the team again about their new release for RomM - RomM 4.0.0, which also included at the same time a full Android app made by a community member. They agreed to share their thoughts and experiences putting it together with me, and while 24 or so hours ago I shared a full 'article' I wrote on this, based on these answers they gave me, I'm sharing their full answers here on Lemmy with you.


I write these little interviews, Q&As and articles with devs from all kinds of gaming, Linux and Steam Deck projects and programs. Its fun for me, and I love to help people get a peek behind the curtain, and get to know who is behind these bits of software they might know and love.

I've previous shared interviews on Lemmy with:


Do be warned, this is a little rough, since I intended to cherry-pick the quotes for an article, there are some general statements from one dev, then some direct answers to direct questions from another.

Regardless, I do hope you enjoy this!



With danblu3:

About the Android App:

Our main goal is to have RomM reachable from any platform, we want to be the centre piece of your retro library and an android app has always been an idea in the devs head. That said, the Android app is not something we claim (fully) an amazing user by the discord name of "MattSays" actually made the application and just dropped it into our discord one day without warning, we did have a very basic and functional version from a user called "samnwella" which did do the job, but it was clunky and I know they won't mind me saying this. MattSays dropped it and the UI was there, the functions was there, everything. It was gorgeous even from a 1.0 release. Community reaction has been positive, bugs have been raised and already squashed, and in relation to the RomM team both Zurdi and Arcane have reached out to MattSays for further discussion, it's currently being branded as the official Android connector app for RomM and as for team status for MattSays, that is up in the air. The future? It's definitely bright for the Android app, the dev is very keen and even wants to get save syncing up and running. Imagine this flow: Going into ES-DE and with the recent Android app launch update you open the RomM android app, using your controller you scroll to a game you fancy playing, press A and that's it, downloaded, you exit the app, back to es-de, scrape the game and play. No removed SD cards, no plugging into your PC, no dealing with SMB users or NFS perms, just, done. Dusted. The future is very bright for this app.

About the new 4.0.0 release:

Right. So. 4.0 4.0 from many different point of views is huge, from preservation enthusiasts, from retro nerds, from the people who just want a retro fix and the completionists, 4.0 is HUGE. Before I go on to say what 4.0 is let me explain about hash matching, I'll make this very simple and it's possible I might get something a little bit wrong here or there but the theory is correct. A hash is like a signature, and each ROM (file) has a unique signature, some people way back when began groups to dump these games in the name of preservation and put all this together into a library called .dats, these .dats files store a unique signature and this unique signature will match to a game name, it's development date, if it was ever released to retail etc etc. Two of the biggest names of these groups is NoIntro and Redump, they both specialise in different media formats but with them combined they built a "digital bible" of what game is what signature, with 4.0 we finally introduce hash matching with the help of two incredibly skilled developers. Why is hash matching better, why am I so excited?

  • It's faster, much much faster. Right now when a ROM is scanned into RomM it breaks apart the file name, removes the (tags) and then sends an API call to the metadata agent of your choice with the name, even though we began to get a high success rate it relied HEAVILY on your files being named correctly.

With hash matching, ROM reads the unique signature of the file and is told near instantly what the game is and what data is needed to be scraped, without wasting time doing a fuzzy match.

  • It's more accurate

The fact we can now match on hash means that you could have a game named "TLOZ: AltP.zip" which is a snes game from way back when and you named it like for ease of use, you load it into RomM and are confused why it doesn't match, you know it's the legend of zelda! But RomM does not, because of the weird name you chose, like come on? It's one of the best games, give it the full name! Anyway, with hash matching it'll look inside and see the game file, extract and work out the signature and instantly match it against the matching signature online, pulling all metadata and information it needs, without you needing to rename your whole collection.

  • It's prettier - Now we have confidence in what your matching, we've made SteamgridDB a metadata agent, it was before but we left it to user decision. Now that we are confident in the matching we can pull gorgeous artwork for the matched games directly from SteamgridDB, and we still give user the choice if they want to change it.

Now that is out the way, I want to give a huge shout out to Yukine for making Playmatch and FlibbleHexEyes for making Hasheous both these technologies have been implemented in RomM and honestly they are flawless. Yukine has been a regular around discord and I'm pretty sure he began working on hash matching pretty damn quickly just for his own benefit, he then released a small tool which caught the eye of the RomM team, a few conversations later and here we are with it as a service. It's essentially a 2 in 1 service where it does the hash matching through a lighting quick database and then proxies that over to IGDB to pull the relevant metadata from their servers, all in record time compared to our API to IGDB route. Then onto FlibbleHexEyes, people who are around the self hosting scene might recognise the names, and yes he is the lead dev and creator of Gaseous, I would say a competitor but not really only because of how well we get on with him, the self hosted space is large and there is enough room for all of us, no point sniffling creativity! It's another hash matching service (we go from 0 to 2!) and it's similar in the vein of playmatch, just on its own location and maintained directly by Flibble.

Without these two amazing devs 4.0 would not be as huge as it is now. We have more news as well! In 4.0 we introduced launchbox support, this is essentially an offline database that is downloaded every day and used for matching. It does not do hash matching but it does fair better with ROM hacks on testing, it's also very good for people who want to control exactly what is coming in and out of their server as it does not need an API key and the queries are ran locally (until we go to LB to collect the art) Something that might have been missed is that we also support retro achievements! This is purely display purposes but if you have a matching hash, 9.9/10 you have a matching retro achievement and it will update your status on how your doing when it resyncs, it's a nice little QoL feature and we even show the difference between hardcore and soft core achievements. Want to help contribute? Well now it's now easier then ever with an official devcontainers RomM container, which will be explained further in the release notes but the environment is contained in the container, just pull it and start developing, no setting up extra libraries and so forth. 4.0 is huge for RomM. It's deserving of the major number and this has lit a fire under the dev team, I'm sure there will be a small hiatus between updates to let them recover but as we always keep saying. We're just getting started.



With Yukine (community member and contributor:

What changes are you making?

The main changes for RomM 4.0 besides adding new Metadata sources (like LaunchBox) is the integration of Playmatch and Hasheous I've created the Pull Request to add Playmatch Support into RomM and arcane added Hasheous support a little bit later Playmatch (and Hasheous too) is a Microservice which does Hash based matching for Roms, it incoperates DAT files from Groups such as No-Intro and Redump and keeps a database of those Roms with a mapping to external Gaming Databases such as IGDB, right now only IGDB is support but i plan to add other Gaming Databases such as Screenscraper, MobyGames, Launchbox, SteamGridDB and more

How was your experience, making these changes with RomM?

The Pull Request to RomM wasn't really all that hard, even me who doesn't usually do or write python was able to integrate it quite easily into RomM that said there was work the RomM Team did before my change was merged to ensure that the logic runs in the correct order What i mean by that is that in RomM 3.10.x it used to be so that the resolution step of Metadata was running before the calcuation of hashes When you integrate services which require you to send the hashes of files for the metadata provider resolution you usually want these hashes calculated which before wasn't possible because Matching of Metadata Provider was running before the hash calculation step After arcaneasada changed that and did some other side work the Playmatch PR was quite fast ready to be merged, i think it took less than 2 weeks to get it merged into RomM

How long has this release been 'in the works' for?

As i said above the PR itself was only ~2 weeks of work but Playmatch itself was quite a lot more work I've started Playmatch back in June 2024 (over a year ago already ) as a side Project of mine, at the time RomM was quite a bit more immature especially the Metadata Matching part, i personally have quite a big Rom collection and when only ~40% of all games got a match on IGDB i was quite annoyed because i didn't want to go through my whole collection and manually match all the unidentified games to get the nice looking metadata for them Out of annoyance i thought how i would fix that, thinking about other Projects who also use Metadata Providers i checked out how they solved it and then i also found Hasheous at the time which basically was @FlibblesHexEyes Solution to the issue. After checking it out i decided that while i know C# and i think he did a good Job i wasn't quite sure if i would've solved it this way and the database structure of it wasn't quite speaking to me (when i thought about performance and how many req/s it would likely get) so i decided that i could probably write a small microservice myself and i oriented myself at Hasheous but also at Skyhook which is a Metadata API Sonarr uses and how they solved a lot of issues with that

What can the users, both existing and new, expect from this 4.0.0 release?

Generally speaking 4.0 with Playmatch and Hasheous enabled should improve Automatic Metadata matchinig a lot. When users enable them they will be queried for each rom and if either has a metadata match in there database it will be used This makes RomM a lot less reliant on Rom Names and exact naming matches and basically kills the naming requirement completely assuming the Rom Hash is in either Playmatch and Hasheous (usually if your ROM matches the No-Intro or Redump DAT thats the case) and has a Provider match in either. Playmatch does by default automatically try to match ROMs it gets from the dat files to IGDB but sometimes that also fails when for example the ROM name is localized and on IGDB there is no Alias for that name. Playmatch also allows users to "suggest" manual mappings for No-Intro/Redump roms, if a rom was not automatically mapped due to naming issues i described before users can now use a Discord Bot to suggest a mapping to be added to Playmatch, after an Admin (currently thats me) reviews it and approves it it'll be added to playmatch and RomM can make use of it This Discord Bot is also added to the RomM Server so that users can do the suggestion there if they like to, this also helps out the whole community (so when the next person then checks playmatch for the same hash it already has a mapping!) which is generally the ideal state that the community can "maintain" a mapping database themself

Any significant difficulties? Anything you're particularly proud of with this release?

There were a lot of difficulties to be fair but thats normal Playmatch is written in Rust which is a Memory Safe Language and a very fast and performant language too. When i initially thought about how i would create Playmatch i had a few key aspects in Mind.

It needs to be fast and handle a lot of http req/s when a lot of RomM users run library scans

It should keep a low memory usage so i can run on a small VPSIt should have a good Database ORM because i dislike writing raw SQL queries in code generally My choices were between Rust, Golang and C# but i decided for Rust because the HTTP Server Actix im using has decently fast benchmarks, the language can run a http api on only a few MB ram and also the Database Driver im using (SeaORM) is great and very fast for database queries Playmatch does a lot of things automatically by now, it can automatically download & import dats and after import also automatically try to match unmatched games to IGDB for example the matching logic is also decently smart, the datting group No-Intro for example has a cloneof id relationship set in there dat file, basically if a game like Pokemon Emerald has multiple versions (different regions, Demos, Betas etc) they write it down in the dat file with an id and a clone of id field, Playmatch can make usage of that and use it for matching, if any game gets matched playmatch automatically matches the games parents and of the parent other child games as well so that if i manually match lets say No-Intros German Pokemon Platin ROM playmatch will check the database and see that other roms (Like the Italy Pokemon Platin Rom) is a clone of the same parent (The Europe or USA Pokemon Platin Rom usually) and then apply the same mapping to it as well For automatically matches this is a great benefit, like if one of the different region name is either the Direct Name or an Alias of the Game on IGDB then we can match all versions of a game This fixes the issue for localized rom naming a lot as well, if you use any Rom Manager or tool which renames your ROMs to match names from No-Intro/Redump dats this will now not make the Identify step of RomM fail because the name is localized and not like that on IGDB and also if one region gets matched now all region gets matched! this makes it less annoying to manually match as well when instead of 20 matches for all different versions (Regions, Beta, different Revisions) of Pokemon Platin you just match any of it and Playmatch does the other one fully automatically Another big issue generally is compression, RomM does not enforce any format when accepting ROM files for Platforms, users usually want to compress there roms if possible to save space zipping Roms is one way but usually the compression rate is not that good especially for newer consoles with for example encryption (which decreases compression rate by a ton) so most Homebrew Communities have developed own formats to compress ROMs a few examples are Wii / Gamecube raw format is .iso and the a common compression format is .rvz which is supported by Dolpin Emulator Wii U Raw format is .ISO but the common compression format is .wux A lot of Disc based system Emulators support .chd files which is a format the MAME team developed with a very good compression rate DAT groups such as No-Intro and Redump usually only create dat files for "RAW" or original formats so if you want to compress your roms it will not be matching to Playmatch anymore as Playmatch only holds rom data which is from a DAT group Luckly the Community already has made DAT files for a few of those formats but depending on the format and compression used these formats might have some randomness depending on what compression level and settings are used Playmatch currently has community dats for .rvz, .wux and decrypted PS3 Games



With FlibblesHexEyes - community member and contributor:

Hey! So, just to clarify I'm not part of the Romm team, though I do work closely with them.

I work on Hasheous (https://hasheous.org/), which provides hash based ROM matching to metadata providers as well as metadata proxying.

Hasheous came about from my other project called Gaseous Server (which is similar to Romm - started about the same time) where I noticed a major point of friction for users was matching their ROM files to metadata providers such as IGDB.

This led me to begin the Hasheous project where a user adding a ROM to their ROM Manager of choice (Hasheous was always designed to be client agnostic and not favour one client over another).

The idea here is that when adding a ROM, instead of the user having to manually say that file is "Choplifter", the client (Romm or Gaseous), would reach out to Hasheous and say "do you know what this file with this SHA1 hash is?" and Hasheous would respond with information about the ROM and where the client could find metadata such as summaries, and cover art.

Which led to solving a further point of friction for users which is that many metadata providers require an API key - and an often convoluted method to generate them - which led to Hasheous having the ability to proxy some metadata providers.

This allows users of Romm (and others) to have a completely friction free experience when adding ROMs to their libraries. It's this part that I'm particularly proud of.

It's taken me about a year to get Hasheous to where it is today. By far the biggest issue is that of data integrity. Hasheous relies on DAT providers (such as TOSEC and NoIntro) who all name games slightly differently. The same is also true of the metadata providers. Examples include that a DAT might name a game with a dash, which the metadata provider might use a colon. Individually these are reasonably easy to match, but at scale it gets a lot harder. So building out a community contribution method (to fix bad matches) that is abuse resistant was also a challenge.



With MattSays - community member and developer responsible for the Android app:

Yeah sure! You may want to know why I decided to make this app. I recently got into retrogaming handhelds and in particular Android retro handhelds, and I also discovered the existence of RomM. However, to my surprise there wasn't an app that could easily handle all of my rom collection without having to go to my browser and manually do all the steps required to just play my desired games. So I developed a client that could improve the usability of RomM on Android without too much hassle and shared all of this with the charming community that instantly tested it and gave me precious feedback.


And that's that!

Well, like I said, perhaps a little rougher than my regular efforts at these, but the contents in the answers really did deserve to be read through, but anyone interested. I love how passionate about gaming, self-hosting and emulation the team (and contributors) are in RomM. It makes me smile to see!

You can find more on The RomM Project with these links:

And don't forget, if you like this kind of gaming nonsense I share, you can find me on Mastodon, where I tend to post every day:

63

I saw that no one had shared Junk Store's newly released version '2.0' announcement, so I figured I'd format it for Lemmy and post it here.

Is anyone picking it up? Or trying it out?

Anyway, everything below here is their words that I'm pasting in:


The wait is over! Junk Store 2.0 is now live, and we’re excited for you to try it! You’ve heard the fuss, now you can judge it for yourself. If it’s not for you, no hard feelings; all we ask is that you make up your own mind.

Check it out in action here

Get it here

What is Junk Store 2.0?

Junk Store 2.0 is a fully extensible game launcher designed to help you easily install and manage games from platforms like Epic, GOG, Amazon, and more — all without the hassle of complex workarounds. It’s faster, more stable, and includes a ton of new features to enhance your experience on the Steam Deck.

Try Junk Store 2.0 Now!

We know you’ve been waiting for a faster, more stable, and expanded experience, and Junk Store 2.0 delivers just that. While we continue to scale up some of our supporting systems, we’re offering a 25% discount on your first year if you sign up before the end of the month. Use the code EarlyBird at checkout to take advantage of the savings Learn more here

What Users Are Saying

  • “Junk Store 2.0 gives me access to dozens of games I already own on platforms I rarely use — without all the convoluted workarounds.” — Anonymous

  • “JS allows me the freedom to choose stores with better deals, DRM-free options, or freebies — without sacrificing the joy and simplicity of the Steam Deck.” — BadServo

  • “This is f*ing great and well worth the sub. It’s leagues better than before and blows the Decky Loader version out of the water.” — Zer04evr

  • “It's the perfect Swiss Army knife for my Deck!” — Tiny Tech

How to Try It?

  • 7-day Free Trial – Try before you buy! If you cancel within the first 7 days, you won’t be charged.

  • 25% off your first year – Discount available until the end of the month.

Why Upgrade?

You’ll still have access to the old version of Junk Store, but we truly believe the new version offers too many improvements to ignore. Whether it's the download queue, the new extension generation tools, or the ability to view up to 1,000 games, this is the future of Junk Store. Check out "What’s New" here

Hear from the Developer:

  • Hear from the developer himself in this interview with Gardiner Bryant: Watch here

  • Listen to Gardiner Bryant: Watch it here

We’re Here to Help

Junk Store is a living project. We’re constantly working on improvements, and we need your feedback to make it even better. If you run into any issues, let us know — we’re a small team, but we strive for fast resolutions.

Thank you for your support — Game on!

31

I saw that no one had shared Junk Store's newly released version '2.0' announcement, so I figured I'd format it for Lemmy and post it here.

Is anyone picking it up? Or trying it out?

Anyway, everything below here is their words that I'm pasting in:


The wait is over! Junk Store 2.0 is now live, and we’re excited for you to try it! You’ve heard the fuss, now you can judge it for yourself. If it’s not for you, no hard feelings; all we ask is that you make up your own mind.

Check it out in action here

Get it here

What is Junk Store 2.0?

Junk Store 2.0 is a fully extensible game launcher designed to help you easily install and manage games from platforms like Epic, GOG, Amazon, and more — all without the hassle of complex workarounds. It’s faster, more stable, and includes a ton of new features to enhance your experience on the Steam Deck.

Try Junk Store 2.0 Now!

We know you’ve been waiting for a faster, more stable, and expanded experience, and Junk Store 2.0 delivers just that. While we continue to scale up some of our supporting systems, we’re offering a 25% discount on your first year if you sign up before the end of the month. Use the code EarlyBird at checkout to take advantage of the savings Learn more here

What Users Are Saying

  • “Junk Store 2.0 gives me access to dozens of games I already own on platforms I rarely use — without all the convoluted workarounds.” — Anonymous

  • “JS allows me the freedom to choose stores with better deals, DRM-free options, or freebies — without sacrificing the joy and simplicity of the Steam Deck.” — BadServo

  • “This is f*ing great and well worth the sub. It’s leagues better than before and blows the Decky Loader version out of the water.” — Zer04evr

  • “It's the perfect Swiss Army knife for my Deck!” — Tiny Tech

How to Try It?

  • 7-day Free Trial – Try before you buy! If you cancel within the first 7 days, you won’t be charged.

  • 25% off your first year – Discount available until the end of the month.

Why Upgrade?

You’ll still have access to the old version of Junk Store, but we truly believe the new version offers too many improvements to ignore. Whether it's the download queue, the new extension generation tools, or the ability to view up to 1,000 games, this is the future of Junk Store. Check out "What’s New" here

Hear from the Developer:

  • Hear from the developer himself in this interview with Gardiner Bryant: Watch here

  • Listen to Gardiner Bryant: Watch it here

We’re Here to Help

Junk Store is a living project. We’re constantly working on improvements, and we need your feedback to make it even better. If you run into any issues, let us know — we’re a small team, but we strive for fast resolutions.

Thank you for your support — Game on!

72

Hello, everyone!

I was lucky enough to get in touch with Wouter, the solo developer behind the Linux game launcher Minigalaxy. He was generous with his time and happy to answer a bunch of random questions I sent his way over the course of a few days. What started as a quick chat turned into this fun little Q&A.

A few hours ago, I posted an article here on Lemmy that used some of his replies as the backbone for a short piece about Minigalaxy. But the more I looked over his answers, the more I felt they deserved to be shared on their own, unedited and in full. So here they are...straight from the source.

I like to do these little Q&A's, interviews and pieces on these projects and programs, because it's a fun chance to get to see what's behind the curtain - hear from the devs which you rarely get to.

Minigalaxy itself is a lightweight, open-source game launcher for Linux, designed specifically for running GOG games with ease. It keeps things simple and streamlined: no bloat, just the basics like installing, updating, and launching your games.

I hope you might enjoy these, it was a fun time, and Minigalaxy itself is a great little Linux program :)

All questions by me, and all answers are by wouter!


Minigalaxy:


Q. I'd like to start with what inspired you to create Minigalaxy? Was it the 'typical' reason? - I know that everyone (do you know Lignuin from Heroic? I'd say you do, he and I both think that GOG's own Galaxy 2.0 is essentially abandoned now) is dissatisfied with the software GOG themselves present.

A. So I wrote Minigalaxy at at time where Lutris was the only other option, but it wasn't as easy to use as I'd like. I also wanted to do a project using python, since that language was still quite new to me. So I decided to write my own client. The idea was to have my own easy to use GOG specific launcher. The initial version was a bit rough and still saw some crashes, but it got better over time. In the beginning I was only planning to make it able to install Linux games, but then it ended up taking off and people started contributing. A contributor who's account name on GitHub is Kzimir wrote the initial wine support.

Q. Minigalaxy seems to be known for its minimalism. Was that a deliberate design choice from the start? I'm a big fan of that, by the way!

A. It was deliberate, I wanted a good overview of the GOG games I can play and an easy way to install them 😄

Q. Why focus solely on GOG support, instead of building a more universal launcher?

A. In the last 6 years I've contributed to a lot of open source projects, but the only launchers I've been using have been Steam and Minigalaxy, so I've not really ran into an opportunity to contribute to other launchers. Besides Minigalaxy I spend a lot of time contributing to PSPDEV, which is a homebrew SDK for the Playstation Portable, and to open source games and game preservation projects.

I think other launchers do a great job integrating multiple platforms. I really like that Minigalaxy is so focused specifically on GOG. I think that gives it its own niche and allows us to offer a level of uniformity while still providing a lot of specific info from GOG. For example filtering on genre would be hard if you're dealing with multiple platforms

Wouter's unprompted statement:

I do have to say that I was not expecting as much community engagement as there has been when I originally started. It was initially just something I wanted to have, but also made available to others. Then when I implemented translation support the contributions really started rolling in and even some programmers joined and added features I wouldn't have thought about. Lately GB609 on Github came in an he fixed most of the outstanding bugs. It has been really cool to work with the over 50 contributors over the years

I recently made translation easier by adding support for Weblate and we now have a 100% complete Ukrainian translation which we didn't have before. It's things like that which just blow me away

To give another example, being able to ship a full Taiwanese Mandarin translation with the third release I did was unexpected, but insanely cool

Q. How has the Linux/GOG gaming community responded to Minigalaxy?

A. The community has been really nice 😄They've really helped to keep me going. Minigalaxy has had so many contributions from the community. Translation, small fixes on the website and even new features and bug fixes

Q. What keeps you motivated to maintain the project?

A. I think that has been my main drive. Minigalaxy has had the features I want from it for a while now, but the community keeps bringing in new ideas and even implementing them

Q. Is there any way people can support you — contributing code, donations, spreading the word?

A. I don't want donations, but contributions are always welcome. It is now super easy to contributed translations, I think it would be really nice if some more people could help out with that 😄


And that's that!

It was short, but their time is valuable, and this was more a chat than a full-blown interview. I am very glad wouter agreed to chat at all: projects like Minigalaxy, which are done free for the community who love gaming are amazing, and I think he deserved a little time to share his views!


I do hope you'll forgive me posting the entirety in full here, so soon after my other link. And I hope you enjoyed this little post also!

[-] PerfectDark@lemmy.world 125 points 1 month ago

As a girl who grew up with type 1 diabetes, seeing these tasteless jokes in here just remind me of the shitty time kids can have when they feel different to other kids and get singled out for something they can't control.

So what if its a gigantic mega-corp, they're doing a good thing here for children.

Disgusting fucking 'jokes'. Shitty people.

[-] PerfectDark@lemmy.world 120 points 5 months ago
  • Removing the messages option and instead replacing it with their stupid DM chat system, even for modmail

  • Stating that later this year they're going to introduce walled off paid sub-reddit

  • That live stream nonsense they had a couple of years back

  • Their A.I. answers integration

  • Censoring users who mention 'eat the rich' and the name Luigi

  • No longer allowing moderators of their own sub-reddit to change a sub's status to NSFW (after the protests, obv), now requires admin to do this for them if the deem it appropriate

...who'd have guessed that these decisions were shit. Not the community who told them each time, again and again, right?

Fuck you, Reddit

view more: next ›

PerfectDark

0 post score
0 comment score
joined 6 months ago
MODERATOR OF