Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

How to approach an online FPS project?

A topic by Choof created Jun 05, 2020 Views: 321 Replies: 2
Viewing posts 1 to 3

Hello,

I have developed games in Unity for about 7 years now, and I decided I wanted to make an online FPS game for my next project.

However, I have no idea how to approach it. I have the fundamentals down (reload, shooting, raycast) etc., but I haven't started animating players or weapons. I was wondering how I should approach a project of this scale.

As I work, I want to make the project as sustainable as possible. I want to make it so when I add networking components, everything is easily setup.

With that being said, what tips could you guys give? What are some best practices I can do? Any tips on organizing scripts, weapons and animations to make everything easier to manage?


Thanks!

Moderator(+1)

The best tip I could give, from my experience, is to not start a big project that you are unsure how to structure. It can lead to you getting lost in the code, and be demotivated, and possibly abandon that project. I’ve done that multiple times.

I’d suggest to start small. First make a camera that can walk around, and look around. Then give it a weapon. Etc.

In Unity, animations are usually not as mixed with the code. You can make the animations in its build-in animator, and control it through the code. If you’ve never done anything animation-wise before, I’d strongly suggest to start slow. Make a small animation. Something ridiculously small and simple. Later on, if you feel more experienced, you can make something more complex.

That being said, there is no “best way” to organise an FPS game. Every game is different, and is organised based on its individual needs. Will your game focus in weapon combat? Then maybe organise it in a way to make it easy to add new weapons. Will it focus on vehicles? Then it should be easy to add new ones. Pick a method that works, and go for it. With experience you will find it easier to organise bigger scale projects.

Writing good network code is usually hard, you have to think about scalability, security, fast speed and so on. What I can suggest is to use pre made solutions like photon or spatial os, but they are not really production ready. Do you have any hit FPS games? If no then you should try to create some decent FPS first, then think about adding multiplayer.