Worst-case scenario: the UEd Goblin wipes the map and burns down your house.


From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search

First article/code sample[edit]



Well, since my mod has shut down shop (*sniff*), and since it is summer and I currently have nothing that resembles a life (for various reasons I won't discuss), I've decided to go ahead and make a wiki page to share code samples which I have created over the years, possibly some tutorials or something. Who knows. Or maybe I'll just forget about it and this will be the end of it, lol.

Once I get some useful content lined up, I will probably make some modifications here. In the mean time, I will post a bit about myself and my experiences, for anyone who might not already know (which is probably most people).

My first experience with UT development was mapping. Why, I dont know. Probably because I have always been artistic (believe it or not) and so it only seemed natural to begin level design. I followed the tutorials at PU. I vaguely remember the experience now, but I know that it was fun, and appealed to me. Later I followed some of Angel Mapper's tutorials, which have helped tons of people. Later on I got to help her out with uscript (a little bit), which is great (makes you feel all warm and fuzzy inside :)). My first attempts at mapping were..lackluster at best. I was one of those who attempted to make "another deck16 remake" to which I will never speak of again. The BSP was horrid, the design sucked (but was true to the original, sort of), and all of that good stuff. I'm proud of Teddie for making his Deck17 so great. Speaking of whom, where has he gone? Is he alive? I hope his family is well.

Anywho, next I moved on to Viridian 2003. I would like to take what credit there is to take for myself, but an Atari forum member named GUI was a big inspiration to the design of the map (dont confuse my suckyness with his skill). However, a lot of people apparently enjoy the map, which can be found in various locations, such as Faster Files.

After that I started learning to model, which I found substantially more difficult than it was worth (probably due to me over thinking). I subsequently stopped modeling, and thus quit mapping (the two seem to go together to me). Besides, I was becoming a decent programmer.

Speaking of programming, uscript was my first language. Actually, Java was my FIRST language, but I learned uscript concurrently, and have since forgotten 99% of what little I learned of java. No offense to java programmers, but I cant find a use for java outside of the internet. My first project in uscript was a flag mutator for UT99, which modified the flag textures to be custom for our servers. It was pretty hard at the time, but looking back it was really very simple (and my implementation sucked, heh).

My next venture was in to cheat protection for UT99. I wrote a custom cheat protection for our server (I was co-admin). The protection was pretty decent, but I'll admit that at first I had no idea what I was doing. Once I had everything figured out, it was a different story, however. I dont want to get in to any specifics here, however.

At the same time, I developed a VB.NET program (yeah, I know) to parse the server log for entries related to my protection, so that the events could be stored in a database and sorted by player or IP, enabling admins to track and manage player's activities more easily, without having to sift through thousands of lines of log, which REALLY isnt fun. Later I ported the program to C++. Actually, it was managed c++, (.NET), so it wasnt really that hard, lol. Most of the UI was copy/paste back into Visual Studio, and the code porting was fairly easy. The hardest part was the if statement, in VB you type "If" and in c++ its "if" and every time I went to change it, I kept typing "ff" (changing the I to an f). I repeated this mistake almost EVERY TIME, lol. I blame the right half of my brain being bored and messing with me by manipulating my left hand to type an f instead of an i. It does that from time to time. Never fun when you're driving home...

Moving on, lol. I also made a modified MapVote mutator for UT99, called x3dfxMapVote, which apparently is pretty popular. It adds 8 programmable buttons to the UI to allow you to vote for mutator configurations (set by the admin), as well as the normal voting for which map. Some other small changes have been made to the code, including some minor replication fixes, but no other major changes. I still support it (although the feedback I get is few and far between, so bug fixes usually take ages). You can find news and updates on the Post in BDB's forum which he made sticky. :) I do give out the source to anyone who asks, incase there are bugs or..whatever. There are probably lots of bugs, lol. Most of which may never get fixed because I dont know they exist.  :rolleyes:

After the UT99 hacks got out of conrol, I decided to throw in the towel and move to UT2004. I had no experience with the game (except mapping for UT2003, which was a big help, but I sucked). So to get my feet wet, I decided to join a Mod. I found a recruiting post for Eden Eclipse, and sent them a mail to apply. They got back to me, and asked what I wanted to do. I started to become an LD, but upon realizing (again) that I suck, I decided to try to join as a programmer, lol. That worked out very well. Within a month or so I was the Lead (not to brag, but that's pretty good!). Actually, I was the only one willing to do the work of lead, and the current lead was leaving, lol. But still...

Anyway, so that's where I've been for a little over a year now. We produced a demo (two versions) for the MSUC contest, we were even finalists in phase 4, which we are very proud of. The mod, however, was too big, and lacked reliable people, and so we werent able to develop everything as much as we had hoped. After much struggle, the project has been put aside (until it can be completed properly). Most of the core members will probably stick together. I may follow them, I'm not really sure just yet. Doing so would involve switching to the Doom3 engine, or whichever is decided. Not sure I want to do that, but who knows?

So anyway, being a part of a single player mod gives you a lot of experience (especially when you're the lead and doing a large portion of the work). I dont take credit for all of the code, as I had a lot of help from some really great people.

Recently I have begun making my own game engine in c++ (unmanaged, real c++) and directx9 (also unmanaged), which maybe I will talk about here later on. There isn't much to it yet, as I'm still trying to get my head around the whole thing at once (which is very painful, really). Once I get something decent, I might post samples.

So while I have some free time, I figure I might as well do something useful with it (right?). Anyway, I've written more here than I expected to. I'm pretty wordy usually, and my posts turn into essays pretty fast, lol.


MythOpus: Welcome To The Wiki :D

Blueneptune: Hey Bonehead316! You remember me, right? Of course you do; I'm your favorite AI coder :D Good to see you're still in the business ;)