Wikipedia:Reference desk/Archives/Computing/2016 January 4

Computing desk
< January 3 << Dec | January | Feb >> January 5 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


January 4

edit

Game development

edit

Out of the following genres of computer games: real-time strategy, first-person shooter, fighting game, flight simulator, medical simulation, puzzle game, platform game -- which are the easiest to develop, and which are the hardest? 2601:646:8E01:9089:5D45:D5AF:855B:E677 (talk) 07:50, 4 January 2016 (UTC)[reply]

Obviously there will be lots of overlap, but puzzle games can be quite simple to program, as they don't require animation. Indeed, it may be possible to make many without any graphics at all, just using ASCII text. Some real-time strategy games are like this too (I remember an early ASCII text one called IMHOTEP where you were trying to build a pyramid in ancient Egypt). StuRat (talk) 09:39, 4 January 2016 (UTC)[reply]
I second this: even with animation, puzzle game like Tetris are generally simpler to program, all else equal (e.g. sophistication, level of technology, etc.). Our article even notes that "Because of its popularity and the relatively simple code required to produce the game, a game with nearly the same rules as Tetris is often used as a hello world project for programmers coding for a new system or programming language." I also remember (many years ago) a competition to code a working Tetris clone in under 24 hours.OldTimeNESter (talk) 12:15, 4 January 2016 (UTC)[reply]
My job is a principal engineer at a large video game company (Wargaming - we make World of Tanks and World of Warships and a bunch of other great stuff) - and I've worked in most of those game styles.
Generally, puzzle games are the easiest. They don't usually need complicated graphics, they typically don't need AI or physics and they typically have simple requirements for sound and graphical assets. That's not always the case - but 99% of the time it's true. I wrote SameGame to run in a browser window in about a day. However, some puzzle games need hundreds of cleverly designed 'levels' with graduated degrees of difficulty to solve - and getting those right can make some considerable effort. The main problem with puzzle games is to think of a good puzzle in the first place - and to make it "fun". Making games fun is the hardest thing we do...there is no method to guarantee that your game will be fun - except to copy an existing game that you know is fun. So, I could make a Tetris varient with pieces made from hexagons instead of squares maybe...I'd know that it would almost certainly be fun. But if I decided to make a puzzle game around...I dunno...building houses from parts that get dropped off from a truck at random...then maybe it wouldn't be fun. Hard to know in advance. So with puzzle games, you tend to spend a lot of time trying out ideas that fail.
Platform games are generally (but not always) 2D with simple controls and simple enemy actions - so they are also fairly simple to program...but again, designing the levels may take longer. You probably need to get a bunch of animated sprites designed - and that can be a time-consuming activity. Programming the game could probably be done in a matter of weeks...but a lot depends on the complexity. But players don't expect realistic graphics or physics. Enemy characters can behave incredibly stupidly, and nobody much cares...this makes life much easier! I've written a simple platform game in a week - and a decently playable/cute one in a month.
Real-time strategy games are really just like puzzle games - I'm not sure I'd want to put a dividing line in there - but perhaps there is an element of deeper game balance that's hard to maintain. If you imagine a game like SimCity - it's tough to ensure that there isn't an obvious/simple winning strategy and that the various subsystems of the game (roads, rail, buildings, power, water, etc) are balanced such that one doesn't always pose the main challenge.
Medical simulation...hmmm...this is a category that I'm not too familiar with. Probably no harder than a puzzle game since this is probably just a puzzle of a different kind. But I suppose if you wanted a super-realistic surgery simulator in 3D - with squishy organs that you can cut open anywhere and have various fluids squirting around - then it could be a significantly hard game to make...but if you just wanted a video-game analog of the classic Operation game - then I could write that in a day, easily. If you have a specific example in mind of this "medical simulation" genre - I could comment on how hard something like that would be.
Flight simulators, first (and third) person shooters tend to be complicated - both from a coding and an art perspective. Adding that third dimension to the action - adding realistic graphics and sound rather than cartoon stuff - adding realistic physics - and adding "intelligent" enemies all builds horrendous complexity. These days people expect online multi-player play and that pushes the complexity off the charts! A 1st person shooter that I worked on had a dozen programmers and close to a hundred 3D artists, musicians, voice talents, AI scripters, designers and so on. When games grow to that degree of complexity - you add HR people, lawyers, multiple layers of management and so forth. It was expected to take close to three years to write...and the company (Midway Games) went bust a year before it was finished!
SteveBaker (talk) 15:09, 4 January 2016 (UTC)[reply]
That's funny. I have around 25k games on WoT since 2011. Small world. Justin15w (talk) 20:52, 6 January 2016 (UTC)[reply]
I used to develop medical simulation programs. They were rather simple to do. Once the web matured, I began slapping things together with JavaScript, using the web browser as the user interface. Then, luckily, I got out of that entire business. For medical simulation, you are mainly showing some graphics and the user needs to perform specific actions. So, it is more like one of those puzzle room games than a strategy game. There is very little game intelligence. For example, I might be given 20 pictures of kidneys (yes, the photos are usually rather gross). The student needs to perform a certain action based on the appearance of the photo. My interface might let them select between three tools and then then click on the kidney where to use the tool. So, I register a tool click and a usage click. Each photo has a proper tool/usage value. Then, it moves to the next set of photos. I did work on far more graphically complicated VR simulations, but the logic didn't change. They just clicked on the tool and the photo while looking through a 3D visor. 199.15.144.250 (talk) 16:29, 4 January 2016 (UTC)[reply]
Were you calling Sim City an RTS? If so, I don't think it's commonly considered one, even if it's real time and involves strategy. RTS is generally restricted to games which mostly involve gathering resources, constructing structures and units and then using these to kill any competitors or at least gain control over most of the map. The archetype is of course Dune II and then most of the Command and Conquer games (but probably not C&C 4), but other famous examples would include the Age of Empires series, Warcraft and Starcraft, Total Annihilation and Supreme Commander and perhaps most Warhammer games.

There's obviously no clearly defining line between RTS and other genres and even some of these examples are lacking in some of the earlier mentioned expectations (in particular resource gathering in Warhammer); still wherever that line falls it doesn't normally fall on the side of Sim City being an RTS. Programming-wise the line may not make sense, but that's the way it is.

Balance however can still be a big issue, particularly when it comes to balance for competitive play. Although while AI in RTSes can still be quite bad, it's normally not the case that no one cares if it's bad particularly for the single player component. (But even in multiplayer, and despite extreme competitive play usually being a click fest of micromanagement, I think nowadays a game will get still get a fairly bad rep if your $*&$%$@$&%^@ units decide to go the long way around just because some of your other units were blocking the way. Or there's no way to tell your units they shouldn't stand there while they slowly get blown to hell by an enemy one square out of their fire range.)

Of course the RTS genre is not like it once was, and there aren't that many AAA titles and expectations from something like Planetary Annihilation (even if it perhaps didn't meet them) or even Grey Goo probably aren't as high as they would be for an AAA title by a major studio.

Nil Einne (talk) 16:19, 5 January 2016 (UTC)[reply]

Since this is the computing desk, the respondents above have (probably correctly) focused on the programming aspect, but there is more to it than that. Tetris, in retrospect, is a very easy game to develop because the hard part was coming up with the idea for it. Now that it's out there, the programming side is straightforward. Sudoku is another example of a game that would today be simple to program just because the hard part was coming up with the idea. Do not underestimate the difficulty of this step. Matt Deres (talk) 00:02, 5 January 2016 (UTC)[reply]
You didn't include roguelike games in your list, but these are often a good introduction to game programming because most use either no graphics or public domain tiles (so the development effort is concentrated on gameplay rather than special effects) and there are lots of open-source examples and tutorials in very many programming languages.-gadfium 00:28, 5 January 2016 (UTC)[reply]
Thanks, everyone! So which is harder to program -- flight simulation or first-person shooter? 2601:646:8E01:9089:5D45:D5AF:855B:E677 (talk) 01:08, 5 January 2016 (UTC)[reply]
That's going to depend on how detailed you want to make the physics replication. In many ways, your questions are of the "How long is a piece of string?" variety. Consider this: is it easier to make a paper airplane or an elastic band gun? Both things could be made arbitrarily easy or difficult depending on how much effort you want to expend. Matt Deres (talk) 02:09, 5 January 2016 (UTC)[reply]
I mean high-end, realistic physics replication -- like Microsoft Flight Simulator in the first case, and Delta Force: Black Hawk Down in the second. 2601:646:8E01:9089:5918:223C:38E1:8BA9 (talk) 06:41, 5 January 2016 (UTC)[reply]
Well...it's still kinda tricky. Take for example FlightGear - it's a flight simulator and it was essentially written by one guy and released in under a year. However, 20 years later, and it's still being actively developed by a group of perhaps a couple of dozen part-time enthusiasts. So did it take 1 man-year or 100 man-years to develop? Kinda hard to tell! As for flight sim versus 1st person shooter...well, if networking is required for a multi-player game, then I'd put my money on the 1st person shooter. The complexity of server-side management of latency and physics and such is ugly - and you also need AI and a TON of 3D artwork and skeletal mesh animation work. Flight simulators can be networked rather trivially because the physics involved is mostly limited to the aircraft itself - and it's generally the case that most of your 3D modeling effort involves converting existing GIS data. If you have any computer controlled aircraft in the game then their behaviors are generally pretty simple (get in range and shoot...get behind, in range and shoot...fly out of the sun and shoot...fly formation)...but in a 1st person shooter, you generally demand that the AI's are a bit more intelligent and have a wider repertoire of behaviors.
But this is definitely one of those "how long is a piece of string?" questions - I'm 100% sure that there are some 1st person shooters that took less time to make than some flight simulators...but in my personal experience, most 1st person shooters took longer to make than most flight simulators...mainly because of the volume and quality of hand-crafted 3D artwork needed for the former. SteveBaker (talk) 18:51, 5 January 2016 (UTC)[reply]
I don't know what it's the OP's starting point. In a real case scenario, you and anyone else would start developing onto the shoulders of others and build the game starting by a game engine. There are several of these on the market, with several degrees of difficulty, capabilities, prices and image rendering. That's a radical game changer when you ask about possible efforts needed. A first-person shooter would be impossible to build in one lifetime for a single developer otherwise. Scicurious (talk) 17:04, 5 January 2016 (UTC)[reply]
Indeed - but there are game engines for all of those game types - so the ranking of difficulty doesn't change much. If you are planning to start out in this - grab a (free!) copy of Unity (game engine) and start from there. Having made a simple 1st person shooter (and written the game engine beneath it) - I'd dispute the fact that it takes more than one human lifetime to do it! But a typical AAA title from the last 5 years...yeah...definitely more than one human lifetime! SteveBaker (talk) 18:51, 5 January 2016 (UTC)[reply]
In my experience, the development has a lot to do with modeling (including animations). If you want to make it truly realistic, you will spend a lot more time. You will likely need to do a lot of motion capture. However, if you are happy making everything a square block, then you can develop quicker - but can a game made of blocks be popular? 209.149.114.138 (talk) 19:05, 5 January 2016 (UTC)[reply]
I think so. --71.119.131.184 (talk) 19:42, 5 January 2016 (UTC)[reply]
Thanks, everyone! 2601:646:8E01:9089:F88D:DE34:7772:8E5B (talk) 06:01, 7 January 2016 (UTC)[reply]
Remember it isn't just the raw engine that's generally available. Unity and other engines often have stock models that you can use. Or you can use or buy asset packs with suitable licences. However if it's a paid game, and perhaps sometimes even if it's free, you may find it's not very popular. (Unity asset pack "games" on Steam generally get poor reviews.) It does depend on what you're trying to achieve. If it's something you're trying to get others interested in rather than simply for personal experimentation and learning, you obviously you have to do something that interests people. AAA titles are not going to use many stock models from anywhere. Indie games, even paid ones, may be able to get away with it for some purposes. Other then depending significantly on your audience and game, there's also an overuse factor. E.g. RPGmaker games often have that problem because people are sick of seeing the same stuff over and over again. Still if your game had a brilliant story or something else to make it very interesting and wasn't too high price I think enough people would forgive it even if it used a resonable amount of stock assets. But generic story, generic jRPGs are dime a dozen. Nil Einne (talk) 16:53, 7 January 2016 (UTC)[reply]
The problem with stock assets is that they rarely look good together. Game art generally has a coherent art-style to it and taking a mish-mash of stock art models is unlikely to look remotely as good as stuff that was designed to go together. Low-cost stock art very often is either insanely over-modelled ("Oooh - look! A 10 million triangle packing crate.") - or insanely under-modelled ("Oooh - look! A cube with a packing crate texture wrapped around it.") Also, the nature of the texture maps that come with stock art hardly ever fit the rendering style you want - stuff like baked shadows, normal maps, gloss maps - these all tend to be rather specific to the style of rendering of whatever the art was originally built for. You might be able to get away with it for a super-simple game with minimal scenery and characters - but as soon as you try to go with something big - it'll be almost impossible to get what you need. Worse still, you often simply can't find the "Rabid war-pig" that you had in mind for your player's steed and have to resort to using a model of someones cat instead - this is bad for meeting your original vision of the game...and that's disasterous.
By all means use stock art in the early stages of your work - but plan to replace 100% of it before you can release a working game to the public. SteveBaker (talk) 19:06, 8 January 2016 (UTC)[reply]

Is this the end for my computer?

edit

Following up on this question and others that preceded it, this morning I had a blue screen with IRQL_NOT_LESS_THAN_OR_EQUAL, or something similar, and then something like SYSTEM_EXCEPTION. I did a startup repair which included system restore and left the computer to do a virus scan, not that there's any point at this stage. I thought I'd have to go right to the store to get the new computer, but it might work. Today. I'm at a library.— Vchimpanzee • talk • contributions • 18:00, 4 January 2016 (UTC)[reply]

That usually comes up when you have installed software (usually a device driver) that is not compatible with your operating system. From your previous posts, you are running an old and unsupported operating system. It is very possible that you have updated a device driver or installed a program that is not compatible with the operating system. The best solution is to update the operating system to one that is supported. Further, because of many years of similar problems, I would assume that the computer has a virus and I would do a complete fdisk-format-reinstall to eradicate everything that I could possible remove from the hard drive and start over. 199.15.144.250 (talk) 20:02, 4 January 2016 (UTC)[reply]
The computer is seven years old, but I get updates. I just haven't been able to install any since December 11, according to the list of Installed Updates I was told to go by on a Microsoft site (and there, I was told to pay for help because apparently in the person's view who told me that, the problems are beyond his ability). The suspected problems have been a hard disk partition and Norton software that wasn't removed. No software that I have used has encountered a virus that wasn't dealt with. McAfee says 6 viruses have been quarantined since 2011 but it never finds any new problems. Windows Defender did a scan and, while I haven't been able to update it since Decmeber 11, it didn't find anything.
I certainly don't intend to install a new operating system if I don't expect the computer to last. As for starting over, the same logic applies.
When I go to the store where I bought the computer next Thursday, it looks like I'll have a new one.— Vchimpanzee • talk • contributions • 20:11, 4 January 2016 (UTC)[reply]
By coincidence, I'm typing this on a computer that is more than seven years old and running Vista, and I spent this morning running various anti-malware searches because it was behaving oddly. It now seems OK, and I didn't find any serious malware, but I'm seriously thinking of scrapping it. I'm reluctant to do so because I have software on it that I can't copy to a new one.
It's very difficult to diagnose intermittent problems, and people have suggested all the possibilities that I can think of (though I still think you might have marginal sectors on your hard drive -- did you run CHKDSK with the repair option?). If you still have your Vista installation CD and serial number, you could try the format and reinstall suggested above, but at some stage, I think you might need to get a new computer, as will I. Sorry I can't be more helpful. A friend has a computer twice as old that is running happily under Linux, but that's not to everyone's taste. Dbfirs 21:48, 4 January 2016 (UTC)[reply]
I don't know if I have an installation CD, much less a serial number. I waited too long, because Internet Explorer is no longer on new computers and I like it (or how it would be if it really worked), and Windows 10 promises to be too confusing. But if I wait longer what new computers have might be worse. I couldn't figure out how to get back to that method of checking the hard disk but I can try CHKDSK.— Vchimpanzee • talk • contributions • 21:59, 4 January 2016 (UTC)[reply]
Weird. A little black box comes up but then goes away quickly. I am defragmenting and don't know whether that will help any.— Vchimpanzee • talk • contributions • 00:46, 5 January 2016 (UTC)[reply]

Forgot to mention. Defragmenting completed fine.— Vchimpanzee • talk • contributions • 15:06, 5 January 2016 (UTC)[reply]

Defragmenting moves files around. It doesn't fix them. As an analogy, it is like saying that my alarm clock is broken, so I moved it from my side table to my dresser. Your problem is that there is at least one file that does not work with your operating system. It is most likely a device driver. It is most likely a device driver installed by malware. It is most likely malware that is not detected by whatever antivirus you are running. It is most likely that the antivirus you are running is in fact infected with malware. You can defrag all you want. It won't fix malware. You can restore all you want. It won't fix malware. You can run virus scans all you want. It won't fix malware. You can add/remove updates all you want. It won't fix malware. That is why I strongly advise deleting everything and starting over. 209.149.114.138 (talk) 15:35, 5 January 2016 (UTC)[reply]
The point is I've been told there is a hard drive problem, but in this case, the hard drive problem did not affect defragmenting. Whether the moving around of files will help the hard drive problem I don't know.
And I'm not going to delete everything and start over. Rather, I'll get a new computer and start over if that's what it takes.— Vchimpanzee • talk • contributions • 18:43, 5 January 2016 (UTC)[reply]
Defrag just moves files around to tidy up the unused sectors. It's different from CHKDSK. If 209.149.114.138 is correct about malware then it might be worth getting a professional malware clean-up, but if the problem is marginal sectors then that expense will be wasted. Low-level format and re-installing everything will remove malware, but not cure a faulty hard drive. Buying a new computer is a good solution if you can afford it, but you will need to be very careful when you copy any files from your old machine because if the problem is malware then it might be hiding in some file. Dbfirs 22:00, 5 January 2016 (UTC)[reply]
I see nothing to suggest it's a hard drive problem. A failing disk surface would cause read/write errors, not random other failures. -- BenRG (talk) 07:03, 6 January 2016 (UTC)[reply]
If you include the last two years of complaints, it is even more difficult to see this as a hardware problem. The software is not behaving properly. DNS lookups resolve to known malware sites. Programs open for no reason. There is software present that was not knowingly installed. Add-ons to IE appeared without being installed. etc... Through all of this, the user has repeatedly stated that it simply cannot be malware. It is not possible it is malware. There is absolutely no way it can be malware. 209.149.114.138 (talk) 13:41, 6 January 2016 (UTC)[reply]
You could run the computer from a live CD (or live USB stick) for a while. If it still crashes, it's probably a hardware problem. If it doesn't, you at least have a semi-usable computer, and you have some evidence that it doesn't need to be scrapped. You can also run various hardware tests from a live CD, and even virus/malware scans, though I have no experience doing it. -- BenRG (talk) 07:03, 6 January 2016 (UTC)[reply]

For live CD and Live USB stick tests, I highly recommend Tails on a CD/DVD and Tiny Core on a 4GB or larger USB stick. Tails in particular has a really nice setup for testing disks that support S.M.A.R.T.. With a bit of work understanding the system, Tiny Core is more than good enough to become your main OS. You can access any file on your Windows disk, and Windows itself will always be there waiting -- just pull the USB stick and boot.

For a low-cost yet quite capable replacement system, Dell sells a lot of desktop PCs to businesses, and many of them upgrade regularly, flooding the used market with the (slightly) older models. Right now the sweet spot for low price and high performance is the Optiplex 780. It works fine as is, and you can upgrade it to quad core with 16GB of RAM and a SDD and have a very high performance system for word processing, surfing the web, etc. It runs Windows 7, Windows 10, and all Linux distributions just fine with no special drivers needed. $100-$200 on Amazon: https://www.amazon.com/s/?url=search-alias%3Daps&field-keywords=optiplex+780 --Guy Macon (talk) 12:16, 6 January 2016 (UTC)[reply]

I only use this computer for the Internet. I use email for word processing and also to store those items others might actually have in a computer. So if I get a new computer, I'm starting fresh. Nothing gets moved over, so that worry is gone. I can afford to get a brand new computer (but shouldn't) and I know they have one like this one at the store where I got it, with Windows 10 and Microsoft Edge instead. This computer did so well for so many years I think that's a good choice.
And I have done no downloads from sources that do not appear trustworthy.
I didn't do the hard disk check yet (it says I can't if I'm using the disk) but it's scheduled for the next time I turn on the computer (which is also when everything happens). This morning, it got to the screen where I can go to the Internet and I left it to go do something else, and then I heard that hard disk noise I described as being like a pencil sharpener though it has been a normal noise since the day I bought the computer. It was going through startup again and I had to tell it to start Windows normally (or it will do that anyway), and no problems since then. If there was an error message when the problem happened, I don't know it. Anyway, it's been fine since.— Vchimpanzee • talk • contributions • 17:48, 6 January 2016 (UTC)[reply]
This morning I turned on the computer early in case CHKDSK would be time-consuming, especially if it found problems that could be repaired. I watched as it completed each step, and no problems were found. Then there was a message that went by quickly before the computer restarted which seemed to suggest some "corrections" had been made. No problems, and I did the virus scan. I was surprised only a few minutes later to see the computer was off, but when I turned it back on it was merely "asleep". The pencil sharpener noises happened but not the start sequence. I just saw the screen as it looked before I left. It said the scan had completed. Either I clicked on the quick scan rather than the full scan, or it does the full scan faster. But SHOULD it do the full scan faster? Is it doing something it's not supposed to? Anyway, I'll wait until next week to do another full scan, if in fact I keep the computer. I went to the Internet, and no problems. I went to the library and did most of what I do there, where it's faster and (assuming things work) more dependable. So I came home to find the computer "asleep" again, made the pencil sharpener noises happen, and proceeded to do the other online stuff I do at home. Mintes later, a blue screen (the second time this has happened after the computer was "asleep") with DRIVER_IRQL_NOT_LESS_THAN_OR_EQUAL. Had I missed something? No a few minutes later when I went back to the Internet, I got a blue screen with just plain IRQL_NOT_LESS_THAN_OR_EQUAL. All has been well since.— Vchimpanzee • talk • contributions • 20:07, 8 January 2016 (UTC)[reply]
Somehow one site I go to has decided I need a Driver Update. Update the driver in 2 minutes. Please download here. ReviverSoftR Driver Reviver. Yeah, I'm not doing that. Although it might be a good idea if I was sure I could trust a particular type of software.— Vchimpanzee • talk • contributions • 20:43, 8 January 2016 (UTC)[reply]
I walked away from the computer this morning so did not see an error message but had to do a startup repair but not system restore. And all was well after that. Still leaning toward replacement next Thursday. If I make it that long.— Vchimpanzee • talk • contributions • 17:56, 9 January 2016 (UTC)[reply]
This is really just documentation. It would be nice to solve this mystery, but there won't be any point. Thursday is the big day, and Friday I will have time to set up the new computer. Unless something terrible happens beforehand. Today I avoided going to the Internet until I was sure the crisis had passed, so I wouldn't have to sign in to anything again. Twice after I had reached the point where I could have goen to the Internet, blue screens. The first was the IRQL error. Then there was PFN_LIST_CORRUPT. Then when I restarted, I got a blue screen before I even got to where I can go to the Internet. Lots of information but it didn't stay onscreen long enough, so there's nothing to put here. Another startup repair. I was asked if I wanted to do system restore and I said yes. 22 minutes after I first saw a clock onscreen, all was well. I was going to ask people at the store how to fix all this, but why bother? Two more times I'll have to go through all this, though I could go to that store anytime.— Vchimpanzee • talk • contributions • 18:34, 10 January 2016 (UTC)[reply]
I know we're not really supposed to edit archives, but there's no point now in asking a new question. I've linked here from somewhere else where I asked for help. I just wanted to mention I saw BAD_POOL_HEADER after typing in my password wrong, though even if it was right something might have happened. But that was it for today. Tomorrow is my last day using this computer.— Vchimpanzee • talk • contributions • 19:42, 11 January 2016 (UTC)[reply]