How do you work out System Requirements?

Started by
14 comments, last by ApochPiQ 18 years, 3 months ago
I was wondering, if you had created a game, how would you work out the requirements for the users computer to run that game? Surely it will work on your computers specifications, but would you just say those and anything better? Would you make estimations on the specifications needed?
Whether you think you can or think you can’t, you’re probably right – Henry Ford
Advertisement
Only one truly accurate way: test it on different configurations.

If you can't afford the different systems, find friends, local library, work, school, wherever has different configurations, and test it on them all.

Check out my new game Smash and Dash at:

http://www.smashanddashgame.com/

Ok, thanks
Whether you think you can or think you can’t, you’re probably right – Henry Ford
Whatever is bareable for the user.
Quote:Original post by Peter Conn
I was wondering, if you had created a game, how would you work out the requirements for the users computer to run that game?

Surely it will work on your computers specifications, but would you just say those and anything better? Would you make estimations on the specifications needed?

If it is something you've done on your home PC, then the only statement you can make is "tested on my configuration". If other people play your game, you can invite feedback and begin to build a picture of which configurations work well.
I guess what you could also do is: Run your program then use the task manager to see how much memory and CPU is used by your program.
Say your program uses 50% of the CPU and you have a 2000MHZ cpu, then you know that the minimum would be about 1000MHZ (on which the CPU would be used for 100%). It's not precise ofcourse (because most CPU's nowadays can do more instructions in 1 clock cycle than older CPU's (so a new 2000MHZ CPU might be faster than an older 2100MHZ CPU)). But it's definetely an indication.

[Edited by - Kamos on January 19, 2006 1:06:08 PM]
Quote:Original post by Kamos
I guess what you could also do is: Run your program then use the task manager to see how much memory and CPU is used by your program.
Say your program uses 50% of the CPU and you have a 2000MHZ cpu, then you know that the minimum would be about 1000MHZ (on which the CPU would be used for 100%). It's not precise ofcourse (because most CPU's nowadays can do more instructions in 1 clock cycle then older CPU's (so a new 2000MHZ CPU might be faster than an older 2100MHZ CPU)). But it's definetely an indication.

Won't work very well if your program uses as much processing power as it can and adapts computations thereafter. For example, the physics is based on frame time, and resiplay occurs as often as possible. Task manager is likely to report 100% no matter now fast CPU you have (within limits of cours), just that on a faster computer, program will run more smooth.

As a simple example. A single rotating triangle on my computer can consume 100% if I keep redisplay it continuously without idling between frames. Does that mean a single rotating triangle requires a 3.4 GHz CPU? Or can I still run it on a considerably slower computer, but with lower, but still acceptable, frame rate?
I was asumming that the requirements of the computer were based on a certain frame rate at which the game is playable. Say at 30fps, then you program it so that it will run at 30fps (even if it could run at 50fps) and then look how much CPU is used by your game. (Ofcourse your computer will have to be able to run the game at 30fps)
Another method that works pretty well is to look at the libraries, APIs, and OS your game runs on. If your game requires, say, DirectX 9.0c to run, then you can look up Windows versions that support 9.0c, and require at least those versions. You can also look at the hardware requirements of those operating systems to get a (rough) idea of your minimum, although you will definitely want to require a bit more than just Windows does. There's other simple things you can do as well, depending on various technologies the game uses. Using technologies like Shader Model 2.0 should give you a very clear line of what video cards can be supported, for instance.

That should give you a basic, ballpark guess at where your minimums are. If your game is more simple and uses, say GDI+ instead of DirectX or OpenGL, you can drop the requirements quite a bit. Once you have a basic guess, the best thing to do is to test on as many machines as you can, as has been said. Just pick an arbitrary "quality of play" standard (like minimum 25 FPS) and find a machine that hits that level. Call that your minimum and you should be all set.

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

Write a little application using your engine... some little demo with the same number of textures, shaders, geometries, etc as your game (in average) and post it here. People here can test it and report you the fps for example.
Your application can also generate some report (like some benchmarks). I’m sure you will find some developers here that will run the demo and mail you the report. You can save information like the gpu, cpu, ram,... in the report, but tell the people that your program is going to collect information about their pc.

This topic is closed to new replies.

Advertisement