By Soulskill from Slashdot's requires-more-vespene-gas department
An anonymous reader writes "Patrick Wyatt led production efforts for several of Blizzard Entertainment's early games, including Warcraft 1 & 2 and StarCraft. Wyatt has just published an in-depth look at the development of StarCraft, highlighting many of the problems the team encountered, and several of the hacks they came to later regret. Quoting: 'Given all the issues working against the team, you might think it was hard to identify a single large source of bugs, but based on my experiences the biggest problems in StarCraft related to the use of doubly-linked linked lists. Linked lists were used extensively in the engine to track units with shared behavior. With twice the number of units of its predecessor — StarCraft had a maximum of 1600, up from 800 in Warcraft 2 — it became essential to optimize the search for units of specific types by keeping them linked together in lists. ... All of these lists were doubly-linked to make it possible to add and remove elements from the list in constant time — O(1) — without the necessity to traverse the list looking for the element to remove — O(N). Unfortunately, each list was 'hand-maintained' — there were no shared functions to link and unlink elements from these lists; programmers just manually inlined the link and unlink behavior anywhere it was required. And hand-rolled code is far more error-prone than simply using a routine that's already been debugged. ... So the game would blow up all the time. All the time.'"
Wyatt also has a couple interesting posts about the making
of Warcraft 1
.Read Replies (0)
By timothy from Slashdot's everyone-should-just-learn-to-hum department
First time accepted submitter mrhelio writes "I work for a medium-sized helicopter company; we mainly fly tourists around on sightseeing flights. My company needs help finding a hacker-friendly portable music player for our helicopters. We have a problem with our onboard music players — mostly because it is an obsolete terrible design. The manufacturer has made an updated model, but it's basically the same obsolete design with the same terrible software and user interface. We are worried about spending $1000 per unit on these because the manufacturer will eventually stop making replacement units and then we will be force to buy upgrades for our entire fleet again and get everything recertified. (Any piece of equipment hard mounted in a commercial aircraft has to be certified by the FAA and it takes a lot of paper work, time and money for that to happen.) So we have a new plan: get portable music players like iPods, and plug those into the aux input in the intercom system. We need something that has nine hours of battery life, can hold at least three hours of music, and has remote control options for start, stop, volume, and selecting tracks and playlists, and a display that is visible in bright and sunny as well as dark conditions. The remote control option is the toughest part to find. The pilots need to be able to control the music without taking their hands off the flight controls for safety reasons. There are buttons and toggle switches already designed into the flight controls for these kind of purposes and we have mechanics/ engineers that can wire it all together, but the music player has to support the remote interface in the first place. Our first choice would be to give each pilot an iPod, but Apple is notoriously anti-hacking and anti-open source, plus you have to pay them ridiculous licensing fees to get access to their USB interface. So we are looking for a manufacturer that is open source / hacker friendly and makes something that meets our needs. Do you know of anything that would work for us? Maybe something that runs Rockbox? Should we just break down and design something from scratch like the Butterfly MP3 player?"Read Replies (0)