Tuesday, April 19, 2016

Android game development updates - Jumpburger WIP

I'll just post a bunch of updates, as usual. Still moving steady, if slowly!

SUN MAR 6 - SESSION 6, 6-9pm - spawning platforms when they are distant from top of page

TUES MAR 8 - SESSION 7, 12:19am -2am - trying to get "area collision by tagged object" (to sense when objects marked "platform" are hit)

WED MAR 9 - SESSION 8, 6-9pm - area collision by tag list, WIP. All tagged items (in this case "platforms" are put into a list which is then checked

WED MAR 23 - SESSION 9, 1:45a-3 - proximity tag check script mostly there

FRI MAR 25 - SESSION 10, 8pm-9:30 - fixing proximity tag check

SUN MAR 27 -  SESSION 11, 4-7pm
"floating-up platform" bug investigated and fixed, now it will stop "looking" for overlaps after it's timer runs out
snapped a bunch of screens from iOS and collaged together to help for reference

-snapped iOS pics to get sizes of platforms, burger, burger jump height, screen proportions. compared to Unity scene.
-added "offset" to platform re-placement, testing many times to make sure there are not distant gaps (which can't be jumped). It's not perfect, but more than satisfactory. Right now platforms spawn too low into the screen and you can see them move when they overlap, this has to happen higher up. Also jumping and landing on a platform needs to be finessed.

refining platform spawning (very close)

1am-3:15 ditto

spawn looks good, no more jumping and falling short of consecutive platforms. spawning and disappearing platforms are set to occur offscreen properly (as much as I have tested)

fixed box colliding & launching from the proper part of a platform - it was using "moveTo" and just needed to reassign to platform position + offset, because it was getting stuck in the middle of a platform sometimes.
Trying to make platforms bounce when hit. Can't use Animator for various reasons so trying to use coroutine to move them. I can get them to bounce down but not back up, yet.

working on bounciness of platforms.
Bounce is working, but not properly. The guts are there just need to be implemented better.
Made "don't bounce by object" and "mute all bounces" options
Animation needs to start more immediately when it launches off a new platform, also platforms will (sometimes) need to play animations when they are jumped off of. Maybe each will hold sub-gameObjects and toggle them quickly?

got the bounce working, but in a way I really don't like. It still double-bounces on some objects, needs to get fixed.

Tried to fix double-bounce by changing anim cube collider from "discrete" to "continuous" - this was not a good fix as it introduced different problems, reverted.

Still hitting some occasions where the platforms will eventually be too far apart, but it takes several minutes of play so not gonna sweat it for now, there's many ways I might be able to tweak it. I'll test some more after getting the bounce better.

It was "landing" too long and I was going nuts trying to find how to address this. Eventually I needed to enable "spam" on my playAnimator script, that fixed the bounce and made it immediate. The jump speed looks good, although the fall might be a little too fast, hard to tell since there's no upper bun to more slowly float down. The entire jump might be too quick, but it feels quite close to iOS.
(after some futzing) Jump feels pretty dialed in right now, between speed and height. side-by-side monitor w iOS, feels just about close enough so I will call it good for now (wait till it has ingredients!). The camera scrolling feels jerkier now, but I can look at that later.

Will have to test for bounciness (will run a few times before session ends - edit, bounciness is still there) and out-of-reach platforms.

Started making horiz sliding platform code. Early test makes funky things happen, I'll need to temp disable platform's collision when it touches JB maybe, but they were moving back and forth (no ease in/out yet) so that is a start.

JB can now "power" thru platforms when they are too close together, which looks bad. Maybe tweak the spam, or jump height.

Tuesday, February 16, 2016

Android game development updates

Continuing to document the port of my iOS game JumpBurger to Android. Rebuilding the game from scratch (code-wise) essentially, within the Unity engine.

- modify collision logic to check/act upon "above or below"
- put jumper under a new origin point; on collide, new origin can be relocated (to a specific platform)

- tell jumper's origin to relocate to last selected platform, put "move to" segment into actual collision script
-set up constraints so it can only lock to a platforms x, y, or z instead of only locking to it's full position (center point)
- fixed jumper rigid body so it won't rotate
- changed animation so jumper will fall farther than it will ascend
- changed collision script to look for object tags rather than specific named objects
- threw a bunch of dummy platforms into the scene to test consecutive jumping, it works!
- camera follow script - checks that camera is out of a specified range of jumper sprite, and
will move up a certain threshold to reach it. A little funky but 1st pass looks decent.
- 1st video test on device. Super simple but looks and feels right so far. Obvious debugs to look into: --make sure jumper is landing on platform properly ("thuds" a bit right now), also
--make sure it is on TOP of platform rather than in the middle, etc

yes it is officially technically "fun!"



- bugfixes as mentioned
- testing on weaker device
- random platform placement (instead of me manually throwing a bunch into a scene)
- simple scoring
- death conditions (at least falling) & game over


- different platform properties
- bad guys
- shell
- leaderboards
- graphics and sound FX
- item pickup

- - - - - - - - - - - - - - - - - -

Yes it looks very rudimentary but I am excited as this is my first solo port job. I am not just straight ripping off other people's code to build this, it's my own C# toolset (running from within the Unity engine). Making the tools as I go along, which will eventually give me a much better framework to build other, more complicated projects with as well.

Tuesday, February 2, 2016

2016 is a go

Happy new year everyone!

Lots to say but it is really late and I have just wrapped up a session. I am beginning to port JumpBurger to Android using the Unity Engine. The original iOS game was a collaboration between myself and My friend Dan at Billy Hugs, with me doing overall design/direction and asset creation. He did 100% of the coding within his own framework, and we worked together to iron out and iterate the game design.

This is my first attempt to build an app completely from scratch (not completely first, but for all intents and purposes) and I thought it would be meaningful to document the process here in my blog. As one would. I'll do my best to update in here every few days, as the project progresses.

I am going to use all of the original assets that I built for the iOS game,  and I have some simple notes that he has provided from his coding on that version - but for the most part I will just be eyeballing things to try to match the experience as close as possible, and hopefully to add a couple of features as well (leaderboards and such).

FRI JAN 29 2016 - SESSION 01
-1st session
-figured out portrait mode export
-found an acceleration sensor can that can detect motion, 1st export to device successful
-trying to get devices working

@2 hrs

-label printing to screen (XY numbers etc)
-clamp accel sensor to X, define warping bounds
-"reset XY to 0" touch sensor

-get warping bounds implemented properly
-simple jumping anim
-modify "mousepan" code to clamp (so I can drag in editor, to simulate device tilt)
-begin 2D collision & collision by name code between jumping cube & platform prop.

Wednesday, November 11, 2015

Turkeys of Thanksgivings Past

I am trying, really I am, to be more prolific on my blogging this year. To be frank, 2015 is probably the most verbose I have been in some years. Lots going on as usual, I will just jump in.

Development-wise, things have been super-silent. I have done a little research into porting JumpBurger to Unity (for Android release) and was semi-considering putting it out before the year's end. I'll be surprised if that happens, but it's not impossible that I might do at least a little work on it. Free time has been scarce, and I have a few other things that I'd prefer to wet my beak with; however it is appealing for a number of reasons. If it happens by next Spring I'll feel satisfied.

No movement on Trapdoor, and that's a shame because it's been frozen in development for like a year and several months by now. It's hard to feel terrible about it for many reasons, but I do like the game and would just like to wrap it up and see a release. The onus for that is really on me however. I will be honest I just miss working on games and it is rather tempting to throw back into that one and finish it up, it is a fun game and I would quite like to balance it into something I'd be proud of. I think of it rather often.

I peered through some old assets for GunHead recently - it feels shameful to think how many YEARS it's been since that game has had earnest development! I put in a lot of hearty work into asset and design work on that project, and still refer to it as "my dream project..."  For the mobile version at least, I am enchanted with the idea of handling the coding duties myself. Kind of a monumental task but I just think it would be extremely fun. I don't wanna go there until other things happen of course, but it is exciting to think about.

Anyway here we are closing in on the end of 2015, I feel very proud to consider that after so much time I have launched 2 separate titles in the past twelve months (and really, just about a month in between them). I am still quite proud of both projects, I think they look great and are just superior gameplay experiences. As usual I'll note that they made next to no money at all, this is a symptom of the marketplace and related factors, but I am not really concerned with that at this moment; I just like putting out great games and if people find and enjoy them, then all the better.  That makes me happy.

Work-wise, my day job is going along fairly steadily. As usual I could fill volumes with my thoughts about this subject, all things considered it's full speed ahead and I am pleased to still be working there. It's very twisty-turny for countless reasons (always has been), but constantly engaging and challenging me. I am always learning lots of new tech and concepts and processes and able to grow from them and use them and it  just always makes me thirsty for more. My favorite element these days is just getting steeped in C#, I am still quite new with it but it is very enjoyable and I just want to get some YEARS of experience with it behind me.

Something I may have alluded to a bit in this blog - as usual I am too lazy to check so I may repeat myself a bit here - getting to the other end of my 40th year now. It is always so sobering to type things like that. Especially now, I just weigh so many things in my life relative to where my mind was on such things before. Career - money - relationship - family - friends - personal projects - health - growth - the future, mortality, and so on and so forth. 15 years behind me in Southern California now.  I don't like to linger on much of it as it is just very exhausting to consider, I've been a very busy guy in my adult life and seen and done so much. At the same time I spend so many of my waking hours planted in front of a machine; I am starting to feel the wear and tear, and I don't just mean physically (although that's dramatically affected as well!) Am I happy? (Have I ever been?) I mean, in many ways I have definitely lived this privileged life, in others I feel like I have missed the boat on some key things and it maybe kinda late to play catch-up. I sorta wish I could just set the clock back 10 years ago, but then - I think of all that has happened in my life from 30-40 (in my little microcosm, as well as the larger world around me).  It is a little stupefying - I could NOT go through it all again. Couldn't I though? Would I just end up back right here where I am now anyway? Do I regret what I have become?

I guess no person is perfect - you try to do the best you can, we all do really. Some things are just easy and come naturally, the timing works out, the Universe (or someone in your life) throws you a bone and you get to level up a  bit, occasionally. And some other things, well the tend to beat you super-mercilessly at times, sometimes you get numb to it and don't even really notice or feel like you know how to react or fix it. Or you see it but as you get older - you just feel aggravated and drained, so you just let it kinda wash over you. You compromise.

I feel like this is sort of where I got with some of my personal projects at times, you realize that "ohh this game just HAS to get finished at some point" (notice how some of my projects, simple as can be still manage to take years to be completed!) For a time I honestly wanted to "change the world" with these games and just do that for a living. I mean I STILL do but in a very different capacity now.  It becomes the difference between "being driven to make sure everything is done just so" and "actually getting the thing polished up and release-worthy, and THEN putting it out into the world. The Cold, Dark, Unsuspecting, Careless and Largely Ignorant World, but whoever said I was bitter!!!! But yes. the show must go on.

Alright. Falling asleep. Some upsetting dreams flashing through my brain (I'm a bit anxious these days). Thanks for tuning in!

Thursday, October 1, 2015

Fall 2015 Update

Greetings heathens, it's been some time. As usual I regret not entering in here more often, but I am just not too much of a journaly guy these days. Too busy. Ideally I'd still like to hit it like once a month but... ah well.. if anyone out there does read this stuff and wishes there were more frequent entries, pipe up and I will respond in kind. i mean, i see that I am still getting hits...! Someone out there looks at this site..

Well , first let's get the numbers out of the way. I've released 2 different apps this year, Jumpburger on iOS and Blast Rover on Android. Bother were in July I believe. Both were free, no IAP, ad-supported, and sporting little to no promotion on launch. Let's see how many lifetime downloads we've got for each.. in real-time..

Jump Burger (iOS) - 251 downloads worldwide (102 in America, 30 China, 12 Canada)

Blast Rover (Android - Google Play) - 112 (60 in America, 11 in Brazil, 5 in Russia)

According to admob (the only platform I use for ad revenue), I've earned $36.33 between all apps (including 180) since July 2014.

So there are some nice hard numbers for you, potential would-be fellow indie developers. Clearly I am not quitting my day job to do this stuff any time soon - but I have accepted my fate (for now) and happy, as a hobbyist anyway, to have some very fun games on the market. As for getting some more downloads? Well I would love that, and I am still sitting on some plans to enable that. To wit:

Blast Rover iOS will (possibly?) launch Q1 2016 or thereabouts. I've been sitting on my promotion of the game, in spite of the Android version being available for some time now, until that version is ready - however given circumstances, I might jump the gun and switch things up one way or another. I might do that before the year's end, but we will see. Also, I'd like to get this game released on the Nook, and I keep neglecting to discuss with the programmer, I should hit him up after I finish typing this. Nook actually generates more sales than anything else, at least in my previous experience.

Jump Burger - the iOS programmer gave a DL goal of 1,000 before agreeing to work on a patch (leaderboard support, at least) so I am expecting not to hit this goal for a very long time, if ever. However I am strongly considering to produce an Android port myself in the meantime. Hopefully by the end of the year, but I can't say how likely that is. But, I'd really like to.

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Well there's the state of things as far as post-release and immediate plans to pursue in the coming months. Nothing super-terribly exciting, I agree, but considering it's been years since I've launched ANYthing and now I have 2 new (good) games out there, and looking into porting them both in the short term, I'd say that's not too shabby - development-wise, if not business-wise.

I've been awfully busy with my day job, and finally I have spent a lot of time tooling around in C# on a somewhat normal basis. I really wish I had started with that stuff years ago, it's not my favorite thing ever but I DO enjoy it and the feeling of building my own tools and seeing how to construct, fully, my own applications is a wonderful one. I'm a pretty heavy Unity head these days - in some form or other, I would very much like to release another app under the Headcase Games label that was put together by your truly. It makes me pretty psyched to say that. I think of my other unfinished projects out there and actually having the ability to build them as I see fit. That's pretty exciting to me, and I have a ton of ideas which are still waiting to be let out into the world. I have a long, lonnnnng way to go as a coder, but even at this early state I have the ability to make something half-decent (if laboriously and inefficiently constructed). So we will see. Like I said, porting JumpBurger by the year's end would seem a pretty solid goal for a first time project, so stay tuned.

I guess that's it for now, I have a billion other things to discuss (on-topic and off) but it's late and I have a lot of work due tomorrow, so off I go! Thanks for reading-

Sunday, July 12, 2015

End of the Road

Hello Headcasers! What brings you by this way?

Lots going on lately as life has been extremely busy for me. It seems nearly ridiculous to consider the fact that I am submitting 2 blog entries within a single month's span of time, right? (This, from a guy who used to write daily updates.. sort of).

Anyway, we finally released our second game this year (again, inside of a month!) as JumpBurger has been approved for sale on the Apple App Store. You can get it here - it is free, if you like it please rate and review, and tell you friends even. I'll be straight, the launch of a game is hardly ever easy  especially a game like this one. We got a good 170 downloads after three days (peaked on day 2, dropped off considerably on day 3) with shy of 200 clicks on the link provided above (not all DLs are through that link, of course). For a free game, with adMob monetization, that nabs me less than $3 in profit for a game that took a year and change to make. Worth it? Business-wise, not very much, but I have never really thought of this as a moneymaking proposition. The majority of referred clicks were through a Facebook promotion that I ran - I paid @ $27/day for 2 days. Now with all of that gone, it will be interesting to see if there is any leftover energy or if it completely dries up..

I have yet to finish my campaign (still building it) and if things were different, that would have been done by now, as well as a trip to Comic Con in SD (event took place during this weekend) to distribute, schmooze, and promote. That didn't happen for a bunch of reasons, mostly time and money. While I regret that, I also stress that I am just a guy with a job and some semblance of a life still. In all honesty if I did push to the 9s and try to accomplish all of that as well - WITHOUT cocaine, I don't know if I'd even have doubled my download numbers.

So what, then, to take away from all of this? It's a good time to be analytical. The takeaway is that the mobile arena is as harsh as it's ever been, if not substantially gnarlier than it was a few years ago (already a minefield, then). There's something to the tune of 500 apps released a week, or so, and trying to envision a real-world counterpart to that is like a Walmart the size of Downtown LA, and it's something like 300 stories high. Also, each app is the size of a deck of cards. And the lights are dim. You get the picture.

Other than that, I've had some reliance on social media to bolster my chances. Between twitter and facebook - I've spent countless hours building up & maintaining both - I see that they are mostly useless, as far as my utilization of them. Unless you have something particularly captivating to showcase, and do it properly in advance and with some kind of appropriate production budget, even the well-est of wishers will not be there to electronically high-five you on a low-profile product launch. "Why should they?" Well, there's the perception that the social networks are more than the merest of echo-chambers for ADD memes and hype-train and such - but unless you live and die by it, and produce constant product for consumption (of a considerable quality), then it's just almost like a big waste of time to expect anything from it. If one tries to do things surgically, of course more prper use can be made of such resources.

Where does this leave me? I've got 2 apps freshly out with not much revenue to show for it, and likely that's how it will stay for some time. I've got another app that I'd like to release in the coming months as well, with little expectation for a different result. I'm also considering to release some other smaller things before the year is up, if possible - and hopefully get back on track with "my dream project" as well at some point that is not too far off.

But WHY?

Because I love to do this. I love making games, good ones. The mobile and (some of the) indie markets are harsh environments, but there is still something very special about this place and what it affords a creator. Even with the crazy launch conditions, it is such a charge to see your own little project go out there into the world, see that some strangers are enjoying it, getting that feedback. Even if it is small, even if it nets you no $$ - and not even any goodwill - it feels good to put positive things out there in the world which might make people happy.

Would I love to strike it rich with this, get better feedback, get some bonafide support from the community beyond a couple of kind-hearted souls and close friends? Of course I would. Furthermore, is that reality even a possibility? Well, sure - we will find out, won't we?

Sunday, June 21, 2015

Light up, and let GO!

Greetings programs! A lot has happened lately, so let's just tear into it like savages, why don't we.

BLAST ROVER released on Android - yes this has finally happened at last. The game was begun in Q3 2012, and expected to release by the following summer. Well, a ton of things happened preventing such a thing, and the whole project wrapped up a good deal of time later. To be honest I've basically been sitting on it for a good 6mo now, waiting for a sensible time to release. Actually, to be fair it's a "soft launch" as the iOS version is still being ported; when that wraps up, I'll make some proper noise trumpeting the release of the game. Hopefully that shouldn't be more than a month out, but it's hard to say right now.

Anyway if you are a supporter of Headcase Games, please grab the game and rate/review on Google Play. And tell you friends to do the same! (I know, no one actually does this)

You can grab Blast Rover from Google Play here.

JUMPBURGER submitted to iOS - damn it is a hat trick! Yes, just this afternoon Dan and I went about the final sweep of testing/bugfixing and last-minute prep, and submit a build of the game to Apple. Unlike Android - which resolves in hours - Apple has a vetting process as many of you may know, and that could take weeks before we are notified if the game is ready for sale or not. Anyway at this point we are planning to launch around the 4th of July, if the stars align (get it??) Watch this space for more news as this develops, or Headcasegames.com for a link to the game when it is actually available.

E3 - yep the biggest annual gaming event in the world was held here in Los Angeles last week, and I did attend it, however briefly. In the past several years my E3 experience has been kind of erratic, for numerous reasons. I barely spent any time on the floor this year, and while I was there it was mostly claustrophobic and annoying, too many people! I actually didn't really have time to get around and see much of what I would have liked to, but I did hit the important things - meeting up with some friends, checking out Indiecade (however briefly) and of course distributing a bunch of flyers for the just-launched Blast Rover. That may have been in vain - for the moment - but all part of the show, and in fact it was still useful for me in the after-hours parties I attended which were just really good times.

DAY JOB - I am still at DAQRI, and it is interesting and going fairly well. I am finally trying to throw my hat into the ring and start attempting to learn some C#, which is way out of my wheelhouse - but very necessary. So we will see how that all goes..! I have lots of AR plans in my head which I want to spend more time fleshing out, hopefully I'll be able to show off some of that stuff in some capacity at some point.

SO - WHAT'S NEXT? Good question! I am still working on the promo materials for Blast Rover, which are currently presentable if incomplete. I've been living in that stuff for ages! But very proud if how that is all looking. Also, I will throw my weight back toward Trapdoor, which has been untouched for quite some time now but I'd still love to wrap up and release. Now that the other two games are mostly off my desk, I can put more energy toward making this happen. And remember GunHead? Yes well I still think about this game all the time, and the various permutations it's existed in. As I get further through code deciphering, well let's say now that I do have a project to start sandboxing with.

And you! Thanks for following along, please help out and spread the word about our games. It really means a lot.