Logcat and multitouch!
I've been working on a Runescape private server in C# recently. Most others are in Java (I know of only one other that's in C#), and they are all horrible abominations under the hood. I decided to write a better one in C#, so now I am.
Runescape's packet protocol is very (and intentionally) convoluted. They use either little, "middle," or big endian, in addition to "Special A, B, C" datatypes (they're just simple arithmetic operations). The use of these is seemingly random--packet 105 may have three shorts, but each short could be a different endian order, etc. However, packets will always be consistent--packet 105 will always have three shorts with that exact order.
After finishing the login process, I wrote the player movement/chat code. Then I wrote the Item code--in such a way that it makes it easy to write a subclass of Item and, using reflection magic, automatically populate a list of "special" Item classes. In addition to that, I had to load Item information from the Runescape cache, which was annoying as hell. I eventually just modified the source of the client to, when it loads the items, write their information to a file, since I didn't want to have to work out reading from the cache myself.
My latest accomplishment is getting NPCs working. They can't move or attack yet, but they can spawn and whatnot. It's easy to write custom code per-NPC; just write a subclass of NPC and override the GetIDS() method, which returns an integer array of the IDs this NPC is written for.
Picture of NPCs:
The server and client are version 317, which is a very, very old version, but from my experience, its packet protocol is the most documented.
Added NPC chat (as well as the ability to do things when the player clicks the NPC).
I'm currently working on a graphics abstraction layer (GAL) for the Parrot Virtual Machine. The cool thing about this is that it allows other languages running on Parrot VM to use it.
I write it once, and people can use it in any language using the Parrot VM. This shit is amazing!
Ugh, I'm at the point in my language where I've got to make a line-by-line debugger of some sort or SOMETHING :( it's hard to figure out where my code fucks up.
Blurgh just found a 'deal-breaker' with my language. Back to the drawing board :(
Actually maybe not.
touched up the pissing mini-game, this is on hard mode, which is probably induced by drinking a lot, sleep deprivation, or a combination of both.
haven't gotten around to the cock art yet, and it wouldn't be very SFW
Fraps fucked up the mouse cursor or something. Also NPC->Player dialogue does work, I just didn't show it.
Cleaned up the texture weight code for my terrain, looks a lot better now:
ewww jpg compression... anyone know of an image host that doesn't jpg compress everything?
I don't see much jpeg rape
I think I'm going to make a Pokemon clone to start out, I haven't really gotten into making things move yet, but I guess I'm fine right now.
I've been using GWEN for a little while now, and it's pretty great. There's just a few small bugs here and there that i've found with docking.
(it has annotations describing what's happening if you don't understand)
So i'm working on figuring out why this happens. I added an issue to the bugtracker in the meantime.
Each one of those boxes is a different function all under the same name.
Heh, someone beat me to it.
On a side note, how would I force a program that is hardcoded to connect to a remote ip, instead connect to some other ip I've specified?
Use your hosts file.
Almost done my frogger clone for college but the highscore table is giving me trouble <:C
This isn't getting any better.
I hate to ask this here, but it's a small question with a quick one-word answer:
What do you all use for webm recording, as seen in the OP?