RT @MattThorson: TowerFall on a mountain t.co/4iqoyUoJky (Today)

@infinite_ammo hummm well I'm definitely planning on going to vancouver if I go to PAX or not! <3 (Today)

@infinite_ammo are you guys not comin to PAX at all this time? (Today)

@theBanov @willstall jesus christ (Today)

@theBanov @willstall Oh you mean on a motorcycle? (Today)

@theBanov what the effffffff biking across america? O_O (Today)

@objectiverodeo The train takes like 3 days to get to Seattle, little bit on the long side. (Today)

Ugh I wish I didn't hate flying so much. That would make it a lot easier to decide on going or not. x_x (Today)

Aaugihgh can't figure out if I should go to PAX or not. It would just be for funsies, and I just got back from traveling now hmmmmmmmm (Today)

@jongraywb @pietepiet No way, I can't believe this. (Yesterday)

@pietepiet qt pi (2 days ago)

RT @djcoreynolan: Ahh so now I know what @Lumin0via and I would look like if we were assimilated into the @kylepulver universe. <3 t… (4 days ago)

@ComcastMike Oh, no, that would be @goldbuick! (4 days ago)

@chickysprout @dom2d waaaaaa this looks fucking fantastic! STYLIN'~ (4 days ago)

@goldbuick @comcast Yeah it's amazing how progress somehow totally reversed at some point. Bandwidth caps are ancient. (5 days ago)

@goldbuick @comcast Holy shit that's insane. I didn't think companies actually charged for more bandwidth in the US. (5 days ago)

@SteveSwink @MattThorson yooooooooooooooooooooo were you able to fix the shoulder button squish? (5 days ago)

@infinite_ammo David haven't you been watching?! DAVID. (5 days ago)

@ThemsAllTook Auugh I cant stand it. I always feel like I'm the most terrified person on the whole flight. (5 days ago)

Smooth flight: Wow flying is so cool I should do this more. Bumpy flight: FUCK THIS I AM NEVER FLYING AGAIN FUCK (5 days ago)

follow
search

2014 - 7 - 8 / 3:54 pm / general

Dev Log: Enemy Wave HUD

Dev Log: Enemy Wave HUD

Here's something that has been on my task list since forever: showing incoming enemy waves on the HUD! Originally the bottom right spot was going to be something different, but for now the incoming wave information felt like it was more important than anything else that could be there.

Image

Now you can see how many enemies are going to be coming at you in the future. The little blips on the hud scroll from right to left as time marches on.

Image

The enemies are arranged vertically depending on which spawn point they're coming from. I'm not sure how much information will be available to the player from here, but for now you can tell the size of the enemy and how many are coming up. I feel like this took me way too long to figure out, and I'm still not 100% happy with how I implemented it, but hey it works!

No Comments

2014 - 7 - 5 / 3:56 pm / general

Dev Log: Overworlds

Dev Log: Overworlds

Getting back into the swing of game development has been a little tougher than I thought. Especially since July isn't exactly going to be a calm month for me to really dig into stuff. This 4th of July weekend is pretty busy, and I'm still right in the middle of it. After I'm heading up to EVO with a bunch of folk, and then I'm spending some time on the east coast after that. Traveling and getting work done doesn't really go hand in hand for me, so hopefully I can still salvage some time to get some game development in.

Anyway, my recent developments have lead me into making some sort of overworld map for my game. As I started to work on it, I quickly realized that I have no clue what I'm doing. I haven't really worked on anything like this before, and I'm slowly figuring out how to properly structure and manage it all.

Image

Basically the map screen is going to be some kind of turn based system that will determine what kind of encounter you go into next. The player will be able to choose where to go with their character, and there will also be enemy forces moving about in the area attacking things. The main issue I have right now is that I think I know how I want everything to work, but I have no idea how to code it.

I've never done any sort of turn based anything before, so I've been spending some time researching the internet for any leads. I found a few quick examples, but not really any sort of examples that come with source code to look at. I find it very difficult to go from an abstract concept to actual code, and a lot of times these examples or tutorials I find just explain the broad concepts of a system and don't really dig into the details which is where I always get lost... but hopefully with enough just messing around in a code window I can stumble onto the right answer.

No Comments

2014 - 7 - 3 / 11:30 am / doodle

Doodle Post

Image

No Comments

2014 - 7 - 2 / 9:02 pm / doodle

Doodle Post

Image

No Comments

2014 - 6 - 30 / 4:55 pm / otter

Quick Otter Camera Example

Quick Otter Camera Example

A question about the camera in Otter came up on the forums, and I whipped up a small example that could be useful to take a look at for getting started with Otter in general. The whole program is just this little chunk of code:

using Otter;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CameraTestThing {
class Program {
static void Main(string[] args) {

var game = new Game("Camera Test", 320, 180);
game.SetWindowScale(4);
game.Start(new TestScene());
}
}

class TestScene : Scene {

public TestScene() {
var grid = new Grid(1000, 1000, 20, 20, Color.Grey);
AddGraphic(grid);
Add(new Player());
}
}

class Player : Entity {

Vector2 speed = new Vector2();
Vector2 targetSpeed = new Vector2();
Vector2 maxSpeed = new Vector2(2, 2);
float accel = 0.01f;

Axis movementAxis = Axis.CreateArrowKeys();

public Player() {
SetGraphic(Image.CreateRectangle(10, Color.Red));
AddComponent(movementAxis);
}

public override void Update() {
base.Update();

targetSpeed.X = movementAxis.X * maxSpeed.X;
targetSpeed.Y = movementAxis.Y * maxSpeed.Y;

speed.X = Util.Approach(speed.X, targetSpeed.X, accel);
speed.Y = Util.Approach(speed.Y, targetSpeed.Y, accel);

X += speed.X;
Y += speed.Y;

Scene.CenterCamera(X, Y);
}
}
}


Compiling that with the latest dev version of Otter gives you a simple player object that can move around a scene. The background is a grid so that you can actually see scrolling happening. This quickly shows how to set up a movement Axis, how to apply speed to an object while getting input from the Axis, and how to center the camera on the object.

2 Comments

2014 - 6 - 29 / 4:59 pm / general

More Web Resources

More Web Resources

My break from game development ended up lasting a little bit longer than I expected, but I had a good vacation in the world of web design and development. Unfortunately the stuff I worked on is totally top secret, and will be for a little while still, but when it comes time to finally reveal it I'll be sure to post about it here.

There were a few more things that I learned or picked up that came in handy during this last project and I thought I would just share a few of them again.

Tumblr Custom Theme Documentation
This lastest web project involved using tumblr as the content management system. I haven't done any work with tumblr before, but it turned out to be pretty straight forward and overall really easy to work with. Unlike Wordpress I never have to even venture into php territory. Tumblr seems to use some kind of built in templating system that takes care of everything behind the scenes. The official documentation on how to build a tumblr theme actually ended up being the best resource for getting started on it. A lot of the other tutorials I found on theme building were already outdated, so I just stuck to using control-f on the documentation whenever I needed to know something.

Tumblr Boilerplate
This is a quick and simple tumblr theme that implements all of the essential tags. This was a great place to get started and see how the various tags work along side some HTML and CSS. There was one guide that recommended starting with this, and I used it as a guide when I was starting on a custom theme.

Open Graph Protocol
If you want posts to be shared around properly on Facebook then having open graph meta tags in your HTML is essential. You're able to define things like the preview image, description, and title of your articles, which can be very important for when your awesome web page finally goes viral with all the kids. Facebook and other social media things can parse some things from your site automatically, but sometimes the layout of your site will cause it to parse the wrong things so these tags are a way to overcome that.

Social Media Templates
Related to the Open Graph tags, here are templates that cover the rest of the core social media tags. The meta tags for Twitter and even Google+ are available here to copy and paste into your web zone. Once again just useful for controlling what info shows up when people share your site across various social media sites.

Tumblr Static File Upload
When working with a custom tumblr theme you have two main options when it comes to hosting resources. You can either host them all remotely on a separate web server, or you can just upload all of the files to tumblr and have them worry about it. I found that my work flow was best when using a remote server for awhile, and then when things were more concrete I migrated over to the tumblr server. Using the tumblr static file upload you can host all of your files directly on tumblr, but it comes more of a pain to modify and reupload files (like css, font files, images, etc.) Ultimately I think using tumblr's servers for the final product is the best bet.

Firefox Cross Domain Font Fix
This one is pretty technical, but is super important when it comes to using the @font-face properties in CSS with a custom tumblr theme. Firefox cannot load fonts across domains without explicit permission from the host domain. Since the tumblr servers do not have this permission properly implemented, any custom fonts you try to load with the @font-face property will just not load on Firefox. Apparently this is the correct behavior, but kind of annoying since Chrome doesn't seem to care at all where fonts come from. The fix is simple enough though. By encoding fonts as base64 data directly into the style sheet Firefox is able to load the font no problem.

I think that's all for now! Hopefully today I can dig back into game development work, but I had a lot of fun brushing up on the latest web development action.

No Comments

about

About

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.

facebook

videos

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!

contact

Your message has been sent! Thanks :)
SEND MESSAGE