Tuesday, October 29, 2013

iwGameAds is back in my App

As any avid reader of this blog knows. I have become really frustrated by the lack of support for the iAd extension, and also with my inability to build a new library with a modification. So I have been wracking my brain now for several days (ok 2 weeks) as to what to do about this. My quick 1 week game dev is now into it's 4th week, and that is mostly because it is unreleasable without Ad support.

So last night I had a great idea... Why not simply do what I have done before use DrMops (pocketeers ltd) IwGameAds extension instead. I used this more than a year ago when I created HotChicksTheCardGame for Android (ok, I did it for iOS as well but got rejected). Now it has been a while and I am sure some of the Ad suppliers have changed the way in which they send data, which means I either fix them (not sure how), or I simply go with whichever still work. That at least is simply a trial and error job, and one fairly easily accomplished with some test code.

I will mention here why I so badly wanted to use iAd and not simply use a cross platform Ad system like IwGameAds. The main reason is I really wanted all my money to be traceable from one source. In this case Apple. As this has not worked out I will try to spread my App across at least 3 Ad networks to make sure I get as close to 100% fill rate as possible.

The downside of using IwGameAds is that it is no longer supported. So I will have to modify it to bring it up to todays latest SDK. Which isn't too bad in all honesty. Then I will have to find out which Ad providers are still working.

Ok, I'll look into this more tonight I reckon.

Laters
Da Voodoochief

Wednesday, October 23, 2013

Heroic Patterns design is ready

The next game design in my distilled gameplay series entitles 'Heroic ____' has been done. I know how I am going to implement it and everything. I am not however sure when I will start coding it. Mainly as there is not much point until I have Heroic Buttons done dusted and sent to Apple for their submission testing.

Whats holding me up?
Well two things, I need some final artwork which should happen real soon now, but the major hurdle and holdup is the stupid freakin annoying broken iOD iAd extension in Marmalade. I have now gone to the forums and asked (ok, nearly pleaded) for a rebuilt version with a fix in it. Until I get the iAd stuff working fully, I cannot really proceed.

I really feel I am hanging on, and am trying hard to figure out if there is someone I know I can bug about getting this rebuilt for me. Only I don't actually know anyone using Marmalade working on a Mac and could do this for me. It seems a bit much to ask someone in the local coffee shop if I could install the Marmalade SDK and the IOS SDK on their prized Mac.

Not sure whats next. I guess I'll give it a few days and then start hassling Marmalade customer service.

Seems so annoying and stupid to me. just fix it and rebuild it, gah!

G'night all,
Da Voodoochief

Monday, October 21, 2013

Marmalade iOS IAd Extension rebuild problems

I don't own a Mac, but I want to develop for the iOS devices. I look at a Mac as something I don't want to learn how to use, I mainly do not want the expense of one. It would be a very expensive toy for me that I would not use a helluva lot. Bit like my iPod really.

So Marmalade is great for developing for the iOS platforms from a PC, of which I have an abundance. So here I am easily developing my new game Heroic Buttons for the iPad and iPhone when I put in the iADs code. Which comes as an extension in Marmalade.

Now the extension is broken, it has been broken for a large number of years it seems to me, since 2009 I think I saw the first comment in a forum complaining about it being broken. Now my problem with it being broken is that the advice for fixing it is to go recompile the extension. Which has to be done on a Mac as that is where the originating SDK is. Sounds easy enough, till you realize I don't have a freakin Mac.

so instead I hassle my friend Paul and get him to download the Marmaalde SDK, then when we try to build the library/extension we get a message saying we need the ios SDK 6.1 or higher.. er... ok, makes sense. Lets go get tat. So off we go and 2GB later we try to install it, only we meet a problem, the problem we eventually find out is that the ios SDK needs Mountain Lion OS, and we are on Snow Leopard. GAH! We don't even know if we can put Mountain Lion on this MacBook.

What I don't understand is two things....
1. How come Marmalade have not got a recompiled fixed version of the IOS IAd library already?
2. Why is it that Marmalade do not offer an extension building service for their own extensions?

I am really frustrated and tomorrow I may email them and ask them what I am supposed to do and what suggestions they have for me to remedy this situation. The answer I am hoping will not be to go spend 1000 dollars plus on an expensive toy.

Good night,
Da Voodoochief

Thursday, October 17, 2013

Heroic Buttons Google search results

One of the most important things about choosing a name for your game is to make it unique enough to be found easily with a Google search. I have made the mistake in the past and named my games too generic and they are simply lost in all the noise when being searched for.

This time I may have gotten it right!

I posted the name of my new game on this Blog, I also pinged the Blog post out to a few blog update sites (I do this occasionally). I hoped to quickly spread the name 'Heroic Buttons' to the internet and of course the search engines.

Then about 4 hours later I searched for the name, and no, I did not put it in quotes to start with. I am excited to say that this blog post came in 5th on the list, which is pretty awesome when only aiming for the first page, and only a Blog post, not even a full reveal or added as a new game on my main Web Site. This is great news for me as I feel I got something correct. Hopefully this means when people are interested enough, they will easily be able to find me.

Laters all,
Da Voodoochief

Wednesday, October 16, 2013

Heroic Buttons is the name

Yep You heard that correctly. 'Heroic Buttons' is the next release from SorceryGames. It is a game busting with what I call distilled gameplay. No longer are you distracted by numerous graphics and massive audio creations. In this game you get right into the action as soon as the game starts up.

In fact when the game boots up you are on the game screen. No title pages to get in the way, no decisions to make about whether or not to see the credits first or read some story. That has all been removed in this title. Instead you get launched into the game screen and from there you can see several tabs on the top of the screen, these allowing the player to bring up the leaderboards or the achievements, or in fact information about the game (instructions and credits etc). The rest of the screen is dominated by 8 buttons, all of which are playable, but have different refresh times after being pressed. From immediately available to a 24 hour availability, there is a large range.

Once in the main game screen the player can easily play the game by pressing these Heroic Buttons that are displayed. The gameplay is simply yet oddly addicting. The idea was that people would try hard to get up the leaderboards and with several spans of time between button activations it should allow both hard core and casual players to participate and be competitive. Amazingly this appears to be the case. For myself I am finding it hard not to want to press these Heroic Buttons and simply make my score higher, regardless of where I am on the leaderboard. It is going to be interesting to see if this simple game, full of gameplay, addictiveness and competition can get seen in the market today.

Yes it will be Free, and it will be Ad supported. I am hopeful that this game could go viral, as I think it is just the right kind of material... and what games creator wouldn't want their baby to go viral haha!

I would have posted a picture of the game, only the artwork is still being finalized.

Laters
Da Voodoochief

Monday, October 14, 2013

iOS achievements wouldn't work

Oddly enough although I was trying hard to give out my achievements for the new game, they simply didn't appear to update. Yet I was getting the callback to hit and it said there was no error. How is that possible?  (I use the Marmalade SDK and the EDK for the GameCenter functionality).

I couldn't understand how this was happening so I decided that I needed to find more information.. time to debug.

As I run the game remotely on the iPad with no debugger connected I came up with my standard debug collation methods. This includes coloring the screen to various colors to tell me what is going on. Then I added some debug prints to the screen to tell me which function was the last one entered. Following that by another string of information of values used within that last function entered.

Oddly the printout and coloration was correct. For example:
The color was...
Green.. which meant success on the callback.
The last function entered was...
void cGameCenter::ReportAchievement(const char *_name, int _percentage, int _index)
The function information was...
name == "HB_A01"
percentage == 609
index == 0

Now as it happens that information is mostly correct, only one piece of it stands out in a bad way. It is impossible to have 609 percent of course. So I figured this was the issue. So I quickly found the problem..yeah, I had the divide the wrong way around, so that was easy enough.

So I tried once again after my percentage fix.

This time the information was correct. Yet the achievement didn't show up at all on Gamecenter. Most odd indeed. As all this information was correct I had to look for another culprit. As it happens the test app supplied with Marmalade asks for string input and uses that input to send to the achievement. I figured I should try this same method as it had worked in my previous game.

// test setup
const char* tmp = s3eOSReadStringUTF8("Enter achievement name:");
strcpy(name, tmp);
const char* valueStr = s3eOSReadStringUTF8("Percent Complete:",S3E_OSREADSTRING_FLAG_NUMBER);
_percentage = atoi(valueStr);
sprintf (gAchieveDebugStr, "name=%s, %%=%d, index=%d\n", name, _percentage, _index);
s3eIOSGameCenterReportAchievement(name, _percentage, ReportAchievementCallback);


 And I plugged in the same information into these strings that the function report told me I had entered earlier, but didn't work. Amazingly the achievement worked out great.. It Worked! What the heck? I couldn't understand what I was witness too. It should not have worked.

So this got me to thinking on why or how my real code didn't work. Well after much debate and reading of my code I figured it out.

The answer was the name string. I was sending in a
const char name[256] = "HB_A01";

And that didn't work. For some reason the string had to be on the stack, in the case that eventually worked for me, I simply copied my string into the local one declared inside the report function.

That worked... So after all my effort all I really needed was to put the name in a local variable.... GAH! there was no mention of this anywhere, in the help forums or the help docs.

Still I got it in the end which is what matters,

Laters
Da Voodoochief

Thursday, October 10, 2013

Marmalade Splash screens WTF?

It is amazing that a company like Ideaworks3D limited that is the company responsible for the SDK I use to develop my current batch of games with, can have a requirement with the type of license I have, yet fail in the handling of it automatically themselves.

I am talking about the requirement of the community license holders to display the Marmalade splash screen of course at boot up of the game/app. Here it is below so you can see what it looks like.

Quite pretty and normal for this kind of thing, after all the license is only 149 dollars.

The problems come when trying to make sure that this little beaut is up on screen at the correct time, and isn't corrupted in some odd way. I wish I had taken a screenshot of the iPad splash screen last night to show you just how messed up it could be.

There have been many problems with setting up these Splash screens, and they have varied depending on which machine you are trying to get them to work on, as well as which SDK version you happen to be using. So it isn't like Marmalade has not tried to fix these issues, as the way they change per SKD release shows some time has been spent breaking them in different ways. Here are a small sampling/selection of forum posts about these issues. So problems with orientation, of color of placement of scale of corruption and device are all represented in a mixture.

https://devnet.madewithmarmalade.com/questions/14590/mkb-splashios-launch-screens-broken-in-631.html

https://devnet.madewithmarmalade.com/questions/4016/why-i-see-made-with-marmalade-splash-screen-if-i-h.html

https://devnet.madewithmarmalade.com/questions/7212/splash-screen-surface-orientation-on-ios.html

https://devnet.madewithmarmalade.com/questions/2331/cant-get-iwgame-to-show-a-simple-splash-screen.html

I am sure this whole thing is rather annoying to the people at marmalade, who obviously want to get on making the SDK better in more important ways than the simple display of a splash screen at startup.

I have had problem since I changed to the community license because I simply didn't do the splash screen when I owned an Indie license (it was not a requirement). Instead I had a nice image in the credits people could even touch o go to the www.MadeWithMarmalade.com web site. So what to do about the broken splash screens on my iOS devices, well I decided I needed to update to the latest SDK, as I was on 6.2 and the current version is 6.4.1. The upgrade went well enough and about an hour later I had my new versions and indeed the Splash screes were fixed on both my iPod and iPad. Which makes me very happy.

Hopefully this is the start of splash screens working on all devices. from this version on. I can hope along with the community.

Da Voodoochief

Tuesday, October 8, 2013

Small App wants to grow

I am now working on my side project that is supposed to be a quick filler app/game. After spending way too much time coming up with a name and a theme I have finally got it going, or I did last friday night. I worked hard over the weekend on the game and am happy with what the game is.

Oddly enough I am finding that feature creep is trying hard to show it's ugly head. I really want to keep this title fast and sharp and to the point. A game with distilled gameplay ideas and implementation. I just find it amazing how much pressure my brain is putting on me to add a few bits here, or there to enhance the game.

NO I say! I will not be swayed.

I do not tend to suffer feature creep with my usual games. Maybe this is due to the fact that my normal games have quite a full set of features anyway. Whereas this game could be expanded in a myriad of ways.

Keep it real,
Da voodoochief

Friday, October 4, 2013

To Name a Game

Freakin eck! I canna believe how hard it is some times to name a game appropriately.

I want to name my new game something that concerns it's gamplay, plus a nice exciting noun. Only when I come up with one someone else seems to have already used it, gah!

There is such importance in the name and so far I would say I have spent several hours on it, maybe as many as 4 hours, and that includes research via the web. I have some ideas left, but they are now three word titles and I am not sure I want to have a larger name, simply because the large names are not displayed on tablets like the iPad under the icons. A nice short two word name is always displayed nicely, and fully.

I guess I will continue with my internal debate on this, but my code is getting to the point I need to setup the leaderboards and achievements.

Laters
Da Voodoochief

Thursday, October 3, 2013

New License, New game

While I am awaiting getting the graphcis side of Space Invaliens moving. I am going to do what I proposed a few weeks back. Get going on a smaller quick filler game.

After chatting with my mate Paul we have come up with several options of what to do and one of them excites me a lot. Enough that I started stripping down Space Invaliens to a base game setup so I can build on top of that. We have the idea and the graphics required are pretty simplistic and the game can be played by anyone. YES, just what I wanted.

I reckon the programming for this game will be approximately 4 hours, and to be honest, if I can be even double that I will be very happy. Now that time does not include setting up icons or the time I'll spend inside iTunes.connect setting up leaderboards or achievements. Still very exciting for me.

I also purchased my new 149 dollar Marmalade license as well last night. Nearly ready to get going again.

Laters all,
Da Voodoochief

ps. the name of the game was the hardest thing to come up with, geez! Thanks go to my daughter for getting a better one than mine!

Tuesday, October 1, 2013

My Marmalade License is running out

It feels like such a sad day to me. My license is expiring for the Marmalade cross platform SDK.

Why is that sad?

Well I remember all the good times I have had over the last couple of years using this SDK. Using to create a variety of different games for different platforms. It has been good to me and anyone reading this Blog will know that already. Sad to see it expire...

Does this mean I am done with Marmalade then? What SDK wil I be using next?

Well the truth is I will carry on with Marmalade, only I will go down to the 150 dollar version, as I feel the 500 dollar Indie license is currently too rich for my blood. One day when I start making some money from these Indie titles I create I will go back to that version. I do think that it should not be hard to make 500 bucks from all the work I do, yet it appears to be doing a good job of evading me at present. The next title releases will do better I am sure.

So tonight as my license expires I shall renew with a downgrade. Oddly enough there is no downgrade option on the license page, only an upgrade one. lol

Laters al,
Da Voodoochief