posts dated from: september 2013

Doodle Post

Image

Dev Log: Ogmo and Reflection!

Dev Log: Ogmo and Reflection!
One of the things that is super important to me when working with any framework is how fast it is, especially in a game jam type scenario. I spent the weekend working on more utility stuff for my upcoming C# SFML framework, including more handy ways of loading up Ogmo Editor levels.

Here's what my current Ogmo Editor project looks like for my example game:

Image


And here's what it looks like after I just do a simple init with a few lines of code:

Image


OgmoProject = new OgmoProject("assets/Example.oep", "ExampleGame", "assets/");
OgmoProject.ColliderTags.Add("Solid", (int)Tags.Solid);
Game.Color = OgmoProject.BackgroundColor;

And for loading levels, all I have to do is this!

OgmoProject.LoadLevel(source, this);

That code snippet is from my Level class which extends Scene (which is sort of like Flashpunk's World class.)

This is pretty awesome for game jamming since the OgmoProject utility classes uses reflection to figure out which stuff to load into my levels. With reflection I can just create any entities that I need to from the Ogmo level files. Back in AS3 land I had something similar to this, except I had to register each entity that I wanted to have loaded in the level, but now with magic in C# I can just look up types to create based off of strings. AWESOME.

I only really do this kind of stuff for loading and initializing things though, as doing something like this during a game's update loop could be pretty costly in the performance realm. Reflection is awesome but I gotta be careful about it!

Doodle Post

Image

Arizona Indie Showcase

Arizona Indie Showcase
This past weekend the Phoenix Art Museum hosted the Arizona Indie Game Showcase along side the Art of Video Games exhibit. Offspring Fling was one of the games in the showcase, along with some other local indie games like Scale, Gravity Ghost, Aztez, and Growing. Offspring Fling is getting up there in age now for a video game, so it's not the most exciting game to demo, but I still had a lot of fun with it. There were a lot of super young kids playing the game which is a pretty unique experience!

Image


Image


Image


Special thanks to Game CoLab for the photos!

A surprising number of kids were able to make it through a lot of the demo levels, with only some of the harder execution based challenges stopping them. It's always fun to show the game to new people, but it's especially fun and terrifying to show to kids since they're never afraid to just tell you how they feel about your game.

I also had an NES controller hooked up to the game, so it was pretty funny to hand it off to a lot of kids who didn't even know what an NES was. I talked to some high schoolers about game development during the show as well, and one of them said they wanted to make games ever since they got their first console... an Xbox.

Dev Log: Setting Up UI

Dev Log: Setting Up UI
I've been stuck on this for longer than I wanted to be, but one of the main things that I want to get working for my C# framework is easy to use UI stuff. I'm talking about super basic UI though. Right now I'm not even considering mouse input, only keyboard and controller input.

Image


Basic menus are the only thing that I'm after right now. Eventually I want to have something that will allow for rapid construction of more elaborate stuff, but just organizing this code in a way that keeps it easy to use and generic is proving to be pretty difficult! My whole goal with any framework is to make to super fast for the purposes of game jams -- game jamming is the true stress test of any game development software or framework in my opinion!

I just trashed a bunch of code that I wrote over the past couple of days, and I'm changing my approach a little bit. I ran into a wall when it came to having menus inside menus and only wanting one of those menus to have focus, so now I'm reworking it so that each time I want to make a menu system I have to load it all up inside a base UIManager class. That class is a Component that can be added to any Entity in the game, so all I have to do is have an Entity in a Scene with that Component. Maybe that sounds a little complicated... but I think I'm on to something here! I haven't been able to find many resources on how to go about doing this though, so I'm just flying blind.

Not the most exciting update in the world, but it's pretty hard to make UI coding exciting.

Doodle Post

Image


Trying out painting stuff in Manga Studio!