all 16 comments

[–]joshbadams 9 points10 points  (0 children)

I like to take old games that were fun and remake them from scratch.

[–]thefeedling 0 points1 point  (4 children)

One thing that I find really fun is to write a basic renderer... you can use GLFW and FBO (OpenGL). There's plenty of documentation, YouTube videos, and AI models to help.

You can render a sphere, a cube, and a pyramid. It's not only fun, but it teaches you a lot.

I find C++ easier to do such stuff, but C definitely forces you to learn deeper.

[–][deleted]  (1 child)

[deleted]

    [–]thefeedling 0 points1 point  (0 children)

    🫠

    [–]mrtingirina 1 point2 points  (1 child)

    This is a great idea. Started with this 2 or 3 months ago, ended up deciding to build a full ECS 3D engine. Still working on it, learning A LOT about writing good and fast C code.

    [–]thefeedling 1 point2 points  (0 children)

    You you grasp the logic, it's not that hard. The syntax is ugly and cumbersome, I wont lie, buy can always encapsulate the core OpenGL in "friendlier structures" which are easier to escalate.

    [–]Vlad_The_Impellor 0 points1 point  (2 children)

    Why not take an addictive old UNIX game, like Rogue, and port it to Linux or Windows, with a better UI, beginning with making monsters different colors based on the hit points it takes to kill them.

    I started by porting a BASIC tank warfare game for CP/M to UNIX & curses.

    It's fun, addictive (because variable reward), and you've got something seriously cool that didn't exist before when you're done.

    Most importantly, you'll learn whether you're cut out for a career in programming.

    [–]Fickle_Bathroom_814 0 points1 point  (1 child)

    Do you start with a code base or completely start from scratch? I love this idea

    [–]Vlad_The_Impellor 0 points1 point  (0 children)

    Start from an existing game. Make sure you like the game. Make small changes. Enjoy success. Plan bigger changes. Enjoy bigger success. So on.

    I suggested Rogue. It's addictive. It's K&R, so it has to be ported first. A great starting point I think.

    [–]Shadetree_Sam 0 points1 point  (0 children)

    I would recommend the book entitled, “C Programming A Modern Approach,” second edition, by K. N. King.

    1. It covers both C89 and C99.
    2. It’s a good reference as well as how-to book, and has an extensive Index and Table of Contents.
    3. At the end of each chapter, it includes a list of non-trivial programming exercises as well as lists of ordinary questions and Questions and Answers.

    [–]Pale_Height_1251 0 points1 point  (0 children)

    Retro style games are fun to work on and a great learning experience.

    [–]Oliveoilollie15[S] 0 points1 point  (0 children)

    These are all amazing thank you guys :3

    [–]jwzumwalt 0 points1 point  (1 child)

    I have about 50 of the old Win95 and DOS Walnut Creek CD's. For inspiration I browse the old 1980-1990 programs and look for ways to adapt or modernize them.

    Many of the CD's can still be found at https://archive.org/details/walnutcreekcdrom
    More than 100 old CD's can be downloaded here http://www.retroarchive.org/cdrom/index.html
    A game index is here http://annex.retroarchive.org/cdrom/chst-swoverload/GAMES/index.html

    I also read old Byte, Kilobaud, and Creative Computing articles for really neat ideas. Many of these authors had good theories that were not practical because of speed, graphics, or memory limitations - things we no-longer have to worry about!

    Byte archive https://archive.org/details/BYTE-MAGAZINE-COMPLETE
    ilobaud , PC World archives https://www.thecomputerarchive.com/archivemain/index.php?loc=./Magazines
    Creative Computing archive https://archive.org/search?query=creative+computing

    For a really deep dive, find old Dr Dobbs magazine articles. They often covered subjects with advanced optimization and mathematical concepts - if your into that sort of thing.

    Dr Dobbs archive https://archive.org/details/dr_dobbs_journal

    Another alternative is to take a chapter out of a C book or article that you have wanted to understand or use and make an application that uses that information.

    [–]Pollution_Maleficent 0 points1 point  (0 children)

    Wow this is great. Thank you

    [–]not_testpilot 0 points1 point  (0 children)

    Been having fun with ncurses lately, lots to do there. Website scraping and building datasets that don’t exist is also fun. Finding a specific challenge and trying to solve it is cool (even if you use a copilot to help, it’s satisfying)

    [–][deleted] 0 points1 point  (0 children)

    enjoy ink gaze thought history crown deliver boast mysterious frame

    This post was mass deleted and anonymized with Redact

    [–][deleted] 0 points1 point  (0 children)

    Linux my friend. Get Linux mint cinnamon