Note to GDC attendees: amazing Japanese snacks are available at the walgreens on market st <3 (Today)
2015 - 2 - 21 / 3:07 pm / general
I've been working away at getting some bosses working in Super Sky Sisters. I don't know how to embed a gifv from imgur so you'll have to click here to check out a super cool explosion.
Over the past year I've gotten more into using coroutines for complex behaviors and "cut scenes" in my games and my conclusion so far is that coroutines are the most amazing thing ever for game development. Back in the days of Flash I actually made my own version of coroutines (kinda) by making my own scripting language that was able to execute code over the course of multiple frames, but with C# and Otter I can just keep using the same code and have it just do the whole magical "yield return" business.
Working on having three bosses in the game including this big worm snake guy. I'm making use of Otter's Skeleton and Snake components which can take a bunch of entities and move and transform them in various ways to make big monsters. This is a system I've wanted to make for a reaaaallly long time but I finally figured out how just a few months ago.
I'll be at Game Developers Conference next week so if you want to play a round of Super Sky Sisters be sure to find me! I'm hoping it have it done shortly after GDC time and release it as soon as I can. It's been a lot of fun working on a really small project that I feel like I can just mess around with. I think it's been improving my work habits and my attitude a lot, so if I can just figure out how to keep that up then I think this will be a pretty good year productivity wise.
I'm still planning on sharing a bunch of stuff from this game once I feel like I have time to dig into blog posts more. There's a lot of source codes and tricks and shaders that would be cool to share!
2015 - 2 - 17 / 3:27 pm / general
Sorry it's been so quiet around here! I've been in a pretty heads down headphones on kinda zone lately which has been pretty awesome. I've been hammering away at Super Sky Sisters to get to ready to show to people at Game Developers Conference in just over a week! The latest thing I've been tackling is boss battles.
I'm using Otter's Skeleton and Bone components for the construction of big boss monsters to fight. They all abide by the classic video game trope of dying after all the eyes have been destroyed. Right now only one boss is functioning but I want to try to have three different bosses in the game by the time it's done.
There are some cool things I've been discovering along the development of this game that I do want to talk more about at some point soon (especially if I want to hit my blog post quota for the month.) I've been pretty focused on working on the game though and haven't really dedicated any brain power to writing up more detailed posts.
Also I'm still using toggl and I've made pretty good use of Trello for this project as well. As of right now things are going pretty well and I've been really focused these past few weeks!
2015 - 2 - 11 / 2:32 pm / general
Sorry about the silence on my blog lately but I've been pretty heads down getting a lot of stuff done on Super Sky Sisters, my two player action co-op game! I'm planning on having the game totally playable by the time the Game Developers Conference rolls around early next month, so I've been pretty focused on it.
Here's what it's been looking like lately:
I'm planning on going into a bit more detail on some things like how I'm rendering particles and the sky background for this game because I have some cool shader stuff going on. Also rendering those big red spiky blocks (or stamps as someone has called them) involves a neat shader trick as well. Back to work!
2015 - 2 - 4 / 4:10 pm / otter
In case you didn't know I have a free to use open source 2d game making framework named Otter. It's built on top of SFML.NET and uses C#. Here are some recent changes available in the dev branch!
* Color.AddCustom() and Color.Custom() added. This is a handy way to define custom colors by Enum and later retrieve them. I didn't like making my own static colors class for each project to keep track of my custom colors, so I added some functionality to the Color class.
* BitmapFonts have been almost finalized. They should be usable now for the most part and you should be able to import fonts from a handful of different editors. You can check out what editors are supported in the class itself with the Enum BitmapDataType.
* RichText has been updated and fixed once again. I guess I've been doing kerning wrong all this time and I think I finally have it corrected. RichTextCharacters also have some new values to play with like their X and Y offset positions, scale and rotation and more.
* Added Enum.HasFlag() as an extension method. This is a handy way to check if an Enum with a [Flags] attribute contains a specific flag. I guess you can use this if you're not comfortable looking at the bitwise operators or whatever they're called (I sure am not!)
* Shader.AddParameter() is now available to register your shader parameters as an Enum. Now you can just define it once and use the Enum everywhere which should reduce pesky typos when working with shaders.
* StateMachine has been scrapped and StateMachine<> has been upgraded a little bit. It's now possible to use a stack of States in a StateMachine<> and it will run the top most state. Also now if you call ChangeState (or if you push and/or pop states) during a StateMachine's update function the StateMachine will wait until the update has finished before applying the state change!
* Fixed a typo in the Shader class whoops (SetParamter?)
* Surfaces now have their Display() function exposed. This is crucial in using a Surface that doesn't render at all, like if you're using a Surface as input to a Shader. Without calling Display() the texture will be upside down.
* Updated Collider and Entity and Graphics with more stuff like SetPosition(), SetOrigin(), and other handy stuff.
* Surface.SaveToFile() will now automatically save with a timestamp file name as a png if you don't specify an output file path. Handy for taking a bunch of screenshots during a session.
* NineSlice has some new utility functions like SetBorderPadding. I found it easier to define the areas of a NineSlice object in this way instead of trying to figure out what the bounds of the rectangle inside the texture was.
* RichText now will always round its origin since setting the origin to a 0.5f value results in blurry text!
* Fixed a bad bug in the PolygonCollider which resulted in the collider not using the transformed polygon for collision checks.
* Added 3D Audio support thanks to Fruckert.
* Lots of little bug fixes and tuning changes here and there.
Once again this is all available on the dev branch. I'll be pushing a whole bunch of changes to main branch as soon as I can sit down and write some documentation up for the new and changed stuff.
Hi there, my name is Kyle, and I'm a kid disguised as a grown up. 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
- sky sisters
- space sushi
- february 2015 (13)
- january 2015 (14)
- december 2014 (14)
- november 2014 (13)
- october 2014 (14)
- september 2014 (14)
- august 2014 (11)
- july 2014 (10)
- june 2014 (13)
- may 2014 (13)
- april 2014 (13)
- march 2014 (14)
- february 2014 (15)
- january 2014 (15)
- december 2013 (14)
- 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!