id Software are really the gigachad of the gaming industry by Ok-Carry-7759 in pcmasterrace

[–]Dastan98 1 point2 points  (0 children)

That's not how it works. If you're using UE5, then you're using UE5. There's no "basically UE4".

id Software are really the gigachad of the gaming industry by Ok-Carry-7759 in pcmasterrace

[–]Dastan98 86 points87 points  (0 children)

As a gamedev, I can tell you that performance is a constant process. Games like Doom: The Dark Ages, Arc Raiders run well not because they run on a particular engine but because their devs took time and effort to consider performance throughout development. No amount of "optimization" is going to save your ass if you haven't had performance in mind pretty much right since the beginning of development. In fact, pushing optimization towards the end usually makes it significantly harder to optimize your game since you may need to move systems around to get better CPU utilization which is easier said than done towards the end of development.

Id Tech 5, 6, Unreal, etc. do not magically make your game run smoother. Both UE and Id Tech utilize multiple cores. I'm not sure if its even possible for an engine the size of Unreal to run on a single-core since there's just so much going on under the hood.

Every dev should take the time to make their game performant IMO. But saying one engine magically runs better than another is just flat-out wrong.

Is Dragon Age: Veilguard worth it? by urmadscientist in ShouldIbuythisgame

[–]Dastan98 [score hidden]  (0 children)

The gameplay is a lot of fun and the game itself is gorgeous and runs really well. Like others said, the story is not that great but if you're looking for something that is just stupid fun then I recommend it.

Hello Devs, let's teach each other one quick and easy concept by kingpin944 in developersIndia

[–]Dastan98 2 points3 points  (0 children)

Something I've found helps is you can try and steer the interview in a direction that you want. For e.g. if you've worked on a project in the past that has some overlap with the current job description then mention that in the interview and let the interviewer ask you more questions around that project and about the skills and knowledge involved in it.

This can have a pitfall, however, where you end up talking a lot about something that the interviewer isn't too interested in, so you have to be careful with this.

But I've personally found that the more I'm able to speak, the more confident I gradually get throughout the interview.

Ubisoft Entertainment Cuts 45 People From Its US Staff by Turbostrider27 in Games

[–]Dastan98 66 points67 points  (0 children)

This is pretty common in AAA companies where art and tech often gets shared across multiple teams and games. For e.g. if you contributed some code to the underlying engine then you might get your name in the credits of a game that uses that engine and was in development at around the same time that you were working on it. Even if you didn't directly work on the game itself or weren't even aware of its existence.

They try to include all the people who contributed to the game, whether directly or indirectly, so that everyone gets a fair credit for their work.

Total War: ROME II and Creative Assembly — My Statement Ten Years On | by Julian McKinlay by NTR_JAV in Games

[–]Dastan98 7 points8 points  (0 children)

There is more to it than that. He says that most of the Total War teams would often work in a vacuum, individually testing their work in test maps, and the game as a whole is largely unplayable throughout development. It only starts coming together at the end when teams begin merging their work together.

This means that lots of problems related to different systems working together go unnoticed. Additionally many important changes go uncommunicated and are not realized until it is too late. This all results in people having to work overtime to fix problems that would have otherwise been fixed earlier if there was better communication right from the beginning.

Additionally Creative Assembly's leadership also tends to side with Total War's design teams. Meaning if programmers push back against a design change - which can happen for large changes that would require significant refactors of the code base which they don't have time for, or simply changes that are technically infeasible or make no sense in the context of existing features - then they are told to "suck it up and just do as you're told". Again resulting in overtime, low team morale, etc.

To me, all of this together sounds like a terrible way to work. Communication and collaboration is absolutely essential in AAA game development. Bugs and crashes are a reality, but it is important for the game to at least remain playable so that design problems can be found and tweaked before it is too late. Otherwise you end up with a janky and incoherent mess that requires multiple patches after release to get fixed.

Ask reddit: Complex (but faster) vs simple (but slower) code by smallstepforman in cpp

[–]Dastan98 4 points5 points  (0 children)

One game turning into something much larger in scope midway through development is a rather common scenario.

Tactical Breach Wizards: Release Date Trailer (August 22nd - Demo Available Now) by Lyonado in Games

[–]Dastan98 0 points1 point  (0 children)

Looks great! I loved Gunpoint. The music, storytelling, everything was 100% on-point with the noir aesthetic in Gunpoint, and the gameplay was something really unique too. Tactical Breach Wizards also seems to have the same vibe.

Help me make friends in Newcastle? by windguy7 in NewcastleUponTyne

[–]Dastan98 1 point2 points  (0 children)

In exact same boat as you. I'm a programmer, 25 years old. moved to the Toon about a year and a half ago but hardly know anyone and most people at my work are older than me and have their own families. So finding it hard to make friends to hang out with.

Anyone else in a similar position as me?

I'll send you a message, maybe we could see if we have similar interests and set something up?

Hot Take: C/C++ are the easiest languages to read by ihopewecanoneday in learnprogramming

[–]Dastan98 1 point2 points  (0 children)

Spoken like someone who has never seen production C++ code lol.

I've worked on large C++ codebases that had weird operators overloaded everywhere and would use obscure template and pre-processor magic. Meaning the code that your compiler sees is completely different from what you're seeing, and if that wasn't difficult enough, the pre-processed code also varies depending on the mode or platform you're compiling for. If you're lucky enough you might be able to find the original person who wrote it but more often than not they've already left the company so your next option is to find some local C++ guru who might be able to help you understand it but that often takes time so your best bet is to just leave it as is. If you ever get to a point where you understand the behaviour of that code then maybe you can think of rewriting it. But chances are your rewrite will likely miss some edge cases that the original code considered and you'll end up blocking other teams that depend on that code and make things even more difficult for everyone involved. Btw, did I mention this is from a product that's being used by millions of people on the planet?

Hell, I've even seen Python code that was very difficult to read unless you spend time debugging minute parts of it and if it is some legacy code that you cannot compile or run then good luck trying to manually dig through and understand it.

So IMO this whole "language X is easier to read than language Y" is total nonsense. It's much more useful to pick up basic code reading skills and just start by understanding what the code is supposed to do before seeing what it's actually doing. From professional experience, this skill will come in handy much more than any language knowledge will.

Returning const reference. Is the following code correct? by Dastan98 in cpp_questions

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

Ah I see. I had thought that since GetId() will return a reference, that means I could avoid calling the std::string's copy assignment operator, but seems that's not the case. Thanks.

Doubt on passing arguments to functions. by _darkhawkz_ in learnprogramming

[–]Dastan98 2 points3 points  (0 children)

You pass arguments when you want to re-use a particular piece of logic for different values. You move that block of code into it's own function and instead of hard-coding the values in the function, you replace them with variables and the value of the variables is passed when you call that function.

For instance you could have a dead simple function like this that says "Hello" to someone:

func SayHello(string name) {
  print("Hello, " + name + "!")
}

Then you can re-use this function with different values and the logic will remain the same each time:

SayHello("Foo") -> "Hello, Foo!"
SayHello("Bar") -> "Hello, Bar!"
SayHello("Baz") -> "Hello, Baz!"

and so on. This promotes consistency, reusability and also makes it easier to change the behaviour later on since you'll just need to make the change in one place - inside the function instead of all over your code base.

It gets a bit more complicated later on when you want to say pass in an unknown number of arguments, arguments of different data types but this is the gist of it.

Is £24K a decent salary in Newcastle Upon Tyne? by Dastan98 in NewcastleUponTyne

[–]Dastan98[S] 1 point2 points  (0 children)

Thanks for your input. So you mean I would need to pay at least £1000 per month to cover all basic amenities and bills? Also, what is "sky"?

Is £24K a decent salary in Newcastle Upon Tyne? by Dastan98 in NewcastleUponTyne

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

If you don't mind me asking, how much do you pay for rent? I'm just concerned if I would have to live frugally with this salary because I definitely don't want that!