10.04.16 Tools, Part 2: Game Engine 5.Madison is planning to modify Storm SurgeTM eventually so that anyone who can program a dll could add the capability for virtually any kind of puzzle without direct access to the code. Right now, however, only a C++ programmer with access to the Storm SurgeTM source code (that is, Madison) can add new puzzle types to the engine. So why do I keep saying "you could do thus and so in your game"? Because even now a non-programmer could use the editor, called StormEdTM, to create an adventure game with all the puzzle types and capabilities I named last week.
I'm not talking about reskinning; I'm talking about your own personal new game -- different map, different plot, totally different graphics, different animations, everything. The only limitations are that you couldn't modify the source code or, as yet, change the positions of the buttons on the main menu. The only thing that keeps me from releasing Storm Surge and StormEd is that at the moment there's no user manual.
09.30.16 Tools, Part 2: Game Engine 6.In addition to the mini-games or puzzles I mentioned below, our game engine, Storm SurgeTM, currently supports
09.28.16 Tools, Part 2: Game Engine 4.I mentioned in passing a few days ago that different game engines have different capabilities. In developing Storm SurgeTM, Madison focused on building an engine that would produce the type of game we liked to play. I played a lot of games in the hidden-object/adventure genre all the way through, and I played the one-hour demo from BigFish of quite a few more that I didn't like well enough to buy. Then Terri and I brainstormed about the types of mini-games and puzzles we like and don't like. Storm Surge supports almost all of the ones we like (even if they didn't make it into "A Picture Perfect Murder," and doesn't (yet) support ones that we don't like. The currently supported mini-games and puzzles are these:
09.27.16 Tools, Part 2: Aside.Speaking of production schedules and budgets, I've been running and participating in software-development projects since 1998. I have yet to meet a programmer who will admit that a piece of software is finished. Guess what Madison is doing right now. Marketing the game, right? Wrong. He's modifying SpectrumTM, which is what displays the graphics in "A Picture Perfect Murder." Spectrum already works, or we wouldn't have a game. He's just making it do more.
Every programming team needs programmers, obviously. What may not be so obvious is that every programming team that expects to finish a project needs a hard-nosed and unsympathetic manager. Unlike the pointy-haired boss in Dilbert, this manager must know the difference between additions to the software that (a) must be made, (b) should be made, (c) would be nice, and (d) are just the programmers' desire for endless improvement.
09.26.16 Tools, Part 2: Game Engine 3.Let's talk about the specific capabilities of Storm SurgeTM and how they affected the development of "A Picture Perfect Murder."
First, Storm Surge was designed specifically for 2D hidden-object/adventure games. If we ever decide to build the zombie apocalypse shooter I mentioned before, we'll need a different engine. However, the playing time and complexity of the 2D games produced by Storm Surge are only limited by the designer's imagination, production schedule, and budget. The playing time for "A Picture Perfect Murder" is probably 8 to 12 hours, depending on how skilled you are at this type of game, how many hints you use, etc. We could easily have designed the game to include more scenes, more characters, more clues, more puzzles, and just generally "more." As a matter of fact, the original concept did have additional scenes and puzzles, but we ran up against the production schedule and budget (refer back to 09.08.16 to 09.10.16) and had to leave some of them out.
|Storm Surge doesn't have a built-in limit on the number of hidden objects in hidden-object scenes, although as a practical matter you're limited to the number of things you can show in the scene. "A Picture Perfect Murder" has 12 hidden objects per puzzle, but you could put in more or less. The hidden-object scenes turned out to have a much higher nuisance-to-reward ratio for the graphics team (i.e., me) than the other games did, so next time around, we'll probably have fewer of them, or at least no more of them even if the overall game is bigger. (You can do what you want, but I'm just sayin'.) In "A Picture Perfect Murder," the list of items to be found is at the bottom of the screen. When you find an object and click on it, it moves to the list, and the item is scratched off. In your game, you can put the name list just about anywhere you want to, or you could make the item and name disappear or whatever, depending on what animation you want to design.|
09.23.16 Tools, Part 2: Game Engine 2.Asking how much an engine will cost is like asking, "How high is up?" They run from free to expensive. Wikipedia lists about 170 game engines, many of which are free, so why would you either buy or develop one? There are two good reasons for buying an engine or getting one free:
09.21.16 Tools, Part 2: Game Engine.Say you have downloaded a game, such as "A Picture Perfect Murder." Three chunks of data go onto your computer. One chunk is the graphics, which to you means, "the world you see in the game," and to me means, "all the stuff I've been talking about for the past week and more." A second chunk is the game scripting, which is a particular game, as opposed to another game with different graphics and plot. The third chunk is the game engine, which you don't ever see, but it's what takes, say, the tile graphic I showed you on 09.14.16 and displays a single tile, lying on a background, that flips over when you click on it. If you want to build a game, you need a game engine. A number of reviewers have listed pros and cons of various game engines; just search for "game engine reviews."
Which game engine you need depends on what kind of game you want to build, how well you want it to work, how much money (if any) you have to spend, how soon you want your game to be on the market, and so on. We wanted to build a hidden-object/adventure game. Well ... Madison and the interns actually wanted to build a virtual-reality, massively multi-
|player, zombie apocalypse shooter, but what we felt capable of building as a first game was a hidden-object adventure game. Madison decided to build a game engine of our own, which he did, and which we call Storm SurgeTM. I'll talk more about Storm Surge in the next few days.
We're still greenlighting. If you have a Steam account, please wander on over and give "A Picture Perfect Murder" a Yes vote, and share this post with all your friends.
09.20.16 Tools, Part 1: Graphics Software.I've only worked with a few graphics packages -- PowerPoint, Photoshop, Paint, DAZ Studio, blender, Sketchup, Spectrum Works Studio, Picasa, PhotoStudio Suite, and a few others that I tried in demo and rejected completely. Here's the one thing that I learned: NONE of them do everything, and NO PAIR is completely compatible. Caveat emptor.
09.19.16 Tools, Part 1: Graphics 5.Jpeg files are compressed, which is why the same image gets smaller if you start with a bitmap (.bmp) and save it as a jpeg (.jpg). Small is good--nothing wrong with small. Small image files load faster and take up less room on your server or hard drive. Unless your image goes through several compression steps, your eye is unlikely to notice any difference at all. Unfortunately, jpeg file compression for images introduces what are called "compression artifacts," and boy! does your graphics software ever notice them! Here's an example of how that can complicate your life.
On the top, we have a black square against a red background, saved as a bitmap. Then I chromokeyed out the red to put the black square in the middle of a randomly chosen image -- ONE step with Spectrum Works StudioTM. No muss, no fuss, no need to cuss. On the bottom, the bitmap has been saved as a jpeg. Taking the same ONE step to chromokey gives us the sloppy result on the bottom right. By fooling around with the chromokeying settings for several minutes, I eventually got a square, but I could still see, with the naked eye, a very dark red, 1-pixel frame on the square. So the moral is, work with bitmaps (or other lossless formats, such as .png) until the last possible moment. And even at the last possible moment, most of the images you use on top of other images in your game, e.g., in a hidden object puzzle, may have to be saved as bitmaps or PNG files, depending on your game engine. That way your solid background (compare the fuchsia from 09.13.16 and 09.14.16) will disappear completely when you either chromokey or make it transparent in real time in the game.
09.16.16 Tools, Part 1: Graphics 4.Lighting is another important aspect of photorealistic graphics. In yesterday's image (left), it seemed to me that the trio was dark in comparison to the background. I turned up the lights a little (right) -- remember that the backdrop doesn't change at all with lighting -- and now they blend in a little better with the scene. Now, shadows are a function of the shadow catcher, not the lighting. With the brighter lighting, the old shadows were a little on the pale side. I adjusted the alpha setting on the shadow catcher to darken the shadow: brighter lights, darker shadows. Now the guys look like a real part of the scene.
09.15.16 Tools, Part 1: Graphics 3.When I started playing hidden-objects games intensively as research for developing our own game, I immediately noticed that they are typically rather gloomy and dark. (Not all of them.) When I started creating our own, photorealistic graphics, I figured out why. It's because if you light the scene, you must put in shadows, and shadows are a pain in the neck.
Your eye doesn't even notice all the shadows in the real world, but if an object doesn't have a shadow in a picture, it appears to be floating in space (left). The shadow anchors the object to whatever it's sitting on (right).
|DAZ Studio allows you to put in shadows using a shadow catcher, but the making the shadow catcher is somewhat tedious. I simplified the process by making a separate DAZ project with two shadow catchers, one horizontal and one vertical. For each game scene, I made a DAZ project with a background image and all the items that needed to cast shadows. Then I merged with my shadow-catcher scene with it. Sometimes I needed more than one set of shadow catchers, for example, in the corner of a room you might need two vertical catchers for the walls and one horizontal one for the floor. With only hours per scene of moving things around, I could get the shadows to look as if they were being cast onto the furniture, floor, or whatever, in the background. As I said, a pain in the neck, but the results make the scenes much more realistic.
09.14.16 Tools, Part 1: Graphics 2.Let me just say here that Spectrum Works StudioTM, which Madison built, totally rocks. You can use it to layer, reposition, chromokey, resize (by pixels or percentages), rotate (by as little as 0.01 degree), crop, and flip images. Even with all that capability, it's simple to use. In fact, it's the only piece of software I used for graphics that was not annoying; it is a firm policy of Ducks in a Row, Inc., that we do not build annoying software.
In just a few minutes, I took yesterday's graphic, chromokeyed out the fuchsia, rotated the plates by 15.5 degrees and resized them by 90% to fit into the square background, and flipped the tiles horizontally and vertically. The project has 5 files -- three copies of the original image and two white rectangles to copy some of the bits that weren't cropped out. Because I can layer the file files in any order, the white rectangles are over some of the images and under others. It's taking me longer to tell you what I did than to do it.
By the way, chromokeying is greenscreening, except for any color you choose. I used it lot in developing "A Picture Perfect Murder," but it's not yet as easy as we'd like. Madison needs to do just a little bit of work to improve the chromokeying algorithm, but as soon as that's done, we think we can sell it at a very competitive price. We'll let you know.
09.13.16 Tools, Part 1: Graphics.To create a game like "A Picture Perfect Murder," you need three basic tools:
More graphics are needed than you might think. For example, in a hidden-object puzzle, there's a background containing none of the objects the player needs to find. Each object and its shadow is a separate graphic. If any hidden object overlaps another -- or even the shadow
|of another -- separate graphics are required for Object A without B, Object B without A, both, and neither. (Needless to say, I tried to avoid having them overlap!) Finally, you need an icon for the object as it moves down to the list or goes into your inventory. The upper left image on the right shows the difference between the glass and its shadow in the scene and the icon that moves to the list.|
Almost every item that you can pick up has a highlighted and unhighlighted form (upper right).
In our tile-matching puzzles, the turning tiles are animated, so we needed a graphic for the tile back, tile front, tile 1/4 turned, tile 1/2 turned, and tile 3/4 turned (bottom). All the tile backs, tile 1/2 turned, and tile 3/4 turned are the same, but for every single tile we had to create unique graphics for the front and 1/4 turn. And so on for every puzzle and scene. Planning and developing the graphics took about half of the total time spent on the game. Bottom Line: Allow about four times as long to produce the graphics as you originally estimated.