• About
  • Gallery of Images
  • Archives
  • Categories
  •   LowRezJam – Report 2

    4/05/14 - 15:34

     

    LowRezJam Animated

    Some real progress in the past 24 hours or so πŸ™‚Β  Harvesters are now spawned in by pressing the ‘Z’ key – this is temporary for now, as I want to get a ‘build unit’ screen into the game. Β  This will spawn a harvester in the center of the viewport.Β  Harvesters also harvest now πŸ™‚ The harvesters have two stats associated with them, a tank ( which contains the harvested substance ) and health.Β  These are show on mouse over by two bars, the top horizontal bar showing how full the tank is, and the vertical bar showing the health of the harvester.Β  Once the harvester tank is full, it will stop collecting resources.Β  Currently there is no way for the harvester to lose health, but that is on the cards in the next few days.

    The health and tank bars were pretty awkward to do.Β  Initially I was going to use standard HTML5 line drawing code :

    ig.system.context.beginPath();
    ig.system.context.lineWidth = ig.system.scale;
    ig.system.context.moveTo(x1,y1 - ( ig.system.scale *2));
    ig.system.context.stroke();

    ( impact.js uses ig.system.context for canvas context ).Β  Alas, the drawback to this was the line it drew was anti-aliased, which is a big no-no when it comes to LowRezJam.Β  So I spent an hour or so playing around with ig.system.context.getImageData(); and ig.system.context.putImageData(); which ended up being a much better way of doing it, I could paint the pixels easily on the canvas to draw the bars.Β  I was drawing on the up-scaled image, so I had to create an array of pixel safe values, so that when the bars are filling up, they keep with in the real image pixel boundaries.

    I’ve also changed the way the map is generated now, and tweaked a couple of things, to change the size of the map ( it is now huge ) :

    Full landscape

    This takes the old 200×200 map, and now creates something 2000×2000 wide – the above screen shot is not even the entire world (click to enlarge) πŸ™‚Β  Stupidly big for a 32×32 viewport – but fun I think πŸ™‚Β  The tiny blue dot in the corner is a harvester, doing its thing.Β  A few more things I want to do today, but pretty happy with the way things are shaping up at the moment.

    lamentconfig

    Share

      LowRezJam – Report 1

    3/05/14 - 15:32

    So #LowRezJam is all about fitting a game into a 32×32 screen.Β  Sounds fun and potential painful at the same time.Β  I thought I’d post some progress updates to keep myself motivated and to give me some ponder time while writing blog posts.Β  I’ve had an idea I’ve wanted to do for a while, which is basically a simple resource harvesting game.Β  I prototyped some ideas a while ago, and have worked out how to adjust them to make them fit within the constraints of a 32×32 screen – some of the more complex functions I may have to drop, but it should still be fun.

    I’m using my goto html5 library, impact.js and the first test was to make sure that it would upscale correctly – the rules of the jam are very specific that everything must be in the 32×32 pixel grid – no half pixels when up-scaling.Β  impact.js handles this fine, so I stuck together a mock level to test scrolling :

    Initial level designThis worked fine, but building static levels like this struck me as a bit boring.Β  If in doubt I try and use procedural generation as much as possible so I decided to do that instead πŸ™‚Β  I tweaked the game to have to distinct map layers – the first one contains the desert environment, the second will contain the resources that you are collecting.Β  I used the diamond-square algorithm to generate some realistic looking desert and the resource layer.

    full tilemaps

    When combined, this looks something like this :

    combined tilemaps

    Pretty simple stuff for now, not quite happy with the look of it, but its a start.Β  I also needed something to actually harvest the resource, which is this prototype little vehicle I made :

     

    tiny miner

    30×30 for the full tilesheet – lots of unused space for now and easily the smallest tilesheet I’ve made.Β  Why on earth gimp says 1.1MB I have no idea πŸ™‚Β  So now, we combine these all together, and stick them in the 32×32 frame.Β  This initial prototype was just to see if it would all work as expected, so the harvesters just randomly move up and down and left and right, and the screen is scrolled by the arrow keys – this is the up-scaled version, next to the original size.

    image5

    And finally, for those who haven’t seen it, this is my quickly put together title screen ( not featuring text, yet ) :

    title

    Now to add some actual gameplay to it πŸ™‚

     

    lamentconfig
    Share

      The Roaring Silence …

    3/05/14 - 10:05

    Alas, being busy with real life stuff, my blog ( and gamedev ) has slipped a bit from my attention, which is always lame when your last post was last year. So this is me addressing this fact and getting back into the froodiness that is gamedev.

    I’ve worked on a few projects in the past few months, but nothing which has really seen the light of day in a release way – which is a terrible terrible sin for an indie gamedev to commit, which is one of the reasons I started this blog in the first place. Publicly stating stuff get things done πŸ™‚ So with that in mind, I’m stating for the record that I’m taking part in #lowrezjam. Which is a pretty cool idea for a jam where you have to make a game that fits that will fit inside 32×32 pixels. I’ve got a game idea I’ve been wanting to do for a while now, and I think it will fit this theme quite nicely, and be quite challenging to do ( how do you fit a decent UI within 32×32 pixels? only time will tell πŸ™‚ ).

    So this means in around ~15 days from now, there should be ( finally! ) a new game to play πŸ™‚

    Now to make this entry a bit more media friendly, here are a couple of screen shots from some of my WIP’s that I’ve been toying with in my spare time :

    Physically Simulated Tentacles
    Physically simulated tentacle monsters. There is a reason. I’m not going to say what until I get further along. Each tentacle can navigate using A* and can grow and contract as is required to manipulate obstacles. A screenshot doesn’t really do it justice – the physics produce some really cool organic looking animation

    Splat
    More physics, and blood! This was an early experiment with box2d and impact which resulted in many, many hysterical bugs. This game is actually game complete, but only has one level currently. And terrible programmer art.

    lamentconfig
    Share

      Lean startups and the indie gamedev

    13/07/13 - 19:05

    Making games is my hobby, dare I say, my obsession. However, like a lot of other indie gamedevs, I have a full time job. By day I work for a digital marketing agency. Recently, the company has started to adopt a set of principles referred to as ‘The Lean Startup’ – linkie to website here : http://theleanstartup.com/. I’m going to try and avoid using lots of buzzwords in this blog post as articles about Lean Startups seem often to have way more buzzwords than content πŸ™‚

    One of the central concepts of a lean startup is the Minimal Viable Product ( MVP ). ‘What is an MVP?’ I hear you cry. Well, simply stated : it’s the least amount of work you can do to get a product ‘out there’. By ‘out there’ I’m referring to getting friends, family, strangers, clients actually using your product and providing you with feedback on it. The general approach is basically a feedback loop – get feedback on the MVP, change the MVP to incorporate the feedback as cheaply ( time or resource wise ) as you can, release a new version of your MVP, get feedback on it, etc; etc;

    Think about it very much as step 2 in the underpants gnome great money making scheme.

    What I found really interesting about the concept of an MVP is its a methodology I use all the time without ever having thought about it – what do you get when you mix up indie gamedev with an MVP? You get a game prototype. Suddenly all those hours spent cutting out bits of paper and pestering people to play a paper version of game before starting coding made sense. Sending out desperate cries of ‘play my game! tell me what you think’ on social media wasn’t just me being devoid of social interaction – it was a viable business technique!

    I read every single bit of feedback I get related to my games like a starving man. I make a point of replying to as many as I can. ( Of course, not everyone gets a reply – ‘Your game gave me cancer it was so bad’, really doesn’t deserver a reply ). And, more importantly, I implement a LOT of the feedback I get, and along comes another version of the game.

    I’m now going to talk a little about how I used the idea of an MVP to build Wastelands.

    Wastelands, my most recent #1GaM entry, was built as an MVP. Initially when I was approached by a co-worker with the idea of building Wastelands, the phrasing of the goal was ‘a dopewars clone, set in a zombie apocalypse scenario, where you sell drugs to your real life friends, who can die in the game’. My first thought was yuck, zombies. As much as I love the zombie apocalypse scenario I think it is become more and more clichΓ©d. My second thought was, this is a really awesome idea minus the zombies so I wrote a little story about aliens. We refined this somewhat between us and got down to deciding how to turn this idea into an MVP. So, the major hook is having your friends in the game. But whats the best way to go about that?

    There are so many ways of getting your friends into a game these days, its almost indecent its not used more to bring interesting NPC’s into your game. Twitter, facebook et al all provides ways of pulling this data down. But working with with those techs is time consuming. We are thinking MVP. What is the laziest way of having this tech in the game without resorting to the full twitter/facebook implementation? ( ‘laziest way’ will probably be frowned upon by practitioners of the lean startup, but it’s exactly how I think of it πŸ™‚ ).

    It’s simple – the first MVP released was shown to co-workers inside the company. So with this limited audience, we found a global set of friends for the entire company – the board of directors. No need to worry about a facebook or twitter integration, no need to worry about any sort of online/offline integration. Simply an array containing the name of each director, along with an image.

    The feedback was good – the concept was interesting, though immediately we had to deal with the idea of a public release – the board of directors where all very good internally – but would mean nothing to anyone else. So we evolved the MVP and the next version of the game contained some text boxes at the start of the game that allowed you to put a friends name in, and select a sex – this allowed us to populate the world with your friends, along with a not very specific image of them. You can guess the next bit of feedback we got from the tests.

    ‘We want to see our friends instead of random NPC faces !’ they cried. Still with another MVP in mind, we looked for another lazy way to achieve this. The idea came pretty quickly. By adding an email address box next to each friend box, we could query gravtar and pull an image of a friend to place it in the Wastelands world.

    This was just one example of feedback and implementation inside the Wastelands MVP. There were many other things that came to light – resulting in a game which wasn’t exactly like our first vision, but one which had been developed hand in hand with players, with us able to drop and add features dependent on actual feedback. We had something viable that people enjoyed playing.

    lamentconfig
    Share

      Wastelands Beta

    12/06/13 - 19:24

    Introducing : Wastelands Beta

    A relatively simple Drugwars clone with an additional twist – your friends depend on you keeping them alive! Try and make money and keep your friends alive in an alien apocalypse scenario. This was written for last months #1GAM, but I’ve only just had time to do a write up because of personal matters πŸ™ The idea was first brought to me by my boss, who knows my passion for coding games. After several discussions, we had a story and some mechanics in place, and I went away to play with impact.js to produce a working prototype.

    After several internal iterations, Wastelands: Beta was born!

    How to play

    Story
    Day 1 – An asteroid crashes in rural Russia. Scientists go to investigate the impact site – expecting to be able to investigate the remains of the asteroid but instead just find a massive crater and no asteroid fragments. The impact crater seems to confirm that something massive hit the Earth – the scientists are at a loss and begin to examine the impact site in greater detail.

    Day 3 – After frenzied activity, the scientists discover two strange things. Firstly there appears to be small ( almost microscopic ) pools of some form of organic matter located in and around the impact site. Assuming these are some form of residue from the crash, the scientists call in biology experts to help identify the organic matter. The second thing is that the number of these pools seem to be increasing, as if they were coming up from the ground.

    Day 5 – Police are called to a small mining village near the impact site. On arrival the police make one of the most shocking discoveries in modern history – someone has slaughtered everyone in the village. The village has been ransacked – fires are still burning, and the streets and homes are full of gore. Bodies have been eviscerated, limbs are missing and there is not one living thing left in the village.

    Day 7 – Many of the scientists who involved with the initial investigation of the crash site have become deathly ill – blood tests show that their blood streams are swarming with complex and strange looking microorganisms.

    Day 10 – Another village, this time further away from the impact site has had its population annihilated in a similar fashion to the first village. Realizing it must be related to the impact site, the army cordons off a huge area around the impact site. Evacuating several nearby residences inside this zone, martial law is introduced. The scientists, now very aware the impact site is present a biological hazard implement Level 4 Hazmat containment along with the army assisting them. No one is allowed within 50 miles of the impact site without a biohazard suit and armed escort.

    Day 14 – Just after midnight, one of the army garrisons on the edge of the quarantined zone are attacked by groups of monstrous creatures, with three distinct types – one of which is employed as a shock creature, damaging and killing troops, another type which seems to hold back, and coat the ground with goo, a strange fog around it and the final type of creature seeming to be constructed from random body parts from the initial victims of the village massacres. The garrison is quickly overwhelmed by the sheer numbers of creatures attacking it. Several thousand creatures escape the quarantine zone before a series of carpet bombing raids are called in, destroying the remaining monstrous forces – reinforcements from other garrisons plugging the hole in the quarantine zone.

    Day 20 – The contamination levels near the impact site reach levels even dangerous for hazmat suits, so remote controlled drones perform a fly-by of the impact site taking photos and collecting air samples. The photographs reveal that the ground all around the impact site is now coated in a thick organic substance, and several spore/mushroom like structures have appeared, as if they have been grown from the organic carpet. The air samples reveal an even more shocking discovery – the very air around the impact is full of alien spores and what appear to be heavily mutated airborne human viruses.

    Day 23 – β€œThe Red Day” – many small towns and villages far outside of the quarantine zone are attacked by hordes of the creatures causing a death-toll at the end of the day in the hundreds of thousands. No event in modern history has been so full of bloodshed – so many lives lost in a single day. Social media websites fill up with information, hastily typed accounts, pictures and videos of these terrifying creatures and the slaughter they brought down on these unprepared victims. Army reserves are called in from all over the country – airstrikes are authorised on friendly civilian buildings for the first time in history.

    Day 28 – The armed forces are unable to contain the problem any more and all over the country more of these spore like buildings are being spotted, more attacks are taking place. The organic carpet spreading out like a cancerous growth. Towns and cities fortify themselves, creating walls and barricades around themselves, establishing martial law. The very air all over the country is now swarming with dangerous microorganisms. Every unprotected breath filling peoples lungs with unknown contaminants.

    Day 41 – Your adventure begins …. you estimate you have 30 days to create a new safe haven for your friends before the aliens overrun the current safe zones. Taking out a small loan to buy an APC you start to round up supplies and to keep your friends healthy before the end comes.

    Controls

    Mouse only πŸ™‚ Click on the red blocks on the map to move between safe zones, use the buy and sell buttons to buy and sell, and watch the prices! Every town produces and consumes different items, the key is to identify which and make as much profit as possible. You can upgrade the storage on your APC. Certain safe zones have your friends in them – they will give you hints as to what is needed in each safe zone. The more friends you save, the higher the score. It is VERY possible to get a negative score πŸ™‚

    It is completely safe to use your friends e-mail addresses on the page – check the source πŸ™‚ I’ve left it unencrypted so you can double check I’m not harvesting anything – the email addresses just call gravatar to see if there is a picture to personalize your game.

    If you have some performance issues – click on the static image at the bottom of the right hand side of the page, it will turn off the noise filter which should improve things greatly. Likewise, the speaker turns on and off the sound.

    Notes

    I will write more about this game in a following post – but Wastelands : Beta is essential a very simple and quick version of the game. Dependant on feedback its a game I really want to expand greatly upon this.

    The game can be found here : www.greenslimegames.com/games/html5/wastelands_beta/. You will need a modern browser to play it. If you find any bugs feel free to let me know! My #1GaM profile is : http://www.onegameamonth.com/BeeBug_Nic feel free to leave some fan mail <3 ... or not πŸ™‚
    The first person to tweet translate of what any of the number stations are saying will become an NPC in the next version of the game πŸ™‚ Though if your name is ‘HairyMonkeyScrotum’ I may choose to change your name πŸ™‚

    lamentconfig
    Share