Hi all! This is our first devlog after a monthlong hiatus. This past month we had a family emergency and have been traveling a lot. As such, we have not been able to work on our games - but we are grateful and thankful that everything is okay now and we are finally able to get back to work!
This post won't be long - we just want to detail what kinds of things we have been experimenting with and our plans for the next few months.
Enjoy!
Plans for Pumpkin
We are getting back to Pumpkin and her untitled game. Last we left off, we had implemented infrastructure for being able to place objects in the world (such as tables, plants, objects, hangers, lights, etc). We also revamped the core inventory system code so that our infrastructure is a lot smoother and cleaner.
We are now shifting back to phase 2 development. Phase 2 involves
* Building UI
* Core decorations and items modeled and implemented
* Save / Load
* Internal testing infrastructure
* Simple "green" money system
* Plant balancing
* General graphics and gameplay enhancements
After Phase 2 is complete, we should have a demo to start getting user feedback and testing. We are super excited!
Delving into AI
We have been doing some background learning on AI for some project ideas we have. This past week, we've dived into simple genetic algorithms via the wonderful Udemy course Machine Learning with Unity by Penny de Byl. In this blog post and upcoming blog posts, we want to highlight what we learn and experimented with in Unity.
Genetic Algorithms
The first unit in the Unity machine learning course focused on genetic algorithms. At first we weren't sure what to expect in terms of complexity - but this form of AI is surprisingly simple and easy to implement.
The idea behind genetic algorithms is to emulate what nature does during organism evolution. In nature, organisms come together to breed and create offspring. The organisms that have features and characteristics which let them survive their environment the best are the ones that live long enough to breed. Because of this, their children will inherit similar properties to their parents and will also have similar survival characteristics. Over time, organisms which are better and better at surviving their environment breed the most, and thus each generation becomes more adapted to their environment.
Evolution at its finest: the cute little Bulbasaur evolves over time, becoming the ferocious Venusaur! Take that predators, RAWR!
So how does this get applied to AI in games? Well stay tuned for a tech tip in the future for a detailed tutorial on how to implement a simple genetic algorithm in Unity! (based on what we learned in Penny's course).
We wanted to experiment with genetic algorithms to train little creatures to race around a track. Each time a creature makes it all the way around and hits the finish line, we breed the top creatures (the ones that made it the furthest) and create a new population of creatures! The children creatures inherit the "DNA" of their successful parents; so each population gets a little better with their environment. It only took a few generations of breeding to have a whole population of little critters going around a track, all autonomously.
The red critters learn to go around a track without direction from the player. Each time one hits the finish line, we breed the top most successful critters together to create a new population. Eventually we had an entire population that adapted to their environment!
We are so proud of our little dudes ^_^
That's all for today! Stay tuned for exciting updates to our upcoming game!
Hey, guys! This week, we give updates on Pumpkin's game! We have been hard at work on the UI system and the object placement system. We want the player to have the smoothest experience possible and are putting a lot of effort into infrastructure to make sure we can iterate on the design faster.
Enjoy!
Pumpkin makes an art wall all in-game!
New UI system
We've been working on restructuring the UI code so that we can reuse as many components as possible as we go forward with our UI design! It's been a lot of coding, but the fruits of our labor will definitely be worth it!
To give a preview of our current UI implementation, we have an inventory system up and running. The player can swap items and drag items to their hotbar at will!
New Building Infrastructure
We've been hard at work implementing the object placement and building infrastructure! This will let the player place items, place surfaces like tables to hold items, and build structures like walls and doors! We have it configured so that certain surfaces can have objects placed on it by the player. The surfaces are configurable by us to only allow certain types and quantities, and also configurable to enforce how the object is positioned. Below are some examples!
Pumpkin placing and using a table! Objects can be placed at will on the table, and picked back up.
Pumpkin building walls and a door! The door even opens :-D
Pumpkin is placing a new object on the walls: A light bulb holder! The light bulb holder can only have light bulbs placed in it.
And that's all, folks! Follow @AngryGoatGames on Twitter for more updates on our upcoming games!
Hey, guys! This week, we give updates on Pumpkin's game! We talk about some new plants, some infrastructure improvements using the Unity GUI editor, and this week's #FeedbackFriday game Adventure Dungeons Crawler Prototype 1.0!
Enjoy!
New plants
We hooked up some new plants in the game and let the player plant them. Got some cold plants and some hot plants, and they are all growing!
Pumpkin getting some warmth!
Pumpkin staring longingly, contemplating life on this wondrous planet!
Our red hot plants all growing up! The planting UI is also working as expected!
Some frosty plants all growing up!
New Infrastructure
We've been working on some infrastructure improvements. In particular, our item database. Adding a new item involves going to multiple data files, creating prefabs, etc. So we decided to utilize Unity's awesome editor scripting to create a convenient window that shows all the database elements and lets us modify everything in one place!
Here is a preview:
Our object database window!
#FeedbackFriday - Adventure Dungeons Prototype 1.0
For this #FeedbackFriday, we played a prototype game from @StudiosZoim. The game is an Android dungeon crawler. Each level you fight an enemy to progress to the next level.
The game feels like an early prototype to test out the concept, rather than a complete game. We are very happy that the game devs shared their creation with us - we believe that putting your work out there for feedback, no matter what stage of development your game is in, is one of the most important foundations for growing as a game dev. Looking forward to more from the developer!
Taking on a very scary monster! The creativity of the monster design is nice!
Follow the developer @StudiosZoim
And that's all, folks! Follow @AngryGoatGames on Twitter for more updates on our upcoming games!