Galcon 2 – beta13 – It’s like an MMO with Leaderboards!!!

Hey, a ton has happened in the past two weeks. The most important being, my first baby goat “Petunia” was born! Here’s a pic, of me in my office. At the bottom right corner you can see some notes I was making about what database backend I was going to use for Galcon 2.

Also, I made a new beta of Galcon, this time with the Galaxy Map integrated with servers and leaderboards! So get out there and be the first Grand Admiral of Galcon 2!!* Backers can download it for Windows, Mac, Linux. TestFlight / iOS will get email notifications shortly.

Here’s a picture of the new lobby system on a screen size that’s smaller than an iPhone:

Have fun!
-Phil

* Leaderboards subject to reset without notice. Also, leaderboard algorithm is going to be changed over time. That’s why it’s called a “beta”. Though, let’s be honest, this is more of an “alpha”.

Posted in galcon2 | Tagged | Comments Off

June #1GAM: Islands and Messages

The other day, I had merely a walking Castaway demo for Shipwrecked, my June One Game a Month project.

I spent a little more time on the controls than I thought I would. It didn’t feel right. I tried something simple at first:


if (an arrow key has been pressed since the last update)
{
velocity = 1.0
player.setDirection(the direction of the arrow key)
}
if (an arrow key has been released since the last update)
{
velocity = 0.0
}

It worked well enough. The Castaway moves at a constant speed until the key is released, then he comes to a complete halt.

The problem was that if you are switching directions periodically, sometimes the velocity drops to 0 even if you feel like you should keep moving.

So I changed it. Now, instead of checking for key release, I check the status of all four arrow keys. If none of them are currently pressed, THEN set the velocity to 0.0. Otherwise, allow the movement to continue.

It feels much better.

I’ve also added some message routines. Basically, if there is a message to display to the player, it will end up in a queue with a timer. When the message is visible, the timer ticks down to 0, and it removes the message from the queue for the next one. It took me all of 15 minutes to implement.

And instead of a giant purple emptiness, I added some tiles.

In this Shipwrecked message queue video demo, you can see all of the elements of the project in action, including being able to read a few lines in the Castaway’s diary:

I simply painted the tiles down using for-loops, so the Castaway could walk on water right now if I let him.

So the next big things to do:

  • Add a map. A big one that spans more than a single screen.
  • Make the camera center on the Castaway as we explore the map.
  • Give the player something to do other than explore the map.

My worry is that I’ll get to the end of the month without any game play. I still haven’t exactly figured out what actions the player has, nor what the ending looks like.

It’s partly because I’m worried that I’ll be too ambitious. For instance, if I implement the ability to get heat stroke, it means the player needs to be able to avoid it, which means finding or building shelter. Do I have time to implement the ability to collect resources and build a lean-to (as well as draw one that looks half-decent)?

These last few things have come together quickly. Maybe I’ll get lucky and won’t have to compromise entirely on the concept of a Castaway surviving on a desert island after a shipwreck.

June #1GAM: Islands and Messages is a post from: GBGames - Thoughts on Indie Game Development

Posted in game design, Game Development, Geek / Technical, Linux Game Development | Comments Off

Qk’s Squirrel “Reloading Scope” Guide

This is a preliminary document. A first pass, a draft, talking through implementation notes from a piece of a project with the working name “Qk”. It might be something cool. I’m not telling. ;D

The programming language seen below is squirrel, but this specific nuance is something in my engine.


Reloading Scope

“Reloading Scope” is another name for the Global Scope of a script file. Take the follow code:

Pos <- [ 0.0, 0.0 ]; // Global Scope Global Var - Reloaded every change //

function Init() {
}

function Step() {
	local Pad = qkGetPad(0); // Get GamePad #0 as a Local Var (stack) //
	Pos[0] += Pad.LStick.x;
	Pos[1] += Pad.LStick.y;
}

function Draw( m ) {
	qkClear();	
	qkDrawCircle( m, Pos, 30, RGBA(128,255,128,255) );
}

The variable Pos is in the global scope. Any and all code found in the global scope will be executed every time a script file is changed (automatically reloaded). So every single time this file reloads, Pos will reset back to [0,0]. This may not be the desired effect, as you may want the position to stay the same across changes.

To remedy this, simply move the code in to function scope.

function Init() {
	Pos <- [ 0.0, 0.0 ]; // Function Scope Global Var - Reloaded only during Init //
}

function Step() {
	local Pad = qkGetPad(0); // Get GamePad #0 as a Local Var (stack) //
	Pos[0] += Pad.LStick.x;
	Pos[1] += Pad.LStick.y;
}

function Draw( m ) {
	qkClear();	
	qkDrawCircle( m, Pos, 30, RGBA(128,255,128,255) );
}

REMEMBER: Both of these snippets effectively do the same thing, creating a global variable called Pos (in the root table). The only difference is the idea of “Reloading Scope” presented above.

Constants in Reloading Scope

For the most part, constants should be placed in Global Scope. This way, if you decide to change their meaning, the changes will affect all future references to the variable.

const PI = 3.1415926535897932384626433832795; // Just in case //

function Init() {
	Pos <- [ 0.0, 0.0 ];
}

// ... //

“Hard-coded” Data and Delagates in Reloading Scope

When code is dynamically reloaded, “hard-coded” isn’t really that “hard-coded” anymore. :D

Delegates should be set immediately after the data is populated INSIDE the global scope. This way, during subsequent reloads when it trashes the old data, all your standard functions and default values continue to work correctly.

Character <- {
    _tostring = function() {
        return name + " " + state;
    },
    name="not specified",
    state=0
}
 
Player <- {
    name="Stranger",
    state=10
}.setdelegate( Character ); // Can do it here, or as Player.setdelegate //
 
print( Player + "\n" );
 
// Output: Stranger 10

File Dependencies in Reloading Scope

Understanding Reloading Scope is important due to the way automatic dependencies work. All files that depend on this file will be flagged and reloaded at the same time. So changing this file may inadvertently cause another file to reload.

Each file is reloaded at max 1 time per refresh in Usage Order.

Usage Order is the order in which the files were referenced by each-other, starting with the root file (main.nut). Issuing a “requires()” command DOES NOT load a file, but instead queues it to load immediately after the current list of files have finished loading.

This is fine for code written for Function Scopes, but can be troublesome for Reloading Scope. After all, the newest version of a constant or class defined in a later file will be inaccessible/incorrect until all files have been loaded.

To work around this, push a function on to OnReload array. All functions in the OnReload array will be called immediately after all files have finished loading due to a refresh.

OnReload.push( 
	function() {
		MyPICopy <- PI;
	}
);

const PI = 3.1415926535897932384626433832795;

TODO: Consider priority model, giving functions inside OnReload a weight to control who gets called first/last. i.e. qkOnReloadCall( function(){}, Weight ); // Weight is optional. Default 0, highest first //

TODO: Consider “include()” function too which, if supported by squirrel compiler and VM, recursively compiles and executes code files on demand before finishing other ones. Need an #ifndef #define #endif construct, or #pragma once like function (global array of parent files, updated according to depth). Discourage the usage of this, but support it for hackability. “include()” should be thought of and used like a macro. “dofile()”. Overload sqstdlib dofile()?

Posted in Qk, Squirrel, Technobabble | Comments Off

June #1GAM: We’re Walking, Here!

Last time, I introduced the Castaway for my One Game a Month project for June. I’ve since created a few more poses and some basic walking animations.

Here’s a June #1GAM video demo I quickly put together:

Next up is giving the player direct control through the arrow keys, which means changing directions and needing to set the right frame when standing still.

And after that, I think I’ll add some basic text displays. I like the idea of tooltips and descriptions popping up when you are exploring the world. Maybe it will tell you if you’re getting hungry, similar to how NetHack does it. Or maybe I’ll be more direct than that. B-)

Soon after, I’ll create the world to explore, and I’m thinking about cutting back on line-of-sight since I might not have enough time to really play with it.

June #1GAM: We’re Walking, Here! is a post from: GBGames - Thoughts on Indie Game Development

Posted in game design, Game Development, Geek / Technical, Linux Game Development | Comments Off

Feminist Frequency: New Video Game Trailers Featuring Women at E3 2013

Feminist Frequency: New Video Game Trailers Featuring Women at E3 2013:

femfreq:

Yesterday I tweeted about how exactly zero of the next generation games presented at Microsoft’s Xbox One E3 event featured female protagonists. A bunch of gamer dudes on Twitter decided that they did not, shall we say, appreciate my pointing that out. But Microsoft’s Xbox One event was not…

Comments Off

Why Should I Compare My Efforts to Yours?

Often people become indie game developers the same way anyone first becomes an entrepreneur.

They fall into it and don’t realize just how big of a job they really have.

It’s one thing to be a hobbyist. You are doing game development for the love of doing it. You make games you want to play, and if anyone else likes it, it’s gratifying, but it’s gravy on top of just spending time on something enjoyable. And if you make a few bucks, so much the better. Now your hobby is helping you pay for pizza and beer.

But if you want to do it for a living, it’s harder.

You may not realize it at first. You might think, “Duh, I know that running a business is different from enjoying a hobby. I’m aware of the difference.”

But you don’t. Unless you’ve got the experience, you can’t prepare for how much pain and effort there is, how much anguish and despair you might feel, and how stressed out you can be due to spending time handling all manner of business-y things and not getting to the “real work” of game development, the whole reason you decided to pursue it full-time.

You don’t know the struggle to believe in your own self-worth when another month goes by in which you haven’t made enough income and you have a family to support, worrying that they are secretly wondering when you’re going to give up “playing with the computer,” go find a “real job,” and place your priorities in the “right” place.

You don’t know what it is like to work, work, work, only to feel like you haven’t made enough progress to justify all of the sleepless nights and bloodshot eyes and missing out on social experiences, and all you know how to do is more work.

Every once in awhile, you’ll pull yourself away from your wheel-spinning and isolation and look out into the world. There, you’ll see huge successes like Minecraft. You’ll read about Steambirds, Triple Town, and plenty of IGF-winning games getting good press. You’ll find threads about how indies need to pursue mobile or F2P or how the only way to make money on PC is through Steam (despite successes like Minecraft).

And then you look at your own efforts, and you start to compare and contrast.

Unfair Comparison

Above: my May One Game a Month project, Hungry Frogs looks quite terrible, especially in comparison to something like Incredipede.

Am I Doing the Indie Thing Wrong?

Being an indie game developer means choosing your own path and following your own dream. In chasing it, though, sometimes it is hard to look at everyone else and not wonder if you’re missing out on some opportunities.

The mobile games space has grown to the point that we’re simply calling them games now. Free-to-play is essentially shareware taken to an extreme, but if you are trying to make a game that requires a purchase to play, good luck. Customers have the option of playing multiple new, effectively-free games per day. Everyone is having a hard time getting their games noticed, and your entire sales model might be a relic that is making it harder for yourself.

Ouya and Occulus Rift are the new hotness. It’s exciting to have another console that isn’t controlled by a company such as Microsoft or Nintendo, and finally having virtual reality headsets at a low-cost? What took so long?

Making games for tablets, creating your own alternative reality gaming, utilizing ads and in-app purchases, accepting donations, successfully driving a Kickstarter campaign, having a larger supportive network of indie friends…all of these things seem to be what all of the other indies are doing.

Why aren’t you?

Following The Money

The April issue of Game Developer magazine (R.I.P.) featured the annual salary survey. It still blows my mind how much average programmers and artists made, considering I’ve always heard how you can make more money programming bank software than working in the game industry. But of course, these numbers come from the major studios for the most part.

This salary survey also featured their fourth annual “Indie Report”, which surveyed independent developers and teams.

And found that they make almost nothing from their efforts.

Their average income was less than $25,000. Only 5% of them made over $200,000 from their games, while 78% made less than $30,000. Half made only $500 or less.

And these numbers are lower from the previous year, meaning that indies today are making less of a living than they were in the past, although to be fair there seems to be a lot of fluctuation from year to year.

But seriously, most indies surveyed (they collected data from 422 indies around the world) said they made less, sometimes much less, than what someone working a minimum wage job could earn in the United States.

Regarding the App Stores that everyone either loves or hates, we’ve all heard about how hard it is to impact your sales success there. Either you get featured or you don’t. It turns out that getting featured isn’t everything either, according to Jeff Tunnell’s post We Can’t Make It Here Anymore. At one point he talks about Color Sheep‘s success:

In spite of winning the two “app store lotteries” and getting featured by both Apple and Google along with stories in the New York Times and on huge traffic YouTube channels, their game has only sold around 50,000 copies, which has grossed $35,000 (after app store cuts). Considering that they spent $10,000 to launch and market their games at PAX, they have netted $25,000 before paying their wages.

At the other end, we have occasional successes. Awesome Guy Andy Moore recently posted Monster Loves You! By The Numbers, sharing the expectation-shattering sales numbers of the game he worked on in collaboration with Dejobaan Games and Other Awesome Guy Ichiro Lambe. Here’s a game that wasn’t really like anything else, that they nurtured from concept to delivery, and it worked out fantastically for the developers.

But even these successes make you wonder if your own efforts to make Yet-Another-Match-3-or-Minecraft-Clone is a waste of time.

Wait, You’re Not the Money?

Until I read the Game Developer salary survey, I was worried that I was missing out. Obviously most game developers wouldn’t be making enough money to do more than pay for an occasional meal, but a good number are probably doing well, right? I felt as if every time I looked up, I saw another example of an indie darling’s blood, sweat, and tears that finally got recognized and had paid off handsomely, or at least enough to pay to move out of his/her parents’ house. Every time I saw a demo of a game that people were praising, I thought I was looking at a game that was killing in the marketplace.

But the truth is, you can’t tell how well a game will sell from the look of a game, the charisma of a developer, or the amount of press dedicated to either one.

You can’t tell what the developer’s quality of life is like, and whether or not he/she is someone you really want to emulate.

And you can’t tell what a developer’s goals are. $20,000 would be plenty for someone with a lifestyle like Jason Rohrer, but is it a match for your desired lifestyle?

Everyone is making it up as they go along, so it isn’t as if some people have figured out how to live your life better than you are.

So why should you stress yourself out about not being like those other game developers?

Comparisons Add Stress

While running an indie game development business means understanding the trends and market demands, it doesn’t mean hopping on the bandwagon. Just because everyone else is doing it, it doesn’t mean you have to follow along.

When I, as an indie of many hats, put on the business owner hat, I realize that there are better things I can do than worry about how other indies are doing their starving-artist performance art. If most indies are putting their games out in Steam Greenlight, or pursuing F2P on iOS, or raising funds on Kickstarter…well, most of them aren’t making a sustainable living. No market, platform, or tool is going to magically make things all better in your struggle to earn enough to support yourself and your family while doing what you love.

And looking at the ones who actually are successful? Well, they already did it the way they did it. Following their lead might mean sharing in their success, but it often means getting scraps along with the other bajillion indies who are also going to jump into the now-open space.

Sure, you can say that some people get lucky. Notch has repeatedly claimed luck played a big part in the success of Minecraft, and I’m sure there was some luck involved in the success of Monster Loves You!, but I also think that putting love into what you do helps a lot.

Being an indie game developer is clearly not for people who should expect to make a truckload of money by churning out game-like software, so all you can do is put your heart and soul into what you’re making. Anything less is probably going to be rewarded appropriately.

On top of it, each indie has a different past. Notch has been making games for years, and some people have been doing so for decades. To compare your fledgling skills against someone who can put together a more highly-polished game in an hour than you can in a month is a good way to build an inferiority complex.

It’s fine to look at someone else’s skills and think, “I want to aspire to be that proficient and prolific.” It’s another to compare the results of your efforts to someone else’s. It will only stress you out and prevent you from being productive.

Why Should I Compare My Efforts to Yours? is a post from: GBGames - Thoughts on Indie Game Development

Posted in Game Development, Marketing/Business | Comments Off

Feminist Frequency: Twitter vs Female Protagonists in Video Games

Feminist Frequency: Twitter vs Female Protagonists in Video Games:

femfreq:

Above is a tweet I made this afternoon in reaction to the fact that none of the games presented at…

Comments Off

Copy Cars

Copy Cars is a school project me and a classmate made as a final project in tangible interaction. Here’s a video:

Comments Off

What Is Wrong With Internet Society? #BeBetterStewards

I know the Internet magnifies the amount and scale of abuse, especially in terms of misogyny, homophobia, and racism.

It’s disgusting, and it has resulted in the silence of some great people, such as Kathy Sierra, and makes it more difficult to bring intelligent and grown-up conversation to sometimes (often?) immature game industry the way people such as Anita Sarkeesian do.

But I had no idea the mindset of the stereotypical 11-year-old, entitled Halo player who loves to curse into his headset had made it into the realm of indie games and the customers who pay for them.

Cliff Harris wrote Who Would Be a Game Developer?, a post about how indies not only have to do the hard work of making a living making games but also seemingly must endure abuse at the hands of fans and customers. Apparently customers are threatening the creators of the games they paid for with extreme bodily harm and a destroyed life.

It’s bizarre posturing from the safety of a keyboard.

But it feels like another offshoot of problem fandom that seems to be everywhere. From comic and game conventions where women, homosexuals, and rape victims feel unwelcome to “you’re not a real geek/gamer/Doctor Who fan/etc” arguments that tend to be aimed at women to a culture of privileged misogyny that creates online communities in which only white, male heterosexuals ever feel welcome, it’s an ugly thing that is highly visible to everyone else.

Even if a large number of the people think it is just good-natured, “oh, you guys!” kind of Internet joking, it has real repercussions. If it happened rarely and in isolation, it would probably be enough to tell the people who are the victims of this kind of abuse that they can ignore it and get a thicker skin and don’t worry about it.

But it doesn’t happen rarely. It’s a fact of life for a lot of people, and we shouldn’t tolerate it.

There’s an entire vocabulary around these kinds of issues:

  • Privilege. If you have it, you’re probably unaware of it. And if you’re unaware of it, it’s hard for you to understand that other people who don’t have it also don’t have the same advantages and paths through life that you do. We’d like to think that the world operates to reward merit, but for many, it’s not enough due to systemic issues. If the system benefits you, you don’t necessarily know it is there and how it has impacted your life. It’s kind of the equivalent of being born on third base and thinking you’ve hit a triple. If it hinders you, on the other hand, it’s really obvious. You’ve probably seen John Scalzi’s Straight White Male: The Lowest Difficulty Setting There Is, and here’s an article about privilege in geek culture. There’s also this article about someone who acknowledges the role privilege played in developing his talents as a programmer versus other classmates who didn’t have access to computers or had the lack of responsibility that allowed him to spend the time to work hard on learning it.
  • Rape culture, which also brings up terms such as victim-blaming and slut-shaming. If you got raped, you were probably asking for it. Why were you wearing those clothes or walking somewhere by yourself? Don’t you know that it’s not possible for people to control themselves and act as humane individuals? Crap like this is the obvious set of examples.
  • Panicked male, an example of which Scalzi recently tongue-in-cheek critiqued.
  • Moral relativism. If you’re about to argue, “But there are worse things in the world, so why are you complaining about XYZ?”, your thinking is bad. Yes, there are worse things in the world. If you want to discuss those worse things, I’m sure you’ll find people willing to do so, as the Internet is big enough for those kinds of discussions. But if someone is talking about an issue they find important, you can opt-out of the discussion, or you can participate, but you can’t say, “Hey, you can’t talk about it because it isn’t as important as world hunger or terrorism.” A systemic problem has been identified, awareness is being made, and you think that we as human beings can only focus on one problem at a time? Stop selling yourself short.
  • Deflection and silencing. A lot of the so-called arguments against concerns about inappropriate jokes and the culture it perpetuates aren’t addressing the issue seriously. They tend to be statements that attempt to quiet the person making the concerns known. If someone says, “I think this game is sexist”, any response that has the intent of coercing that someone into never bringing it up again is not healthy. Saying that someone is being over-sensitive or to lighten up are examples.

If you want humor with your education, see Film Crit Hulk’s GODDAMMIT VIDEO GAMES: THE FIRST FEW HOURS OF ARKHAM CITY IS LOTS OF FUN, BUT SUPER-DUPER SEXIST and part 2 (because it is almost required to do a follow-up when you call out stuff like like this), HULK VS. ARKHAM CITY – ROUND 2: BITCHES BE TRIPPIN’!.

What’s really scary is the undercurrent of violence and dehumanization. There is a lack of empathy, and it seems to be almost nurtured into the culture. When a woman is raped, we have television personalities saying she was asking for it, and almost no talk about how the rapist shouldn’t have been raping. And if the guy on TV thinks it, it’s likely the viewers are going to think along those same lines.

Similarly, when prominent figures in the video game industry laugh off, tolerate, or perpetuate misogyny, homophobia, and racism, their fans are likely to fall in line right with them. And when it is part of the marketing and game development, it’s worse.

The Internet brings a previously-unheard-of-number of strangers within communication distance, and while many people take advantage of it to make the world a more understanding and intelligent place, there is unfortunately a loud and obnoxious segment of the population who think extreme violence is super effective at getting their way.

And the more they see and hear each other, the more accepting of that behavior they become. And while most think they are having good-natured fun, occasionally a few think that actual violence is called for and accepted behavior.

So it is gratifying to see people within the industry call out the B.S.

The nature of the Internet and human nature is that we tend to be attracted to those who are like-minded. Talking with someone who has new and different views is a lot harder, especially if those views are opposed to your own.

But we all live here. I think the least we can do is try to have some empathy and consideration instead of dismissing someone else out of hand.

If someone does do something inappropriate, speak up. Show this person that you won’t tolerate it.

We need to be Be Better Stewards, as Corvus Elrod has so eloquently and succinctly put it. We need to call out the bad in a constructive way, and we need to praise the good.

Because what we say matters and has power.

What Is Wrong With Internet Society? #BeBetterStewards is a post from: GBGames - Thoughts on Indie Game Development

Posted in games, General | Comments Off

liamdryden: brasspistol: kinghanalister: (x) oH MY…





liamdryden:

brasspistol:

kinghanalister:

(x)

oH MY GOD

heh

Yeeeeeessss! He would make a brilliant Doctor

Comments Off

doctorwho: silentpunk: disney-overdose: sarapsys: posting…





















doctorwho:

silentpunk:

disney-overdose:

sarapsys:

posting without a source is unfortunately pretty common, but it doesn’t have to be.  with a few minutes of hunting, you can make sure the artists you like get credit for their work! :)  hope this is helpful.

EVERYONE NEEDS TO SEE THIS

READ THROUGH THIS TUMBLRERS!

This is important information to anyone wishing to get reblogged by the Doctor Who Tumblr. We spend hours, each day, combing Doctor Who-related tags

If your using Chrome then install this https://chrome.google.com/webstore/detail/search-by-image-by-google/dajedkncpodkggklbegccjpmnglmnflm?hl=en by Google and you can right click an image to do the same thing ^_^

Comments Off

gingerhaze: feminspire: alyssakorea: Tumbling over the past…







gingerhaze:

feminspire:

alyssakorea:

Tumbling over the past year and a half has made me see the problems of gender roles that exist in media, but sometimes it gets to the point where I over analyze every single piece of television or film that I come across. (However this in no way means that I think feminist media criticism is wrong, or should be avoided!) Mostly I just over think everything.

I’ve thought about this a lot and I think the answer is MORE, and MORE DIVERSE female characters.

We’re used to having one or two female characters in a cast of mostly men, and hold them to a higher standard because of that. So all of feminism is resting on the shoulders of one female character - and that DOESN’T WORK. Because there isn’t one right way to be a woman.

If casts had more diversity of gender, we could have warrior women and non-warrior women, sexual women and non-sexual women, feminine and non-feminine, and mixtures of all of the above…all are completely legitimate ways to be a woman.

We’re used to seeing a lot of hypersexualized, scantily clad, one-dimensional stereotypes of women without stories or motives of their own. We respond by asking for characters that AREN’T THAT, but we may end up pushing too far in the opposite direction, and demonize traits like sexuality, conventional attractiveness, and traditional femininity as “sexist.” That’s why the most popular female characters are the ones that are most similar to male heroes - the Arya Starks - emotionally distant, unattached, solve their problems with violence, not remotely sexual. That’s fine too of course. I love Arya. It’s just not…the only way to be.

To be clear there are items in media that are clear cut and wrong (lots of them). These border cases can be a bitch to work out.

1. Its all about the poses and objectification. If its a sexy character then cool, sex object not cool.

2. This one is trickier and bumps into Gender Norms. If they are one of the guys then they are a masculine character which isn’t bad but they are not representing feminine element… complicated

3. All media should be discussed and critiqued. A critical eye improves what you can take away and discussion strengthens the media. Nothing perfect but try make it better ;)

Comments Off

June #1GAM: We Need a Castaway

In my last post about my June project for One Game a Month, I talked about the general ideas I had, plus I created a mock-up.

Since then, I’ve thought about what kinds of tiles I’ll need. I’ve decided to set it on an island in an ocean, so it will have standard sand, rocks, water, and palm trees.

The game is called Shipwrecked, and we’re going to need a castaway. Here’s what I created during yesterday’s Game Dev Co-Op Hour:

June #1GAM castaway

I still need to provide left and right versions, plus walking animations, but I’ll keep them simple. I’m fairly pleased with my programmer art.

After that, the next task is to give this character a world to walk around in.

Then I can work on line-of-sight algorithms. I’ve been thinking about having the player’s vision deteriorate if he/she is too hungry or sick, so the edge of the fog might be closer than usual if the player is reckless.

I’m pretty excited. I hope my enthusiasm and productivity lasts. B-)

June #1GAM: We Need a Castaway is a post from: GBGames - Thoughts on Indie Game Development

Posted in game design, Game Development, Geek / Technical, Linux Game Development | Comments Off

June #1GAM: I Think I’ll Do Line-Of-Sight

Four days into June, and I hadn’t thought about what to make for the One Game a Month challenge for June.

I searched online for interesting mechanics to play with, but nothing really jumped out at me. If you want to see some ridiculous concepts, try out the Game Idea Generator. B-)

At some point, I thought about the idea of being shipwrecked and needing to survive. Maybe you’re on an deserted island in the ocean. Maybe you’re on a deserted planet in the far reaches of space.

I liked it. The player has to deal with hunger, weather, injuries, disease, wildlife, environmental hazards, all while trying to survive. Maybe help is coming if you wait long enough? Maybe you need to explore the island and build something to find your own way to freedom? Maybe there are others in the same predicament?

I don’t know. But exploring sounded like it had to be a big part of this game. You’re stranded, and you don’t know where you are, so you better get a handle on your surroundings.

And since I decided to do a tile-based grid, it seems like a good opportunity to do line-of-sight fog of war.

I like the idea that the player can see his/her immediate surroundings but needs to explore to see more. I like the idea of multiple levels of fog. One tile away is visible. Two tiles away is a little foggy. Three tiles away is more foggy. Four tiles is opaque.

Below is a mock-up demonstrating experiments with some fog made in the GIMP to see how it might look with different levels.

June #1GAM Mock-up

I’m not sure I’m happy with it, as I want it to be more difficult to see what’s behind the fog. Maybe I can experiment with different ways to render or create fog. We’ll see.

I also have to think about explored areas vs areas the player is immediately able to see. I’m reminded of Fate of the Dragon‘s fog of war, which returned to opaque if you weren’t in an area after a period of time. I think I’ll follow the normal RTS convention of graying out explored areas you can’t currently see.

Perhaps I’ll use Zelda-like controls. I was thinking about using the mouse and doing click-to-move/interact for simplicity, but I wonder if there might be some advantages to using the keyboard in terms of how expressive the player can choose to be. Maybe there are good reasons to crawl, sit, rest, walk, run (which takes a lot of precious energy), swim, jump, climb, open inventory, use items.

But then again, I can probably do all of the above with the mouse as well as the keyboard. Spacebar can be used to toggle sitting/standing, CTRL+click could be used to crawl, while Shift+click could be used to run.

Either way, I’ll probably find that I won’t add all of this due to only having the rest of June to finish this game. B-)

June #1GAM: I Think I’ll Do Line-Of-Sight is a post from: GBGames - Thoughts on Indie Game Development

Posted in game design, Game Development, Geek / Technical, Linux Game Development | Comments Off

kendrawcandraw: Stop sexualizing my body stop shaming my body…





kendrawcandraw:

Stop sexualizing my body stop shaming my body stop policing my body

~*~*~Summertime~*~*~

Comments Off

luminesca: Luminesca art cards Pick up some free art cards at…







luminesca:

Luminesca art cards

Pick up some free art cards at Rezzed PC and Indie Game Show

Birmingham, UK
22-23 June 2013

Luminesca will be playable in the Leftfield Collection, and I’ll be there in person to talk about the game and hand out these postcards.

Hope to see you there! :D

Preeeety

Comments Off

Keeping Your Goals In Front Of You

It’s June, but I want to talk about New Year’s Day. Specifically, I want to focus on goals, such as New Year’s resolutions.

New Years Resolutions In June?

Some people hate the idea of resolutions, but resolutions are just goals, and who hates goals? You can make them any time of the year. The end of one year and the beginning of the next is simply a good point in time to look back on your recent accomplishments and failures, look forward to possibilities, and set some goals for the next year.

What people really hate about resolutions is that they are not really goals. They tend to be more like wishes. “I’d like to lose 50 lbs in 2013″ is a wish. So is “I’d like to travel more.” These aren’t goals, but most people don’t realize it because most people suck at setting and achieving goals. The problem is that goals become forgotten if you don’t keep them in front of you all the time.

I’ve been guilty of it myself. Horribly, horribly guilty of it. For years, I’ve blogged about how I wanted to dedicate more time to game development, and then I’ve blogged about kicking myself for not doing a better job. And then I would write a post about being resolute about improvement, only to find that I write about the same problems a year later. It was ridiculous. It’s also painful to go back and read those old posts, thinking to myself, “Self, how can you not see this cycle?”

You can come up with the most detailed and straightforward plan, a beautiful and inspiring list of goals, or a thorough checklist for your day, but if you stick them in a drawer and never look at them, they can quickly become forgotten. And if you don’t have any of those things, it’s even easier to forget what you supposedly decided you were going to do.

I realized that I needed to change something, but what?

How to Remember Your Goals

Like many people, I created a list of goals for 2013. These were things I wanted to accomplish before the end of the year. I used to try to make comprehensive lists of everything I want to ever do or accomplish, but I realized that shorter lists allow me to provide much more focus, as this 2010 post about achieving your goals more easily explains.

On my list are goals related to getting back into shape, creating one game a month, reading at least one marketing book a month, creating a passive income stream, and learning to play a song on my guitar.

Ok, so I have a list of goals. But I’ve had goal lists before. What did I do differently this year?

I put them someplace I knew I would always see them.

I could have printed them out and put them up on my wall across from my desk, but I was worried that I’d eventually forget about them. Instead, I put them at the top of a Google Docs document that I look at daily, my Workday Now lists. If you use GTD or Workday Now, you probably have a similar set of lists that you live and work from.

Goals For 2013

Everyday, I look at this document to see what’s urgent and important, and so I simply added a section at the top that shows my goals for 2013. As you can see, at least one of them follows the “make those goals vivid” advice, but not all of them do. Some are quite plain. But the important thing is that I see them each and every day.

Essentially, I remind myself of the goals I have constantly. Michael Linenberger calls it “spinning your goals” in Master Your Wokday Now!. Some people suggest writing out your goals every day or reading them from a pack of index cards twice a day or creating a vision board. It doesn’t really matter how you do it, so long as you keep yourself focused on your goals daily and keep yourself accountable. Whatever works.

Creating Habits, Checklists, and Plans

Of course, having goals and keeping them in front of you is not enough. It’s the doing, the accomplishment of those goals, that matters. Otherwise, you’re just constantly reminding yourself that your current life isn’t as great as the life you’d like and hoping that something will change on its own.

But knowing you have to take action is different from taking action. You can’t sporadically exercise and eat a salad once in a while and hope to “feel energetic, sexy, and free”. You need to make it habit.

In January, I published a card game called Walls and Armies that I had been working on for a couple of months, as part of the One Game a Month challenge. I had a video game in mind to work on, but as the end of the month drew near, I realized I hadn’t been good about making time for its creation. Luckily, I had a card game that I could submit at the last minute, but it wasn’t my original goal.

It wasn’t a good start to my year. It was crunch at the day job, so I had less time than normal. I had a long list of various responsibilities, but I didn’t have a good idea of priorities yet nor how to give attention to multiple of these obligations at once.

That month I realized I needed a workable schedule if I wanted to get sufficient game development time in. In fact, I needed a workable schedule if I wanted to accomplish any of my 2013 goals.

I also realized that I needed more than a plan. I needed reminders that I had a plan to work on in the first place. I know that some days it’s possible to feel less motivated to work on something than on other days. I also know that if I allow myself to take a break by giving myself a much-needed day off, I’d lose momentum, and I needed something to help me get back once the break was over.

Since then, I had created a daily checklist on the whiteboard on the wall across from my desk, which I see everyday. I originally had six items on that daily checklist, and it is now down to three as I noticed what was working, not working, or not important.

For example, I used to practice on my new guitar at least 15 minutes a day because I had a goal of learning to play a song on it, but then I realized that I was dedicating more time to a hobby than I was to my business, so I stopped making guitar-playing a priority. Unfortunately, it means I haven’t played guitar in months, but as sad as it is, I have higher priority things to do taking my time, and I would be sadder if one of those took a backseat out of some obligation to learn a new instrument.

Besides, I accomplished my goal of learning to play a song on my guitar long before March. “I Saw Her Standing There” by The Beatles never sounded so good.

I also eventually created a weekly checklist. Each day has a focus, and I want to make sure that I accomplish the focus of that day. Two of those days are game development days. If I don’t get anything else accomplished, I should have time dedicated to game development on those days. One my writing days, it’s possible I don’t get game development done because I spent my precious time writing, and that’s fine.

Assessing How Well It Works

Ideally, I’d be focused on a single project at a time, so that all of my working time outside of the day job is dedicated to one task or project until it is finished.

Unfortunately, my multiple responsibilities means that some things can’t be “finished”, but I still want to make sure I dedicate time to them all. For instance, being President of the Association of Software Professionals isn’t a job that can be finished if I work a lot of hours all at once. If anything, it will finish me. B-)

I sometimes wish I could focus all of my energy on a single project for weeks or months, ignoring everything else. I might experiment with it to see how things go.

Still, having days dedicated to certain types of tasks has its benefits. If I work on game development to the exclusion of all else on Tuesdays and Wednesdays, I don’t need to feel stressed that something is falling through the cracks. Anything that needs attention will get attention on its own day. I also can’t get bored, as I never spend too long on any one type of task.

But I’ve been using my current system for a few months now. As of this writing, I’ve been able to finish four games in the last four months, including Electromagnetic Play, The New Worlds, Toytles Colors, and Hungry Frogs. I’ve read or listened to five marketing books and 23 books total so far this year. I learned how to play a song on my guitar.

I’ve also written multiple articles and newsletters for the ASP, written a few blog posts, and up until recently have done a great job of creating daily updates for the Stop That Hero! Facebook page.

I have yet to lose weight or make traction on creating a passive income stream. In both cases, I think I need a plan that can translate into daily habits. My daily checklist has “Do stretches” on it, and while it is good for maintenance, it’s not enough to help me get in shape. I need to do more, such as getting back into running.

Still, I think that 2013 has been a good year so far in terms of finally keeping myself accountable to my goals. On some goals, I’m on track. In others, I’m not. But unlike past years, even my lack of progress is something I am fully conscious and aware of on a daily basis. They aren’t forgotten, and I am continually reminded that I’m not spending time in these important areas of my life. It’s more about treating them with the priority I originally assigned them.

How are you doing with your New Year’s Resolutions or other long-term goals? How do you keep them in front of you, and how are you ensuring that you are making progress on them?

Keeping Your Goals In Front Of You is a post from: GBGames - Thoughts on Indie Game Development

Posted in Personal Development | Comments Off

Galcon 2 – beta12 – Galaxy Map Prototype!!

Get ready – beta12 is now available for backers on Windows, Mac, and Linux. iOS TestFlight people can go to TestFlight and grab the latest build in a few minutes.

The thing I’m most excited about in this build is the addition of the Galaxy Map. It’s in prototype stage right now, so you can’t join servers, or do anything – really, but you can play with the interface a bit.

I had a lot of fun working on this, and I’m hoping to make it connect to servers very soon! So give it a try and tell me what you think.

I also fixed a million bugs. If you are an iOS player, a lot of the stuff you reported got fixed. Chat works considerably better. Be sure to keep re-reporting bugs to the forums as you come across them though!

Thanks for playing! Have fun!
-Phil

Posted in galcon2 | Tagged | Comments Off

May #1GAM Entry: Hungry Frogs

The updates have been coming in quickly towards the end of the month, but my May project for One Game a Month is finished.

Download Hungry Frogs for Linux 64-bit (352 kb tar.gz file)

May #1GAM

Rather, it is finished enough. You can control the frog by jumping and turning around. If you fall in the water, the frog slowly swims back to the nearest lily pad. Flies will move across the screen in a straight line from left to right, and you need to jump to eat them. If you miss half of them in a given round, the game is over. Otherwise, the flies move faster each round, making it more difficult to catch them.

I didn’t take many screenshots as I thought the rectangles made for an uninteresting still shot, but I did make videos to demonstrate progress of the game’s development.

First, getting the jumping physics to work:

Then, landing on lily pads and swimming when you fall in the water:

Then, some game play, with edible flies:

And the final version, with faster flies each round and a game over screen if you miss too many:

I moved the frog’s tongue down as I realized it looked strange at the top of the head and I wasn’t going to have time to replace the white rectangle with a nice animated frog image. I would have liked to have flies moving in fly-like ways instead of straight lines. I really appreciate how the developers of Frogs and Flies nailed it in the constraints of an Atari 2600′s memory and processing power.

I’m not sure I’m happy with how easy it is now. Originally it was difficult to catch flies, so I expanded the tongue’s collision detection to include the frog’s body as well as a space around the tongue. Now it might be too forgiving, although there’s a gap if the frog is moving fast enough that from one frame to the next the collision box goes around the fly’s location. I’d fix that next if I had more time.

I’ve never made a platformer before, and this project was a good start. I am pleased with the jumping physics, although I need to figure out a better way to determine the maximum heights of jumps.

All in all, it was a fun project to make, even if it is once again another project with scope cut drastically to make the deadline.

May #1GAM Entry: Hungry Frogs is a post from: GBGames - Thoughts on Indie Game Development

Posted in game design, Game Development, Geek / Technical, Linux Game Development | Comments Off

Started a new project yesterday, tentatively titled “Game Changer”

Technically I started working on my new game the beginning of this week (Monday, the 27th).

After having learned abit of haxe/nme/ and haxeflixel — I decided to go with HaxeFlixel for my new game.

The game is title Game Changer because it literally changes games every few levels. Started with an idea I was going to submit to Ludum Dare — it was the one with the theme of evolution. The idea was you take something like pong, and constantly evolve it to where it’s a completely different game. So I decided to use that as the basis for this project.

Here’s an outline I wrote –
Game Changer 1 –

3 levels per change –

catching ball paddle game
paddle ball deflection
pong
wallball
breakout
super breakout (moving bricks, w/shooting)
aliens (like space invaders without horizontal movement)
space invaders
galaxian (formations)
galaga (formations + bosses)
vertical shmup with scrolling enemies
vertical shmup with obstacles, collidable roof and floor (scrolling map)

36 levels total.

I’m making the game in the tiny resolution of 80×120 — with scaling of course. I’m doing a flash version first, and then I will see about other platforms. I basically chose the aspect ratio of the iphone — just 320×480 or 2:3 — (or 3:2 if you were doing landscape). I probably won’t target the iphone any time soon because I don’t have a mac, or an iphone. But I figured the aspect ratio would be a good one to target.

In any case here is a screen shot of my great *game* :
GameChangeSS0001

Here’s an early partial mockup of one of the space invaders type of levels — although it seems they have no room to move, and thus will probably be much much different in the real thing:
paddle_ball_evolver_mockup_80x120

That’s about it, I just wanted to show what I was working on.

Posted in Game Changer | Comments Off