CrossCode Update #42
Under the Hood

Welcome back!

That was quite the fun week and we did a lot of work on different ends. We added more details to the game and worked on advancing the plot. The Equipment menu got a bit more polished and some fresh new hotkey buttons. We also carved out the details on the circuit menu and began to implement the skilltree itself into the game. We also started planning a little something for our team!

Details… so many details

The cargo ship is the starting area of the game and since this will (probably) be the first thing the players sees we want to make sure they find a place filled with details and atmosphere. Of course this means more time is needed to finish up the area but don’t worry we will not go over the top. Over time creating areas will get more easy for us and we plan to reuse details in later areas if they fit. So apart from us explaining why we love details… what did changed?

First T-Free worked a bit on the waves and made them appear more staving. You can see the difference here:
These are the old ones, and the new ones look like this:

water (Lea defies gravity!)

Thanks to TQ and T-Free the cabins got a new update which includes the workers lounge where people calm down after a hard day of work or… well… play video games:
gamerdude(Can you guess the game which he’s playing? And yes, that typo is intended!)

There has been different works on other areas too, but we can’t show them yet so stay tuned ;)

Equipment Menu

So I finally finished up the functionality of the equipment menu. It took quite a while but I also added a lot of reusable features along the way. Lachsen just rewrote our button manager system that handles moving through buttons via mouse, keyboard and gamepad to better fit what we need. Now we can easily integrate multiple menus on top of each other without any collision problems between different groups of buttons. This is a large topic to cover actually. If you want to know more, leave a comment and we might make a technical post regarding your questions. Next to the new system I also added hotkey buttons. These buttons can be found in the top bar in the menu. They serve as shortcuts to different menus or to revisit the help menu (the help dialog will only appear once if you enter the menu the first time).
You can get a look on it in this picture:

Optimization & Circuit Menu

Lachsen spent some time on optimizing our entity system. The result is really amazing. The whole update goes faster by 1 millisecond! Okay, that doesn’t sound much by itself… but it is about 20% of our total time per frame. This mostly means that we can possibly add more entities to a map without losing those precious frames. Here is a quick look at our performance testing range:

These are 313 entities running at smooth 60 frames per second. We will cover more about this topic in an upcoming technical post about optimization in CrossCode. If you’re interested you might want to keep an eye on the blog for the next few weeks!

The circuit menu has finally taken a bit more shape in form of actual code. We sketched out the basic outline of the tree that contains the skills so we can easily create the tree itself whilst changes can be added with ease. As you might have seen in our previous post, we use a tree structure combined with so-called OR-branches. Along with this, we discussed the data structure we want to use for a single skill. We tried to make it as flexible as possible so we can make changes fast. The coming weeks will probably contain lots of information regarding the skill tree and the creation of the circuit menu.


A week of non-stop CrossCode Action? Developing until we fall asleep in front of our laptops? This is what we’re currently planning to do! A part of our Team will meet up to work together on CrossCode for a whole week. We hope that we can squeeze out more content for the game in that week, so we can proudly present it to you in the next update!

And this is where the weekly ends. We hope you enjoyed the weekly and will be here in 2 weeks to get a fresh batch of CrossCode Updates!

Until then!

In Germany it’s already the 10th February, which means Intero leveled up! We wish our composer the best and hope that he will continue bringing awesome music to CrossCode. Happy Birthday Intero!


  • Is he playing Velsarbor? o.O

    Seemed like a productive week.^^
    Keep up the great work.

    Also greetings from germany and happy birthday.

  • It’s Velsabor, how could i ever forgot that project :D

  • Happy Birthday, Intero!

    And… so… ehm… CrossCode takes place in the future, right?
    And I… I… well… wanted to ask – just since you seem to know quite a bit about it – is that guy playing a
    Velsarbor- D e m o or, maybe…?

  • Can anyone explain the easter egg (I guess?) with the typo? ;-)

    Do you actually take care of visual consistency? Or will there be much more detailed areas just because you had particularly much time that day? ;-)

    Oh, and you managed to catch my interest with your technical annotations. Button manager sounds like a nice piece of code. Also, would be very interested in how you managed to decrease the frame time by 1 ms for entities alone? What exactly did you change?


    • This is a game Lachsen made a long time ago. It’s called Velsabor!

      Of course we do! It start by choosing the palette for a certain area and ends with the details that make sense to said area. If an area needs more detail because it makes sense, we will do it. If not, we better not do it because it might look weird in the end.

      We might create a topic about the button manager then ;) Though it’s not that much of a topic. It is basically a manager that updates the focus on buttons based on your input.
      And about the entities. This is more or less part of the upcoming optimization post. We did some changes so entities that don’t move, are handled faster.

      • Oh, of course I know Velsabor! :) Those were the glorious days of the RPG Maker. What I don’t get is the typo. Is it simply because it was there in Velsabor as well (wasn’t that game in German?)?

        Hm… You’re right, better leave the Button Manager aside and spend your time on the project. But I’m still anticipate the profiling/performance article! ;-)

        • No, it is just a typo I forgot to remove :p Just me being to lazy to remove it :D It’s changed now :D

          The article will come, but not sure when. There is some university work that popped out and must be dealt with, so we can focus on the game mainly if we can.

  • Whoa.. “Its Full Of Stars”!

Post a Reply to Michel Cancel reply

Your email is kept private. Required fields are marked *