Ask @zanzlanz:

Latest answers

Do you think getting add revenue from games is better than selling games??


It depends on your "business model": type of game, target platform(s), and target audience.

People aren't really going to question ads in web and mobile games, especially if they're getting a quality game for free. A lot of people are uneasy about purchasing things though, and will complain if something is priced higher than $0.99 haha.

But usually if you intend to make money from a desktop game, you may have to come up with a fair price that the players expect. In most cases, advertisements are simply unwelcome in desktop games.

Either way, many games will have options to purchase cosmetics, in-game currency, and... well, DLC. So it's totally possible to make a game for free, with no ads, but still make a good amount of money on a community, if the game is good.

Personally I love to be able to provide my games for free, whether they have ads or not. It means more people get to play it, instantly. This wont always be the case, but it's what I prefer.
Instead of making some features paid additions, ads are really simple to set up and don't come with problems of tracking transactions and dealing with insecure or lost credentials. Also, there are no worries about relying on a platform like Steam or stuff like piracy.

For fun, here's some considerations: There's also donationware games (Patreon is a modern way to make this work), merch-driven monetization, YouTube/Twitch marketing monetization, and even simply selling game assets or soundtracks.

So yee, it's definitely a case-by-case situation! :)
Default to what you're comfortable with, and build up on what is reasonable to sustain the game's resources and its development.

View more

So I code in Java(as a beginner). The whole point is, I know how to code in JavaScript and I would like to look at Haxe. So, I really don't know what to pick. My dad told me that Java is the best since you can make desktop and android games. However, now JavaScript has became better...


Considering Android natively runs on Java, you'll probably get the best performance with that. The big limitation compared to the other option I have is you can't make it a web game. At least until we see what WebAssembly can do...

Unity, Haxe, JavaScript, and ActionScript can all be used to make games on all the platforms you're interested in, so it's a lot about what is most convenient for you.

- With Unity you get an easy interface for making games. I don't like how difficult it is to control at a fine level though. It's too high level in a way. But the industry has really accepted it and provided tons of community support. If you're willing to work around the issues, it's a fine option.

- I haven't dug too deep into Haxe yet, but it does take a bit of research and learning to be able to support all the platforms you want. You'll probably want to use a library like HaxeFlixel to make creating your game engine easier (this is like the LWJGL of Java). However it's also based on ECMAScript, so if you know JavaScript well, it wont be too hard to pick up. I think this is a workable option for someone like you.

- JavaScript is great for web-based development for sure. But to make native apps there's a lot of consideration on a separate framework to support it. You can make cross-platform native apps and games with NW.js apparently. JavaScript might not be your first pick if you want to publish natively to platforms.

- ActionScript can make Adobe AIR apps, which run on mobile and desktop, as well as Flash for web. I'd say that the support is awkward, and probably not a good choice for making a complex game right now.

- One I haven't mentioned yet is GameMaker Studio! This is also capable to compiling to any platform you might want. I know pretty much nothing about this program, but the industry has benefited from some really great games made with it. Might be worth exploring!

There are pros and cons to each for sure. Hope maybe that gave you some context!
I'd say, either stick with Java, or check out Haxe, Unity, or even GameMaker. The other options are great for smaller games, but require you to have a different business model. Not sure if that's what you want ^^

View more

What benefits do you find between creating internet games(javascript, HTML etc..) and downloadable games(Java, C# etc...). You can run downloadable games anywhere but internet games only when you have internet. Also, I was told that android games are mostly java. So what are the benefits??


Of course, with multiplayer games, you must always have Internet, whether or not it is a browser game. So I'll assume this is all about single player games :)

Browser games can usually be run without the Internet being on. In most cases, a developer can release a desktop version with basically no issues. Specifically, JavaScript (HTML5 games) can run on all operating systems as a browser script or a desktop application, all modern browsers, on tablets, most modern mobile phones (in a browser and in an app). The same code is fairly universal, giving the biggest audience for a game developer.

Desktop games can usually only run on the platform they're developed for - Windows, Mac, and sometimes Linux. It takes extra effort and build resources to compile versions for mobile apps and web, if even possible.

There are a ton of exceptions to both of these of course.

One major flaw with web games is they are not as technologically advanced. Graphics support is really minimal currently, making games look bad and run slowly compared to what is possible with native desktop games.

Another downfall is it is often very easy for players to view and alter the source code of web games. They are more vulnerable from a security aspect, which is less of a problem with desktop games. This also makes web games rely on ads or subscriptions, because you can't really sell a web game if the source code can easily be seen.

So mainly, the way I see it is if you work within the thinner limitations of web and mobile technology, you can release games pretty much anywhere, as long as the controls still make sense ^^ just, you don't have super fancy technology, have to use small file sizes, and have to have a different revenue model.

Those are my thoughts about that topic at least :3

View more

I don't code in actionscript(I'm a Java guy) But I would really like to know, how you managed to get so far with mineblocks. Was mineblocks your first project?? Or did you start with more basic things?? Also, what are the advantages of actionscript?? Isn't it expensive??


Java's great! Have you tried LibGDX?

I was making games many years prior to Mine Blocks, it was not my first project. It was actually my 3rd attempt at making a block-based mining game. The two first attempts didn't result in anything, and they were somehow deleted from my computer. But the world generator from the second one became the basis of Mine Blocks. It's also where the spinning diamond on the main menu came from! :D

But yes, I made dozens of tiny random games before Mine Blocks. :)

ActionScript is technically free on its own. But if you want to code games within Adobe Animate (Flash), yes it is the price of Adobe's Creative Cloud subscription, which can be really expensive. You can make ActionScript games without using Flash though.

ActionScript is based on the ECMAScript specifications, so it is incredibly similar to JavaScript. It has explicit type definitions and formal classes. For a while I was saying it's somewhere between Java and JavaScript on the spectrum of language features.
In terms of benefits, it's so easy to make a prototype with it. There's basically no setup required to make a window, and there are so many right ways to use it, making it convenient, no matter what style of programming you like.

But right now I'd like to make games in either JavaScript (which owns the web and even mobile these days), or Haxe (which is a language inspired by ActionScript, that can compile to a ton of other languages and platforms). They have their own set of benefits. I especially appreciate how JavaScript game development continually improves as web technologies evolve. JavaScript is so flexible - I'm making servers, applications, games, and websites all withe one language... how awesome is that?

Oops, I answered way more than I needed to again xD! Hope it was interesting!

View more

I was looking through the mb suggestions page and have a few questions: 1 - When will hoppers be added?? 2 - Can you pls add the ability to place backdrops behind torches slabs etc... 3 - Rockets?! That go to the moon?!?! WHAT?!?!


Oh hey how did you find the suggestions page? I think most of the links where removed since it's disabled. :)

Anyway hoppers will be added during a dedicated redstone update in the future. First, all blocks will need to have separated logic and graphics, which will probably happen around update 1.31. So... hoppers might possibly happen after that update.

Backdrops will be able to have a separate layer once the world save structure is completely rewritten too. I was thinking this conversion could happen around 1.30 or 1.31 as well.

As you can see, rockets are labeled as a "cool suggestion" that can be spun into actual gameplay if done right. But there's no plans to add it currently. You never know though! Might be fun! :3

View more

I know I've asked in the past (iirc, it was on the C418 Discord) but I don't remember your answer; any chance of your own Discord any time soon?


Yeah, I don't know really, it's something I'd have to devote time to in order to set up and manage as well as I'd like.

Just haven't found enough free time to feel comfortable starting that.

I also wonder about making a separate server (not channel) solely for Mine Blocks users, but I know that most people on the Zanzlanz one would use it for Mine Blocks and roleplay too, which would be very difficult to split up and manage. :O

View more

In Mineblocks, how do you handle unique properties such as the bounciness on Slime Blocks, the slipperiness of Ice Blocks and different block hitboxes (such as slopes)?


Great question :D It's similar to the one I just answered before yours, about modding.

When block properties are general, such as name, color, material, and flammability, for example, they all fall under the blockData structure, which is a massive table of all blocks and items.

Let's take a pumpkin for example (hopefully this looks okay without code formatting):

blockData["pk"] = {
name: "Pumpkin",
identifier: "pumpkin",
tool: false,
mining: {WoodenAxe:25, StoneAxe:25...},
isWood: true,
pistonDrop: true,
flammable: true,
flamRate: 700,
shiftClickBlock: true,
placeable: true,
endermenCanChange: true,
color: "orange"

"pk" is the identifier I refer to in the code whenever I want to access the block data. I have a function (getBlockData(id, property)) that will retrieve the block's information easily and still handle any errors, in case a block doesn't exist or something.

But as you can see, each block can have a ton of properties, and it's super easy to add. I can set something to "stairBlock" or "halfBlock" and it will be treated like stairs or slabs for collision.

Now when the behavior of the block is unique, you'll often find it doesn't have a property. Slipperiness and bounciness haven't yet been converted to block data, for example. Currently the system just asks if the block underneath is an ice block, and if so, make the player (and mobs/items) slide.

There's a whole set of behaviors for each block that happen every frame. Or when you place it, break it, or shift-click it. These behaviors are currently scattered throughout the program, a lot of it being directly on a giant "block type" MovieClip which contains instances of all the blocks you see in the world. It's a mess, and everything will eventually be moved to the main code (that'll be in the two updates after 1.29, actually!).


View more

Will you add a modding API to Mine-Blocks 2 or 3?


Maybe!! It's a bit tricky to make an entire game data-oriented, but there's definitely a good level of flexibility with blocks, for example.

I'll get a bit technical with this, so sorry if it's confusing :3

As you may know, I'm still re-coding Mine Blocks to separate logic from the rendering, which makes it more data-oriented (think of it like... loading a simple text file to determine was properties each mob has, or what color a block is). Right now I'm doing this conversion to mobs.

Let's take skeletons and zombies. They're very similar, and run on the exact same logic now.
However, skeletons have "attackProjectile" enabled and "attackContact" disabled, and that's mostly how their behaviors differ. Skeletons can now shoot projectiles, while zombies can only attack by hitting you. This change is a simple thing that can turn on and off for each type of mob.
They also have different sound effects, animations, and item drops. These are just lists of data that can easily be swapped out during the game, making it extremely easy to "mod" the sound effects of zombies to sound like skeletons, or make all zombies drop 100 lemons when they die. xD
So essentially, a mod would simply be adding a new mob that swaps these various behaviors. It's totally possible to make a creeper that sounds like a wolf, shoots snowballs rapidly, drops diamond pickaxes when it dies, and is only hostile to spiders...

Apart from mobs, this type of system can be applied to blocks, items, player actions, visuals, and so much more. And as soon as you open these systems up for any player to be able to edit, you end up with a modding API!

The one huge limitation right now with a modding API is that it would not be able to support custom code. So, you couldn't make creepers do backflips unless it was officially supported as a mob behavior. If every aspect of the game could be generalized and dynamic, it could have a separate parser for modding which would be a "Mine Blocks Programming Language" in a way. This is what commands in Minecraft are turning into, and I intend to continue making commands more complicated in Mine Blocks to add similar features.

And maybe some day I can be able to get around these complicated limitations by porting Mine Blocks to JavaScript, which allows an "eval" function (it can run code that was passed to it as a text file, during the game).

These issues would apply to both Mine Blocks 2 and 3 as well. It depends what programming languages they'll end up being written in. It'd be really great to design both of them to be fully moddable - it's better to start designing that early, which is super helpful. Mine Blocks has been hard to work with because it was not designed to be flexible like that. With every update, it's been improving a ton though. xD

That was WAY more than you wanted to know! :D But hopefully it was interesting!

View more

Will slime blocks eventually work like minecraft slime blocks?? Like, making them stick(for the possibility of making missiles)??


I'd love for that to happen! I wonder what type of missiles you could make in 2D.

View more

I am just a fourteen year old kid who has known about your game for several years (Not necessarily active.) Originally played Mineblocks on newgrounds in 2012 I believe. After finding your website I made some comments on your posts and I am curious if it will ever be possible to read them w/replies.

Arthur S.

Oh! I guess I never thought of making a comment search feature for some reason.
Well currently, if you remember the post you might have left a comment on, all the comments are still there. ^^

Here's the last post in 2012: so you can navigate forward or backward in time (four nearby posts are shown below the text too).

I can manually search the database. Here are the two comments using the name "Arthur" that have responses: with the response:

If you want me to do a search for something else, send me an email :D

View more

Hi! I love this game ALLOT I even play it over Minetest sometimes. Probably more when you get multiplayer. I asked a question in your YouTube channel disscusion btw...


Oh! Thanks for reminding me of the comment - I couldn't figure out who asked about the teleport command, or where the comment was even posted xD

Basically, in response to you asking about the command, I rewrote the entire commands page on the wiki. Hope it answers all of your questions!

Btw thanks for playing! :D

View more

How many languages do you speak?


Just English, mostly! I took a few years of Spanish, but I probably understand no more than a 2-year-old would xD

However it helps when reading some of the things my Spanish and Portuguese speaking followers post.

View more

Would we be more likely to reach you via Twitter or here at


Both about the same - I get mobile notifications for both :)

I will usually see stuff quicker on Twitter, but I don't like to enter long chains of replies. Plus there's the whole tweet length limit thing xD

But for here, I try to answer most posts. I tend to take longer to get to it though.

Email is similar to here, except that I treat it with more urgency :)

View more

Any chance of a behind-the-scenes view on your code/project file for your various games (mainly Mine Blocks)? I wanna see how these things are structured, seeing as you've evidently gotten it down.


I'm *thinking* about doing a live stream this weekend to celebrate 10,000 YouTube subscribers... so maybe some behind-the-scenes can be part of it :)

All of my newish games and projects are all one code file, with no real setup, so it's not too interesting to show, but there are some neat things to talk about I suppose!

Also, just as a reminder: you can find the code for all my Ludum Dare compo games on my Ludum Dare profile.

View more

What did you dream about last night?

One of my dreams was that I released a Mine Blocks update before it was finished. When I realized how many things would break, I panicked and tried to undo the update xD!

View more

Do you use Perlin Noise for terrain generation in the MineBlocks games?


I don't! I find that Perlin Noise is too hard to fine tune and control for situations like seamless biomes, cliffs, and other very specific scenarios.

For Mine Blocks 1 it just keeps track of a slope variable and linearly traverses the whole world when it generates.

For Mine Blocks 2, each world genchunk (worth one biome of size, but encompasses half of two adjacent biomes) calculates a start and end height depending on the biomes (this is sort of like Perlin noise, sure). Here's what it looked like in its early stages:

But then, for the hills, it uses a stacking and removal technique I "invented" here: and first implemented it into this thing:

So I guess MB2 *effectively* uses one layer of Perlin noise and fills it in with a custom algorithm :D

View more

Are you planning anything with the mineblocks redstone system?


Yes, when the block logic is rewritten on the main code, I'm hoping for off-screen redstone updating. This is what is has stopped stuff like command blocks and daylight sensors from being implemented so far. So, HYPE!

View more

can you make full screen in mineblocks?

Antonette Mariano

I think so! I know there are some nuances with it (the version of Flash that supports it might not work on Linux, for example), but I'll be looking more into this soon!

I'll definitely want to have this working when the game is written in Haxe, because hopefully it wont blur pixels when using its native resolution (and it wouldn't lower FPS I assume). :D

View more

Will you change the way redstone works in mineblocks? For example, being able to make it run up walls? Will it be different than the minecraft redstone system??


I've definitely thought about stuff like this! Redstone is a lot more limited in 2D, so it makes sense to add this sort of feature. To me, I would feel bad abandoning the limitations of 3D redstone just to make it "easier", because I think 2D redstone has a ton of potential still.

So yeah, short answer is that I'm not sure yet! I think there will be a redstone update probably around 1.32 or 1.33?

View more

Why does it take 54 experience levels to get a max enchantment in Mine Blocks?

Sam Smith

It's not, but it's based on a random draw of 5 enchantments for the tool - then it picks the top one. It does this until it uses up as many enchantments as possible.

The highest costing enchantment is fortune 3 on axes (worth 38 levels for some reason). But most of the highest-tier enchantments are around 20-25 levels. ^^

This is somewhat because levels are linear in Mine Blocks (they are essentially exponential in Minecraft).

Hope that makes sense!

View more

Will it be possible to use the right click with haxe?

CriX UnLimited

Yes, because everything that is possible in Flash is also possible in Haxe! :)

View more

How many visits does Mine Blocks currently have?! :0 :D

CriX Unlimited

It's probably around 100000 visits a day, across all versions on all websites. :)
I'm not sure how many visits total though! Many millionz haha xD

View more

What qualities do you think are necessary to having a successful career path?

If you want to work for yourself, you should be passionate, adaptive, risky, and clever. Network with people who share your interests, and always seek potentially rewarding opportunities.

It helps to be able to know yourself well, so you can extract these qualities and improve them consciously :) You can't doubt yourself - believe you will succeed!

View more

Have you ever tried to make a small game but in the end the idea turned out badly and decided to cancel it? :0

CriX Unlimited

Yes, sure! Usually happens on the first couple days of development. :)

It happened a lot in 2013. But now I normally don't make new projects without a good idea about what I'm going to do :D
(like, none of these games were released:

View more

In the next update of mine blocks 2 will the worlds be deleted automatically after updating? D:

CriX Unlimited

Noo, I wouldn't do that!
If I had to, the worst I would do is drop support for the old files, and have a way for people to still play those worlds in the old version of the game. But I don't think I will even have to do that. :)

View more


About Zanzlanz:

I'm an indie game developer and music producer. I made Mine Blocks, and much more!

United States

#gamedev #MusicProducer