Jump to content
  • Advertisement
Sign in to follow this  
Moe091

Unity Where can I read about software architecture for video games

This topic is 1971 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm about to start my 3rd android game, this one is going to be bigger and more serious than my others and I actually plan on investing some cash into it, so I want to make sure I do everything right.

 

I'm going to use libgdx to write it and I'm pretty familiar with the library already and I know how to code all the individual parts I need, but I have never made a project this big and I want to invest some more time into learning about software architecture and planning everything out before I dive in so I can ensure that the development process is smooth until the end and doesn't give me any headaches. I've been googling around for a day or two searching for things such as 'video game software architecture' and 'code architecture for games.' I don't get many relevant results with those queries though which is why I am here making this post.

 

I was hoping the community could help me find the information I need by either linking some valuable resources, giving me some ideas on what to search in google, or just lending me whatever advice you can based on your experience.

 

If it matters, the game I'm making will have rpg-like elements, but it won't be very open world, it will be played in short 1-5 minute rounds that take place in different(most likely randomly-generated) maps/trails. It will also have some tower-defense like features and will require some basic state-based ai, and will probably use box2d even though it is not heavily physics-based at all. I have a strong idea of what I want the game to be like and what features I will need but I would still like my code to be as flexible/extensible as possible so I can test it out as I'm making it and change/add different ideas and features as I see fit. extensibility/flexibility are my main goals, I want to be able to add whatever I want without too much effort(I'm thinking of using a scripting language in game but I don't have much experience using scripting languages in games, so I would really appreciate any advice/resources you guys could give me in that area as well).

 

 

Thanks for reading and for any replies

Edited by Moe091

Share this post


Link to post
Share on other sites
Advertisement

I can ensure that the development process is smooth until the end and doesn't give me any headaches

If that's your goal, I'm afraid you're going to have surprises. There will be headaches.

The problem with those kind of queries is they're incredibly broad in terms of topics. Moreover, different problems lead to different solutions and there's no silver bullet in general. So, where can you find this? There's no site with an article on how to structure your game. At best, you might find different sites with articles describing how they set up their game (more probably, how they solved a specific problem). Expect differences and perhaps even contradictory statements from different people. Remember, you have your needs, they have theirs, take the best of each.

 

I am happy you're planning to integrate a physics/collision library. That's a thing many people still gets wrong. Albeit high-level, your design is important, stick to it and you'll have less problems.

 

Now, a final note about scripting. Scripting is cool, scripting takes no effort blah blah blah...

Scripting requires careful consideration of what you want to allow through scripting and what not. Many people on this forum appear to think scripters should be able to do whatever the "main" programmer can do. This is not the case. Personally, I think designing the scripting language interfaces took me a great deal of effort, for this reason I'd suggest to add scripting at a later time. You have already a lot of work to do and I'd suggest to keep it simple for a first project.

Share this post


Link to post
Share on other sites
There are many libraries worth of good books written on the topic of software architecture.

The fact that the software happens to be a game is secondary. Good software architecture rules apply to games just as readily as they apply to banking software, medical software, music playing software, and other industries.


As for the headaches, the above reply is correct. All non-trivial projects will have headaches. When we do our initial planning and scoping of features, we come up with a combination of metrics. One of those metrics we term "headaches", how much anticipated grief the feature will give us.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!