Aesthetics 2.0

Howdy!

Last week marked the introduction of a long-awaited feature, which people on the team were hoping for ever since we got access to more NPC IDs. Namely: The same for background objects! Yes, in SMBX2b4 you will not only be able to resize and change the frame count of background objects at will, but also add as many as you like! Just like with NPCs we are reserving the range of IDs from 751 to 1000 for personal use, meaning that all 250 of these IDs can be used on a per-level or per-episode basis. That’s far more than the amount of BGOs currently in the game!

As you can see in the video above, we quickly started filling up some of the slots we got access to. In addition to the big topic of lineguides, made by Sambo, I have added the arrows from Mario Maker and Monty Moles as a new NPC, as well as their dirt as a BGO.

The new lineguide set comes with 22.5°, 45° and 67.5° slopes, small and big quarter circles and the usual horizontal and vertical straight line. And unlike with the old lineguide system, here NPCs aren’t going to fall off once they meet a sharp turn! Various NPCs come in three different speeds per default for extra variety and you can even attach non-standard IDs to lineguides with just a bit of lua (we will probably be able to remove the need for coding in the future).

Another thing showcased in the video is the breaking turn block, which is a breaking bridge in Beta 3. In Beta 3, this block didn’t account for its contents. However, with the new update you will be able to hide any NPC in it for a little surprise, or just a friendly set of coins.

The last thing worth mentioning are the red springboards which, after a recent overhaul, work well with a wide range of NPCs, both old and new! Ever wanted to make the player face a horde of bouncing goombas? When this update lands, you will be able to!

Okay I lied. There’s one more thing I want to touch on. It’s also noticable in the gif, but still work in progress: Progress has been made towards making effect.txt files a thing. More about this in a future post, though.


Apologies for the sparse amount of images this time. I hope the video made up for it. Before I sign off, here’s some breakfast:

Hoeloe’s Full English Breakfast

Preparing Yourself For Updates

Hey!

Continuing the stream of polish posts I want to address some inconsistencies that we’ll have to bring upon you to improve the overall SMBX2 experience. These changes aren’t going to break anything, but it’s best to be aware of them and take measures to consider them early on.


FINISHING WHAT 1.3.0.1 STARTED

The 1.3.0.1 update brought a few changes to basegame graphics. Most notable were the changes to various sizeables, as well as changing tilesets to use the AllStars colours, rather than the Advance colours. In Beta 4, we’re bringing two big changes to vanilla tiles:

The SMB3 cave tileset has, honestly, never even been using the SMB3’s pattern. We weren’t able to figure out how the current tileset was constructed, but we figured we should update it to properly resemble the source game.

The other change involves various sizeables in the game which we’ve changed for one reason or another. Most of these have their bottom segment changed to prevent cutoff, allowing them to be placed in midair or as part of a ceiling. Others had their bottom segment adjusted to better fit with the style of similar tiles (SMW sizeables). The airship block in the bottom right has been reverted to its SMBX 1.3 appearance, as that appearance suited its intended environment better.

The important takeaway from these updates is: Some of these blocks’ masks are changing! This is important in cases where you (or someone else) make a custom .gif graphic for a block and decide to not copy its mask over, since it matches the basegame mask (we’ve seen this with switch blocks in beta 3). Furthermore, we encourage you start sticking your sizeables one tile deep into the ground if you want them to stay grounded:

Don’t worry, due to how SMBX sorts its blocks you won’t run into layering issues with this!


TWEAKING BETA 3 CONTENT

You might’ve noticed that, on the Claims Sheet we have marked the NPCs from Beta 3 as “Pipelined”, rather than “Already Included”. This is because they’ve all seen rewrites or tweaks which change their behaviour in one way or another. These inconsistencies are minor, so it’s unlikely that anything will suddenly stop working on your end, but here are a few things to be aware of:

  • Maverick Thwomp’s detection radius has been overhauled. Its range is slightly shorter and its movement is slightly move gradual. It will now no longer immediately charge at you when it spawns.
  • Boo Circle now uses NPC 469 for the boos in its circle, rather than relying on just a lua hitbox. This means that it is possible to change the individual boo’s NPC code or run code over it in lua!
    • The entire new_npcs folder within the graphics folder no longer exists, since all other NPCs also have their files from there now integrated into their default sprites.

NERFING DRESS-UP

Beta 3 had a lot of costumes for every character. Looking forward, it’s going to be impossible for us to keep up with all of these, especially when new powerups get added in the future. We’re not throwing all costumes out, just the ones which are unlikely to ever see use anyway. In addition to this, Megaman’s default spritesheet has now changed from his 8-Bit design to his 16-bit Wily Wars design. The 8-Bit design was moved to a costume, in light of the 16-Bit one meshing better with the usual SMBX level. Our characters are subject to bigger changes, but most of these will come with Beta 5. Here’s a video of Megaman in action:


That’s all for today! Make sure to check your levels if anything from this is going to affect them. I’m gonna leave you with a video of Mario picking up ghosts from a boo circle:

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.

Things Going On in the Background

SURPRISE!

It’s been a while since the last blog post, aplologies for that. There are a lot of features currently WIP and approaching presentability, but nothing quite ready to be showcased. As we move closer to Beta 4’s release, I will post more blog posts as well, so stay tuned!

Today’s highlights aren’t exactly a recent addition, but I noticed they’re something I haven’t covered before, and they’re really useful features:


Background Object .txt files

The struggles of handpicking BGOs to be replaced based on dimensions and priority are finally over! Beginning with Beta 4, BGOs will be highly and easily customisable. Its features heavily overlap with those from NPC txt files. Configurable properties are:

  • width
  • height
  • frames
  • framespeed
  • priority

The only unfamiliar one is “priority”, which lets you set the render priority of the BGO. Here’s  a list of render priority values for reference. Yes, you can have background objects in front of the HUD now. Here’s how a level folder might look like with this new feature:

Oh, one more thing: Notice the highlighted item: background-53. Notice how it’s rather big, without having a .txt file attached. This is because the properties “width” and “height” are set automatically to fit the image’s dimensions! Adding large background objects can’t possibly get easier!


ParalX2: Magnetic Hustle

People often complain about the necessity in using lunalua to get anything out of SMBX2, and I’m happy to announce that these features are just the beginning of us making features more accessible.

People who’ve used paralx for a while might’ve struggled once or twice with setting all the layers up, loading the images, getting things to align well, etc…

Introducing ParalX2! Now you have to write no lua at all to get a really fancy looking parallax going!

Parallax configurations are now stored in .ini files named after the background which the config should apply to. Please note that Because Redigit there is a difference between the ids in the game and in the editor. Here’s an example of a paralx2 setup:

Looking inside, one will find many layers of parallax individually defined, much like a NPC config file:

And further down in the folder are the textures:

The result is a gorgeous and complex sky setting, accomplished without writing any lua code! Details on the configuration files will be publically available when we release Beta 4.


And that’s it for today, but I’m not quite done with looking at this level. Expect it to return in a future blog post coming soon. And now…

Rocky’s Cereal

You might’ve seen this video making the rounds, but I figured I should spotlight it in particular. It showcases enhanced camera and animation controls.

And I would walk 500 NPCs

Hey garners. While we chip away at bigger issues delaying the release of Beta 4 I’ve recently discovered that NPC IDs beyond 500 are being claimed. This doesn’t mean that all of them will be available next release, but it does mean that a doubling of the Beta 3 NPC count is closer than you might think! Over 100 NPCs have been completed and will be added to SMBX2 with Beta 4 at this point, and i figured I should show some more of them.

A new type of container

If you played SMW you will remember Mushrooms popping out of bushes on occasion. This “Hidden Mushroom” Sprite, as it’s referred to in Lunar Magic, was modified by me to serve as a container for any npc!

Original Enemies

Sometimes we come up with AI that enemies could have which don’t fit any specific enemy from existing games, so we come up with new designs and these enemies are some of the more unique ones in the game so far:

These enemies are called Blerts. They reproduce within a small radius and die when the core is killed. Rockythechao came up with these in the context of wanting to design an enemy simulating Conway’s Game of Life, and the regular blerts you see here were created as an alternative. In the future, Golblerts simulating Conway’s game will be added.

Grafs are small bats by The0x539 whose AI is determined by a graph function. This gif showcases some basic graphs such as a sine wave, circle, tangent and an accelerating Graf. Their electric variant is called Van de Graf and is immune to regular jump attacks.

New Bosses

Two new bosses have been added to the game! Fry Guy from Super Mario Bros 2 and Reznor from Super Mario World:

Other

The SMB2 set of NPCs has been expanded with Snifits that fire while held and Trouters. Pansers are older but I haven’t given them the exposure they deserve yet.

Lugi bullies babies.

That’s it for today! Hope you enjoy the news!

~Enjl

Hoeloe has eaten hER cereal THIS TIME. WHAT A LOSER.

Bringing out the big guns!

Hey gamers and gamettes! It is me.

Progress on SMBX2 has been a bit stalling recently due to many team members having important projects to take care of in their personal lives, so more regularly scheduled blog posts are unlikely for now. I’d prefer putting new stuff into a huge post like THIS ONE!!!!!!

MEGA THWOMPS

All of the thwomps got a facelift and they brought some of their buddies from the family meetup! In Beta 4 it will be possible to use NPC codes to give every id of new thwomps a personalised AI. Customise direction? Speed? Acceleration? Want them huge or mad? Combining these attributes can lead to some smashing results!

BOOHEMOTH

Another big boy joins the party! Boohemoth was introduced in NSMB2 as a stage hazard and now makes his way into SMBX as… a stage hazard! Here he heroically fights a green midget who is responsible for sucking all of his relatives into a vacuum cleaner.  The Mega Mushroom can’t save you this time, Green Mario!

KING BILL

Another large member of their family. King Bill serves as a massive obstacle and can be placed to face in every direction.

SKEWERS

These bad boys from various Mario games add an extra way to create treacherous hallways and compete with the mega thwomps in their desire to destroy all the blocks in their path.

SWITCH PALACES

Stretching the theme of the post a bit to describe the scale of an episode, on which these items will have a big impact! The switch palace switches come in four flavours but can be freely customised on a per-level basis to essentially have unlimited switch palaces in an episode! The IDs for the blocks toggled by them, their effect, sprite, and what data they save is freely configurable from a NPC code alone! The one drawback is that you’re restricted to 4 different colours per level, but that should hardly be a problem.

FLAG CHECKPOINT

The SMM Flag checkpoint isn’t physically huge, but it is incredibly useful in huge levels! Its special feat: It can be reactivated when the player returns to it! Metroidvania levels will now be able to place checkpoints at key locations and don’t have to resort to weird workarounds to make their length not frustrating to the average player!

 

So that’s it for today! I wanna say it’s not entirely groundbreaking but that’d be a lie considering how half of the featured items do exactly that. Either way those are some big tools for you to play around with in the future! Which one are you most excited about?

HOELOE’S CEREAL

View post on imgur.com

Until next time.

~Enjl

Spring Cleaning

Hey what’s up gamers?!?

Today I wanna explain some of the stuff that’s been going on that isn’t directly related to new features as much as it’s some cleanup and reworking of a very old feature, one that most of you should be familiar with:

Now, hold on for a second. Have you ever noticed the names of these categories? I stumbled across this a week ago and couldn’t believe how I miss(c)ed it for so many years! Redigit truly is a master at hide n’ seek! Jokes aside… the way these itemboxes are organised in SMBX is pretty bad. They’re slow to navigate and even more hellish when you’re working with anything custom. Now, PGE helps with that by allowing you to create your own custom arrangements of tiles, but it retains this messy layout. It’s time to change it!

But that’s not even the interesting part…

TILES

All the tilesets got a complete rearrangement to cut down on useless filler categories and have a more compact arrangement. The best part: They’re all in one place, so switching tilesets to place a single ?-Block is a thing of the past!

If you’re someone who likes to have their tiles on the left side of PGE (where you’d find the level itembox by default), don’t be disappointed! These sections are comfortable to use even vertically:

NPCS

NPCs are arguably the most common thing anyone would want to access when leaving their custom tileset. As such, the NPCs group is the first one you will see for every category. Here, enemies are categorised by there general theme or environment where you’d most commonly see them! Don’t hesitate to use them in other environments, though.

Some of you might know that 1.3 has two beach koopa enemies, one of which being deprecated and tucked away in the hidden “The lakitus are throwing lakitus!” tab. With Beta 4, some new npcs will join the lonely child. A new blurp with its SMW AI, and a checkpoint supporting multiple checkpoints in a level have already joined him, with more enemies to come in the future.

WORLD MAP

Of course, the map isn’t forgotten either. The interesting thing: while constructing these tilesets we came across four duplicate path tiles. We dug ’em out and put ’em next to the others, so now they’re free tiles for sprite replacement!

And that’s about everthing I got regarding the tileset rearrange! Let us know what you think. See something that’s been categorised wrong? Please tell us so we can improve these categories!

HOELOE’S CEREAL

See you next time!

~Enjl

Open the floodgates!

Hello there.

I heard you are screaming for news about new content? The NPC array was extended exactly a week ago (April 1st) and since then we’ve seen new NPCs daily. Here are some of them:

Oh, was that too fast? Don’t worry. I prepared a small level to showcase some of the stuff some of these new NPCs can do:

So yeah. Things are appearing rapidly and are a ton of fun to use. These enemies are all pretty self-explanatory. We’re trying our best to accurately recreate the source game behaviour of all NPCs. Regardless, there are a few things I want to take a closer look at today:

CHARGING CHUCKS

Probably the most diverse enemy species in all of Super Mario World is making its way into the game! Soon enough everyone can create football tournaments in SMBX. At this point not all of them are finished, but even now they are threat you shouldn’t underestimate:

SNAKE BLOCK

When looking at the path of the Snake Block, you might’ve been intimidated by how hard it might be to define. Don’t worry, though, as it’s as easy as putting down a platform track:

These arrows will be invisible in-game and move the snake block when it touches them. Here’s what this section looks like in action:

Yes, you can freely customise the block which an eater block spawns and eats! Want a castle where the lava moves on a set path? Very easy to do! I’m excited to see lots of eater block patterns in future levels. The possibilities are endless!

A BLOCKY DETOUR

The main focus of this post is NPCs for sure, but The0x539 has been working on some new blocks as well! They’re not inserted yet, but a great addition to any level’s geometry! Glass pipes!

ENDLESS POSSIBILITIES

Well… not literally, but still! A big focus of ours is to add interactions to the game and give designers like you a variety of things to do with all the objects added to the engine. We hope this blog post gave you some ideas for stuff to do with these early additions. If you’re interested in more, check out the claims sheet where you can track our progress, check what slots have been claimed, who made what and what npcs, blocks, effects and bgos to look forward to in the future! To end this peek into the future of 2.0 off I want to introduce a new segment to these blog posts:

HOELOE’S CEREAL

See you soon!

-Enjl

Worldmap Week™

Before SMBX 2.0’s development spirals into a massive vortex of new NPCs and bug fixes I want to talk a bit about the world map and how recent events made accessing it through lua easier for everyone. Yes, even you, Jimmy!

Spring Cleaning

While we don’t quite have access to things like new world map events yet, we rediscovered some undocumented classes while dusting off the shelves last week which have unfortunately been lost up there for a long time… Whoops.

You can play around with them in SMBX 2.0 Beta 3 right now, but make sure to get rid of the heaps of dust that have gathered on them first:

Tile, Scenery, Path and Music Classes for the overworld!

“Wait instead of minigames you’ll just forget about your engine’s features?” you might be asking yourself right now. Kinda. Unintentionally. The point is: they’re here now and YOU CAN DO COOL STUFF!

How cool? Well, a simple example: You can resize ALL THE THINGS! MAKING PRE-RENDERED WORLD MAPS HAS NEVER BEEN THIS EASY!  except for the past 14 months but we don’t talk about those

A peek into the future of world maps

While Beta 4 won’t bring many new things in terms of world maps to the table, it does add some small features such as checking the visibility of path and level items. We immediately put these features to use to bring to you travL.lua, an API designed to make the player automatically walk between levels and intersections:

Game: Return to Dinosaur Land by Valtteri

And that’s our unexpected world map chapter which nobody saw coming and everyone on the team is excited about. I hope you’re also excited for the creative things that will be done with these (re)discoveries in the future! To give you an idea of something more creative that is possible with these classes: A fully three-dimensional world map.

Until next time!

~Enjl