2008-08-22

Just a post, like every normal blaugh

So, I'm closing my house wednesday in Galardi. I landed me a 1654 sq footer, with some nice features and dragon-sized rooms (no kidding! The ceiling is like, 10 friggin feet tall!), a big kitchen with a vaulted ceiling, breakfast room, and the living room is a good 20x18 or so feet no including the tile parts, large master about 18x12, big master bath with a jacuzzi tub, two aux bedrooms at 12x9, more normal sized but with deep closets, and a two car garage. Small yard, but no back neighbors at all! I'm just glad this mess is finally starting to be over.

Here's some interesting trivial, the price of happiness. Interestingly, it's about 23,000$USD a year! Because, I'm changing jobs, and losing THAT MUCH MONEY annually, because my happiness is worth more than that. 45k is livable, but suffering needlessly when other people who are more competent would be willing to do so for that salary (top of 80k 10 yr) can go do that. Right now, I'm too young to give a flip about doing anything more than playing into my retirement, home, and other investments. So, if you ever get in the situation where you are unhappy with your job, AND you are a good, hard worker with a solid education, just go find another job. You have no obligation to anyone, except those you actually care about.

Also, all this cash I am making has nothing to do with my degree, it is simply because I DID WORK. I did it once, my name got spread around, people WANT to employ me. Which, this breaks my heart (shutup, Regina) to no end, because I work with very great people, they're a blast to hang out with, however, the higher ups are killing me (as expected for those who know what I do) and it just isn't worth it. I neither have the correct mentality for this job, or the chronological maturity to handle this type of situation; I have NOTHING stopping me (kids, debts) so why put up with this shit? IF I did, I could use that as emotional and physical support to survive for the paycheck to provide for my family. Without that, my only family is my friends, and I don't provide for them, except that I guess I'm fun to get drunk or something like that. And I certainly don't pay for them... maybe.

To sum it up, I do not think that a 'guaranteed financial future' means shit in a world that does not have a future. Thus, I will choose the path that makes me happy, fuck you world. And your 80k a year job. *flips the bird*


On other notes! I've run into some issues with GUtil for Blender, here's the results:
-You can use a simple function to convert GE position and orientation into any camera flawlessly (refer to _camera functions in game.py)
-When you duplicate a object, it duplicates all child objects with it. So, the Entity philosophy is being rewritten with this in mind, and storing and REMAPPING objects on runtime, that way, the same functionality is present, but none of the gross duplications (this also makes it WYSIWYG)
-Ray sensors are the only sensor that detects static triangle meshes.
-Sensors only detect dynamic objects that are not ghosts (sometimes they detect actors, eh. trying to figure this out)
-A sound actuator cannot load sounds; For each sound you want, you need a new sound actuator (ballz)
-Armature actuators can change most things except blendin times. This is broken, and crashes blender if done in python.
-Using blended animations crashes blender on the second game run (memory leak)
-Rasterizer.mist functions don;t do anything. Someone needs to go glFog some shit.
-If you save a controller object( on your root controller, save that controller) you can add objects instantly, from anywhere (this is key to GUtil)
-Remember that python sucks, and if you delete a object in a sequence you are iterating through, it crashes. So, delay your deletions and additions, but allow the user to kill themselves with a AddNow and RemoveNow function.
-Function calls hurt a lot in python, I wish function pointers could be automatic (working on it, I wish there was a python function that called a function for each object in an array WITHOUT making a new array!!!)
-Obtaining armature bone positions works, but only if there are at least 3 distinct unique verticies in that bone group (IE, a head has ~ 200 verts, at least 140 of those are unique, so we CAN get it's true bone position and orientation). This is done via 'gram schmiddt orthonormalization' or, for those of you like me who hate formalities, you take 3 points, a center, x, and y, calculate x - center and y - center, and cross those to get z, then make your matrix from them. From that matrix, if you know the bone matrix you can calculate the offset and rotational offset to get that point calculated matrix to the bone position. This is easy to do, but must be done in blender, not your game engine (IE, save all the armature and vertex data your can (xyz that is) and then sync it to your game on loading) This works well, and is a very nice thing if you want your dragon to actually pick up and eat the player.
-Sometimes ray sensors miss greatly if they are moving
-You can't store function pointers correctly; Because python functions seem to be evaluated out of scope, if you store a function pointer from one modules scope, then try and call it from another, the actual calling scope changes, so you get fucked. The way around this is annoying, but using the function locals() you can get a map of function name -> function pointer, so you can just store the function name instead of the actual pointer, and this works fine because those function pointers have a different module scope or some shit.

Things to work on, or neat things I have noticed in GUtil:
-Mesh animations are good, the model is accurate and simple
-Adding meshes and sensors realtime works well, same with removing them (no damage)
-Shaders will be nice, I am not 100% sure how to tackle this.
-Generalizing the camera is the greatest thing you can do, it makes any game more fun. Also, since you can getCameraXY, maybe there should be a generalized plane projection function for motion? (IE, if you want to move mario, he moves relative to his current direction, right? If you want to move in the direction of the camera, you project the camera's forward direction onto the XY plane if gravity is in the Z direction only, that way your forward isn't trying to go up or down, and is a true 2D forward. This can also be done per plane normal that your character is on, a traditional 'ray cast' player.)
-Adding entities is OK, but slowdown seems to hit hard around 20 or so complex entities. This is annoying, because I expected 6%, my older versions of GUtil were faster, and I am not 100% sure why, except that there are many more function calls in this version. I bet if I bind functions to local names it'll go way faster. (python uses lookups so bleh)
-You can't deform a mesh that is animated yet. (would be nice to do this after the animated part.)
-Thanks to a friend, you can assign a 'overlay' to your scene via the _overlay actuator, this should allow you to easily print text via that function and move on from there.

Maybe this is too much work for something that is needed. My suggestions are:
-Add a SoundBank actuator, where you load a LIST of samples, and can change them via a property (maybe via index or string)
-Add a AnimationBank to do the same thing, have a list of selectable animations
-Fix the mist functions
-Make aramture parenting system AUTOMATIC (I did it, it should be internal!), just let us know the indices to use! (just vertex parent stuff)
-you could probably add a Motion -> Types actuator to make control a lot simpler.
-Input should have a generic device, so that input key can be set to any input to generate the same result. (I did this, it should be internal!)
-Provide some sort of python game math class. Using Mathutils isn't exactly a good idea, since it is a blender module, not a GameLogic one. We need a Vector, and Matrix, with plenty of functions for interpolation, adding, comparing, operations per element, and all the stuff I had to make myself. This has been needed for some time.
-Get rid of the logic blocks, or at least start to favor making more python classes to use. It's about time this system became useful for something. (and no, saying 'you made it work' is not valid, did you see the CPU usage? That is a crime, my friend. If my C++ games can handle 100,000 game objects and barely choke, why can't GE handle 20? shoot for at least 100 on a decent CPU (2GHz single core))
-What about simd optimizations? SSE2/3 could be great in the game math class!

2008-08-17

GUtil progress

Yes, I am still working on AdventureClone, for those of you who pay attention to what the heck I do.

It required a massive rewrite of the Blender Game Engine, and since it's so crazy (I mean it's retarded) The concept is simple, I restrict certain layers (15-20) to specific types of objects:
16 - Meshes only (animated, or static meshes that do NOT collide, things that need to be duplicated, graphical ONLY)
17 - Armatures for those meshes
18 - Sensors of any type (Ray, COllision, Touch, whatever. You can reuse them, instead of making 1 unique one (how stupid is that? bleh!)
19 - Collision shapes (WIP)
20 - Entities (collection of all of the above, usually parented to some physical shape like a cylinder)

Which means, To make your level/game, just add empties or other shapes as 'spawn points' to the level, and use the massively awesome 'game.py' I wrote to code your game (it eleimates so much, you won;t believe it!)
With this system, you get:
Armature bone parenting - Not entirely accurate, but it DOES work for N-simplex groups (refer to docs)
Easy animations
Deleteion/addition on runtime (you can add/remove anything, anytime)
UID system for tracking entities
smart objects
"Entity' class that handles access to sensors, animations, keyframes, shaders, and everything else that sucks to write repeatedly
Simplified interface
NO LOGIC BLOCKS USED FOR YOU GAME. (This is VERY important)

And the result, is you can actually make a decent, and viable game with only the blender game engine! It's freaking incredible. Once I get demo, I post demo.



Enough banter, my dream lately was pretty gross, I distinctly remember me, mike and caleb running around a froze, snowy blizzard mountain, when caleb says 'aw fuck it' and gets in his insight and drives away (that car is so light, it drives on snow) Me and mike shrug, and continue on down the mountain! After a while, the mountain goes directly to a swamp, I point at a gator and laugh, cause it was so fake I knew it was a dream. Mike said, that was because it was fake, and points to the real one. Apparently, the house across the swamp had put fake gators in the pond? weird. We crossed, I had found a double barreled rifle with that ammo clicky thingy on the end that looks cool, plus the barrel was two pieces, you could flip it up to add 3 ft of extra rifle to your bullet for supreme accuracy or something stupid like that. But it was rusted all to hell and didn't work. Got it off a dead corpse we found. So, we enter this creepy mansion, and find a witch, who was surprised to see anyone, and does some spell bullshit, but, well, I have friends in high places (like Raesir) and so it didn't even do anything, just sorta fizzed out in front of us. She freaked out, screaming something about dragons, me and mike shrugged, then Harry Potter comes up from behind, says some BS, his stuff doesn't work either (lol, he was soooo sad face) so he transforms himself into a moth (? that was weird...) and this bird eats him. Now, normally, I would have kept laughing, but from what I could tell, he didn't figure on that one, so I threw the gun, hit this bird (it looked like a cockatoo) and then went over and CRUSHED ITS HEAD WITH MY BARE HAND, making this nasty cracking noise... I peeled back the skull and pulled out this nasty acid- smelling moth, shaking it off and tossing it on the floor, where it turned back into a severely beaten Harry... was pretty fuckin sick, lot of detail in that scene, ugh! So, it turns out Mike was just karate-ing a buncha lizard people that that hag created (gators = generic videogame foreshadowing!), he was doing great, had himself a pile of CQC idjits. So, we regroup, the witch had left, and Harry was just on the ground crying like a baby. I don't blame him, that probably hurt like all hell. Then I just woke up, no point, plot, or conclusion at all. It was definitely sickening.

2008-08-14

Pokemon Plus, I mean Monster Rancher 5 ?

Looks like my roomate got me internets.

Not easy to remember, I was losing sleep over how this house deal would work out, primarily since the f%#@$*&^ucking bank that owns it is being too slow to respond; They're basically screwing me, like, with a giant sandpapery golden-rule dildo. It's fucking bullshit. All banks are crooks. Don't forget that, they do ANYTHING to make money, and they WILL find a way.

So far, thanks to banks, I've lost more than 1600 dollars in liquid income due to having to move twice and pay for rent and a larger eschrow. So much for me having a projector!

so, anyways, last nights dream was something involving a lot of pokemon, not som uch the classic or newer crappy ones, but a more graffiti kingdom style, like they were all pretty cool looking, not just some of them. Also, the way the battle system worked was drastically changed, I think it was 'TM's they called those silly 'add a move to your monster' things, right? Well, in THIS version (HD, 1080p) creatures operated on a more Graffiti Kingdom system, if you gave them a move (say, bite, kick, punch) and they couldn't physically figure it out, then it would be far less effective. On the other hand, if a creature was good at, say, back-kick (like a horse) then it did extra percent damage. Also, moves could be swapped in and out like items, at cost of slight time (fro training) and monies. So anyways, the fighting pokemon on pokemon is more of a deranged form of cockfighting (in all senses) and that element was pretty much removed from this game, people didn't just walk around and start fights, cause that hurt their pokemon, making them resentful and disobedient. Rather, fights were much more elegant, and it instead favore puzzle solving and using your pokemon as world tools to complete objectives (sounds like monster rancher...) more than battling eachother. Also, people had them as pets, I didn't see any pokeball's or other de-humanizing machines to remove you from the fact you were raising and training a living, breathing creature capable of making it's own decisions. What a weird conflict. Either way! It started out as me investigating this town, we have another dense city in what looked like Tennessee, based on the geography of the place, lower buildings, rolling, spanned out hills and such. Apparently, this town was full of some sort of pokemon addicts, which was interesting. I talked to some of them, I met a lot of cameos of people I had seen before, I attended a fight (it was a kinda unfair fight, this drill-mole thing versus this metal bird thing, and the metal bird thing had 'shrink' apparently, so, well. Somebody lost a pokemon, and apparently, if you eat another pokemon, you can gain all it's abilities, kinda like kirby. But then you have to deal with a whiny trainer...) and I found a place to buy these things; I said no, and just sorta used other peoples animals as I found fit to get across this town, which, this was yet another pseudo future, being inside was the only safe place since the world was full of hypermutating genetic abominations, so you would be killed if you went TOO far away, hence the pokemon in the first place (tamed mutants!). I forget what the hell I was needing to do, but there were a lot of cameos, I think I saw everyone I knew, including them with a target creature that suited them. I can't remember accurate details, but people without pokemon (moi) were more or less looked down on, probably because chance of survival was low. there were a lot of water fountains so you could water your pets, food was the most expensive thing, and at a high premium since it was grown indoors in hydroponics style places, and since everything had been contaminated, it was merely a matter of time before humans themselves were annihilated by the mutations. The pokemon could vocalize much better as well, some of them could even partially talk. As for the graphics, the pokemon looked no better than they did in the Pokemon gamecube games, except they were shaded and had some slightly shinier details (eyes, decorations were higher res, skin sometimes had bumpmappy textures) but people and the buildings were MGS4 quality or better, which was pretty nice to keep a strong mental barrier from the fantasy monsters and the reality of the situation.

Ever notice those vorish food slogans? Ergo, wheat thins: "Feels good, Tastes good" though, I guess that isn't really a fair comparison since it is comparing apples to apples. Oh well.

Interesting note, today, at walkmart, I was getting some wasp spray for a nest I found as big as my head (amazing, I almost feel bad for killing them... NOT) and I was thinking, maybe terrorism would be fun today... go to lawn and garden, grab a can of wasp spray, douse all the food... before I was jailed, I bet I'd at least kill some children, and if nobody noticed, I'd kill a lot of people. How much fun!

2008-08-13

Doom 3 + Resident Evil + dreamz

crazy dream; it was more of a mix between resident evil and Doom meets high def graphics...
I can't remember exactly how it started, but I was (camera) watching this team of off-duty police officers (jill, barry, and some other people) hang out at this large shopping mall, both teams went their separate ways just milling about; the girls went to go look at clothing, the guys just found an arcade and goofed off for a bit, two of them went to go get a watch or something. While at the mall, there was some sort of disaster that occurred, but I don;t think anyone noticed right away, because the scene changed to down in the infrastructure of that building. The mall itself was a "superstructure", AKA it was built atop another existing building from years ago, and so we get to fly down a few corridors with typical pipes into a breach in that concrete barrier over the old city. Well, some sort of gas leaks out, and a rat gets infected. We go back to them all rendezvousing at the food court, just talking about some stupid people and parking violations they had to write out, when some little kid screams, she had been bitten by a rat! Which was odd, so, I think it was barry who goes over to investigate, but it was a normal sort of thing. Apparently, the 'virus' could not be transmitted to living flesh. So he bandages her up and escorts to the mall medical center. I think Jill started to freak out, flashbacks or something, so they plan to leave, but, the whole team gets this premonition, and I, walk into the mall cause a birthday is coming up and I needed to buy something. I wasn't wearing normal clothes, I was in my full RP- getup, jeans, black specialized boots, a dark green denim workshirt and a black matte trenchcoat with sunglasses. The movie goes to third person on me for a bit, as I sneak into the infrastructure side of the mall. I journey down a long series of terrifying places, it looked like a long and complex office complex, room after room of desks, files, and storage, seeming to be in total disrepair. Of course, I stood out like a sore thumb, and those officers followed me. I was noticing that there were blood stains, at this point I chickened out of my mission and began to go back, but was stopped by the crew. Now, behind me one of the 'zombies' stood up, and I had a lot of guns, so I turned around and shot it in the head, but it took a few hits to pop it. The team was kind of in shock, I handed them other pistols I had in my trenchcoat, and we started discussing what was going on as more and more zombified people began showing up, moving slowy from room to room trying to fire as little as possible. These zombies were different, they weren't living people turned dead, they were actually just reanimated dead. The virus only spread to fresh corpses this time, but other normal things would kill you (bites, cuts, ect) and these zombies didn't seem to be after anything, more like they were protecting something. We began to hear screams and running above, so we went above ground to see what the hell, and this affliction had already spread, the crows, this time ragged lumps of muscle and some gross feather, totally sickening, had been picking off people as they ran out of the mall, I found that shooting them was insanely difficult, but could knife them really easily. I had run away from the group as they stupidly tried to protect people, looking for answers, and I found that the sewer was a host to lots of dead bodies, and hence things were flowing out from there. The virus had been in the water supply, so a dormant infection was imminent. No saving now, so I rejoined, they were very angry with me, and I ignored them, going over to a service elevator to go down to kill some mofo's. Though, at this point, the virus was combining bodies together to form stronger, more sinister creatures, I ran into this larger room with one of those rail-like garage doors for trucks, and two quadripedal things, no three, came in, and I crouched, watching them, but they heard that, and tried to hone in on my position. They were pretty sick, some sort of collection of muscles and misaligned veins and flesh, all glistening from the fluids they constantly leaked, the looked like lions with no fur or claws, and a weirdly shaped head, much smaller jaws. I didn't care, but I knew a pistol couldn't stop them, and THAT's when the cyberdemon walked in. (cue some funky remix of 'Tower of Babel'...) Things got interesting, because this cyberdemon looked similar to the doom one, but has a lot more attitude and air of 'coolness' about him, with a strut like overconfident walk, huge metal cigar holder with cigar, and a pack of rockets and that killer rocket launcher, looking about to see what his 'pets' had discovered. Apparently, someone left a cyberdemon corpse down here, so. He turned, and was about to fire a rocket, when I realized I had been seen, and was screwed, so I stood up in 'don't shoot me', and the demon huffed, lowering the gun. The 'dogs' turned to watch, but held back with a wave of that monster's claw, as he walked over to keep a large metal truss between me and him as we talked. I can't remember exactly what was said, but it was similar to 'so, what brings you here?' 'what, me? Just suckin' souls as usual' 'Bad time for eating the living' 'Yeah, no kidding. How about you, walking the dogs?' 'They aren't housebroken, I figured I could piss all over this world to train them *laugh*' 'Sounds fun.' 'And...' I remember this part a little more clearly 'What does a demon like yourself need with these people. hrm?' '?' 'You are Z, are you not?' '...yes.' 'At least you look like him. Devil not giving you enough souls?' 'That is not why I am here. *angry*' 'I doubt that, you are nothing but a pile of worthless flesh like the rest of us.' and he lights his cigarette, and then quickly lights a rocket, drops it in his arm and shoots it behind me, forcing me to dodge, but he was right, I *was* technically a demon, at least Z would be considered such. So I rolled, looking up at this monster, pissed off that he would assault me like that, but only about the verbal part. He had begun leaning on the building, watching me with bored interest. 'Go play with your friends, coward.' So I did, I ran around the dogs, slamming the door on them, leaving this behemoth to suck on a cuban and watch the chaos, going back to rejoin the police team, but they were out there with helicopters and shit, and my alarm went off.
Primarily, there were some very disturbing things about the dream, one being the imagery, the demon and zombie creatures were very grossly detailed, rotting, hanging flesh and a smudged dirty appearance made them sickening, but not threatening. Talking to a cyberdemon who KNEW who I really was was quite agitating, it was cool in retrospect to talk to a demon, but still, I thought I had a good cover (why did the masterplot come into this mess?). Also, the scenery was unique, a big mall in a big city as a superstructure, time was much later on, because there were less % of people, more law enforcement, and strange commercialism (mixed eastern/western everything, chinese was pretty much everywhere) I was also in my 30's, which I guess isn't that far off, but still. It was pretty crazy, and I can;t remember a lot of the little scenes, like running or turning corners and being surprised by a zombie or monster of some kind. The only thing that could have made it much more interesting would have been a hunter gamma, but oh well. My own personal fantasies will have to wait I guess.

2008-08-01

Anrgy post; Irrelevant technical content

Lots of craziness, well let's just list it:

The bank I am using for a home loan is giving me a 6.00% APR excluding PMI costs (PMI costs only affect the loan if you put less than a specific percent down, aka 20%). It is a 15 year fixed rate, so my monthly payments were estimated to be ~1200 a month. On a 120,000 loan (for a nice house!)

I looked at about 44 some houses in two days, sorted them all out by preference and other criterion. Shopping for houses is superficially easy; Find one you like, THEN check it for defects that affect your offer (Like over-shingled roofing, severe cost repairs like water lines, age of house, defects in foundation, inspection violations, ect...)

My medical condition is not improving; It does not seem to be a "Duodemic ulcer" or a Hernia, in fact, it is quite random, and the only feasible explanation is maybe I somehow swallowed a toothpick or something. Except, I can't move or contort myself to generate any pain, so that's kinda out. It's always an infection.

Sickness from this disgusting medication sucks. I'm taking Protonix, which does it's job really well, lowering your stomach's pH from 1 to 4 ish.

Been learning the ropes on Tangent Space normals, Blender can generate them very well, and it is a blast to make a low poly model baked from a high poly source, allowing me to add super details like metal and rust, and dents, waves, making everything nice and shadable fun. It's great, because you can reduce complex objects into flat textures, and save both as files so you retain all the info! Best used for levels it seems, and characters, though the complexity of the shader for that one is still WIP. Hooray GLSL.

And I have until the 14th before I am evicted. Talk about short notice! Fuckers.

2008-07-13

Crazy awesome 1080p dreamz

So last night, I had this wicked awesome videogame dream (you know, the ones where you make then play your video game!)

I made a PS3 game, and it was totally high def. The basic premise of the game was from the masterplot, my main character was on this planet to retrieve some of the exceedingly rare fuel they use for their weapons and spacecraft. Usually, this material is found and turned into jewelry or relics, so it's often difficult to access.

But, the game starts out on this desert style planet, you warp into this large concrete structure, with curved and smoothed 12 or so foot open ceilings, if viewed from the top, it would look like a giant flower, with wide slits cut into it so that sun could bathe the few cacti that grew there. IT turned out this planet was bathed in light from three suns, it was never dark, but the suns were not close enough to cause severe death, although being exposed to the light directly would kill you in a minute. So, I was standing in this light tan structure, it was huge, but the real secrets were amazing. The detail in the scene is phenomenal, there were concrete benches and other such things all around, the structure had shadowed parts (carefully selected widths that prevented sun from hitting them) and most of the people were sortof humanoid, looking of asian descent. I walked around to get used to the system, you ran around like any normal game (think Folklore). But, there were drastic differences in the internals, people and living things were very much dynamic entities, they all had moods, and were not just walking around, they were working in the gardens or on their mac computers (yeah, product placement in a dream... roomate bought an iPhone friday). I approached the lady at the desk, who had two unicorn-horned peoples as her guards (The dress was incredible, everyone had on typical arab cloak/sheet things, but had colored V bands surrounded with a gold trim, the colored bands determined rank in the society, they were very gorgeous women too. Shoes were all cloth, no soles, just booties) The guards paid me no heed, and I hit the X button on my PS3 remote to interact, which brings up this neat menu, where I can converse ( the main character is NOT mute, he actually talks!) or I can type in anything I want, which may or may not be rejected from the parser (it just figures out the jist of what you are saying like old adventure games, like "look chest" would probably be offensive...) So I asked her what this place was, she look a bit confused and told me something about it's history, and told me I should play this strange game with colored spheres that moved with the joysticsk tilt. I accepted and thanked her, and played that crazy game for a bit, after beating it she asked me (without me prompting her) why I was here, and I chose to tell her I was looking for a certain rock, she didn't know what it was but told me that I should be careful going below the 40th or so floor, to which I had to say "huh?"

IT turns out, on this desert planet, the people originally built these humongous cylinders of concrete (the primary material) which were about the size of 6 carnival cruise ships in a circle, end to end. They built them very deep (two or more down) in order to create false weather, the inside of these cylinders would retain it's own weather due to the size (just like NASA's gantry) and they used wind power to generate electricity and water their hydroponic and aeroponic labs for food. So this was like a entire city built in a inverse tower of babel, people worked on the infrastructure, and farmed and took water from the bottom of this "sunken city" and lived in the outer rings in cool cave environments to save themselves from harsh storms and cruel sun. Since these structures were so big, it was frequent that people from different floors would not meet people from farther away floors... But, what had happened, was over the years, there was some sort of surface conflict, and the people that started these colonies killed eachother in some stupid civil conflict, so the technology and power used to do this was lost to each individual colony. There were many of these, but they did not always stay in touch since the planet was too hard to travel across (many tried, so it turns out). The structure itself had pipes of liquid crystal that acted as fiber optics to transmit natural light all throughout the structure, so it was never dark and you always had healthy radiation coming in. Naturally, everyone was tanned well. IT did seem to be a rather awesome utopia, But!

There had been an accident YEARS ago on the bottom floors (R&D) where the genetics lab blew up or something, and generated all sorts of monsters. Soooo, they jut began to seal off levels to keep the monsters down there, and feeding on eachother rather than people. So it was a jungle down there.

And I had to interject, "How can I help?"

She had no idea, but gave me a badge so I could access those floors. Yay for keys. I spend a lot of time running around, everything, I mean absolutely everything except the thick static level was interactive, I could touch, investigate, examine, attack, talk to or move things. It wasn't without it's bounds, as things that didn't make sense to do those to didn't do anything (like the cacti that bore fruit in the sun, why would I touch one? But I could pick the fruit.)
So, after satisfying myself with talking to a lot of people (this was great, they never repeated the same things, and often would stop talking to you if you were a jerk to them. You could be nice, and they would offer up history or talk about their boring selves. Sometimes, they came up with context information, it was like a chat bot! Very cool detail. And PS3 level graphics made they lip sync with audio and such.

A note about the camera, the camera was great, I could view from generic "smart" cam, "dramatic" cam (Shadows of the Empire), "First person", "True First person", "Second person" and even a free camera with no constraints. It was a game for the gamer, not the game.

So I found the stairs down to the part on the outer rings, the inside was actually domed with levels, which made sense for the structure. You could see gorgeous clouds reflecting rainbows from the light pipes inside, with many wires rolling plants along them to catch fresh waters and such. It was a very, very cool setup.
However! The farther I went, the less shops, people, and safety I saw. Eventually, I was in the distopian part, it was just a tad darker, some light pipes were broken, and I could hear the hissing and screeching noises of enemies. I had bought a machine gun and a knife, and put a shield on the machine gun (all weapons and items are customizable, like legos. Mega fun.) So, I found the least sealed door, and ventured on. Instantly, I was in combat with some things the size of dogs, but dragon-like faces and partially scaly partially furry monsters.

But combat in this game... holy god it was awesome. For 1, you have multiple modes of combat, you can be "not fighting" which means you are normally running away and will get pounced and killed quickly. "Direct mode" instantly targeted whatever you were looking at and you went into either 1st or limited 3rd person, only focusing on a single target. Then, you could change stances to multiple different fighting styles and techniques, I chose the defend/shoot with right and knife with left. When a creature attacks, it is a physical attack, you can hold the left or right button and move the analog stick or SixAxis to move that arm to defend/slash in that direction to stop or deliver a blow, it was a very fluid system of fighting, but you had to spend a lot of attention to successfully block attacks, which was primary. Attacking worked the same way, you got to attack and direct where it went (like Zelda2 in 3D) but it was done well, so it actually felt like intuitive fighting. Using all the features of the sixaxis and the dual analogs, it was wonderful to play. But, if you were surrounded by more than one enemy, you went to "All mode" where it became defense and dodging priority over offense, so you get this nifty 3rd person camera so you can dodge and slide your way out of a crowd, delivering counter-attacks to KO or kill enemies as they failed to hit you. This was very fun, and looked like a martial artist Pro Judo-ing a bunch of monsters. Also, when you used a weapon, you could Resident Evil 4 or view from the sight. The best part, was like Trespasser, you could shoot in the direction of the gun, but quickly moving the controller around you could also aim in a 45 degree cone, so instead of re-aiming all the time for grouped enemies, you literally moved the remote a bit and shot some more, making using a gun feel very natural, especially for the already-awkward analog stick aiming crap.

So to review, combat is modal, you can be non-combatant, Direct, or All modes. Direct modes lets you focus on 1 creature, and accurately defend and attack at them via physical expectations. You can shoot your gun at any time as well in all modes. All mode lets you waltz around a group of enemies to get to a safe shooting and attacking distance, as well as delivering counter attacks to KO or kill your foes. Each mode had many details about the buttons and what they did, whether you killed, hit, KO'd, or flailed, ect... Most importantly, was that combat felt very fluid and natural.

Oh, and about getting hit... the game doesn't punish you too much for dying, but you can only take slight hits. Getting hit with a bigger monster generally means you are going to be in a desperate position, and have to do the classic button mash to prevent your head from being eaten. Obviously, if you fail, you get to watch your character get mauled, but for some reason everything that kills you has a one-liner jut before it does, like "Mmm, pink and squishy!" or "I bet he wishes he had Geico insurance!" or "Hooray, Kool-aid!" or other stupid little quotes to make dying feel a little less gruesome. In fact, most enemies would not talk at all, but they all said stuff when they killed you. I believe this was the designers making it be that the main character was putting these words in their heads for hilarity, which it generally was. It made it a little less frustrating to die.

So, after fighting my way though these suckers, stronger, bigger monsters appeared the deeper I went, saving was only if you were not in immediate danger. You can save almost anywhere though! So no lost time. But, as it got harder, getting attacked by larger-than-you enemies meant they killed you instantly (neck bite, broken spine...) so you had to start using the environment to stop them, pushing stuff in the way, dropping things on them... Stealth was a great option and fun to do, although you the character weren't very stealthy, enemies would generally not attack you unless they had a reason too; Also, if an enemy attacked for a while, and wasn't getting anywhere, they would run away. There is no benefit to killing things, except to loot monster corpses for stuff (which is generally useless they don't carry money, items, or anything but the occasional stomach pearl or 'jerky') So the game did not really want you to fight, it was just part of the job. (nice moral story touch, eh?)

So combat and investigation is the focus of the game. As I kept getting farther, enemies got less vicious, and I found out they had a foodchain I could exploit, larger enemies had preferences for eating smaller enemies, so I could usually take the corpse of smaller enemies and "feed" larger ones to make them not very aggressive. Which was lots of fun! So, as I went farther, I got a cutscene. Apparently, the target I wanted was this beautiful necklace, buuuuut it was on this gigantic mutant gecko thing, like some 20 or more feet tall, huge and brightly green and purple colored monster-awesomeness. The funny part, was all bosses can talk. As soon as I found the boss, I had a lot of options to try, so I saved the game.

With bosses, they are just as skilled as you are, able to target, solve problems and use everything to their advantage. However, THIS boss was a guaranteed instant kill if it got close to you, it just simple ate you, regardless of anything else happening. Which, was really annoying to find out, I proceeded the first time as normal, stealthy, and popped it a question, because you always assume sentience. "Excuse me, but that necklace of yours... I need it." And it turned to look at me, grinning "Oh? What does a tiny morsel like yourself need such things for in your short life?" At that point, I could have targeted it to attack, but I didn't (still non-combatant mode). So I talked to it a bit more... "Well, it is made of something I need, and I must have it." IT just laughed "Why don't you come closer so we can disssssscusssss?" So, obviously this was a trap, and I went into fight mode. I did pretty good the first time, running around in circles shooting it from behind pillars. IT was in the middle of a water pool, but it was shallow, so it would be instant death if I tried to run in the water (slow = easy prey). And I continued circling and shooting, and the thing got upset, yelling "Ow! Stop shooting me!" "that hurts!" and "you'll get yours you little twat!" It had no real accent, it was acting like Gex from that crystal dynamix game... same colors too! Either way, it began ram-punching the ceiling above me to try and crush me with rocks. Apparently, I wasn't paying attention and ran under a weak section, which fell on me and killed me. DEAD! I restarted where I saved, and immediately began shooting and ran right at it, hoping it just had a weakspot. It got a funny expression, and said something like "Oh! I didn't realize we had room service!" The grabbed and ate me. I was miffed, but from this point I tried just about everything except talking to it again to try and kill it, every time it would learn from the previous fights, and try something new... For example, by running around behind pillars, it just began throwing the smaller enemies at me, which got me caught/trapped, then killed. Trying to push stuff onto it from a above level had it jump at me, and grab me off the ledge, dead. Trying to be stealthy, and hiding from it meant it looked around, I reloaded, it HEARD that and reached in and grabbed around till it got me. DEAD. I don;t know how many stupid things I tried, I couldn't manage to hurt it with my knife and gun, apparently. Each time it had a new quote, or funny quip. And once it started fighting, it would talk smack to me the whole time, which was pretty fun. So, after watching so many unique death animations, the %@*& cat wakes me up, and I didn't win against it.

Everything in the game was top quality fully detailed shaded HDR glory. IT was an absolute dream to fight enemies, and even the boss was kinda funny, albeit a little hard. I bet if I talked to it and offered it a TRADE it would have given me the necklace.

In closing, this game fucking rawks, I wish I could play it and I wish I made it to let others play it.

PS3, I wuv you <3

Peace out!

Imaginary Z

2008-07-12

Hacking And GUtil

So, I find out after playing with the Blender Game Engine, that no matter how long I fight with it, I cannot get past it's harsh limitations. So, I decided that there must be a better way to win against this. Now, this isn't to say that with a hammer you can smash a piece of rock into something like a statue, but I prefer when a computer and LASER CAD system can cut it for me and I don't have to get out of my chair.

Enter GUtil (Game Utilities), where I started in the game engine, knowing it was lacking a large amount of fundamental vector mathematics, matrix mathematics, and all the normal utilities used. I should go in and fix all this, but that's for later. GUtil provides these, just coded in Python (gag) and wrapping a lot of the functionality. For example, you cannot add or delete objects in the game engine. This is normally done by adding a property, and sticking it on an actuator that goes to a "EndObject" controller. GUtil demands you place specific objects in certain layers (which you pick), so that on the game startup, it can automatically load, link, sync and run the game as you wish. It isn't like a "game engine" because it wraps basic functionality (BGE isn't a game engine either, so you know) with higher level commands, and allows you the lower level access to direct BGE functions.

Most importantly, it makes making a game much easier, and flow WAY better than "hacking it out" with common brute force techniques. Some nice things it supports, like armature positions and rotations (including specific bone rotations), animation controllers, adding and deleting anything, spawning and saving, and some basic color and environment details (maybe shaders, working on it!) as well as a multitude of code features for putting whatever you want together!

So, GUtil is a silly project, I'll just do it in C++ myself, and save the python time for when I make exporters.

In other news, I again downloaded some crazy games from TatsuSoft. If it wasn't for them, I probably would never have gotten into Electrical Engineering, game programming, or my job and career. I just hope they don't get any funny ideas about payback... or maybe that is a good thing?

Either way! I always wanted to Hack into Multimedia Fusion files. Ever since I was able to steal the models and textures from Super Smash Brothers Melee and Pokemon XD, as well as Colosseum, I figured I could give this a shot since it would be nowhere near as hard. (Yes, that's right. You can steal 3D model data from the gamecube. It's not easy though.) Turns out I was completely right. (most data was either direct PCM audio, or embedded files, like MIDI. Graphics were simply scanline alpha-plane raster uncompressed images...)

Basically, the process would go like this: (from Goats n' Goblins)
  • INGAME: You play the game or find something you would like to steal/examine
  • HEXEDIT: You open the original game data in a hex editor, and apply all your knowledge of hacking, binary coding, programming, and logic to deduce what it means (requires a degree), and then write a program to interpret it.
  • RESULTS: Then, you sit back and sift through the images, sounds, music, and other data you get!

Now, for those of you freaking out right now about the fact that digital information is never secure, remember I do this for educational purposes, specifically, in order to further increase my own security protocols. It is sometimes very handy to learn by example, although I find more things NOT to do rather than advice in my hacking adventures.

Some notes about this, if you want or are interested in hacking, stealing this kind of information, or other ILLEGAL activities, the information will never be public; do not bother me unless you are also doing this for your own benefit (or just curious). The resultant data obtained from stealing should not be shared as it violates copyrights held by original media creators.

However, all code, algorithms and technology should be public knowledge, so knowing how to steal is different from actually doing so. (Content should be the only thing copyrighted)

As a result, go download Code::Blocks and learn C++ for free, legally, and begin your own game programming career!

Peace out.

-Imaginary Z

2008-07-06

More Adventure Nonsense

Well, I was sick and got bit by a pretty nasty spider (brown recluse most likely), so I was sick all this week. And still am, a bit.

But! It gave me a lot of time to acquaint myself with my porcelain god, and contemplate my career decisions. In fact, if a little bitty itsy teensy spider can kill me, I might as well do what I like. So I'm changing jobs.

On the other note, I certainly played with the blender game engine a whole lot, trying a lot of things, until I remembered I'd better look at the sourcecode to make sure I wasn't shooting myself in the foot with a shotgun. Turns out, I was, and "reinstancePhysicsMesh" from the python docs for the blender game engine does this:

void * reinstancePhysicsMesh(){
return 0; //Oh yeah, we didn't implement this. Who uses this anyways?
}

Needless to say, I was a little miffed, but I'll write a patch and submit it. I'm probably the only wingnut who wants to make a model and a low polygon shell so I can put other physical objects on/in/around it (making a 3D adventure transition a little less painful...)

Either way, I'll be using my temp server to post content. Here's a screenshot of the original Adventure maze traced out, (thanks Warren Robinett!) along with the current (revision 6) of the game itself. Yes, the dragon is quite animated, but I'm redoing how I handle everything to make it much more flexible. ...(link removed 2009-11)


 Peace out!

-ImaginaryZ