Skip to main content

Project & Development Update #21

November 21, 2023

Good morning, pilots.

If you would kindly check under your seats, you'll each find a complimentary "Citadel 2.0 Update Bingo Card" has been provided. Those of you who are lucky enough to get a bingo will be rewarded with an all-expenses-paid trip to the Shadow Realm.

That said, before we kick off today's festivities, let's embark on a journey to the days of reckoning that led up to Citadel 2.0:

Progress & Changes

  • tl;dr, everything

Finishing the game

In early May, all of the pieces for Citadel finally came together internally. Namely, we finished a proper build of the web client for the game itself. This was a huge milestone for us: we finally had something tangible that the whole team could iterate on together. Of course, it was rough around the edges, but it felt amazing to have something complete to work with.

From May to July, we poured a ton of time and effort into creating and testing improvements. Progress was steady, but something was off: the core mechanics, including travel and mining, felt unsatisfying. No matter what we changed, it still wasn’t actually that fun. Our changes felt like patches over issues that went much deeper.

Our day of reckoning

Internal team playtestin' days for 1.0 in the office from earlier this year circa May-July ish

Our mission has always been to create a world that players care about enough to build on top of and contribute to. For us, that means it’s something that we’re proud of and actually want to play ourselves. The first iteration we built at that point, what we now call “1.0”, failed to meet this standard in our eyes. Throughout July, we came to the conclusion that this wasn’t the version of the game we wanted to ship.

We spent a lot of all-hands time discussing where 1.0 fell short and what would need to change to address those shortcomings:

Meaningful combat is essential

Player-to-player combat in an open world provides too much evergreen purpose, fun, and economic stimulus to exclude from the genesis of the world.

EVE Online lives and dies by the MMO tag "Players are the content." Whereas many MMOs would offer the same core experience on a 50-player server as a 50,000 player server, EVE is lifeless without its vast universe of players. The agency players hold to openly engage in combat with each other is a critical part of what creates the never-ending drama, economic sinks, and meaningful content that has allowed EVE to thrive for 20 years.

In Citadel 1.0, the conflict between players did not involve individual rivalries or spontaneous fights. Instead, it felt more like "Player vs. Spreadsheet of other Players" because of its perfect information and single-interaction combat.

This lack of meaningful combat meant that:

  • Players only experienced each other’s presence as an aggregated blob of small changes in stats for every ship located at an asteroid belt or station.
  • From the players' perspective, the world was considered "safe" from other players, but "dangerous" for no apparent reason other than rolling dice for potential gain. This eliminated the incentive for social interactions, trust, and cooperation.
  • The fabric of the economy, while balanced, was hyper-fragile to any changes we (or anyone else) wanted to pursue, because every real interaction introduced would have to match the odds of the dice roll.

What made this more frustrating is that we knew we had the capability to build a much better real-time combat system. The problem is, trying to introduce this bit by bit on top of Citadel 1.0 felt like switching engines mid-flight in a plane. Each change introduced radical new truths to a previously much simpler world.

We came to the realization that "progressive combat," much like "progressive decentralization," was merely a LARP and not feasible as a path forward. If we ever wanted Citadel to have the meaningful combat we believe it needs, it needed a new foundation.

The significance of secrets

Back in 2021, when we set out to design a fully onchain game, we saw perfect information as a constraint that we’d need to work around. Since that time, a few things have changed:

  1. Zero knowledge solutions for introducing onchain privacy have progressed considerably.
  2. We've researched and learned how to work with ZK at scale with our own solutions.
  3. Playtesting 1.0 made us realize we don't want to make a perfect information world.

In trying to improve Citadel 1.0, we consistently found that our favorite ideas relied on some form of hidden information:

Strategy

Combat has more depth when you don't know exactly what you're getting into. If combatants know all of their opponents’ stats and capabilities, determining which fights to take is as simple as doing the math in advance. Not knowing the full capabilities of ships enables both sides of a fight to engage each other thinking that they’ve got fair odds at winning.

Trade

As important as we think combat is, we want economic focused playstyles to be just as viable and rewarding. Perfect information makes markets extremely efficient, and too much efficiency robs the economy of arbitrage opportunities that give life to roles such as haulers and traders.

Exploration

There isn't much to explore when everyone has a god's view of the world at all times. Venturing to the fringes of space carries no possibility for the unexpected to occur. We want to introduce a veil of mystery (e.g. fog of war) around the player that makes meaningful adventures possible.

Cooperation

The highest potential of massively multiplayer worlds is best expressed when it actually matters who is in the world with you and what your relationship with them is. If you don't know what's lurking beyond your field of view in an unsafe world, it's dangerous to go alone. Rather than being anti-social, this hostile environment forges deeper bonds of friendship and camaraderie. Players actually need one another.

Trust

When players can operate in the shadows, interpersonal trust has value. This places organic constraints on the scale of cooperation. The larger a group becomes, the harder it is to trust everyone within it. When everything is public, this trust isn't nearly as important because truth is easy to verify.

Ultimately, players not knowing the answer to "what's out there" allows for the type of adventures and stories that make sandbox worlds interesting. We made the decision to enshrine hidden information as a core pillar of the world, rather than tacking it on piecemeal.

Maps ≠ worlds

Citadel 1.0 was played from a single perspective: a zoomable view of the whole starmap. Spaceship sprites were only displayed in full resolution within the UI windows. This created several problems:

  • This level of view can't help but evoke the feeling of playing a strategy game rather than inhabiting a world.
  • A lot of other systems we want to introduce, such as combat, would really only work with a more “zoomed-in” ship-scale space environment for players to engage with.
  • Going from single view to multiple view is a major architectural change that would be difficult to apply after launch, given that it affects everything from the art style to the UI.

To illustrate the point, here’s an image of the only view from Citadel 1.0.

Note: This screenshot is of 1.0 from our May internal build, taken in September for comparison.

Ditch the "idle game" baggage from 2021

The game design for 1.0 was heavily rooted in legacy idle-game mechanics from 2021, which was a product of what was feasible at the time for onchain games.

Here are a few examples of the persistent problems we repeatedly ran into:

  • There were two main play styles based on predefined careers assigned to ships (Miners and Marauders). You could do "mining" things if you were a miner, and basically auto leech off miners if you were a marauder. It seemed like every change had to either apply to a single career, or create a new career. This was clearly unsustainable.
  • The outcome of PvP was equivalent to a dice roll, and the only player input was whether to roll the dice. It would be significantly more fun (or enraging) to be outplayed by someone, rather than a faceless table of odds.
  • "Idle game" mechanics, such as arbitrary delays for mining and traveling, were used to explicitly support passive playstyles. This made the experience feel lethargic and unsatisfying. It also caused us to overly rely on simulating interactions instead of permitting them to occur naturally in a near-live environment.

Now that we’ve set the stage...

Let’s set some ground rules before we reveal 2.0, so we’re all on the same page:

  1. This is pre-alpha stages, as we officially started working on this in August.
  2. Everything you are about to see is a work in progress and not final.
  3. Please keep your pants on at all times while reading the update.

Citadel 1.0 → 2.0

Over the past several months, we’ve been focused on building a better game that takes those learnings to heart. We’ve been calling this project "Citadel 2.0" internally.

2.0 is the full realization of our original vision, without the limiting compromises we no longer need to make. It incorporates the best of what we’ve learned over the past two years we’ve spent dedicated to creating and understanding these types of worlds.

Overwriting our old save

  • Perfect information → Hidden information w/ZK
  • World = monolithic starmap → Universe = modular network of star systems that can contract or expand arbitrarily
  • 2D bounded map → 3D Open world
  • 2D pixel sprites → Retro 3D models and pixel textures
  • Linear movement → Fluid dynamics movement (real physics)
  • Players manage resources → Players actually pilot ships
  • Predefined ship roles → Customizable ships with modular equipment and dynamic benefits/drawbacks
  • Single action PvP → Near real-time PvP ship combat
  • All-or-nothing ship destruction → Meaningful ship-to-ship open world combat w/ multiple damage types and ship health
  • Items as contract balances → Items as tangible objects with volume and location
  • Two resources → Many “world-bound” resources supporting refining and manufacturing of in-game items and ships by players
  • Auxiliary governance system → Deeply integrated, in-world governance system as part of the player and social experience

And, of course, saving the best for last:

  • Fully onchain and decentralizedStill fully onchain and decentralized

Adding the Z-axis of destiny

In August, after a year of scouring through corners of the sci-fi art community, we finally found our dream team member to serve as the art director for the project.

Not only did his vision align with ours, but it also expanded far beyond it. It was his skills that gave us the confidence to pursue what we had always secretly desired: the prophetic yet forbidden Z-axis. We’ve brought our retro pixel art aesthetic to a whole new plane, literally. We’re 3D now.

That dream team member is Danny Boy

Hello! I’m Danny Boy, although a few of you may recognize me by my other nickname Danarogon. I’m a Portuguese digital and 3D artist who has had his life unexpectedly turned upside down (for the better!) when Fleet Commander contacted me to join the Citadel team as its Art Director.

I’d be lying if I said I didn’t turn my nose up when I first heard "blockchain" being involved, but as they told me more about their team, goals, and the project itself, the more intrigued I became. Before I knew it, I found myself teaching pixel artists how to use Blender and bringing on some of my favorite sci-fi artists to join the team!

As an artist, I’ve always been obsessed with retro sci-fi. It’s a nostalgic style for me, and one that is a big influence for the Citadel. That theme, of old and new coming together, runs deep within the Citadel, in more ways than just the bridging of pixel art with low-poly 3D. It is undeniable that we all feel we're working on something special, honestly, being called the Art Director still feels unreal even now, but I'm glad you guys can finally see what we’ve been up to these past few months! 🙏

Environment concept art showcase

Ship concept art showcase

Ship + Station design process showcase

In-game Models

Here's a snippet of some of in-game models the entire art team has been working on since August. You're able to open all of these in your browser and inspect them up close via sketchfab, if you'd like.

  • Fireship (most placeholder name of all time)

  • Rust Man (this one got second place for most placeholder name of all time)

Pre-alpha footage

Now that you've seen some images, how about some videos to mix things up?

Though, as a reminder once again — this is **extremely** early footage of us testing things in our client. It’s filled with placeholders and temporary elements. It is not meant to represent gameplay, but this time around we want to get things in front of you guys even earlier and faster than before even in its infant stages.

Since August, our primary focus has been on backend-related development, zero-knowledge and hidden information, art directions, and essentially everything except the client, as we're still in the early planning stages for 2.0.

So, please be gentle with it. It’ll improve rapidly each month as we move forward.

Enshrining hidden information w/ ZK

We mentioned above how critical hidden information is to creating a compelling world and enabling risk taking.

Here’s a sampling of important pieces of hidden information we’ve solved in Citadel 2.0:

  • Field of view, Movement, & Locations
    • Each player’s view within a system is limited to some area around their ship. By moving, players can discover each other, as well as the objects in their vicinity
    • Multiple forms of hidden movement
    • Locations of interest known to only those who’ve discovered them through exploration rather than being public by default and known to all
  • Ship fitting & Combat
    • The equipment fitted to a ship and its cargo-hold contents are not public information until destroyed
    • PvP ship combat does not reveal ship details to players outside of the encounter (e.g. ship hull, class, equipment fitted, cargo hold contents, attributes)
  • Inventory, Markets, & Manufacturing
    • Each player’s inventory is known only to them (and whoever they choose to share it with, such as their friends or social group)
    • Trades between players are hidden
    • The origins of buy and sell orders at in-world markets are hidden
    • The processes and outputs for ship and equipment manufacturing are hidden

We believe that these changes will make the game more compelling, give value to information, and allow for more natural versions of mechanics that would otherwise necessitate RNG.

Doin’ it right

Had we known how the project would evolve from its humble beginnings as a side project to what it is now, we probably would have taken a completely different approach, lol. That said, things happened exactly the way they needed to for us to reach this point.

For Citadel 2.0, our goal is to minimize the time it takes from idea to playtest as much as possible.

This means focusing far more on the game experience itself, building in smaller increments, shipping consistent playtests to the community, and expanding the team.

Gameplay comes first

For Citadel 1.0, we decided to develop the game and all of its external services in parallel. Since we were initially bootstrapped, our priority was shipping a minimum viable game along with all the supporting services required to achieve decentralized autonomy from day one.

Moving forward, our plan is to focus entirely on gameplay until we get consistently positive feedback from community playtests. At that point, we’ll feel confident in revisiting the auxiliary services that support the greater platform in preparation for launch.

Speeding up playtests

Our original development process involved committing a significant amount of time to onchain implementation before validating whether a feature was even worth it through playtesting. This made our speed of iteration between internal playtests simply too slow.

But, that isn't to say it was time wasted, as we've now put in thousands and thousands of hours into onchain implementation, which has left us confident in our new process:

  1. Verify that something can be done onchain and come up with multiple solutions, then build it off-chain first on our intermediate test server that simulates onchain behavior.
  2. Playtest the off-chain version and iterate quickly based on the feedback we gather internally and from the community.
  3. Once we’re happy with how a new feature plays, then we can confidently plan and commit the resources to building it onchain after our playtesting phase is complete.

Our goal is to accelerate our iteration loop and get the community involved for playtesting as fast as possible. We’re currently preparing our debut technical demo, and following its release we’re aiming to ship new playtests to you guys every 2-4 weeks.

Leveling up the team

Citadel 2.0 never would have been possible two years ago when we were just a few guys in Fleet’s bedroom. Since then, we've assembled a crew of absolute megaminds who have inspired us to dream a bigger dream and are side-by-side with us in making it a reality.

Since August, we’ve been on a hot streak

  • Senior gameplay & network engineer with a passion for building MMOs and 15+ years of experience (also played EVE Online extensively)
  • God-tier art director Danny Boy with a lifelong dedication to spaceships and sci-fi worlds and a strong 3D modeling background
  • Renowned sci-fi artist in the Russian art community ProxyGreen as our lead concept artist
  • Extremely talented 3D artist Gwyvern with a passion for spaceships (another previous EVE Online player)
  • One of the most prolific and skilled EVE Online players, Tikktokk with 60,000+ in-game hours, joined us as a game design consultant (previously collaborated with CCP in the same area for their new blockchain project)
  • Game industry veteran UI/UX designer Pedro Bombeiro to act as our UI/UX Director (previously worked at CCP on EVE Online)
  • Uber-danke SFX designer Jin with years of focus on sci-fi space games and sick 90s anime vibes
  • Senior mechanical engineer with multiple fluid dynamics patents as a consultant for performant onchain physics (thanks The Learner's uncle!)

(Aside from expanding, we’ve also been leveling ourselves up to become true onchain chads under the leadership of Heimdall. He has established a strict workout regimen for us, which includes the use of the office gym he’s built for the team)

Lord Heimdall, Chief Economist and Workout Sergeant

Join us, or perish.

We’re not done leveling up the team just yet, as we said in our previous raise announcement: we’re hiring!

To paraphrase ourselves, as a significant portion of the core team directly has come from this damn fine digital online telecommunications based community, we’d like to keep that trend going. We highly value those of you already here.

Right now, we’re exclusively looking for people with senior level experience in the following areas:

  • Network Engineering
  • Cryptography
  • Unity
  • Game Design / Game Production
  • SFX
  • VFX

If you’re that type of chad, or you know someone who is — please reach out and we’d love to talk! Full job descriptions and a job board for these positions will be posted in December.

(FYI: Senior to us = you’re really, really good. So, if you think you’re at that level and you’re confident in your abilities, reach out.)

Your burning questions

2.0 is an ambitious and heavy duty overhaul of the project, and no doubt many of you have some questions. Before we get into the answers, we want to cover the things that haven’t changed one bit.

Citadel will remain, and still is:

  • Fully onchain
  • Decentralized
  • Sustainable
  • Equitable
  • Player / Community first

That said, it’s likely that differences and future development will call for some adjustments. So, we rubbed a few of the brain cells we have left after writing this update to pre-answer some of the important questions we think you guys will (or should) be curious about:

How does this affect plans for assets?

Governance

Those of you who are familiar with 1.0 know that we intended to let ships serve directly as governance tokens. We still want to achieve the same distribution of governance tokens, but it’s possible that they will be something other than ships.

A big motivation for this is the new combat system. Our goal is to provide players with the agency to engage in combat to their hearts' content as a core part of the experience, and we think that's more likely if players are free to blow each other up (and be blown up) without fear of losing their voice and stake in the project.

In a similar vein of extending player agency, we want to leave room for introducing the ability for players to manufacture their own ships from resources in-game. This was always something we wanted to support, and figured we’d all “come up with something” down the line alongside the community. But now that we have the opportunity to revisit the issue, it would be a lot cleaner to launch with a governance system that is compatible with player manufacturing from the beginning.

Auction and supply

In Citadel 1.0, the plan was to have an initial supply of 3,333 ships. Each week, the DAO would hold a uniform blind auction with variable supply, where players could bid for additional ships.

We have no idea whether/how this will change for Citadel 2.0, but it will likely be influenced by the following goals:

  • To encourage combat, ships should be affordable and (relatively) expendable for players. Which means, the auctions will remain for governance assets, but not ships.
  • Players should be able to manufacture ships in-game from the correct materials.
  • The DAO should be able to sustainably leverage the interest of players for growth.

The last thing we want to do is force something that doesn't fit. We're staying open-minded to any new opportunities that may emerge from the ongoing development of 2.0.

Are these changes influenced by what VCs want you guys to do?

Nah, this is all us baby.

We shared all of this with investors for the first time last month. Thankfully, they’re all excited for our new direction and are already turning their gears to help support it

We really hope you guys feel the same way.

What engine is the game being built in?

When we began exploring the new art direction, we looked at a range of options for 3D rendering in the game client. We wanted a solution that was mature, performant, web-capable, and commonly used.

We evaluated between:

  • Unity
  • Godot
  • Babylon
  • Phaser
  • Pex
  • PlayCanvas
  • Whitestorm

After considering the trade-offs of each option, we landed on Unity.

In standard Citadel fashion, Unity announced their super gross new monetization scheme right after we already started development on the new client.

We look forward to the day when a different option becomes the obvious and ideal choice. At the moment, we’re particularly excited and keeping a close eye on Godot maturing as an engine as it is open source and aligns well with the ethos of the project.

Meanwhile, since the game is fully onchain and client agnostic, anyone else can build their own clients using their preferred tools. We’re excited to support and contribute to those efforts.

What’s happening with whitelist?

If you’re wondering what will change for the whitelist and mint processes, we’re in the same boat. We have no idea and that’s unlikely to change until 2.0 matures significantly.

Regardless, we’ll make sure having a role remains relevant as things move forward. We’re incredibly grateful for all of you who have supported us since the early days.

We maintain our long-held position that an active, engaged, and knowledgeable initial playerbase will be instrumental to establishing the initial culture and seeding highly aligned community leadership. Hilmar, CEO of CCP Games (creators of EVE Online), recently spoke about the importance of being deliberate in cultivating the initial community. Due to a quirk of only having the publishing rights to initially sell boxed copies of the launch version of EVE Online, they inadvertently capped the maximum playerbase at 30,000 people for the first 6 months the world was online. In hindsight, he shared that this really helped allow enough time for the initial "social infrastructure" to develop organically. Those 30,000 pioneers went on to help onboard the next wave of players that followed, effectively solving the "cold-start" problem that every new player-driven world needs to contend with.

What’s next?

Heimdall’s Open Game Economy Design PhD Thesis

Long ago, back in April of 2023, Chief Economist Heimdall reached his breaking point. His timeline was infected with the same repetitive anti-economic drivel: "tokenomics", "pie charts", "nobody's figured it out yet", "unsolved problem", "value accrual tokens", "governance is fascism".

A man’s spirit can only take so much — he knew what he must do.

Heimdall then spent the ensuing months locked away in his basement, reading dusty old books on economic theory he had acquired from Ebay auctions while consuming nothing but ground beef and nicotine in amounts that would kill an ordinary man, but he was no ordinary man… As the months passed, he stewed, ruminated, digested, gesticulated, deadlifted, murmured to himself in the dark, argued with people on the internet endlessly, and scrawled like a madman in his growing pile of notebooks tackling economic issues head on.

The end result, is a 20,000 word thesis on why you should never utter the word “tokenomics” ever, ever again in blockchain gaming.

Coming December 1st, in Discord servers near you.

Live Team Q&A — Next week!

The citadel team walking the streets

We are taking this week off to celebrate the holidays with our families and to get some much-needed rest and relaxation.

Next week, when we're back on [INSERT DATE], we'll host another Live Team Q&A to hang out and chat about all things Citadel 2.0.

Update #22 — January 2024

In our next update, we'll cover our development progress in more depth for Citadel 2.0 and continue to share previews of sick spaceships, gameplay, and everyone's favorite… physics math imbued with nightmares!

(Here's a sneak peek of one physics formula related to fluid dynamics movement to keep you up at night...)

Part of an extremely painful formula