What are some things you wish you had known or found out sooner when designing games in UR Engine?

Pretty much what the title says! Just a newcomer about to start putting my imagination to a realization. Any tips or anything else is appreciated, Thanks!!

I focused too much on content assets. A lot of new assets are better, thus I spent time implementing stuff, sorting it, optimizing it - then with newer assets in the end I replace previous content. Another thing was that I started out trying to design the game world from the start, working on a huge map, setting everything up, optimizing the landscape designing a lot. Though all the work with assets was not entirely wasted, in the process I teached myself Unreal Engine, Blender, and other software, and how to setup materials, optimize scenes, NPCs etc.

So while I wish I had started out smaller, all the time I spent working with an overly complex scope from scratch helped me to obtain the required developer skills.

The best advice I can give someone who is new to UE game development, start small (small starting landscape, few characters maybe even default), focus on the fundamentals, the game mechanics.

Start here:

Games vs Other-Art:
Figure out as early as possible, whether your imagination or ideas will actually work as games or not.
Maybe you’ve got great stories, art, books, comics / anims, but do they really convert into game tech?
There are good reasons why games tend to fall into similar patterns: shooters / swords / moba-magic…
If you don’t want to post game ideas online befriend gamedevs offline, confide in them and then listen!

Make my MMO:
Scope: Don’t begin work on a game until you can rate upfront the difficulty level of each of the main parts…
If you’re told a plan is impossible to achieve because its outside the bounds of the engine. Pay attention!
But also see if you can think outside the box and still implement the idea anyway, using smoke & mirrors.
Game dev is about creative problem solving, how to work thru problems w/o a big team / custom engine! .

Smoke & Mirrors:
Games typically use smoke & mirrors and other techniques to create realism. Everything in-world has no substance. Its just illusion, like theater props and movie-sets papering-over-wireframe-walls. Oh look, there’s a ball on the ground. I can kick it, it moves. You pick it up and carry it. But is it the same ball? You nudge a weapon on the ground… Is it the same one that appears in your hands moments later when you go to shoot it? The sword shield you carry on your back in third-person, is it the same one as when in first-person? Jump into an in-game elevator or get run over by an in-game car… Is that different from the mechanics of the real world, if so how? Even just getting in and out of a game vehicle (spawning / hiding characters) or walking into triggers / volumes will seem alien at first…

Its easy to fool yourself into thinking you can always add Multiplayer later. Why not add vehicles too and objects that you can pick up and throw around! In single-player this is easy in a split-screen game on a sofa with your buddies. But Multiplayer is like sending your friends out to separate planets in the solar system. Now, you can’t see them kick a ball anymore, or drive a tank, or snipe at you from vast distances anyway. So instead, they have to describe what they did and what the result was. That has to be transmitted back, which can take forever in game time terms (just like radio transmissions to Mars). Then you have to decide if they were cheating or whether the ball really went into the net. The complexity is immense. The fact that good games mask all this magic is a testament to the engineering teams behind it. :slight_smile:

AI / Bots:
In stories / comics / art etc, AI often exhibit Human traits… So its easy to think that would be great to mirror in-game, like AI / Bots with human vision / hearing, exhibiting human traits like grudges or fear or rising and falling confidence etc. Unfortunately default game AI behavior works nothing like this. So you’re going to have to build it from the ground up. AI don’t even see other players against the background or how human vision works. The whole landscape is different. So, If you want AI with cunning and human-flaws and not unrealistic Terminator-like shooting accuracy and tracking, then you’re going to have to find creative solutions to mimic that…

  1. Start using C++ from very beginning. I thought that i will learn unreal api (and philosophy) by doing blueprints, then i just transfer over to C++ when i need to (i know non unreal C++). It is not that easy. So i kind of wasted some time with learning blueprints first.
  2. Buleprints are great for small tasks, anything that can fit on single 4k screen is fine in blueprints. Anything bigger than that, you should use C++. It is matter of maintaining code, in bigger projects what you save up on developing time (in blueprints) you lose later on code maintenance.
  3. Do not worry about assets at beginning, just buy some from marketplace, make prototype. In early stages assets are for you, to keep your marale up, to have some feeling about how game should look. And that is it. Get minimal assets that let you feel style of game
  4. Scope. When people write that your open world, survival, mmo, zombie fps, is huge project, at least stop and think about it. My advice is start with something very very small. Get 8bit game emulator (Atari, C64, spectrum) and go hunting for very simple games. Find one you like and recreate it in unreal. Then release it on ios, android, steam. And then you will have idea of how much work it is to make full game. Do not start with mmo.