Updates: May 2016

May 15, 2016 at 7:03 pm (Computer Science, Java, memory palace, Programming, Rant, Thinking) (, , , , , , , )


It’s been a while since I’ve posted about my recent endeavors outside of painting (this is by design). There’s been a fair amount of things keeping me busy and stressed. That being said, I’ve started putting together and working on my goals for the next several months. A large part of this will be getting my full-stack technical skills back up to a competitive level. I’m going to be focusing mostly on my Java skills as well as commonly-used libraries, since it’s been a while.

As part of this, I spent a bit of time building a small app to back up my development files. Mostly because I needed a good, automated process and didn’t want to go shopping for an app. I needed something that can backup different sets of files at different times, so I could selectively backup specific projects and images, but also my full dev repository. It seems to be working according to my tests, but I’ll be trying it out soon to find out.

I also plan on picking up Python. I think I will use Python 3, although I want to be knowledgeable of the differences from 2 to 3 as well so I can read/port existing code. It shouldn’t take long to pick it up, but I have to learn the specific syntax and rules such as scoping, etc. Some sort of project would help, so I’ll be trying to think of more home automation tasks I could fulfill with Python apps.

Lastly (for this post), I plan on giving my memory palace an upgrade. I need some more rooms, and I need to finish storing algorithms in it. I’m missing tree and graph algorithms (which are pretty important), and I wouldn’t mind adding some more details for implementation as well. This should ensure that I don’t have to review algorithms, data structures, and design patterns when I need to use them; I’ll have them permanently stored.

Advertisements

Permalink Leave a Comment

Why isn’t there a new build of Zombie Mansion!?!

August 15, 2014 at 4:01 pm (Programming, Rant, Thinking) (, , , , )


This is the question that all of the voices in my head have been asking me. The general answer is this: I’ve been busy. I do have a new build that should have fixed all of the issues from the first demo build, but I keep getting distracted from verifying that it’s all ready and packaged.

What’s been keeping me so busy though? Well, a number of things. I started taking several courses on Coursera recently; this is one of the things. I’m taking courses on game theory and cognitive psychology and a couple others. So that’s taken some of my attention.

I’ve been spending some time filling in gaps of my knowledge as well. I bought a book that has a lot of general knowledge topics, so it’s led to some additional reading. For example, I’ve always had an interest in psychology, but I haven’t formally studied it; it’s usually been about reading periodicals and research papers, etc. So I read through a general overview and history of it to cover up the gaps. The theories and relationships of Freud and Jung are interesting to me as well. I’ve always been a little iffy on Jung’s research, but it’s sparked a bit of additional effort to learn more about how his distilled theories originated.

Also, I’ve been looking to help a friend out with some web programming stuff. It’s similar to what I do at work right now, but I’ve had to spend a fair amount of time getting up to speed. Unfortunately, I’ve been somewhat stretched by additional responsibilities at work and home, so I’ve been lagging behind a bit.

Man I do a lot of stuff, and this isn’t even the complete list…

Permalink Leave a Comment

Zombie Mansion: Alpha Build 1!

June 23, 2014 at 2:54 pm (Computer Science, Game Development, Games, Java, JavaScript, Processing, Programming, Rant) (, , , , , , , )


So I’ve finally gotten a build of the game working! I can’t post it yet for a variety of reasons, but I’ve sent the build out to some people to try it. It’s mostly to verify that the game works as expected and is stable. It just features the level I showed in the previous videos and a couple of extra smaller areas.

Last Saturday night I had a few panic moments when the builds weren’t working as expected. I had an issue where the resource unpacker code I wrote wasn’t actually unpacking the images from the compressed assembly; it turns out it was still trying to load them from the local directory. The issue has since been fixed thanks to all of the logging architecture I recently put in. There’s still several areas that could use more logging, but there’s enough now to sort out common issues.

Another bug that logging helped uncover was with the asset manager system. I have code that manages any images and ensures you only load one copy into memory. This helps to keep a cap on the memory usage of the software as a whole. However, there was an issue where I had slashes in the reference indices that were going the wrong way! This is a pretty common issue with programming to be honest. Devs frequently write code for their own system and then find out that nothing works on other computers or operating systems. Thankfully, the logging system helped uncover the fact that it was double loading certain resources.

Now if I could just muster the effort to change the spelling mistake I made with naming the logging variables…

Permalink Leave a Comment

Working Tactical RPG Game

May 7, 2012 at 4:44 pm (Games, Graphics, Processing, Programming) (, , , , , )


So during my search for a job now that I have a Masters degree, I’ve been working on writing code for a tactical RPG game in the same style as Final Fantasy Tactics, Fire Emblem, Suikoden Tactics, etc. I now have a working game essentially with basic menu screens, etc. for facilitating the gameplay. There is a level editor built into the game so it can be used to create maps, etc for battles, and there is a fully functional combat system which includes abilities, buffs, victory/loss conditions, and everything else you’d expect from this type of game.

At this point in time, I need to make some minor improvements (upgrade menu system, etc.) and the addition of some more features (conversation windows for example), but the main thing that needs to be done is the level design, storyline, and game art. This is probably a good problem to have, since the programming aspect is generally time consuming. I already have ideas for the storyline, although the dialogue and other details might take up time. As for the game art, I have some old sprites I’ve prepared for this type of game, but having professionally made animations could be nice. The levels could be either interesting to make, or horribly time consuming. So we’ll see how that goes.

Permalink Leave a Comment

Processing Tips Page

June 6, 2011 at 1:18 pm (Computer Science, Processing, Programming) (, , , , )


I have started writing some short guides to doing fun things using the language Processing (processing.org). You can view them here

Permalink Leave a Comment

Paper Donkey Engine

February 3, 2011 at 1:32 pm (Computer Science, Games, Graphics) (, , , , , , , , , )


So I haven’t posted in a very long time now, mostly due to me being busy with research and life. I have a few projects I want to post some stuff about though. One of them is the SpeedGame I created last September for a competition. It’s codenamed Paper Donkey and is essentially a 2D-in-3D engine I wrote in Processing. I had a teammate (Matt) for this project and so I made him do most of the game design and level creation aspect of it so that I could focus on engine coding. We didn’t really care about winning anything, but mostly just wanted the experience of working on a team to make a completed project.

The game we came up with itself was a little on the dull side. Due to time constraints, we had to trim the game mechanics to just a maze. That being said, I would consider it a huge success. I only really wanted to build an engine I could use to prototype games and I got what I wanted. The engine code is pretty nifty and it works great. There is a slight performance issue though since I do some pretty naive collision detection and other things like that. Also, a couple of the features ended up being really glitchy so I removed them from the levels.

The engine renders 2D sprites in a 3D perspective. So the level geometry is represented by floor and wall tiles while the characters are rendered as billboards that always face the camera. It has a pretty decent animation system, but no editor so the files have to be created by hand to specify animation sequences. The same goes for the levels because I didn’t bother to use my old map editor formats for this project. It has been a while since I’ve worked with the engine, so I’ll have to take a look at it in order to post more on the exact features of it, but it was a blast to make and use. It took about a week to build and a week to make the game on top of it.

<I will edit this post at a later time and add screenshots>

Permalink Leave a Comment

Short Game Prototypes

May 24, 2010 at 11:41 am (Computer Science, Games, Graphics) (, , , , , , , )


I’ve been using the language Processing to put together a few quick game prototypes lately. It’s surprisingly quick to get decent results. The screenshots here took a few days of casual work to make. The first one (which took more time) is a 2D-in3D, turn-based RPG game. The technical aspects include a nifty camera to pan around, a map loader, billboard sprites that always face the camera (or can just rotate in the camera’s direction), and object picking.

The second one is a RealTime Strategy (RTS) engine similar to Baldur’s Gate. Each unit has an action gauge that charges up and allows them to attack enemies. There’s a basic avatar system (click on the HUD to select that unit), some basic AI, camera panning by moving the mouse to the screen edge, event triggers, and the basics of moving and attacking for the units.

Permalink 1 Comment