What We’re Building (That Isn’t a Game)

Here at (defun games ()) HQ, we write a lot of posts about game development. This time, I’d like to take a step back and discuss (defun games ()) itself — the company we’re building, how we’re building it, and why.

If you pay much attention to the gaming industry, it’s hard to miss the complaints about “pay-to-win” microtransactions, rushed releases, and game developer burnout. These anti-features hurt the industry in the long term, and can only lead to disappointment for everyone involved. We believe there’s a better way to build a game studio:

We believe in big, hairy, audacious games.┬áPlenty of well-meaning folks have advised indie studios like us to start off with simple platformers or clones of popular mobile games. AAA studios, meanwhile, are infamous for rehashing the same franchises ad nauseum. While those games might be easier and/or safer to make than a cyberespionage MMO, in my humble opinion, they’re a lot less satisfying — not only to make, but also to play! That’s why we’ve dedicated ourselves to what we call Big Hairy Audacious Games. Because at the end of the day, that’s what gives us, and our games, meaning. Speaking of which….

We believe that games can be more than just entertainment. For those who choose to use it as such, Spycursion will be as much an educational tool as a game. This is not an accident! So-called “serious games” are not new, but we believe that game developers (not to mention humanity) would benefit from helping to make them more common and more popular. This topic is worthy of its own post later on. For now, you’re probably wondering how we hope to accomplish all of this…

We believe in working smarter, not harder. By taking advantage of procedural generation and other secret alien technology, we can of course save time. But we don’t do that just so we can produce more games more quickly — we do it to preserve the sanity and work-life balance of everyone who works on Spycursion and other to-be-determined games. It would be all too easy to follow the broader societal trend of “do more with less,” but we believe the end results of that are flawed products and burnout. That’s another reason why…

We believe in releasing games when they’re ready. Most AAA studios announce their games’ release dates weeks or months in advance, usually timed for the late autumn or another similarly heavy game-buying season. This is a standard “best practice” for marketing throughout the industry, which would be all well and good, if not for the inevitable technical hurdles that are also prevalent all over the industry. So what happens when marketing and development disagree? Too often, the answer is: Crunch time! We believe, as above, that forced crunch time can only lead to flawed products and burnout. Our goal is to make games that are well worth the wait (Spycursion included!), and for our fans to know that they will be, in part because…

We believe that “winning” is a skill, not a price. Remember back in the days of video game arcades, putting quarters into machines in exchange for play time fragging/dunking on your friends? And do you remember how, if you put in more quarters than your friends, your characters would become faster and stronger and have better abilities? No, I don’t remember that either, because being able to pay for a gameplay advantage would suck all the fun out of any game. We believe in fair monetization schemes that reward strategic gameplay, not wallet size.

 

If you’ve read this far, hopefully this paints a picture of a game studio you’d like to support… or work with. If you happen to be in the market for a startup gig and would like to help us grow (defun games ()) into the studio it’s meant to become, take a peek at the Join Our Team page for more information.



Spycursion Update (May 1, 2019)

It’s been about a month since our Kickstarter campaign ended and we launched our Patreon page. As people who have watched exciting projects rise and fall — often without even saying goodbye — the last thing we want is to leave Spycursion dormant for months while our fans wonder what happened to it and if we will ever return. (If Spycursion ever does fall into the bit bucket of history, it won’t be because we ghosted you — it will be because we went out in a blaze of glory.) To that end, our goal is to share a progress update roughly once every month, even in months where not a whole lot has happened…

… like this one! As I hinted in the last post, both Mauricio and I have had to “take some time off” to focus on useless trivialities like, say, paying the electric bill. Aside from that, we’ve been zooming out a bit to discuss the Spycursion architecture and how to tackle a development roadmap in our new post-Kickstarter world.

Ooh, Shiny!

Can I be honest? You know all those parts of the game that you’ve probably seen from our trailer? Those are my least favorite parts. The parts of Spycursion that I enjoy talking about and sharing the most are, well… the parts you can’t see. There are good reasons for that. Spycursion was never meant to be a graphics-first game, and in fact, I hadn’t even planned on making it 3D! My original vision of Spycursion was as a 2D isometric world. It evolved into 3D throughout the process of development and commissioning assets, as we decided that 3D would allow for greater flexibility in terms of feature additions and look-and-feel modifications.

But really, we should go back even further. In July 2018, we published this post containing the very first public Spycursion screenshots (with the exception of this very, very early device UI screenshot, in Nov. 2017). At that point, the game had been in development for nearly a year. We hadn’t shared screenshots because we weren’t focused on anything that could be screenshotted. Then, we read pieces from some wise(?) internet denizens who told us that, in order to have a successful Kickstarter campaign, we would have to make shiny things and show them off and generally become glued to social media. (Anyone who’s ever worked on an indie game knows where this is going.)

Hence, our focus shifted from server to client, and more or less remained there until the Kickstarter launch. I don’t know whether this was ultimately the right decision, but I do know that not focusing on the client certainly wouldn’t have helped that campaign. In any event, I personally feel that the visuals in Spycursion’s trailer turned out well, but not as well as they could have. There was a degree of crunch in the weeks and months leading up to February, and as a result I didn’t feel we were able to give the client the polish it deserves. That’s why one of our first post-Kickstarter discussions was about…

(Shiny) Client Architecture

If you’ve followed our blog, you know that the Spycursion client relies heavily on a couple of Common Lisp frameworks — CEPL and QTools. What you might not realize is that, within our code base, these two frameworks never even touch each other. It’s almost as if we have two separate clients that just happen to have the same name. That makes some sense, of course, because they have very different purposes. But let’s say that we want to display a device UI (a Qt QMDIArea, if you’re fancy) partially overlaid on top of that 3D world, rather than in a completely separate window. I’m not sure there’s a good solution to that. (QtOpenGL comes the closest, but we dismissed that because it would be difficult to use with CEPL or other GL frameworks, plus it had some problems on OS X.) Qt also adds some bloat that we’d rather not have.

Though we’ve discussed it before, without the time pressure of Kickstarter, we’ve decided to begin replacing QTools now. And that replacement will be… Nuklear! Why Nuklear? Well, for starters, look at these two screenshots and tell me which one fits better in a game about cyberespionage. (Yeah, I thought so.) In seriousness, what’s attractive about Nuklear is that it’s simple and embeddable, and doesn’t try to take over your entire application.

Now, the astute and tech-savvy reader may be thinking, “Wait, Nuklear is written in C, not Lisp… does it have any Lisp bindings?” Well, yes, yes it does! We’ve decided to give cl-bodge a shot, specifically the UI module, and see if we can make a workable device UI out of it. Another potential benefit here is that we could get away from traditional desktop UI paradigms of the sort enforced by Qt, and design something more unique. It’s too early to know what that might look like, but I’m excited about the possibility.

If cl-bodge works well for us on the UI, we may also use other modules of it for other purposes. It is possible that we will eventually replace CEPL, but I think the more likely outcome is that we blend the two, taking advantage of cl-bodge where it makes sense and working with CEPL as a friendlier alternative to raw OpenGL (cl-opengl).

More Shiny?

Between paying the bills and replacing QTools (not to mention me having a strong desire to hide back in my server code), it may be awhile before we can share more screenshots of any quality. It will definitely be awhile before we share more videos. When we do, we’ll try to include some upgrades to the 3D world, as well. We picked up a fair amount of technical debt during pre-Kickstarter crunch time, so performance improvements are definitely in order. With performance improvements, we can add more “bling bling” (to use the words of an influencer who didn’t want to share Spycursion because it didn’t have enough of that). And if we get enough funds through Patreon, we could add new 3D art as well.

What Kind of Shiny Would You Like to See?

As always, we invite our Patrons and followers to help shape not only Spycursion itself, but how we share it with you. What do you think about the technical changes outlined above? What do you want to read about in future updates? What would you like to see on our Patreon page?

Let us know!



Suspicious Activity

Over the last several days, you may have noticed a handful of cryptic messages being posted to our website and various social media presences. We don’t know who (or what) is behind these strange postings, but rest assured we are working as quickly as possible to solve the mystery.

Additionally, we noticed some kind of analysis tool posted on this website. As of now, its purpose is unknown, but it seems to be looking for a 32-character string of hex characters (0-9 and A-F). For example, a string like this: 46b6726a8a327e007d41d9f603bae95d.

At the time of this writing, we’ve discovered eight of these strange messages and ciphers, but will let you know if we learn of more.



A Story of (defun games ())

Hi, I’m Scott.

Scott Helvick, grinning like he just got married
This is my “I’m about to Google-bomb myself” grin.

I’m the founder of (defun games ()), lead developer on Spycursion, and an all-around nice guy (sometimes). I’m also the guy who wrote those last two blog posts… and then seemingly disappeared for more than six months. I’d like to apologize to our loyal fans — all three of them — for that long absence; a lot has happened since our last update! But before I get to that, let’s start at the beginning.

It’s early in the morning on some idle Tuesday in June of 2017, and I can’t sleep. Haven’t slept all night, in fact, not for lack of trying — because my brain has ideas, dadgum it, and this time it is steadfastly refusing to let them go. The ideas swirling around concern a video game, the likes of which I’ve never seen, but would love to play. This imaginary game centers around hacking, but it’s the real kind, not the Hollywood kind. And it’s multiplayer, so players can learn from and play with and betray each other. And there are corporations, and an economic system, and a programming language, and blackmailing of politicians, and, and, and…

And the ideas just keep coming, until my then-girlfriend/now-wife wakes up so I can blather to her about all of this. She, in her fresh-eyed wisdom, tells me to take notes. Those notes, the child of sleep deprivation and a night full of eureka moments, would later morph into the game design document for Spycursion.

Having been an IT guy in a past life, I started Spycursion’s development with the pieces that came most naturally to me, meaning the backend… or, in other words, the logical parts that nobody outside of other game developers will see and are completely useless for proving that a game actually exists. (So if you were ever confused about the lack of screenshots, you now have an explanation.) In hindsight, this was a mistake, but we’ve been trying to fix it. Here are a few recent screenshots, for the curious:

Two Spycursion characters engaged in conversationSpycursion's computer UI Aerial view of a city in Spycursion

Truth be told, the journey to this point hasn’t been easy. Since November, teammates have come and gone, we made multiple significant code rewrites, we redesigned our website, and, oh yeah, I got married. (It turns out that planning a wedding is just a little bit of a distraction from writing code.) And yet, in the judgment of this possibly slightly insane author, it’s all going remarkably well. We recently recruited a community manager, whose name is Dan. I’ll let Dan introduce himself later, but he’s going to help put more content out there so our three loyal fans don’t get upset.

I’ve never been one for thinking small; it’s a blessing and a curse. Spycursion isn’t small, either. (Obviously, or it would be done by now and we would’ve sold about eight copies on Steam.) But what it is, I believe, is unique — the best combination of indie creativity with AAA quality… or at least B+ quality. And because we’re a small team making a big game, we need your help to make it real. The time will come when we launch a Kickstarter campaign and ask for your support. For now, though, we ask for your support in three other ways:

    1. Subscribe to our mailing list. You see those little forms in the sidebar and footer? They’re nice, aren’t they? They’re also our metric for when to start crowdfunding. The more subscribers we get, the sooner we can launch.
    2. Spread the word. Want Spycursion to succeed? Great, so do we! Tell all your friends that you want to play it with them. We’ve got some social media links in the footer, if that’s your thing.
    3. Join our team! Our most pressing need (as of July 2018) is for another developer or two, but if you think you can contribute in other ways, drop us a line.

Thank you, sincerely, for being a (prospective?) fan, and my apologies again for the radio silence. We at (defun games ()) are dedicated to making sure that your patience pays off.