YATS – Yet Another Tile System

YATS – Yet Another Tile System

As the title says, here comes YATS – Yet Another Tile System for Corona SDK Graphics 2.0.

Why?

Because we like challenges, algorithms, and all that voodoo stuff. We needed part of this for a project, and as we knew there were already solutions out there, we wanted to try and make our own. Most important, we though we could make something different, an all in one solutions not only for tiles map, but even for levels made out of complex objects that do not use tiles.

Ok, but what does it do exactly?

It loads maps made in Tiled (currently) in Corona SDK, with optimization and (even more important) flexibility in mind. Tiled is a free and very great software available for both mac and windows that allows you to create levels made out of tiles.
YATS makes it super easy to load  a .json Tiled map in your project, loading all the layers of that map in a single group or, optionally, allowing you to only load a single layer of it, keeping layers in separated groups.
There’s no tight, close system,  you can do anything with that group as you would with any other group, without worrying about breaking YATS. It also already supports different resolution assets, for clean and crisp graphics on any device.

Sounds great, but what about performances?

We needed something lightweight and fast. In the below video, we load 2 maps, in two different groups, each one being 500×500 tiles made out of 32×32 tiles. That’s 500.000 tiles, or  256.000.000 pixels. We then move the groups with our finger, allowing for a nice parallax effect, all running super smoothly on an iPhone 4.
To top it all off, several of these tiles are actually playing an animation, specified directly in Tiled.
The limit is just the device memory, and you can make sure that you will always have a great framerate.

Is it free?

Unfortunately, no. We thought about it, and we almost did so, as we did with our other libraries, but we grew fond of it and we really want to fill YATS of features, and to do so, we need your help. Putting it out for free would’ve meant having too little spare time from our current work to keep ourselves afloat to make serious progress in a short period of time. We decided to keep the price on the low side though, at 15€  you will get the current version and any other update that will come out, like, forever. Plus a ton of planned examples that should get you started on any kind of genre.

Is there some kind of roadmap?

There is a roadmap, although not ready to be public. What we have in mind, and have already started implementing though, surely includes physics, helper functions for camera movements, active objects culling and pooling and much more.
Especially for physics, YATS 0.15 does something special. Instead of creating a body for each one of your tiles, it automatically calculates a single, bigger body that includes all similar tiles. This not only means less bodies in your scene, improving performances, but also completely wipes out the “stick to invisible edges” issues that box2D brings with it. But if you prefer to have a single body for any single tile for any reason, that’s 1 variable away.
Everything else we hope to know from you. Any feature you think will help your development, or that you really need, just Contact Us.

You got me, where do I get it?

You can purchase it directly on our website, here, using Paypal. After that, you’ll automatically get all YATS updates directly in your Account page.
In the upcoming days we will already start filling out YATS with loads of features,  so stay tuned for more info!