Domain: gamasutra.com
Stories and comments across the archive that link to gamasutra.com.
Comments · 776
-
It's a simple psychological questionThere's another very interesting gamasutra article, titled Glory and Shame: Powerful Psychology in Multiplayer Online games, that states that these are the two emotions that control behaviour of online gamers.
As it stands, for your own glory (or for another's shame) you will go as far as it takes. And if you can take advantage cheating, you will.
-
Some links for the interested....
-
Re:what's a 'mipmap'
> Making Incredible Profits from MisAplied Patents, perhaps
Hehe. Nice try. Funny, but no.
Here's a short summary.
Mipmap comes from latin: "multum in parvo" meaning many things in a small place.
Since a picture is worth a thousand words, just look at the pictures here:
Gamasutra article on mipmapping, and Mipmapping pictures and theory
I won't discuss Isotropic or Anisotropic texture filtering, since the pictures can convey the concept clearer then my mangled descriptions. :-)
Although I will leave with:
- Tri-linear filtering is bilinear filtering (2x2 texels) applied between 2 mipmaps.
- You will also (rarely) see the term 'ripmaps' which I beleive the RGB components are stored seperately (instead of interleaved.)
Hope that helps. -
Reverse engineering can help an industryid, the makers of Quake & Doom have consistently supported the reverse-engineering community that has grown up around their products. Within days of the release of Quake III, independent developers were posting their own level editors because they had successfully reverse engineered the binary format of id's files.
Not only does id not take action against these folks, they support them with code releases from the product and ongoing
.plan files describing upcoming tweaks and the algorithms used in the games. Write to the id developers and they are likely to write back, answering questions about the game and encouraging you to write your own tools for it.These independent tools are what have allowed the game modification (mods) communities to grow around their games and have led to id's real cash cow: licensing game engines. Other game makers license id's engine in part because there are so many tools available for it. In a recent Gamasutra article, the lead programmer for Soldier of Fortune, a new 3D game, talked about why his company chose to license the Quake engine: because the tools created by independent developers for level editing and cut scene creation were so good.
-m
-
Re:Glide is GoodGlide is actually a very good API. It's fairly clean and relatively easy to learn if you have used OpenGL, especially considering that the API is fairly low-level and close to the hardware functioning of the chipset.
Glide was obviously based on the simplicity of OpenGL. It's designer was Brian Hook who worked at id Software on Quake2, and I think previously worked at SGI on the first optimized (read: non-Microsoft) OpenGL software implementation for Windows.
It lacks the high-level features of OpenGL such as doing matrix transforms, display lists, primitives, texture coordinate generation, etc. Glide was designed for game developers, who generally would prefer to implement these functions themselves, anyway. Since Glide was chipset specific and offered a lot of low-level control, you could come up cool effects with a bit of hacking. What 3DFX now hypes as T-Buffering was easily possible on the Voodoo1 chipset with Glide 1.1. With a couple of lines of code you could get fairly effective full-scene anti-aliasing and motion blur.
Most companies were developing their own APIs in the mid 90's so it was natural that 3DFX would do it as well. Rendition (RIP), 3DFX's early main competitor, had their own called Redline and NVIDIA's first attempt, the Edge3D, had an API that was kept away from anyone but licensed developers. Sidenote: NVIDIA used to imply that the Edge3D could render quadratic surfaces in hardware - I wonder what ever happened to that feature. d:^)
Paul
-
next-generation adventure games[The FPS] should be combined with the good elements from the 'old' adventure games.
Have you read Ernest Adams's articles at Gamasutra? In "It's Time to Bring Back Adventure Games," he makes the point that "3D engines have just as much to contribute to adventure games as they do to other genres." Quake does not represent the state of the art in gameplay. Thanfully, id sells the engine to more ambitious game developers.
However, I have to agree with OMM. The good old games weren't always good. In "Three Problems for Interactive Storytellers," Ernest talks about the problem of amnesia in adventure games:
You don't know what's going to happen to you, so for safety's sake, you pick up everything you see, and you end up carrying around a collection of objects that make you look like a demented bag lady. (Consider the original Adventure: a lamp, a birdcage, a wooden rod, an axe, some gold coins, a bottle of oil...)
Jane Jensen didn't invent the asinine puzzle.Computer games are linear. Half-Life, StarCraft, Diablo 2, Grim Fandango, System Shock 2. Anything that "tells a story" tells one story from beginning to end. I hope the next-generation adventure game is also the next-generation FPS and RPG.
-
next-generation adventure games[The FPS] should be combined with the good elements from the 'old' adventure games.
Have you read Ernest Adams's articles at Gamasutra? In "It's Time to Bring Back Adventure Games," he makes the point that "3D engines have just as much to contribute to adventure games as they do to other genres." Quake does not represent the state of the art in gameplay. Thanfully, id sells the engine to more ambitious game developers.
However, I have to agree with OMM. The good old games weren't always good. In "Three Problems for Interactive Storytellers," Ernest talks about the problem of amnesia in adventure games:
You don't know what's going to happen to you, so for safety's sake, you pick up everything you see, and you end up carrying around a collection of objects that make you look like a demented bag lady. (Consider the original Adventure: a lamp, a birdcage, a wooden rod, an axe, some gold coins, a bottle of oil...)
Jane Jensen didn't invent the asinine puzzle.Computer games are linear. Half-Life, StarCraft, Diablo 2, Grim Fandango, System Shock 2. Anything that "tells a story" tells one story from beginning to end. I hope the next-generation adventure game is also the next-generation FPS and RPG.
-
next-generation adventure games[The FPS] should be combined with the good elements from the 'old' adventure games.
Have you read Ernest Adams's articles at Gamasutra? In "It's Time to Bring Back Adventure Games," he makes the point that "3D engines have just as much to contribute to adventure games as they do to other genres." Quake does not represent the state of the art in gameplay. Thanfully, id sells the engine to more ambitious game developers.
However, I have to agree with OMM. The good old games weren't always good. In "Three Problems for Interactive Storytellers," Ernest talks about the problem of amnesia in adventure games:
You don't know what's going to happen to you, so for safety's sake, you pick up everything you see, and you end up carrying around a collection of objects that make you look like a demented bag lady. (Consider the original Adventure: a lamp, a birdcage, a wooden rod, an axe, some gold coins, a bottle of oil...)
Jane Jensen didn't invent the asinine puzzle.Computer games are linear. Half-Life, StarCraft, Diablo 2, Grim Fandango, System Shock 2. Anything that "tells a story" tells one story from beginning to end. I hope the next-generation adventure game is also the next-generation FPS and RPG.
-
Re:That wasn't the carmack we know..
> Q3 also came fairly close to have a JVM instead of the QVM interpreter, but it didn't quite fit my needs
Does C++ now?
Mod writing from a DLL makes sense as it will be quite speedy to do the entry point look ups from the engine core. Is it a speed issue? Did you find JNI to be too slow or that the wrapper over the C structs and your trap calls would be too much bloat?
I read (I haven't played it yet though) that Vampire, the Masquerade uses a JVM , but it's game engine may have had different design goals.
I could see it being a hacking issue as hard core gamers who like to cheat would attempt to augment the variables or algorithms in the bytecode when playing multi-player.
Matt Prichards Cheaters Article
The unreal team also decided against using Java calling it a language for Web Programmers. It seems that adding language constructs outweighed using conventional debuggers and other tools.
I ask as I'm a Java and C programmer who found C++ takes too long to compile and the added language constructs allow programmers to be sloppy. -
why this - why now?To start my rant with a wise quote - freshman style:
"It's true enough that Shakespeare was the MTV of his day (...) but that doesn't necessarily mean the reverse is also true." - Steven Johnson, Interface Culture
No doubt that gaming is a hot field both for cultural sciences and literary theory, but despite the fact that it has moved into the spotlight of mainstream science rather recently (with MIT hosted conferences etc) quite a few people have been working in this field for quite a while - Brenda Laurel, Espen Aarseth, Ted Friedman, just to name a few.It borders on grave ignorance to post an article on this issue that is but a mediocre plug for a single 3yr-old, much hyped book and an average gaming site. I can only recommend doing some journalistic homework before proclaiming the re-invention of culture as we know it in full-mouthed wired-style. Considering the rich scientific discourse on this subject and the wealth of interesting contributions from the gaming community, such as gamasutra or EDGE magazine, this could mean quite a bit of catching up for Jon Katz.
And to get back to the starting quote: Nicht alles was hinkt ist ein Vergleich. Please drop that "next Shakespeare" polemic! This is neither a good comparison or metaphor, nor does it touch the core of the subject in any way, even - actually especially - if it happens to be the transformation of literary culture!
-
Gamasutra?
A serious gaming site has existed for quite a while, focusing on developers, called Gamasutra. Though perhaps Gamasutra focuses on developers, not players, it's still solewhat serious and askes very broad questions about gaming from time to time.
-
Why not contribute instead of reinvent?Hi,
I find it humorous they pin down video games as the Defining Game. RPGnet main focus has been "Gaming Culture and a Culture of Games" for four years now. MUDs and MOOs are incredibly well documented and dissected in referred print publications. Gamasutra has some of the best essays looking at computer games from an social and even an anthropological viewpoint.
While I'm not decrying MyVideoGames, I am always a bit saddened when yet another Net Startup leaps into the fray... to reinvent the wheel. If your goal is to reach existing communities, why not contribute to those selfsame existing communities, instead of building a new one and fractioning the already crowded web?
Cheers,
Sandy -
A good story goes a long way
Of course this doesn't apply to all games. I doubt whether pure combat games would benefit from a finely wrought storyline
:)
I must disagree. The obvious example is the game HALF-LIFE (which, if you enjoy fps games - you simply MUST try). This game uses the Quake II engine, but is a far better game - IMHO. The reason for this is a story line - which is executed brilliantly. They went so far as to hire a horror story author to write the story for them. The story is very good and since - through the game - you live it, you get an incredible sense of immersion.
They also did excellent work in having the gameplay balance be just right and consistent with the story. The resulting game is, again - incredible, and has justly won over 50 "best game of the year" awards. This is a lesson in game design, and yes - we want more games like this!
There is a lesson here: the Quake II engine was very good for its time and was capable of holding a (nearly) storyless game. This seemed very natural for a "story-less" genre like FPS. However, ONLY when a great story was put into the same engine did a truly great game come out.
Valve actually had an earlier design, which they threw away because it was too boring and regular. Only the second time they did it right. The entire story - which is very interesting, BTW - can be read at this link:
Valve's Cabal Process.
I recommend this article for everyone with an interest in game design and even plain program design.
-
Re:Making a game by yourself?
> but QIII just throws polygons to the 3D card (and it's corresponding hand-tuned driver)
Q3 does NOT just throw polygons to a 3D card.
Visible Surface Determination is the hardest problem 3d graphics programmers currently have to face. We can't just shove 50,000 polys/frame to a 3d card and expect 120 fps.
"Maze" games have it a little easier as BSP and Portals work very well. For terrain rendering, heightfields, and Quad Trees work much better. i.e. Continuous LOD Terrain Meshing Using Adaptive Quadtrees
> he [Carmack] spends the time figuring out how to make it look cool.
Once you have your rendering technology, thats the next step - adding all the eye candy.
I'm sure Corrine will jump in if she has anything to add ;-)
Cheers
Michael
3d games programmer -
You want GamasutraYou want the site Gamasutra. They have articles on everything that is interesting both for experienced and new developers - programming, marketing, which platform to choose, how to do good plots, legal issues, sound, graphics, etc...
Some current articles:
Postmortem: Zombie's SpecOps: Rangers Lead the Way by Wyeth Ridgway [02.01.00] This third-person combat sim had to deliver up to 10,000 polygons per frame at real-time frame rates all while upholding rigorous standards of realism. Lead programmer Wyeth Ridgway discusses the features of the Viper engine created for SpecOps as well as what went right and wrong in development.
Optimizations Corner: An Optimized Matrix Library in C++ by Haim Barad [01.31.00] In this installment of the Optimizations Corner, Haim Barad discusses a better way to manipulate vectors and matrices using Intel's Streaming SIMD Extensions. In this article they present a set of optimized matrix routines that take advantage of SIMD architectural enhancements done to recent microprocessors which are a perfect fit for matrix and vector operations.
Artistic License: Acquiring, Managing and Dealing with Licenses (and Making Them Profitable) by Elizabeth J. Braswell [01.25.00] So you're thinking about trying the Sure Thing: to go after a popular character, TV show, book or movie, get the license, spend a little, make a million. There's just one catch - it isn't that easy. Elizabeth J. Braswell discusses the stickier details of acquiring a license, working with the licensor, creating an innovative product which will appeal to fans and even sublicensing - creatively making more than you expected.
Planning and Directing Motion Capture for Games by Melianthe Kines [01.19.00] Motion capture is a great tool for creating animation for certain types of games. Like any tool or piece of software, if you learn how to use it properly, it can make your life easier and produce great results, but if you try to wing it, chances are you'll end up wasting time and money and may come away with nothing useful. Melianthe Kines discusses motion capture in depth.
***********************************************
* *** -
You want GamasutraYou want the site Gamasutra. They have articles on everything that is interesting both for experienced and new developers - programming, marketing, which platform to choose, how to do good plots, legal issues, sound, graphics, etc...
Some current articles:
Postmortem: Zombie's SpecOps: Rangers Lead the Way by Wyeth Ridgway [02.01.00] This third-person combat sim had to deliver up to 10,000 polygons per frame at real-time frame rates all while upholding rigorous standards of realism. Lead programmer Wyeth Ridgway discusses the features of the Viper engine created for SpecOps as well as what went right and wrong in development.
Optimizations Corner: An Optimized Matrix Library in C++ by Haim Barad [01.31.00] In this installment of the Optimizations Corner, Haim Barad discusses a better way to manipulate vectors and matrices using Intel's Streaming SIMD Extensions. In this article they present a set of optimized matrix routines that take advantage of SIMD architectural enhancements done to recent microprocessors which are a perfect fit for matrix and vector operations.
Artistic License: Acquiring, Managing and Dealing with Licenses (and Making Them Profitable) by Elizabeth J. Braswell [01.25.00] So you're thinking about trying the Sure Thing: to go after a popular character, TV show, book or movie, get the license, spend a little, make a million. There's just one catch - it isn't that easy. Elizabeth J. Braswell discusses the stickier details of acquiring a license, working with the licensor, creating an innovative product which will appeal to fans and even sublicensing - creatively making more than you expected.
Planning and Directing Motion Capture for Games by Melianthe Kines [01.19.00] Motion capture is a great tool for creating animation for certain types of games. Like any tool or piece of software, if you learn how to use it properly, it can make your life easier and produce great results, but if you try to wing it, chances are you'll end up wasting time and money and may come away with nothing useful. Melianthe Kines discusses motion capture in depth.
***********************************************
* *** -
You want GamasutraYou want the site Gamasutra. They have articles on everything that is interesting both for experienced and new developers - programming, marketing, which platform to choose, how to do good plots, legal issues, sound, graphics, etc...
Some current articles:
Postmortem: Zombie's SpecOps: Rangers Lead the Way by Wyeth Ridgway [02.01.00] This third-person combat sim had to deliver up to 10,000 polygons per frame at real-time frame rates all while upholding rigorous standards of realism. Lead programmer Wyeth Ridgway discusses the features of the Viper engine created for SpecOps as well as what went right and wrong in development.
Optimizations Corner: An Optimized Matrix Library in C++ by Haim Barad [01.31.00] In this installment of the Optimizations Corner, Haim Barad discusses a better way to manipulate vectors and matrices using Intel's Streaming SIMD Extensions. In this article they present a set of optimized matrix routines that take advantage of SIMD architectural enhancements done to recent microprocessors which are a perfect fit for matrix and vector operations.
Artistic License: Acquiring, Managing and Dealing with Licenses (and Making Them Profitable) by Elizabeth J. Braswell [01.25.00] So you're thinking about trying the Sure Thing: to go after a popular character, TV show, book or movie, get the license, spend a little, make a million. There's just one catch - it isn't that easy. Elizabeth J. Braswell discusses the stickier details of acquiring a license, working with the licensor, creating an innovative product which will appeal to fans and even sublicensing - creatively making more than you expected.
Planning and Directing Motion Capture for Games by Melianthe Kines [01.19.00] Motion capture is a great tool for creating animation for certain types of games. Like any tool or piece of software, if you learn how to use it properly, it can make your life easier and produce great results, but if you try to wing it, chances are you'll end up wasting time and money and may come away with nothing useful. Melianthe Kines discusses motion capture in depth.
***********************************************
* *** -
You want GamasutraYou want the site Gamasutra. They have articles on everything that is interesting both for experienced and new developers - programming, marketing, which platform to choose, how to do good plots, legal issues, sound, graphics, etc...
Some current articles:
Postmortem: Zombie's SpecOps: Rangers Lead the Way by Wyeth Ridgway [02.01.00] This third-person combat sim had to deliver up to 10,000 polygons per frame at real-time frame rates all while upholding rigorous standards of realism. Lead programmer Wyeth Ridgway discusses the features of the Viper engine created for SpecOps as well as what went right and wrong in development.
Optimizations Corner: An Optimized Matrix Library in C++ by Haim Barad [01.31.00] In this installment of the Optimizations Corner, Haim Barad discusses a better way to manipulate vectors and matrices using Intel's Streaming SIMD Extensions. In this article they present a set of optimized matrix routines that take advantage of SIMD architectural enhancements done to recent microprocessors which are a perfect fit for matrix and vector operations.
Artistic License: Acquiring, Managing and Dealing with Licenses (and Making Them Profitable) by Elizabeth J. Braswell [01.25.00] So you're thinking about trying the Sure Thing: to go after a popular character, TV show, book or movie, get the license, spend a little, make a million. There's just one catch - it isn't that easy. Elizabeth J. Braswell discusses the stickier details of acquiring a license, working with the licensor, creating an innovative product which will appeal to fans and even sublicensing - creatively making more than you expected.
Planning and Directing Motion Capture for Games by Melianthe Kines [01.19.00] Motion capture is a great tool for creating animation for certain types of games. Like any tool or piece of software, if you learn how to use it properly, it can make your life easier and produce great results, but if you try to wing it, chances are you'll end up wasting time and money and may come away with nothing useful. Melianthe Kines discusses motion capture in depth.
***********************************************
* *** -
You want GamasutraYou want the site Gamasutra. They have articles on everything that is interesting both for experienced and new developers - programming, marketing, which platform to choose, how to do good plots, legal issues, sound, graphics, etc...
Some current articles:
Postmortem: Zombie's SpecOps: Rangers Lead the Way by Wyeth Ridgway [02.01.00] This third-person combat sim had to deliver up to 10,000 polygons per frame at real-time frame rates all while upholding rigorous standards of realism. Lead programmer Wyeth Ridgway discusses the features of the Viper engine created for SpecOps as well as what went right and wrong in development.
Optimizations Corner: An Optimized Matrix Library in C++ by Haim Barad [01.31.00] In this installment of the Optimizations Corner, Haim Barad discusses a better way to manipulate vectors and matrices using Intel's Streaming SIMD Extensions. In this article they present a set of optimized matrix routines that take advantage of SIMD architectural enhancements done to recent microprocessors which are a perfect fit for matrix and vector operations.
Artistic License: Acquiring, Managing and Dealing with Licenses (and Making Them Profitable) by Elizabeth J. Braswell [01.25.00] So you're thinking about trying the Sure Thing: to go after a popular character, TV show, book or movie, get the license, spend a little, make a million. There's just one catch - it isn't that easy. Elizabeth J. Braswell discusses the stickier details of acquiring a license, working with the licensor, creating an innovative product which will appeal to fans and even sublicensing - creatively making more than you expected.
Planning and Directing Motion Capture for Games by Melianthe Kines [01.19.00] Motion capture is a great tool for creating animation for certain types of games. Like any tool or piece of software, if you learn how to use it properly, it can make your life easier and produce great results, but if you try to wing it, chances are you'll end up wasting time and money and may come away with nothing useful. Melianthe Kines discusses motion capture in depth.
***********************************************
* *** -
An article in the same vein from 6 months ago
Saw this at gamasutra.com:
Toward Programmer Interactivity: Writing Games In Modern Programming Languages
But I guess this guy isn't as well known as Sweeney :) -
Re:synchronization solution?I'm the network programmer on Battlezone II [see the Official site here ], and we're using such a setup. It looks as if at least one other game is using a similar method; see here also.
Only user inputs are sent around in BZ2, and used by every machine in the game to compute a new gamestate; if a client disagrees with the server, we can either shove a correct gamestate do that client, or kick them out. While traditional lockstep methods do have smoothness problems due to unpredictable transmission delays over the internet, on BZ2, we developed an interesting solution which we call 'Multiworld' -- sorry I can't say much more than that.
Even with synchronization, there still are client-side hacks that can be used-- people changing texture maps to show enemies more clearly, perfect radar hacks, and more. Even if everything's checksummed up the wazoo and that "works" (hah), a hacked driver can do fun stuff with texturemaps, or more.
This all points to one fundamental problem in computer security: on a system, there is at least one user (and/or process) that can read another processes's memory. Just that abiity is enough to develop cheats. [See: perfect radar above.] Unix's root account can do that, so it's really no better in terms of trust than Win95/98.
Fully stopping cheating is a problem not in computer science. It's a problem in humanity-- we're buggy to the core.
Nathan Mates
BZ2 Network Programmer
http://www.visi.com/~nathan/ -
Sounds PromisingThis method sounds like a programming corollary to the Cabal system of design. (The method used to design Half-Life.)
If it's anywhere close to being as effective, it's definitely worth a look.
-
Re:Why is LISP superior?
Crash Bandicoot - the object control code is written in GOOL, Naughty Dog's Game Oriented Object LISP) - see this article for details. How much more commercial do you want?
--
Cheers -
Re:I wanna live foreverI think the publicity around Carmack comes from the impression that he has a hand in almost every area of development of id's games. Most of the games you mention come across as team collaborations.
I can only answer a few of your questions, and guess at the others - for 1 and 2, the work was done by a programming team. There was an excellent article covering the development of Descent 3, with some details about D1/2, at GamaSutra
3. I don't know much about Slave Zero.
A team from Atari programmed that engine, but perhaps more remarkable were the Atari ST/Amiga ports, which used the same processor (68000), albeit only one of them. These ports were done by a German fellow (Juergen Dietrich?) in a short space of time, and ran remarkably similarly to the original. An urban legend floating around says the same guy had ported the Star Wars coin-op to these 16-bit platforms from memory!
Number 5 is easy - Geoff Crammond of course! He had also programmed the classic "Revs" on the C64, and went on to program F1 Grand Prix for Microprose, along with it's sequel. Not sure about the game "Stunts" though.
I assume #6 were team collaborations at EA, Sega, Namco and Atari. Could you enlighten me?
Daniel. -
Re:Financial institutes, maybe games too
Well I doubt we'll ever see Java as the implementation language of choice for time critical functions like rendering scenes on the fly, but it could have its uses in games. Gamasutra has a lengthy article entitled "Dirty Java: Using the Java Native Interface Within Games", here which gives a rundown of some of the uses that Java + compiled native code is being put to and the pros and cons. Kinda interesting I thought.
Straying way off topic theres an intriguing Linux comment from one of the Heretic II developers over on the site too. Heretic Linux comment -
Re:Financial institutes, maybe games too
Well I doubt we'll ever see Java as the implementation language of choice for time critical functions like rendering scenes on the fly, but it could have its uses in games. Gamasutra has a lengthy article entitled "Dirty Java: Using the Java Native Interface Within Games", here which gives a rundown of some of the uses that Java + compiled native code is being put to and the pros and cons. Kinda interesting I thought.
Straying way off topic theres an intriguing Linux comment from one of the Heretic II developers over on the site too. Heretic Linux comment