Don’t look back
It’s been a long road, a lot of detours… But I’m finally here. I’m a senior! Yaaaaaa–wait, that means I’m going to college next year. Wait, where am I even going… Oh no, this is bad. But I’ll finally be done with school! Yaaaaaaaaaaay! I know I haven’t done a blog post in a while, and a lot has happened, but I won’t be covering it all. Do you want me to write a novel?!
Lots of work on Espionage Inc lately. LOTS. We’re making more progress than ever. In fact, we’ve completely restarted production from scratch and we’ve nearly completely rethought the concept in a lot of places. We have 5 developers: Two programmers, one mapper, one modeler, and one skinner. You’d think it wouldn’t be too hard to coordinate all that, but when I’m dabbling into everyone’s work it gets a bit crazy. I’m incredibly happy that we could find another programmer, who’s actually good even. It makes the whole thing so much easier on me. I thought I was going to be the only programmer, and I thought I could handle it. Now that we’re pretty much fully head-on into production and we’ve got everyone working at once, I can definitely say that I WOULD NOT be able to handle it. I’ve barely been able to program at all, and I don’t think I’ll be able to. I’m modeling props and characters, animating characters, programming, and coordinating everything. I don’t think I’ll barely even have time for all that. And we still don’t have a sound guy… Okay, I’ll get off the soap box.
We’ve pretty much finished the general shape and layout of the first level, now we’re just adding detail and making all of the content to go in it. The concept of the whole game is pretty much 100% solid at this point, and unlike before, we’re completely planning out our levels and gameplay before we do anything towards them. I think that’s the main reason for our massive amount of progress at this point. I expect to have something playable by maybe even the end of this year. I’m hopeful. Maybe just even the first level. We’ll see.
I don’t want to spoil too much (if anything), so I’ll just stop there and not go into detail about exactly what we’re doing. We’ll do a media release at some point, I’m sure. In other news, I want to do a 3D animation but I’m not sure what. Or when or where to start. I have the skills, I have the motivation, but I don’t have the time. I even have over 9000 ideas to make it of. There need to be more hours in the day…
Also Batman: Arkham Asylum is amazing. Best singleplayer game ever right there. If you haven’t already played it, GO GET IT NOW. Or else.
04.8.09Whoa, lookit awl dat joos
Lots of stuff has been floating about lately. I’m officially completely off my SWG addiction (seemingly I wasn’t after last post for about a week or two). I’m kinda in that stage where I have all these projects to continue, all these games to play, and all these things to do, but I don’t know which to turn my focus to right now. There’s ToH, EXGN/RP, Espionage Inc, and the periodically reoccuring 3D modeling and animation thing. I know I said I’ve made plans for the new updated EXRP script, and I will get around to that sometime soonish, but I think for now I’ll try to focus on Espionage Inc. Thing is, with such a small team of developers, we all have to do our part–And in some cases, we all have to do multiple parts. Especially me, for some reason. While coding and design are probably enough to keep me occupied, I’m still aiming for a pretty quick development cycle. I’ve started to model again, this time with Modo. It’s really amazing compared to anything else out there. Max was alright, but I didn’t like the way that the modifiers worked. You never really had any real geometry due to them, and when you come down into the technical stuff (and even trying to export things to Source) that was a real pain. Maya was a lot better, but I found it really glitchy. It absolutely loves to bugger out and go completely batshit insane when you hand it some backfaces. Now I’ve started looking into other things, like Blender for instance. Pretty powerful, stable, well-rounded tool, however I just horribly dislike it’s interface and viewport controls. Waaaaaay to complicated and unconventional. Houdini looked nice as well, but it’s node system is just completely unnecessary in my opinion. Lightwave is nice too, but it feels like just more of the same. So eventually I came across Modo, which has this whole philosophy about every concept and control just coming naturally and working how you’d expect them to work. And that’s true, Modo is by far the easiest to use modeling program I’ve ever used–besides Wings, but that’s a bit outdated I think. It’s pretty good at other things to, like texturing, sculpting, and rendering. It has a pretty primitive pivot-based animation system, which is great for smaller things, but for organics I just can’t see it happening. You can, however, animate in an external program and import the MDD. I’ll be doing this if I ever want to do animation (which I will) with another nice program called Messiah. Very very nice animation tools there. Anyway, in addition to modeling I’ll also be taking on the daunting challenge of creating a soundtrack of sorts. I’ve been looking into Reason, which looks really good actually, but the only problem for me is that you really do need a MIDI device for that. Actually, not too big of a problem as I already have a very nice keyboard, but it’s rather large and I’ll have to find a lot of space for it. Plus I’ll need a MIDI input card for my computer, and frankly I know nothing about those. I’m sure it’ll all work out though, I honestly can’t wait until we start getting some more content out.
Posted in Blog | No Comments »
Game Over
My addiction to SWG has ended, I’m pretty sure. I got level 90 yesterday, and while that’s all fine and peachy I’ve now found myself asking the age-old question: “What now?” It doesn’t seem like there’s too much to do after you hit 90 besides the odd quest you haven’t already done and PvP, which I’ll get into in a sec, and RP which is nice every now and then but peoples’ definition of RP in SWG tends to be somewhere along the lines of “waste as much time as possible by sitting down and just talking to people, which you can do in guild chat anyway”. Oh boy, so much fun. There are also heroic instances, which are actually really fun, but you NEED a rather large and experienced group for all of them, so that’s a bit out of the question most of the time. As for PvP, I’m a bounty hunter so I’ve tried a few missions–first one was on Mustafar, so I couldn’t use my droids to track him. Second was inside the Deathwatch Bunker, which I really can’t be arsed to get a group to go through with me. Third was in Restuss, which is a PvP zone that forces you into PvP whether you like it or not–hooray for getting ganked by every single Imp on the server. Rinse and repeat this several times for about 15 targets. Finally I found one that was just sitting on their speeder in some town, and I started to attack them but they just ran away. Okay, don’t want to fight me? I’ll just destroy your speeder, thank you very much. Then I tried another one which was in the Mos Eisely cantina, and without armor! Looks like I scored big time, right? At first, I’d say so too. I dropped their health down all the way in like 30 seconds, but to my amazement there was no dieing involved afterwards. They were just running around shooting rockets at me while they had no health. At all. I kept mashing my specials on them that should’ve rolled them right there on the spot but no, they just didn’t die. After ranting over guild chat, I’ve found out that my target had activated a special officer buff that makes you invincible for some seconds. Uhh, great–WHO’S IDEA WAS THIS!? I know SOE wants to get rid of SWG, but honestly is shitting down PvP really the way? Well, I guess it worked for me. I’ll continue to play every now and then I’m sure, but my addiction is over.
That said, back to coding and whatnot. I’m trying to get EXGN started up again. The other day I set up a CSS server for a friend from Facepunch and he’s got a “Zombie Escape Mod” server running on it, and it’s actually got quite a steady amount of players going on it. I tried it out myself, and while I’ll never be too big a fan of zombie games (besides the occasional L4D) I like what he’s done with the place. I’ve just finished updating Wine and reinstalling a GMod server from scratch, but there’s still the weird “I DON’T FEEL LIKE LOADING THE SURFACEPROPERTIES PROPERLY” glitch. At least the surfaceproperties files came installed by default this time, but they don’t seem to make a bit of difference. Perhaps they do, as the problem appears to be fixed in *some* areas, but it still exists in others so that’s where I base my assessment on. Not until it never happens again will it truly be ‘fixed’. Also, for now I’ve removed the CSS and TF2 servers, but if there’s a demand for them I’ll surely bring them back–just ask.
As for coding, I haven’t done anything yet but I’m planning on getting back to ToH. Like I’ve said before, all the hard stuff is done; all that’s left are all the details. This has got to be the shortest paragraph about coding I’ve ever written…
It feels kind of weird not being addicted to anything anymore. I kinda liked the joy of getting up every day to go directly to playing something; always knowing exactly what to do. Not that I don’t know what to do now, but I do feel a bit disoriented without knowing what I’ll be doing all day anymore. Somewhat related: I really just can’t wait for The Old Republic–you know, the new Star Wars MMO coming out sometime next year. I know I was kinda bummed about it earlier, but now I’m starting to welcome it with open arms. SWG is great, but like I said, not too much to keep me occupied after level 90. I’m pretty sure BioWare will take care of the “what now” thing after you hit whatever level cap they set, as their whole philosophy appears to be about PvE story telling–which is ideal. My only problem is that they seem to be focusing a lot on Jedi, which makes it seem like every single person in the game will be a Jedi. Hopefully not the case, and probably not the case since they’ve announced the BH class, but still something to worry about. Another thing that worries me is loss of features–will there still be space combat? Will there still be crafting? Player cities? One thing that was both annoying and great at the same time were the vast landscapes in SWG. Really, biggest playing fields I’ve ever seen in an MMO. Most of them (meaning NOT Mustafar or Kashyyk) felt like massive planets; you know, the way they should. It gives you a really nice feeling of adventure and exploration when you travel around in SWG. I’d like to see that kind of massive playing area make a return, as well as player cities to take up some space. However, I’d like to see a bit more selection when it comes to houses. This doesn’t seem like it’ll be a problem though, as BioWare’s documentaries seem to emphasize how every player will be able to look and play their own unique way. So like pre-CU? Nah, hopefully better. Another thing that concerns me is the art style, as it does look a bit cartoony but I’m optimistic. Anyway, lots of things to bugger up my mind with regarding ToR, but unless you want to read a novel I’ll leave it off here. Off to watch some Clone Wars (meh it’s pretty good), ‘night.
…Damn, how cliche am I?
02.11.09No soup
Lots more progress, of course, however no soup. My stomach’s been really grumbly the past couple days, not sure why, but I’ve been really bloated and foul-smelling burpy. Seems to be getting better, though. I just think it’s coders’ withdrawal–haven’t coded as much as I did last week. Regardless, I have got some pretty cool stuff done. I’m nearing around 5000 lines of code, which is kinda freaky and kinda cool at the same time. Guess it just shows how much work has gone into this so far. Anyway, yesterday I implemented a map portal system for edge-based portals and tile-based portals to ‘teleport’ to different maps. The edge ones work by defining a map to switch to if you go beyond the upper, lower, left, or right bounds of the current map, and you appear on the opposite side of the map so it seems as if you’ve traveled to it. For example: We can have a huge field made up of several different maps, and you walk right to go to the next map, left to go to the previous map, etc… Instead of having just one huge map, which would be huge. The tile-based portal system was a bit easier in theory, as it’s basically just when you step on a certain tile you mark in the collision layer it teleports you to the specified X and Y of a selected map. I’ve also done a couple tweaky things to the map editor, but nothing specifically worth mentioning. Just look at the screenshots in the dump below and you’ll get the idea. Next up are NPCs and the sprite editor tab.
02.7.09Progresso Soup
I’ve been making a lot of progress with the new ToH. I’ve done everything that I said I’d do in my last post, which is great. I’ve also done some new things, like fringe layers (that draw above sprites), a collision editor within the map editor, and surely a lot of behind-the-scenes cleanup work that, since it’s not asthetical, I really don’t even remember. Most of the changes are from the backend, so not too many “wow!” screenshots–however those will be coming from now on. I’ve finished what I consider to be the ‘base’ to build everything else on top of, where everything is in a completely working state and all the ‘hard’ code has been completed. The official ‘to-do’ list is as follows…
- Map portals (by filename)
- Map *edge* portals (by filename)
- Recursive NPC loading (by ini file)
- Sprite placement tab on map editor (by image, NPC, item)
- Items system w/ recursive loading
- Inventory
- Equipment system (weapons, armour, etc…)
- Battle system (press CTRL to swing sword, basically)
- Health bar (hearts that disappear by exclusion overlay)
- Map properties window in editor (music channels, edge portals)
- Doors/buttons/keys
- Shopkeep (from dialogue)
- Dialogue tab in editor
- Basic multiplayer (position networking as NPCs, chat, player name, login/character saving by ini file)
- Quest flag set&get methods for dialogue (tied to character)
- Admin commands
- Add/fix ToH graphics + music
As you can see, it does seem like a pretty hefty list of things to do. However like I said, I’ve already done most of the ‘hard’ stuff, so the rest should be relatively straight-forward. I think I’ll have things in a more or less functional state mid to late next week, then after that it’s just a matter of adding content (graphics, sound, maps, etc…), bugfixes, and tweaks. Of course there’s always room for new features, but I’m more focused on getting us up to par with what we had before than adding anything new right now. Anyway, that’s pretty much it. Do check out my image dump for today as I have added some screenshots. If you’d like to test how things are working out so far, feel free to ask me in an IM or something. On a completely unreleated note: Progresso soup is really good, but I wish the rice was less crunchy. More soupy brothness and less rice would be nice.
02.5.09Nuclear Shitstorm Detected
So the past couple days I’ve been redoing my map file system so it saves multiple layers, collision layers, properties, etc… I’ve been using XML, and following a tutorial to do all of this via XNA’s “content pipeline”. Basically it’s a type of project you can create within C# that ties in with XNA to create unreadable, optimized binary files out of pretty much anything on compile. While it sounds great in theory, it’s actually the biggest coding mess I’ve ever seen. You can’t simply make one file that tells XNA how to read and write the files, you need four different files with completely different concepts and layouts just to read a file. Why it’s split up so much is completely beyond my comprehension–if it was just two files, one for reading and one for writing, that’d make sense. However four files, each of which I have a hard time comprehending their purpose, is nonsense. Plus the guy in the tutorial must’ve deliberately found the most overcomplicated way to do this, because the code around that pipeline project is just a horrible mess. Maybe that’s just why I find the content pipeline so useless, though. Or maybe it’s just not the thing for me; of course, I want to be able to network maps to be downloaded whenever so I don’t need Son to send me the new maps he’s created and then recompile it just to change a single tile in a map. The content pipeline can only open files from within it’s own confines–if the file isn’t loaded into the content manager, you’re SOL and will never have access to it until you manually add it and recompile. I guess it makes sense for strictly singleplayer games, but for this it’s just awful.
That said, the past two days have gone to waste. I’ll be redoing all of that loading and saving tomorrow, as well as work on recursively opening a directory to load files and merging all the map layers into one file (right now each layer has it’s own file) and I’ll probably be using XML for that. However, I’ll be writing my own class completely seperate from the content pipeline. I saved a file without the content pipeline a couple minutes ago, just as a test, and it’s unbelievably easier. I guess the whole idea behind the content pipeline for saving files is that you just pass it some variables and it instantly knows how to format and save them, but I don’t even think that’s worth the trouble. So basically, for tomorrow, I have to…
- Load sprites from the disk
- Load tiles from the disk
- Load NPC dialogue scripts from the disk
- Load maps from the disk
- Merge all the map layer files into one XML-based map file
Once I’m done all that I think I’ll start splitting the actual game project into two: Server and client, then start making it so the client basically just does prediction for it’s own player and rendering crap, then everything else is just handled by the server which then tells the client what to render. That probably sounds extremely complicated, but in all reality it’s actually a hell of a lot easier than reversing this shitstorm I’ve created by using the content pipeline. Pray for me.
02.3.09Substantial ToH Progress
Lots of progress on ToH within the past couple days. I expect to get the basics of everything done by Thursday, but then of course there’s a lot of stuff to tweak, clean up, and a few new features to add. My main goal is to get the map editor in a working state before the weekend so Son can toy around with it a bit more. The editor hasn’t changed all that much since Sunday, but I don’t think I posted a screenshot of it then anyway so it’ll be something new to the majority of my readers here anyway. The main stuff that I’ve added is specific to the behind-the-scenes engine code and the game code, as we now have a player that can walk across the screen and some NPCs. We also have a collision layer that specifies whether you’re just completely blocked by a tile coordinate, or if you can still walk through it just slowly–like mud. Again: I haven’t really talked about the development until now (not sure why), but I have some screenshots from earlier versions that I’ll be posting just about now, and they’ll make more sense if you know what changed between them all.
I’ll be updating that with a couple screenshots pretty much every time I change something or add something that’ll have a visual impact that you can look at and see some progress on. Don’t mind the graphics right now, those are just some placeholders I found on the net by searching around a little bit. By the weekend they’ll turn into some appropriately themed Zelda graphics. My guess is that’s when things will start to get a bit more exciting. I have lots of cool new ideas that differ from our old method of doing things with ToH, for example: The ability to rotate tiles in the map editor, the ability to treat all sprites as entities and all sprite-based entities the same (NPCs, trees, animation tiles, etc…) and be able to place them in the map editor. Buncha stuff to think about. I had one really good idea about a checkbox but I forgot it in the shuffle. I do remember that it was going to be a really good idea, so that just adds to the shame of forgetting it.
Anyway, I’m really liking XNA and C#. It’s just so easy to do anything, and the syntax is a lot like a mix of Lua, VB, and C++ except that it makes sense. I think the biggest noticable difference between my usual Lua coding and this is just all the freedom you get. For the collisions, I’m pretty much moving the player where they want to go regardless if it’s inside a wall or not, then checking if they’re in a wall and moving them back if they are–you couldn’t do this in Lua. In C# (or any ‘non-dependent’ language like that) you can tell it exactly when to render the frame (at least, you can in XNA) and render after you’ve done all your calculations. With Lua, your code is essentially called after the ‘default’ code in C++ (in the instance of GMod) and since it’s compiled on runtime you get an extremely significant slowdown that can put you frames behind the actual game engine if you’re not careful. In fact, it always will no matter what, so if you want to do something like what I’m doing with the collisions in Lua, you’re SOL. Putting that specific example aside, I’m really enjoying this. It’s like I’ve been stuck in this little tiny box for the past two years, now I can finally get out and take a nice stretch; do whatever I want however I want. It’s really nice not to be restricted by other peoples’ code as well, in the case of both GMod and the “old” ToH (dubbed version 2, this new one I’m making is version 3) which was using someone else’s premade engine written in VB6 (and therefor using raw DX7, which was a pain in the ass I assure you.) Words cannot describe how great the feeling is while coding with so much room to do things your own way as I am now. Since I’m doing everything from scratch as well, it’s a lot easier to know exactly where everything is and how to change things that would otherwise be declared core gameplay mechanics with the slightest of ease. When you use an engine or platform someone else has made, you don’t really know where everything is and what everything does–at least, not in the grand scheme of things.
The past week or so I’ve been thinking to myself about whether or not I really need a forum–again! It’s never really used besides for the occasional MistCMS question or help thread, and in cases like that people can just email me with the contact form I have on my site anyway, so there’s no real need for a forum then. I was thinking of making it more of a community thing by putting up some tutorials and whatnot, but I don’t think I’ll ever get around to that. If I do, why not just post it here on my blog? That brings up another something regarding my site that I’ve been thinking about lately: Do I really need to seperate my ’site’ from my blog? For the longest time I was just using my blog, then I switched when I made MistCMS to showcase and utilize my proud creation, but in most cases I don’t really see a need. Just have different categories for films, games, scripts, etc… and there you go. I do like the idea of keeping “Dvondrake Studios” something personal to only include myself and quite possibly the occasional Son, then anything else done in a bigger team (like Espionage Inc) I think everyone would be a lot more comfortable with our own studio name. Back to the whole ‘using a blog as a site’ prospect, I think that would make it a lot easier to substitute something for a forum: comments. Plus it’d make my blog more read surely, and now that I have a (finally) acceptable blog design… Ah well, let me know what you think. I’m tired, so much coding in such a little time span tends to do things to one’s mind, as you can probably tell by how unstructured this blog post probably is. My apologies, hopefully I’m more coherent once my sense of logic becomes more logical by figuring out exactly what the hell C#’s modulo operator is supposed to do. On the plus side, I apparently made no typos in this post. Also, I finally remembered to tag my post. Boo-yeah, awesome!
Edit: I remembered my brilliant idea. A checkbox to hide the map editor grid. Mind-beinding, ain’t it?!
02.1.09C#, XNA, and the new ToH
As you probably know, I got a new computer recently. As you also may know, I didn’t buy new hard drives; I used one as a backup to move all my ‘important’ files to and reformatted the other. Well then, I’ve got some good and bad news. Bad news: I lost the server files for ToH. But don’t panic yet! The good news is that I’m going to recode ToH from scratch (and not use a premade engine in VB) so I can do things the way I want and have everything work out a lot nicer. I’ll be using C# and XNA–which are really quite awesome. Today I’ve been coding the basic tile engine, camera movement, and tile editor. Nothing playable yet, basically just the editor to make maps and the game only views them, but it’s all in a working condition right now which is great. Still a lot of stuff to do of course, but once I get all this basic ‘core’ stuff done the rest won’t be too hard I’d immagine. As for C# and XNA, this is really my first time using either. I’ve been toying around with C++ every now and then, and it’s just too… Well, nothing seems logical to me. In C# however, everything just comes naturally and makes sense. XNA is quite nice too, as it really is a pain to get all the DirectX crap done manually. In retrospect, it’s hard to even think that I’m using XNA as it only takes up like three lines of my solution, and thus isn’t even noticable. Anyway, not too much else happening lately, so there’s not much else to post. I’ll give you some screenshots of what I’m working on once there’s something decent to show.
01.27.09Get back to work!
Well, guess I’ve broken that rule that I had earlier about making one blog post every 2-3 days. I guess it’s just more like a guideline, anyway. Not too much new; you know, the usual frustrations with school, playing of games, coding, and thinking about coding. And also something I don’t do very often: reading a book. I’ve been reading I, Robot the past couple days–you know, the original by Isaac Asimov that has nigh nothing to do with the movie. It’s really great, rarely do I stumble upon any form of media that really gets you thinking philisophically. Plus it’s a great, classic Sci-Fi that talks about the year 2008 as if we’re flying about in hover jets all the time, so that’s always fun. As for my aforementioned playing of games, I would up buying Hitman: Blood Money and playing it again, and it’s great. I really hate the boat mission, though. I can never beat it, and if I do it’s just be sheer luck and a lot of killing of… Well, everybody.
Regarding coding: recently, I don’t know what’s been up. I’m kinda bored of coding EXRP since it’s really frustrating to just build upon what someone else has already made, especially due to all the restrictions and bugs that you can’t overcome and that he won’t do anything about. Plus GMod just hasn’t really been on my mind that much lately. Espionage Inc has been making some progress, but honestly not that much. Right now we just seem to be having some kind of communication problem between all the developers. I can’t do anything until I get some maps and models to work with, our texturer can’t do anything until he gets some models to work with, Son’s mapping on and off (which is great, at least he’s doing something), and I’m not sure what the modellers are doing. So until I find a nice way to motivate people that doesn’t cost me an arm and a leg (or anything at all), I don’t know if we’ll be making much progress. I love the idea though, and I’d love to get some content in so I can get to work, but… Well, you know. I’m also thinking of starting a new project that’ll feature “programmer graphics”–that is, everything will be procedural and made from code, no premade models, maps, etc.. involved. Which is great for me, since then I can do everything myself and therefor blame myself if I miss some deadlines. I won’t speak too much details of what the game is, as I think it’s definitely something genuine, original, and extremely fun–I don’t want to ruin the surprise, nor do I want anyone to steal my idea. Either way, what am I doing rambling on about it when I could be coding it!? Damnit Doug, get back to work!!
01.20.09Two projects at once
If you haven’t read my latest EXGN news post, do so now. I’m planning another rehaul of the script, but this time building off Lite since that’s treated us well over the past few months–or however long it’s been. I basically need some crazy ideas that I would’ve otherwise classified as “over-complicated” or “too much trouble to code” so we can set ourselves apart from other RP servers and scripts. As DarkRP is to DM, EXRP needs to have it’s own spotlight for something. So, get suggesting.
Anyway, this brings up one thing: I’ll have two big, high-profile (for me at least) projects going at once; EXRP and Espionage Inc. Now, you may think that I’m abandoning one and going for the other–definitely not. Right now I’m waiting for some more content (models and maps) to work with before I start the majority of the coding. After all, most of the coding involved in a SourceMod is just adding weapons and map-specific things like triggers, cinematics, etc… I’d just like to clear this up. When I was posting the news thread, it occurred to me that people may think I’m giving up on Espionage Inc. or putting it off for a while. I’m not, we’re still going to be in constant, active development, and I don’t want it to wait just because I’m doing my own thing. Just thought I’d get that out there–especially important to post this, if not just for the other devs to see. I’m still around, keep working!
Posted in Blog | No Comments »