Friday, December 16, 2011

Hey, I'm learning Japanese


So, yes.

I'm really bad, but I'm working at it.
Hope is to start making stuff in Japanese as well eventually.
Plus, how can you possibly go visit Japan without speaking Japanese?
You can't, without your hand being held.
No, I want to adventure.
I'll probably still make a fool of myself anyway!
Like that time I emailed Pixel about Rockfish and probably sounded extremely silly.
(because I had to use Google translate a lot--I didn't know how to say most of the things I was trying to. Fantastic!)

Plus, emotes.

Just kidding. I'm not like that... I swear!!!

Thursday, December 15, 2011

Level Editor Project

Here's a WIP screenie of my new level editor project. I'm making it because my other preferred editor, Ogmo, has been missing some features that I'd like to have.

It's a fully UI editor--You create and configure your entire project within the application. One thing I disliked about Ogmo was having to write out project XML's. It was nasty...!

I also tried to remove a lot of the redundancies and complexities of Ogmo. Some of the properties just felt pointless, and having to sort through a manual and tutorial repeatedly to find the info you want felt.. Well, unintuitive. That's why I'm placing such a heavy focus on getting it all done within the UI.

I disliked Ogmo's limited layering system, so instead my editor uses numeric z-ordering. I find this a lot more intuitive because in Ogmo I'd sometimes run out of layers to layer on my background tiles. The only way to get around this was to add in a whole new layer in the project file. A whole new layer just for maybe one or two tiles? Aaaaahhh... My level loading code got pretty nasty because of stuff like that. I also added rotation, scaling, and indefinite grid-snapping. This lets you use this editor easily as either tile-based or otherwise.

And finally there will be a "map" or "universe" editor. It's for designing the position of each level in relation to each other so that you can build your world-map visually. This is a feature I'm very excited for, because in my experience connecting levels has always been a painful and relatively blind process.

So, this post is running pretty long, but all in all this is my desired level editor. I'm very glad that I've made this and it's been very rewarding so far. Don't be fooled though, there's still much more work to do. When I'm "done" I'll release it (since it's a generalized tool) for anybody to use. Along with it I will also include the source code. Behold, my terribly kludgy Objective-C code! Har har.

See 'ya!

Also: If you want to follow the editor's progress follow me on Twitter @BlueSweatshirt(link in sidebar) or keep an eye on #OperationLevelEditor.

Wednesday, December 14, 2011

Concept: Action Tactics

Hello! Today I'd like to talk about an idea I had for a game. I'll go over the basic concept and then some specific details of how it should work. And most importantly, I'll talk about why. For one, I think this is a neat sort-of-hybrid-idea and I'd like to share it. And for two, I think it's good, as developers, to share the thought process that goes behind design decisions. So, here we go!

This idea focuses on the action(or battle, if you will) system in a game. It's a combination of what I like about both action games and turn-based games. In action games, you get high-tension combat with a focus on mechanical skill.(usually!) In turn-based games(particularly RPGs, I suppose) you get to coordinate groups of people and plan strategically. But for me, I've always wanted an action game where I control a party. That's very difficult, of course, since in an action game the action never stops. Well, this idea is kind of a cheat.

You have two groups on a playing field, presumably the player's party and the enemies. There are turns. Each whole party gets their own "phase" where they coordinate their team's actions. Within a phase each unit in a party has a turn. During their turn the player controls them like they would in an action game. Turns are limited based on time. Time, because, in an action game the action always goes on. Limiting by time is the most logical conclusion because you don't want the flow to stop. Time also happens to be a key balancing factor in most action games, so you keep that element. Overall, it helps the battle feel much more like you're playing an action game.

When a single unit's turn is done, it very quickly switches to the next unit. When everyone's turn is done there is a phase switch. There is never a pause.

Units can also "wait", forfeit their turn. Doing so adds the current time they had left to their next turn, so they can do even more actions. There are a few reasons for this. One, so that the player is not left waiting for their character's turn to end if they don't need the rest of their time. Two, to add another element of strategy to time. For instance, some powerful attacks may require more time to execute. It also rewards the player for using their time efficiently, another element of action game pacing.

For spells/skills/etc there would be hotkeys rather than menus. Menus take time to scroll through, and that really doesn't work with a time-based system.(that's why action games don't really have them!)

There would be no way to survey the battle and gain your bearings. It all just happens. During the enemy team's phase the camera does not shift focus to their units. Instead, you keep an eye on your own. In an action game you're never really afforded omniscience-- You have to observe with your own eyes, so the same concept is applied here. This also lets elements of stealth and deception come into play, which do sometimes play a role in action games.

Remember the goal here is to bring the turn-based game elements and benefits while maintaining the vibe and pace of an action game. If I wanted to do it the other way, and make a turn-based game with action game elements, I might do things like add menus to choose skills from and let the player be omniscient of the playfield. But in this case, I want to keep those action game elements. Where you're not some puppeteer, but instead directly in the action.

Tuesday, December 6, 2011

Secrets, Novella, and Nutella

Unlike the usual trend of musings and teasings, today I'm simply going to talk about what I've been doing. While, yes, it is a tease, it is not entirely a tease on game development, something which I think I talk about for the majority of my time on here. So today I'm going to talk about art, writing, UI programming, and film.

In my art class I just finished a surrealistic painting. Is it good? I don't know! But one thing is for sure: I need a ton more experience with acrylic paint before I'll be able to satisfy my personal expectations. I also need to work on my steadiness with a brush-- It's something I'm not used to using, so I tend to get pretty shaky with it sometimes.

I've also been working on my digital art skills for video games. Sure, I've done legions of sketches and stills, but it wasn't until recently that I've gotten interested in drawing/"painting" my game art rather than using low-res pixel-based art. I think it will propel the visual aspect of my games to new heights. And while, yes, I do have a certain love for pixel art and also for low-res art, it does not fit in with the kinds of games I'm looking to make. Also, I'd rather not do pixel art just for nostalgia's sake. And finally, aside from all that, it's been very refreshing and fun doing hand drawn game art! I'm enjoying it a ton.

I've begun writing a short novel in the spirit of NaNoWriMo. I missed the actual event, so I'm just doing this for the sake of it. I think pushing myself to write a 50,000 word novel in a month will seriously propel my storytelling skills. I'm just over a week in and I'm already building technique like crazy. I can't guarantee the novel will be any good, but it will exist. So far it's relatively cohesive, but we'll see if that changes. Once I'm done I'll be putting it up at my site for download.

UI Programming
Macs are awesome to write UI with. My nuances with Xcode aside, I've found designing and programming UI with Cocoa to be a pleasurable experience. Some things, like populating a table, require somewhat crazy amounts of effort in the eye of a beginner like me, but now that I've learned how all the pieces of the puzzle fit together I'm finding it to be a very effective and well thought-out model with lots of flexibility. My current project is a UI level editor for a secret game project I have an idea for. I'm making it both for the learning experience and for it's application, because I can see this game as being one that requires a ton of level design. If the level editor comes out any good I'll open-source it for all you peoples. I'm going to try to make it as user-friendly and efficiently coded as possible. *ahem* Let's see how well that works out.

I'm beginning work on a short series called "Zombie Fast Food"(name may change). You may or may nor recall me making a trailer for this series earlier this year. Yes, well, so far they're related in name only. There is zombies, food, and survivors though, I assure you. This project is being done for my film class at school. The main goal with this series is to gain experience in a wide and balanced variety of film making elements and to use my surrounding resources well. Visual storytelling, cinematography, post-production, pre-production, makeup, etc. There are lots of run-down and rickety buildings amidst a forest-like setting here, so I thought that would work perfectly for a somewhat-cliche zombie movie. It breaks off from the zombie movie cliche in that it's not really a horror or action movie, per se, it's more of a drama. We'll see how this goes.

Anyway, that's all for now! I'll post results as soon as things materialize.

Wondering how Nutella got in the title? Keep wondering.