Sunday, September 18, 2016

Green Algae: Dev Update pathfinding

Finding the way

So just implemented a brute-force pathfinding method implementing a basic Flood-Fill (Breadth first search) algorithm. It's wasteful but effective. I plan to improve the pathfinding method to a more practical implementation for use in other areas. It's enough to get started integrating it more abstractly into the basic game world for easier use when characters want to move around. It was pretty fun seeing it work.

Other work

On top of the pathfinding, I reworked the map generation which is hopefully more efficient, reliable, and is making more evenly distributed islands. If you noticed from previous screenshots the islands were all generating on an angle moving to the top-left while generating. Was due to the infamous off by one error, though I was kind of digging the realistic nature of some of the island strips. Perhaps that could be a useful generation permutation in the future.


Where's the build?

I wish I had something playable that you could check out but it's just too rough right now. And I do not have any process for putting together a public release yet. But things are moving along getting some basic AI and decision making system set up is probably my number one priority. Once I have a solid extendable task based system for controlling units assignments it will open the gates to adding all kinds of content. Right now it's just reworking and molding the current code into a more effective structure.


Suggestions welcome

By the way the game concept is very much flexible at this point in time. Not much at all has been solidified. That being said, I am completely open to suggestions or ideas that you may have to help guide some of the gameplay. 

Comments to any update post or to the Project Page are strongly encouraged.

P.S. You can find updates to the Roadmap on the project page. I'll get a description of the game there too since there is no dev version yet.

ttfn

Wednesday, September 14, 2016

Green Algae: Frontiersman Development Update

Yay! We struck tree!


Things are moving a little bit after fixing up a number of things. Rearranging stuff implementing some additional stuff as well. Like being able to select objects on the map and get details about them.

Trees can be selected and designated to be chopped down. Currently only a single object selection is available. I'll put drag and drop selection on the roadmap of course.

So here's where things stand.
  • Terrain
    • finish tile-type transitions
    • add dirt (with transitions)
    • add gravel (with transitions)
    • add random stones
  • Player controls
    • map movement controls
    • object-selection and displayed details new
    • designating actions for map items
      • chop/down tree
      • stockpile area designation
  • AI Simulated Character
    • add gender and age new
    • add basic decision-based model
    • add crappy path-finding method
    • add hunger, starvation, and death
    • add actions and event, thoughts and memory
  • Save/Load
    • Test, test, test
  • Build Scripts and release checklist

Sunday, September 11, 2016

Green Algae: Game Development Update

Update: Tile transitions


Finally got transitions built between grass sand and water. I still think there are a few edge cases that need to be handled like one water tile surrounded by sand and other combinations of the same.

My first approach which quickly became a painstakingly brutal experience reloading map after map. Note to self create a small map test area. Was to have different tile types for each transition tile for instance a SAND_WATER_TOP_LEFT this became problematic when working with a testing tile types in the game logic. For instance player collision with water, and placing bridges. Not to mention that determining which transition to place was also difficult things kept breaking as more and more tile types were added. So I decided to use a slightly more subtle approach.

While rendering each tile the adjacent tiles are tested to determine which transition is to be used. This method short-circuits only testing each north, south, east, west, northeast, southeast, northwest, southwest, position in turn if any fail the test exits. These are mapped to the corresponding image for the transition changing which image is rendered.

Focus on gameplay

For the moment I think I need to focus on getting as many gameplay elements working as possible to actually have something that can be played like a game. Currently there isn't any real objective or goal so there really isn't a whole lot to do. Of course removing the movement controls from the player kind of eliminated an entire aspect of the game. Things are kind of slow going as I do not spend an incredible amount of time working on this project. I probably have too many at the moment which is why I do not have more updates. But if I can kind of get some semblance of a game going we might be talking more frequent updates. 

Other mentions

Its subtle but noticed I have changed the title too. The gameplay is starting to develop a little more clearly in my head. Time will tell where it goes. But the name of the game is now 'Frontiersman' the game idea might be a bit obvious. You are controlling a family starting out in a new world trying to survive and discovering the dangers that lurk in your new world.  

Roadmap updates

  • Terrain
    • finish tile-type transitions
    • add dirt (with transitions)
    • add gravel (with transitions)
    • add random stones
  • Player controls new
    • map movement controls new
    • designating actions for map items new
      • chop/down tree new
  • AI Simulated Character
    • add basic decision-based model
    • add crappy path-finding method
    • add hunger, starvation, and death
    • add actions and event, thoughts and memory
  • Save/Load
    • Test, test, test
  • Build Scripts and release checklist