2013 - 12 - 1 / 3:21 pm / otter
Oh my GOD It's December already. Where has the year gone! I've been still cranking away at some Otter features in the little time I had this past week with Thanksgiving madness. Next up on my to do list is rich text! Check it out:
I'll be making a push soon with a rough pass of this working. I still have some work to do to make it useable for stuff like typing out text, and proper word wrapping, but it's looking pretty good so far. It's going to have a lot of similar features to my never used or released bitmap font classes for Flashpunk.
I'm also slowly chipping away at my next major game, but we'll see how that pans out. I have a lot of prototyping to do, but adding features to Otter is always fun and also helps me out with prototyping stuff.
2013 - 11 - 28 / 9:35 am / general
It's been pretty quiet around here lately. I haven't updated too often this past week because everyone on my twitter feed was talking about how amazing the new Zelda game is, so I had to go out and buy it, and then spend the next week completely engrossed in it. If you're still on the fence about it, I think it's the best Zelda game I've played since Link to the Past and Ocarina of Time.
Aside from playing Zelda I've also been chipping away at some updates for Otter.
Right here you can see part of that update. Those red funny shaped objects are actually entities that have pixel colliders on them, meaning that they only collide where those pixels are. I know that pixel colliders usually aren't the best thing to do, and are often expensive on the performance side, but for some low res games they can be pretty handy.
I've also been going through and adding more image manipulation support. I've expanded the Texture class in Otter to allow for stuff like getting and setting pixel colors, as well as saving to an image. These are all basic SFML functions, but for the sake of Otter I've gone ahead and combined the SFML Image and Texture class into one thing.
Images, and soon other graphic types, will soon be able to be constructed from an otter Texture which supports all kinds of new loading techniques such as loading from a byte stream.
Just a few more things on my immediate to do list for Otter before I really start digging into an actual game project, yahoo!
2013 - 10 - 30 / 12:55 pm / general
With the release of Otter I got a brand new handful of bug reports and other things to fix, so I've been busy churning away at those over the past couple of days.
My collision code for AABB test was off by just one pixel (because I guess I needed to use >= and <= instead of just > and <, oops) so I got that fixed up. I also fixed some other bizarre bugs in the collision code that was mostly caused by me just using the wrong variable for some things.
I recently changed the input components around to allow for external sources of input. This is a pretty cool feature that I personally like a lot because it goes along with one of my methods for making computer controlled entities, like enemies or characters or whatever.
As an example, I like to code all of my enemies in games as potential players... meaning that they control themselves with input from a controller just like a player would. Instead of just moving left and right by changing their speeds, an enemy will push left and push right on its movement axis, and then other code will read that input and change the speed. For some reason I like doing this a lot because it feels like the enemies are operating under the same rules as the player -- and if I ever wanted to give players control over specific enemies or characters I could easily do that!
Even Dinobaus from Offspring Fling is internally controlled by a fake controller that is being fed input by his "AI."
This also allows for people to potentially record input over time, and then play it back by taking external control of the state of Buttons and Axes, a feature that is often cool for replays, or attract modes.
The one bug I'm currently stumped on is that there is a crash when you close a game in Windows 8 in Debug mode when using an Intel HD graphics card. A very specific weird thing that I have to hunt down... and I have no idea what could be causing it! The joys of programming.
2013 - 10 - 5 / 3:07 pm / general
I'm trying to now take care of the last couple of things on my checklist before a public beta/release of my framework! This includes the elusive debugging and command console.
This is the quick first pass of the debug console running in my Offspring Fling mock up using my framework. Right now all I can do is just type into this box, but eventually what I want to do is have commands being run from this console, as well as debug output being sent to it.
I'm also toying around with shaders as well and I think I'm starting to get a grasp on it, or at least fragment shaders, but I still have a lot to learn. Exciting!
Hey I'm editing this blog post to show the progress! Here's the console as it looks after working on it for the whole day:
Still no fancy reflection, but for now it has cool enough stuff to debug a game, I think!
2013 - 10 - 3 / 1:40 pm / general
My to do list continues to grow shorter with my framework! Today I finished getting my draw line utility functions working. Check out these beautiful lines.
Being able to draw things like rectangles, circles, and lines on the fly can be really useful for prototyping, debugging, and even effects for a game. The regular old line drawing using OpenGL results in just a one pixel thick line from point A to B, and that's no good for most cases.
For the red line I'm converting the line into a quad using some vector magic that doesn't really make sense to me yet but it works. The ends of the lines are hard edges, as it's just a quad. But the blue line is where the true magic happens. It's a line with rounded ends, WHOA! It took me awhile to figure out, but I'm drawing it using similar logic to the red line but adding a bunch of points to go around the outside of each end point of the line. It's using a TriangleFan to draw, whatever that means.
I've also been spending time attempting to document things in the code to prepare for a public "beta" release of the framework. It's coming very soon!
2013 - 10 - 1 / 6:03 pm / general
Just playing around with things today -- I figured it would be a cool test to implement some Offspring Fling stuff in my C# framework. It was surprisingly easy to pull off and only took me about 2 or 3 hours to get to this point (and a lot of that time was spent debugging some errors I made in my Ogmo Editor helper class, WHOOPS.)
Right now I'm working on the ever so annoying bug of the game rendering once before it updates once. It's proving to be pretty difficult to hunt down even when I wrote the damn thing myself (FlashPunk had this problem too.)
Oh and if anyone out there listening wants advanced access to my framework before I publicly release it then let me know. I'm looking for a handful of people that will tinker around with it! (You can use the form at the bottom of my site to contact me, or send an email to email@example.com.)
Hi there, my name is Kyle, and I'm a 27 year old kid with adult powers. I'm making video games and living the indie game developer life in Tempe, Arizona. Here you will find my thoughts, games, websites, doodles, and other stuff like that. I worked on Snapshot, Offspring Fling, and a whole bunch of other games. I also created and maintain Otter, a 2d game making framework. If you want to get a hold of me use the form on the bottom of the page, leave a comment, or just tweet at me. I try to post three times a week. Thanks for stoppin' by! You're the coolest.
- alec holowka
- bill pullman
- dev log
- game jam
- good times
- kings men
- ninja slash
- offspring fling
- screen sat
- space sushi
- december 2013 (2)
- november 2013 (15)
- october 2013 (13)
- september 2013 (14)
- august 2013 (15)
- july 2013 (10)
- june 2013 (14)
- may 2013 (14)
- april 2013 (15)
- march 2013 (13)
- february 2013 (15)
- january 2013 (3)
- december 2012 (1)
- november 2012 (2)
- october 2012 (1)
- september 2012 (4)
- august 2012 (1)
- july 2012 (1)
- may 2012 (1)
- april 2012 (1)
- march 2012 (1)
- february 2012 (1)
- january 2012 (1)
- november 2011 (2)
- september 2011 (1)
- july 2011 (1)
- june 2011 (1)
- may 2011 (1)
- april 2011 (2)
- march 2011 (4)
- february 2011 (4)
Do you want to make a Let's Play of one of my games, or a just a video featuring footage of my games? You have my full permission to do so! Even if you are monetizing your videos, you still have my full permission to use any footage from any of my games. Go for it!