Can someone explain how to me how to program a game?

Options
WishIcouldmain
WishIcouldmain Member Posts: 4,082
edited February 2021 in General Discussions

I know programming a game can be hard. But you'd think when it's your life work you'd put all your hard work into making gameplay functional and run well. Behavior is struggling with that. So can someone explain what's it like programming and making a game. So there's a slim chance I can see why the devs are having a hard time.

Comments

  • darktrix
    darktrix Member Posts: 1,790
    Options

    It gets harder if you depend on your customers doing all the QA for you.

  • Karna5
    Karna5 Member Posts: 34
    Options

    You're confusing programming with designing, Wishlcouldmain. I realize you're just trying to insult the developers, but I'll answer your question.

    To program a game you have to learn mathematics and how computer memory and hardware works, and then you need to learn one or more low level computer programming languages.

    Once you've learned all that you can learn to design things, but you must learn them all if you wish to be a good programmer and then a good designer.

    This said, I don't believe for a second you wish to learn to program games nor to design them.

  • Heartbound
    Heartbound Member Posts: 3,255
    Options

    Well from what I keep seeing is that they'll change something and not be able to change it back, from better for worse which tells me that the original people that wrote the game's code are probably gone and the people fidgeting with it now aren't really that familiar with it. If something breaks (which it does) they might get fired but...welllll...it's a job, not a passion project for them. Part of me feels like they don't have full access to the guts of the game or if they do, they may not understand the code that was used to write it. Everyone codes differently.

    We just have to look at it for what it is. It's Canadian software with a heavy French influence. Maybe this is some big brain play us Americans just aren't smart enough to get.

  • Jarol
    Jarol Member Posts: 1,985
    Options

    Programming a game is complex if it is one in the Dead by Daylight style, I think that not only one focuses on practical work but on practical teamwork + the knowledge and tools acquired at the University, that is one of my reasons which is why I love Computing Engineering. As I am now studying that career at the University, the programming is quite complex, in fact all the development of some project is practiced in a Void Loop and it is the most tangled part that someone can easily make mistakes (As in the case of developers ), that is why in the world of programming it is assigned Variables or Int so as not to be confused, as in the leaks they put the name of Trapper01 as an example of Variable or Int. Although in my personal opinion, if that was my life's work, being a video game programmer would be the job I would love the most, since those who work in the computer game area also always attend conventions.

  • ChantyBoi
    ChantyBoi Member Posts: 179
    Options

    Nice try dev team

  • DeceptivePastry
    DeceptivePastry Member Posts: 48
    Options

    I don't think the issue is they don't know how to program. I would assume poor version control/communication and not enough time or people to properly test changes. I assume they have a bunch of different teams working on different aspects of the game, and multiple different branches where changes are made that are later merged when ready, and that is where a lot of things fall apart.

    I mean ######### happens, sometimes bugs slip through. Though there are a couple things that made it through that I just question, how? Like the Autohaven bus?? Was someone playing around with the bus one day and forgot they made changes? Did someone make changes and not think to run a few loops for 2 minutes with a survivor/killer? Idk.

  • WishIcouldmain
    WishIcouldmain Member Posts: 4,082
    Options

    No I don't, but when someone makes it their job they should do it as good as possible.

  • StibbityStabbity
    StibbityStabbity Member Posts: 1,839
    Options

    Well, if you are using Unreal Blueprints, it's mostly drag and drop with linked mechanics. It's a visual representation of the games logic. The issue with that kind of system is it's only really good for basics. Anything more and you start to encounter problems, chief of which is the dreaded "spaghetti code".

    If you want to learn the absolute basics, though, you can start with pseudo-code. It will teach you the basic logic behind programming. From there, you can learn a language, which you can then apply that pseudo-code to in order to really pick up how to use the language. When using Unreal as an engine, don't forget to look through their documentation, which will give you a lot of instruction on how to use their assets and engine capabilities.

    Also, while coding can be "complex", it's worth pointing out that you tend to work on it in segments. As long as you clearly notate your segments, and you should, you should be able to keep track of every segment of the games core script fairly easily.

  • TheClownIsKing
    TheClownIsKing Member Posts: 6,278
    Options

    Please don’t pretend any profession exists, anywhere in the world, where it’s impossible for people to be infallible.

  • Dwigtht
    Dwigtht Member Posts: 462
    Options

    Sure thing. But this won't happen in one evening or so, so if you are ready to try -- go ahead. You might get bored, confused and overwhelmed during this learning time, but if overcome this unpleasant feelings -- you might not only understand how the games are being made, but also learn a valuable skill and may be find yourself a high paid job and buy all the games you want!


    DBD is written with Unreal Engine and C++ programming language. This combination gives the developers a great performance optimization options, but has a high entry bar.

    There are simpler and more beginner friendly options, like Unity 3D Engine and C# Programming language.

    You would need to download and install:

    Unity 3D Engine: Pick Individual (Free) license and follow the documentation

    Microsoft Visual Studio Community Edition for C# Development. You don't need it right now, but you gonna need it soon.

    You might also need Blender 3D Modelling Editor in future

    Go through the Unity getting started guides and than through the tutorials.

    All those tools fit together as well as BBQ and Chili and Hillbilly

    With this one you would learn how to create a simple 3D Game:

    Roll-a-Ball

    Good luck!

  • MrPeterPFL
    MrPeterPFL Member Posts: 636
    edited February 2021
    Options

    @WishIcouldmain I use to work with a Dev team so I can tell you the basics of programming.

    Which one are you interested in? Because “programming” is very vague, there’s Audio Programming, A.I. Behaviour Programming, Gameplay Programming, Physics Programming etc. But let’s talk about the basics of programming.

    Programming is a collection of instructions to give to the computer to produce, it’s like a cooking recipe, the programmer creates the steps and the computer will follow the steps and produce something beautiful.

    Most common programming is C++, it’s the simplest one.

    Example of Basic Programming:

    Int main ()

    (

    Cout << “Hello WishIcouldmain” << endl;

    Cout << “ ___________________ ” << endl;

    Cout << “ I I” << endl;

    Cout << “ I I” << endl;

    Cout << “ ____________________ “ << endl;

    Return 0;

    )

    In this example C++ is going to look at the Main Function which is a block of codes. Our block of codes is in “Int main”, inside the brackets are a list of instructions that we have for the computer to produce.

    Cout means “Console output”

    endl means “End of line”.

    Each line is a step and the computer will follow each steps in order, from top to bottom (like a cooking recipe).

    In this example, I have told the computer to produce the words “Hello WishIcouldmain” and to draw a rectangle shape. On the console the computer will produce the text and to draw a rectangle with these basic steps.

    That’s the easy stuff, there are waaaaaaaaay more complex stuff which would take hours and hours of time to understand and to teach. If you feel like this is a lot of info or a bit confusing, that’s how the programmers feel like every time they do this. They have to go through list after list of codes to understand what the problem is and then find a solution to fix it.

  • Exerath1992
    Exerath1992 Member Posts: 1,035
    Options

    So, like people have said, a lot of complaints are actually about the design of the game. But actual bugs are a programming issue. The reason why bugs pop up in this game so much and are difficult to fix is how complex the interactions have gotten over the years this game has been out. Every single perk, stat, power, item, killer, intractable, add on etc has to be able to interact with so many other things, and every single thing has to be accounted for. And your be surprised at how strange the source of some bugs are. You didn't program a Boolean of this add on correctly? Now the exit gates don't work for the person who used that add on, and just trying to find that one bug source out of the tens of thousands of possible sources takes forever.

  • Exerath1992
    Exerath1992 Member Posts: 1,035
    edited February 2021
    Options

    Actually, blender and unreal engine work together pretty well because of FBX files IMHO. And unreal is so much easier to get started on than unity because of visual scripting (which i doubt BHVR utilizes)

  • darktrix
    darktrix Member Posts: 1,790
    Options


    Absolutely. People are fallible, but I also won't pretend there are many professions where their practitioners fail so regularly and are still expected to keep their jobs.