Day 24 – Mid Week update

Today is officially the 7 day mark.

Holy hell, that’s not a lot of time to get the last stuff done.

BUT, the last few days have been pretty productive, I must say.

  • Music is in, particularly proud of the main level background music manager that has a pool of music tracks and randomly assembles them together on the fly.
  • Removed a bunch of the debugging information and such making things run a bit smoother
  • The final (for jan) menus are in,  Figures that I finally grasp how Scene2d.ui and its components work..just as I get to the point where I don’t have time to do anything with it.
  • I got it so you can now enter your own Code to play your own custom levels.
  • Rounds of enemies are now defined by the editor and passed to the game.  This means that playtesting a level is as simple as hitting save in the editor and then hop over to the window with the game in it and playing it in the game…
  • And the BIG HUGE brand new website look for the main http://www.drakkheim.com/  site that will hold this and future releases. WITH video! 🙂

And here’s the remaining to-do list:

  • Final Levels
  • Sound Effect – Combat
  • Sound Effect – UI
  • Main Game – escape = pause and show back to menu button and quit to desktop button.
  • Gameplay – Balance
  • Optional Goals
    • Title Screen Image
    • Revise in game UI Look and feel
    • Make Android Playable

So that’s not so bad.

3 of 5 levels are pretty much ready. And with the ease of starting and stopping rounds now, balancing is easier.

 

 

Day 20 – Update

Whoa… so very very very close to being a real game.

This week I got, victory and failure implemented.

Graphics, monsters, particles, a revised UI backend and fun stuff

here’s a video from a couple days ago:

and Since then there’s been particles added, healing aura around the dragon egg and the beginning of playbalancing implemented.

Windows EXE:  http://drakkheim.com/files/Drakkheim-jan-20-alpha.exe

Mac / Linux Java Jar : http://drakkheim.com/files/drakkheim_jan_20.jar

if you want to try em.

Here’s the victory and defeat screens if  you don’t want to find em yourself..

defeat victory

Other than that This is my remaining to-do list for the Jan release:

  • Final Levels
  • Sounde Effect – UI
  • Website
  • Web to Game – Round Methods implemnted
  • Win Screen
  • Title Screen Image
  • Allow to play custom level
  • Optional Goals
    • Sound Effect – monsters
    • Revise in game UI Look and feel
    • Make Android Playable
    • Implement Music

Yeah.. that’s totally doable!

Ok Very very tired now and not very coherent.

 

 

Day 12 – Update

LittleButton

 Time for the weekly update!

Pathfinding!

Lots of new functionality got put in this week. The biggest of which is clearly the pathfinding which.. in all honestly was a pain in the butt but has been rock steady since I got it working.  The map on the other hand..  I must have re-re-rewritten chunks of the rendering for it so many times these last few days.  That and tile picking (still  a wip) have both turned out to be deceptively huge pains in the ass.  The primary cause is that the world coordinate system and visible coordinate system and the map tile grid are all different and finding out what correlates to everything else is a pain.

Luckily I seem to have it mostly sorted out for now.  Well except the map renderer… that’s currently working on a sheer brute force approach, so I’ll have to limit the map sizes in the Jan build.

Other notable features

  • Select creatures (indicated by yellow glow)
  • Buy new creatures by clicking gold wolf button in the lower left.
  • Track, gold, stage and Dragon Egg’s health
  • 2 Monsters (goblin and Orc) and they can move about.
  • Monsters can be equipped with better weapons and armor.

er they say a picture is worth a thousand words so here’s an annotated screenshot.

Jan13

Oh and here’s a couple of runnable Builds:

Windows Pc EXE > Here

Everyone  Runnable Jar > Here

Android…er.. it runs on my devices… however Im having issues getting the deployed APK file to work :-/

{Basic Instructions}

Click on stuff.  There’s no real gameplay yet.

Right Click and Drag to pull the map around.

Let me know if  it works

Next:

The rest of the weekend will probably not be nearly as productive :-/

However next up.   Invaders!  Collisions!  Combat!  Death!

But it’s gonna be close to see if I can get a functional game done by the end of the month.

Can’t say how much fun it will be.

 

Dangit.. noted for prosperity.

So a quick twiddle with the new goblin sprite for January

basicGoblin

Gave me a neat mockup of what the January game will look like 🙂

And I was happy.

janScreenshot

Then I added a shadow behind the goblin.

And that looked funny.

So I moved it up 1/8 of a tile and drew a flat plane below it to give a little bit of an isometric feel.

mock1

Well… THAT looked pretty neat.  But now the difference between the floor and the wall looks odd.  How about a little gradient to imply depth and ambient occlusion.

mock2

NOW we’re talking!   But now I’ve got to run those shadows all around.  And Indicate Terrain types.. and calculate all the possible corner scenarios.   (Which I know EXACTLY how complicated it was for ONE terrain type,  Here I’ll be having inside & outside (and possibly other) types as well.

febMockup

But man..  It really gives everything the look and feel of what I want.   Kind of an ‘anthill’ meets Dungeon Keeper feel.  

So here’s the part where I make myself sad.

 It’s not gonna be January.  Absolutely no way.

.. Maybe February (depending on the release of Spine) or March.  April at the latest, because I intend to be adding digging at that point and the map rendering needs to be pretty gelled by then.

Day 5 – Progress Update – MAP!

Drakkheim-Iconlogo

Well It’s been a good week for progress 🙂  I’ve got the html based web based level editor, saving to the database and shooting JSON encoded levels to the game proper.

The game loads screens and their assets based off of manifest files that are easy to update and maintain.  The ‘loading’ level shows a progress bar and fetches the needed assets for the next screen and makes screen transitions clean, simple and easy.

I’ve knocked out a basic Logo and Title Text  (seen above) and the core tileset is mostly there for the features I need in January’s Game.  As indicated above, the January game’s subtitle is ‘Invasion’ .  Focusing entirely on building and defending your dragon’s egg from the invading heroes.   I hope to have 4 levels to choose from by the end of the month. (and hopefully make it so you can play your own level from the editor)

Day5-SummaryThe game runs at a nice 5,450 FPS when not vsync’d on my desktop and a nice smooth 60fps  even on my POS T-Mobile myTouch phone.  (not sure how to unlock vsynch on android :-/  so i don’t know how much leeway I have)

Right click drags the map about on PC and a two finger drag on Android.   Overall I should be able to manage fairly massive levels without much overhead as it’s never looping the entire array just the elements to be displayed.  But the biggest bottleneck is probably going to be pathfinding…. shit I hate A*..

Which brings me to the next week’s goal..  Monsters and pathfinding.  (no animation this month)   Buy a goblin and tell him to go to a spot.   Maybe basic combat/collisions.

 

http://www.onegameamonth.com


 

Texas in August… yup still hotter n hell.

There’s something to be said for being slowly roasted alive every time you step outside… usually something along the lines of ‘you idiot get back inside, are you crazy???!?’

It also has the tendency to bake the willpower to do extra projects out of you.

So, in short, it’s been real slow going.  Consulting work is in full swing, however.  Lots of new and fun small projects.    Which got me thinking..

And then I had to grab a cold drink…

then I thought some more.

Small projects.  Bite size things.  Sexy, whiz bang, fun things.

So I’m making a list.  Checking it twice. Scratching out things that can’t be done in a week’s worth of the two hours of time I have after the tiny terrible terrific tot of terror passes out in his bed.

First up.  Project Ultrashow.   But as usual, paying work comes first.. so next Thursday looks to be the first day of available freetime.

 

Happy Easter – Week end update

Busy busy week.. all freelance debugging and we development..

So not much progress on the game.

  • Money rounding..  yeah.. lots of refactoring code.
  • Moving some more UI elements into groups so they render in the proper order and can be switched on and off.

Anyway here’s another beta.. # 7 now.

http://drakkheim.com/temp/BarnyardBonanza007beta.apk

Download Barnyard Bonanza beta #7

Barnyard Bonanza – Week End Update

 

Woo good Week!

New Beta 6!

  • Better Odds manager (you can see it by clicking the puzzle piece on the Main Menu)
  • Reworked tons of the Odds and Money manager backside so money should be handled better.
  • Implemented adMob ads 🙂
  • Got a good start on painting the home screen .. then did it again as photoshop crashed. (FML)
  • Made the loading screen handle screen changes and stuff magically.
  • Reels are generated a bit more realistically and auto re-factor every 100 pulls
  • Started getting sound fx implemented .. not working on desktop .. sometimes on android.. :-/

Here’s Some screenshots, a link, and a QR to the apk

Download the latest beta (006) here http://drakkheim.com/temp/BarnyardBonanza006beta.apk

Next up:

  • Turning sound on/off :-/
  • Get the Powerup Buying working
  • Maybe a mini game!

Android Deviations

Oops, meant to post last week’s Screenshot Saturday.

As pennance here’s 2 screenshots from the in progress Android game, that’s coming along nicely.

(yes Irismel is taking a little development break while I work on some of the mechanics in spreadsheet and paper form. The RTS elements weren’t working right. Now I’m leaning towards something a bit more Tower defensish)

 

Tools tools tools


So with an absolute lack of time to make any kind of forward progress until we all get settled into the routine of the new house, things are taking a little sidetrack from the ‘milestone milestone go go go!’ mentality for a bit.

That means two things.
1.  Character sketches, concept art and little paper mockups. Ie anything I can do not in front of the development pc.
2.  Tools development.  Little things that I know I will be needing, but don’t need to be dependant on the whole application to function.  Things like getting http://editor.irismel.com to export maps and support the little things I will need in my map editor, like monster spawners etc etc.  Also all the little widgets (button classes, text dialogs and so forth) and asset & option managers that I plan on eventually releasing
as a standalone jar file to help other java Slick developers.  I’ve got the javadoc of what I have so far up at iristool.irismel.com.

So lots of little things but no real time to sink deep into the development mindset for now.  But I should have some pretty pictures and scribbles up before too long.

Stalls, Inertia and Progress

I’ve followed a ridiculous amount of indie and small developer projects over the last couple years and watched them just peter out and vanish into the ether.  Hell, I’ve started quite a few that have gone the same way.. unfinished paintings, games, websites, etc.  So why does this keep happening?  What can we do about it?

Well.. It seems to be all about preventing Stalls and building Inertia to make manageable Progress.

Stalls

By ‘Stalls’ I mean it literally like a plane..  Sometimes projects get caught up on a glitch, bug or feature that is unexpectedly problematic or simply a massive chore to complete.  Then the motivation to work on it stops being fun and an awful lot like work.  That’s not a problem if it’s your day job, you can button down and just work through it, but for the indie developer who is doing this in their spare time, once development stalls everything else starts looking more and more interesting and exciting. The longer the project remains stalled the stronger the chance is that the project is going to crash and burn.

So here’s a couple thoughts on recovering from when your project seems to be stalling and the enthusiasm is waning that seem to be working for me.

  • in my task list, I keep several parallel development tracks.  So if UI development gets bogged down, I can simply just get it to a basically compiling state and hop over and work on something else in the project, like art assets , AI or path-finding.
  • but sometimes you just get sick of the whole project.   If you’re like me, you keep running across things/tech you want to try and work with, so keep a folder/binder/google doc around where you can jot down ideas for short exploratory exercises however it’s essential that they pertain to some shared functionality with your ongoing project.  So give yourself a day or two to work on it (like making a demo with a new api or skinning a UI library or something) Then force yourself the next day to IMPLEMENT it in your current project.
  • but some times you simply have to force yourself to sit down and bite the bullet.  Schedule some time, get away from distractions and simply sit down then work through it… yeah sounds stupid, but the ‘Schedule some time’ part is what makes this the hardest approach.  Which brings me to the next problem

Inertia

The fact that this isn’t a dayjob for many indies it means that life can sometimes turn the smallest molehil into a mountain, because Everything is a competition for your time, and the rolling rock of your project can’t go uphill very far on its own.  So we need to build up momentum in our project, make it feel like it has got a life of its own or decrease the amount of work it takes to get it rolling again once it comes to a complete stop.  Because, your time is precious and limited (even more so when you start having to work around a family life and maintaining a home) I tend to lean heavily toward the second approach, decrease the amount of effort needed for the next milestone.  I can imagine that the first approach would work well if you have a small team where everyone is all rushing forward together, so when one person stumbles the ball keeps rolling along and lets them catch up after their personal disaster has passed.  However I’m just me by myself so my tips lean toward:

  • Get your project compiling as early as possible.
  • Add basic core gameplay as soon as possible.
  • Build you milestones on that and make them each a standalone ‘functional’ improvement.

Because, sooner or later, something is going to come up and you’ll have to step away from your daily progress for a week or two, like children, broken computers, holidays, family vacations, household chores etc etc.  And when you come back to having time to work on your project you gotta hop back on the ball and be able to easily see where and what to do so you can get to that next ‘hey I’ve made something cool!’ moment and prevent yourself from stalling out.

Progress

Progress is king.  Progress also doesn’t like being kept in the corner. Getting your project to a point where you can shout out about your progress, via tweets to #screenshotsaturday, self serving blog posts like this, friends and family on Facebook, myspace, g+ or whatever is essential. Take pride in your progress. Get used to practicing saying in public that you’re working on something, have made progress and show it off.  Make it real to you and it will be that much harder to drop when the new toy sheen tarnishes and you have to spend a week debugging the text editor.  It seems almost impossible at times and the odds of actually finishing something really are stacked against you but it can be done.  And with great success.  MinMax did it over a period of two years,  CokeAndCode is doing it, RampantCoyote has done it,  all of them with keeping a dayjob, family and real-life’s responsibilities.

I hope to do it too.

[deleted a bunch of excuses for my lack of progress.. lets just chalk it down to life’s little mountains]

 

More UI work and little things

Yesterday was a down right beating and tonight is pretty much just simple recovery.

I got some basic Tool Tips in place for the various pc heroes health bars ,functions to manage and intialize them  and some general cleanup and organization of the whole game and level initialization process.

You know, it is kinda odd how many game tutorials, engine demos, books on programming etc etc that totally ignore the fundamental importance of getting the foundation right.  The basic core logic, update loop, memory management, debugging, maintaining player data integrity and all those un-glorious details even though utterly essential get just a few words here or there.   The best book I’ve found that goes into all those nitty gritty details is this Game Coding Complete,  By Mike McShaffry.. some of the content is out of date ,but oh my god .. it covers all the icky dull essential things that you NEED to know. [edit.. I only have the 1st edition.. he’s now on the 3rd]

Now a Lot of us are using 3rd party engines these days… (‘Im using TGB, Slick and flash mainly) .. and it’s easy to shrug it off thinking that it’s ok to rely on the engine to make the decisions about all the nitty gritty and dull as hell details.. and for the most part you’d be right.  However….  When it breaks, or you push it too far, or you try and do something ‘not according to best practices’  and you’re lucky enough to have access to the source (thanks GarageGames and Coke&Code!) you can understand HOW it works and how you want it to work and arrive at a functional compromise.

Anyway I’m straying from the topic at hand and I’m still trying to formulate the whole ‘Why you should build your own engine and never use it’, blog post.

So consider that a preview of sorts.

Oh yeah and I knocked out another GUI mockup.

Third Time tis the Charm

Ok, needed a bit of a fresh mental break from typing and numbers for a day or two so I started the beginning of the large pile of character protraits that I’ll need to make (somewhere between 10 – 50)   That’s the joy of doing things as an indie developer.. I can put on whatever hat I want to today.  Granted at some point I’ll have to put on the businessperson hat and then it’ll not be so much of a joy.. and when time comes to put on that 400lb steel and barbed wire hat labelled accounting I’m sure it will be no fun at all.  But today… today I’m wearing a paint spattered cartoony beret.

Oh and I also got a large chunk of the UI implemented.

Looks a lot like yesterday’s post?  Well it should.. except this one works and lets you scroll the map etc etc.