TUXDB - LINUX GAMING AGGREGATE
made by: NuSuey
NEWSFEED
▪️ GAMES
▪️ STEAM DECK ▪️ DEALS ▪️ CROWDFUNDING ▪️ COMMUNITY
tuxdb.com logo
Support tuxDB on Patreon
Currently supported by 10 awesome people!

🌟 Special thanks to our amazing supporters:


✨ $10 Tier: [Geeks Love Detail]
🌈 $5 Tier: [Arch Toasty][Benedikt][David Martínez Martí]

Steam ImageSteam ImageSteam ImageSteam ImageSteam ImageSteam Image
The Hand of Merlin
Room-C Games Developer
Versus Evil Publisher
2021-05-11 Release
Game News Posts: 132
🎹🖱️Keyboard + Mouse
Mostly Positive (293 reviews)
Public Linux Depots:
  • GameBin_Linux [91.57 M]
  • Common_Linux [23.65 M]
Dev blog 62 - Ports & Pirates 2

Hey! It's me, Robert, again. Last week I talked about porting The Hand of Merlin to Linux. Today, let's continue the story with macOS. Mac certainly turned out to be a tougher challenge than Linux, but hey, I love roguelikes and challenges, so that's not a complaint! Remember how I said SeriousEngine 4.0 dropped support for OpenGL entirely? You know, the nice, cozy old graphics API that worked on pretty much any platform? Well, that leaves us with Metal, the new and modern API developed by Apple specifically for iOS and macOS. Now, SeriousEngine did have native support for Metal, back in version 3.5, when we made The Talos Principle run on iOS. But that was 3-5 years ago, and our Metal code wasn't maintained since then. You can imagine my dismay! Half the graphics functions had changed signatures. A quarter were never even implemented. It took me pretty much a whole week just to refactor the old code in order to make it even compile. That was the easy part. The tougher part was writing out missing code. Luckily, we do have a working Vulkan renderer, so I was able to examine how Vulkan code works, and then scan through Apple's documentation to figure out how to remap things. Since both APIs are pretty low level, they do have fairly similar concepts. Oh, and by the way, Apple uses Objective-C instead of standard C++... so that's an extra hard mode there. :) Finally, a week-and-a-half later, I had a Metal renderer with all the holes plugged. It compiled, I ran it, and... Black screen. Sigh. Just like with Linux, the problem now was missing shaders. Metal can only work with shaders written in MSL, the Metal Shading Language. Rewriting the entire shader code base from HLSL to MSL was not an option I wanted to think about. I knew I could get DirectX Shader Compiler to work on macOS, since that library is cross-platform. That can get me SPIR-V (Vulkan bytecode) on macOS, but then what? After some research, I found an answer: SPIRV-Cross, a cross-platform library that can decompile SPIR-V into a number of other human-readable languages, including - yes! - MSL. So let me paint you the full picture. We start with shaders written by a programmer in HLSL. Then we compile those into SPIR-V bytecode, decompile them into MSL, then re-compile MSL into Metal's bytecode. Phew! Talk about making sausages, right? But hey, at least none of this happens on players' machines. That distributed build system I briefly mentioned in the last post, that handles the entire shader creation process. So, when you download the game on Steam, the game data package already contains all of the shaders precreated into the final bytecode form that's directly loadable by your local operating system. So after all that, I ran the game again, and... Black screen. Again. Sigh. Back to the drawing board! I stripped down the first scene in the game to a bare minimum, a colored 3D cube. The simplest shader, the simplest possible rendering state. Once I could get that running, I'd add more complexity. -- Xcode --
At this point, let me introduce you to my new friend - Xcode. That's Apple's main dev tool suite, and the features I was most interested in are: Metal API call validation, and GPU tracing. The API validation thing is super useful since it tells you as soon as you call a function if you messed something up with the parameters. I caught a solid number of bugs just by examining the validation errors. The second feature is the real winner, though. By recording a single frame of rendering, Xcode can trace all of the GPU calls you did, along with the entire pipeline state, allowing you to inspect everything. A pixel is black when it should be colored? Just click it, and hit the Debug button. You get a listing of all the textures you're using, the exact shader code that's running, heck you can even step through the shader code. With this power tool, I was able to really get to the bottom of all the issues I saw, and finally, I could see my beautiful cube. :) From that point on, it was like climbing a staircase. Add a bit of complexity to the scene, run a GPU trace, figure out what's wrong, fix it. Rinse and repeat. Slowly but surely I got all the way to dynamic geometry (fonts, particles), post-processing (tone mapping, bloom, ambient occlusion), shadow mapping, antialiasing (MSAA), all the jazz. To round it all off, I also made sure we have proper detection of high-DPI / 4K displays on Mac, too. -- Performance --
Oh - did I mention the game not only runs on Mac, but also runs pretty darn well? This is where the native Metal implementation really pays off! On my M1 Mac mini, which has an integrated GPU, I'm able to get a solid 60 FPS at 1080p resolution. And that's using Balanced quality presets - so no sacrificing visual quality. So, there you have it. All in all, several weeks of work, and a satisfying feeling of a port done right. If you have any questions, stop by the forums or our Discord server. We're pretty much always there. Robert https://store.steampowered.com/app/600610/The_Hand_of_Merlin/


[ 2021-03-31 12:48:50 CET ] [ Original post ]


The Hand of Merlin is a turn-based rogue-lite RPG in which Arthurian legend clashes with cosmic horror. Recruit a company of up to three mortal heroes and guide them in spirit on a desperate journey from Albion to Jerusalem. Explore a richly-imagined medieval setting on the brink of apocalypse. Trade with merchants, improve your heroes and unearth ancient relics. Search for the lost fragments of your soul, scattered across the multiverse - and save as many worlds as you can.


Enjoy a compelling story inspired by Arthurian legend, the Matter of France, and the history of Al-Andalus - with an unusual twist. Make choices in interactive encounters that change every time you play. Written by Jonas Kyratzes (The Talos Principle, Serious Sam 4) and Verena Kyratzes (The Lands of Dream, Serious Sam 4).


Master the tactics of squad-based and turn-based combat to conquer both human and demonic foes. Your enemies will be tough and ruthless; make use of cover, set up ambushes and coordinated attacks, harness synergies between different Hero classes and skills.




Carve a path across the lands of Albion, Marca Hispanica and Al-Andalus. Will you take a dangerous route, risking life and limb in pursuit of a legendary relic? Or will you choose a safer path? Plan and prepare. Negotiate, barter, fight. Tackle challenges. Suffer losses. Recruit new Heroes. Earn Gold, Supplies and Renown. Be careful: your choices are permanent, as is death. But don't tarry - evil never rests.


Use Renown to level up your Heroes, and choose between a randomized set of new skills or improved attributes. But choose wisely! Select skills with great synergy and balance your party for the road ahead.




As you jump from one parallel dimension to the next, history is reshaped. Different kings rule the land, changing the encounters, characters, and events. No two worlds are ever quite the same, and each journey will be unique. And should your heroes fall, remember: defeat is not the end, only a new beginning.


Seek out towns to improve your arms and armor, or stumble upon hermit artisans in the wild. With every day that passes, the world plunges deeper into darkness, and you will need all the equipment gold can buy.


From a peasant's humble luck charm to the legendary sword wielded by Arthur himself, items imbued with magical power are scattered about the world. Some you will be able to purchase from merchants and collectors, but others will have to be earned through acts of heroism - or displays of wit.



Rain thunder and brimstone upon your foes! Seek out and gather Soulstones to restore your power and unlock new Spells. Even if defeated, your spirit will retain all of your collected arcane knowledge as you jump into the next dimension.


There are as many worlds as there are stars in the sky. In each stands Camelot; in each there is a Grail. But there is only one Merlin, and his eternal burden is to stand against the horror from beyond. Each world that is saved is saved forever; each world that is lost is lost for good.

https://store.steampowered.com/app/600610/The_Hand_of_Merlin/

MINIMAL SETUP
  • OS: Linux SteamOS 3.0 or Ubuntu 18.04 LTS
RECOMMENDED SETUP
  • OS: Linux SteamOS 3.0 or Ubuntu 18.04 LTS

GAMEBILLET

[ 6084 ]

7.54$ (16%)
12.59$ (16%)
5.32$ (79%)
4.18$ (16%)
33.17$ (17%)
12.42$ (17%)
16.79$ (16%)
9.98$ (67%)
25.19$ (16%)
16.57$ (17%)
16.96$ (15%)
8.39$ (16%)
16.96$ (15%)
4.95$ (17%)
8.46$ (72%)
25.47$ (15%)
8.54$ (57%)
13.14$ (12%)
5.03$ (16%)
5.03$ (16%)
16.57$ (17%)
12.84$ (57%)
4.24$ (92%)
16.57$ (17%)
8.54$ (79%)
12.42$ (17%)
8.46$ (72%)
8.39$ (16%)
33.17$ (17%)
12.42$ (17%)
GAMERSGATE

[ 1345 ]

0.43$ (91%)
0.43$ (91%)
1.58$ (77%)
1.53$ (87%)
0.17$ (83%)
3.06$ (74%)
1.58$ (77%)
1.58$ (77%)
1.28$ (87%)
0.58$ (92%)
1.58$ (77%)
0.58$ (92%)
1.58$ (77%)
5.31$ (79%)
0.58$ (92%)
1.28$ (91%)
0.85$ (91%)
1.7$ (91%)
3.75$ (81%)
0.85$ (83%)
0.68$ (91%)
2.03$ (77%)
1.58$ (77%)
2.16$ (86%)
1.74$ (91%)
0.85$ (83%)
1.58$ (77%)
1.02$ (91%)
1.58$ (77%)
6.38$ (57%)
MacGamestore

[ 4067 ]

5.99$ (85%)
7.48$ (75%)
2.98$ (85%)
1.10$ (93%)
1.99$ (80%)
2.89$ (86%)
1.09$ (84%)
0.99$ (90%)
3.49$ (88%)
3.99$ (80%)
1.09$ (93%)
1.49$ (94%)
1.24$ (75%)
1.19$ (60%)
5.49$ (84%)
17.49$ (13%)
1.99$ (87%)
1.19$ (91%)
2.99$ (95%)
2.98$ (90%)
21.49$ (14%)
1.19$ (88%)
1.19$ (88%)
8.99$ (10%)
4.99$ (83%)
2.98$ (85%)
1.19$ (88%)
1.19$ (80%)
1.10$ (89%)
3.99$ (90%)

FANATICAL BUNDLES

Time left:

356360 days, 11 hours, 47 minutes


Time left:

16 days, 18 hours, 47 minutes


Time left:

26 days, 18 hours, 47 minutes


Time left:

31 days, 18 hours, 47 minutes


Time left:

15 days, 18 hours, 47 minutes


Time left:

37 days, 18 hours, 47 minutes


Time left:

11 days, 18 hours, 47 minutes


Time left:

11 days, 18 hours, 47 minutes


Time left:

45 days, 18 hours, 47 minutes


HUMBLE BUNDLES

Time left:

4 days, 12 hours, 47 minutes


Time left:

6 days, 12 hours, 47 minutes


Time left:

13 days, 12 hours, 47 minutes


Time left:

14 days, 12 hours, 47 minutes

by buying games/dlcs from affiliate links you are supporting tuxDB
🔴 LIVE