Improving Invaders (part 1)

Ойындар

I decided to improve 'invaders' a bit. Part 1 of 4!

Пікірлер: 78

  • @rsavage-r2v
    @rsavage-r2v Жыл бұрын

    It's very useful to watch a more experienced programmer work through a simple game like this. It's also very satisfying to listen to someone with a highly developed understanding of game design iterate on these mechanics.

  • @Jack-gp3rk

    @Jack-gp3rk

    Жыл бұрын

    I have the same approach. Some might say it's a waste of time to watch the stream, that better would be to pick up some compressed knowledge in a form of principles, code, etc. but IMO it's not working that way. Humans are better suited to imitate, to learn by examples, to get the skills by imitating. And I always find the stream from professionals like Jon or Casey really helpful. If you have other recommendations for this kind of content, would love to hear too!

  • @rsavage-r2v

    @rsavage-r2v

    Жыл бұрын

    @@Jack-gp3rk Yeah I especially appreciate both his non-bs approach to programming and his taste in game design. I almost never watch streams but this one really hooked me. He makes a lot of decisions I'd make, so it's like watching a more experienced version of myself. I need to watch more of John, and also Casey Muratori. I'm fascinated, because I'm not really a puzzle person so I haven't played any of his games, but from listening to his talks I absolutely knew he'd make 'correct' decisions when approaching a Galaga clone. Addressing scale/proportion/speed first, intuitively grasping the emergent or degenerative properties of a given mechanic, etc. I know he was half joking, but if this does end up on Steam, "I'll buy that for a dollar".

  • @NukeCloudstalker

    @NukeCloudstalker

    Жыл бұрын

    @@Jack-gp3rk 100% agree. Just show me! And conversely, nearly all of the time something needs explaining, showing is just faster. Explanations are for things were simply showing is impossible - and explaining is in those cases best aided by showing a rough sketch instead!

  • @captainnoyaux

    @captainnoyaux

    5 ай бұрын

    @@Jack-gp3rkwhich other stream are you talking about ? I agree with you and I've been watching some of his stream regularly now

  • @apresthus87
    @apresthus87 Жыл бұрын

    I also use this technique to manage stress and avoid burnout, I just take one evening or two to work on projects that are purely for my own enjoyment and don't have any obligations associated with them

  • @DavidsKanal

    @DavidsKanal

    Жыл бұрын

    So you find burnout comes more from working on exhausting, stressful projects than from the act of coding itself? Like, you say you find it regenerative to code on hobby projects, and I agree. But others might say they need to do something totally different, away form the screen even, to avoid burnout.

  • @apresthus87

    @apresthus87

    Жыл бұрын

    @@DavidsKanal ​Yep. Coding itself has never been a source of burnout for me, quite the opposite. The act of creating things with code is both creatively stimulating and something that gives energy rather than depeleting it (in a vacuum). I imagine it's similar to those who paint, draw or do gardening as a hobby. Burnout happens when I have a lot of demanding obligations to fulfil, and since coding is also my day job, those obligations are related to development mostly but that's actually not relevant. It's not the coding, its the stress and obligations that causes the burnout. The time I spend away from the screen I spend with my daughter and my wife, and whilst that can most certainly give me a lot, especially with children, there is also an element of obligation or stress. So I find that if I say only do work related projects and then look after my daughter and do nothing else for an extended period of time that also can lead to burnout or stress. I guess I just always need that element of just creating for the sake of creating, and getting lost in whatever it is I'm working on, with no expectations or obligations attached to it. This was a long waffle, but yeah, that's my 2 cents at least. For others, things may work differently (almost certainly)

  • @A.R.-mk1lq

    @A.R.-mk1lq

    11 ай бұрын

    @@apresthus87 I also code for recreation (JavaFX, Maven) but whenever it comes to the build and deploy phase it becomes stress and burnout. 😆

  • @m4rt_
    @m4rt_ Жыл бұрын

    A vampire survivors clone sounds like fun

  • @Waffle4569
    @Waffle4569 Жыл бұрын

    Hope you're doing ok

  • @Nodsaibot

    @Nodsaibot

    Жыл бұрын

    like the templeOS guy

  • @iamvfx

    @iamvfx

    Жыл бұрын

    ​@@Nodsaibot like your mom

  • @joshux3210

    @joshux3210

    Жыл бұрын

    What happened?

  • @F00dstamp96
    @F00dstamp96 Жыл бұрын

    I hope everything is well for you Jonathan. Take the time to think about it. Its okay.

  • @Mosestylez

    @Mosestylez

    Жыл бұрын

    What happened?

  • @F00dstamp96

    @F00dstamp96

    Жыл бұрын

    @@Mosestylez I don't know but you can tell something is wrong. I just hope he's doing good

  • @ivanbraidi

    @ivanbraidi

    Жыл бұрын

    @@erikfast9764 Yeah, so sad. Is it known what happened to him?

  • @robehickmann
    @robehickmann Жыл бұрын

    This is a great learning resource, seeing how you approach problems in game design. Looking forward to part 2.

  • @joshuaworman4022
    @joshuaworman4022 Жыл бұрын

    Oh shit the invaders game takes me back

  • @LogicEu
    @LogicEu Жыл бұрын

    I admire what you do and I really thank you for sharing your process

  • @WinLoveCry
    @WinLoveCry11 ай бұрын

    Amazing to watch Jonathan work; so many principles I hope to apply in the way I approach things.

  • @m4rt_
    @m4rt_ Жыл бұрын

    Lol that is the sound effect from The Witness 14:19

  • @svennyhenny
    @svennyhenny Жыл бұрын

    Never thought I would hear Jonathan Blow say "easy clap" lmao

  • @toxicore1190
    @toxicore1190 Жыл бұрын

    you always are a huge inspiration to me

  • @0ia
    @0ia Жыл бұрын

    So fun! Great idea for a stream

  • @praticle
    @praticle Жыл бұрын

    Can't wait for part 2!

  • @Nick_fb
    @Nick_fb Жыл бұрын

    Thank you for the education and content - some random from australia

  • @thewiseowl8804
    @thewiseowl8804 Жыл бұрын

    Fucking around is a great way to keep the proper attitude.

  • @Sp0nge5

    @Sp0nge5

    Жыл бұрын

    It's also a great way to find out 🤡

  • @bd_dev
    @bd_dev Жыл бұрын

    Looking forward to the next one.

  • @volsere
    @volsere Жыл бұрын

    A lot of fun to watch, loved the pure pwnage reference, that'll send me down memory lane to rewatch that shit

  • @ssznajder
    @ssznajder Жыл бұрын

    Jonathan blow is a great man

  • @deluksic
    @deluksic Жыл бұрын

    It is indeed interesting that we have a word for sides and not top-bottom. 😂

  • @soggy_dev

    @soggy_dev

    Жыл бұрын

    This actually bothers me deeply. Perfect way for me to get my day started right lol

  • @Pinkhair3d

    @Pinkhair3d

    Жыл бұрын

    Pillarboxing.

  • @sandernotenbaert

    @sandernotenbaert

    Жыл бұрын

    It kind of makes sense if you take into account that in our experience of the world, there is a massive difference between what's top and bottom (sky - ground, gravity pulling downwards), sides is just a direction. Hence we have a much stronger and clearer distinction in our minds between top and bottom compared to left and right, reflecting in our language as well.

  • @oraz.
    @oraz. Жыл бұрын

    Mr Mojo code rising 💪🙌

  • @Dorumin
    @Dorumin Жыл бұрын

    Game of the year

  • @stephenduncanson6154
    @stephenduncanson6154 Жыл бұрын

    And so he launches a mental counteroffensive 👍

  • @ProgrammingLovers
    @ProgrammingLovers Жыл бұрын

    Nice sample

  • @m4rt_
    @m4rt_ Жыл бұрын

    Nice

  • @A.R.-mk1lq
    @A.R.-mk1lq11 ай бұрын

    The screen size in Pac-Man (Arcade) is 28/36 (tiles) which gives an aspect ratio of 7/9 (0.77...)

  • @dimarichmain
    @dimarichmain Жыл бұрын

    Sounds from The Witness feel so out of place. Also, totally agree with the way you handle stress. I also do a lot of stuff I might or might not need in the future. It's experience anyway.

  • @m4rt_
    @m4rt_ Жыл бұрын

    It's always fun working on some random project, either new or old, just to blow off some steam.

  • @mokafi7

    @mokafi7

    Жыл бұрын

    pun intended?

  • @m4rt_

    @m4rt_

    Жыл бұрын

    @@mokafi7 what pun?

  • @mokafi7

    @mokafi7

    Жыл бұрын

    @@m4rt_ *blow* off some steam...

  • @nexovec
    @nexovec Жыл бұрын

    Jon seems kind of down in the intro here :(

  • @VaustXIII
    @VaustXIII Жыл бұрын

    36:15 The fact that even the programmers I look up to do those kinds of blunders kinda reassures me. I feel really stupid when I tune some value and can't understand why it doesn't work as I intend, then turns out I haven't built the changes or I'm tuning the wrong parameter or some other silly thing

  • @nexovec
    @nexovec Жыл бұрын

    Can anyone help me understand why there are 4 different resolutions at 10:15?

  • @MichaelPohoreski

    @MichaelPohoreski

    Жыл бұрын

    Arcade games standardized on what resolution they used depending on the game.

  • @yabirgarcia968
    @yabirgarcia968 Жыл бұрын

    is only me or the sound is really low?

  • @CodeOptimism

    @CodeOptimism

    Жыл бұрын

    It's low.

  • @bibliusz777
    @bibliusz777 Жыл бұрын

    What do you think of the bevy engine queries?

  • @SlackerCast
    @SlackerCast Жыл бұрын

    Here brotha

  • @timstevens3361
    @timstevens3361 Жыл бұрын

    hey wat do you think about MS buying github building VS code to run on Everything including mac n linux, and getting super cosie with openAI. i think every code slingers source code has been input for OpenAI's GTP LLMs. i think that sucks !

  • @m4rt_

    @m4rt_

    Жыл бұрын

    I'm glad people are working on suing Microsoft for using licensed code (GPLv3 for example) to train Copilot, and I hope it ends with the people winning and MS loosing.

  • @learningprogrammer1487
    @learningprogrammer1487 Жыл бұрын

    why is he sad? did somebody died? if yes who (just curious 😅)?

  • @ramireini

    @ramireini

    Жыл бұрын

    One of his ex-employees, Zachary H. Polansky who worked on the Sokoban game died, he was really good at making puzzle games and Jonathan had plans for the future that included him, and now that he's dead it won't happen. Also if he had lived then more people would've been able to play his great new games, so he's sad about all of these things.

  • @Jack-gp3rk

    @Jack-gp3rk

    Жыл бұрын

    @@ramireini Thanks for explaining. It's seems that Zachary was a really young man and what a loss to the world of puzzle, gaming and for his family. May his soul rest in peace.

  • @robehickmann

    @robehickmann

    Жыл бұрын

    @@Jack-gp3rk I wander what happened to him.

  • @MenkoDany

    @MenkoDany

    Жыл бұрын

    @@robehickmann Based on the euphemism in the obituary, he died by suicide. Watching tribute streams and thinking about Jon's words, I think it's the most likely explanation. Regardless of what happened, it's incredibly sad that some of the smartest people in the world are also so easily taken away by depression. It's your reminder to not just fuck around, but help your loved ones and strangers

  • @robehickmann

    @robehickmann

    Жыл бұрын

    @@MenkoDany I agree. The problem I see is that many people act exceptionally toxic towards anyone who is in any way different, and I've experienced a lot of that myself also. The state of the world today also makes things extremely difficult for creatives to do what they are good at.

  • @timstevens3361
    @timstevens3361 Жыл бұрын

    GPT i agree with wat you said earlier about chatgpt not generating non trivial code. but MS smells bad in this my opinion. also why does VS take so dam long to load ? cuz its phoning home with your source code mabe ?

  • @m4rt_
    @m4rt_ Жыл бұрын

    :( KZread hasn't fully processed it, so the vod is only 360p Edit: eyy we have 720p

  • @L1nkblade
    @L1nkblade Жыл бұрын

    I still don't understand what the improvement of Jai shall be. For me it looks pretty much the same as the other programming languages. Can someone enlighten me? He's still manually editing parameter values and does trial and error for a huge amount of time to iterate until he has the parameters fine tuned to a set where he likes the game best. Wouldn't it be much more revolutionary if he would just define constraints which can describe the quality of the gameplay and then run an AI to alter the parameters for him to iterate best to these constraints?

  • @kecksohn

    @kecksohn

    Жыл бұрын

    what you're asking for is not a programming language but a miracle

  • @1337pianoman

    @1337pianoman

    Жыл бұрын

    If you "define the constraints that describe the gameplay" specifically enough, that is just what programming is. If you do it vaguely and have an AI make the decision for you, are you just gonna accept its first attempt, or are you going to try it out and ask it to tweak it? Is that really an improvement? If you think it is quicker to specifically describe your gameplay in English than in code, that is just a fluency issue and what you're asking for is just a translator. There's nothing wrong with that, but the whole point of programming languages is that they enable us to be specific and succinct. English is pretty bad at both of those things.

  • @L1nkblade

    @L1nkblade

    Жыл бұрын

    @@1337pianoman I didn't mean to feed the AI with English phrases like ChatGPT. I meant to define the goal gameplay with specific parameter values "g" which depend on a combination of many other parameter values "p" and have a software try the combinations p for you to iterate to g faster than a human could manually do. For example you could define that a Quake Champions map should have a heat map with 3 main spots and where it's a good option to use vertical shooting. An AI could build 3D maps by itself and let run bots in it to get the heat map and determine if bots who used vertical shooting got a good result and then give you that one of thousands of maps which suits your parameters g the best.

  • @Nick_fb

    @Nick_fb

    Жыл бұрын

    The parameter tweaking reveals to JBlow a deeper insight into the smallest changes in game design. He would need any generative/procedural/AI tool, to refine it's analytical capabilities to the same level of resolution as JBlow is doing now. Americans program like that. They want to see what every single word, phoneme, variable and parameter, does to change the rendered image. It is narrow and incredibly powerful. You'll have to reprogram computers, to relate to you in code bubbles of your design, to get the result you talk about in your second comment. You could pick, choose and nurture from AI-generated heat maps with that tooling. Computers (and programming) as they are now, are firmly planted in the American word-chopping and phoneme picking style, which will forever frustrate the attempt to summarize it into a generative space that you could mould into your liking. It is viable to make AI do what you said, with a lot of effort, but the results are often milque-toast reworkings. All the coding relationships are shallower than you would guess, but very laterally broad and change continuously. You get more power coding the way JBlow does right now, cutting deeper into understanding each variable and understanding the effects of parameter tuning, on the player's experience. The book from the 50s, Human Use of Human Beings, describes the current/greater programming culture, very very well.

  • @L1nkblade

    @L1nkblade

    Жыл бұрын

    @@Nick_fb ok and thanks for the comment! Then, what is Jonathan trying to achieve with Jai? What advantage has Jai over other programming languages?

  • @Nodsaibot
    @Nodsaibot Жыл бұрын

    why he keeps using vs code? lol

  • @AnonymousAccount514
    @AnonymousAccount514 Жыл бұрын

    Boring

Келесі