How NOT to make a game from scratch

แชร์
ฝัง
  • เผยแพร่เมื่อ 19 มิ.ย. 2024
  • a different kind of video this time
    PATREON: / jdah
    TWITTER: / jdah__
    * Jonathan Blow - Truth in Game Design: • Jonathan Blow - Truth ...
    * Stream clip: • How to Setup Entity Sy...
    GITHUB: github.com/jdah
    EDITOR: NeoVim
    CONFIGS: github.com/jdah/dotfiles
    THEME: gruvbox
    0:00 Intro
    0:14 What went wrong?
    1:25 Prototyping
    2:12 Mechanics
    3:05 Design comes first
    4:16 Simplicity
    5:36 Gameplay over graphics
    6:40 Where to go from here
    7:41 Patreon Launch & Outro
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 607

  • @bianchialex
    @bianchialex ปีที่แล้ว +2440

    This channel is like watching someone learn 30 years worth of lessons that the software engineering industry learned the hard way. Except instead of picking up a textbook, you just learn them the hard way again. It’s awesome.

    • @noxabellus
      @noxabellus ปีที่แล้ว +74

      Wow this is so apt lol. Yeah you're exactly right. This is why I love this channel.
      I feel like it mirrors my own learning experience but this guy is way smarter, and there's single videos covering things it took me years to figure out lol

    • @talananiyiyaya8912
      @talananiyiyaya8912 ปีที่แล้ว +16

      It's an exercise in futility. This guy won't get anywhere.

    • @MichaelSievers
      @MichaelSievers ปีที่แล้ว +70

      Actually I do believe he is going places.. I've seen people read relevant books and not being able to make use of that knowledge. Learning something the hard way can really make it stick. Plus, I believe it is perfectly fine to set oneself a goal that might be unachievable in order to learn and exercise new skills.
      And as this current video clearly shows, the meta-skills like "how do I work on a project in the first place " are part of that as well, increasing chances of finishing the next project.
      And while the videos might look like there is no delivered "product" after all these efforts, I'd like to point out that we are discussing this in the comments of a video that has meaningful content, a characteristic style and editing 🙂

    • @Brahvim
      @Brahvim ปีที่แล้ว +7

      That's how I've been learning too.

    • @bianchialex
      @bianchialex ปีที่แล้ว +3

      @@MichaelSievers oh I agree! Just making a joke.

  • @ModBros8434
    @ModBros8434 ปีที่แล้ว +1133

    I can’t believe this is the first game design focused video you’ve made for this game

    • @jdh
      @jdh  ปีที่แล้ว +366

      neither can I tbh

    • @trashtrash2169
      @trashtrash2169 ปีที่แล้ว +119

      Ok, but, robots, plants, and cave, and it's really cool bro.

    • @OrangeC7
      @OrangeC7 ปีที่แล้ว +28

      @@trashtrash2169 I'm sold.

    • @Yadobler
      @Yadobler ปีที่แล้ว +6

      I want to add on here that it's not just game design, but code design itself. If your code are just getters and setters and raw access to everything, you are asking for bugs and failures and roadblocks when you realised you can't do something without hacky workaround
      A good design, even during your practical programming exams, will let you design and abstract away different parts of your code that have good type-scoping and "tell, don't ask" styles and object inheritance and even monad designs that can make life great (without feeling like you're cheating with some library)
      Tell, don't ask and SOLID design paradigms are great when done right, though not fun

    • @genericalias5756
      @genericalias5756 ปีที่แล้ว +1

      @@Yadobler you know he's a software engineer right?

  • @peytonfaz
    @peytonfaz ปีที่แล้ว +566

    scope resolution and not pay enough attention to the game loop is unfortunately very easy to mess up. i had that exact same problem when i started out making games with SDL2. glad you were able to recognize this!
    also something called "paper prototyping" is actually a very powerful tool to test if the game is even going to be fun. no coding required just paper and a few pencils or art supplies depending on how crazy u wanna get with it.

    • @jdh
      @jdh  ปีที่แล้ว +172

      i'm actually already paper prototyping for my next game! thanks for the suggestion.

    • @peytonfaz
      @peytonfaz ปีที่แล้ว +59

      @@jdh that's great to hear! don't worry btw everyone makes the same mistakes you did, it's just rare that people find out what went wrong.

    • @samuelhulme8347
      @samuelhulme8347 ปีที่แล้ว +2

      @@jdh or you may use something like ms paint instead

    • @morgan0
      @morgan0 ปีที่แล้ว +30

      > paper prototyping
      may i introduce you to procrastination prototyping, where instead of making something, you don’t, but you still think about it for months. given enough time and knowledge of related concepts you’ll eventually figure at least some of the problems out

    • @v0id_d3m0n
      @v0id_d3m0n ปีที่แล้ว +9

      ​@@morgan0 damn i didn't know there was a name for this /j

  • @dragonsdream4236
    @dragonsdream4236 ปีที่แล้ว +197

    I think recognizing where one has made missteps and trying to actively correct them is a huge part of "failing faster" people don't talk about, you can fail at sonic speeds but your failures won't mean anything unless you learn from them, so a fantastic post-mortem dissection like this is a way to grow even stronger from your failures, I wish you the best of luck for your next game!

  • @serbrawl7981
    @serbrawl7981 ปีที่แล้ว +629

    In conclusion: you started to build a house but you didn't even have the blueprints
    In any case, I like you because you do projects in a different and rustic way. I'm always glad to see you programming in C++ and using neovim even though I don't understand either one

    • @-aexc-
      @-aexc- ปีที่แล้ว +9

      neovim honestly isn't hard to setup, just use astronvim to setup neovim with syntax checking and stuff. once you're used to it, it is so so much better than most GUI ides

    • @serbrawl7981
      @serbrawl7981 ปีที่แล้ว +6

      @@-aexc- yeah, but I didn't say nothing about set up, I know it is very easy to install the problem is the extreme learning curve

    • @-aexc-
      @-aexc- ปีที่แล้ว +2

      @@serbrawl7981 ah, it took about a week for me to get used to it after forcing myself to only use neovim

    • @serbrawl7981
      @serbrawl7981 ปีที่แล้ว +14

      @@-aexc- great, I prefer mc paint

    • @myrdddin
      @myrdddin ปีที่แล้ว

      @@-aexc- click escape, :qa! for quit, :x for save and quit and press enter :)

  • @rottdude1985
    @rottdude1985 ปีที่แล้ว +92

    I’m making my own game/engine, and I’m guilty of the same mistakes. I’ve been working on it for 7 years, and I’m nowhere close to done. But, I keep working on it, because I enjoy doing it. It’s a constant challenge that keeps me busy and entertained. Making a game is the greatest game I’ve ever played, even if I never finish.

    • @konjecture
      @konjecture ปีที่แล้ว +1

      But you are not making any TH-cam videos about it, and making money out of it as this guy is 😊.

    • @schlopping
      @schlopping ปีที่แล้ว +24

      @@konjecture How does that change anything?

    • @BryanLu0
      @BryanLu0 ปีที่แล้ว +15

      @@test-zg4hv doing hobbies for your own enjoyment versus doing hobbies for the algorithm tm are two very different things. You can't just upload footage of writing code. You need to do voiceovers, and explain your thought process. You have to edit videos in a way that holds the viewers attention. It isn't as simple as film and profit. There is a reason yt videos have high production quality. So I don't think it's a dumb idea to not subject yourself to the pressure that is TH-cam and waste time without making money

    • @Barely_Edited
      @Barely_Edited ปีที่แล้ว +5

      @@test-zg4hvyou know you don’t HAVE to monetise your hobbies, right? its not all about the grind

    • @WHAT_TAHW
      @WHAT_TAHW ปีที่แล้ว

      @@Barely_Edited there's no reason not to, if I enjoy doing something I eventually get good at it so why wouldnt I want to make money off of it so I could spend even more time doing what I like?

  • @violetwtf
    @violetwtf ปีที่แล้ว +62

    just wanna mention that the work you *did* with graphics and such was incredibly impressive and no doubt valuable to your long-term knowledge as a game developer. the benefit of things like this are not entirely immediately clear. you learned a lot.

  • @TheExtremeCube
    @TheExtremeCube ปีที่แล้ว +14

    You say you're not good at art, but all your art is very aesthetically pleasing. Honestly man you're an inspiration, building engines from scratch and making good pixel art

  • @JanbluTheDerg
    @JanbluTheDerg ปีที่แล้ว +22

    Local game engine maker discovers that game design is important, seeks to go study that now.
    Sure, you got pretty far along with the game and the engine and could have done well to prototype, but you at least managed to catch yourself before the sunk cost fallacy overtook you. And you have a game engine on hand now! Maybe the game didn't work out as a game, but instead as a tech demo. Sieze the chance to fail fast and figure out a direction, before sticking to it and proceeding. I highly recommend the series "Developing" by GMTK, there could be some lessons from the process they went through that could give you some ideas.
    All the best!

  • @av3stube480
    @av3stube480 ปีที่แล้ว +62

    Honestly, the idea of a robot in a cave planting stuff has room for interesting mechanics. Off the top of my head, I can think of one idea:
    1 - the robot is like Wall-E, and is trying to terraform a cave through planting various plants with all kinds of functions, with the end goal of transforming the atmosphere inside this enclosed cave system into a breathable atmosphere. The atmosphere wouldn't need to be like earth's, either - you could have room for different levels by having different atmosphere goals, each of which would present a specific challenge.
    For example, one plant takes in one type of gas and outputs another, but requires a specific terrain and a strong light. How do you achieve it? Other plants with more basic functions - like a plant that glows, but requires being planted on a specific rock or soil. Also, you could just ditch physics an go all in on magic. A plant that creates a gas barrier, but allows solids to pass through. A plant that breaks down rock into a specific soil, then dies. A plant that dissolves rock around it into a fluid. A plant that... you get my point.
    Kind of similar to Botania (mod for Minecraft) x Factorio x Terra Nil.
    But yeah, your game right now is an overdeveloped tech demo - just showcasing what your engine can do. Maybe just reuse the engine and try to make a game from scratch, but this time with a goal in mind?

    • @0v_x0
      @0v_x0 ปีที่แล้ว

      I was thinking an ARPG with crafting elements, perhaps an alliance between plants, robots, and few surviving humans defending earth from an unknown threat. Lots of room for exposition through gameplay. I really like the vibe of the engine as well. I could definitely see a spin on ARPG combat with tower defense, realtime or turn based; resource management and crafting/harvesting. I also just love the theme of plants and robots.

    • @0v_x0
      @0v_x0 ปีที่แล้ว

      Something like, idk, Icewind dale meets Zelda 1 meets Diablo for combat, and Starcraft meets plants vs zombies, on a background of Star dew Valley and Don't Starve? With automation like factorio... I think the mashup of style could be excellent, and would be a formidable challenge balance-wise. That'd be shooting for the moon for sure, with both real-time and turn based elements to implement (maybe just real-time that allows pause for management/stacking commands?) but having layers of gameplay like that seems both fun and ambitious. I'm just wishful.

    • @PHeMoX
      @PHeMoX ปีที่แล้ว +1

      The stuff above is what is missing within this game's design. It needs more brainstorming and more bullet point style notes of what you can do with the concept, where to take it and so on. Discarding the project now isn't quite necessary. Plenty of mechanics would work with the premise that already exists now.

    • @cannoneermike
      @cannoneermike ปีที่แล้ว

      that's what i was thinking, the engine is there and a base thematic is present, just needs mechanics and purpose. This can be saved imo, the creator just needs to decide on something instead of adding bells and whistles

    • @blehmeh9889
      @blehmeh9889 9 หลายเดือนก่อน

      I think you're right. A space colony game in which you play as a robot preparing a cave in a spare planet for humans/other intellingent aliens who will arrive in the cave later would potentially revolve around an enticing gameplay loop of cultivating an ecosystem of plants to produce a livable atmosphere as well as potentially fighting off hostile fauna to clear out and protect the colony cave. Heck, "Colony Cave", man that's a heck of a title right there! This gameplay loop would include those elements he mentioned as means to an end; crafting would come about as a way to make more weapons or resources to fight more monsters or maybe splice plants together to create new ones to achieve a desired atmosphere. Exploration would be an essential component of gameplay as you wouldn't be able to finish making the cave livable without exploring every nook and cranny for more monsters who could pose a threat to your colonists or looking for resources. Procedural Cave Generation would mean making the game far more replayable as each cave could be abstracted to be another cave on the planet somewhere. Heck, he would even have good motivation to go even further and develop features like multiplayer so that more people could colonize space caves together.
      It would have been like a little like Deep Rock Galactic but as a long term colonist instead of a "Get in and get out" space miner.
      I don't think this engine is a lost cause at all, as he still has the code and he has systems in place that he can quickly use to assemble a gameplay loop. However, I think he needs a good pitch and a good primary core gameplay loop in mind before he attempts this project again, and I think the "Robot colonist colonizes dangerous space game for humans by battling monsters and cultivating plants" approach to a primary core gameplay loop is punchy and effective because it would give him some smaller systems he could build immediately (such as basic combat with monsters) and give him an end goal to think about when redesigning his plant biology systems.

  • @Ketpain
    @Ketpain ปีที่แล้ว +3

    Good insight and learning experience for you! Regardless of the project or not, it was a great way for you to warm up to everything you're doing! Looking forward to your next reveal. Awesome seeing your Patreon! Keep up the good work and be sure to take care of yourself too

  • @alevanderBatman
    @alevanderBatman ปีที่แล้ว +6

    There’s a reason I have two game projects that have a “permanent” place in the back of my mind. Slowly cooking until I can construct a satisying gameplay loop/idea to connect the rather scattered ideas I have for each. Writing ideas down and trying to connect them ocassionally. It’s really helpful that way!

  • @coswic9128
    @coswic9128 ปีที่แล้ว +20

    Thank you so much, am a beginner developer and something that's rlly hurting is my game design skills, ive dropped so many projects because of this but honestly this video sums up everything i did wrong in my failed projects, now i hope my game design skills improve haha

  • @mikaelfoster9726
    @mikaelfoster9726 ปีที่แล้ว +56

    I've always gotten a "city of ember" vibe from this- I'd like to see some sort of continuation - this is the creative process, nothing wrong with it. No mistakes only happy accidents, and you never start from scratch - you start from experience

    • @mikaelfoster9726
      @mikaelfoster9726 ปีที่แล้ว +9

      It was a book about an underground city- all they had were candles and streetlights so the city was colored amber, they'd been down there so long they forgot the surface existed- but when the generators thatve powered the city for hundreds of years start cutting out and a child finds clues that the cave isn't all there is, they and their friends search for an exit. They find a river that leads out and see sunlight

    • @rollinontheboard
      @rollinontheboard ปีที่แล้ว +3

      @@mikaelfoster9726 It's called "EMBER" not "AMBER" and yes I have heard of it!

    • @mikaelfoster9726
      @mikaelfoster9726 ปีที่แล้ว +2

      @@rollinontheboard I thought it may be was! 😅 I have the memory of a goldfish- but nice to know I'm not alone lol ❤️

    • @diddlenfiddle7311
      @diddlenfiddle7311 ปีที่แล้ว

      It very easy to say that but sometime starting from scratch is what's needed.

    • @mikaelfoster9726
      @mikaelfoster9726 ปีที่แล้ว +1

      @@diddlenfiddle7311 yeah but unless you've just been conceived there's no such thing as starting from scratch-

  • @judexmars4214
    @judexmars4214 ปีที่แล้ว +1

    Ngl this is the first video that I watched from you but oh my your game looks so fancy! Really cool visuals!

  • @speckleBo
    @speckleBo ปีที่แล้ว +8

    I admire your courage for finding those mistakes and putting this up for all of us to learn from! I look forward to your future projects!

  • @nulcow
    @nulcow ปีที่แล้ว +2

    Weirdly enough, I have the exact opposite issue whenever I work on a project. I spend days before actually starting a project thinking about ideas for it, how they fit together, how they would work, etc. But the issue is, I can never actually figure out how to create systems or make things actually work. I can know exactly what kind of thing I want to make, but then fail to actually execute it in any meaningful way because I'm not skilled enough to actually apply my ideas. This is the exact opposite of the problem shown in this video, where most of the effort and skill is in systems (things like the game engine, entity system, graphics. etc.) rather than the actual game design that those systems are supposed to support. This is probably the reason why people create studios and work in teams instead of just one person doing everything. Unfortunately, I and many other people do not have the luxury of having a team to work on projects and have to deal with our own issues when it comes to things like this.

  • @samarthtandale9121
    @samarthtandale9121 ปีที่แล้ว +3

    Cool! Thanks for sharing this valuable experience of yours ✨🙏... All the best for future projects 💯🙌🏼

  • @maker0824
    @maker0824 ปีที่แล้ว

    I have not seen any videos from this channel, but omg that opening description sounds so much fun

  • @clydagnathus
    @clydagnathus ปีที่แล้ว +55

    At worst you still made a really cool tech demo!
    As a software developer (mostly C) by trade, the programming and tech that goes into games has lots of really fun problems, but games themselves and game design are not especially interesting to me. It's funny how many programmers end up doing game related things as a personal project (myself included). My theory is just that its the most accessible and easy to distribute form of software out there, and there's always lots of game ideas floating around in everyone's heads.
    I think there is always something pulling at me to be idealistic about the idea of making an entire game from scratch all by myself. But at the same time when I really dive into doing art or spending a lot of time doing game design I realise that it just isn't where my particular talents lie. Of course if you enjoy doing art and game design as a hobby its an entirely different story, but for me personally I'm always having more fun when my time is being used as efficiently as possible contributing to whatever I am best suited to tackle on a given project. I have learnt to never discount the value of getting together with a friend who does art or game design, so that everyone's talents and time are utilised optimally!
    Keep up the great work!

    • @GodofGamesss
      @GodofGamesss ปีที่แล้ว +1

      Wish I had a programming friend lol. I m stuck with all these game idea's but fail at the programming stage... No matter how much I dumb down the difficulty of the programming aspect.

    • @azzy-551
      @azzy-551 ปีที่แล้ว

      @@GodofGamesss it's definitely a steep learning curve but it's very liberating when you actually figure it out. You just keep trying till you get to a point where you have enough basic information to teach yourself the rest. You just have to be persistent and patient.

  • @mrbusiness2
    @mrbusiness2 ปีที่แล้ว +1

    Maybe it just needs a story, a goal, and an end game? What if the robot returns to post-apocalyptic earth in order to rehabilitate it? What if you start out by cleaning up trash, recycling materials to build useful tech, then use that tech to incubate better atmosphere and environmental conditions, which allows for seeds that were found in a seed-bank underground to begin to reproduce, cleaning out water supplies and decontaminating the land, slowly reintroducing and growing plant life to the point where it's producing enough oxygen so that the humans in space can return and begin recolonizing the planet in the end?
    That was my idea for a game, and then I found your channel and realize you were already many steps ahead of me in building the same game, but without the guiding story and goals. I was really excited about this project!

  • @twomur_
    @twomur_ ปีที่แล้ว +2

    man i am so excited to find out what your next project is!!

  • @hermestrismegistus9142
    @hermestrismegistus9142 ปีที่แล้ว +29

    The only people who don't makes mistakes are those who aren't trying. I count my mistakes as tokens of progress.
    One thing I've learned over the years is to always always always design something thoroughly before you build it. That way you can have a good idea of whether it will actually work or not before you start to build it and potentially save you from hitting a dead end.

  • @eboatwright_
    @eboatwright_ ปีที่แล้ว +1

    I'm excited to see what you do next! Hope you hit 200k by the end of the year :)

  • @friedcrumpets
    @friedcrumpets ปีที่แล้ว +3

    This was really really helpful. Not many people make videos like this and the honesty was golden. Thank you 👌I don't prototype enough

  • @ro-ce8vg
    @ro-ce8vg ปีที่แล้ว +11

    I really love seeing someone recognize and reflect on their mistakes like this

  • @bodardr
    @bodardr ปีที่แล้ว

    Great job, love to see a constructive introspection in game dev. I am sure you have learned a lot from this experience. Good luck in your future endeavors ;).
    You've accomplished in a short amount of time what Randy didn't even begin to ponder over in the last 3 years.

  • @giuliopimenoff
    @giuliopimenoff ปีที่แล้ว +14

    It has been so nice to see you building this game, waiting for the next project now :)
    Btw you could make a Discord ^^

  • @DodaGarcia
    @DodaGarcia ปีที่แล้ว +3

    Thank you for your candor! I think that temptation to indulge in execution is an lifelong pitfall for us creative types who are also technical.
    We love being able to make something come to life and there's always a cool new tool or technique to learn, but as you said the end result of that is often a disjointed project full of very cool parts that don't join into an entertaining whole, and premature optimizations that might not have been needed. I've definitely had my share of projects fail for that reason so you're definitely not alone!

  • @Nevermore101
    @Nevermore101 ปีที่แล้ว +1

    The lighting in your engine looks great dude! Good luck with your new project, from an ex-indie-dev :D

  • @smellthel
    @smellthel ปีที่แล้ว

    I am super excited for your next project!

  • @TheRubenazo
    @TheRubenazo ปีที่แล้ว +8

    This video just solidifies the idea that every game developer should have gone through a little game design course and understand how to structure your idea and how to develop it so the risk of failure is lower. I've learned a lot in uni in this regard and I am ready to work like a pro... (sorta)

    • @PHeMoX
      @PHeMoX ปีที่แล้ว +1

      Lol, there's no way such a design course prevents you from failing at game design in general. Proper game design is like writing a music song. The first hundred or so attempts will fail, the next 20 to a 1000 probably will never become truly good, let alone original. Making a good videogame is difficult. Cloning other people their existing concepts is easy. Hence, why most games out there are kinda variations on existing stuff. The 'game design' courses in uni are usually about showcasing existing designs. It's rarely ever about _real_ game design.

  • @arial_01
    @arial_01 ปีที่แล้ว +6

    Hey man, been watching for ages. last time I commented was during that CPU build stream (asking if it would ever be put in a case)
    Either way, I really enjoy the channel; your calming voice, coding skills, and frankly amusing content always make your posts the highlight of my day.
    I cant wait to see this new project!
    P.S. RIP little robot.

  • @Amy_A.
    @Amy_A. ปีที่แล้ว +5

    Failing fast and often is such an important concept to learn with programming. A lot of my early projects failed because I wanted to make things as absolutely perfect as possible, and I got stuck in refinement hell. I should have been adding features, but instead I was writing and rewriting the same thing over and over, because I wanted to be sure I couldn't build things better than I already did. But that's the thing; there will always be a better way to handle something, and code is never perfect. It's important to recognize that, and build what's fun.

  • @nodiuus
    @nodiuus ปีที่แล้ว

    I love your channel, I can't wait to see what you will create next

  • @Blue-Maned_Hawk
    @Blue-Maned_Hawk ปีที่แล้ว +6

    It's an unfortunate conclusion, but i understand why it had to be done. Thank you for giving us this update video, and good luck on your future endeavors.

  • @kodex7795
    @kodex7795 ปีที่แล้ว

    OH MY GOSH! Thank you a video! Your videos inspires me a lot man.

  • @jd_bruce
    @jd_bruce ปีที่แล้ว +11

    You have achieved a very unique and appealing art style, which is often half the battle for creating a successful game. Just because you don't have good gameplay mechanics yet doesn't mean the project failed, there is plenty of potential and you could also crowd source ideas and let people vote on the best ideas. There's clearly a game there waiting to be finished, you just need a clear path forward.

  • @Zapples12
    @Zapples12 ปีที่แล้ว

    really honest video, it help me understand your pov as I am new to programming games

  • @user-rd6sl6qe1d
    @user-rd6sl6qe1d ปีที่แล้ว +7

    Dude, it is extremely impressive what you've managed to do by yourself. I'm just trying to start as a game developer and I imagine it would take hundreds of hours to build something like this. That is why it pains to see how much your game lacks direction in terms of game design.
    it may sound presumptuous (and it is), but if you feel like it I can talk to you in discord over voice or chat to help bounce some gameplay ideas off me and shape some image of a gameplay you'd like to build

    • @someghosts
      @someghosts ปีที่แล้ว +1

      The problem is that ideas have a low chance of being fun, so it’s best to test a bunch of ideas quickly before deciding on one instead of just starting with an idea and blindly building it hoping it works out

  • @gifti258
    @gifti258 ปีที่แล้ว +7

    i'm glad this game isn't just abandoned, because the caves looked so cute!

  • @KaanAlpar
    @KaanAlpar ปีที่แล้ว

    Looking forward to seeing the new project!

  • @stewardspeedarchive35025
    @stewardspeedarchive35025 ปีที่แล้ว +1

    As long as you're looking at Jon Blow, it might be helpful to find video of what Braid looked like before he hired an artist (he's done at least one talk that shows this) and to look at the old streams he did at the start of his current Sokoban project (you can find them on his youtube channel under "Game Engine Programming"). If you're not making the game around the art, that's probably the level of polish you want until you have interesting gameplay.
    Keep in mind also that Jon Blow did contracting work in the games industry for years before he shipped full titles by himself. I think a lot of the "Handmade" and adjacent communities want to go directly towards an ambitious project after they hear him speak, but I don't think you can skip the "many small projects, done competently" phase

  • @inlandmango8282
    @inlandmango8282 ปีที่แล้ว

    I just started watching you yesterday when i got your first minecraft video recomanded. Now I'm really excited to see your new project. ☺

  • @greenpixels
    @greenpixels ปีที่แล้ว

    Great video! :) Was just running into the same problem the other day.

  • @WiiKing96
    @WiiKing96 ปีที่แล้ว

    This is a really nice video! I'm interested in learning how to design games in Unity, so info like this can be quite helpful!

  • @polecat3
    @polecat3 ปีที่แล้ว +6

    I'm going to be honest, this outcome was immediately obvious to me from your initial video. However, all the dev logs have been entertaining, so I'm glad you realized before you had even more time sunk in.

  • @Patashu
    @Patashu ปีที่แล้ว +8

    Can relate a lot to 'programming is fun but doesn't inherently make a game - game design is scary and stressful and the thing you actually need to do'

    • @GreedAndSelfishness
      @GreedAndSelfishness ปีที่แล้ว

      For me it's the opposite. I love thinking of the design but dread actually programming the mechanics. But I have gotten a lot better with that in past year.

  • @1337dingus
    @1337dingus ปีที่แล้ว +3

    Reminds me of Randy with arcana really bad.
    Dude focused WAY too much on the technical, engine side of things to a similarly extreme degree, until he gave up on it entirely.

  • @TheDanEfranChannel
    @TheDanEfranChannel ปีที่แล้ว +3

    Yeah, saw this coming from the start of the series. Tale as old as time. So preoccupied with whether you could, etc.
    Oh well, looking forward to the next one! That blurry preview looks like there might possibly be some procedural terrain generation involved? If so, can’t wait to hear about it!

  • @VistoYT
    @VistoYT ปีที่แล้ว

    Finding your videos interesting as I'm starting to learn C++ to eventually get into game development keep up the good work

  • @thexadgaming
    @thexadgaming ปีที่แล้ว +3

    I can relate, I'm currently working on a game of my own. I spent 2 Years starting projects and giving up on them before the one I'm working on now.

  • @FredHeidrich
    @FredHeidrich ปีที่แล้ว

    Welcome to the club! On the flipside, lessons learned the hard way seems to stick better though

  • @omgItsGreg
    @omgItsGreg ปีที่แล้ว +1

    I really hope you keep the art style.. The first of your videos on this game was amazing

  • @davidhand9721
    @davidhand9721 ปีที่แล้ว

    I like this channel because it chronicles my own larval phase of maturing into a coder. I wanted to do everything myself, to use ASM for everything, or even better, write a compiler in assembly for a language I would design myself. I made my own databases, my own assembler/disassembler, my own templating framework for web apps, my own server, my own unit testing framework, and yes, of course, my own game engine. Slowly but surely I discovered every rule of better software design by breaking it and finding out why the rule exists.
    Honestly, I think I'm a better coder at the end of it than I would be if I just read the rules in a book without an exact understanding of the consequences of breaking them. My reaction to bad code is visceral. I can see problematic patterns as they emerge in new situations without needing it to mirror some scenario I read about in a book. As a result, I can successfully use frameworks that are developing and changing, I can jump into a large project and hit the ground running, and I can write code that can be customized and maintained without changing any code at all. I'm sure someone wants to tell me that you could do all that just by following rules they memorized, but I don't think that _I_ could have.
    So don't get down on yourself when one project fails spectacularly. You learn your lesson, you let your mistakes scare you out of doing it the same way again. IMHO, it will make you a better coder in the end.

  • @lessar2721
    @lessar2721 ปีที่แล้ว +4

    Game design is super cool. Like having a duel system and gameplay loops can be super fun.
    Even theory crafting is enought to make a game fun if you gave it enough thought. Also maybe you can make a discord for fast player feedback?

  • @DEV_XO
    @DEV_XO ปีที่แล้ว

    Great video mate, as always!

  • @asperjoe
    @asperjoe ปีที่แล้ว

    I know this video is 2 months old, but I do want to comment to say how this video shed some light on the game dev process. I'm a game developer major in uni, and seeing the lessons you walked away with reflect in my work is very interesting, especially with how my professors set up content and work. The first thing we've been asked to do, in my multiple classes which ask you to develop your own game, is to give an 'elevator pitch', the one sentence idea you talked about. Then we are asked to design those, creating a document to better serve our future plans, then we do a basic prototype. Talking about 3 hours of work total, prototype.
    Seeing you extrapolate all of these same ideas from your project is very inspiring! I hope to get to a level where I can ask these questions to my own projects, and even begin to code my own engine, like you!

  • @ilovehumongoushonkers
    @ilovehumongoushonkers ปีที่แล้ว

    can't wait to see your next project

  • @justforyou8790
    @justforyou8790 ปีที่แล้ว +1

    sometimes it helps to hear out others take on a given situation. drawing inspiration from their unique view and take it in with your own unique view. coming up with complex or symple systems together can be alot of fun and you might learn something about the process as a whole.

  • @felipeandrioli7271
    @felipeandrioli7271 ปีที่แล้ว

    hi man, you seem to learn and understand so many different complex concepts and all, from hardware to graphics and so on, which is pretty impressive. I'd like some advice to study and learn so many complex stuff while still having to work in a full time job haha. Your channel is absolutely awesome!!!

  • @ianmanley5782
    @ianmanley5782 ปีที่แล้ว

    This has every bit of potential to be fleshed out. The grass spread, the planting and bringing color back is a wonderful element. Maybe a more limited world, with a specific goal in mind (i.e. make the gray ground 100% green, cover 50% in plants), and a result of the goal (i.e. a spaceship comes back to a planet once thought devoid now full of life, and has the tools to repair the robots friend/lover?/companion and ro-botanist can happily plant flowers with them). I feel the wave form collapse can still be implemented, making every new game you play different. Maybe an element where some things only appear in some random generations, and not in others (a way to do easter eggs). Of course, taking another idea and using it at your own is the opposite of your point in making an engine, or any project you have really. But, if you outsource for a few parts like that, you could easily flesh out this wonderful and beautiful game idea!

  • @dscarmon
    @dscarmon ปีที่แล้ว

    Very helpful, thank you!

  • @ToriKo_
    @ToriKo_ ปีที่แล้ว

    This was an absolutely stellar video

  • @anon_y_mousse
    @anon_y_mousse ปีที่แล้ว +1

    After those past few videos I was a bit worried, but if you go back to C I feel like you'll have really found yourself. I know people think such things can't be done in C, but they most certainly can and having someone prove it by writing a more modern game that way would be a great inspiration. Who knows, maybe I'll finally get off my duff and write my own game.

  • @RoseTheVideomancer
    @RoseTheVideomancer ปีที่แล้ว

    I love the idea of a lil' robot whose whole purpose was like cleaning up nature who falls into a little hole and finds a fascinating underground ecosystem! Then having to survive bad plants, catalogue unknown plants and solve puzzles using abilities from those plants while trying to find a way OUT of the cave. Maybe even generations of robots who tried and failed are able to be downloaded and each give small little tidbits of info or maybe a fun power up!
    Gives me ideas like a light reactive flower that when light shines on it then it unfolds into a platform, when you water another flower (which you have to find a water source to obtain water first) it maybe grows like a vine upwards, weeds that try to maybe get in your tires to stop you, acidic plants that try to melt your iron, having to mine iron to repair your shells, having to craft spears to fight off enemies with and maybe refining a mysterious ore found under the ground! It would be a wonderful chance for ambient storytelling as well!
    I am overflowing with so many cute and cool ideas! I hope you continue you it and feel free to steal any of my ideas from this but I really can't wait to see where you go.

  • @taxxon_
    @taxxon_ ปีที่แล้ว

    Thanks for posting this, I really needed this as didn’t do any of this in mine.
    Guess better late than never.

  • @Topengaverse
    @Topengaverse ปีที่แล้ว +5

    Now that I'm working on my first game it's so strange/interesting watching people's dev logs and seeing what their strengths and weaknesses are when I pretty much just took it all for granted before. I have all the art skills but just baby coding skills and I'm trying to avoid making a spaghetti mess even though it's probably inevitable. I would have taken the advise to start smaller, make prototypes, etc, but the game I'm working on is already something I originally wanted to make an animated series out of that I postponed for years til "the time was right", so I said f it, we're doing the big thing now, so we'll just see how this goes. 😅

  • @colinstu
    @colinstu ปีที่แล้ว +2

    This is the feeling I get watching Duke Nukem 3D get played. It feels like the tech was spun up first and then everyone was like "oh crap, we actually need to make a game" and whipped out whatever they released. Same few enemies available the entire game, a bunch of lame puzzles that take no skill to do (just some trial/error/slowing you down), and menial maps. The only thing it had going for it really was the shear amount of stuff to get stuck in and the World Wide Web nowhere near popular or dynamic enough to handle a community around it.
    What they accomplished engine/capability-wise was neat but that's it.

  • @ntPingu
    @ntPingu ปีที่แล้ว +2

    It's okay to fail. At least you pulled the plug now and didn't work on it for several years. It's nice to see you talk honestly about it.
    Already hyped for the next project. You are still one of the sole reasons I use TH-cam and a freaking legend.

  • @averageintelligence6822
    @averageintelligence6822 ปีที่แล้ว +1

    I wish I had a buddy like you I know so little about engine coding but I have really solid game designs.

  • @CosmicDeejay
    @CosmicDeejay ปีที่แล้ว +1

    I really like the look and feel of the robot game, hopefully you finish it someday

  • @olikat9774
    @olikat9774 ปีที่แล้ว +1

    4:42 this is a trap ive seen a lot of solo game developers fall into of seeing games like skyrim and terreria and trying to make a game with many systems and tons of content but no central mechanic (not that skyrim or terreria dont have central mechanics but that people think that all that makes them fun it having tons of content). Glad to see you've caught yourself learnt from it and good luck with the next one

  • @morgan2513
    @morgan2513 ปีที่แล้ว

    The lighting looked sweet in the engine you made. I could see it being used for stealth games

  • @ethohalfslab
    @ethohalfslab ปีที่แล้ว +2

    I was wondering when this video was gonna get made ^^;

  • @herbnord5351
    @herbnord5351 ปีที่แล้ว

    Hey! Could you some time make a video on your vim config and how to set it up? I'd be very useful for so many people :)
    And about the game: you can't kill an engineer in a programmer and as long as you are a programmer in the first place, you will only think about the code, architecture and stuff, this is the interesting part for us. And for this reason there's often 2 or more people working on a game: a programmer and a few managers who are supposed to set up tasks which place game design before the code stuff.
    For you it's a good experience even though it all didn't work out. But just remember that we still love you and will always support you no matter what you do and how it goes.
    Wish you good luck and great ideas for the future projects :)

  • @muaviyaharsalan4414
    @muaviyaharsalan4414 ปีที่แล้ว +1

    This video is just perfect, I'm also *trying* to make a game engine. I've restarted like 2-3 times. It's been around 10 months and not going to lie I made almost all these mistakes lol. Perhaps my biggest mistake was I expected too much from myself as I'm no professional. And, I didn't begin with simple prototype also ended up in a disaster.
    Now, I'm keeping it simple, doing tests, spending weeks on a single component (which is not ideal imo, I shouldn't spend this much on a single thing. If i change things in future, it'll be waste). Hopefully it'll work out

  • @enzetael
    @enzetael ปีที่แล้ว +1

    Something that could help you to make gameplay (or not, idk), is that when you are making a game initially make the things you like and think it's fun, then ask for other opinions and then adapt your ideas, I don't know how to make a game (because I have like 12 incomplete projects), but I think it's that way you could make a game. (I haven't watched the whole video yet, so, I don't know if you said something like that)

  • @SimGunther
    @SimGunther ปีที่แล้ว +1

    For prototyping, there's a reason why we use "dev art", which is literally the most basic colors and placeholder assets to only focus on making the gameplay fun, not on making VFX "cool to look at." Sure you can have an idea of the kind of aesthetic and story you want, but that's more for the pitch after you refine the mechanics so the prototype is FUN TO PLAY.
    To summarize Thomas Brush's advice on how to even with video game creation: get a cool idea, iterate on it through a game design doc, get a time+money budget, then make the best prototype you can and pitch to investors so you can evolve it into the game you want to play courtesy of workers you hire to help you out.
    On the plus side, you do have the curiosity needed to make a game engine to iterate upon these ideas quickly enough to create a working prototype of any genre of game you like in a month.

  • @BobzBlue
    @BobzBlue ปีที่แล้ว +5

    I often find myself daydreaming about how game mechanics could be improved in existing and even AAA games... what comes to mind with the game you were trying to make here is to make it an isometric 3d roguelike or even metroidvania.

  • @nathanrey
    @nathanrey ปีที่แล้ว

    I can learn from your videos! thanks.

  • @pokeface119
    @pokeface119 ปีที่แล้ว

    The robot with flowers in a cave could be your first draft if you put more thought into gameplay.
    Imagine exploration where you have to grow plants to give you different effects, like healing, speed, haste and so on and as you explore the area around there are enemies you fight.
    Plants have a tech tree by cross pollination you need to research and learn first hand what each combinations does. Each cross pollination unlocks the recipe and what it does (after using the plant once) in a booklet your robot has and can open at any time to see what they need for specific effects.
    Imagine graves are around you have to find which have skeletons holding parts you need to make a portal and escape or something.

  • @jfsherazi5549
    @jfsherazi5549 ปีที่แล้ว

    The lighting looks awesome though!

  • @GreenClover0
    @GreenClover0 ปีที่แล้ว

    I would love to see some kind of slasher in that setting and graphics, I think it has a pretty unique look

  • @Echosoldier2000
    @Echosoldier2000 ปีที่แล้ว +2

    Maybe you could make a video on your development environment. Looks quite interesting!

  • @Lexyvil
    @Lexyvil ปีที่แล้ว

    I made a few games for Ludum Dare game jams, and found out not only is it hard to make a game from scratch and finish it in 2 days, but it is also even harder to make it fun.

  • @mozteq7536
    @mozteq7536 ปีที่แล้ว +1

    Hey that's the reason I love to watch you do your stuff.
    I work in a company where I do Java 8, the slightest change to anything has to be double confirmed by management and that implies writing lengthy risk analysis and feature details and blablabla...
    You wake up in the morning, take a shit half awake, and tell "hey what if I spent 6 months building a runtime broker for a super computer ? I'll figure out the need, the cost, the time needed along the way." then proceed to take your coffee, mumbling to yourself "i kinda love Pascal, maybe I should code in Pascal" and you're set for half a year.

  • @CreativeSteve69
    @CreativeSteve69 ปีที่แล้ว +1

    Thanks for making this video. I enjoyed watching you over the past year. This vlog is helping me a bit on how to avoid making my first game. I'm learning python for GameDev and been having fun with it past three months ongoing now. Can't wait for future videos.

    • @Luizfernando-dm2rf
      @Luizfernando-dm2rf ปีที่แล้ว

      I think I know what you're talking about. But the way your comment is structured looks like you are trying to "avoid making your first game", not avoid common problems that devs face when starting out.
      I just thought it was funny lol

  • @lubba64
    @lubba64 ปีที่แล้ว +2

    I prettymuch knew this was going to happen with the first devlog, I have made the same mistake multiple times. you just have to do it, fail and learn to realize sometimes though

  • @edwardoakheart4055
    @edwardoakheart4055 ปีที่แล้ว

    Cool, very useful info.

  • @rationalcoder
    @rationalcoder ปีที่แล้ว

    Bravo my guy. This is something that less talented/experienced/motivated programmers often end up doing _better_ because there's a limit to how much they can go overboard. While performance (next to minimalism) is one of the best starting points for actual code generation, correctness and effectiveness metrics come first, since that is what you are translating into input/output descriptions to implement with code in the first place. In this case, a subset of effectiveness is design, so without it, you end up solving made up problems. This is exactly the type of primer that extremely motivated and intelligent programmers need early on, since intelligence is not correlated with wisdom.

  • @joachimsaindon3658
    @joachimsaindon3658 ปีที่แล้ว

    Although it's a shame you weren't able to make you initial idea work, I'm very excited to see the new game! :)

  • @Odian42ne
    @Odian42ne ปีที่แล้ว

    Been there, done that. Welcome to the team ;-)

  • @danducky4741
    @danducky4741 ปีที่แล้ว +3

    I actually cannot believe that you learned c++ while making this game, that's insane. Whatever you do next, you'll have the experience to make it much more quickly than before

  • @wehateella
    @wehateella ปีที่แล้ว +5

    I find it interesting that you've decided to shelve the entire project. I could imagine building an awesome gameplay loop off what you already have. My first thought of a game I could love is something along the lines of:
    You're a robot herbalist/alchemist. You're trapped 100 levels below the surface. You don't have any direct combat skills so you need to use your growing & alchemy skills to slowly work your way up to the surface.
    The core gameplay loop would be something like:
    1. grow + crossbreed herbs (I'd have some kind of small chance of random mutations (well defined though, so like this flower can have a variant that it occasionally mutates into, or if you crossbreed x with y you sometimes get z), and they all have different properties that affect your alchemical recipes (and obviously you need certain herbs for certain recipes)
    2. process your herbs into alchemical concoctions, these enhance your robot in certain ways and allow it to actually progress in its mission towards the surface. There's lots of stuff you could do - gas style concoctions, self-improvement ones (e.g. move faster, maybe robot can briefly do melee damage), thrown potions, alchemical traps etc. maybe some meta-progression ones too if that's your jam. Lots of design space to explore here.
    3. take your potions and use them to fight monsters, they get tougher and the levels get more complex as you get closer to the surface. Also you occasionally find plants that you can grow in your garden in the caves. You can add all the fun gameplay spice you want here too - e.g destructible terrain, interesting vision-using mechanics, more complex enemies, minibosses, large bosses etc. But I think you could do really well starting with something small.
    4. And that's the main loop. Grow -> alchemize -> fight + explore + loot -> grow -> ...
    It's also nice in that it's a gameplay loop that you can get up and running super easily (e.g. just have one or two alchemical concoctions initially, a couple of enemies with very simple AI's, and simple generated dungeons) and you can just keep adding variation to the gameplay loop as it inspires you.
    So you could e.g. add more complex inventory management and inventory based mechanics if you have a cool idea for how they'd improve gameplay. Personally I'd try to keep most my effort laser focused on plant growing and breeding mechanics (I've always wanted to make a game with a simple DNA analogue for plants and have Mendelian crossover etc. Kind of like the Creatures series (I was always sad how lacking the plant stuff was in Creatures, there was some simple colour mutation in some plants in Docking Station and I had a lot of fun breeding plants for colour even with just that, but otherwise plants were very static, but the creatures dynamic), but for plant breeding, but that's not something I'd start with since it'd be a lot of work to get right.
    And winning is reaching the surface to escape your sadrobotcave (that you fell into in a little cutscene at the start or your master locked you in, or your master died with you in, or... reveal a little of the 'origin' story ever 10 levels you explore in short flashbacks as a progression reward... or... pretty much whatever however you want to theme it since it doesn't really affect gameplay). I think thematically it'd fit the gameplay for the robot to feel very alone though, so I'd probably lean into that.
    Anyway that's what I'd build from your starting point! Maybe it's influenced by my love of roguelikes and roguelites, but done right I'd definitely play the heck out of it.

    • @notnullnotvoid
      @notnullnotvoid ปีที่แล้ว

      From watching the video it sounds like he already tried building off of what he had, in a few different directions, but wasn't able to make any of them it into something he was happy with.

    • @wehateella
      @wehateella ปีที่แล้ว

      @@notnullnotvoid I guess it be that way sometimes eh

  • @coreblaster6809
    @coreblaster6809 ปีที่แล้ว +3

    With such an interest in engines and programming, I really hope/wish you get into a game that is heavily simulated! Like noita or dwarf fortress. (Start smaller than those please though lol)

  • @zechkatetyler5193
    @zechkatetyler5193 ปีที่แล้ว +1

    I would personally love to see this project open sourced at some point. I feel that there are some good ideas for gameplay that could be fully fleshed out and turn into a really cool game. If nothing else, it would stop some of the assets from becoming completely lost

  • @nickst2797
    @nickst2797 ปีที่แล้ว

    "I kinda miss C". Exactly. BTW, all week i have been listening to the "Program in C" song lol, great timing.

  • @shrednanasel
    @shrednanasel ปีที่แล้ว

    your not wrong about going for design and graphics: the colours and the way lights hit, IS what gives the player a feeling of wonder.

  • @ivanmilles5989
    @ivanmilles5989 ปีที่แล้ว

    Totally off-topic, but that’s a killer bookshelf lineup! ✊️