Why Are We Still in Beta?

Another blog post this soon? Impossible!

In contrast to the last post I would like to talk about some more technical things which don’t impact the average user tonight. I hope you’ll still find them interesting, though!

Recently, we’ve sorted out some things under the hood. We’re degreasing the engine, changing the oil, rotating the tires, and checking the brake pads. In short, we’ve made some changes to improve the overall usability and quality of SMBX2. “Beta”, for this project, means that we’re still sorting the foundation out. Updates like this break some compatibility to the previous beta, but will help the project in the long run. We’ll stay in beta until we’re at a point where the foundation is so smooth it won’t cause us trouble down the line. This means that at that point we won’t have to make changes anymore like the ones you’re about to witness.

Let’s take a look at all the cleaning we’ve done, starting with LuaScriptsLib:

No longer sticks out like a sore thumb! Before we delve into it I want to take a quick detour into the renamed _ini_examples folder, though (now named _templates):

Here you can now find templates for paralX2 background files, background and npc code txt files, lunalua libraries, music and sounds.ini, particles and shaders. Simply copy them over to where you need them, rename as necessary and adjust!

Another new folder is the “logs” folder. This is a new folder where all the crash logs will be. A far better location than the data folder itself if you ask me.

Okay, now onwards to scripts:

While we’re still in the process of sorting this out fully, you can see that the number of folders and files vastly decreased. Going forward, we’re aiming to include only useful and necessary libraries per default, rather than everything ever made. The folder got very messy from the previous approach (to the point where we had half a dozen timer libraries!), so now you should be able to find what you need more easily.

As for the underlined Legacy folder:

This folder has a special purpose. Before deleting any library in future versions, we will move them over to this folder to mark them as deprecated. In the version after that, they will be gone for good. If the game finds that a level tries to load a library that’s in there, it’ll inform about it (but only in the editor, so it won’t disrupt normal gameplay!). This is to give developers time to update their episodes before anything actually breaks.

Further updates

On a less technical note: All NPCs in the games have descriptions now! When you hover over the icon, these boxes will show up after a second. They’re here to inform about the NPC’s behaviour; when necessary, in very detailed ways:

It’s probably not something you ever considered, but hopefully it made you go “huh, this sounds useful”.

That’s about it in terms of updates for now. There are still more juuust around the corner, but I can’t yet give an estimate for when those will be presentable.

Hoeloe and Enjl’s cereal

I’ve showcased this level in the last post as well. This is actually the new hub for the Mario Challenge. Hoeloe and I sat down to give the game mode more flair and personality. It now has a dreamy airship serving as its hub, with new loss and victory screens that support the theme.

3 Replies to “Why Are We Still in Beta?”

  1. It hostly looks really cool! I love the new hub for the mario challenge, however, what about the megagoomba; it is going to be a new NPC or a replacement of the old one?

Leave a Reply

Your email address will not be published. Required fields are marked *