Game Gen - Week 27

Star Paws Continues! 

Furthering my C++ Knowledge

Star Paws is a resource management game I've been developing using C++ and Unreal Engine. After a brief break to work on other projects, I'm back to creating the core systems that will make up this exciting space-themed game.

Before diving back into Star Paws, I completed a few other projects, most notably the game jam project "Blood Cell Bash." I'm thrilled to announce that this project secured 2nd place in the game jam! This success definitely boosted my confidence as I returned to Star Paws development.

Last Star Paws Progress:

When we last left off, I had just implemented the trading system, which is now about 80% complete; to continue on, we need to develop other systems that will integrate with trading. For the past week, we've focused on creating the resource map, allowing players to discover resources and transform them into farms or mines.

Last Two Weeks: Development Check-Points

Here's a brief overview of the achievements I've made in the last two weeks to progress the resource gathering system:

  • Resource Map and Camera Creation
    • Developed a large plane with a temporary example map
    • Added a "player" with flying capabilities for a bird's eye view
    • Implemented bounding boxes to constrain movement within the map

    A Short Gif of the Resource Map


    What the actual Map Level looks like. 

  • "Available Resource" Actor
    • Created an actor to store resource information such as:
      • Resource Type
      • Discovery status
      • Distance from Base
    • Implemented distance calculation from the base for exploration time
    • Here are some screenshots of the Available Resource Actor's Functionality:
    You can expand these images to see them more clearly.
     I also wrote comments to explain how the code works.







  • Farming Manager Implementation
    • Developed an actor to facilitate communication between:
      • Player's inventory
      • Individual map resources
      • Data table for farm upgrades
    • Utilized this actor as the map's "base" for distance calculations
    • Currently, not much functionality is used in it, but that is because it will mainly be needed for the actual resource farming. 
    • Here are some screenshots of the Farming Manager Actor Currently:
    You can expand these images to see them more clearly.
     I also wrote comments to explain how the code works.




  • "Explore" Widget Component
    • Designed a widget to appear on undiscovered resources
    • Allows players to view discovery time upon interaction
    • Implemented complex time calculation logic
    Resource Discovery Mechanism
    • Added a button to the widget for sending "explorers"
    • Implemented a boolean flag in the resource actor to track discovery status
    • Planned future enhancements:
      • Icon changes upon discovery
      • New interaction widgets for discovered resources
    • Here are some screenshots of how the Widget Component is set up:
    The widget is a pretty simple one for now, but we don't need to get fancy just yet.

       

    Set the discovery time on Begin Play. 
    Set the Boolean to Discovered once they click the button. (This will eventually have a timer)


    This function grabs the time in seconds from the Available Resource.


    Now, this looks convoluted and in a way it is, but all this is to get the time to show up as Hours and Minutes in the Widget for the player. There is more description within the image. 


    Since we are using a combination of Blueprint and C++, we found it better to set the Widget's Reference to the Available Resource BP (Created from the C++ Class) for ease and ensure that it's getting an individually placed Actor for the component to reference.


    Next Steps

    The next phase of development will focus on implementing the farm-building system. This will involve:

    1. Creating a data table for farm information:
      • Base resource production rate
      • Construction costs
      • Upgrade increments
    2. Transforming discovered resources into functional farms
    3. Implementing a resource production system that adds to the player's inventory over time

    I'm excited about the progress made on Star Paws. The step-by-step approach suggested by Vives has been so beneficial in managing the complexity of the project. As I continue to lead more of the development process, my confidence in C++ and Unreal Engine grows. The challenges ahead are going to seem tough, but I'm looking forward to tackling them and seeing Star Paws come to life!

    Comments

    Popular posts from this blog

    Game Gen - Week 19

    Game Gen - Week 1

    Game Gen - Week 4