A New Layout – Iragination’s Responsive Site Theme

You might have noticed something different. Yes, Iragination is sporting a new site design. I rolled it out a few days ago. But maybe more intriguing was the fact that I kept complete silence about it during these days. Sorry about that, that’s just how busy I am sometimes. Anyway finally I can sit down and write about this recent change.

Portrait home page. 480×800

Landscape view 800×480.

Is this what have kept me busy since my previous update? Unfortunately yes. I’d like to tell you I’ve been working in something else, but I really don’t have a big update for Bass Abyss or something else just yet. This was something I had to get out of the way first, it was a pretty big deal to get it done so I won’t let it go as some casual change. I have to make a big fuss about it to feel better.
Read more »

Bass Abyss

Alright, I’m posting the current stable Bass Abyss game now before I get started with new stuff.

I might consider this just a maintenance update. There is a lot of going on behind the scenes, but unfortunately there’s no new visible content to brag about. Yeah, it is frustrating when some project announces some update and then you download it excited wanting to check the new stuff but the truth is there’s nothing to be seen. And then the developer goes, “Oh well, you see, we just did these important changes in the code base, cleaning some structures and decoupling some modules in order to get the flexibility to expand the platform and, bla bla bla. Also we fixed bugs and it is a more stable release”. And then you go, “yeah yeah, but where is the GAME, new levels, the new music, weapons, maps, enemies, songs? WHERE?”

I know myself I’ve reacted like this quite impatiently in the past. Not vocal enough to embarrass myself though.

And it is not really my style to post an update like this, but really, weeks just kept going and going, and I had to accept I was not near to finish the changes I wanted to do before working in actual new content. So I just decided to stop, assemble an stable release and post it online before, you know, breaking it again into some work in progress state. This should give me some time before I get too anxious to update again.

But if you’re really curious, here’s a list of the stuff that kept me so busy.

A new screen system. Essentially I got rid of a lot of time line based navigation. Now it is all code based.
Why? Well, I’m planning to add key configuration at Main Menu level, and not force the player to start a new game before doing this. For this I have to be able to show the pause menu that was currently visible during gameplay. But the code was too coupled. Actually it was a symbol in the library. Adding and removing tabs was out of the question. Also, I didn’ t want to duplicate this symbol just to have a “main menu” version. That would be a double work to maintain.

So, now to show the pause menu I went from timeline based:

to simple code configuration:

		var mc:MovieClip = Game.mcRoot.attachMovie("TabMenuView", "PauseMenu", RootZorder.PAUSE_DIALOG_LAYER);
		var vc:PauseMenuController = new PauseMenuController(mc);
		var items:Array = [new ControlsViewController(), new SoundViewController(), new GraphicsViewController(), new AdvancedViewController()];
		vc.viewControllers = items;
		vc.bottomNavLinkId = "PauseBottomNavigationView";
		vc.showMinimizeButton = true;


And now I can add custom tab names, reorder the tabs, add/remove tabs and a lot of other stuff that I probably won’t use, but it is there and it is working!

If you’re acquainted with IOS development, you’ll notice the syntax somewhat familiar. Actually it is, because I based it in their UIKit Framework UITabViewController. I use to check a lot of frameworks, Windows, Android, IOS, and I like to implement the ideas I like the most. There are even traces of Midp coding style in my code.

And since I was in a roll I decided to clean the same way the main menu. Take a look at this monster:

Cleaning this was so much fun. For this one I implemented yet another IOS navigation style based on a class called UINavigationViewController. Now, if you abuse it you’ll notice that you can go back and forward between screens.

Before, if could did:

Main Menu -> Character Select -> X Character Select -> Level Selection.

A ‘Cancel/Back’ action at this point used to take you back to the Main Menu. Not very friendly. Now you’ll actually see the previous screen in the state you left them.

The same here.

Main Menu -> Custom Levels-> Paste Code -> Character Select -> X Character Select

Each ‘Cancel’ will go back one screen. For instance the Paste Code screen will keep the pasted code you just placed.

Yeah, I know, I know, very little details, but I just love this stuff, and once I started to do it I had to finish it before moving to something else.

Which reminds me, I haven’t actually added the Key Configuration screen to the main menu yet. I’ll do it, eventually!

Well, now that Capcom has finally released Mega Man X2 for the Wii Virtual Console, I’ll have first a nostalgia play that surely will remind me a lot of stuff I had in store for Bass Abyss!

One Tap Dash

It was brought to my attention that on Bass Abyss the dash move is not cancelled when the Dash key is released.

I was going to notice that that’s how the game should work. Nevertheless I decided to check first, and to my surprise, in the Snes version of Mega Man X and Mega Man X2, the dash and the air dash are both cancelled when the dash key is released. I didn’t check any other more recent version.

So I started to wonder, where did I get the idea of the one tap dash?

Since this game started with Bass, apparently I took the convention from Mega Man and Bass. There, a single tap will make Bass do the whole dash sequence.

Then I started to test how the gameplay would be affected if I enabled the cancelled dash with X. While the experience got closer to the Snes version, I noticed some unwanted stress in my finger having to hold the dash key to get the whole dash sequence.

In the end I decided this should be an option. By default the game will behave as usual, a single tap will make the whole dash.

But If you’d like to turn this off, press ENTER to access the options page. A new setting called One Tap Dash is there where you can set it off. This setting will be persisted between sessions.

Here’s a picture highlighting where the control is located.

Well, that was kind of fast to implement. Lately I’ve been holding features in favor of usability changes. I’ve been devising a way where you don’t have to clear your cache everytime I push an update. It is in place now and it is experimental, so I’ll keep polishing it a bit more.

Have fun!

Bad Box Art Mega Man in Bass Abyss

Joke’s on you, Capcom. I’m releasing a playable Bad Box Art Mega Man before you. And it was ridiculously easy to do it. Who is laughing now?

To access him on Bass Abyss just select Mega Man and then Bad Box Art Mega Man. So, Mega Man is now a new page. I’m considering to move there the other 8-bit characters, just because the main character page is getting too cluttered. But maybe later.

And here’s the sprite sheet edit I did. Please don’t bash it much, I’m not very good at pixel art.
Original sprite edit. Do not steal.

This was a really quick hack. Don’t expect anything exceptional about this character. No new weapons. Nothing. I didn’t even made him an opening because this concept simply didn’t exist a few days ago. Seriously, writing this post took a lot more time than placing the character in the game. Consider this an anomaly in response to current events, but I’m done with it and now I’m back to my normal schedule.

I feel like writing. Would you like to read more about this?
Read more »

Bass Abyss 1.0.5

I just pushed a maintenance update to Bass Abyss. It is related with the First Armor buster. A memory leak that I had left unchecked and probably caused the game to slow down over time.

Recently I’ve been using a development system with better specs. That’s fine and all, but problems with performance are not easily spotted anymore. Now I’m really concerned about publishing code that will perform very bad on more modest hardware. I resisted to upgrade for a while for this reason.

I’m trying to find a solution that doesn’t require me to have another, slower pc next to me to test every time, sincerely what a bother. I could not see any problem running the game on this pc, nor in the quick tests I do in some other office very rarely, but I do saw the slowdown by accident when I ran the game on a virtual machine (Flash on Firefox on a Linux Mint VM). That’s not too bad, I’m actually fine with that workflow.

Um, now that I remember, there are some other bug fixes and balancing on First Armor X I did weeks ago. Sorry, a lot of little changes are made between distant sessions, I really can’t remember every detail when I update, but probably you’ll notice the little differences here and there.

As usual make sure to clear your cache to see the changes.