Making of Javantea's Fate 190

As promised, this is the precursor to yesterday's wonderful 3D cell phone. I've been thinking, you know, maybe I should become a manga-ka. Yeah, a real professional. Looking at this, you're probably sighing audibly. Real manga-ka's can pump out something 100x better than this in five seconds. It's done all wrong. The method, the look, the perspective, and the tones are all wrong. Any professional would say, "When you're old enough to go to the university, take art classes." Of course, then I'd tell them that I've almost finished my degree in physics and they'd sigh audibly. A physicist trying to be an artist. It's a shameful thing. But I'm not very good at physics either. Last year I got D's in *counts on his fingers* six of my physics classes (EM 1, EM 2, Quantum 1, 227, 228, and a Seminar). I'll be retaking them this year. My grades in lower-level physics were not much better. Why do I want a Bachelor's Degree in Physics? I like physics so thoroughly that I take great pleasure in getting poor grades. The poorer the grades, the more I'm learning. Boy I sure am learning a lot. I did very well in math. I understood it too well. I got a 4.0 in humanities 200 last spring. I got a 3.5 in American History. I got a 3.8 average for a full year of German. Even though I've taken my time here at the UW, I'll be graduating on time. Actually most of the people who will graduate with me will be a year or more older than me. I'll be a young physicist and I will become it easily. I will not stress about getting 6 D's because I am getting something more valuable than gold. Really, the past three years have been the best I've had. It isn't saying a whole lot either way, but I want to be this happy and this crazy for the rest of my life. But when I graduate, I can't just take a job or just keep taking physics classes. It will immediately become un-crazy and I will hate it thoroughly. So my plan is to pay off my debts and do something completely crazy like travelling the world. In my travels I plan to find: an achievable solution to America's problem, a lifestyle that is sustainable, convenient, and happy, and a tasty noodle shop.

Read more »

Making of Javantea's Fate 189

As I promised, a perfect Making Of JF. Actually, a bit less than perfect, but better than yesterday's disgrace. It's a side project that I dreamed up the other day. It'll be a dating sim game possibly in 3D and possibly involving a cellular phone. Actually, it'll definately involve a cellular phone, possibly much like this one. This is a seriously high-poly phone. Well, professionals would call this a low-poly phone since it would run in realtime by itself on a 4 MB video card (Riva TNT or Voodoo 1). That's another story*. What I want to say is that this phone has more polygons and texture size than a full human model. Isn't that sad? Well, perhaps I will take a 128x512 picture of the phone and make it a gui item. That is one of the few times that number of polygons and size of texture doesn't matter. But still I want to be frugal because frugal makes good models, no matter the usage. That is the lesson for today. Tomorrow you'll see another good picture which is a continuation of this picture.

Read more »

Making of Javantea's Fate 188

Hello. I skipped two days in a row and I apologize. Tonight's picture is hardly artistic. I've finished tomorrow's artistic picture, but of course, I have to wait until tomorrow to post it. A lesson is hidden in this picture. That lesson is that compression is not compression at all. It is merely mathematical reduction of gross misappropriation. But wtf does that mean? It means that PNG is based on zlib. Zlib is a mathematical formula that creates an index of all the repeated strings in a picture. It assigns a number to them and puts that number in place of the repeated strings. That compresses it. The problem lies with the gross misappropriation that the mathematical reduction works from. Many artists use Photoshop or Paint Shop Pro. Some use Vector Graphics. I use 3D with textures made in vector graphics and Paint Shop Pro. All of these programs take input from the mouse. Lines are drawn. Rectangles, triangles, etc are made by digital clicks and analog mouse movement. They record this mouse movement and then throw it at a HUGE chunk of memory. That chunk of memory is exactly what is thrown at the monitor. Instead of recording the mouse movement, it records the brush stroke on a canvas. Vector graphics programs save the actual mouse movements as curves. That is very small bit of information. But if you turn that curve into a bitmap, it becomes huge. Even compressing it to a PNG is about 7 times as large as the vector graphics file. Do you see what I'm griping about? This resume is 2,457 Bytes uncompressed in HTML. Compressed, it would be less than 1 kB. But it is 14,117 Bytes as a PNG compressed. In jpeg format, it's lossy and it's 35kB! What do you get by saving it in PNG rather than HTML or a vector graphic in PNG rather than vector graphic format? Cross-platform and processor time. You see, vector graphics take a bit of time to render. Text does not and HTML takes very little also. But complex vector graphics can take a few seconds to load. Bitmaps always take the same amount of time and it's incredibly fast. Even mathematically compressed images are very fast. DivX is deemed slow, but it is very well-compressed video that runs at 30 fps on a 300 MHz. So what am I advocating? A cross-platform 3D medium that does from the ground up. It would be able to do 2D vector graphics with software rendering, 3D movies, interactivity, compression, and such. Shockwave is trying, but it's not cross-platform, just Windows and Mac. It is also very limited even though they try very hard to make it good for programmers.

Read more »

Making of Javantea's Fate 187

I skipped yesterday, but it's for a good reason. I worked until 4 AM on something incredible. Sadly, you can't see all of it. This picture is just a taste of what I have hacked together. You see, this picture is made entirely of data that I hacked from the System Shock 2 data files. I'll tell you all about it here. If you'd rather not listen, find something else that is worth 20 hours of my time. So I start out wanting to do something cool with HTML. I wanted to use my handicapped computer to do something great. Since it crashes every five minutes (depending on the use), it has to be saved every sixty seconds depending on whether it's HTML, text, graphics, video, audio, or 3d (it especially likes to crash when I play video with audio or when I make progress on 3d). So I thought that a really good webpage would be the answer. But I've been known to produce really awful webpages in the past. What I need is a design that is awesome. So I think of the first thing that comes to mind when I think "awesome." That's System Shock 2. Why System Shock 2? I don't quite know what made me think of SS2 instead of Omikron, [it rebooted itself twice just now, btw] Dark Side of the Moon, Tomb Raider 1 or 2, Freedom Force, Urban Chaos, Oni, or one of my other fine video games. But perhaps it was the GUI. You see, System Shock 2 sports the most beautiful GUI in the world of gaming. No other RPG, strategy, FPS, or anything has as good a GUI as System Shock 2. But the thing is -- they use it! My goodness do they use it. Everything is GUI this or GUI that. You pick up logs like a cookie trail from Hansel and Gretel. Each of them has an awesome voice actor playing the role of a recently deceased or soon to be deceased person (except for two). Most of them give great hints. All of them add to story, humor, and/or setting. These are just a few of my favorites. They tell a tale of bravery, fear, evil, the seductive nature of collectivism, and a thriller of a space ride. It makes the game much more spooky and is half of the reason why I cannot finish the game. The first reason is because I don't have the time. But the other reason is that I'm too afraid of the ghosts onboard the Von Braun and Rickenbacker. Maybe I'm just a 'fraidy cat, but listening to the recordings of a person who you can see dead on the floor in front of you just gives me the creeps. So I decided that I'd reverse engineer System Shock 2 so that I can have the fun of listening to these people and not having to see their corpses. So my quest began. First I did a search on System Shock CRF files. I found a program that you put in your sshock2 directory and it does it. But it only worked 80% and it was proprietary. Even if it was open source, I can't edit source because my computer crashes, right? So I do another search and I found this little program called Dragon UnPACK. It does System Shock 2 files, so I download it and open it up. Sure enough it works like a dream. I grab a few pictures and a few audio files and they play. So I rip the entire data into a directory tree. There I have the data. Then I look and I find that the CRF files are actually just ZIP files. They are just renamed. ^_^ I didn't need any special software to get at the precious stuff inside the data files. Now just to load it into a browser. You see, I wanted to do something in HTML to advance my knowledge of design and have a finished product that was high quality. So I look at a few of the pictures. You can see there what I found. Actually, I had about 700 GUI pictures that I had to sort through. Not only that, but they are all PCX. IE doesn't support PCX, so I'm stuck there. I have to convert 700 files from PCX to PNG. I try using libpng. It doesn't do it. Why should I expect it to? If I had a libpcx I could link the two or something. No, I don't have my c++ compiler and I don't have a few days to make a quality program. So I go on the web to find a freeware converter. It seems that there is no freeware batch converter that will convert PCX into anything at all. So I download a shareware one. It does the batch conversion and I'm saved. Or I thought I was. The shareware producer wants to make money, so he/she puts a little watermark on all images larger than 128x128 until you pay them $25. So I look for one that doesn't do watermark, maybe a time restriction, but no watermark. I'll uninstall it in 24 hours and everyone will be mildly happy. I try and I fail. So thanfully, most of my pictures are less than 128x128. For example, everything except the far left thing is exempt here. However... the pcx files use magenta and cyan as sort of double "nuclear whipping boy". Where it is magenta and cyan, it is supposed to be transparent. We all know that PNG doesn't do transparencies in IE, so I'm in a bit of a bind. Thankfully, it works out just right so that if I put them in the right z-order, they fit together. Except for the nanites, cyber upgrade modules, health, psi, etc. So I did that all by hand in GIMP. It wasn't too hard, but it took a lot of time. Actually, I did that most of today. Last night was the big thing: converting the text files into HTML files. You see, all the audio in the game is supplemented by text. It's really sweet that the text file that goes for the game was so well formatted. I just did a multi-file replace and I replaced all the text file tags with HTML tags. I generated the portraits and icons along with the text into CSS styled HTML boxes. Using simple DOM, I made it exactly like the game interface. It's so similar, it's uncanny. The buttons click correctly, the scroll buttons look like the ones in the game and act like the ones in the game. Using a Windows Media Player Object, I was able to trigger the audio with a set of buttons. That's what I worked on a bunch today. I made it EXACTLY like the GUI. If I had a 3d world and a bunch of ugly monsters, there'd be no difference. So anyway, all last night I work and I work. At 4 AM, I think, "I'm not going to be able to show anyone this because it's all copyrighted work." Well, this is just an advertisement for the game. If you have a copy of the game, I'd be happy to show you how to unzip the files and convert the PCX files to PNG files. Then I can give you the HTMLs and it'll run. So, to end this story, I'll give you a few lessons. The first is that game developers are rarely going to use PGP encryption to encrypt their game. That is because PGP is slow and because you have to give the person the private key in order to play it. If they can play it, they can hack it. So people trying to hack games don't have too rough of a job. They have PAK files, WAD files, and zip files, but if they can do it fast, so can you. Often games even are forced to make dlls that do the unpacking for you. If they bought a certain engine for use in the game, the engine.dll will be right there. Of course, the libs are important, but all a hacker has to do is look on the net for thirty seconds to find how to extract the data. But what is wrong with a hacker extracting the data? Will they reverse engineer it and sell it? Will they give it to people who would not have bought the game anyway? Will they take a few screenshots of it and advertise your game for you? If a hacker is willing to put 20 hours into hacking your game, then your game has succeeded and you should have no problem with the hacking. Nude Raider is one example. Someone hacked Tomb Raider and made a little exe that replace's lara's textures with a nude texture. Very immature, but it fills a want in every horny teen's long list of shameless desires. But people liked it. Although the textures were terrible (the hacker obviously had never seen a naked woman) and simply owning it rendered your gameplay a bad habit (vision is an important thing, keep it sharp by keeping your eyes on pictures of clothed people). So you get the idea? Now on this computer that crashes day and night, I have learned design, hacking, and appreciation for a video game that I could not finish (on the easy mode, btw).

Read more »

« previous next »