Writing a game the hard way - from scratch using C. #1

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 พ.ย. 2024

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

  • @AntonioBarba_TheKaneB
    @AntonioBarba_TheKaneB 2 หลายเดือนก่อน +66

    this almost triggered my PTSD! I used to work as a game programmer, and the first game I worked on started from scratch, starting from, int main() and a bunch of SDK documentation. It was back in 2007 on the Nintendo DS. I learned a lot, but I wouldn't do it again, never :D

    • @jimbotron70
      @jimbotron70 หลายเดือนก่อน +4

      And those were easy times with SDKs...

    • @AntonioBarba_TheKaneB
      @AntonioBarba_TheKaneB หลายเดือนก่อน +5

      @@jimbotron70 yep, I know right! Imagine 10-15 years earlier with only an assembler and a book with registers addresses and not much more. I do a bit of C64 programming in assembly in my spare time and it’s always a blast!

    • @subtledemisefox
      @subtledemisefox หลายเดือนก่อน +2

      Nowadays there are entire homebrew game engines and SDKs for the DS

    • @AntonioBarba_TheKaneB
      @AntonioBarba_TheKaneB หลายเดือนก่อน +2

      @@subtledemisefox and they are probably better than the old official sdk of 15 years ago 🤣

    • @MarioVelezBThinkin
      @MarioVelezBThinkin หลายเดือนก่อน +1

      Makes me think of Roller Coaster Tycoon. Entirely made in ASM.

  • @RemnantCult
    @RemnantCult 3 หลายเดือนก่อน +318

    The bedroom coders of the 80s and 90s were the original members of the indie gaming scene. They were the pioneers and following in their footsteps is a great honour.

    • @nifftbatuff676
      @nifftbatuff676 3 หลายเดือนก่อน +12

      In the 80s almost every coder was a "bedroom" coder.

    • @merial9
      @merial9 3 หลายเดือนก่อน +1

      I disagree. They were the original members of the Game Scene. Without them a scene wouldn't exist.

    • @insidiousmaximus
      @insidiousmaximus 3 หลายเดือนก่อน

      Ok

    • @harmoen
      @harmoen 3 หลายเดือนก่อน +3

      ​@@merial9I would say the original coders of the game scene were people who were working on side projects at work.

    • @AndrewTSq
      @AndrewTSq 3 หลายเดือนก่อน +9

      We were 11 years old and wanted our games to be in the computer magazine lol. Using an assembler we made by inputing pokes in basic from a magazine listing. :) those were the days. And doing our own sprites on paper and converting them to code 😂

  • @RecordofRadio
    @RecordofRadio 19 วันที่ผ่านมา +9

    being as old as I am, i remember having to go to the library and find books on coding tricks and things when I was like 10. When I was a wee lad, probably about the same age, I coded a rudimentary pac-man clone in C++ and every step strengthened my skill as a coder because I had to actually work out every bit myself, for the most part. Nowadays I've bumped into quite a few gamedev folks who simply cannot work out a problem if there's not a tutorial on youtube to help out. So I look at my hardcore no-internet up-bringing as a blessing. That said, I do love having an actual game engine built by others these days.

  • @andrewdunbar828
    @andrewdunbar828 3 หลายเดือนก่อน +179

    A C compiler, in the '80s? Fancy!!

    • @ncot_tech
      @ncot_tech  3 หลายเดือนก่อน +73

      @@andrewdunbar828 mild modern conveniences are being taken to preserve my sanity.
      Although it is C99, so I guess a 25 year old language is retro? 🤔

    • @lagmaster102
      @lagmaster102 3 หลายเดือนก่อน +15

      pardon my naivete, but how was C compiled in the '80s if not with a compiler?

    • @ArtisanASCII
      @ArtisanASCII 3 หลายเดือนก่อน +30

      He could have had a C compiler in the 80s but no JSON, no Python, no ChatGPT, no Stack Overflow. Maybe Writing a game the medium way is more fitting? Just kidding! LOL

    • @adib68
      @adib68 3 หลายเดือนก่อน +17

      Every Unix had one.

    • @andrewdunbar828
      @andrewdunbar828 3 หลายเดือนก่อน +4

      @@adib68 Top '80s gaming platform.

  • @eyzake
    @eyzake 3 หลายเดือนก่อน +49

    you know you want to watch it when even the algorithm recommends this, even though you are trying to focus on android dev.

    • @nathanaelmoh5848
      @nathanaelmoh5848 29 วันที่ผ่านมา

      My exact situation. Started kotlin this week.

  • @Pymmeh
    @Pymmeh 3 หลายเดือนก่อน +48

    I remember stuffing a fiver into an envelope to purchase a game where you programmed robots to fight each other. All very meta for the 90s!

    • @ncot_tech
      @ncot_tech  3 หลายเดือนก่อน +10

      I had a game like that for my ST. It was GEM based and I remember you somehow built the robots using some sort of logic symbols and set them loose in a little arena.
      I "registered" my copy of Llamatron about 20 years after by buying Jeff Minter a pint. As a kid my parents would never let me post money randomly to people.

    • @slash_em
      @slash_em 3 หลายเดือนก่อน +1

      I loved that game

    • @chris4321das
      @chris4321das 3 หลายเดือนก่อน

      90s? You mean early 80s.

    • @gianluca.g
      @gianluca.g 2 หลายเดือนก่อน +2

      Was that crobots ?

    • @mattmurphy7030
      @mattmurphy7030 2 หลายเดือนก่อน

      I remember a game like that! Begging my mom for $5 so I could “learn to program robots”

  • @johnhaugabook
    @johnhaugabook 2 หลายเดือนก่อน +6

    Randomly came across this video, and hope it's not too late; but some game inspiration:
    game title - Kernel Sprite,
    game idea - Kernel Sprite is a binary soldier who wants to go further. At the start it's a bit. But this sprite fights for every little bit, building itself, well - bit by bit. Wants to make it to the interface. To becomes a complete retro graphic. Along the way fighting resistors, and using some simple logic to make it through the gates.

  • @namatanerv9240
    @namatanerv9240 2 หลายเดือนก่อน +6

    Great vid, one idea i got is a bunch of penguins with uzis fighting each other to control the antarctic as a story for the game

  • @bettyswunghole3310
    @bettyswunghole3310 3 หลายเดือนก่อน +10

    "These ideas were nicked from (sorry...I mean 'inspired by"...)"
    Love it! 🤣 Anyone with that level of honesty is OK in my book.

  • @kbsanders
    @kbsanders 3 หลายเดือนก่อน +3

    Your mention of Crystal Quest led me down a nostalgic trip to discover a game I used to play as a kid but could not remember the name of called XQuest.

  • @callum_monk
    @callum_monk 3 หลายเดือนก่อน +14

    This is very a very cool idea for a youtube series and I am sure I will follow the updates, as someone who is currently making a small shoot em up game in my spare time (though not in C) I find this very interesting and entertaining. Nice one

    • @cryptocsguy9282
      @cryptocsguy9282 3 หลายเดือนก่อน +1

      @callum_monk SAME to me finding it interesting and working on a small shoot em up game but in 6502 assembly language

  • @charg1nmalaz0r51
    @charg1nmalaz0r51 12 วันที่ผ่านมา +1

    Seeing the llamatron splash screen triggered some locked childhood memory lmao

  • @Play_Streams
    @Play_Streams 2 หลายเดือนก่อน +8

    Tommy Vercetti teaching game dev in a beach shirt 😎

  • @GreeneThumbs
    @GreeneThumbs 2 หลายเดือนก่อน +3

    I have two ideas for traps and enemies. The first idea is shadowy enemies that are initially invincible until they come into contact with a light source, after which they become vulnerable. Maybe they could be slower than other enemies on screen, so that you have to lure them into a light source while evading other enemies. The second idea is a weapon that fires two bolts per round, where the bolts are connected to each other by a wire. You could create trip wires that could electrocute enemies, or possibly create gates to funnel enemies through. If the wire is a set length, your movement could be restricted after firing the initial bolt, until you fire the second bolt. You could also get upgrades for longer wire lengths and an increased number of bolts. Okay, I just thought of one more idea: you could have traps where a particular status or quality is applied to an enemy that moves into that space, and it could also apply to the player if they move into that space, by mistake or choice. For example, an effect that modulates movement speed, size, elemental vulnerabilities, etc.

  • @Bantam80
    @Bantam80 3 หลายเดือนก่อน +8

    What about something inspired by 'The Running Man'? You could have tricks and traps in each arena (spikes, fire, trapdoors) with a unique boss and minions for each themed arena. It would fit with the top-down/sci-fi arena shooter theme.
    You could maybe take some hints from roguelikes too - random item drops, shops, secret rooms etc.

    • @ncot_tech
      @ncot_tech  3 หลายเดือนก่อน +4

      That reminds me of Smash TV, which was also pretty fun to play. Cool ideas.

  • @talideon
    @talideon 3 หลายเดือนก่อน +12

    That's a Steam library that's been subject to a lot of Humble Bundles!

    • @ncot_tech
      @ncot_tech  3 หลายเดือนก่อน +1

      Errm... yeah 😆
      Although actually I've only installed two. One for Aseprite, the other for something that tried to fill my Steam library with hundreds of shareware-quality software.

  • @Ahmed-jn2wn
    @Ahmed-jn2wn 2 หลายเดือนก่อน

    Sir, you really did it the hard way and the custom sprite type that just took my breath, I mean what are you even doing, well all the respect as programmer.

  • @shirozuki_sqb
    @shirozuki_sqb 2 หลายเดือนก่อน

    I absolutely love this kind of content 🙂 Thank you, and good luck with the project!

  • @akashashen
    @akashashen 3 หลายเดือนก่อน +3

    I was thinking about the sprite naming conventions. Perhaps something to indicate protagonist, antagonist, effect, pickup, collidable object and non-collidable object/effect. Maybe prosprite, antasprite, effingsprite, pickasprite, smackasprite and effingghostsprite.
    I love the video and look forward to future videos in a series. I respect programming to constraints, and it sounds like a fun puzzle to work on.

  • @DavidKing-wk1ws
    @DavidKing-wk1ws หลายเดือนก่อน

    Many of us back then could not afford a fancy compiler, so you learn assembler that would have been z80, 6502, 8088 for most but the commodore had the most to offer bang for the buck idea.

  • @linuxrant
    @linuxrant 3 หลายเดือนก่อน +4

    Props for using Kate!!! A wonderful text editor!!!!!!

    • @raydall3734
      @raydall3734 3 หลายเดือนก่อน

      Personally I code in nano. Kate is too "new school" for me. I can recall the days when I coded in ed.

    • @caliconfessions1075
      @caliconfessions1075 2 หลายเดือนก่อน

      Ed now has a new meaning

    • @ChrisG-r5l
      @ChrisG-r5l 2 หลายเดือนก่อน

      Ed , fancy - I could only afford Edln.

  • @laikahound4227
    @laikahound4227 2 หลายเดือนก่อน

    Thanks for this video. I was thinking back to the first game I programmed using C+. Now I get to watch your video on that!!

  • @ciscornBIG
    @ciscornBIG 3 หลายเดือนก่อน +4

    Totally here for this. I have the same dream.

  • @cryptocsguy9282
    @cryptocsguy9282 3 หลายเดือนก่อน +2

    Super cool video 😁 , i'll check out that sprite editor for any future game ideas I have and I look forward to the next video.
    Maybe your game could be inspired by aliens vs predator and your character is stuck on a spaceship fighting off enemies or maybe it's set in a war zone and your character is behind enemy lines or something

    • @evertonshorts9376
      @evertonshorts9376 3 หลายเดือนก่อน +1

      There's a free fork called Libresprite.

    • @cryptocsguy9282
      @cryptocsguy9282 3 หลายเดือนก่อน

      @@evertonshorts9376 Oh if it's free that's even cooler , I guess I'll go with that one instead 😃, save £20

  • @brentpappas4055
    @brentpappas4055 2 หลายเดือนก่อน

    I like this so far! Very relaxed, with some novel ideas, but most concepts should be familiar to viewers with prior programming and game dev knowledge. The music in the background makes the video feel more cozy, and I appreciate your sincerity.
    I enjoy seeing how you program in C as well. I personally prefer using arrays of function pointers rather than structs with function pointers inside them, and I nowadays I use CMake instead of Make for my C projects. However I like seeing the way you do things.
    Also! I’d recommend looking into the C “X macro” idiom. It’s a pattern for programming in C with macros that makes it very easy to group related data and functionality together at compile time. You may find it helpful for defining your game states.
    Looking forward to the rest

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

    I saw Factorio in your steam library, truly a man of culture. The factory must grow.

  • @baxterdevin
    @baxterdevin 2 หลายเดือนก่อน +1

    Great video! Since my first language was C I find this strangely nostalgic and slightly trauma inducing. Also GAME IDEA: the player is a lone triangle fighting for his freedom in the Shape Pits full of square, pentagonal and hexagonal gladiators on Planet Geom.

  • @ddguitars1969
    @ddguitars1969 หลายเดือนก่อน +2

    In the 80s I wrote games in pure assembly and then in the early 90 I used c for the game logic but I wrote all my graphics lib code in 8086……way tougher than modern game coding but by god the code was optimised and ripped along….

  • @pedrogabrielnogueira1068
    @pedrogabrielnogueira1068 3 หลายเดือนก่อน +7

    I fell here out of nowhere, and i like this.

  • @burntt999
    @burntt999 2 หลายเดือนก่อน

    hello sir, thank you for offering that beautiful framework/library thing your showing off in the video.. i LOVE C. its the language i learned first (that made sense to me) and is when 'programming' clicked for me. so i'm very glad you threw it up on git.. i'm about to clone it and see if i can take it apart line by line until i understand it. i'll even download Kate because i've been searching for something to replace Visual Studio 2022. i just love the debugger and have been trying to tear myself away.
    bless you and your work.

  • @Nice_G
    @Nice_G 3 หลายเดือนก่อน +4

    This is interesting. I'll subscribe and wait for part 2.

  • @vapppour
    @vapppour 3 หลายเดือนก่อน

    I can't wait for an update on this, awesome job man❤️ I'm personally a huge fan of the diablo series, and it's dark Gothic dungeon astethic, it could be a great inspiration for the art of the game!

  • @andrewdunbar828
    @andrewdunbar828 3 หลายเดือนก่อน +1

    I often couldn't even find a book, but I met a few programmers through computer clubs where 99% of the members were just copying games, but the other 1% had useful info to share with like-minded individuals.

    • @ChrisM541
      @ChrisM541 2 หลายเดือนก่อน

      I remember the computer (cough...copy) clubs back in the day. I also remember the game rental scene where an azimuth screw-modified tape deck could be used to copy software. As for programming, with such an extreme lack of documentation and examples, it was critical thought/innovation that ruled in those days...sadly today, almost 100% offloaded onto 'others'.

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

    I learnt from an early age how important the tech you choose is. I was 12 living in South Africa and got addicted to making games on my Commodore 64, the year was 1987 and with only a couple of books from my local library I was able to build a bunch of terrible games. I just couldn't fathom how the developers at companies were building such cool games for the system. No matter how hard I tried I couldn't get close.... Remember this was a time of no Internet where I was... Years later i found out they were all using assembly.... I was using BASIC.... Who knew..... Still... Such good times.. 😂😂😂

  • @miasma82
    @miasma82 2 หลายเดือนก่อน +1

    I mostly play older games. I just like them better. I'm not that old, i'm only 42 but i just like the games i grew up with better. And now i can emulate the games i didn't have access to during that era, i like the whole rom hacking scene too.

  • @darikdatta
    @darikdatta หลายเดือนก่อน +1

    A lot of great games were written in assembly, especially on 6502. That was pretty hard.

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

    Fun stuff! Next to my game projects I write in 6502/10 assembly, I tried to write a modern game in C# using OpenGL. As displaying rectangular images isn’t too hard (you just need to connect to triangles 😅), I got stuck on trying to display TTF fonts LOL 😅. Your game ideation process triggered one game for me: Anarchy on Commodore 64. I’ve found this game really fun to play and addictive. Good luck with the project!

  • @2Sor2Fig
    @2Sor2Fig 3 หลายเดือนก่อน

    10:15 - "This is what all makes it work. It's awfull." Truer words have never been said with the perfect mix of disdain and acceptance. Take my like, guv.

  • @RichardBejtlich
    @RichardBejtlich 2 หลายเดือนก่อน

    Thanks for this series. It’s neat getting insights into your process. 👏

  • @HemmingEducation
    @HemmingEducation 2 หลายเดือนก่อน

    Noticed the STOS book on your shelf- that sprite editor is very reminiscent of those days!

  • @costelinha1867
    @costelinha1867 3 หลายเดือนก่อน +5

    Love how things were so different back then that devs had to literally dox themselves in order to get people to pay them for their games....
    Although it's not like it's any easier to make money off of your games nowdays, in fact, I don't think I ever made anything that comes close to being comercially viable...

  • @donttrusttheape
    @donttrusttheape 3 หลายเดือนก่อน +2

    I would love to see it actually being prpgrammed, line by line almost, not just explanation of part of the code, with some concepts, would be great.

  • @mcine
    @mcine 2 หลายเดือนก่อน

    Interesting project, eagerly waiting to see something run in HW also.. btw DeltaTime in physics is used to make the game run in same speed even when using faster or slower processors. Old pc's had turbo button that put processor to a standard speed, so they ran ok when code was designed for old slow hw. .

  • @ShR33k
    @ShR33k 3 หลายเดือนก่อน +3

    Maybe a Bomb Jack style game? That would be interesting! Had numerous enemies, and our hero! I suppose it depends how complicated you want to make it and how in-depth you want to go with it! If you prefer a shooter, maybe an Ikari Warriors style game? - you verus bad guys, shooting your way to the clear the level.

    • @cryptocsguy9282
      @cryptocsguy9282 3 หลายเดือนก่อน

      @ShR33k Yh I was thinking of an Ikari Warriors style game but as a history buff who watches a lot of ww2 documentaries I could come up with a lot of ideas for a game set in a war zone that I've never seen explored in commercially released games before like fighting behind enemy lines where you have to sabotage enemy supply lines, action adventure/RPG elements(I'm not talking up upgrading skill sets) where you occupy a town/city and you have to ask civilians and non combatants for help in order to advance , or the game progressively getting harder as you lose control of territory at the hands of the enemy

  • @fadel_rama
    @fadel_rama 2 หลายเดือนก่อน +5

    It's 3.40 AM and here i am watching a man making retro game from scratch, i am not even programmer the last time i touched code are HTML

  • @cicakmuhamed
    @cicakmuhamed 3 หลายเดือนก่อน

    Nice! Will definitely follow this series, keep it up!

  • @MrMeltdown
    @MrMeltdown 2 หลายเดือนก่อน +1

    You had me at llamatron! Jeff winters… gameplay… a toilet bouncing about throwing bog rolls at you…

  • @ArnaudMEURET
    @ArnaudMEURET หลายเดือนก่อน +1

    The obligatory pedant here: the player is the one watching the screen, the one inside is the character.

  • @techsalesandmore3649
    @techsalesandmore3649 2 หลายเดือนก่อน +13

    As a former ocean software developer, let me tell you something. we wrote in 6502 and Z80 assembly not C. Fun trip down memory lane though otherwise :)

    • @ncot_tech
      @ncot_tech  2 หลายเดือนก่อน +4

      @@techsalesandmore3649 yeah I know, but if you could have, you would wouldn't you? I want to make a game, not lose my mind trying to hand code everything from nothing.
      At least I'm not using C++ or JavaScript 😉
      Out of interest, what did you work on? Think most of thr Ocean games I played were on the speccy.

    • @techsalesandmore3649
      @techsalesandmore3649 2 หลายเดือนก่อน +2

      @@ncot_tech Worked on behind the scenes sort of stuff like faster sprite routines, line draws and rectangle fills etc. Most of my work was using 6502.
      And yes, given the immense amount of spare cpu power nowadays, I do don't blame you using C. But in the day, maybe not. We removed every single T state we could remove from loops etc. So hand optimised assembly due o weak cpus of the time. We even did crazy stuff like alter the address in absolute instructions in realtime, effectively giving you 16 bit indexed addressing in 6502. Heady days, damn I wish it was 1980 again! Best of luck with your project. Will defo keep watching

    • @TheRetroArchive
      @TheRetroArchive 2 หลายเดือนก่อน +2

      Yeah interesting...There's a bit of soft "history rewriting" on TH-cam that games were programmed in high-level languages in the 80s & 90s when, in fact it was targeted Assembly extensively industry standard right up until the PlayStation 1 generation really.
      I was a games dev circa 2000 in the UK and although the luxury of C++ was fairly standard inline Assembly was still common. I've watched videos on Americans that think Chris Sawyer wrote Roller Coaster tycoon in a crazy one off vacuum purely to make sure it ran on as many PC architecture as possible, in fact he wrote everything in assembly because it was industry standard and pretty much every game previously published had been written in assembler, people contracted him to port assembly from other systems to x86. In fact, when C & C++ were standard, it was to make reusable code to target all kinds of architecture (with some modifications) assembly was about optimisation not portability.

    • @ChrisM541
      @ChrisM541 2 หลายเดือนก่อน

      I remember those days with great fondness as well and yes, C compilers were very basic/infant back then, producing code that was very frequently speed and size very, very sub optimal compared to that from a hand written assembly expert. Slow CPU's and limited memory meant that all the 80's (and before) and most of the 90's games were written in 100% assembly (especially the 80's).

  • @gianluca.g
    @gianluca.g 2 หลายเดือนก่อน +2

    The classic "hello world" game is Pong. Yes, very simple game but surprisingly tricky if you start programming a game for the first time.

    • @ChrisM541
      @ChrisM541 2 หลายเดือนก่อน

      ...and infinitely more tricky if you did this back in the day with everything 'hand writted'...minimal libs etc etc.

  • @cod3ddy74
    @cod3ddy74 2 หลายเดือนก่อน

    this is nice man , i'm gonna enjoy this series

  • @elalemanpaisa
    @elalemanpaisa 2 หลายเดือนก่อน

    was hoping for such content for years as I loved games from the late 80s and early 90s but most content is about including APIs like 3dfx/DirectX etc
    probably most used Assembly straight but anyway :D
    I remember putting cash in the mail and hope getting a 3.5 inch disk with the correct game and as we didn't care about security we just installed whatever was on that.

  • @tanama84
    @tanama84 2 หลายเดือนก่อน

    awesome classic C, great job! I love this video

  • @kamilziemian995
    @kamilziemian995 2 หลายเดือนก่อน +5

    Sounds great. I will tell my students that learn C about your channel.

  • @tobyfried
    @tobyfried 2 หลายเดือนก่อน

    Thanks for sharing! Would be fun to see a physics-driven platformer with a unique movement mechanic, like Celeste or Super Meat Boy. Would push you to flesh out the physics engine more than than an RPG or something.

  • @edhalferty
    @edhalferty 2 หลายเดือนก่อน

    It's interesting that there are so many people making Commodore 64, ZX Spectrum, etc. games and very few making Nintendo Entertainment System or Sega Master System games. I think the turn from the 1980s to 1990s was when video games went from a hobbyist activity to a more business/consumer relationship.

    • @ChrisM541
      @ChrisM541 2 หลายเดือนก่อน

      "I think the turn from the 1980s to 1990s was when video games went from a hobbyist activity to a more business/consumer relationship."
      - Absolutely! ...once the 'big corps' sniffed the huge profit potential in games. Game developer houses were established waay before this though (Melbourne House, Gremlin, Ocean etc etc).

  • @axle.student
    @axle.student 2 หลายเดือนก่อน

    I have been favourable to Geany on Linux. Still use Dev-C++ (Embarcadero maintained) on Windows and found FED (Folding text EDitor best for DOS.
    >
    13:01 I paused the video to read the code and naturally scrolled down for more lines X-) (3 times lol)
    >
    I have been working off of the Allegro5 Vivace tutor template which is quite similar.
    Logging; use error logging file(fprintf(FileHandle, ...)), -Enable the console screen and use printf() or fprintf(stderr, or stdout) while debugging, send to separate graphic pop up msgbox (if available).
    *Looks pretty kool,*
    A few of my first attempts had everything in main() which turned ugly rather fast lol
    FreeDOS, Windows, and Ubuntu at the moment :)
    >
    Why do Java programmers wear glasses? Because they can't C.

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

    If I were building this game I would consider building asteroids, robotron, or space invaders. If I were really ambitious I would try to recreate Castle Wolfenstein. Thanks for this video!

  • @hyperiontitan463
    @hyperiontitan463 2 หลายเดือนก่อน

    oh my god a TryHard on game Development, master of masters... beyond human comprehension.

    • @ncot_tech
      @ncot_tech  2 หลายเดือนก่อน +2

      @@hyperiontitan463 oh my god a sarcastic comment on a TH-cam video.
      Thanks for feeding the algorithm 😁

  • @JSSH-SCIFI
    @JSSH-SCIFI 2 หลายเดือนก่อน

    Alien plant ennemies, puzzles in a weird jungle. Thanks for a very nice video!

  • @JackHoffmanRN
    @JackHoffmanRN หลายเดือนก่อน +1

    Theres a book that has like 100 games to code in basic. A good game to start with in c/c++ is snake.

  • @svanholm71
    @svanholm71 20 วันที่ผ่านมา

    Love it! A few minutes in, I was thinking "Yep, I'll join you coding!" ;)
    What is the background music?

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

    Thank you for these videos. Love the channel. Game idea. Protect player 2 from being shot by player 3. Celebrity from paparazzi or crazy fan. Political leader from a shooter? Perhaps player 2 needs to transition the screen or complete a task in a time limit...might be interesting if player 2 could also be human as an option. Player 3 should always be AI.

  • @peachy7776
    @peachy7776 2 หลายเดือนก่อน

    27:15 hahaha the subtle shade throwing at stackoverflow, so true man

  • @Tronex2009
    @Tronex2009 2 หลายเดือนก่อน

    Wish you as much success with this series as Casey Muraturi had with Handmade Hero. However, scale your game a way that allows for getting finished. 😅

  • @andrewdunbar828
    @andrewdunbar828 3 หลายเดือนก่อน +7

    Llamatron itself was not an original, it was a ripoff of Williams 1982 arcade game Robotron 2084, itself heavily based on Stern's 1980 arcade game Berzerk.

  • @kpm25
    @kpm25 2 หลายเดือนก่อน

    12:42 you made this in 10 minutes?? that would take me 10 years!!! 😆 Thanks for your hard work!

  • @Samster33
    @Samster33 หลายเดือนก่อน +1

    That sprite editor you were using .. Aseprite ... I believe it's pronounced Ace-prite (or maybe A-sprite?)... Either way it was originally the Allegro Sprite Editor ... a sprite editor used by lots of people using the Allegro game programming library back in the day.

  • @midi_in
    @midi_in 2 หลายเดือนก่อน

    I'll be following this with great interest because I'm looking for tips on how to turn a half-finished game into a finished game, that's the part I always fail at. Your title grabbed me. Until recently I would have said "what other way is there to make a game??" but having started out making games on ZX81 and Vic (and still having no desire to do anything in modern 3d) It made my head explode when I watched a video recently where a 'game dev' started making a game. First question "what engine should I use?" (the first mind blower) and then "this game engine requires me to write some code, which I have no experience of" (total mind blower). I kinda get that modern 3d rendering is insane and not something anyone wants to write from scratch, but the fact that games are now written using drop-down menus is something I still can't really get my head around.

    • @ChrisM541
      @ChrisM541 2 หลายเดือนก่อน

      As someone with a lot of assembly programming experience on the C64 and Amiga waay back then, the lack of actual 'programming requirement' today stuns me as well. with the most difficult part (writing the game engine) side-stepped. As for getting your own game finished, please do continue with it. Make use of all the instantly available documentation and examples available, and do ask for help when needed (stackoverflow etc)...but do also try to push yourself into solving as many problems yourself as possible. Crucially, do things 'your own way' - there's lots of ways to achieve the same thing in programming.

  • @davet2234
    @davet2234 2 หลายเดือนก่อน

    I miss those old days, working with Turbo C, with inline assembly to access the screen directly in mode 13, at 0xA000 for speed.
    That my friend, is from scratch in my opinion. Still good video

  • @laughingvampire7555
    @laughingvampire7555 3 หลายเดือนก่อน +31

    that is not retrostyle, that is just hardcore style, but the "real man" style would be in assembly like with Roller Coaster Tycoon.

    • @cryptocsguy9282
      @cryptocsguy9282 3 หลายเดือนก่อน

      @laughingvampire7555 I think the only way it could count as retro is it looking like a 32bit 2d game
      from the ps1/sega saturn , I think those were done in C. Interestingly enough as an English speaker I haven't been able to find any books or programming manuals for assembly language for the hitachi SH architecture family of CPUs used in the 32x , saturn and dreamcast

    • @polluks2
      @polluks2 2 หลายเดือนก่อน

      @@cryptocsguy9282 Take a look th-cam.com/video/yASyr603Kfo/w-d-xo.html and his book www.amazon.de/dp/B0D2TV15LP

    • @stalinstylez4034
      @stalinstylez4034 2 หลายเดือนก่อน

      @vampire
      I'm sure you haven't written a line of code in your life

    • @sanyo8440
      @sanyo8440 2 หลายเดือนก่อน +1

      ​@@stalinstylez4034 hes right tho. even a regurgitated mainstream fact is still fact

    • @ChrisM541
      @ChrisM541 2 หลายเดือนก่อน +1

      @@cryptocsguy9282 C compilers waay back then were basic...very basic i.e. they produced machine code that was very frequently not as fast or small as that from a human assembly expert, and speed and size were 100% crucial back then with slow CPU's and low memory. This means that game devs back then absolutely had to inline a great deal of assembly - much, much more than you'd think.

  • @SuperJimmyChanga
    @SuperJimmyChanga 2 หลายเดือนก่อน

    Story: You've woken up in a cybernetics testing facility and have been been augmented with a gun arm. Your memory is coming back to you slowly as you fight your way out of the heavily armed facility, room by room. You might even pick up some more enhancements on the way out.
    Title: Cybershot: Lost Recall
    The title I think is cheesy but fitting. We can workshop it.
    Alternative title:
    Subject Seven
    Don't ask why, just kinda sounds cool, it's a shot in the dark really. ... :D
    Alternative alternative title:
    A shot in the dark.

    • @SuperJimmyChanga
      @SuperJimmyChanga 2 หลายเดือนก่อน

      looking forward to see how you handle collision detection

  • @fburton8
    @fburton8 3 หลายเดือนก่อน

    Crystal Quest... "ahhh!" I remember it well, with all its wacky sound effects.

  • @PointEndClick
    @PointEndClick 2 หลายเดือนก่อน

    This video is awesome.

  • @burntt999
    @burntt999 2 หลายเดือนก่อน +1

    i think this is my 6th rewatch trying to figure this out hahah
    [edit]: i'm really close to having {make} do cool magic for me also
    [edit2]: my emulator runs my .bin files now but i dont have any graphics with it.. been doing... this...all..dayy... i just wannt to start using C already!

  • @arronshutt
    @arronshutt 3 หลายเดือนก่อน

    I did have an idea for the issue that you have with getting status messages on the screen is to use your "screen state machine" to define an additional screen to implement a console/terminal screen with a different higher resolution and switch between it and the other screen using a key. Then you could store the log messages into some kind of buffer and display them on this other screen and switch between this screen and the game. Plus if you add an command line, you can modify the game as it runs for debugging. I know it sounds a bit like extra work but at least it might help if you write other games using the Agon Light. As for a design, i did wonder if something like Ancipital (opening doors by collecting stuffor via shooting stuff) or Berzerk (run around a large maze) might be a good base game to add some mechanics to. And as for a name..what about "CuppaQuest" in homage to the previous game that were inspiration coupled with the Nice Cup of Tea branding :)

  • @ScrotoTBaggins
    @ScrotoTBaggins 2 หลายเดือนก่อน

    I always liked the games where you need to act frantically and efficiently to stay on top of the objective. Like Tapper!, for example, where you needed to fill up root beer cups to a steadily increasing stream of customers.

  • @ZZKJ396
    @ZZKJ396 3 หลายเดือนก่อน +3

    C was almost never used in the 80s, 99% of the time assembly language as the raw that was needed to run on 8bit hardware. I'm saying that from someone who was an in-house game developer who worked during the 80s.

    • @ncot_tech
      @ncot_tech  3 หลายเดือนก่อน +3

      Yeah I know. Imagine getting a C compiler running on an 80s machine. A ZX Spectrum compiling and linking from/to tape 😆
      I want to build something and not take six months to do it. It was fun writing assembly a while back, but I see why it's so efficient. Having to hand craft basic things like multiplication and division and track register contents makes you try to write as little code as possible to save the headaches 😉

  • @bazodee2
    @bazodee2 3 หลายเดือนก่อน +1

    I see the beginnings of a souvlaki tycoon game that takes place in ancient greece.

  • @AuratticStride
    @AuratticStride 3 หลายเดือนก่อน

    Some ideas: title: Retro Robot Rewind. Theme: the character has been caught in a time warp that takes them back to the 80's and they have to battle their way out of the graveyard of unmade games (ie retro ideas that never got made because technology progressed instead)

  • @cianotube
    @cianotube 3 หลายเดือนก่อน

    Nice video! I started with STOS and I see you have it too :) I always wondering how to make a game on ST other than with STOS

  • @ernestuz
    @ernestuz 3 หลายเดือนก่อน

    Kate is a gem.

  • @josephlunderville3195
    @josephlunderville3195 3 หลายเดือนก่อน +1

    Does that quantize really quantize to 64 colours? The integer divide-then-multiply is right, sure, but 85 is very sus. 255/85=3, which would give 27 colours total or 3 per channel, not 4. You're trying to get 2 bits per channel right? So you probably want "p // 64 * 85".
    (I was going to recommend a longer expression but then I tested it and realized chatgpt had *almost* got it right. So very close! The general form for quantizing integer x from K to Q, K-1=n(Q-1) where n is integer > 0, is "x // (K//Q) * ((K - 1) // (Q - 1))" and in this case K=256 and Q=4 because it's per channel. Note this is kind of a special case and there's a more complex general form when K-1 and Q-1 aren't tidy multiples...)

  • @vast634
    @vast634 3 หลายเดือนก่อน +1

    How about a 3D (wireframe) shooter. Using modern WASD and mouse (if it can use a mouse) but represented with old school 3D graphics (wireframe meshes).

  • @BrunoidGames
    @BrunoidGames 2 หลายเดือนก่อน

    "Just people making stuff"
    That's it, I'm in.

  • @ThomasNemo-r9d
    @ThomasNemo-r9d 3 หลายเดือนก่อน

    Wow, a sane person no the internet.

  • @82issa
    @82issa 2 หลายเดือนก่อน

    I laughed at your expression of hot garbage. That would make a funny name for the game. Enemies bringing steaming piles of trash to litter. Keep your territory clean by shooting enemies or the piles of hot garbage with fun little explosions. I nominate the name “Hot Garbage”. I can’t wait to see how it all comes along.

  • @cwilliams1630
    @cwilliams1630 2 หลายเดือนก่อน

    Me rubbing sticks together in a game engine, grunting, gesturing, wondering why scary sounds and light come from the sky.
    This guy writes his own game engine in C and decides to write a game with it like it’s 1989.
    Me Grunk like. Grunk subscribe.

  • @DanimationMovies
    @DanimationMovies 3 หลายเดือนก่อน

    I like this guy. Subscribed.

  • @bluegizmo1983
    @bluegizmo1983 3 หลายเดือนก่อน +32

    In C is the hard way?! ... The original Rollercoaster Tycoon was created entirely by ONE guy and was written entirely in Assembly! 😂

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

      This keeps coming up. In the 80s and early 90s many games were written 100% in assembly language. Especially on systems like C64 or Amiga.

  • @jaybeemods
    @jaybeemods 2 หลายเดือนก่อน

    Ello James! C for the win! :D

  • @robertparenton7470
    @robertparenton7470 2 หลายเดือนก่อน

    Thank You!

  • @neilclay5835
    @neilclay5835 2 หลายเดือนก่อน +1

    I think Jeff Minter wrote 0's to my frontal lobes

  • @LaynaStambaugh
    @LaynaStambaugh 2 หลายเดือนก่อน +1

    "Let's make a video game, Retro style"
    *looks around desperately for some assembly code*

  • @Ash_18037
    @Ash_18037 2 หลายเดือนก่อน

    That's all great, but how are you actually getting pixels on the screen? 3D graphics APIs today don't let you just index from a base memory address to set a pixel (ie a frame buffer). Have you created your own abstraction simulating frame buffers on top of opengl / vulkan?

  • @Dalamain
    @Dalamain 2 หลายเดือนก่อน +2

    Hands up if you looked at the title and thought C#.

  • @Skiamakhos
    @Skiamakhos 2 หลายเดือนก่อน

    PMSL at the Steam folder comment - I feel called out!

  • @stephenmackenzie9016
    @stephenmackenzie9016 3 หลายเดือนก่อน +4

    Who remembers the demo scene?

    • @ncot_tech
      @ncot_tech  3 หลายเดือนก่อน +3

      @@stephenmackenzie9016 It's still alive. Although the Amiga and ST demoscene and early DOS was the best.
      They seem to have moved onto either making old hardware do actual magic, or have figured out how to cram raytraced animations into 4k that runs on a GPU.
      I think there's a demoscene for microcontrollers too.

    • @gezbob3508
      @gezbob3508 3 หลายเดือนก่อน +1

      Ah yes, of course! Fairlight etc and cool tracker music. I loved that stuff

    • @PeteDabbs
      @PeteDabbs 3 หลายเดือนก่อน

      @@ncot_tech C64 scene was the best :P still is.

    • @naturalroyalflush
      @naturalroyalflush 2 หลายเดือนก่อน +2

      Amiga demos were incredible. Mostly from Europe. Lots of techno.

  • @jamesguinn8903
    @jamesguinn8903 2 หลายเดือนก่อน

    How about stealth and traps, whether that be traps to avoid or as weapons against enemies?

  • @LARathbone
    @LARathbone 2 หลายเดือนก่อน

    Nice use of compound literals!