• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
  • entries
    45
  • comments
    25
  • views
    47862

Entries in this blog

kseh

You know... because of the undead, right?

Ok let's see here...

Stuff that was good:


  • Well first and foremost I had fun working on the game. It's the sort of feeling that reminds me why I love programming.
  • I was able to balance project time with real life time rather well, I think. Though I could've used more project time, I don't think I'd really have been able to find it without being completely irritating and useless for anything else for the entire week. By my estimates, I spent around 39 hours trying to work on my entry.
  • My wife was very supportive with helping me find the time to work.
  • I got my submission in before the deadline.
  • I like my game. Which is a first for my previous entries to game jam sort of events.
  • I found a couple bugs in my engine code that had been problems for some time.
  • I have what I think ends up being a cool new spell to use in other projects, complete with animations & sound.
  • Experiments with the hand gesture system went well.
  • I was lucky that Endurion shared where he got his music from. The background music I found worked well and I wouldn't have it if it weren't for his journal post.
  • I like that I was able to get a game together where a main element was "Shadows" without the use of shaders (my laptop video card just doesn't support any). For that matter, I think I'd be able to remove the small amount of alpha blending that I'm doing without much impact (although I have a few ideas to use it for some special effects with the shadow orb that might enhance things a bit).

    Stuff that went horribly wrong:


    • Nothing actually felt as though it had gone horribly wrong or had me stressed out or worried. That's not to say though there isn't a lot of...

      Stuff to learn from and look at improving (this kind of stuff was a fair part of my motivation for entering):


      • I was getting burnt out by Thursday. Fortunately, once I'd start working, I'd get back into the swing of things and have to force myself to stop. But as it is right now, I'm not anxious to get back to working on other personal programming projects. I'm figuring I just need a bit of a break.
      • I've only just gotten over the withdrawal migraine from the energy drink's caffeine.
      • An 8 year old laptop is very slow to compile things on. Nothing like tweaking a variable and waiting 1.5 to 2 minutes for the rebuild.
      • That same laptop does not like me to keep browser windows open in the background while programming.
      • I am not setup very well for any kind of rapid prototyping.
      • I have a lot of code that I dread having to add to each time I want a new actor type. That crap needs to be refactored.
      • Collision detection remains the bane of my existence. I do not have a good system for it at all. I'd love nothing more than to replace it with a nice physics system like Box2D but I'm not sure if my hardware can support it.
      • I was hoping to be able to rework all of my graphics. I recently finished playing "Ittle Dew" and I rather like the art style. I'd like to try to get some stuff together that resembles that style and I think that means that some of my graphics code needs updates as well.
      • While I might be able to continue lying to myself about my graphics skills, I have no ability to produce a song beyond playing "Old MacDonnald had a Farm" on my synthesizer and my synthesizer has not been functional for quite some time. Music really added to the feel of the game and I should look at working with someone next time.
      • I can lie to myself only slightly more convincingly on my ability to produce sound effects, but if I can accept the need for someone that's able to do music then I should broaden the scope of that need to include all sound work.
      • I had every intention of having a menu screen. I was all setup with TGUI to get that going but all I used it for was what started out as debugging text and ultimately became the score display.
      • I really need to setup my code better so that I'd have an easier time resetting the game on player's death. It should've been like one function call to reset the game but instead I was looking at another hour or two of work with the potential to miss resetting something.

        I'm not sure what my next step is gonna be. I have an unfinished tree control I was working on for my endless RPG project that I was feeling good about working on. I'd like to look at that art and graphics stuff as well though, I really wouldn't mind testing out Unity or something else to see what sort of issues it might fix automagically and for that matter learn something new. I tell myself I need a new machine before I get into stuff like that though. I have a notion of running through each of the old Experimental Gameplay Project themes for the sake of getting through a number of small projects and learning and evolving code from each one.

        I suppose the thing to do is think about that question that a marketing friend of mine asked once when I asked for advice, "What is it that you actually want to get out of your project?"

kseh

Kseh Woa Iv - Post 7

Seeing so many people with an entry ready to go is a bit intimidating. But it's also quite motivating. Congratulations to everyone that has their entry ready to go.

I spent too much time last night messing around with a spell charging mechanic that before I even started working I figured that I shouldn't look into and eventually in a half finished state I confirmed that it was an annoying inconvenience compared to just throwing orbs quickly. I wanted to get the player death animation in place before I ended last night but something seems to be preventing it from playing when you collide with the shadow hazards. I need to finish that up quickly and get the skeletons in there as fast as possible. I'm hoping that they'll be ok with a very basic move towards the player kind of AI otherwise the game is not going to be challenging at all. If I can get that stuff in then I hope I have time to get some kind of basic menu and other polish elements in. It's gonna be very tight.

kseh

Kseh Woa Iv - Post 6

Slicer said something about hoping that everyone is approaching the polishing stage of their projects. The notion that I'll be able to focus on "polish" seems rather wishful thinking at the moment but perhaps it's not entirely out of reach.

The player can now... I guess "evoke" is the word, a shadow orb into his hand and throw it. Currently, when thrown it seems to curve somewhat around trees, which is rather unexpected but actually pretty cool. I think it may be the result of some steering behavior code but I thought that I left that part out. I need to add one more small animation so that when the orb comes to rest it forms a pool like shadow on the ground that is a hazard to the player. Also, the shadow orbs, as well as everything else, need a bit of a shadow of their own for some sense of height from the ground so that there's a bit of an indication as to why it just seems to stop. When I have that in place, I should make sure the player can die from contact with the pooled shadow orbs on the ground. And then I can finally see about getting the skeletons added. Their AI isn't going to be much at all but if I get them moving towards the player and they attack in some way, then I do believe I have my main elements and something that resembles a game, for all its rough edges.

Screen3.png

In this screenshot, I didn't move the player while firing off orbs in various directions. The resting appearance will change by the end of the night. You can see the curve where the orbs landed. I had intended on making the player charge up the spell to evoke the orbs before being able to throw them but I don't think I have time to work on that and it's also pretty cool to fire off a bunch of them in rapid succession. Given that every orb fired becomes a hazard to the player (skeletons won't be affected by the missed orbs because... um... magic), I think I'm better off with the way it is. I'd like to try a charging mechanic afterwards though to see how it might look for other projects. It occurs to me that maybe the shadow orbs or the resting orbs don't look so shadowy. I'm hoping that I can get an effect or two in that might help and otherwise be convincing that what I have is a black shadow based magic as the main mechanic even if it's not what might be expected graphically. If not... well I've been having fun doing all this which has been as much my hope as anything.

kseh

Kseh Woa Iv - Post 5

I'm pretty tired and so I'm planning taking this evening off from coding and getting some sleep. Except I thought that I should post something so I thought, well I did some art stuff earlier today maybe I can throw a gif together quick. And now I'm a bit in the mood to try to get more art work done. Maybe just do one animation for when the player walks onto a shadow and is consumed by it himself. It should be similar to this skeleton death but the shadow should pull the player from below rather than spread from the middle.

Animation1.gifAnimation6.gif

(edit) Ok now, 30 minutes earlier is still "more" sleep and I still haven't done any coding but I'm happy with the human death by shadow and thought I'd add it in. (/edit)

I'm not sure if I like the shadow orb that I have at the moment. In the game, I want to rotate it, add some kind of alpha blending effect, and have it grow up to this size as a "charging" sort of mechanic before the player throws it.

Animation5.gif

I also still need something for when a skeleton attacks the player. I'm not sure what that's going to look like. Maybe just some blood squirting out or something. Which then implies I need a status bar of some kind which shouldn't be difficult but I hadn't though about.

As for code work, I found the teleporting issue last night was the result of some code from another project I accidentally mixed in. I removed that and was able to control the player properly. I can walk around the "island" now and the screen scrolls around with the player. The island need some more details and for the trees to get out of the water but my focus for the next bit will be on being able to throw an orb of some kind at a skeleton and destroying it. Then comes the hazards to the player. I'm hoping I can sort all that out with a marathon session tomorrow night.

Screen2.png

kseh

Kseh Woa Iv - Post 4

I'm slowly making progress but I think I'm starting to feel the weight of the work involved here. This project is on my mind quite a bit and it's starting to feel like a really long car trip. You can't quite take your attention off of trying to move forward and when a bit of a break comes you welcome it and don't really want to get back on the trail again except you know you have to make it to your destination on time.

I'm about to try and get some work done before bed. Earlier I was able to finally get some sprites on the screen. Basically, it looks like my mock up from yesterday but I don't have any skeletons functioning yet so the mock-up still looks nicer than the actual thing. It's good to be able to scroll through the world though and see the trees. I need to fix some kind of bug with the player character's movement tonight. For some reason when you set the destination waypoint the PC starts moving and teleports to, I think the top left part of the map. I can scroll the map to find and follow the PC who looks like is kind of trying make it to where the destination was supposed to be but then teleports again after walking for awhile and doesn't always end up in the same area.

If I can get that sorted out there also appears to be a matter with the collision boxes to look into which hopefully will make the trees solid.

From there, I would like to try and arm the PC with a shadow orb to throw so that I at least have something that I can call a shadow mechanic. But I'm not sure I'll get to that tonight.

kseh

Kseh Woa Iv - Post 3

Another night of questionable progress. Pretty much everything has just been trying to get things to compile. Find one piece of functionality that I want to use and that's dependent on some other code which depends on some other code and so on. I have been able to get the blank terrain laid out and some ability to scroll over the small world but that's about it for today functionality wise. I'm hoping that the other stuff I've been trying to add will get a couple actors in there soon and some trees placed so that there isn't a sense of nothingness. If everything does go ok I should also be setup to move the player around with the mouse and have skeletons walking towards the player.

I also tried to get some work done on a spritesheet. Still lots to do and at the rate things are going I don't think I'll be able to see about making the sprites bigger like I had hoped.

I'm a bit impatient to get something on the screen to show off so I threw together a mock-up of the kind of thing I'm aiming for.
Mockup1.png

Ironically, there's no shadows here at all and what I do end up with will probably be a baked in sort of thing. I'm hoping that the idea of using a shadow orb as a weapon and turning your enemies to shadows will meet the requirement.

kseh

Kseh Woa Iv - Post 2

I think last night ended up being around 6 hours work but maybe half that coding and the other half writing and trying to come up with some kind of idea. Basically, I have the various libraries and stuff together and built to a Hello World sort of state where I probably should've been the night before.

Like I figured in my last post, I'm gonna go for using Undead and Shadows. I'm thinking a basic 2D RTS survival thing with increasing waves of skeletons or some other kind of undead coming towards the player. The player defends himself by shooting shadow orbs at the undead which then upon impact "melts" the undead and leaves its shadow on the ground. If the player later on steps onto one of these shadows he will also melt and the game is over. And of course, if the undead get to the player they kill the player and the game is over. Probably need a life bar in there of some kind but I want to get these various elements in there first.

I'm a ways off of having anything really to show in the ways of screen shots. I'm hoping to at least get the tilemap stuff working and some kind of basic level built tonight. If I can do that then I'll take a shot and working on the sprites a bit so I have something to show off.

Best of luck everyone.

kseh

Kseh Woa Iv - Post 1

The twins are in bed and my work station (kitchen table) is pretty much setup. I believe the theme was announced about an hour ago and I'm very much unprepared. I had every intention of setting up a blank project last night but instead took on some wasps or hornets and couldn't get back into project mode. I'm telling myself that the aim of entering this contest isn't to win or even "just finish", it's really more to take a stab at it and just see what happens. Or another way it's in my head, "to see what I can see". (Whatever that means).

The theme options, as it happens, includes undead and I have a couple single frames of sprites from my RPG project. I'm thinking that I'll have to redo them a bit for size and maybe details but having that as a bit of an anchor is a nice way to start. As for picking a second theme, my instincts say "Shadows" but I'm not sure where to take that. It feels versatile though. I could maybe get some kind of ruin graphics together but having some kind of direction of what the game should be would probably be better to have than to worry about additional graphical inspiration,

For participation points, I'm hoping that my general ramblings will be sufficient. I ramble a lot as I code so I'm expecting that I'll be able to take some of that and copy & paste it here. Hopefully figure out how to do screenshots here quickly. I doubt I'll be doing much on it at all but, I tried popping onto that Discord thing and there doesn't appears to be any activity at the moment other than old posts. Probably everyone's either working on their project or asleep. I was able to take tomorrow off so I'm hoping that I'll get a bit of a jump on this thing for now. Maybe at least get some ideas and a skeleton project sorted out (no pun intended). Work resumes Tuesday and the twins will be up bright and shiny in the morning. So time management... I have no idea, I'm just gonna wing it.

SilviuShader posted some details about what he's working with, so I'll do some of that too. I plan on using:

- Visual Studio 2010.
- Paint Shop Pro - Ver 4.12.
- MS Paint .
- Sfxr if I'm able to get to any kind of sound effects at all .
- SFML 2.3.2.
- TGUI v0.6.
- Maybe use an old version of ANL from JTippets.
- A timer library that I don't have a name for.

I don't know how to describe the so called "engine" that I'll be using other than to say it's a mess of my own code that I've been piling junk onto for over a decade now. If I am ever to take making games seriously, I need to abandon it. But for just having fun working on projects, it works ok. Kinda.

One thing I've given no consideration to is making the final executable and all available so hopefully that doesn't end up being an issue.


Overthinking the whole team name thing. Gonna just stick with my original login name.

I think I've rambled enough here for now. Gonna try and brainstorm a bit.

kseh

RPG Project Post 12

I'm procrastinating on beginning the next thing I want to work on for my project so I thought I might as well post something here. Unfortunately, there's not really much progress that can be shown with screen shots or video. So for the heck of it, I thought I'd more or less just copy & paste the descriptions I have on my back up folders.

  • 2014-09-25 - Replace overworld array of Tiles with Tilemap object. (to help create basic house interiors)
  • 2014-10-01 - Tilemap stuff still in progress
  • 2014-10-14 - Mostly Stable
  • 2014-10-21 - Work on neglected Serialization code
  • 2014-11-07 - Fairly Stable
  • 2014-11-10 - Change Town object into Actor object
  • 2014-11-21 - Mostly working again
  • 2014-11-24 - Beginning NPC Instruction work
  • 2014-11-27 - Refactor instruction script code.
  • 2014-12-04 - Instruction labeling
  • 2014-12-12 - Scripting changes in progress
  • 2014-12-23 - Generally Stable
  • 2015-01-09 - More Collision Refactoring
  • 2015-01-12 - Collision rewrite in progress
  • 2015-01-14 - Collision rewrite looking ok so far
  • 2015-02-19 - Collision work
  • 2015-02-24 - Embedding collision issue appears resolved
  • 2015-02-27 - CollideTestStep1 Rewrite
  • 2015-03-04 - NPC Path finding and steering still sucks but is reasonably stable
  • 2015-03-19 - Begin Connecting Houses with roads
  • 2015-04-07 - Redoing House Connecting
  • 2015-04-15 - Houses now connect with fewer Road objects created

    The current plan is to get these Road objects all in place such that they effectively connect all the houses in a town to each other and also connect one town to another. When that is done I'm planning on having NPCs do their path finding based on the network of road objects rather than map tiles.

    I'm not sure how I got on this tangent but it appears that the direction I'm going is to try to get something looking like a busy town where the people wake up at home, going to work, maybe going shopping or to the pub, and then head home and repeat. There's still no actual game to this thing yet but I'm pressing on with the theory that if I can turn this day to day activity into a simple economy (probably centered on rent, food, and beer) then maybe adding in things to disrupt activities will provide a player something to do.

    I suppose if I really wanted to, I could just abandon the path finding stuff and let townsfolk wander stupidly and then carve out some caves underneath all the towns where demons and treasure could be found. I'd have something more resembling a game rather quickly. But I think I'd rather see if this plan that I have going will work out.
kseh

RPG Project - Post 11

Been steadily working on this RPG project an hour or two at a time and finally got around to making a new video. Though there's lots of stuff going on in this project, I still don't have something that can be called a "game". It's still just the PC wandering through a world where there isn't really anything that happens. Just the various features I thought would be fun to work on. The apparent responsiveness is a little slow between not having a fixed time step and having to do the video capture on an older laptop.


  • Added some birds and NPCs into the world. They don't really do anything other than wandering around a bit and generally giving you something to look at.
  • You can see my version of "Fast Travel" (I mentioned in my last post) when the PC is traveling along a road and those stars appear a bit in front of him.
  • I don't have any examples of trying to steer through forests but there's a bit of walking around NPCs and buildings. It still needs some work as steering only takes place when collisions occur but I'm pretty confident I can work out something better when I figure on investing the time to do so.
  • You can see a bit of what I've done with the hands (if they're not too small) in that you can see them swaying back and forth as the PC walks. They aren't directly connected to the sprites but are more like disembodied circles that follow the PC and NPCs around. The hands are capable of performing "gestures" when triggered. The only gestures you see in the video are the swaying of hands while walking and one that happens when the PC swings a staff around. It's supposed to be like a sort of reach and follow through sort of motion but I got lazy and used one of the test gestures I had previously gotten ready rather than properly doing up a custom one that fits better.
  • I'm not certain yet but I think combat is going to change from the little bit that you see in the video. I'm thinking about changing from the more action based style I have now to something that's more turn based.
  • Added regions and towns. (Started adding farms as well but they're not present in the video).
  • Houses and farms are placed somewhat randomly around the town's epicenter. An NPC is added near each house that's placed.
  • At a point closer to the end of the video I set off an "explosion" on a field of flowers, if you're wondering why it looks like a bunch of flowers just suddenly go flying. "Exploding" things was supposed to be a part of developing a spell of some kind which didn't go very far. But the functionality is there and I thought I'd show it a bit.

    Had a bit of trouble with SFML in that the (old) laptop that I do some of my testing on uses an old Intel graphics chip and there's been known issues. The problem I had was when it came to trying to do alpha blending to a couple different off screen buffers so that I could play around with lighting effects. It worked fine on the desktop that I do development on but not the laptop. The problem could probably be easily resolved by updating the graphics drivers but doing that sort of thing has been locked down by the laptop manufacturer and I haven't found any work around. So for the time being I won't be planning on doing anything with lighting in this project. It's a bit of a shame too because it seemed to set a mood when it did work.

    The past few weeks have been spent on trying to create towns and connect them with roads. So far I'm pretty happy with the results (screenshots below). The roads do this thing though where they switch back on themselves such that you get pockets of wide roads and this interferes with the fast travel that I have going. I'm currently looking at adding farms for NPCs to go work on. I want to do a schedule sort of thing where they go off to work and then return home or maybe stop at a pub or something. Maybe add a few other jobs eventually. I'm hoping that this will add a bit more life to the world and eventually lend towards creating situations for the player to interact with and do something other than wander around pointlessly.

    The regions were done using a Voronoi algorithm. I started out by finding points on my map that were 32 pixels apart from each other then applied the algorithm. The result was my island being divided up into square regions so I randomized the position of the points a bit and got a result like the one below with the small regions. Then, I choose a random point for where a town's epicenter would be and removed any points that were within a certain range and ran the algorithm again. And repeat the process until I've placed all the towns I want.

    (first pass)
    [sharedmedia=gallery:images:5509]

    (final pass)
    [sharedmedia=gallery:images:5510]

    (map blend with roads, buildings, and farms)
    [sharedmedia=gallery:images:5511]
kseh

RPG Project - Post 10

I have been working on this project now a year and a half. I wanted to post an update back at the one year mark but I kept thinking I need to include screenshots or videos to really show off what I've done. There isn't much that has come out of the past 6 months that could be shown with just a screenshot and I never seem to have the presence of mind to make a video when I have the resources handy.

Old code
The one year mark of this project would've also marked the 10 years that I've been working from the same code base.

My Code base's 10th b-day
So 10.5 years ago now, I started writing the code that I'm using now. Back then I was looking at getting some classes to handle 2d animations and generally try to keep things organized such that animation data, graphical data, and game related data for characters were all kept separate and manageable. For the most part, the animation class has changed very little over the years (changed from using arrays to vectors awhile back and just recently a change to support different animation types better) while the other two have evolved from one kind of organized chaos to another, spilling into additional classes and sub-classes.

Switching to SFML
One change that was long overdue I made last September and that was switching from DirectX 7 to SFML 2.1. If I remember right, DX7 was obsolete when I first started with it. But it so happened that I was able to wrap my head around the code I found for it well enough back then and all I really needed was to just get an image to the screen. And it did that well enough for my needs for quite awhile so I never bothered looking for anything else. Finally though I found with this RPG project I'm blitting enough things to the screen that it was really slowing things down on my target computer (which is also quite old). After a few attempts at trying to make things more efficient and looking around for options, finding out how much things would improve if I was taking advantage of hardware acceleration.

I went with SFML because it was the easiest to get working. Or at least, it was the first option that I got working. I found both SFML and SDL streight forward enough to get an image to the screen but I was unable to figure out how to make use of hardware acceleration with SDL. I would've experimented with an updated version of DirectX or XNA but I was limited by my dev machine. In the end, SFML was the easiest to install and see an improvement with.

Movement stuff
Most of the past 6 months has been messing around with movement. I already had a system for using A* that is working alright for me but there was other stuff to do.

Walking through forests.
Since my last post I've changed from using a keyboard to move the player to using the mouse. I did this because I like the fairly thick forests that I have in the game world (see video in previous post) and I want to have it so that the player can move between the trees reasonably well. It was just way to easy to get caught on a tree when moving through a forest using the keyboard. Some quick experiments with mouse movement showed that being able to travel at angles other than 45 and 90 degrees really helped. The path finding stuff that I had didn't have the resolution to navigate between the two or three trees that could be found on a tile so it took awhile to get a sort of steering behavior and path finding combination working to make travel through forests reasonable. It's still quite possible to get a bit caught on trees but I'm thinking trying to move through a forest doesn't have to mean flawlessly traveling to your destination without the need for changes in course.

Fast travel element added.
Before that got done though I was sidetracked by an idea I had for a fast travel sort of thing. I'm not sure why I started thinking of it but I figured if I needed such a feature I'd want to avoid having it like you teleport from one place to another. As it is, I've occasionally generated 1024*1024 or 2048*2048 maps to play with and walking around a world that large does get a little tedious. I ended up laying down roads from the center of the map to random locations using the A* stuff that I had to try and find a path such that roads are 1 tile wide and are laid down so that changes in elevation from tile to tile are minimal. Now, when a player is on a road and does a mouse-key click combination, a flood fill sort of thing is done down the road tiles to the next point an intersection is found. A path is then set to that destination and the player is moved along the road at an accelerated speed. This way, you can follow a road quickly without knowing where it's going and you can always interrupt the travel to go off road.

I don't really know if roads are going to play any part in whatever I end up with for a game but it was an amusing diversion and I can use the feature later if I choose..

Future development plans

Hands
When I started this project I was thinking the main character would be trying to learn magic from the ground up. So I wanted to be able to show hand gestures without having to create sprites for every imaginable combination. Since my main character is basically a couple minor evolutions away from a rectangle body with a circle head, I figured why not a couple more circles for hands that are sort of disembodied. Not worrying about drawing arms, I should be able to float these hands around in whatever pattern I need them to and hopefully get a versatile way to animate interacting in different ways.

So far I've just worked on having hands sway by the player's side as he walks. Still a fair bit more to do here that will take my focus for the next while.

Combat (lack there of and some planning)
Probably the main thing holding me back from adding combat into the game is that it seems like I don't have a reason for the player to fight. And that's pretty much because I'm not yet that sure what it is that the point of the game is. The slimes that I've added so far aren't aggressive to the player and I can't really think of a reason for them to be unless I embrace the notion of making a hack and slash sort of game. There's nothing wrong with that but it doesn't really seem to go with the other features that I've developed so far.

But awhile ago, somebody posted, I think it was on their journal, that they were switching from a mouse driven movement system to a keyboard one because they found that it provided a better overall experience when it came to combat. I'd link to that post but I can't seem to find it. Whoever you are, thanks because it made me realize that I'll be facing this problem too. In my case though, I'm not willing to abandon mouse movement because I want to keep the whole moving through forests element that I like. After thinking on how to do combat for awhile, I'm leaning heavily towards something where the PC is kept facing the mouse cursor and the player would press a key or mouse button to execute a melee attack. The attack will have a range that I guess could be described like a radar sweep of various widths and lengths depending on the type of attack. Anything within that sweep will be considered hit. I'm hoping that this idea will keep the pace of the action that I currently have.
kseh

RPG Project - Post 9

Sorry, I don't have anything "Awesome" to share. Unless you've been following my journal posts anyways in which case I have a video that I think is pretty cool. The video is basically a walk across the island from the northwest corner to the southeast. You can see the slimes lurching around and some fallen trees in places. No dinosaurs though.



For the moment the winter environment has been replaced with one that's more like the ground says it's summer but the trees say it's autumn. That's only really because I've been playing around with world gen a bit and this is where I've left off for now. At some point I'll have a proper plan for stuff like biomes and regions on the island but that's a bit away yet. Oh, and I feel that I should mention that the blue stuff that looks like water isn't really water (not yet anyways).

I should also mention that the map that's displayed for a few seconds at the beginning shows the general island shape and some vegetation features. It's not a part of the game yet but I thought I'd include it in the video as an environment overview sort of thing.

At about 3:38 I triggered a path finding operation on all of the slimes left on the island (about 250 slimes on a 256*256 tile world) and the game lurches for a little bit (I don't think it's so bad if only one or two were to path find at about the same time). The slimes all find a path to the player's current location and I display the path of one of those slimes using the fallen tree graphic. Once the path find is complete, I follow the path back to the originating slime. There's a couple spots that aren't exactly optimal that I'll have to look into. So, still more work to do with improving pathing but it'll do for the time being.

I still need to make a game out of this world that I just keep adding details and things to. I'm leaning towards having the player try and discover potion recipes (and maybe a few other spells) with the ultimate goal being to conjure a portal to escape the island. The idea at the moment being that the player puts a bunch of ingredients together and ends up with a potion but he doesn't know what it does. He has to experiment with it a little bit (somehow) to determine if it's safe to drink or if there's a proper way to apply it towards forming a portal or doing something else. Ideally I would like to make potion recipes random for each world generated but I need some sort of procedural way to generate recipes, provide a fun way to discover and experiment with them, and for that matter determine what the effects are supposed to be.

Sometimes I wonder if I should skip all the magic stuff for the time being, throw together a few more critters, drop in some treasure stuff and an exit portal somewhere and just release the game more as a warriors adventure sort of thing. I have a feeling that I wouldn't be as far off from finishing something like that. Then maybe look into the magic idea more afterwards. Potions, treasure, simple weapons and armor upgrades, maybe some survival element with food or something. Not sure what I'd do with the trees and flowers though.

Also of note, the frame rate isn't very pleasant on the computer that I do the video capture from. I gotta wonder how much of that is due to the the essentially 'brute force' coding techniques I'm using to get all those objects to the screen. At some point I'll probably have to look into doing something that takes more advantage of video hardware or just see about any sort of technique more advanced than the simple DirectX7 Blt() calls that I'm doing. Maybe join everyone in the 21st century.

So, the assorted stuff I've been up to this past month or so:

  • Create a pile of wood when a tree is cut.
  • Slimes leave piles of wood after colliding with trees sufficiently.
  • Spent some time reworking some collision code
  • Fixed bug where actors wouldn't do anything unless they're visible on screen.
  • Fixed up some animation stuff.
  • Worked on path finding code and related changes. Tried to make path code more extensible.
  • Worked on frame rate issue related to terrain edging. Better but not completely resolved.
  • Lamented poor redraw speed.
  • Experimented a bit with adding shadows to sprite bitmaps.
  • Experimented with enlarging the world (and related code changes to make it easier to do so).
  • Turned off seasons and temporarily switching to using elevation to decide biomes.
  • The 2048*2048 world with 32*32 pixel wide tiles took about 6 minutes to traverse from west to east.
  • Added code to output world map to bmp.
  • Turned various arrays for world map into 1D arrays to better support ability to change world size.
  • Worked on placing grass & flowers less randomly and instead try to grow "patches". (needs more work)
  • Removed the dirt mound I was displaying with grass and trying a shading on blade base instead.
  • Output vegetation map to bmp file.
  • Started getting concerned about memory footprint from all the vegetation objects being created.
  • Returned to 256*256 island size. Memory use turns out to be reasonable still but frame rate still lower due to all the additional objects displayed.
  • Added a splotch of different terrain type in island center to go with potential game element idea.

    Hey, if anybody has any interest in maybe seeing this thing finished a little sooner as the warrior's adventure sort of thing I mentioned, please let me know. If there's a little interest then maybe I'll try and get something going parallel to this project going. If there's a lot of interest... well I don't think I get enough readers to have a shot at "a lot" of interest but in general more input will influence my direction more.
kseh

RPG Project - Post 8

I'm not all that sure what area of my project I should be working on next. So I thought I'd procrastinate a little and do up a journal post since it's been awhile. I wanted to have a video to go with this post but I don't have the capture software handy and when it is handy I never think of it. So here's a quick screenshot:

2013-07-10 Scene.PNG

It doesn't look much different from anything I had before. The only obvious difference is the slimes. They sort of lunge about in random directions at the moment and if they collide enough times with a tree the tree disappears as if the slime has eaten the tree. They also "eat" any flowers or grass they come into contact with. The "eating" doesn't seem to occur exactly when you expect them to though and I think that's due in part to the collision boxes being smaller than the sprites.

Right now you can attack the slimes though they don't attack back. When you hit one it's sort of pushed off a bit in the direction of the attack. They can take somewhere from 1 to 4 hits before they just disappear.

The lunging movement of the slimes was kinda fun to work on (a video would be really good here, sorry). At first they looked kinda like they were just gliding along the ground, about what you might expect from a sprite being updated in one direction with no acceleration or anything applied. The lunging movement was just done such that when processing movement and there's a speed in some direction, before actually moving you first play through an animation where the bulk of the slime shifts to one side. Once that animation completes, you start to actually move the slime for awhile before essentially starting the process over again.

Other stuff I've done since the last journal post:

  • Load various settings (like season and some world gen stuff) through xml file.
  • Added half-assed progress indicator in title bar for island generation.
  • Added grass sprites and made grass mounds change colour depending on season selected.
  • Considered changing colour of leaves for seasons and otherwise making tree sprites a little more dynamic.
  • Some work on layering bugs (still not perfect but better).
  • Added a "schedule event" queue.


    There's a lot of stuff that I would like to do yet, some little things and some quite a bit larger. Like:

    • See about getting a sky box in instead of the black background.
    • See about planting flowers on a more regional basis rather than the current technique.
    • Give a purpose to flowers and grass.
    • Create some sort of inventory system.
    • Create a player health system.
    • Fix up attack swoosh locations and ranges.
    • Implement PC's floating hands.
    • Make it possible to descend into the caves.
    • Leave logs when a tree is chopped.
    • Make it possible to build a structure (maybe).
    • Create a monolithic marker stone in the center of the island.
    • Do some work on the scrolling boundaries.
    • Get some path finding stuff added.
    • Refactor code.
    • Improve timing code.
    • Lots of other stuff, I could go on and on and on.

      There is so much to do but none of it really pushes me towards having an actual game. I still just have this world populated with a bunch of stuff with a little bit of interaction available but no game. I know what my overall goal is, at least for the first iteration (escape the island by creating a portal), but I'm not sure yet how to go about making it an entertaining experience. The slimes were supposed to be enemies to contend with but with the general goal and story I have in mind they're more likely to be a form of wildlife than a full on threat. I need some sort of underlying challenge other than just getting the stuff together to form a portal and escape.

      It kinda sounds like there's been quite a bit of development since my last post but there's been about a month where no work has been done at all. Having recently become the father of twin boys, I took 4 weeks off in June for parental leave to figure out what the new life routine will be. Other than having a lot of stuff crammed into our house that we don't really have room for and a sort of sense that I'll perpetually be worried about their future, everything is going really smoothly.
kseh
About a month ago I wanted to have a post that included a video (and I have one now here). But when the video capture software I used came across very choppy, I figured it was due to inefficiencies in my code. And with the controls generally feeling sluggish, I just thought it made sense to spend some time focusing on finding ways to improve my rendering.

I figured the problem was that I was doing a significant number of blts for the trees per frame and that was slowing things down. So the plan I had was to do a pre-rendering of the tiles that made up the current display. I would let one frame be a little slower when I prepare a bunch of buffers for the tiles that would be displayed. Then subsequent frames would just use those buffers to do one blt that would include all the trees and flowers on a tile that would otherwise each require there own blt. That way, I would only have to do a full redraw of the tiles where something changes. I seem to remember hearing that redrawing only what changes is the right way to do things so I felt like I was on the right path. With only a short amount of time on any given day, I spent the past month or so working on this and early this week I got the basic fundamentals of the functionality working. It was buggy as hell but it worked sufficiently that I could compare the change to an older version.

It turns out that the original video I tried to capture was choppy because of poor settings I had the video capture software set to. And all that work for the past month didn't result in any real performance improvement. Though apparently during all that work I pulled out one small unused piece of code from my game loop and that was enough to improve the sluggishness that I noticed before. So, I'll be rolling back to more or less the code I had a month ago. Maybe that whole tile buffer idea was the right way to try to go or maybe it was completely misguided. But in either case the old code works better for the moment and I want to work on something for awhile that will feel like I'm moving forward.

Anyways, here's the video of what I have so far. All you can really do right now is walk around the world and chop some trees until they disappear. I don't want tree chopping to be a major part of the game but the code that works behind it should be useful for other functionality. The scroll position jumping was my answer for the flickering issue that I was experiencing before. It still needs some work so that there's less confusion about where you are but I'm thinking that it's just a matter of tweaking when (or if) the slower scrolling takes place as you approach the screen edges.



Which leads to the question, what next?

The plan for this game was to be centered on the discovery of magic. I still want to aim for that but I'm not even close to starting work on a magic system yet and I'm realizing that coming up with just the basic ideas for discovery paths of multiple elements and types of magic is a lot larger of a task than I realized. It would be years before I see anything close to what I had planned. I want to have something playable and somewhat interesting within the year. I don't mind being flexible but it just means I don't really know for sure what direction this thing is going.

A quick thing I think I'll try is to add in some sort of long grass. It would essentially be the same object as the flowers and for the time being it would only be decoration. Grass in a winter setting is a little out of place but the idea is in my head and I might as well put it in as it shouldn't be too much work. And I can always switch to the summer setting anyways. The idea is that grass provides a bit more decoration, possibly a low level of camouflage for critters, and could maybe work as one more ingredient for putting things together. So it's not like it's entirely pointless.

But I think the next main thing I'll look at is adding some critters. I'm thinking of starting with adding various slimes as they should be easy enough to draw as well as create an excuse for their aggressive behavior. I'm thinking at first I'll have them wander around slowly and randomly and if the player gets within a certain range they will charge the player. Since there's no health system at the moment, any sort of exchange between player and slime would just be a pushing match of sorts.
kseh

RPG Project - Post 6

Added some collision detection style logic to help better plan tree placement. Went from randomly planting around 57k trees to create an impassible forest to using only 39k trees for the same effect. Also found some settings that will be good for thinner forests when I start looking into adding more variety in the terrain.

Added in some serialization code so that I can save and load the world. So far the file size in total to recreate the world is a bit under 10Mb.

A few weeks ago, the host that I've been using for my website was having some issues with the data center they've been using. The center just up and vanished. Thankfully, anything I had up there I do have backups of. But rather than just put what I had back up I figured I'd try something a little more modern and went with the Wordpress package that's available. I think it generally looks alright but I still need to get a project details page and some sort of page for downloads going.

In the mean time, I imported the 'detailed developer notes' for this RPG project from day 1 to the site. I don't think I'll be uploading notes everyday but more likely to do batch loads every so often.

Current development is on the stuff that I was working on just before I got distracted with the memory leak. I'm trying to get things going such that when you press space a sort of 'swoosh' appears like you're swinging something. If that swoosh hits a tree then I think you should see a sort of 'strike' effect that'd be like a little star or something, and the tree will be chopped down providing you with wood to work with. What I have going so far doesn't look right, I think, because I'm not detecting the collision between the swoosh and the tree quite right. Probably has something to do with the code being an over all mess which is something else I need to work on before it gets completely out of control.

So, not really anything new to show off but I thought I'd include a screenshot anyways and with the [s]excuse[/s] interesting new detail to show being that I changed the look of the winter trees slightly. I'm hoping that when I start adding in critters my programmer art skills will manage something that fits with the style.

2013-03-22 Screen.PNG

I believe I've found a way to deal with the flicker issue. It needs a little fine tuning yet but I like what I've come up with and it means that ultimately what you see in the screenshot will be what you get. Essentially, I'm dealing with it by not dealing with it. Assuming that I'm able to get this tree chopping thing all sorted out, I'll include a video in my next post.
kseh

RPG Project - Post 5

Memory leaks have pretty much been at the center of my focus for this project for the past few weeks. There really isn't a lot that's interesting to post about while trying to hunt these things down. And up until about two days ago, the only posts I would've been making would've been appeals for help and possibly questioning the help offered. I had thoughts of just living with the leaks and hoping they don't cause problems down the road or abandoning the project entirely. But now, I'm glad I stuck to it and found the bugger that was giving me issues.

Don't know if anyone will find any of this interesting but I figure I might as well take the opportunity to vent about the non-sense my own code inflicted upon myself.

The line where the error would occur was

CSwooshEffect * pItemTemp = new CSwooshEffect;

From this line I experienced weeks of being confronted with "Windows has triggered a breakpoint in [program].exe". Google searches that all pretty much say the same thing when other people ask about it, "You're probably writing to memory that's already been freed." I figured I'd get about the same response if I posted a question here or anywhere so I began painstakingly started going through code to try to find such a situation. I plugged in Paul Nettle's MMGR code into my project which helped find the source of a bunch of leaks. But after fixing them, that damn message still came up even though the leak report came back "No memory leaks found!" Clearly I didn't really have them all. But I just couldn't understand it. All I was doing was instantiating a new object, how could that be writing to memory that's been freed?

Trying to battle that one message resulted in me rewriting my animation class that I've been using for almost a decade now, it resulted in finding 2 other locations causing leaks, revealed that I forgot to change some code for a few objects so they're created using new() instead of being members of another class, it resulted in the realization that some sorts I'm doing on my object lists weren't sorting correctly. I found a variety of things I was doing wrong and yet despite all that the message wouldn't go away.

As fascinating as I'm sure all this is, I'll skip ahead now to where the problem finally was. (my dev notes have the details of how I came to this point, I can post them if anyone's interested but I'll skip ahead).

I keep a few lists that are used to track instances of objects. I was investigating a tile's list of objects and comparing it to a main list of objects. Checking that an object was being created and being properly set to the tile's list of objects. I wanted to make sure that everything was the same when that object's pointer later got removed from the tile's list and the object deleted. The object itself was indeed the same however completely by chance I noticed that the tile that I thought was working with wasn't actually the one I was working with. It all went a little something like this:

- From my main list I'd determine which object required deletion.
- Using the object's world co-ordinates I'd calculate what tile that object was associated with.
- This calculation was producing a rounding error causing me to look at the wrong tile's object list.
- The wrong list of objects isn't actually affected.
- The object is removed from the main list.
- The object is finally deleted from memory.
- The tile with the list that should have been examined now has a pointer in it pointing to freed memory.

That memory gets accessed later on in my paint routine. Undefined behavior due to accessing invalid memory sounds like an appropriate description of the trouble I've been having.

I dealt with the problem by adding the tile co-ordinates that the object is on to that object. Not terribly creative but it got the job done.

This annoying issue has taken so much attention I don't know what's next now.
kseh

RPG Project - Post 4

Winter and summer screenshots. Though apparently flowers still grow during winter.

2013-01-22 Screen A.PNG2013-01-22 Screen B.PNG

I have a whole lot of code that does in some way what I want it to but it's by no means organized to be able to intentionally create different levels yet. Layering still doesn't work quite right and I have no way to descend into the caves below. Even if I had some kind of stairway, I don't think my code could support moving around there at all since I added in the trees. Also, not really sure if the frame rate being displayed is at all accurate. But what bothers me the most right now is that I have what I think is a really bad flicker on the trees which is especially noticeable in the winter scenes.

I could use some advise on the flicker problem. Right now, everything is just blt to a back buffer every frame and then the final result is blt to the screen. I'm not expecting the trees to change much though there will be the ability to chop them down or perhaps for a quantity of them to become fallen due to an area of effect spell. If anyone can suggest some techniques to look into, it'd be appreciated.
kseh

RPG Project - Post 3

Mostly just wanted to post a screenshot of what I currently have.

2012-12-14.PNG

The purple terrain colour is temporary and the black empty space will likely be replaced with some sort of skybox. But the basic idea for how things will look is all there.

I've replaced the green snark character I was using as a place holder with a human character. This is actually the best human sprite that I have ever drawn which may seem a little ridiculous given how simple it is. But I plan on having it so that you can change the colour of the skin, shirt, and shoes to various textures. And in a paper doll sort of fasion, I also have some bits and pieces I'm thinking can be used for some facial features that the player will be able to select from resulting in characters that look like these.
Guy.PNGGirl.PNG

The blue circles are the hands. I'm thinking they'll be sort of free floating to allow for a wider range of hand motions without having to worry about animating arms. Maybe not blue though.

But that's all a ways off as I'm still working on the game world. Until now, I didn't really have an appreciation for how quickly memory can get used up when you're working with a 3d array of objects and you start adding data members. But I think I have the beginnings of a system that I'll be able to use to add and position objects in the world. That would be all the flowers in the first screenshot. It doesn't look like much but there's actually 14k flowers scattered across the surface of the world. It may very well be that this is the beginning of running into a memory management wall that makes further progress impossible but I'm actually pretty optimistic as all the flowers didn't add significantly to the memory that's used. When I'm happy having enough basic plants I'll look at adding critters of some sort which I hope will make the world feel more alive.

Probably will be quite awhile before I get much more done, what with the holiday season and all.
kseh

RPG Project - Post 2

When I started this project I thought I'd go with a top down 3/4 view , figuring that it should be easier to do. I've spent the past two weeks fighting with what I though should've been some simple layering.

I had hoped to be able to quickly get a video going of a character walking around the game world. It didn't take long to get an old sprite up and modify the code I had from the platformer I was working on before to work for a top down sort of world. Fought with collisions a little bit but ended up with a few improvements to the code and generally feeling happy about progress. Then I set about fixing up a little display issue I was having layering tiles and my sprite.

To start, I was just painting the terrain tiles and then my old snark sprite right on top (I'll be using a different player character eventually). Which is fine for some general testing but I wanted to have it so that the snark could hide behind the walls a bit. So I add in the code to redraw the appropriate tiles and fringe pieces and I kinda got what I was hoping for.

a.PNG

But also quickly found that I wasn't redrawing all the pieces I needed to be.

b.PNG


I thought about the problem a bit.
- The lower fringe pieces need to be redrawn on top so the snark appears behind a wall.
- The left and right fringes need to be redrawn on top so that the snark appears to emerge from behind the wall.
- The upper fringes should not be redrawn so that the snark always appears on top.

When I coded for this I found that as I travel up through a 1 tile wide hallway, the snark is hidden by the left and right fringes. Not really a problem until he approaches a turn or dead end where the upper fringe is displayed. At that point you find yourself with the same sort of layering issues you see in the second picture above (sorry I don't have an image handy).

I think I went between redrawing and not redrawing the side fringes once or twice and was getting frustrated. I tried to remember what I've seen in games with a 3/4 view with this sort of hiding behind objects thing. I don't know if my memory isn't reliable enough or if I didn't Google hard enough but I couldn't really think of examples of what I'm trying to do. I could only think that if anything came close, you were probably able to hind behind a wall but you wouldn't be obscured by left and sides of fringes. Either your character is always drawn on top or the sprites are such that they will always fit between any corridor walls
with no fringe layering taking place.

After a few of tries at techniques I could think of, I ended up approaching the problem with acceptance that you won't be able to hide yourself as completely by a wall. You could walk behind a wall fringe but that fringe's depth is small enough that you don't end up walking down far enough to start worrying about the left and right side fringes. This means that the space that a wall tile takes up is effectively greater than 1 tile. This ends up with a just bit of a depth effect and means I don't have to figure out all my tiles again. In order for it to work right I also had to expand the collision rectangle a bit and track whether or not a character's move was successful or not. If the character is unable to move left or right as intended, he appears on top of the fringe pieces that he'd otherwise appear behind. So far, so good. At least, it's good with only 1 character to worry about.

I'm not really sure what completely hiding stuff behind walls would really add to game play anyway. That might be just a sour grapes thing, but other than looking kinda cool, what am I really going to do? Make chests you need to complete a quest impossible to find? Maybe hide such that they leap out and kill you with no chance to react? I'll take the little bit of appearance of depth I got out of it and leave it at that.

Gonna have to get a YouTube thing set up so I can link in the videos better. In the mean time, I'll have to add it to my gallery this way I guess.
[sharedmedia=gallery:images:3042]
kseh

Starting another project

Creating an RPG has been something I've taken a stab at a couple of times before and I've decided to have another go at it. Like before, I'm probably overly ambitious and overly optimistic but like before I'll probably have fun giving it a go.

The focus for the past few weeks has been world generation. I'm going with this idea where you play on isolated islands. To generate the island I'm using the Accidental Noise Library to generate the shape and establish the depths you can descend. I'm also using it to establish a few levels of caves that you would go adventuring in.

I have a video of what I got so far that I'll try to attach it here (haven't done this before). It doesn't seem to come up when I view this post but the video is in my gallery if you click on where it should be. If anyone can tell me how to fix this, please let me know.

[sharedmedia=gallery:images:2954]

But... um...

I do think there is a bit of an awkward thing to mention though. The plan I've had for this game seems remarkably similar to a couple posts I've read here lately. I know that given the same idea, two people are unlikely to come up with the same result. Especially if you're working on a solo project. But I hate to give any sort of sense that I might be stealing someone's idea. I've actually had this idea for some time now and it so happens that this is the time that I have anything to show. I wanted to do a journal post where I could show a video with a character running around on the island surface and descend into the caves. But I figured maybe writing now might be the better way to go.

The Game Idea
The main direction of the game is magic and its discovery. I was initially thinking a rougelike sort of a thing where you'd have to figure out how to put together randomized recipes for potions and randomized rune combinations for casting spells. You would find and collect the various componants and through experimentation and by periodicly revealing clues to recipies, the player discovers spells and they are then available for memorization and use while exploring.

I'm also planning to include some survival and construction elements. Yeah, I know, who isn't these days? But I'm hoping to use both resource collection and their use as driving factors in the game. I think scarcity is an interesting element and I want to use it as a driving factor in the game. I'm hoping that I'll have something where it will get more interesting as the player seeks to become more powerful. There will likly be a way to leave your starting island to seek additional resources but it will probably be expensive and have defensive drawbacks.

Anyways, that's the basic plan for the next while. If none of it comes to be, I hope at least I'll end up with various elements that will be useful for future projects. The next step is to have a character that you can have running around the island. Then I think need the beginnings of an item system which I'll use to get some landscaping in. Where things are likly to go wrong would be that I'm flying by the seat of my pants here. I have an idea of how I want the magic system to work but I'm much less sure about the spells themselves. And though survival is planned to be a driving element, I'm sure I'm going to need something that can be thought of an end.
kseh
I found some, early brainstorming notes from before I started my Egg Hunt project. I've added the notes (with a little extra formatting) to my website here. Though at the time I wrote it I think I saw it as less of a brainstorming thing and more of a part of an actual plan. The original idea I have written down as June 2nd, 2010. That's 2 years less a day from the point when I called the project closed. That's not working for 40 hours a week on it though, that's making time during lunch breaks and after work. If I made the project more of a full time job sort of a thing it probably would've been done much faster but I don't think I would have had as much fun.

There's quite a few differences between what I had originally intended and the result I ended up with. I think the original image in my head was something that'd look a bit like an early Metroid game. Didn't come even close to that. I think the differences actually started from about the point where I started coding. Even with my original vision, from the time I started coding I intended on making it a "simple" project. The various attack mechanics that I originally thought of were pushed to the side knowing that they would be a lot of extra work. Besides, what I really wanted to see, above all else, was my character jumping and moving around a randomly generated maze. The vision evolved to something that would be highly kid-friendly. Actually, I was also aiming to make it quite friendly for people like my non-gaming parents. Less arcade twitch, more time to think out what you want to do.

I don't remember referring to those original brainstorming notes at all while I was working. So when I came across them it surprised me a little bit that some of the ideas I thought of as solutions to game play issues were actually written down in some way over a year earlier. For example (though I never implemented it), I was considering a problem I was having with really large mazes with wide spaces between the walls. Not knowing how far it was from where you're standing to the next wall made it difficult to plan how you would traverse the space. After thinking on it awhile I thought of a sort of sonic bark that the snark could do that would travel outwards and bounce off any walls. This would give an indication of how far the player might have to build a bridge. When I read last week, in the original notes, that I was thinking of a sonic attack that would bounce off walls, I wanted to kick myself because coming up with the idea for the distance problem took quite awhile to think of and had I just referred to my notes I would've had the answer right away.

When I rediscovered those notes, I couldn't help but think of those posts that you commonly see in the Game Design forum. Big long wall of text that you don't really want to read (I haven't even reread all of those notes), full of lofty ideas and bright eyed ambition, and one person is going to do it all... well ok, maybe he's gotta find someone to help with the art or something but that's ok because he can code it all himself. He hasn't made any full games yet but has experience programming for quite awhile, is passionate about making games, and is going to see his vision through. It's not a bad attitude to have going in, it is what gets you started after all. But you gotta be prepared to let your vision change as the development flows on. Because it will change anyway.

For those that are curious:
Latest build here.
General instructions can be found here.
Project notes here.

The best screenshots I have handy I posted on this previous journal entry.
kseh
Very little progress with the finishing touches. But one nice little addition is the ability to select level sizes in a settings screen.

Near as I can tell, what would be left to call this thing finished would be some music & sound effects, a title on the title screen, a proper instructions screen, a save feature, an improved game over screen, and maybe moving the maze size setting to main title screen as it's the only setting I'm inclined to make available (unless some crazy motivation suddenly kicks in). If for some reason motivation does kick in again, I'm likely going to just do what I listed there without getting into any further additions. If not then this current build looks like the last one.

I've reached the point where I'd rather play the game than work on it. Between running smack right into the wall of project fatigue and some assorted family unpleasantness, I've severely lost motivation to finish this project. Probably doesn't help that the music that I had hoped to use for this game will never be recorded. It hurts my musician to pick up his guitar any more and so it has been given a permanent place in my home where, despite being warned not to, my failed attempt at tuning it has popped a string. Not like I could ever play the thing anyways. And yeah, my musician not being able to play anymore and the family unpleasantness are the same thing.

Latest build here.
General instructions can be found here.
kseh
Just want to mention quickly that I have a new build of Egg Hunt available on my website. Over the past week I finally put aside my fear of graphics programming and got some code in to re-size the window and stretch the image accordingly. Hopefully people won't need a magnifying glass to play the game anymore.

A quick thanks to Digitalfragment for confirming that the obvious ratio solution for dealing with objects changing in size was indeed the right way to go. I was second guessing the formula I was using and the whole technique in general but it turned out I just had to stick to it and work out what was missing. It's good to bounce things off of someone from time to time to make sure you're on the right path.

A more extensive bit of rambling about the project can be found in the dev notes on my website here.
Latest build here.
General instructions can be found here.
kseh
Quick update on the Egg Hunt project (and a couple screen shots).

I've added in a feature where when you eat one of the flowers a "dream" starts up which shows you the relative direction the eggs are. The dream kinda looks like eggs appear from the snark's head and move in a clockwise circular sort of thing, more or less floating around the direction to travel to find the egg. The snark has a sleep animation playing while this goes on and can't be moved. After a while, the eggs go "poof", and you can move again. It really helps you find where all the eggs are and lets you come up with more of a plan to fine them all. I'm a little concerned it makes it too easy but I think by playing around with settings for the number of flowers and the size of the maze, a good balance will be found somewhere.

I have started looking at making settings available before you begin a level. The variables I need are all ready to be used but I'm finding all sorts of code that I want to refactor. I'll probably be spending a bunch of time cleaning up code like that before making a UI available to change the settings.

The version of Egg Hunt that's on my website now has the dream flowers available. No settings are available to change things yet but will probably be in the next build. Also, it's a debug feature that got left in at the moment but after you start a new game, a file called test2.txt gets generated which is a map of the cavern maze. The egg positions aren't given away but it gives an idea of the entire level's layout.

Any feedback or advice would be appreciated.

A more extensive bit of rambling about the project can be found in the dev notes on my website here.
Latest build here.
General instructions can be found here.

Also, just for the heck of it, a screen shot of the game.
2012-05-25 Egg Hunt b.JPG

and one more showing the snark dreaming about which way to find the eggs.
2012-05-25 Egg Hunt.JPG
kseh
Last update was awhile ago and probably the most interesting development is having my nephew test the game out a bit.

I have updated the build on the website. You now have a little title screen that doesn't actually have a title on it yet but there's a button to press to start the game. Doesn't sound very impressive but I think I only had one other game project with any sort of title screen before and none with any real buttons support.

Oh, and the current build has the vertical wrap around removed forcing a player to do more climbing through the maze. As I mention below, I think I'm going to have the vertical wrap around is going to be a difficulty option.

Latest build here (it's still a little rough around the edges).
Some general instructions can be found here.

---
(from 2012-04-10 dev notes)
I Watched my 5 y/o nephew Thomas play a round of Egg Hunt for awhile on Easter Sunday and it was cool that he said he liked it. It was interesting to watch him play and clearly there's a few things that I need to look into making the game a little more playable for younger people even though he's in a bit younger of an audience than I was aiming for.

I definitely need to have some difficulty setting. He quickly got stuck at the bottom of the world and had a hard time getting out of an area. I think after awhile he would've gotten the hang of the controls more and eventually be able to have become unstuck on his own but I wonder about frustration level. At what point does someone loose interest and just give up? The other side of that though is what I asked before. Why would someone bother trying to learn to ascend through the maze if all he has to do is fall? But then again, I suppose ultimately they have to climb a little. It's unlikely that you can complete a game without jumping. (Is that another badge?)

I'm also thinking that I need a setting for the maze size. Looking at my nephew and knowing the size of the maze, it just felt way too big for him and I have a hard time imagining him finding 5 eggs in that big a maze. I also have a hard time seeing him using the tail pointer effectively. So I'm thinking options for a smaller maze is the way to go. One where you're not aimlessly wandering for hours like I was in the early days.

Other than that I think I still want to do something with the sleeping flowers. Thomas got a kick out of seeing the snark take a nap but I'm sure the novelty would wear off eventually. I do still think a map of some kind might be the way to go.

His positive reaction has revitalized me a bit and makes me want to get back to work on this thing. Logically the next step is the opening menu and settings screen. I can't help but wonder a bit about trying to get this thing to a smart phone. I think control wise simply pressing on the screen to the right or left might work for movement and upward flicks for jumps. Perhaps little icons on the side to eat or spit. I'd have to see what works but it seems plausible. Thomas' issue with playing Angry Birds later on was that he kept hitting the function buttons on the bottom of my phone. I may want to think about that.
Sign in to follow this  
Followers 0