Show HN: I made a tactical map-based WWII submarine simulator (public beta)

silentshark.app

90 points by epaga 3 days ago

I've seen quite a few simming discussions on HN, so thought some of you might like this - I've created a map-centered, tactical submarine simulator and it's been a blast to make.

I grew up playing Silent Service II on Atari ST with my dad, then got into Silent Hunter IV in the 2000s, and most recently have been loving the more recent UBoat. In each case, the part I always enjoy the most is the plotting and charting aspect - essentially beating uncertain estimates with geometry.

So I decided to see how far I could get making my own sim that focused nearly entirely on that aspect. You listen on the hydrophone, estimate course and speed, identify ships through the periscope to get the mast height, use a working stadimeter for range estimates, and then try to build a good enough firing solution before getting discovered and hunted by any escorts.

Things I'm particularly proud of are the working stadimeter, the dynamic music (Holst Mars stings when your torpedo is nearing a ship), and pretty intelligent destroyer logic. I've found great reference materials online and have modeled several of the gauges directly after actual submarine instruments.

Tech-wise it’s a Vite/TypeScript app which enables me to offer the whole free version of the app as a browser version.

The Steam page is here => https://store.steampowered.com/app/4705650

The landing page is here => https://silentshark.app

I plan on releasing a full version soonish, including a WWII campaign with progression, patrol zones, and much more on Steam (PC, Mac, Linux/Steam Deck), App Store (iPhone, iPad, Mac), and Play Store (Android).

Would highly appreciate any feedback anyone has!

epaga 9 hours ago

Oh wow, guess this is getting auto-reposted! I posted it a while back to 0 upvotes...

Anyways, this project has been a blast to make especially with all the free and public domain resources that are out there on WW2 stuff.

A few fun examples that helped me:

- an original Torpedo Data Computer manual https://maritime.org/tech/tdc.php

- an original recognition book of Japanese merchant ships https://www.ibiblio.org/hyperwar/NHC/NewPDFs/USN/ONI%20Recog...

- an original report of the Battle of Leyte Gulf including a patrol zone map of US submarines on page 166 https://apps.dtic.mil/sti/tr/pdf/ADA003030.pdf

throwaway2037 35 minutes ago

If anyone is curious, the music was composed by Gustav Holst and is called The Planets, Op. 32. I am curious for OP: What made you choose this soundtrack?

  • epaga 21 minutes ago

    Primarily because I always loved those pieces growing up, it was my first real exposure to classical music. :)

    (And another reason is that it was a simple way to get some stirring music without needing to find a way to write my own.)

asimovDev an hour ago

i think you marked the game as a 32 bit macOS game, cause i get the warning notification on the steam store page. You should check that just in case

  • epaga an hour ago

    Thanks! I noticed that, too and will be getting it set straight. Still learning the Steamworks ropes, it's a colossal administrative tool.

cbm-vic-20 4 hours ago

"Wow, it looks amazing, honey!" -John's Mom

hah!

dwroberts 9 hours ago

I would like to try this, but would strongly prefer a demo on Steam that starts and runs fullscreen rather than playing it in the browser.

Can obviously fullscreen a browser tab etc - just that, playing it in the browser has a sense of impermanence that doesn’t mesh with needing to take a long time to learn and play it? I dunno, just feels like the wrong place for it

  • epaga 9 hours ago

    Definitely planning on getting a demo out. Which device are you on? I could add you as a beta tester if you're interested.

    Edit: Also, you can add the page to your Home Screen on most browsers as a PWA app, and it's nearly like a full screen app.

stefan_hagen 6 hours ago

Very cool! I love the "dry" part of it: actual calculations of angles and speed estimations etc. Will keep an eye out for the launch!

butz 23 minutes ago

Sorry, but your app icon is 3.66 MB PNG. A quick optimization to save some network requests.

abrookewood 9 hours ago

Congrats on the launch. Looks interesting, though maybe a tad dry. Love the authenticity though. Have wish listed it and will keep an eye out.

  • epaga 9 hours ago

    Thanks a lot! Any ideas how to make it less dry? :) That's kind of par for the course for submarine sims, I suppose...

    • applfanboysbgon 8 hours ago

      Is it? I'd really expect submarine sims to be wet. Rather extremely so.

      In more seriousness, I think it's fine for this kind of simulator to be 'dry'. There are a million games on the market, each can have its own niche, I think this one appeals to a very specific type of nerd and doesn't need to appeal to the mass market (and really, probably can't without a degree of production value that goes beyond the scope of an indie game; I think to get mass appeal you would probably need hyperrealistic 3D graphics and such).

    • conception 8 hours ago

      I would say in this case dry is preferred. It’s a niche thing. Let it be niche :) we need less common denominator content in the world.

kqr 5 hours ago

I was able to delete the target ship in the tutorial by selecting it and pressing delete, when I wanted to delete a mark next to it. Is that intentional?

  • epaga 5 hours ago

    Whoops, that is a debug functionality that I accidentally left in. Thanks, fixed!

oezi 9 hours ago

I tried the tutorial, but got confused by when to start/stop time and it made everything become desynchronized from your tutorial instructions.

I then started the time again, when I shouldn't have and realized that I would have to do all the calculations all over.

You should either manage the time or give dynamic instructions.

  • epaga 9 hours ago

    Thanks - yeah this is a tricky problem since on the one hand I don't want to frustrate users not being able to pause/unpause but on the other hand I need to not let them unpause too soon and have the ship be in the wrong position.

    Currently it should be blocking unpausing until step 7 or so... and it also should auto-pause once the ship reaches step 8(?). I did both of these things for the reason you're saying, but maybe I need to do it even more "locked down", at least for the Basic Tutorial.

    • kqr 5 hours ago

      For what it is worth, I ended up playing the tutorial mostly in real time, i.e. without pausing, because that felt more authentic. Under that constraint, I did have to play it three times to get proficient enough with the tools to succeed, but it was a lot of fun to figure it out under time pressure too.

      Something that helped me a lot was exploring how the firing solution changed when I changed various parameters in the TDC. I don't know if there's a way to build that kind of exploration into the tutorial. Maybe by splitting it up into segments, asking the user to handle only one measurement at a time, and illustrating how the firing solution changes?

      It is, however, annoying to start up the tutorial and click next-next-next-next to dismiss all the text when playing around with its scenario. Maybe a "dismiss tutorial text" button somewhere in the start of the tutorial?

      • epaga 5 hours ago

        Great feedback, thanks - and I'll think about a good way to let you just dismiss the tutorial text entirely...

        • kqr 4 hours ago

          Something else it took some time to understand was how the TDC evolved the firing solution over time. I really appreciate the yellow ghost ship on the map, but maybe there could be four more ghost ships indicating computed positions one minute, two minutes, etc. into the future? Possibly with increasing transparency.

          • epaga 27 minutes ago

            Loved this idea, so I put it in the game. Check it out and tell me what you think. :)

sublinear 6 hours ago

I have a couple of first impressions trying the basic tutorial on my phone. I like the idea a lot, so I hope the criticism isn't taken as spoilsport negativity by others.

Immediately, the music is way over the top. I had to turn down the volume and hope I wasn't missing out on anything important. I do get that it tries to set a mood, but without some flavor text or other introduction it feels incongruous to what is being presented.

Then, I found that the instructions given are very tool-oriented instead of goal-oriented. If I understood why I'm doing what I'm being asked to do I'd be a lot more motivated to keep going. Instead I'm being given a tour of "what all the buttons do". Meanwhile, I can't really see any of the tooltips/labels that pop up because my fingers are in the way.

Without some more polish, this feels more like a "take your kids to work day" simulator than a submarine warfare simulator. It's a bit of a shame because I am a fan of the simulator genre.

  • epaga 5 hours ago

    I super appreciate this feedback and don't at all take it as overly negative.

    I have gone back and forth on whether to describe how to use the tools or instead to explain goals. I get what you're saying and will give this more thought.

    (And the fact remains that with this many tools, it's simply really challenging to explain it in a clear and elegant way on a small device.)

    Once you "get it" and know how everything works, then I think it can work well...but for something this complex, the issue is definitely going to be onboarding.

    • ramses0 15 minutes ago

      Read the guides on BGG (Board Game Geek) on rules explainers: "Work backwards from the goal!"

      The goal is to sink the ship

      You sink the ship by hitting it with a torpedo

      You hit it with a torpedo by inputting numbers ...etc...

  • kqr 5 hours ago

    For me, part of the fun is in figuring out the "why" behind the "what". I really enjoyed getting a rundown of which tools were available to me, and then I get to figure out on my own how best to use them.

ezconnect 6 hours ago

The submarine don't look like a submarine.

  • ezconnect 6 hours ago

    I reloaded my torpedoes but it is taking so long and it just keeps on blinking.

yarekt 9 hours ago

very cool, i’m in

crimsoneer 9 hours ago

Is that comic sans or am I having a moment

  • epaga 9 hours ago

    It should be Patrick Hand, and Special Elite for typewriter stuff...but are you seeing Comic Sans, seriously?

    • Citizen_Lame 4 hours ago

      Nah, it is Patrick Hand, but it looks bit off for this kind of game. I would expect more "serious" kind of font. Like typewriter or similar.