Sunday, December 4, 2016

Another year winding down

Can't believe it is December already. AGAIN.  I thought I'd like to get at least one more journal entry in here before the year's end, so here goes..

Things are alright. Work has been super busy at my day job, it's actually been fairly exhausting. Not really left a lot of time to do earnest independent development, but I've kept at things pretty steadily in spite of that. I am actually pretty excited with my Headcase projects usually ("it's what keeps me going...") so it's to hard to conjure energy for it semi-regularly.

Only title that is seeing active development at the moment is my Hololens project, Starcrab.  It's been fairly slow since there's an immense amount of technical background to work through, and I am trying to keep on top of that end of things without biting off more than I can chew. It's really testing the limits of my development ability in some ways, which doesn't say so much as I am still fairly fresh. But it is coming along and feels very representative of my vision and that is a great thing. I am happy that much of the boilerplate of how the actual game logic works has been pretty well worked-out by now; I've been concentrating on building up the visual elements of the game and it's been just kind of a slog, but it's important to me that it presents well otherwise it won't make a mark. That being said, I've recently been doing some new builds with a huge ton of updated asset dumps in place and things are just really coming together. I put a demo video up on Twitter recently - viewable here - to show the state of things, but to be honest the video capture solution is nowhere near decent enough quality to express the true experience for so many reasons. That's all well and good, I just want to express some semblance of what I am up to, but it definitely makes it hard to get people excited when it is presented in such a fashion. I am not worried about it, for me it is important to show the black-and-white "here's what it actually does right now, and where I've got to from zero - to get the true impression, one will have to try the experience themselves."

And in that though, "when will the project be complete?" I am still aiming for the year's end, just a few short weeks away. That's close and it's rough, but I've decided to simply aim for a vertical slice rather than a fully-realized project of a larger scope. That being said, I can still pack it full of gameplay and features given that deadline. I don't think I will really be able to do a whole slew of differently-arted levels unfortunately, it just takes too long to do all of that. Depending on how things wind up, maybe I will continue past the vertical slice release, but honestly I am interested to continue learning/building tech from this project and getting on with something different.

I've been working in a special hololens-centric Unity beta and was happy to get a full upgrade to 5503f, which supports it natively and fully-integrated - but of course it's horrendously broke a bunch of important things, so I will stick with the beta in the meantime. And so it goes...

Meanwhile, lots of other things to ramble on about as usual. I am eager to resume development on other projects as well (the usual suspects) but just trying really hard to concentrate on a single project at a time for obvious reasons. I kind of want to carve out a little extra time to either wrap-up or even pick up the slack with a couple of the other things, but we'll see how it goes. I just really want to get the current project out the door so I can say "there, I finished something else" and be proud of the achievement.

Life is okay besides. Another year in Hollywood is wrapping up. 2016 was - well, it's been an interesting year for sure, but then aren't they all? Sure, some more than others. This year has had some particular ups and downs, no one can argue that. I think we all just want to put it behind us and move onto better times. Here's hoping..

Monday, August 8, 2016

Mid-summer 2016 update

Real quick, because it is late (almost 4 in the morning!) but I do want to at least put an update in here..

Hololens Development is going alright. I've been working fairly steadily on my new project, tentatively titled Star Crab. It's an augmented reality videogame where you control a little space-ship and fly through a huge fortress, dodging environmental hazards and confronting enemy ships. There's countless games of that ilk for decades now, but I've always been a shooter fan and this seemed like the perfect excuse to build one! The game is patterned a little off of the classic Zaxxon - one of the first 3D perspective games, ironically, and one very influential in my youth.

The production of the game has been quite a learning curve, and there's been numerous technical hurdles to deal with. Slowly but surely I've been crossing them off the list, however, and very soon it looks like I will be able to concentrate on asset generation as the tech backend should be more well-situated. I'll certainly be able to compile quite the post-mortem when this wraps up! I've been promising it for ages, and I can honestly say that a video is not long for release. Now thatmy major control issues are no longer giving me so much grief!

Otherwise, things are chugging along. All of the other projects are still on indefinite hold, I have a long flight coming up so maybe I'll work my way through the JumpBurger Android port during that time (if I am not just passed out!) I'd still like to release that game before year's end, but we will see.

Anyway, it's crazy to think how long this has all been going on, so many twists and turns over the years. I may not be in the forefront, but I am still working and eager to put more games and experiences out. They will come in due time, thanks for your support!

Tuesday, May 31, 2016

Ports and new devices!

Hiya bloger bros. Long time no speak. Maybe not as long as usual, but still. Anyway without mincing words, I'll just jump in as usual with general updateyness.

JumpBurger Android - as anyone who has been following this blog has noticed, I've been working steadily on rebuilding the port of the game. It's been slow going but I've been developing a good framework of tools in so doing, and learning lots of techniques (hint - this is my secret goal!) I had planned to try and wrap the entire thing up by late March or so - as it's obviously June in a couple of days, the deadline is obviously missed but that's fine with me. I've been busy with other projects and life in general, and that all means that overall other things have taken priority. But rest assured I will take the project as far as I can (planning to release it obviously!). I've been testing it pretty stringently all the while and it must have the smooth stability of it's predecessor, and on that front it is feeling quite successful. It's still lacking many key elements (no real graphics in there yet, other than placeholders!) but what I had anticipated to be some of the stickier points of the development have been handled, so I am very satisfied with all of that.

Blast Rover iOS - I was hoping to see this get ported to the iOS platform this year, but it looks like that is not going to happen. It's possible that I could do that myself. down the road, but probably a rather huge task and I'd prefer to spend such an effort on a different production instead. I've been looking into repurposing assets for other projects which, while sounding like a lame thing to do, is probably one of the better ideas I have had in recent memory and 99.9% of people would ever actually know or care anyway. So long as I turn it into something else that still looks cool and is fun to play, I am cool with that.

Hololens - I have recently acquired a Developer Edition and have been making some small projects for this new-fangled Microsoft device. For those under a rock, it's an augmented-reality visor that one wears, which effectively scans one's physical location and uses the data to overlay "hologram" 3D imagery into the space via the heads-up display. The effect is quite convincing, if still quite early and fraught with issues - main sticking point being that it is nowhere near as immersive as current virtual reality technology, which limits the effectiveness of the illusions. There are naysayers about these issues, but personally as it is still considered development hardware I consider it a reasonable state (and quite useful) as I'd prefer to have access to such hardware and begin figuring out development strategies and techniques NOW rather than wait for many of those issues to be sorted out down the road when there are a lot of other players in the field. Despite my tone, the takeaway should be that the hardware and overall experience is nothing short of miraculous and it's quite exciting in consideration of what is to come.

On that note I am working on a couple of small projects for the device, I'm intending to get something up on the UWP Hololens store during the short term. I've no experience with their market so a great many questions will need to be answered before I can figure out how legitimate a plan that actually is, but so far, so good. I've been successfully building to the device in a test environment so far, and looking forward to some bigger steps soon. Excited to get more material to share, if you would like to follow along than keep an eye on my twitter and facebook feeds.

Plenty of other things to say, on topic and otherwise -but it's late and would like to get a bit more work in, before calling it a night. Thanks again for reading, and check back soon!

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.