Categories
computer games games industry web 2.0

What Web 2.0 means for the games industry

“In reality, one size has never fit all, but when players didn’t have so many choices, they had to put up with it. Now they don’t. No longer can publishers rely on retailing strategies designed to make money by forcing players to buy what the publishers want them to buy, when and where the publishers want them to buy it. These strategies are aimed more at wooing retailers with slotting and promotion allowances than at wooing customers, and they just won’t fly anymore. In the future, retailing strategies are going to have to be like those of Amazon.com or the one-hour eyeglass shops, which are designed to sell the consumers what they want to buy. And they do it by making it easier, better, less cumbersome to do so.”

Categories
games design massively multiplayer networking system architecture

Entity Systems are the future of MMOG development – part 3

Also known as: Nobody expects the Spanish Inquisition!

(because I’m now deviating from the original schedule I outlined in Part 1; what the heck, it was only a rough agenda anyway…)

Questions, questions…

First of all, there’s a bunch of good questions that have been raised in response to the first two posts:

  • what data and methods are stored in the OOP implementation of an entity?
  • where does the data “live”?
  • how do you do object initialization?
  • what does the ES bring that cannot be accomplished with an AOP framework?
  • what’s the link between entity systems and SQL/Relational Databases? (OK, so that one’s my own question from last time)
  • what, exactly, is an entity?

Let’s start with that last one first.

Categories
conferences web 2.0

Nothing to see here, unless you care about culture?

Too busy to write at the moment (if I weren’t, I’d be working on followups to the entity systems posts).

So, in the meantime, go listen to the ever-brilliant Lawrence Lessig. I’ve just been listening to his 2006 talk on Free Culture. There are too many memorable, insightful, or funny elements for me to be able to sum it up; I’ll just say it’s one of my favourite LL talks amongst those I’ve seen.

“This is not about (quote) “piracy”. If I thought this fight was about your right to get access to Britney Spears music for free, I’d be on the other side, because I don’t think you should get access to Britney Spears music … at any price”

Categories
maintenance

Spam Karma 2 rocks

(just because it’s brilliant, and I wanted to say thank you)

Still using Akismet? Why?

You do know that Akismet rejects genuine posts, don’t you? Sure, it’s not its fault – spam filtering is hard.

But since Spam Karma is free, integrates easily with WordPress, and offers much safer filtering of spam, with multiple levels of fallback, isn’t it time to try an upgrade?

Categories
bitching

An example of how NOT to do software updates

I upgraded Firefox only a few days ago (I didn’t get a choice – it was set to autoupdate, and updated when I was halfway through doing an install on my new computer; it broke most of the plugins I was halfway through installing because the new version wasn’t backwards compatible) and now a new upgrade just appeared. I wondered what could necessitate such a sudden new upgrade, so I clicked on the “View more information about this update” link in the dialog box.

This took me to a page which said nothing other than:

“Stability Update:
This release corrects a problem that was found in the previous release, Firefox 2.0.0.10.”

WTF? How did that even seem to them to be a reasonable explanation? So, I sent them some feedback. Which will no doubt get filed in /dev/nul

Someone at firefox needs to reconsider the messages they’re sending out. It’s as bad as Microsoft in the bad old days of System Updates that had no reason beyond “critical”, or “this update is necessary to ensure your copy of windows continues to function correctly”.

Considering how dangerous updates are for the user (c.f. the fact that the last one nuked most of my plugins :(, and there’s no way to downgrade – for some reason, they don’t support that, and they don’t allow you to download old, working, versions, only the latest, even-if-its-broken, version), this approach to forcing them on users without explanation is both antagonistic and irresponsible.

/me is now forcing firefox to “never” upgrade, and will refuse to run any more upgrades of it.

I’m sure this is the complete opposite of what they intended, as my machines will now theoretically be vulnerable to every security flaw that comes along, but I think I’ll use MSIE 7 as my main browser, despite it’s many flaws, and stop using FF for everything except testing, rather than suffer more of this stupidity from the Mozilla Foundation. I never thought they’d manage to force me into the hands of Microsoft :).

Categories
agile computer games programming

Estimating timescales and effort for software and games projects

Is it a completely hopeless task, caused by a fundamental lack of understanding in how to ask the question appropriately?

Categories
computer games facebook games design

The rest of the world is not like us…

Andrew Chen has a great post on how people use Facebook and why MySpace pages are so ugly

I particularly liked the straightforward comparison between the opposing viewpoints on design, i.e.:

Facebook / Google / “modern” web companies:

  • Simple, Functional, Easy

Myspace / GeoCities / “poorly designed” web presences:

  • Lots of options – perceived as complicated
  • Entertaining – perceived as lacking a point
  • Layers of complexity – perceived as difficult

So. Scrapbooking. A $2.5 Billion industry, huh? Serious food for thought for game designers trying to think up ways to take advantage of Web 2.0, but struggling to break out of the boring “chat”, “friends lists”, and “character pages” ideas…

Categories
bitching fixing your desktop

Fixing the blurry fonts in Outlook 2007

(do you have fuzzy text in Outlook 2007? hard to read fonts? System settings for fonts broken in Office 2007? Help is at hand…).

You have to do a couple of things to fix the one bug, and I had to find all the different parts of the solution in different places, so I put them all together into one post here.


Categories
computer games conferences games industry

Games industry conferences versus blogging

I’m not happy with the direction games industry conferences are going in; I specialize in online games, and I’ve worked at the forefront of monetizing online entertainment, I’ve actually *made money* out of Web 2.0 – so I have real expertise in making use of the internet – and I really think we (as an industry) are missing a trick with our conferences. There’s an opportunity to do something really valuable and re-invigorate the conferences.

The previous entry outlined what conferences profess to offer their speakers, and what it costs the speakers to attend. Now I’m going to talk about the real, untapped, value of conferences to the speakers, and what we as speakers should be demanding, and how in the end it benefits all of us, including the organizers just trying to turn a healthy profit.

Categories
computer games conferences games industry

Problems of speaking at games industry conferences

I go to GDC every year, and also to 2-3 other conferences, but apart from GDC I vary which exact ones from year to year. These days, I’m a speaker at nearly every conference I go to, and I’ve never yet been paid for speaking, so it’s fair to say I have a pretty big time investment in each of them. I don’t make the choice to go to a conference lightly (especially given how long I’m out of the office for a typical conference, and how exhausted I am by the learning, the networking, the partying, and the international travel).

But I’m getting increasingly dissatisfied with the conferences themselves, especially as a speaker. And it seems to be getting worse, not better – and that’s particularly worrying. The conferences are still great, but the problems are significant.

First up, the costs of speaking, and the ever shrinking advertised benefits…

Categories
entity systems games design massively multiplayer programming system architecture

Entity Systems are the future of MMOG development – Part 2

Part 2 – What is an Entity System?

(Part 1 is here)

Sadly, there’s some disagreement about what exactly an Entity System (ES) is. For some people, it’s the same as a Component System (CS) and even Component-Oriented Programming (COP). For others, it means something substantially different. To keep things clear, I’m only going to talk about Entity Systems, which IMHO are a particular subset of COP. Personally, I think Component System is probably a more accurate name given the term COP, but then COP is improperly named and is so confusing that I find if you call these things Component Systems they miss the point entirely. The best would be Aspect Systems, but then AOP has already taken ownership of the Aspect word.

An entity system is simply a part of your program that uses a particular way of breaking up the logic and variables of your program into source code.

For the most part, it does this using the Component Oriented Programming paradigm instead of the OOP paradigm – but there’s subtleties that we’ll go into later.

Categories
computer games games design programming

More SFE Screenshots…

Another couple of days since the first one-day effort, and SFE single player is now working, albeit with a seriously crap AI:

Eggs dropping

Categories
amusing

Bored of boring shopping sites

In case you hadn’t seen it. Now, if this were done in HTML instead of flash, and the site still worked…

http://producten.hema.nl/

Categories
computer games games design networking

Screenshot of Super Foul Egg remake

Years ago, I found the spritesheets + source code from the author of SFE, who was offering them up if anyone wanted to improve it, make it 4 player multiplayer again (like on RISC OS) etc (or something like that).

Last Sunday afternoon I was very bored, and found just the spritesheets lying around on an old disk, so I wrote the gamecode from scratch. Didn’t quite finish it that day, but I think one more boring Sunday and I’ll have over-the-internet multiplayer and highscores server working, which would rock.

Kevglass asked for a screenshot, so…

Categories
computer games conferences games industry

3D Business: Reality or Fantasy?

http://www.own-it.org/events/details/?eventId=227

Speaking at this panel session tonight. Should be interesting. I get to be the bad guy, the one saying that online businesses in other people’s virtual worlds are morally corrupt, and that all Gold Farmers should be hung, drawn, and quartered, and that the world will end, fire and brimstone, cats and dogs living together, etc.

Or something like that :).

Categories
games industry recruiting

Creating a New Game-Development Studio

How do you create a new game studio from scratch?

The topic came up recently when someone asked me what I’d do if I had the responsibility to create a new dev studio – what would I do, how would I go about it, etc? I’ve founded a couple of small startups before (both as CTO and CEO), and worked as everything from a secretary to a CTO (Chief Technical Officer) at other people’s companies, so I have some idea of how to do this on a practical level.

I also used to co-run a very successful business-plan competition, where we gave away hundreds of thousands of pounds of startup capital every year. Many of the finalists became good friends of mine, and we continued to work with and help some of the companies for a good few years after they won or were finalists as part of our ongoing support programme.

So, here’s some initial thoughts. I don’t know if this is right or wrong, good or bad, but it’s something I’d like to work out better because I may well find myself trying to do it someday.

Categories
computer games massively multiplayer networking programming system architecture

Some Myths of Writing Networked Multiplayer Games

Networked games use the internet, and the difficulties of making these games evolve on Internet Time, which means that the articles people wrote as recently as a year ago on how to make a networked or multiplayer game are already out of date. Most of the literature is more than 5 years old, and some as much as 10 years old – hopelessly out of date in the modern world of internet and online gaming.

Anyway, to get you thinking (I’m not providing definite answers here, but just some stuff to make you think about more carefully about how you’re doing your networking), here are some common rules that perhaps no longer apply the way they used to:

Categories
alternate reality games games design games industry

How to become an ARG designer (Design a game to cure cancer)

(ARG as in Alternate Reality Game, of course…)

http://www.letschangethegame.org/

A new ARG project from Adrian and Dan, in aid of Cancer Research UK. Great to hear they’ve got this off the ground, it looks like it’s going to be fantastic. But it could also become the biggest event in helping new ARG designers a chance to get their feet wet since the start of Unfiction and ARGN:

People always used to ask me
how they could become ARG designers, and I would always say that they
should try and gain experience – but with such a small field, the
only way to do that is through grassroots games. While people might
have plenty of time to volunteer, grassroots games still cost *some*
money which people often can’t spare. This is a way to give lots of
people experience in thinking about game design, and one team the
opportunity to make a really significant game. — Adrian Hon, Six to Start

Categories
games design massively multiplayer networking programming

8 things to avoid when building an MMOG server

A few years ago, I wrote an article for Develop magazine – “10 MMOs you don’t want to do”.

Here’s 8 things you really shouldn’t do but that might seem like a good idea if you’ve never made an MMOG before.

All these are examples of things that have been done on real MMO projects, usually MMORPGs.

  1. use off-the-shelf middleware from the enterprise industry. It’s designed for completely different usage-patterns and cannot cope with MMO style usage. Equally, initially distrust anything from traditional Big Iron companies.
  2. think that Grid Computing will somehow magically solve the problems. It won’t (c.f. previous point).
  3. aim to code the server in a scripting language. You *can* run some scripts embedded in the server, but not the server itself – but even that can screw you when you’re trying to run thousands of scripts at once
  4. assume that front-end load-balancing will solve any problems. It won’t, all it does is increase the efficiency of your cluster by a small amount. And it usually won’t provide you with failover, because most game designs will end up kicking you from your server if it dies, so the failover never gets used at that level.
  5. ignore performance testing until mid-way through the project. If performance tests at 10% of the way through production say it’s slow, that means you’re in deep trouble – it does NOT mean that “we’ll come back and optimize it later”. Optimizing netcode and server code is NOT like traditional single-threaded local-only optimization: many of the things you’re dealing with (like LANs, and TCP/IP stacks) run orders of magnitude too slowly, so your optimization comes from imaginative system-architecture, not from optimizing small chunks of code at a time.
  6. ignore billing concerns in your core game design. Non-free MMOG’s are entirely about billing, which means that you have to design it in, and build it in to the tech design from an early stage. Retrospectively adding billing hooks and billing information to existing server codebases is often about as easy and effective as retrospectively making your code secure. Just don’t go there.
  7. hire an academic who specializes in networking, especially a PhD student (this gets done quite often). All this means is that they’ve obsessed with a very narrow slice of the many many problems, and generally they won’t know WTF to do about the rest of the problems. That’s no better than just promoting a general programmer to become “the new Server specialist”
  8. innovate on both technology AND game design at the same time. Either do a traditional MMO so you can re-use all the existing common wisdom for design, and get to market (or at least a stable GDD) fast, and use the slack that buys you to focus on better tech, or use the most boring tech you can think of (instance lots; do lowest-hanging-fruit in your tech design) and innovate on the gameplay

I reserve the right to come back and edit this to make it ten once I’ve had more sleep and can remember two more :)…

Categories
amusing computer games conferences photos web 2.0

Sulka gets Angry…

Sulka Haro’s keynote at AGDC07. What happens when a Lead Designer gets heckled, and things turn nasty…