I belive i would like to try making games but my laptop isint that powerful. Its a thinkpad from like 10 years ago, i upgraded it to a 250gb ssd, and 16gb of low voltage ddr3, i also put linux on it to screeze out as much as possible. So i need something that will run but im struggling on choosing expecially sense i want to start for free. I want to start with something dead simple and work my way up.

What would you suggest and why so?

  • brian@programming.dev
    link
    fedilink
    arrow-up
    1
    ·
    2 hours ago

    since you haven’t said anything about type of game, if you want to start at the dead simple side and visual novels sound interesting maybe look at Ren’py?

    visual novels have less going on than a big 3d game, so if you want an easy start from 0 it should be as close as you can get. python is straightforward if you don’t have programming experience, but otherwise is really commonly used so gives a nice basis for whatever else you want to do.

    ren’py also has gotten plenty of commercial use if you wanted to go further in that direction. most big name vn games use it.

  • Caveman@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    10 hours ago

    I dabbled a bit with Godot 4 recently and the experience was pretty nice. Gdscript is easy enough to learn and the engine feels very flexible once you learn to use each building block. Guides on YouTube are good and the docs have guides also for creating a 2d top down shooter bullet.

    Pretty good all in all IMO.

  • soulsource@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    9 hours ago

    Just to toss this in: If all you need is to draw stuff to the screen, play audio, and handle input, you might have a good experience with using SDL or raylib. Those are “just” libraries and not fully featured engines, so they don’t come with advanced features like asset management or a ready-to-use level-editor.

    I am not saying that those are a better option than a fully featured engine, just that, depending on what you are trying to achieve, they might be.

  • Captain Aggravated@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 day ago

    I’ll join the chorus recommending Godot. A lot lighter than Unity or Unreal, it’s open source, well documented and quite capable. It’s got a lot of features, in a lot of ways it isn’t “dead simple.”

    I might recommend starting off using Python’s Pygame library. Do something like create Flappy Bird in it, that will give you a pretty good idea of how a video game works under the hood, and it’ll run on a potato.

    For pixel art you might go with LibreSprite or Pixelorama. These will allow you to create tile sets for backgrounds as well as character sprites.

    If you’re looking to get into 3D art, you’ve basically got to go with Blender.

    • entwine@programming.dev
      link
      fedilink
      arrow-up
      3
      ·
      1 day ago

      “Lightweight” and “small” isn’t the same as simple. People seriously gotta stop recommending godot to beginners. It’s good as a general engine, but a lot to take in for a beginner.

      Pygame is a great choice. I would add Love2D as a similar alternative if you don’t jive with Python.


      Off topic but Godot has a serious cult problem. Say anything that could possibly be interpreted as negative about it, and you’re going to get someone writing a very emotional response. It’s pretty much at the Apple fan boy level, which is bad but mostly weird.

      • brian@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        2 hours ago

        objectively the one with the cult is a good recommendation for a beginner since there’s a strong community making content, arguably the most important factor in choosing something

        godot also has a lot of stuff baked in, so the community tends to use the built in solution for everything. you won’t end up with one tutorial recommending a collision engine that makes assumptions that don’t work with the other tutorial for different pathfinding or whatever. they all start with basically the same assumptions.

        pygame is a little intimidating since you start with an empty file and a pygame import. there’s no real enforced or even commonly followed structure beyond that. beginners can figure it out but it leaves a lot of architecture questions open for you so your tutorials probably won’t line up well.

        and I say all of that as someone who doesn’t particularly enjoy godot, especially gdscript.

      • Captain Aggravated@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 day ago

        I did call Godot lighter than Unity or Unreal, which I believe to be factually accurate. I have run Godot on a 2014 era laptop, it runs well on a system of that vintage.

        It is a full featured 2D/3D game engine and development environment, which can be a lot to take in. A lot of what I learned about game development I learned from a Youtube channel called Clear Code, who made the same snake game in both Pygame and Godot.

        Python and Pygame does away with the cluttered IDE, and you can build a functioning game in one file, then you translate those concepts to a more full-on game engine which is going to be a bit more practicable for making larger games with things like tilesets and more complicated physics and collisions and whatnot. I’d hate to try making a Zelda-like game in something like Pygame. Fear the men who made A Link to the Past in 6502 assembly.

        • entwine@programming.dev
          link
          fedilink
          arrow-up
          4
          ·
          1 day ago

          I did call Godot lighter than Unity or Unreal, which I believe to be factually accurate. I have run Godot on a 2014 era laptop, it runs well on a system of that vintage.

          None of that is relevant. By that metric, Pygame/Love2D are objectively the better choice over Godot, as they’re smaller and lighter.

          I have been working on games (and many engines) for over 15 years. I know what Godot is, and what it isn’t. It’s the best choice for certain team compositions and certain game types, but it isn’t good at everything. In fact, it’s quite bad for very large and complex productions because of architectural issues (but that’s irrelevant for 99% of its users)

          It’s also not good for beginners for many reasons. The first is that it’s complex, as it aims to be a full featured professional tool. The second is that it’s weird, and does things differently from the rest of the industry. Its inheritance-based node structure was considered obsolete in the 2000s by the rest of the industry, yet Godot still uses it. They’ve hybridized it to introduce composition, which salvages it somewhat, but it still is a bad design with well-known pitfalls.

          GDScript is a shitty attempt to copy Python, and it lacks a lot of what a modern programming language has. It also is integrated into the editor in odd ways, like the Qt-esque “signals and slots” system (which is controversial even in Qt). It’s designed around OOP, yet it blurs the lines between whar an object is and what a module is, which is extremely odd.

          I’m not trying to shit on Godot. Like I said, it has its strengths, and for certain types of games and team compositions it is the perfect choice. But it should NOT be recommended to beginners.

          …IMO

          I’d hate to try making a Zelda-like game in something like Pygame.

          I gather that you’re struggling to understand how Python modules work, based on how you explained Pygame. You are not supposed to write your whole game in a single python file.

          Also, you can make use of tools like Tiled, Ogmo, etc to create levels and load them in Pygame or Love2D. You can even embed scripts or data onto entities within those level editors. You could even use Blender if you wanted to, either by writing a custom exporter (in Python), or hijacking one of the existing ones.

          You can go very far without a full IDE like Godot has, especially if you’re creative.

          • Captain Aggravated@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            2
            ·
            17 hours ago

            OP asked for software that runs well on a 10 year old laptop with 16GB of DDR3 and Linux. Saying that I found that Godot runs well on my laptop of similar configuration and vintage absolutely is relevant, you disingenuous troll.

            I understand how Python modules work just fine, you install a module with Pip, and it’ll run on your computer and only your computer until your computer gets some update in the future because Python’s module versioning and dependency management are the worst in the business. Python also has a well-deserved reputation as a fast and performant language even running on old and limited systems…oh wait no it’s a sow in treacle. The more you implement in Python the slower it’s going to run. Can you name a commercial game that is implemented in Python, using modules like Pygame? I can’t.

            If you’ve got the talent to open up a general purpose programming language and create a video game, use something like C# or Java, something designed for creating performant cross-platform graphical applications. Or, if you’re going to start gluing applications like Tiled and such together, you might as well go with something like Godot because that’s basically what you’re janking together.

            • entwine@programming.dev
              link
              fedilink
              arrow-up
              1
              ·
              11 hours ago

              Found the Godot cultist. Take a deep breath. Having a parasocial relationship with a game engine isn’t healthy.

              absolutely is relevant, you disingenuous troll.

              I meant irrelevant to the choice of an engine for a beginner. Why do you say I’m disingenuous?

              I understand how Python modules work just fine, you install a module with Pip, and

              You don’t understand what Python modules are. There’s no need to get so defensive about that. Nobody is born knowing everything, and there’s no shame in learning.

              A pip package is not a Python module. Pip is just one tool for managing module dependencies (there are others). A module in Python is anything you can import, such as another python script, a folder with python scripts, or a native library. There’s no need to use pip to make and ship a game in pygame. You probably used it to install pygame, because that’s the common way tutorials tell you to get it, but it’s not the only way, and it’s certainly not the way you’d ship the game to end users.

              Python also has a well-deserved reputation as a fast and performant language even running on old and limited systems…oh wait no it’s a sow in treacle. The more you implement in Python the slower it’s going to run.

              This is nonsense. You don’t know anything about software optimization. I can guarantee you that I’ve written pure Python that’s more performant than anything you’ve written in C# or whatever you think is a “fast language”.

              And in case you were unaware, GDScript is slower than Python. It’s not a fair comparison because Python has a ton of interpreters to choose from, even ahead-of-time compilers that rival C/C++ performance. By comparison, GDScript has just the one interpreter built into Godot, which is never going to compete with even the CPython interpreter (the one you’re probably using) in terms of performance, simply due to the amount of people and orgs investing in it.

              Can you name a commercial game that is implemented in Python, using modules like Pygame? I can’t.

              Idk pygame in particular, but there are a ton of commercial games made with Ren’Py. Search “visual novel” on Steam, and like 90% are probably made in Ren’Py.

              I don’t do game dev in Python so I’m not familiar with what’s popular nowadays, but there definitely are people making games with Python.

              if you’re going to start gluing applications like Tiled and such together, you might as well go with something like Godot because that’s basically what you’re janking together.

              “Gluing” applications together is called game development. Do you create your 3D models in Godot? Your materials and textures? Your story and design docs? Your music and sound effects?

              There are entire departments at game studios whose job is to build and maintain data pipelines between content creation tools and the engine, even for studios using Unity or Unreal. There are a ton of free/commercial tools out there serving the game industry (from AAA to indie), and the way to make the best game is to use the best tools.

  • ludrol@programming.dev
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    2 days ago

    Godot. You could try to see if Godot 3 will work better than Godot 4.

    Godot 3 is a bit older but still is getting fixes and some new features. (long term support driven by community)

  • thirdBreakfast@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    2 days ago

    Probably not what you are looking for, but I think a great place to start is Pico-8, there is an education version, but it only costs $15 to start making games in Lua with the real version on your machine. Although it’s very limited (think like Game Boy color games) you will learn a lot of the basics, there’s 1000’s of games you can look at the code of, and a good community and learning resources.

    It’s a quick easy way to get started in game creation, and if you’re new to programming it will be a while before you run out of challenges.

    Like a number of commenters have said, it depends on what type of games you want to make - Pico-8 is limited, deliberately.

  • slazer2au@lemmy.world
    link
    fedilink
    English
    arrow-up
    12
    ·
    2 days ago

    If you know a bit of Python then Godot is a good place. It’s GDScript is very similar.

    Godot is an open source game engine that is rising after Unity keeps shooting themselves in the foot with price changes and pricing structure changes.

  • IronBird@lemmy.world
    link
    fedilink
    arrow-up
    5
    ·
    2 days ago

    godot, though there are some others specialized for specific types of games if you have a genre in mind

  • Asetru@feddit.org
    link
    fedilink
    arrow-up
    8
    ·
    2 days ago

    That’s hard to say without knowing your background. If you know your way around a programming language already, simply using a library or framework for that particular language might be the easiest solution for you. If you have no background in programming, simpler tools might work better, such as fusion 2.5 or other purely visual programming apps. If you have a decent understanding about algorithms without a preference for a specific language, dedicated engines such as Godot might work best.