A little about...
Soaphog

Game studio in Europe, developer of indie games, now focused on RPG games. Outsource game development provider with an ability to deliver multiplatform solutions.

Place where passion about online and offline gaming sparkles. Committed to create excellent gaming experience and caring about results of our creative and development process.

We believe in direct communication, so please send us an e-mail to margarita@soaphog.com when there is more you want to know, you have an idea to share with us or you feel that we could be the right fit for what you need or dream about.

  • Let's look at
    Our work

    In order to provide our clients with excellent online and offline gaming experience we are ready to create game design and provide high quality game development on platforms upon clients request. We’ve already released our own rogue-like dungeon crawler with tabletop aesthetics Rezrog in 2017 and now we’re working on exciting new projects.

    Learn more about
    Our team
    Valerij

    Creative director

    Walks in the room with new ideas, passionate about creating remarkable gaming experience. Boosts the team to get to destinations. Challenges our view to world.

    Imants

    Lead game designer

    One who goes around committed to complete the task on list today and all for tomorrow. The most serious one in the team with gaming passion. @ImantsZarembo

    Ainars

    Lead game artist

    One who pushes pixels, draws lines and has the ability to make beautiful things out of nothing.

    Margarita

    Game artist

    Imagination as her superpower and bookshelves full with comic books, makes her artist from another planet.

     

    Vjaceslav

    Game tester

    Obsessed with games and what goes on “under the hood”. Jack of all trades.

    Igor

    Developer

    Calm outside, beast inside. Fantasy RPG maniac. Practices voodoo game development.

    Intars

    Developer

    The most quiet one of all development team. In fact, he’s so quiet he may be simply a figment of our imagination.

    Latest news
    Blog
    20
    Sep
    A new enemy approaches!

    This week we are just gonna tease you a little bit.

    If you didn’t know, right now we are developing a new game Seacurity Breach. In our promotion materials, you can already see some of the enemy units that are in the game. Like Barr Racuda, Priest, Assassin and others. But today a new enemy approaches!

    An enemy that isn’t the smartest or the toughest one out there, but he sure is fast. And what will happen if you can’t stop him? Simply put, he will be more than happy to throw your plans in a disarray. Meet our very own Suicide Runner!

    Who is a good looking puffer fish?

     

    And because we are awesome, a little bonus. A sketch portraying how our puffer fish will haunt your dreams!

    BOOOOOOM!

     

    Feel free to share our blog post using Twitter/Facebook/Reddit or your Discord communities (if I have missed your most used one, feel free to message us at @SeacurityBreach @Soaphog)

    Check out Seacuirty Breach on Steam.

    14
    Sep
    Unity NavMesh and Seacurity Breach

    Here we go! Our first WEEKLY blog about indie game development and it’s a doozy. But before we go into more detail, we should explain some things. Let’s start at the beginning. Why now, why weekly? It’s simple. We want to share our experience and knowledge with new, experienced gamers and developers alike. Show you the inner workings of indie development and give you some tips and encouragement in the process. But most importantly to show that you can start and develop successful games everywhere, even if you need GoogleMaps to find us. Plus, it’s a pretty decent marketing move.

    And now let’s dive into some sexy talk about Unity NavMesh system! Don’t worry! If this isn’t something you are interested in, there is always the next week.

    What is Unity NavMesh? Simply put, it’s a navigation system that allows your created characters to come alive and move around your beautiful maps. It creates pathways and shows your units all the obstacles in their way, so they can go around them, jump over them etc.

     

    Now let’s use our newest project as an example. Wait, before that we should explain a thing or two. Seacurity Breach is a Tower Defense game with an increased focus on map verticality and PUNS. We can’t forget those glorious puns. Now back on topic. Like in every Tower Defense game your ultimate goal is to stop your enemy before it reaches its target. So, using the NavMesh system, during level loading, your enemies plan the shortest way to their target and off they go! March towards a potential booty.

    Look at those smart fishies!

    Cool stuff, right?

    And this is where it gets interesting. In the grand scheme, for a TD game, it’s all you need. A path from point A to point B. But it felt too static and we weren’t just gonna stop there. Our goal was for a player to make meaningful decisions, interact with enemies. Plus, we got all this map verticality untapped. The first step we decided on is to give enemy units the MIGHTY ABILITY OF JUMPING. The great thing about Unity engine’s NavMesh system is that it can automatically map multiple layers of your level as walkable objects.

    As you can see, right now our enemies can walk on an elevated ground, but they can’t get there. And this is where jumping comes into play. But for the unit to jump somewhere you need two things. First, an Off-mesh link that shows the AI that it can move from his current location to another mesh if a gap between them exists. Secondly, a proper jumping animation,  we don’t want to see a static seahorse flying. That’s a scary sight.

    So we link both layers together as pictured by the red nodes and our unit knows that it’s ok to jump on and off it. With that jumping is done.

    Now some units can jump (one block high)! Open the champagne! Ok, it’s not that impressive, jumping was already a thing when Atari ruled the world. But that’s how a game gets built. Small things stacked one onto another.

    Our next idea was, what if a unit had an ability to wallcrawl and reach places that a player might not account for. Honestly, we don’t know any other Tower Defense game that has done it. And that’s how an assassin character was born. Like we stated previously, Unity is great at automatically making NavMesh on multiple layers. The issue arises when it comes to walls. Then it’s a little bit different story.

    In the early stages of development, we went with the optimistic, naive approach. NavMesh is built (generated) everywhere and units have a path from point A to point B. Everything should be fine and work as intended. And it did, it was beautiful! But everyone wants for their game to look pretty, have a particular art style, so do we. So you add decorations, buildings, plants etc. And that’s when we hit a small snag with NavMesh generation. Who would have thought that making a game more pretty would create technical problems. The issue was that some of our decorations ended up creating ‘holes’ in the NavMesh, particularly on walls. Thus prohibiting assassin units from traversing those blocks. One way of dealing with that issue is to remove colliders on decorations. But we weren’t fans of that. Units clipping trough world objects isn’t a good look. Like always in life, the simplest solution almost always is the best one. If a block isn’t used for the assassins wall crawling ability or it has objects attached the engine will automatically skip NavMesh generation for those walls. Unless we have manually tagged particular walls/blocks, then it’s just business as usual for the engine (which is great for performance).

    This time focus on the green nodes. They are indicating to the engine that it needs to generate a NavMesh on the tagged surfaces and to also create an Off-mesh link (on first and last 2 nodes so the unit can step on the wall and step off it on the top.

    In the end, the NavMesh for the assassin unit looks like this.

    As you can see the unit can reach places on a map that a player might not think at first. That adds an extra layer and planning aspect to the game when the player knows that he/she will have to deal with that particular unit.

    Now let’s see both of those units in action. Quick prototype ‘island’ to show off how it works.

    A basic example

    And that’s the ‘short’ version about our experience with Unity engines NavMesh system in our latest project. We had some issues, some things we had to learn. But for everything to work and look like you want it, well that takes a little bit more work and knowledge.

    Speaking of knowledge we just can’t leave you without some decent tutorial about NavMesh!

    Navigation System in Unity

    https://docs.unity3d.com/Manual/nav-NavigationSystem.html

    Weekly Game Dev Tutorials

    https://www.youtube.com/user/Brackeys/featured

    Unity NavMesh Tutorial – Basics

    https://www.youtube.com/watch?v=CHV1ymlw-P8

     

    Feel free to share our blog post using Twitter/Facebook/Reddit or your Discord communities (if I have missed your most used one, feel free to message us at @SeacurityBreach @Soaphog)

    Until next week where we will talk about…. Well, you will just have to wait and see.

     

     

     

    from 8