Sponsored By

10 lessons learned from the development of Nikoderiko

The piece dives into everything from optimizing for weaker platforms to why clear outsourcing guidelines are a lifesaver, with practical takeaways for devs.

Dmitry Smirnov

November 21, 2024

5 Min Read

Every game’s development is a journey, whether you’re an experienced studio working in perfect harmony, or a new band of upstarts figuring out everything as they go, nothing ever goes quite as planned. In the course of making our adventure platformer Nikoderiko: The Magical World, we picked up a few tricks to smooth out production and help with whatever we do next:

  1. Weekly Progress Updates

    Nobody wants to start the week with a meeting, but it can help. Really! Every Monday, our team assembles to share images, GIFs, or brief descriptions of their weekly accomplishments in a dedicated #weekly internal channel. It’s not just show-and-tell; this practice keeps everyone aligned on the content being added to the game and bolsters morale by showcasing progress made. For example, our level artists can track asset production and better get to know the library of them we’re free to use.

  2. Grow Your Team Early

    Hire juniors early — not only are they smaller, cuter and more innocent (also good for morale) the faster you nurture them, the sooner they become mid-level developers and eventually seniors. Continuous education, well-structured onboarding, and clear guidelines accelerate this process. And taking them for regular walks, too.

  3. Develop a Beat Chart as Early as Possible
    4.png


    Nothing to do with rhythm games, a beat chart—detailing level progression, mechanics, and settings—helps ensure a cohesive experience and allows for parallel development, early feature cuts, and effective polishing.

  4. Playtest Internally as Soon as Possible
    Editor3.gif


    The earlier you discover design flaws, the cheaper they are to fix. Internal playtesting can reveal issues best addressed early. For example, when running tests on our cooperative game mode, we quickly realized that our camera was too zoomed in to cover two characters effectively. But zooming out the camera changed the whole game’s perspective, necessitating a lot of early design changes to make it look right.

  5. Optimize for Weaker Platforms First

    It’s a little counter-intuitive, but optimizing for the least powerful platform benefits everyone, ensuring a baseline performance target you can experiment more with on higher-end systems. Starting optimization early ensures it’s seamlessly integrated into your pipeline and prevents rushed fixes later. The most impactful optimizations included correctly configuring quality settings, setting the SkyLight to static, minimizing the use of numerous moving actors within the frame, and reducing both draw calls and translucency overdraw.

  6. Guidelines for Outsourcing Are Critical

    Nobody likes reading manuals, and even fewer like writing them, but clear documentation explaining the development pipeline speeds up onboarding for external contractors. Art and design documents (ADD) help ensure consistency in style and reduce unnecessary iterations. Here are some helpful quotes from our ADD:

Character Game Geometry Specifics

Editor7.gif

  1. Face Priority

    It’s where everyone looks first, so the primary design focus should be on the facial area since characters may act in cutscenes or dialogues. Don’t skimp on polygons for the face or you might regret it later. Nobody wants a homely protagonist.

  2. Consistent Edge Count on Cylindrical Elements

    It just looks nicer when everything aligns. Elements with cylindrical shapes that connect should have matching edge counts. For example, if the base of a hand has 32 edges, then the sleeve should also have 32 edges. Similarly, if a pant leg has 16 edges, then the loop where it connects to the boot should also have 16. This applies to all such junctions: finger-to-ring, shoulder-to-sleeve, neck-to-collar, and so on.

  3. Vertex Placement for Functional Elements

    Ideally, any point where a button or other functional element attaches to clothing should have a vertex on the clothing at that spot. It’ll save you an ulcer in animation rigging!

  4. Topology for Draped Elements

    For hanging clothing and other drapery, it’s essential that the inner and outer sides of the fabric have matching polygon counts.

Pivots and Collision Points

Editor5.gif

  1. Empathetic Pivot Placement

    When placing pivots, consider the end user's workflow. A well-placed pivot can save the level artist a lot of time and frustration, and let them get your art lined up with the terrain faster.

  2. Spawn Point and Snap Considerations

    Keep in mind that an object will spawn on the level, snapping to surfaces based on its pivot point. Select the pivot position that will make this most convenient for placement and alignment.

Outdated Canon

Editor4.gif

Sometimes you’ve got to un-learn a lesson, and heavy drinking is inadvisable. Originally, we followed the principle of vertical shading gradients — light up, darker bottoms. In practice, the PBR pipeline doesn’t accommodate this “painterly” approach. In stylized art within a PBR pipeline, most environmental assets lack gradients, and albedo contrasts are generally subtle.

  1. Localize for Key Markets

    Cast a wide net and open the door to localization early! Not all fans will be fluent in English. Localizing trailers with text or voice-over also enhances engagement across different markets.

  2. Pre-Pitching Game Trailers to Platforms

    Wishlists are life, so it’s crucial to pitch your game trailers to platforms well in advance. Once your trailer has been posted elsewhere, it's unlikely that platforms will pick it up again. For maximum visibility, negotiating temporary exclusivity with major media outlets is a great strategy.

  3. Freeze Features and Branch Releases Early

    While very tempting, last-minute changes and new features can have unpredictable ripple effects. Early feature freezes and the creation of release branches can minimize potential disruptions and bugs.

  4. Nintendo Releases: Certify Only Final Builds with Fully Baked Lighting

    More so than any other platform-holder, Nintendo moves at their own pace. Plan for it. We didn’t, optimizing by re-baking lighting for better performance, but this led to a large patch size, as nearly all maps were updated. Consequently, Nintendo took longer to approve the patch. To prevent this, certify only fully optimized builds with final baked lighting to avoid unnecessary approval delays.

    One of the lighting techniques we used to boost performance was setting the Skylight to Static. This change reduced reflection intensity in some cases, but we addressed this by using custom reflection maps on water in the Switch shader configurations.


We hope this helps give other aspiring studios a foot up, or at least a hint of things to come. Don’t make the same mistakes we did, and get out there and create the game of your dreams. We’re rooting for you.

Read more about:

Blogs
Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like