Gestures days 6-8

So I’m giving myself weekends off, so 5 exercises a week for 4 weeks.

I’ve started building out the thirtydays.club a website for letting artists do this same thing and share the results and earn badges for completing a challenge.  I’ve got a good 7 or 8 different challenges already planned out and the core guts (forum, social integration) is pretty much there already.

I hope to have the core platform up and running by some time in October.

Anyway here’s the next 3 studies. Continue reading Gestures days 6-8

Milestone 2: Week 4 – Finallly Fixed!

Finally got some time to dev last friday and Made Progress(tm) since the week before was spent rebuilding the pc.

The Maze Generator works!

milestone2MapI’ll need to increase the internal branching, it’s a bit too linear right now but that’s just a variable that needs to be tweaked.

Rooms now get harder and harder, the further in you go.  Next up is some minor UI tweaks and then a second enemy and that’s it for Milestone 2.  Just a couple months behind schedule.. but that’s the way it goes on top of real job, consulting work, children and a house to maintain.

 

 

Milestone 2: Week 3 – step back & leap ahead

In the funniest of ironies the advice that got me making progress by leaps and bounds this week came from me, as randomly re-tweeted by the 1GAM twitterbot.


And yet here I was wasting a month doing exactly that building a rocketship of an editor when all I just needed was to look for off the shelf parts.

Tiled EditorOne quick download of the Tiled editor (http://www.mapeditor.org/) and a quick peek at the raw file format reveals that it saves the files in XML.

A few hours later, and I have a functional loader which generates in-game rooms from maps saved from tiled.

Bulkify it and presto, all the levels are loaded automatically and the maze generator from week 1 now has a collection of rooms to choose from.

And so after a very long weekend, we’ve got a whole map being generated (ok so there’s still some significant glitches, but at least it’s loading it all from disk, generating a random maze and creating a bazillion prefabs from it)

milestone2-w3-progress

 

Milestone 2: Week 1 – Mappage Commences

Ok so we’re going to go on pretending February didn’t exist at all and here we are at the beginning of milestone 2.

Good progress this week (ok it’s been 2 days, short week)

No new playable build for a bit, there’s just a lot of groundwork to do before any of this stuff pays off.

“Just what is the big push for Milestone 2” I hear you ask?

Full game map generation and room editor.

This week I think I’ve got the maze generator 90% of the way there, it’s now generating a maze and throwing in some internal extra branches because the basic depth first algorithm doesn’t have a lot of internal branches for smaller mazes like BSDDoD will be using.

And secondly

I’ve got a level editor 75% functional, still needs to write the output files and have some sort of load capability. But it draws the level and lets you select and fill tiles.

Level Editor

Dev Update Wk4 – Details details

Getting closer to the end of milestone 1.

Lots of little details checked off, because I’m totally avoiding re-working the main character’s torso twist.

spider-reskinThe biggest work went to the spiders, they got a re-skin to something more shiny, can now do a jump attack which makes them much more of a threat, and make a nice splattery sound when they die.

The UI got a couple minor tweaks and so the respawn counter now works,  Still having some problems with the UI scaling seeming a bit odd but that’s not a critical feature.

Been playing with Shaderforge a bit but not having too much progress in getting a grasp on it.  Other than that, Spent some time trying to get a better look and feel to the overall game.  I added a player light and adjusted the global light to have bit of a different look and feel, but not quite what I’m looking for, but I think it’s a bit of an improvement.

Bsddod-M1-wk4

Milestone 1 remaining features:

  • Make music repeat properly
  • Fix player mouse aiming
  • Jucify player death and respawn.

Only problem is that there’s no more weekends, so it might be a bit of a squeeze.

And here’s this week’s Playable Build:

playbutton

 

BSDDoD! Week 2 – First (barely) playable

Bsddod-M1-wk2
It’s not much, but it’s an interface and it’s informative

Milestone 1, Week 2.

Well here we are, week 2.   Not  a bad week, progress wise, but never as good as I’d have liked..

This week I started cracking my head into the interface that is Blender, and walked away with a simple eggsack model to be used as a spider spawner (pictured below).  Maybe next week I can make it move.

The beginnings of a simple UI are falling into place,  when a room starts, the room title and the challenges in it (spider icon this month) appear for a bit, and there’s a kill counter and the beginnings of a re-spawn counter (shields).  Some odd issues with them not scaling properly sometimes, but eh.  That’s manageable.

bsddod_ss_eggsack
Look an Eggsack! Isn’t it cute.

But, the biggest news is clearly that the entire play cycle is in place,  player life, death, respawn and restart all appear to be marginally functional.

So to that end,  I’ve built if out as a Unity Web Player. So if you’re so inclined you can, try it here:

PLAY IN BROWSER

As usual, feedback/bug reports etc is welcome.

BSDDoD! Week 1

 

 

 

Milestone 1 is underway.

Pretty good progress this week.

The map generation is working, still needs a couple features, like designating spawnable locations and  corner pillars and an occasional wall offset being mangled.

The World Controller object is successfully sealing a room and starting waves of challenges (Milestone 1 will only have one or maybe 2 challenges to spawn)

The actual eggsack spawners are doing their job (no graphics for em yet tho, just white capsules)

The wizard character moves and shoots, but theres some issues with moving into the player’s bolts etc,  so the move and shoot stuff needs some significant rework.

Spiders die when shot! Eggsacks Die when shot!   need to make the impact have more ‘oomph’ and some effects but the functionality is there.

BSDDoD! M1-W1

I was hoping to get a unity wev playable up on the site this week, but there’s nothing really to play..Oh well Hopefully next week there’ll be at least a basic play loop in place.

BSDDoD! Reborn in 2014

BSDD0D 2014

The time to do this game has come.  So it’s gonna be done right.  No more Torque2D, Slick, or other homegrown from the ground, unproven frameworks.  Time to do it in something that’s got support, community, a track record and a workflow.  Aka Unity.  And while we’re at it, let’s make it 3D, physics enabled and extensible by the user to add new rooms to the pool of maze chambers.

And let’s do it as part of this year’s OneGameAMonth Challenge to keep focused.

BSDDoD-SS-dec-7-2013Oh and a list… let’s do a milestone list:

  • Milestone 1 – Single Room – boxes
    • Generate Room From Map File
    • Player Spawns
    • Move Player
    • Player Shoots
    • Monsters spawn in increasing waves
    • Monsters Move toward player
    • Monsters Kill player
    • Shots Kill Monsters
    • Monsters Drop Items (coins for now)
  • Milestone 2 – Maze Generation, Enemy Waves, alt fire
    • Basic level editor
    • Single path maze generated
    • Rooms have a level and determine waves spawned.
  • Milestone 3 – Powerups and Loot
    • Player attributes, health (shields?), Speed, Damage, Rate of Fire, second power manna
  • Milestone 4 – A wizard
  • Milestone 5 – Creatures – ? Alpha ?
  • Milestone 6 – Menu and Starting area
  • Milestone 7 – Decor and Juicify
  • Milestone 8 – More Monsters
  • Milestone 9 – Music and Sound
  • Milestone 10 – Weapons and Karma unlockables framework
  • Milestone 11 – Title Screen, High Score – Names of the dead?
  • Milestone 12 – Beautification of textures and new textures/models for deeper levels?

Candy Goblin mini project

Needed a change of pace so I’m making a quick one screen game for Halloween.

Basic gameplay is done, remaining features:

  • Witch power-ups- when witch collects 3 of a kind in a row.. powerups happen.
  • Display Score and powerup indicators
  • Display ads and between round descriptions.

 

Things I’d like to do..

  • IAP
  • Google Play Integration

CandyGoblin-10-19-13

UI and update

UI! That’s right, with a little love I managed to get an in-game UI working for the basic play button (shop does nothing yet)  I also got the fundamentals of the in-app options set up and much more, but it’s not really anything that you can see..

DragonCrash-Screen-Sept14-UI

After that, I went back and did a minor re-factoring of some of the War Mages  will have a few more changes being made this weekend for the beginning of the challenge/training levels.  I hope to have that ready for publishing next week.

And finally, it’s been too long but it was beyond time to just play in photoshop for a bit.  Granted it suffers from not having a reference and I really should re-work some parts, I’m pleased overall.

Photoshop scribble-sept-d4

That’s it for this week’s update.

A slice of DragonCrash

Whoo, I love me some 3 day weekends!  Here’s a video of what’s new.

New Features: (bulleted list version.. it’s late, sorry)

  • Basic UI and Touch controls  (it plays on android devices!)
  • Proper life and death cycle of dragon  (no animations or effects but the world stops scrolling and you cant collect powerups)
  • Terrain Attachments and the first exaple of it the Basic Tower
  • Powerups (Gold and energy) and a fountain system that sprays / tracks the physical Box objects into the world.
  • Beginnings of Spine to Box2D integration.. the dragon now has objects associated with it’s parts
  • BodyReaper,  much better garbage and body remover for the world
  • Collision System Controller, parses collisions from the world and ships them off to the proper objects as needed.
  • Collision Filtering, some things now no longer overlap and cause collisions with other objects of the same type.

Overall, I’m extremely pleased with this for less than a week’s worth of work.  (granted it was a holiday weekend and I got the lovely and understanding Wendeflonia to cover for me for the day from the kiddos and I got to spend 8+  hours on DragonCrash today)

More goodness soon.

A problem of scale…

So after a long 5 days of rebuilding, tweaking and altering things, I’ve finally wrapped my head around the oddness that is separating the screen size, world size , UI size and image sizes around what is clearly the ‘proper’ way.  Along the way, I’ve come to terms with the LibGDX Orthagonal Camera and the Box2d default renderer, all of which means in short english words.

I have a physics engine and an infinite scrolling dynamic world and I’m not above launching fireballs at it.

[Warning PLACEHOLDER ART!, you have been warned]

Seriously.. how cool is that 🙂 .. Hopefully I’ll have a complete vertical slice of gameplay by next week!

The game runs at 60fps on my old HTC MyTouch so far.. even when launching 10 particle laden fireballs bouncing across the landscape.

Now let me bore you with some details and gotchas that drove me batty for a while.

If you create your Box2d world and you just cant get things to move fast en0ugh, your scale is too big, there’s a hard coded limit in box2d on how fast things can go.

Now your first reaction is.. well that’s ok  I’ll just use the camera and zoom in to a smaller area.

And it won’t make a damn difference, because even though you’ve zoomed in.. Your physics bodies are still too big. and you’ve just altered the difference between the camera scale to the physics world scale.  You have to go in and change the size of things being created in the physics world and convert them to camera sizes.

Make yourself a Handy Static called something like  int PIXELS_TO_METERS = 32;  (adjust the scale if you need)

and divide all your physics values by that.

Good now set your camera to something like the size in Meters that you want to display (excellent Guide & Comment Here: http://www.aurelienribon.com/blog/2011/04/logic-vs-render-separation-of-concerns/ read the article and the 1st comment)

But now all your Sprites are GINORMOUS!

So you scale them with SetScale(float)

and then they disappear….

That’s because they scale around their Transformation Origin,  You can use SetSize(x,y) and it will keep the lower left point the same.

Here’s some other handy links that I found invaluable during this process

That’s it for now.  Time for some sleep and then hopefully adding collisions between the ground and dragon soon.

 

 

Flap mr dragon FLAP!

Ok kinda scatterbrained right now so, let’s just get back into the blogging spirit with a short list of accomplishments:

Had to rethink some mechanics.. but the controls feel SO much better now.

The actual performance of the dive and flap buttons are undergoing constant tweaking, but the sense of control is coming along superbly.

Screen scaling is working.. but the size isn’t right on smaller screens.  I need to re-write the system to always maintain a specific horizontal distance and let it just create blue sky on top of the world for the extra space.   BUT IT WORKS..

The game is working on Android 2.3 (HTC MyTouch)  all the way to the Nexus7 and Asus 10″, smooth as butter. 🙂

I’ve been using Symphonical as my SCRUM list and I’m in love!  It’s just super easy to use.

Collisions are in (if a little buggy) ,  Basic Box for the dragon and per terrain tile polygons.

The dragon is now a fully animated Spine character  (16 different parts all animated) and is just a wonderful workflow.. Export from photoshop and it’s instantly in Spine, then a quick export directly into the JSON objects with an atlas and then a refresh. and the changes are live in-game..

Dragoncrash-8-17

 

Next up:

A little more work on the dragon animation

Then time to start adding in some terrain destructables (also Spine actors)

Then some UI work.

 

Review: jQuery Game Development

Ok Book review time.

I generally read a ton of tech books, and decided to post some thoughts on this one.

jQuery Game Development


If you’ve got a desire to write games using the DOM and already familiar with basic javascript and at least some experience with jQuery then you’re the target audience of this book. If that sentence contains words you don’t comprehend then I’d do some additional reading first.  Decent understanding of html, OOP  and maybe having a smidge of PHP knowledge definitely won’t hurt either.  If you’ve done some basic selecting with jQuery and maybe implemented a plugin you found on the web or two you’ll be set.  But you’re gonna want to be not afraid of code you’ll be fine.  So it’s not exactly for everyone.. but if you are you’ll find a wealth of information inside.

Basically the book is a crash course in building a game framework from scratch.  The book , including animation, motion, building a game loop, loading levels and much more.  The examples are broken up into a series of short games. Each of the games explaining building up on a basic concept and explaining why it does what it does, and sometimes going back and improving on a concept from an earlier chapter.  It starts with frogger and winds up with multiplayer online rpg thing.  Chapters 1-6 are a great resource covering everything from basic sprites all the way up to isometric tilemaps and occlusion but then …

Chapters 7-9, however, go a bit off kilter.. 7 is a half-hearted summary of building a php database backend,  8 is for integrating with twitter and facebook and finally 9 mobile development.  All of which are simply too big and complicated topics to get a single chapter in a book and/or have nothing to do with jQuery.  And you’ll be repeated warned to never use the examples in chapter 7 in a real game.. which seems to pretty much defeat the purpose of the book.

Chapter 10, however is a great resource for all the headaches and pitfalls that are involved in implementing HTML sound.  In fact it’s probably one of the nicest summaries of the mess that is HTML sound that I’ve read, and how to implement it in the framework we’ve been building.

++ Overall, a lot of tech books seem to go into obsolescence fairly quickly, but the core knowledge in chapters 1-6 is going to be pretty rock solid for a long while and worth the price of admission.

++ Grammatically and logically the book is presented well with concepts that build upon each other.

+- Code samples for the most part make sense, however the author has a tendency to as he puts it ‘avoid typing’  so he abbreviates lots of function names which gets a little confusing

TLDR;

Good book, lots of useful jQuery implementation tips