TIMBER
TIMBER
  • 27
  • 645 733
Switching Game Engines... Twice? - Devlog #7
In the last 6 months I have remade my movement-based roguelike game, originally made in Unity, twice in two different game engines.
0:00 Intro
0:21 Unity
2:40 Alternatives
3:17 Godot
6:14 Bevy
7:21 ECS
10:35 Game (Bevy Version)
Discord Server: discord.gg/pKWuwS5
Tools I use:
- Game Engine: Unity, Godot, Bevy
- Code editor: VSCode, Neovim
- Graphics: Affinity Designer, Figma
- Video Editing: Davinci Resolve, Motion Canvas
Переглядів: 77 587

Відео

How One Change Made My Game Fun - Devlog #6
Переглядів 250 тис.Рік тому
In this devlog, I made some major changes in terms of movement and improved the inventory and fragment system in my game. 0:00 Intro 1:03 Movement System 2:50 New Level Design 3:28 Improved Inventory & Fragments 5:27 Enemy Reworks 6:31 Outro Discord Server: discord.gg/pKWuwS5
How An Inventory Changed My Roguelike Game - Devlog #5
Переглядів 49 тис.Рік тому
In this devlog, I made an inventory system, that changed how upgrades work in the game. 0:00 Intro 0:14 New Ability 0:57 New Enemy 1:55 Better Power Regeneration 3:06 HUD Changes 3:58 Inventory System 6:50 Only 2 Arrows 7:48 Fragment System 9:06 Outro Discord Server: discord.gg/pKWuwS5
Creating Upgrades For My Roguelike Game - Devlog #4
Переглядів 23 тис.2 роки тому
In this devlog, I made an upgrade system and began working on procedural generation. 0:00 Intro 0:16 Redesign 1:54 Screen Shake 3:28 Procedural Generation 5:38 Power Regeneration 6:17 Upgrades 7:58 Outro Discord Server: discord.gg/pKWuwS5
Adding Unique Arrow Types To My Game - Devlog #3
Переглядів 18 тис.2 роки тому
In this devlog, I finished the boss from last time and made different arrow types to switch between. 0:00 Intro 0:26 Boss 2:14 Arrow System 3:57 Targeting Arrow 5:01 New Enemy 6:08 Obelisks 7:05 Outro Discord Server: discord.gg/pKWuwS5
Making A Boss For My Own Roguelike Game - Devlog #2
Переглядів 18 тис.2 роки тому
Download Core to create games for FREE at: bit.ly/Core-TimBer In this devlog, I began working on the first boss for my game and made some improvements to the gameplay. 0:00 Intro 0:34 Abilities 1:34 Sponsor 2:52 Gameplay Loop 3:40 Boss 4:40 Bug Fixing 6:12 Bow & Crit Mechanic 7:25 Small Improvements 8:01 Outro Discord Server: discord.gg/pKWuwS5
Making My Own Roguelike Game With Bow Combat - Devlog #1
Переглядів 51 тис.2 роки тому
I began working on a Roguelike Game with bow and arrow mechanics. I really enjoy playing roguelike games like risk of rain and so I wanted to try and make one myself. Discord Server: discord.gg/pKWuwS5
Making A Game With Joined Together Players | GMTK Game Jam 2021
Переглядів 3 тис.2 роки тому
In this video I show my progress and the development of the game "Core Protect", I made for the GMTK Game Jam 2021 in 48 Hours. "Core Protect" on itch.io: t1mber.itch.io/coreprotect
Creating an easy Ability System in Unity
Переглядів 95 тис.3 роки тому
This video shows you how to make a simple Ability System for all kinds of games in Unity. The system can be expanded easily and it allows you to change abilities in run time.
My Game Is Finally Finished | Catch Me
Переглядів 4,3 тис.3 роки тому
The game I have been working on for over a year is now out. Catch Me on Itch.io: t1mber.itch.io/catch-me
Close To Release | Game Devlog #14
Переглядів 2,1 тис.3 роки тому
This is the 14th Episode in my Devlog Series about my game called "Catch Me". The game is a fast paced top-down game about dodging enemies and let them collide to kill them.
Game Tutorial And New Level System | Game Devlog #13
Переглядів 1,7 тис.3 роки тому
This is the 13th Episode in my Devlog Series about my game called "Catch Me". The game is a fast paced top-down game about dodging enemies and let them collide together to kill them.
Making of "Jump Now" in 48 Hours | GMTK Game Jam
Переглядів 2 тис.3 роки тому
A short video about the development process of the game I made for the GMTK Game Jam in 48 hours. "Jump Now" on itch.io: t1mber.itch.io/jump-now
Changing Up Gameplay And Adding Music | Game Devlog #12
Переглядів 1,1 тис.3 роки тому
This is the 12th Episode in my Devlog Series about my game called "Catch Me". The game is a fast paced top-down game about dodging enemies and let them collide together to kill them. Dario on Fiverr: www.fiverr.com/share/WewokR
Game Polishing | Game Devlog #11
Переглядів 1,5 тис.4 роки тому
This is the 11th Episode in my Devlog Series about my game called "Catch Me". The game is a fast paced top-down game about dodging enemies and let them collide together to kill them. Blackthornprod's Video: ua-cam.com/video/GLS5_V7kN-8/v-deo.html
How To Make Your Game Feel Better
Переглядів 23 тис.4 роки тому
How To Make Your Game Feel Better
Enemy Improvements | Game Devlog #10
Переглядів 1,1 тис.4 роки тому
Enemy Improvements | Game Devlog #10
Gameplay Fixes | Unity Game Devlog #9
Переглядів 7914 роки тому
Gameplay Fixes | Unity Game Devlog #9
All Bosses Updated | Unity Game Devlog #8
Переглядів 1,3 тис.4 роки тому
All Bosses Updated | Unity Game Devlog #8
Unity Game Devlog #7 Final Boss
Переглядів 2,2 тис.4 роки тому
Unity Game Devlog #7 Final Boss
Unity Game Devlog #6 Playtesting My Game
Переглядів 1,9 тис.4 роки тому
Unity Game Devlog #6 Playtesting My Game
Unity Game Devlog #5 Big Decisions
Переглядів 1,4 тис.4 роки тому
Unity Game Devlog #5 Big Decisions
Unity Game Devlog #4 Ability System Rework
Переглядів 4,1 тис.4 роки тому
Unity Game Devlog #4 Ability System Rework
Unity Game Devlog #3 Quality Of Life Changes
Переглядів 1,6 тис.4 роки тому
Unity Game Devlog #3 Quality Of Life Changes
Unity Game Devlog #2 Missiles Ability
Переглядів 4,7 тис.4 роки тому
Unity Game Devlog #2 Missiles Ability
Unity Game Devlog #1 New Enemy and Bosses
Переглядів 2,4 тис.4 роки тому
Unity Game Devlog #1 New Enemy and Bosses
Unity Game Devlog #0 Introduction
Переглядів 4 тис.4 роки тому
Unity Game Devlog #0 Introduction

КОМЕНТАРІ

  • @Anerisian
    @Anerisian 9 днів тому

    Aaans full circle, since Unity supports ECS.😁

  • @jak3legacy
    @jak3legacy 16 днів тому

    Unreal Engine uses ECS correct?

  • @xymaryai8283
    @xymaryai8283 16 днів тому

    i finally have a rudimentary understanding of ECS, thankyou

  • @DerSolinski
    @DerSolinski 21 день тому

    Saw the thumbnail and thought: "Let me guess, fed up with Unity switched to Godot and likes but doesn't feels quite right and ends up with Bevy" ...guess I nailed it.

  • @googleuser4720
    @googleuser4720 Місяць тому

    Let me guess, less than 100 reviews on Steam/App Stores

  • @noise_dev
    @noise_dev 2 місяці тому

    such a clean, simple and amazing art! looks futuristic and soo dynamic. I love it! good job!

  • @jaybehl7567
    @jaybehl7567 2 місяці тому

    Fantastic Video but what if you want to create, lets say, 100 abilities. You will have to create each cooldown/active time for each and everyone, right? Is there a workaround for this issue?

    • @yowhatitlooklike
      @yowhatitlooklike 29 днів тому

      If you are expecting cooldown/active time to be roughly the same for all or most abilities, you can set default values for those variables in the ability script. Or maybe another solution is to keep a static class holding the cooldown/activetime as different constants and have the SO pull the values from that when empty... that way you can group cooldowns into different "default" values instead of being stuck with just one

  • @ND6K
    @ND6K 2 місяці тому

    How do you make the amazing animations/visuals comparing Unity and bevy’s composition vs inheritance structures?

  • @nowonmetube
    @nowonmetube 2 місяці тому

    Why am I watching tutorial videos from a 12 yo? And why am I still learning from that? 😐

  • @allmightygraemed
    @allmightygraemed 2 місяці тому

    You should make it so if your in the water you can only go in the inventory. It'll make the player have to decide what to equipped before you go into battle

  • @mehmeh8883
    @mehmeh8883 2 місяці тому

    I too wanna move to bevy soon

  • @marionet25753
    @marionet25753 2 місяці тому

    If I want to use a function inherited from the MonoBehaviour class in script DashAblity, do I need to change it to create a variable on the Field to receive a value that is a ScriptableObject?

  • @IcyTorment
    @IcyTorment 2 місяці тому

    I miss the days when roguelikes were like Rogue.

  • @Samael2824
    @Samael2824 3 місяці тому

    Well this is a pain in the butt for a more complex movement system.

  • @derlinjesustaverasperalta1724
    @derlinjesustaverasperalta1724 3 місяці тому

    is there a way to do it independent ? and also not using [CreateAssetMenu]

    • @yowhatitlooklike
      @yowhatitlooklike 29 днів тому

      I personally just duplicate (ctrl +d) and rename an existing ability in the editor and then change its values instead of using the menu every time.

  • @zegtronic
    @zegtronic 3 місяці тому

    commenting for algorithm

  • @hell0kitje
    @hell0kitje 3 місяці тому

    hi whats ur vsc theme?

  • @aloussase
    @aloussase 3 місяці тому

    I'm currently using C++ + Raylib & EnTT (an ECS) for my games. This combination makes it extremely easy and enjoyable for me. I will probably try Bevy for a future game as I am already comfortable with Rust, just to make the comparison.

  • @karficzfrizack2711
    @karficzfrizack2711 3 місяці тому

    Thanks!

  • @ryanscott642
    @ryanscott642 4 місяці тому

    The best way to code games Godot is to use composition, not inheritance.

  • @karlbeats4026
    @karlbeats4026 4 місяці тому

    how about when you add more abilities? with different cooldowns

  • @Bananenbauer123
    @Bananenbauer123 4 місяці тому

    I don't think the point about "inheritence" is actually true. Sure, if you want to make a component or node that adopts the funcionality of an already existing component/node, then inheritence is an easy way of achieving that. Fundamentally though the principle of composition is expected both in Unity and Godot, they are actually very similar. If we think about what composition is it's really just splitting an overly complex object into multiple smaller ones where each one performs a specific task - so that we can *compose* objects that facilitate that exact behaviour (resources are used to contain data). And so sharing and managing references of the indivudal objects so that the components can communicate is a natural side effect of this pattern. And there are common ways of tackling this- like export variables and prefab/scene management, where you construct a prefabricated object with all of its references set already. The final object should be an in itself functional thing. Now, additional dependencies can exist *outside* that object, but that's another story. I totally understand and respect your choice though, and I gotta say the idea of ECS and systems sounds pretty dope as well and I'm honestly curious to check this out myself one day. All that being said, I wish you best of luck with your game project!

  • @halivudestevez2
    @halivudestevez2 4 місяці тому

    While it's great for inspiration, I will rather analyze and design my requirements. The only thing I see reason for a SO is, that you can set it an Icon - visual representation. Otherwise I see a static class, or an xml for data seems better to me. Now thinking....

  • @_SuperSadex
    @_SuperSadex 4 місяці тому

    Nice video, looking forward to the next devlog!

  • @squishy1774
    @squishy1774 4 місяці тому

    Two enemy concepts: (similar, but different) A melee enemy that when hurting you, temporarily takes one of your PLAYER shards, gaining those buffs. Will drop shard(s) when killed A ranged enemy that when hurting you,temporarily takes one of your ARROW shards, gaining those buffs. Will drop shard(s) when killed

  • @cue_ball_jamal
    @cue_ball_jamal 5 місяців тому

    can we get the neovim dotfiles

  • @yipperson2974
    @yipperson2974 5 місяців тому

    when the explody enemy explodes, the screen should shake a little bit to make it feel more impactful

  • @paveladventures5665
    @paveladventures5665 5 місяців тому

    Literally the same path and opinion! Good luck with your game!

  •  5 місяців тому

    amazing. it's cool that more and more people notice rust and use it in their projects. i heard about bevy and it's nice to see that you enjoyed using it

  • @emberchord
    @emberchord 5 місяців тому

    Hope you feel more inspired with a more functional type of programming design pattern! I just recently started playing with phaser, which also follows a ver classical OOP design pattern. Coming from a more functional approach, I prefer OOP for game dev much more though. Happy developing!

  • @etta777
    @etta777 6 місяців тому

    Bist du Deutscher?

  • @jRsqILVOY
    @jRsqILVOY 6 місяців тому

    My main issue with trying Bevy was the lack of UI tooling compared to Godot. I found Godot with GodotExtension e.g. (GdExtension for Rust or SwiftGodot for Swift) to be the best middle-ground (at least for now). The ECS approach is interesting from a performance point of view, but I also hit an issue with not being able to do "joins", e.g. storing the current map ID in the Player component and then joining from that to get the map size, instead I had to work around it with some data duplication in different components.

  • @MattWyndham
    @MattWyndham 6 місяців тому

    That's an awesome explanation of how Bevy works!

  • @buzzy4227
    @buzzy4227 6 місяців тому

    I looked into bevy a while back but decided it probably wasn’t mature enough when the getting started page said to use rust in godot instead

  • @larryd9577
    @larryd9577 6 місяців тому

    It's BS to state that you have to work with complex inherritance-structures when working with Unity. Yes: you have to inherrit from MonoBehaviour or ScriptableObject, but thats it. And the only thing you get from that is the connectivity to the game hooks and the ability to used them as an components. And one layer of Inheritance is not "overly-complex". I'd go so far to state that one-level of abstraction is a must, because you should work with interfaces and have a well defines API for your components.

  • @cristianinujazznight3044
    @cristianinujazznight3044 6 місяців тому

    Would you try SDL2 + C++. Mostly because you used C#.

  • @jsonkody
    @jsonkody 6 місяців тому

    Awesome video .. may I ask what software did u use for those animations? PS: oh motion canvas I see .. most people don't mention this in desc. 😅

  • @darthanonymous8135
    @darthanonymous8135 6 місяців тому

    rust is crap. you can write a perfectly safe code that rust wouldn't allow to compile. which means rust, just like swift and kotlin is trying you how to think instead of doing what you think for you. if it was in c++ focused, i would've switched to it.

  • @dinophage
    @dinophage 6 місяців тому

    Great video! I highly suggest checking out Tantan's channel as well as a rustacean and bevy game developer

  • @xdimplendidx
    @xdimplendidx 6 місяців тому

    The research part is the most instructive part lol

  • @ThatRobHuman
    @ThatRobHuman 7 місяців тому

    I'm unsure if you're still open to feedback-shaped thoughts at this point, but in case you are: - The geometric art direction you've been going with gives me some Tron-esque vibes (less Tron Legacy and more old school Tron, but even so) - I wonder if it's worth leaning into that a little during art refinement - kind of a Geometric Technomantic thing vibe. See also Hyper Light Drifter, the Progenitors from Homeworld, the Zeffo from Jedi Fallen Order, Endless Legends.. anything where ancient-become-archeological advanced technology is a prevalent thing and there's wonderful aesthetic to draw from. - In one of your previous devlogs you put a poll up for naming Fragments - one of the names was "Relics" - I wonder if you can/should co-opt the name as a mechanism for another upgrade distinct from Fragments. Fragments increase stats while Relics could unlock Abilities like Grapple, or a radial burst attack: stuff like that. That way it becomes a decision: "Do I want to boost my stats, or do I want to have this tactically useful ability?". It also lets you achieve progression by re-using an existing and familiar inventory mechanic - just slightly differently.

  • @megatronusv2215
    @megatronusv2215 7 місяців тому

    I think you enjoy programming more than you enjoy finishing games. Get it done, get it fun. Don't forget

  • @CZCrezSimGames
    @CZCrezSimGames 7 місяців тому

    You should stick with the first one you made.

  • @juneru2
    @juneru2 7 місяців тому

    It's difficult to find the right game engine or framework, I went from Unity, to PICO-8, to LOVE2D, then finally p5.js, all for a simple puzzle game. I agree with you that Unity is just overkill for most indie developers.

  • @DekosAnjo
    @DekosAnjo 7 місяців тому

    I'm migrating to Godot as well. I have 10 years of experience with Unity. I decided to switch after Unity's runtime fee hit us hard. It was the final straw for me. I already had some experience with Godot, making minigames for clients. Here are some tips: First, do not use C# in Godot! It's buggy, it's a hack, and it will be removed in favor of GDnative extensions anyway. Everyone coming from Unity thinks it'll be easy to use C# in Godot then learn GD. It's not! Learning GD is faster than trying to figure out how to do things in C# on Godot. GD is really easy to understand and powerful when you need it. It has some quirks, but it's evolving with every Godot version. Secondly, 'Scenes' and 'Prefabs' don't exist. Everything is a Node, so don't rack your brain trying to load a 'Scene' or 'Prefab'. Just instantiate it as a node anywhere you want.

  • @Noixelfer
    @Noixelfer 7 місяців тому

    Good video but saying that Unity forces (or even embraces) you to use inheritance is wrong. Actually Unity pushes you to use *Composition* (you add *components* to a prefab). Highlighting that as a problem and then showing how Godot literally uses *Inheritance* for nodes was weird (Specifying that you wanted to try different engines would have been better instead of this, the points 1 and 2 definitely stand, the editor is quite heavy and the source code is hidden) Regarding the coding structure in Unity, I think that it's mostly because of the tutorials available, most of them show you how to achieve a certain result but don't care about scalability, dependencies and so on. You can definitely make the code not look like a 🕸 if you have a proper achitecture, use patterns like Observable or Messaging to decouple the code, redeuce the scope and visibility of variables and methods, etc

  • @alexandercherkasov2913
    @alexandercherkasov2913 7 місяців тому

    Unity forces you to code in some certain way and use inheritance heavily? Have you ever tried Unreal? :)

  • @mrbeancanman
    @mrbeancanman 7 місяців тому

    I also recently pivoted to bevy... so far its preeeetty nice!

  • @crispy_dev
    @crispy_dev 7 місяців тому

    Welcome to the bevy team!