Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learn Godot Making a Fun Pirate Trading Game
Rating: 4.1 out of 5(66 ratings)
567 students

Learn Godot Making a Fun Pirate Trading Game

The fun way to learn Godot and essential Design Patterns for game development
Last updated 12/2021
English
English [Auto],

What you'll learn

  • Hands on how to start with nothing and build up a working prototype
  • How to create games with complex data structures and content
  • How to use signals and data composition to make a fun game
  • Learn how to re-factor your games to dramatically improve their design

Course content

3 sections25 lectures4h 19m total length
  • Fast Start - Create Project, Scene, and your First GoDOT Script14:31

    Start a Godot pirate trading game by creating a new project and scene, then set up cash and firm name labels and attach a GDScript to update them.

  • Use a List for Cities and use Buttons and Signals to Leave Port and Set Sail11:19

    Learn how to manage a list of cities in Godot, display the current city on a label, and use button signals to move between ports and update the city index.

  • Examine Using Dictionaries to Represent our Products6:30

    Explore representing products with dictionaries in Godot, including keys for name and price range, compare to lists, and discuss limitations and the shift toward objects and classes for city-specific pricing.

  • Refactor our Game to use Objects to Represent Cities8:19

    Refactor the game to use city objects instead of a string list by creating a city scene, adding a city name and warehouse flag, and instantiating cities in code.

  • Create Product Objects and Extend the Game Design11:09

    Create product objects in Godot by defining a product scene with name, price, and max price, then instantiate them using a constructor that accepts data.

  • Create CityProduct Data Structures to Manage Product Pricing by City11:32

    Create city product data structures using the dot design pattern to manage pricing by city, linking city and product with a city-specific price.

  • Create a ProductPanel Object to Visually Represent the Products in the City17:04

    Create a Godot product panel to visually display city products, linking data to UI and updating names and prices in real time.

  • Review of the Current Game Architecture and Prototype5:52

    Review how the data architecture supports cities and products with per-city prices, the product panel and its initialization, and dependency injection and random price updates at ports.

  • Refactoring Our Product and City Data to Use Dictionaries13:56

    Refactor the game data by using dictionaries to represent cities and products for easier loading and prototyping, and implement a single depart from city method with indices.

  • Use Custom Signals to Create a Better Game Architecture18:52

    Learn how Godot uses custom signals to decouple objects and update port arrivals, triggering price updates, sounds, and messages while connecting city products to the main game object.

  • Use Static Methods to Further Improve our Game Architecture10:09

    Refactor your Godot game by using static methods to move city and product creation out of the main, and apply signals to decouple objects for cleaner architecture.

  • Perform a Top Down Re-factor of the Game Code Using What We have Learned so Far8:36
  • Begin Implementing the Buying Process into the Game11:09

    Implement the buy method by wiring the buy button to the main, fetch the entered quantity from the product panel, update the ship hold, and refresh the UI.

  • Finish Implementing our Buy Products Method10:12

    Finish implementing the buy products method by calculating total cost (price times quantity), verifying cash, updating cash and UI, and refactoring to move the price update signal to the product.

  • Implementing the Sell Mechanism for our Game5:01

    implement a sell mechanism by wiring a sell button, validating the quantity against the ship hold, updating the ship hold and cash, and refreshing the UI after each sale.

  • Creating a Simple Pirate Battle for our Game9:42

    Prototype a simple pirate battle by instantiating the pirate battle panel, randomizing pirates with strength and cannons, and wiring fight and run actions.

  • Adding Player Ship Health and Checking for the Player Ship to Sink13:30

    Learn to extend a Godot pirate battle prototype by adding player ship health, a max health, and a sink check, with an updated UI and robust damage handling.

  • Improve the Game Appearance, Import Custom Fonts & Create a Game Over Screen19:49

    Implement a game over screen with restart, improve visuals using the defiant font via font data, and drive city visibility with a simple at port and at sea state machine.

  • Code Review and Upcoming Lectures0:11

Requirements

  • Basic Computer Skills
  • Godot 3 Installed (It is Free and Open Source)
  • Beginning Programming Skills are Helpful
  • Willing to learn at a fast pace. We introduce advanced topics in the first hour.

Description

UPDATE  - Source is now 3.4 compatible!


THIS COURSE GETS YOU FROM BEGINNER TO ADVANCED AS FAST AS POSSIBLE

This was designed to be a fast based course.  Instead of bumping up the hours of the course, this course is designed to get you into advanced topics quickly. We start out with very beginning topics so even a new programmer can use this course, but we waste no time getting into advanced Godot topics.   I'm aware that many students search for courses with lots of hours in the hopes of equating it to more material. You will often find those courses will spend exhaustive time on basics and editor tools that are available in the community or on YouTube. 

THIS COURSE FOCUSES ON GAME ARCHITECTURE AND DESIGN

While we begin with simple programming concepts the course continually refactors and improves the game architecture as new functionality is added. Learn how to create a sophisticated game architecture that involves products, cities, prices that can change by city, buying/selling, and of course a prototype of a pirate battle. Learn to use signals decouple objects and refine your game design.

LEARN PROTOTYPING AND REFACTORING SKILLS

This course follows the process you would use in real world iterative game design. We build simple prototypes that we can get up and running quickly. Then as we better define our gameplay we refactor and implement improved game architecture so we can add more features. The result is a course that will help you with any game you wish to build out.  Finding the right balance between rapid progress and prototyping and creating a solid game architecture you can build on is a key to successful game design.

FOR STUDENTS THAT DON'T WANT TO TAKE A 30 HOUR COURSE TO LEARN ADVANCED TOPICS

There are a lot of great courses on here but long 30 hour courses are not for everyone. Instead of lectures that spend a lot of time in theory,  explaining the course itself, or exhaustively covering basic features you will find in other courses... this course just jumps in and starts building a fun Pirate Trading Game like Taipan. We start with very simple features like variables, creating functions, and using basic signals. But we quickly move right into the meat & potatoes of what it takes to make a solid game architecture.

LEARN TO SEPARATE YOUR DATA OBJECTS FROM USER INTERFACE - And when it may not be worth the time

This course takes a practical approach to building game prototypes. That said, there is a time when you must refine your game architecture and work to improve the design patterns you are using to build up your game. In this course we learn how to use signals, static methods, and dependency injection techniques to encapsulate your data making it easier to create far more robust game architectures. We also explore when it useful to break some of the rules in the interest of brevity and creating a working prototype.

This course teaches you the skills you need so you can build games in a way that suits your own development style.


CONSIDER MY IDLE TYCOON COURSE IF YOU ARE NEW TO GAME ARCHITECTURE AND DESIGN

My other Godot course, Idle Business Tycoon course has a bit more simple game design and is likely more suitable to absolute beginners.

See the power of Godot first hand

You will see quickly why so many game developers are looking to Godot for their indie game projects.  We create the project, the scene and begin scripting in the very first lecture! By the second lecture we are using lists to manage our cities. By the third lecture we are already using objects and building up a complex game architecture. 

The engine is particularly well suited for games that are interface intensive. There are many user controls and they are very easy to script.

If you have ever wanted to learn Godot and enjoy pirate trading games like Taipan you are in luck. This course walks you through the design of making a Pirate Trading Game prototype from scratch. Step-by-Step.  

Who this course is for:

  • Anyone who wants to learn Godot
  • Students who want to learn FAST! This isn't a 30 hour course for a reason. I don't hold your hand all the time.
  • Game designers and developers who want to learn more advanced design patterns
  • Someone who wishes to learn more about game prototyping and re-factoring