Thread View: rec.games.programmer
2 messages
2 total messages
Started by psteffn
Wed, 22 Jul 1992 04:49
Re: Game library...
Author: psteffn
Date: Wed, 22 Jul 1992 04:49
Date: Wed, 22 Jul 1992 04:49
131 lines
6482 bytes
6482 bytes
Newsgroups: rec.games.programmer Subject: Re: Game Library? Fact or Fiction.(cont) Summary: Expires: References: <76060@ut-emx.uucp> <1992Jul19.061540.20112@mintaka.lcs.mit.edu> <1992Jul19.145047.29656@wam.umd.edu> Sender: Followup-To: Distribution: Organization: /etc/organization Keywords: In article <1992Jul19.145047.29656@wam.umd.edu> dmb@wam.umd.edu (David M. Baggett) writes: >In article <1992Jul19.061540.20112@mintaka.lcs.mit.edu> psteffn@hal.gnu.ai.mit.edu (Paul Steffen) writes: > >Sure it is, but why does that mean that using a library is ridiculous? >Some people like to program "with their faces pressed right against the >bare metal of the machine" (my favorite quote from Warwick Allison) >while others are more intersted in *designing games*. I'd venture that >most people don't have the patience to work out 8-directional fine >scrolling on their PC or ST, but they'd be more than happy to sit down >with a sprite editor, make some shapes, and write a little pacman or >robotron game for fun. Well, to me, programming is a learning experience where I not only learn how to code increasingly efficient algorithms, but whatever tricks (software/hardware, orthodox/unorthodox, etc) I can use to get the task down faster. This may include using register save opcodes for block moving memory, delaying video DMA for smooth scrolling, or writing fully background interrupt-driven disk routines. I gauge my success in machine cycles. > >It's all a mater of whether you want the majority of your time to >be spent on *design* or *programming*. *design* is what I do whenever I'm not at my computer. >This has *always* been a big thing. Remember the 2600? James Hague >just sent me the programming specs for it (thanks, James) so they're >fresh in my mind. You wanna talk "faces pressed to the bare metal" -- >sheesh! The 2600 had no DMA for the screen, so the CPU had to control >the screen D/A registers directly itself. I.e., you, the programmer, >control the screen timing *by counting cycles*. You misplace an >instruction, your screen is completely hosed. I have to admit that the thought of seeing some actual 2600 code is mildly erotic. The difference being is that the non-professionals I talk of are programming code many levels above the norm for professionals. About the only 'standard' that has come of this into the mainstream is the MOD music format [who do you think Mahoney& Kaktus were!?] The quality of even the artists and musicians who work with the programmers far exceed the norm. [ftp to wuarchive.wustl.edu in /systems/amiga/incoming/demos and download party91.lzh which is 3 IFF pictures and 3 MOD files, for example.] >This is a all neat stuff. If you had a game library that had things >like that in it, then everyone could write games like Wolf 3D on their >ST's without having to do all the tedious work your friends did. I.e., >the world only has to code these things *once* if we all use a shared >library of routines. Then those of us who have *no interest* in >writing real-time texture mapping routines can still write games with >that technology. > Don't get me wrong. I don't have anything against game libraries as long as the programmer is supplied with source and the right to make improvements on them [and an incentive to make them available as updates]. >>Yet, check out ACF's Just Buggin Demo which has a built in 'game' with >>graphics to put Bitmap Brothers 'GODS' to shame... > >Demos are not games. Much more severe requirements are imposed on >games because they have to run on all "100% compatible" hardware and >they have to include code to make the thing -- get this -- fun. You >can't, for example, precompute gigantic tables for games unless you're >willing to devote almost all your memory to the fancy graphics and >ignore gameplay. But, the argument for game libraries is that people want to do just the fun stuff [*-i.e. design-*] and none of the hard stuff [*-programming-*] where-as, here are demos where the programmer[s] did all the hard programming and very little game design. Do you think people would go to all this work if hardware programming wasn't fun? esp. for no pay? > >Gods is a fully-functional and fairly complex game. A demo is just >that -- a demo. If it uses undocumented tricks or relies on hardware >bugs, who cares? You, the customer, didn't pay anything for it. If >you buy a game, on the other hand, and it doesn't work on your >computer, you're going to return it and be wary of other titles from >the company. The company will lose money. They will go out of >business. The owners will have to do something else to feed their >families. (How's that for the real world getting in the way of hacking?) > Quite true, and since demos are free, the programmers are not obligated to test run their work on machines they most likely have no access to. Actually, the game Pinball Dreams was done by a demo group called Silents and is a HIGHLY rated pinball game [when it runs...]. >Since you program on the ST, here's an example: Thalion's Enchanted >Lands was written by a demo coding group, and it's basically a pretty >good game. The graphics are excellent and the scrolling is almost >magically smooth. In fact, it *is* magically smooth, because they rely >on certain undocumented video shifter behavior to achieve it. Consequently >it works on my STe but not on any of several circa 1986 ST's I've tried >it on. If it were a demo, no one would care, but since it's a game >*people care*. I'm not aware of that game but I am aware of Thalion. They were a very early demo group and the first to use that technique in a Neochrome slideshow [which had people at Atari boggled]. > >>Game libraries are perfectly fine, I'm sure, but it good to think for >>yourself once in a while, too. > >No argument there, but this seems to contradict your opening statement. > How does it contradict my opening statement? I'm confused. >Dave Baggett >dmb@wam.umd.edu Paul Steffen STratoHAK psteffn@gnu.ai.mit.edu
Re: Game library...
Author: David M. Baggett
Date: Wed, 22 Jul 1992 13:14
Date: Wed, 22 Jul 1992 13:14
129 lines
7054 bytes
7054 bytes
psteffn@hal.gnu.ai.mit.edu (Paul Steffen) writes: >Well, to me, programming is a learning experience where I not only learn >how to code increasingly efficient algorithms, but whatever tricks >(software/hardware, orthodox/unorthodox, etc) I can use to get the task >down faster. This may include using register save opcodes for block >moving memory, delaying video DMA for smooth scrolling, or writing >fully background interrupt-driven disk routines. I gauge my success >in machine cycles. OK, but all I'm saying is this: not everyone views programming the same way you do; for those people that don't care about the hardware, a library makes perfect sense. So it's not "ridiculous" (and not something restricted to the PC world either). That's all. You're trying to convince me that hardware programming has merit, which is not what I'm arguing against. I do think that hardware-oriented techniques have merit provided one of the following things holds: 1. the techniques work on all "100% compatible" hardware 2. the application that uses them is one where you don't care about #1 >I have to admit that the thought of seeing some actual 2600 code is >mildly erotic. Uh... :) Anyway, check out comp.sys.atari.8bit; a doc file loaded with info about the 2600 was posted there. It includes a disassembly of Combat and of some demos. >The difference being is that the non-professionals >I talk of are programming code many levels above the norm for >professionals. You're trying to incite me aren't you? :) We've discussed this into the ground elsewhere, so I won't go into it at great length again. Suffice it to say that I think your group(s) are genuine masters of their art (demo writing; i.e., abusing the hardware to do achieve otherwise impossible effects). I think it's a subsantially different activity than programming in general, however. But if you were to write a C++ compiler you'd find similarly difficult challenges there, not to mention similar opportunities for clever optimization. GCC/G++ was 100,000 lines of code, last I checked. At least one game library I know of has a similar amount of code. Part of your task as a programmer on such a system is just to keep everything in order so you know what the heck is where. The larger a system gets, the more difficult this becomes. So it's a different set of challenges. >The quality of even the artists and musicians who work with the >programmers far exceed the norm. Part of being a professional is *endurance*. While the art for something like Dungeon Master or Ultima Underworld may look simple enough, realize that it consists of literally thousands of shapes. It's not just a matter of "can you draw this at all," but rather, "can you draw this quickly, and do the same quality of work 1000 more times?" If you have a PC, load up Commander Keen IV and count how many different shapes you see. It's a staggering job to do art for even a simple game like that. Game artists don't get enough credit. Just like it takes endurance and perseverance not to quit in the middle of your 100,000 line C++ compiler, so does it take endurance and perseverance to actually put together and fine-tune a couple hundred or thousand game shapes. What I see missing from most demos (on the Atari at least) is polish. They look like the programers got their awesome hack working and then lost interest without bothering to really make the thing look professional. This is not really a criticism so much as an observation; demo programmers really *aren't* interested in making something shine as much as showing off their latest and greatest hack, right? I mean, once you kill yourself to get 262,000 colors on the screen at once without flicker, are you really going to bother making sure your text font is nice? Again, demo programmers aren't doing the same thing better; they're doing a different thing masterfully. >Don't get me wrong. I don't have anything against game libraries as >long as the programmer is supplied with source and the right to >make improvements on them [and an incentive to make them available >as updates]. So you *would* be opposed to such a library without source available? I'm not sure how using a library without source code would make any difference to you, since you write everything yourself now anyway. If you didn't like some feature of the library you could (in theory) write your own routines and use only those parts of the library that you found acceptable. How could it be *worse* to have a library? >But, the argument for game libraries is that people want to do just the >fun stuff [*-i.e. design-*] and none of the hard stuff [*-programming-*] >where-as, here are demos where the programmer[s] did all the hard >programming and very little game design. You're assuming that programming a game is harder than designing one. I think you've got it backwards. Sure, you can crank out yet another Chop Socky move-to-the-right-and-kill-things game, and in that case the art and programming might take a lot longer than the design. But a truly good game design can only be cultivated and refined with a lot of work (which might be why we hardly see any good designs in arcades these days -- designing is not cost-effective). I think most profesional game programmers would say that the coding is the easy part. Perhaps some of them would like to comment? (We might ask the Atari and Williams folks in rec.games.video as well). >Do you think people would go to all this work if hardware programming >wasn't fun? esp. for no pay? Nope; obviously some people find it fun. No argument there. I'm not going to try to tell you you're not having fun! >I'm not aware of that game but I am aware of Thalion. They were a very early >demo group and the first to use that technique in a Neochrome slideshow >[which had people at Atari boggled]. It probably had Atari *pissed*, if you want to know the truth. "Yet another applcation that won't run on the <STe, Mega, TT, Falcon>" But for a NEOchrome slideshow, who cares? Like I said, a game is a different matter. I think they did us a disservice by using that technique in commerical software. >How does it contradict my opening statement? I'm confused. Simply in that your opening statement was that game libraries are ridiculous, and that you couldn't imagine anyone using one. Maybe I was reading more into that comment than was intended. Dave Baggett dmb@wam.umd.edu
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads