Learn To Make Minecraft With Flame, Dart And Flutter!
Last updated 8/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 17.78 GB | Duration: 24h 7m
Last updated 8/2022
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 17.78 GB | Duration: 24h 7m
A fullstack all-in-one course where you'll learn everything from Flutter, Dart, Flame, etc by building Minecraft!
What you'll learn
Proficiency in Flutter, Flame, Algorithms, Local Databases (Hive), GetX, Game Design, Game Development, and much more!
Advanced problem solving skills, including usage of various algorithms, project management abilities, etc.
In depth knowledge about programming and algorithms, learned from practical examples.
You'll be taken through a journey of 8000+ lines of code, guided step-by-step, with animations.
Requirements
Everyone is guaranteed to learn something new, but as a starting point you'd need to have a basic-intemediate knowledge of Flutter and Dart! Every line of code will be explained in detail, with inforgraphic animations!
Beginners are also welcome, but be sure ask me questions to clear doubts during every step!
You must have VS Code installed.
You should atleast know the basics of Flutter and Dart; Building Apps, Stateless-Statefull Widgets, Using and Installing Packages, Knowledge of Classes, etc.
Description
In this course, you will be taken through the perplexing and algorithmic journey of creating a complex 2D Version of the game Minecraft, with Flutter, and a bare-bones game engine package; Flame. This is a jam-packed, all-in-one course made with 600hrs of dedicated work, which will leave you well on your way to becoming a better developer.In this course, we'll cover every prominent feature that makes Minecraft the game it is, including-Procedural Terrain Generation with Perlin Noise.Biomes; Desert and Birch Forest. (Expandable)Structure Generation (Biome Specific)Block Placing/Breaking (Different Mining Speeds for Different Types of Blocks. Also accounting for Tool used)Player Movement, Animations, Damage Indicators, Delta Time accounting speed, Quadratic Graavity, etc.Health and Hunger SystemRespawning/Respawn Screen.Game Layout; GUI-game Separation.Collision algorithm from Intersection Points.Dynamic Crafting Algorithms.Accountable Inventory System.Global Data Management with GetX.Day-Night Time Cycle (Custom Timer)Hostile Mobs; Zombies/Spider (With their own specific logic).Tools and Weapons of different Tiers.Custom Block Generation (Expandable).Gravity Blocks.World Saving with HiveInteractive world creation and joining with a launcher.Launcher panorama effect.And much more!All of these complex features and code, are packaged, and explained, line-by-line with captivating animations.But this is not it, you can expand on my take on Minecraft, as this course was designed to encourage your creativity. if you have any problems while coding, you can reach out to me on my discord server and I'll respond to your doubt.
Overview
Section 1: Introduction
Lecture 1 Trailer
Lecture 2 A Brief Flame Tutorial
Section 2: Game Layout
Lecture 3 Setting Up the Work Environment
Lecture 4 Game Layout: Introduction
Lecture 5 Game Layout and Controller: Code
Lecture 6 Player: Introduction
Lecture 7 Player: Code
Section 3: World Data
Lecture 8 World Data: Introduction
Lecture 9 World Data: Code
Section 4: Player Movement and Animations
Lecture 10 Linking Player to Controls
Lecture 11 Horizontally Flipping Player Sprite: Introduction
Lecture 12 Horizontally Flipping Player Sprite: Code
Lecture 13 Playing Corresponding Player Animations: Intro
Lecture 14 Playing Corresponding Player Animations: Code
Section 5: Block Component and Chunk Generation
Lecture 15 Block Component: Introduction
Lecture 16 Block Component: Code
Lecture 17 Chunk Generation: Introduction
Lecture 18 Chunk Generation: Code
Lecture 19 Block Grid Placement: Introduction
Lecture 20 Block Grid Placement: Code
Lecture 21 Chunk Rendering Function: Introduction
Lecture 22 Chunk Rendering Function: Code
Lecture 23 Fixing Camera on Player: Introduction
Lecture 24 Fixing Camera on Player: Code
Section 6: Procedural Terrain Generation
Lecture 25 Procedural Terrain Generation: Introduction
Lecture 26 Grass Generation: Introduction
Lecture 27 Grass Generation: Code
Lecture 28 Dirt and Stone Generation: Introduction
Lecture 29 Dirt and Stone Generation: Code
Section 7: Biomes
Lecture 30 Biomes
Section 8: Collective Chunk Generation
Lecture 31 Collective Chunk Generation: Introduction
Lecture 32 Continuative and Consecutive Chunk Generation: Introduction
Lecture 33 Continuative and Consequetive Chunk Generation: Code
Lecture 34 Individual Chunk Rendering
Lecture 35 Left World Chunks
Lecture 36 Chunks That Should Be Rendered: Introduction
Lecture 37 Chunks That Should Be Rendered: Code
Lecture 38 Rendering and Unrendering Logic: Introduction
Lecture 39 Rendering and Unrendering Logic: Code
Lecture 40 Unrendering Chunks
Section 9: Structure Generation
Lecture 41 Structure Generation: Introduction
Lecture 42 Structure Generation: Code
Lecture 43 Biome Specific Structure Generation: Introduction
Lecture 44 Biome Specific Structure Generation: Code
Lecture 45 More Structures: Introduction
Lecture 46 More Structures: Code
Section 10: Ore Generation
Lecture 47 Ore Generation: Introduction
Lecture 48 Ore Generation Without Rarity
Lecture 49 Ore Generation With Rarity
Lecture 50 Optimizing Ore Generation
Section 11: Player Functions
Lecture 51 Gravity: Introduction
Lecture 52 Gravity: Code
Lecture 53 Collision: Introduction
Lecture 54 Setting Up Collision
Lecture 55 Implementing Collision: Introduction
Lecture 56 Implementing Collision: Code
Lecture 57 Refining Horizontal Collision
Lecture 58 Optimizing Speed for Different FPS: Intro
Lecture 59 Optimizing Speed for Different FPS: Code
Lecture 60 Jumping: Introduction
Lecture 61 Jumping: Code
Lecture 62 Keyboard Input: Introduction
Lecture 63 Keyboard Input: Code
Section 12: Block Placing
Lecture 64 Block Placing: Introduction
Lecture 65 Tappable and Placing Index Position
Lecture 66 Updating Chunk List
Lecture 67 Block Placing Radius: Introduction
Lecture 68 Block Placing Radius: Code
Lecture 69 Block Placement at Empty Spaces: Intro
Lecture 70 Block Placement at Empty Spaces: Code
Lecture 71 Adjacent Block Placement Logic: Introduction
Lecture 72 Adjacent Block Placement Logic: Code
Section 13: More Player Functions
Lecture 73 Smooth Player Movement, Top Player Collision, Better Jumping: Tutorial
Lecture 74 Smooth Player Movement, Top Player Collision, Better Jumping: Code
Section 14: Block Breaking
Lecture 75 Block Breaking: Introduction
Lecture 76 Block Breaking: Code
Lecture 77 Block Data: Introduction
Lecture 78 Block Data: Code
Lecture 79 Unbreakable Bedrock: Introduction
Lecture 80 Unbreakable Bedrock: Code
Lecture 81 Better Image Loading
Section 15: Item Component
Lecture 82 Item Component: Introduction
Lecture 83 Item Component: Code
Lecture 84 Entity: introduction
Lecture 85 Entity: Code
Lecture 86 Item Component: Code
Lecture 87 Item Component Rendering and Unrendering: Introduction
Lecture 88 Item Component Rendering and Unrendering: Code
Section 16: Inventory
Lecture 89 Inventory: Introduction
Lecture 90 Inventory Manager
Lecture 91 Inventory Algorithm: Introduction
Lecture 92 Inventory Algorithm
Lecture 93 Implementing Stacks
Lecture 94 Block Placing based on Selection: Introduction
Lecture 95 Block Placing based on Selection: Code
Lecture 96 Inventory Slots: Introduction
Lecture 97 Inventory Slot Widget
Lecture 98 Inventory Slot Count Widget: Introduction
Lecture 99 Inventory Slot Count Widget: Code
Lecture 100 Item Bar: Introduction
Lecture 101 Item Bar: Code
Lecture 102 Linking Inventory Slots: Introduction
Lecture 103 Linking Inventory Slots: Code
Lecture 104 Inventory Slot Updation: Introduction
Lecture 105 Inventory Slot Updation: Code
Lecture 106 Selecting Item Bar Slots: Introduction
Lecture 107 Selecting Item Bar Slots: Code
Lecture 108 Selection Indicator: Introduction
Lecture 109 Selection Indicator: Code
Lecture 110 Inventory Storage Widget: Introduction
Lecture 111 Inventory Storage Widget: Code
Lecture 112 Player Inventory Widget: Introduction
Lecture 113 Player Inventory Widget: Code
Lecture 114 Closing and Opening Inventory: Introduction
Lecture 115 Closing and Opening Inventory: Code
Lecture 116 Draggable Inventory Slots: Introduction
Lecture 117 Draggable Inventory Slots: Code
Lecture 118 More Inventory Slot Functionality: Introduction
Lecture 119 More Inventory Slot Functionality: Code
Lecture 120 Drag Target: Introduction
Lecture 121 Drag Target: Code
Lecture 122 Transferring Inventory Slot Data: Introduction
Lecture 123 Transferring Inventory Slot Data: Code
Lecture 124 Combining Similar Inventory Slots: Introduction
Lecture 125 Combining Similar Inventory Slots: Code
Lecture 126 Splitting Items in Inventory Slots: Introduction
Lecture 127 Splitting Items in Inventory Slots: Code
Lecture 128 Throwing Inventory Slot Contents: Introduction
Lecture 129 Throwing Inventory Slot Contents: Code
Section 17: Crafting
Lecture 130 Crafting: Introduction
Lecture 131 Player Inventory Crafting Grid: Introduction
Lecture 132 Player Inventory Crafting Grid: Code
Lecture 133 Standard Crafting Grid: Introduction
Lecture 134 Standard Crafting Grid: Code
Lecture 135 Blocks With Specific Functionality: Introduction
Lecture 136 Blocks With Specific Functionality: Code
Lecture 137 Crafting Slot Types: Introduction
Lecture 138 Crafting Slot Types: Code
Lecture 139 Optimizing Code For Items
Lecture 140 Crafting Algorithm
Lecture 141 Adding All Recipes
Lecture 142 Stack Changes For Tool Types: Introduction
Lecture 143 Stack Changes For Tool Types: Code
Lecture 144 Mining Speed Changes for Tools: Intoduction
Lecture 145 Mining Speed Changes for Tools: Code
Section 18: Health and Hunger
Lecture 146 Health and Hunger Bar: Introduction
Lecture 147 Health Bar Widget
Lecture 148 Displaying Hearts Based On a Value
Lecture 149 Hunger Bar: Introduction
Lecture 150 Hunger Bar: Code
Lecture 151 Entity Health: Introduction
Lecture 152 Entity Health: Code
Lecture 153 Fall Damage: Introduction
Lecture 154 Fall Damage: Code
Lecture 155 Linking Entity Health to Health Bar: Introduction
Lecture 156 Linking Entity Heath to Health Bar: Code
Lecture 157 Health Regeneration and Hunger Depletion: Introduction
Lecture 158 Heath Regeneration and Hunger Depletion: Code
Lecture 159 Eating: Introduction
Lecture 160 Eating: Code
Lecture 161 Decreasing Player Speed at Low Hunger: Introduction
Lecture 162 Decreasing Player Speed at Low Hunger: Code
Lecture 163 Custom Block Drops: Introduction
Lecture 164 Custom Block Drops: Code
Lecture 165 Ore Drops: Intoduction
Lecture 166 Ore Drops: Code
Section 19: Parallax Background
Lecture 167 Parallax: Introduction
Lecture 168 Parallax Sky: Code
Lecture 169 Controlling Sky Movement: Introduction
Lecture 170 Controlling Sky Movement: Code
Lecture 171 Linking Player to Sky: Introduction
Lecture 172 Linking Player to Sky: Code
Lecture 173 Sky Timer: Introduction
Lecture 174 Sky Timer: Code
Lecture 175 Updating Sky: Introduction
Lecture 176 Updating Sky: Code
Section 20: Mobs and Combat
Lecture 177 Zombie Component
Lecture 178 Zombie AI/Logic
Lecture 179 Zombie Aggrevation
Lecture 180 Zombie Damage Infliction
Lecture 181 Knockback Infliction
Lecture 182 Damage Indicator Animation
Lecture 183 Hostile Entity Class
Lecture 184 Spider Component
Lecture 185 Surface Spawn Areas
Lecture 186 Player Spawn Area
Lecture 187 Mob Spawning and Mob Caps
Section 21: Combat
Lecture 188 Combat
Lecture 189 Mob Knockbacks, Damage Indicators and Despawning
Section 22: Gravity Blocks
Lecture 190 Gravity Blocks
Section 23: Respawning
Lecture 191 Respawn Screen
Lecture 192 Respawn Screen: Functions
Section 24: World Saving
Lecture 193 World Saving: Introduction
Lecture 194 Setting Up Hive
Lecture 195 Terrain Saving
Lecture 196 Inventory Saving
Lecture 197 Health and Hunger Saving
Lecture 198 Sky Timer Saving
Section 25: Game Launcher
Lecture 199 Menu Screen
Lecture 200 World Selection Screen
Lecture 201 World Creation Screen
Anyone who is looking to increase their proficiency in Flutter/Dart should definitely try this course. It covers a wide range of algorithms, and tools. I guarantee that even the experts will learn tons of new things!