Saturday, June 21, 2025

Marek's Dev Diary: June 19, 2025

What is this

Every Thursday, I will share a dev diary about what we've been working on over the past few weeks. I'll focus on the interesting challenges and solutions that I encountered. I won't be able to cover everything, but I'll share what caught my interest.

Why am I doing it

I want to bring our community along on this journey, and I simply love writing about things I'm passionate about! This is my unfiltered dev journal, so please keep in mind that what I write here are my thoughts and will be outdated by the time you read this, as so many things change quickly. Any plans I mention aren't set in stone and everything is subject to change. Also, if you don't like spoilers, then don't read this.

Space Engineers 2

This week was mostly about finalizing the SE2 roadmap. We need to figure out what absolutely has to be in the game before it leaves Early Access. The tricky part is not letting the scope grow forever - it's easy to keep adding "just one more thing" and never actually finish. So we're defining what needs to be done for the initial release and sticking to it.

Water, Water Everywhere

We conducted a comprehensive review of our Water system - looking back at the last few months of development and mapping out the next steps. The technical foundation is solid, and we've got some great mechanics working already: aqueduct system, water dams that break and unleash torrents, pools that overflow realistically, water flow that pushes grids and characters around, water particles, grids crashing into water (with damage based on impact velocity), and proper buoyancy calculations for floating grids. 

Now we're turning our attention to the visuals, focusing on:

  • Enhanced water surface textures and animations

  • Proper foam generation and particle effects

  • Improved transparency and reflection systems

  • Wave pattern animations with both low and high frequency components

  • Shallow-water equations (SWE) - a more performance-friendly approach for situations where we don't need full volumetric simulation, which also opens up some nice visual tricks to make water look even prettier

These aren't just cosmetic improvements - they're essential for making water feel like a real, dynamic part of the game world.

The Survival Experience

Perhaps the most critical work this week has been our intense focus on survival gameplay. We're not just thinking about the mechanics - we're obsessing over the player journey. The first two hours need to hook players, teaching them the ropes while keeping them engaged and excited. But equally important is what happens after 30+ hours. What keeps players coming back? What gives them that sense of meaningful progression and accomplishment?

This is the kind of design challenge that keeps me up at night (in a good way). Creating a survival experience that's both accessible to newcomers and deep enough for veterans is no small feat, but it's exactly the kind of challenge our team thrives on.

Looking Back at Spring Week

Just a quick note about last week's Spring meetup - it was absolutely amazing to see my colleagues in person again. There's something special about our annual gatherings that video calls just can't replicate. I'm already counting down the days until next year's meetup!


Until next week,  Marek


Thursday, June 12, 2025

Marek's Dev Diary: June 12, 2025

What is this

Every Thursday, I will share a dev diary about what we've been working on over the past few weeks. I'll focus on the interesting challenges and solutions that I encountered. I won't be able to cover everything, but I'll share what caught my interest.

Why am I doing it

I want to bring our community along on this journey, and I simply love writing about things I'm passionate about! This is my unfiltered dev journal, so please keep in mind that what I write here are my thoughts and will be outdated by the time you read this, as so many things change quickly. Any plans I mention aren't set in stone and everything is subject to change. Also, if you don't like spoilers, then don't read this.


Keen Software House Annual Meetup

Like many studios, we went remote during the COVID pandemic. What started as a necessity became a strength - we discovered that fully remote development works. Since then, we’ve welcomed more and more talented, creative engineers, artists, designers, programmers and dreamers from all over the world.


But once a year, we all come together in person at our HQ in the Oranžerie. It’s a tradition that’s become a vital part of our culture - a chance to reconnect, reflect, and recharge. No matter how many virtual meetings we have, nothing beats seeing your team face-to-face. Every meetup is a breath of fresh air, reminding us that this isn’t just a job - it’s a shared journey.


Over the years, we’ve grown not just in size and experience, but in connection. What started as colleagues working on a game has become something deeper: a global team of friends, united by a shared love for games, creativity, and of course - Space Engineers.


During the meetup, the Space Engineers 2 team surprised us with screenshots from our latest internal build - they were jaw dropping and I simply have to share them with you!


As the meetup came to an end, no one was in a hurry to leave. After a few days of talking, planning, laughing, and just being together, it was hard to say goodbye. We're already looking forward to the next one – and to everything we'll build together in the year ahead.

Thursday, June 5, 2025

Marek's Dev Diary: June 5, 2025

What is this

Every Thursday, I will share a dev diary about what we've been working on over the past few weeks. I'll focus on the interesting challenges and solutions that I encountered. I won't be able to cover everything, but I'll share what caught my interest.

Why am I doing it

I want to bring our community along on this journey, and I simply love writing about things I'm passionate about! This is my unfiltered dev journal, so please keep in mind that what I write here are my thoughts and will be outdated by the time you read this, as so many things change quickly. Any plans I mention aren't set in stone and everything is subject to change. Also, if you don't like spoilers, then don't read this.

A few months ago, I restructured my schedule to alternate weekly between Space Engineers 2 and AI People. This approach lets me maintain a deep focus on each project. I'm really someone who needs to dig deep into something and work on it until it's done, rather than switching context every few hours.

AI People

This week's focus was AI People, specifically exploring AI-assisted programming (what we call "vibe coding") to accelerate development of our AI NPCs. However, instead of diving into planned features, we spent the week refining our methodology.

Our experience with Cursor + Opus 4 and Gemini Pro 2.5 revealed a frustrating pattern. Initial progress feels promising, but then you hit a wall: request a change, the AI modifies code, you skip review and test directly, discover new bugs or no improvement, repeat. Hours later, you realize you're going nowhere.

The core issue? Current AI agents approach software engineering fundamentally differently than experienced developers.

How AI agents work today: You describe a feature → AI reasons briefly → finds files → implements changes → declares completion.

How expert developers actually work:
  1. Fully understand requirements and context
  2. Study relevant code thoroughly (nothing more, nothing less)
  3. Break complex changes into testable chunks
  4. Implement with constant awareness of ripple effects
  5. Review for edge cases and unintended consequences
  6. Update all affected elements - comments, references, documentation, architecture diagrams
  7. Write comprehensive tests and iterate based on results
  8. Access running systems for real-time debugging and observation
Current tools can't replicate this workflow. They also lack game runtime access, can't insert diagnostic traces, and miss the holistic view that makes great code.

This realization led us to explore building our own SWE agent. We're studying Claude Code, which implements some of these concepts plus additional capabilities like sub-agents.

Key insights from this exploration:

LLMs feel superhuman in their domains. Yes, they still have gaps and can only handle minute-long tasks rather than day-long projects, but within their scope? Opus 4 writes a complete Tetris game in seconds - a task that would take me days. The bottleneck isn't intelligence; it's the scaffolding.

When AI programming fails, it's rarely the model's fault. It's inadequate tooling around it. I'm convinced 2025 will bring revolutionary improvements: correct SWE loop, specialized agents for exploration, coding, testing, reviewing, evaluating, validating, etc; sophisticated code search and indexing, intelligent test automation, multimodal feedback loops. Imagine Gemini analyzing gameplay video to fix bugs autonomously.

We're validating our approach on smaller codebases and design documents. Design docs are particularly revealing - text changes are far easier to track than code modifications, exposing flawed agent behavior immediately.

Case in point: I asked Cursor to reformat log specifications in our design doc. It updated one section, missed another, left duplicates, never reviewed its work. In a text document, these mistakes jump out instantly. In code, they'd hide among thousands of lines. Classic junior developer behavior - making changes without verifying impact.

How about costs? Sure, spending $100 on tokens in a day might seem expensive. But if the AI delivers in one day what would take me two weeks? That $100 is cheap. Plus you're iterating in hours instead of weeks. Clear win.

We're not quite there yet, but I'm confident this year will bring the breakthrough. Once we crack this, we'll accelerate AI People development dramatically, running parallel experiments and iterating at unprecedented speed.

Space Engineers 2

Given my AI agent focus this week, my SE2 time went into writing the SE2 Vision document - a comprehensive guide defining requirements, constraints, and KPIs for the team.

Our north star: Make SE2 mainstream while delivering 10x improvements across every dimension - art, code, design, quality, performance.


The key insight: SE2 will match or exceed SE1's complexity, but we're wrapping it in an accessibility layer. New players start with intuitive, manageable systems. Complexity reveals itself progressively as skills develop.

We're also prioritizing engaging gameplay loops and meaningful progression. The complexity remains - it just becomes fun to master rather than overwhelming to encounter.