• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 06:39
CEST 12:39
KST 19:39
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
RSL Season 1 - Final Week6[ASL19] Finals Recap: Standing Tall15HomeStory Cup 27 - Info & Preview18Classic wins Code S Season 2 (2025)16Code S RO4 & Finals Preview: herO, Rogue, Classic, GuMiho0
Community News
Esports World Cup 2025 - Brackets Revealed19Weekly Cups (July 7-13): Classic continues to roll8Team TLMC #5 - Submission extension3Firefly given lifetime ban by ESIC following match-fixing investigation17$25,000 Streamerzone StarCraft Pro Series announced7
StarCraft 2
General
RSL Revival patreon money discussion thread Why doesnt SC2 scene costream tournaments Esports World Cup 2025 - Brackets Revealed The GOAT ranking of GOAT rankings Who will win EWC 2025?
Tourneys
Sparkling Tuna Cup - Weekly Open Tournament Sea Duckling Open (Global, Bronze-Diamond) FEL Cracov 2025 (July 27) - $8000 live event RSL: Revival, a new crowdfunded tournament series $5,100+ SEL Season 2 Championship (SC: Evo)
Strategy
How did i lose this ZvP, whats the proper response
Custom Maps
External Content
Mutation # 482 Wheel of Misfortune Mutation # 481 Fear and Lava Mutation # 480 Moths to the Flame Mutation # 479 Worn Out Welcome
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ Flash Announces (and Retracts) Hiatus From ASL Soulkey Muta Micro Map? BW General Discussion [ASL19] Finals Recap: Standing Tall
Tourneys
[Megathread] Daily Proleagues 2025 ACS Season 2 Qualifier [BSL 2v2] ProLeague Season 3 - Friday 21:00 CET CSL Xiamen International Invitational
Strategy
Simple Questions, Simple Answers I am doing this better than progamers do.
Other Games
General Games
Stormgate/Frost Giant Megathread Path of Exile Nintendo Switch Thread CCLP - Command & Conquer League Project The PlayStation 5
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread Vanilla Mini Mafia
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine The Games Industry And ATVI Russo-Ukrainian War Thread Stop Killing Games - European Citizens Initiative
Fan Clubs
SKT1 Classic Fan Club! Maru Fan Club
Media & Entertainment
Movie Discussion! Anime Discussion Thread [Manga] One Piece Korean Music Discussion [\m/] Heavy Metal Thread
Sports
2024 - 2025 Football Thread Formula 1 Discussion TeamLiquid Health and Fitness Initiative For 2023 NBA General Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
The Automated Ban List
Blogs
Ping To Win? Pings And Their…
TrAiDoS
momentary artworks from des…
tankgirl
from making sc maps to makin…
Husyelt
StarCraft improvement
iopq
Customize Sidebar...

Website Feedback

Closed Threads



Active: 609 users

Patrick Wyatt: The StarCraft path-finding hack

Forum Index > BW General
Post a Reply
Normal
Heyoka
Profile Blog Joined March 2008
Katowice25012 Posts
Last Edited: 2013-02-20 19:08:44
February 20 2013 19:02 GMT
#1
Patrick Wyatt was a programmer of Brood War who has shared a few awesome stories about the development of the game here and here. He’s back with a third installment, this time regarding an issue we’re all extremely close to: the pathfinding AI. It gives some amusing insight into the strange behavior of ramps and why workers have no collision size, among other things.

It’s a great read as always. Go read the whole thing here.

Code of Honor

The StarCraft path-finding hack


February 20, 2013 By Patrick Wyatt

Game-unit path-finding is something that most players never notice until it doesn’t work quite right, and then that minor issue becomes a rage-inducing, end-of-the-world problem. During the development of StarCraft there were times when path-finding just didn’t work at all.

As the development of StarCraft dragged on it seemed like it would never be done: the game was always two months from launch but never seemed to get any closer to the mythical ship date. “Fortunately” — and I use that term advisedly — Blizzard had previous experience shipping games late.

While we always had launch-date “goals” (though “wishes” might be a better term) we tried not to announce publicly until there was a good chance that the game would be ready at that point. Blizzard’s “when it’s done” policy for game launch was as much an admission that no one had any idea when we would finish as it was a commitment to releasing quality products.

In any event, towards the end of the project we had a set of problems that prevented launching. Like any game in the latter stages of the development process there were defects galore that needed to be found and repaired and the bug count still numbered in the thousands.

Many of those bugs were trivial, and needed only a little attention to fix. Too bad they weren’t all like that.

Others, like a multiplayer synchronization bug, would pop up and require dedicated attention from several members of the programming team — sometimes weeks of effort for a single problem. Other game developers have reported similar experiences with their sync bugs: Ages of Empires and Supreme Commander.

Some bugs were related to the development process itself. The Protoss Carrier regularly lagged behind other units because it had its own way of doing … everything. At some point in time the code for the Carrier was branched from the main game code and had diverged beyond any hope of re-integration. Consequently any time a feature was added for other units, it had to be re-implemented for the Carrier. And any time a bug was fixed for other units, a similar bug would later be found in the Carrier code too, only more devious and difficult to fix.

But the biggest thing holding back StarCraft was unit path-finding.

It wasn’t that the path-finding was totally broken; in most cases it worked quite well. But there were enough edge-cases that the game was un-shippable.

Game units would get stuck and stop on the battlefield. Often they would go through elaborate efforts to find paths, inching forward or looping around but not making progress, and sometimes getting wedged and unable to move further. Entire task forces would get bogged down in what looked like the afternoon commute.

The problem was frustrating for players, but also made the AI weak and consequently made it impossible to balance the missions, wasting design time.

Though I was never a top-tier RTS player, before the game launched I was good at the game because I discovered that Goliaths were overpowered to make up for their poor path-finding abilities. Because they were larger than other ground units they needed wider spaces for path-finding, and so by carefully shepherding Goliaths around obstacles I was able to bring their firepower to bear in crucial situations to overcome “macro” players who would otherwise tear me to shreds. Sadly my skills only lasted a short while until the Goliaths were rebalanced. sigh

Early path-finding was rough — while there were well-chosen algorithms driving unit movement they were handicapped by some poor development decisions made during the course of the project.

***


Read the rest at Patrick's site
@RealHeyoka | ESL / DreamHack StarCraft Lead
Sayle
Profile Joined October 2010
United Kingdom3685 Posts
February 20 2013 19:06 GMT
#2
Oh man I thought this would be a thread about a new hack to give BW units good path-finding. Was hoping for Pucca vs the world in yet another thread.

This is much less entertaining :/
amazingxkcd
Profile Blog Joined September 2010
GRAND OLD AMERICA16375 Posts
February 20 2013 19:07 GMT
#3
so basically, everything is higher res of warcraft engine for pathing?
The world is burning and you rather be on this terrible website discussing video games and your shallow feelings
andiCR
Profile Blog Joined March 2008
Costa Rica2273 Posts
February 20 2013 19:11 GMT
#4
Thanks. This blog is beyond awesome, and any programmer, specially a games programmer, will enjoy this series inmensely. I can only imagine what the Carrier code was like, and this bugs are directly correlated with the old inheritance model being adapted to games. If this game was made in components, they would've had wayyyy less code copypaste syndrome, and a much more dynamic model to approach bugs.
Nightmare1795 wrote: I played a guy in bronze who said he was Japanese. That was the only game I ever dropped a nuke, which was purely coincidental.
okum
Profile Blog Joined February 2009
France5778 Posts
February 20 2013 19:17 GMT
#5
To handle all the tricky edge-cases, the pathing code exploded into a gigantic state-machine which encoded all sorts of specialized “get me out of here” hacks.

This explains everything.
Flash fan before it was cool | Coiner of "jangbang"
PassiveAce
Profile Blog Joined February 2011
United States18076 Posts
February 20 2013 19:18 GMT
#6
Sadly my skills only lasted a short while until the Goliaths were rebalanced. sigh

I found this very funny aha!

Thanks for sharing this!
Call me Marge Simpson cuz I love you homie
thezanursic
Profile Blog Joined July 2011
5478 Posts
February 20 2013 19:28 GMT
#7
Finally I enjoyed his last two so much!
http://i45.tinypic.com/9j2cdc.jpg Let it be so!
Patton3D
Profile Joined March 2011
United States65 Posts
February 20 2013 19:40 GMT
#8
This entire blog series is incredibly interesting to read.
You are never defeated until you admit it.
mierin
Profile Joined August 2010
United States4943 Posts
February 20 2013 19:50 GMT
#9
On February 21 2013 04:40 Patton3D wrote:
This entire blog series is incredibly interesting to read.


It really is! I wonder why just now these blogs are starting to come out...in any case, hope for many more!
JD, Stork, Calm, Hyuk Fighting!
sabas123
Profile Blog Joined December 2010
Netherlands3122 Posts
February 20 2013 19:53 GMT
#10
awsome read

thanks for sharing
The harder it becomes, the more you should focus on the basics.
Antisocialmunky
Profile Blog Joined March 2010
United States5912 Posts
February 20 2013 19:53 GMT
#11
So he's responsible for this:
[゚n゚] SSSSssssssSSsss ¯\_(ツ)_/¯
Marine/Raven Guide:http://www.teamliquid.net/forum/viewmessage.php?topic_id=163605
shaftofpleasure
Profile Blog Joined December 2011
Korea (North)1375 Posts
February 20 2013 19:55 GMT
#12
AWESOME! bw forever!
It's either the holes of my nose are getting smaller or my fingers are getting bigger. /// Always Rooting for the Underdog. Hyuk/Sin/Jaehoon/Juni/Hyvva/Hoejja/Canata //// Hiding in thread somewhere where BW is still in it's pure form here on TL.
Pimpmuckl
Profile Joined March 2011
Germany528 Posts
February 20 2013 20:02 GMT
#13
On February 21 2013 04:11 iPAndi wrote:
Thanks. This blog is beyond awesome, and any programmer, specially a games programmer, will enjoy this series inmensely. I can only imagine what the Carrier code was like, and this bugs are directly correlated with the old inheritance model being adapted to games. If this game was made in components, they would've had wayyyy less code copypaste syndrome, and a much more dynamic model to approach bugs.


Couldn't agree more, pure awesomesauce right there
twitter.com/pimpmuckl
Nerevar
Profile Joined January 2013
547 Posts
February 20 2013 20:03 GMT
#14
[image loading]Patrick Wyatt: 1

(P)BeSt: 0
Wohmfg
Profile Blog Joined January 2009
United Kingdom1292 Posts
February 20 2013 20:06 GMT
#15
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.
BW4Life!
dRaW
Profile Blog Joined January 2010
Canada5744 Posts
February 20 2013 20:19 GMT
#16
On February 21 2013 04:06 Sayle wrote:
Oh man I thought this would be a thread about a new hack to give BW units good path-finding. Was hoping for Pucca vs the world in yet another thread.

This is much less entertaining :/



I was just thinking this, so I went offline and punched in all the cheat codes and smashed 7 PCs in frustration.
I don't need luck, luck is for noobs, good luck to you though
Andre
Profile Blog Joined August 2009
Slovenia3523 Posts
February 20 2013 20:33 GMT
#17
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.

There's a lot of cool stuff that wasn't intended to be as the developers imagined it.

Besides all the cool tricks there are in BW, Quake had bunnyhopping( i think it was first "introduced" in doom..not sure), GunZ has a bunch of animation-based tricks. Like Wall cancelling etc.

You must gather your party before venturing forth.
SpeaKEaSY
Profile Blog Joined December 2010
United States1070 Posts
February 20 2013 20:36 GMT
#18
On February 21 2013 04:53 Antisocialmunky wrote:
So he's responsible for this:
http://www.youtube.com/watch?v=d1bPv8JI6zY


ahahahaha classic bisu face

I love this series, hope we can see more, it's been very insightful and nostalgic
Aim for perfection, settle for mediocrity - KawaiiRice 2014
ProMeTheus112
Profile Joined December 2009
France2027 Posts
February 20 2013 20:41 GMT
#19
:D this is awesome
<3 bw
BigFan
Profile Blog Joined December 2010
TLADT24920 Posts
Last Edited: 2013-02-20 20:44:44
February 20 2013 20:44 GMT
#20
These blogs are always amazing to read. Seems like they didn't rewrite path finding after changing the tileset, someone correct me if I'm wrong. On the bright side, we got a lot of cool tricks like drone drills and such so win win? That best vs. July game though, the look on Bisu's face was priceless XD
Former BW EiC"Watch Bakemonogatari or I will kill you." -Toad, April 18th, 2017
Wohmfg
Profile Blog Joined January 2009
United Kingdom1292 Posts
February 20 2013 20:48 GMT
#21
On February 21 2013 05:33 Andr3 wrote:
Show nested quote +
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.

There's a lot of cool stuff that wasn't intended to be as the developers imagined it.

Besides all the cool tricks there are in BW, Quake had bunnyhopping( i think it was first "introduced" in doom..not sure), GunZ has a bunch of animation-based tricks. Like Wall cancelling etc.



Yeah exactly.

A lot of things that take a game to the next level professionally were never designed and take away from the immersion of the game which makes me question whether a game can be designed with the sole intention of being played at a very high level competitively.
BW4Life!
prplhz
Profile Blog Joined November 2010
Denmark8045 Posts
February 20 2013 20:50 GMT
#22
this is really good stuff
http://i.imgur.com/M7t7egx.png
IceCube
Profile Blog Joined June 2009
Croatia1403 Posts
February 20 2013 21:24 GMT
#23
Thank you for sharing this. As always very interesting read about my favorite game.
Forever Vulture.. :(
Deleted User 135096
Profile Blog Joined December 2010
3624 Posts
February 20 2013 21:31 GMT
#24
I was waiting for this!! :D
Administrator
2Pacalypse-
Profile Joined October 2006
Croatia9499 Posts
February 20 2013 22:01 GMT
#25
Fascinating stuff!

It just makes me wonder if someone was to create a modernized version of BW (ala Dota1 -> Dota2), how much of those "dirty hacks" would have to be replicated just to keep all the little BW tricks intact, or if that's even possible.
Moderator"We're a community of geniuses because we've found how to extract 95% of the feeling of doing something amazing without actually doing anything." - Chill
Falling
Profile Blog Joined June 2009
Canada11349 Posts
February 20 2013 22:03 GMT
#26
Yes! My all time favourite blog.

The isometric on top of square tiles I definitely noticed while map-mapmaking. It can be very frustrating to copy-paste things from other maps. Even ramp copy-paste usually means trying to individually find the right tile to make it flow a little better.

On the plus side, worker drills were born and you have to love that.
Moderator"In Trump We Trust," says the Golden Goat of Mars Lago. Have faith and believe! Trump moves in mysterious ways. Like the wind he blows where he pleases...
Xiphos
Profile Blog Joined July 2009
Canada7507 Posts
February 20 2013 22:15 GMT
#27
On February 21 2013 07:01 2Pacalypse- wrote:
Fascinating stuff!

It just makes me wonder if someone was to create a modernized version of BW (ala Dota1 -> Dota2), how much of those "dirty hacks" would have to be replicated just to keep all the little BW tricks intact, or if that's even possible.


I think BW's graphic is better than SC2's. If they could just increase the definition of the units's pixel and its shadings then we are golden.
2014 - ᕙ( •̀ل͜•́) ϡ Raise your bows brood warriors! ᕙ( •̀ل͜•́) ϡ
Grumbels
Profile Blog Joined May 2009
Netherlands7031 Posts
February 20 2013 22:52 GMT
#28
I wonder if they could have found a way to have workers have collision while mining for SC2.

And he has to be like my favorite person, such interesting blogs.
Well, now I tell you, I never seen good come o' goodness yet. Him as strikes first is my fancy; dead men don't bite; them's my views--amen, so be it.
thirtyapm
Profile Joined January 2012
521 Posts
February 20 2013 22:55 GMT
#29
been waiting for this, thanks
rauk
Profile Blog Joined February 2009
United States2228 Posts
February 20 2013 22:55 GMT
#30
On February 21 2013 07:52 Grumbels wrote:
I wonder if they could have found a way to have workers have collision while mining for SC2.

And he has to be like my favorite person, such interesting blogs.


and remove worker drilling? yeurgh
Al Bundy
Profile Joined April 2010
7257 Posts
February 20 2013 22:56 GMT
#31
Thanks for the link Another interesting read.
o choro é livre
Torpedo.Vegas
Profile Blog Joined January 2011
United States1890 Posts
February 20 2013 22:58 GMT
#32
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.


I would argue the "perfection" can from the persistence and innovative attitudes applied to the game because of the competitive scene built around it. It is only natural for players to try to exploit bugs or incorporate as many facets of a game into their play style. Regardless of whether these facets were intended or not. I think it may be even more unreasonable to expect a developer to truly know the effects of every input permutation in their game.
HawaiianPig
Profile Blog Joined July 2008
Canada5155 Posts
February 20 2013 23:12 GMT
#33
I love patrick wyatt blogs!

Because the project was always two months from launch it was inconceivable that there was enough time to re-engineer the terrain engine to make path-finding easier, so the path-finding code just had to be made to work. To handle all the tricky edge-cases, the pathing code exploded into a gigantic state-machine which encoded all sorts of specialized “get me out of here” hacks.


Expected, but fun to hear a definitive statement on it.
AdministratorNot actually Hawaiian.
Freakling
Profile Joined October 2012
Germany1529 Posts
February 20 2013 23:23 GMT
#34
On February 21 2013 07:03 Falling wrote:
Yes! My all time favourite blog.

The isometric on top of square tiles I definitely noticed while map-mapmaking. It can be very frustrating to copy-paste things from other maps. Even ramp copy-paste usually means trying to individually find the right tile to make it flow a little better.

On the plus side, worker drills were born and you have to love that.


Part of what I love about BW mapping, is how it's all workarounds, and because you have to come up with your own solutions, there's a lot of room for individuality and creativity.

On the other hand, the fact that the pathfinding algorithm for ground units somehow seems to have problems to figure out what the term "straight line" could possibly mean, especially that it's darn hard to make a mineral line, that hasn't some worker go bananas in one way or another, makes debugging a map quite the chore...
IskatuMesk
Profile Blog Joined October 2008
Canada969 Posts
February 20 2013 23:25 GMT
#35
The reliance on hacks and hardcore hardcoded lard make Blizzard games such an unpleasant pain in the ass to mod. Jeez. And I doubt BW is anywhere near as bad as Diablo 2. Diablo 2... that game has some serious problems.
Merany
Profile Blog Joined February 2011
France890 Posts
February 20 2013 23:32 GMT
#36
Blizzard’s “when it’s done” policy for game launch was as much an admission that no one had any idea when we would finish as it was a commitment to releasing quality products.

That quote made me laugh quite a bit!
Great blog, as usual. I really hope he has more of those great stories to share about his time at Blizzard.
xccam
Profile Blog Joined September 2009
Great Britain1150 Posts
Last Edited: 2013-02-20 23:54:11
February 20 2013 23:49 GMT
#37
Wrong thread-
Evangelist
Profile Blog Joined June 2011
1246 Posts
February 21 2013 00:01 GMT
#38
On February 21 2013 05:33 Andr3 wrote:
Show nested quote +
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.

There's a lot of cool stuff that wasn't intended to be as the developers imagined it.

Besides all the cool tricks there are in BW, Quake had bunnyhopping( i think it was first "introduced" in doom..not sure), GunZ has a bunch of animation-based tricks. Like Wall cancelling etc.



I found BW's awful pathfinding to be a distraction. I would say the most successful unintentional game mechanic in modern games came from Tribes, namely skiing, followed by rocket jumping and then Counterstrike model stacking.
Dumbledore
Profile Joined April 2011
Sweden725 Posts
February 21 2013 00:20 GMT
#39
I love reading this kind of blogs Great stuff
Have a nice day ;)
Kurbz
Profile Joined April 2011
Australia88 Posts
February 21 2013 01:07 GMT
#40
I love reading articles like this, really gives you insight into the trials and tribulations of development. Plus i loved starcraft as a kid so my inner child is doing jumping jacks.
Never argue with an idiot, they will bring you down to their level and beat you with experience.
Shady Sands
Profile Blog Joined June 2012
United States4021 Posts
February 21 2013 01:17 GMT
#41
On February 21 2013 04:11 iPAndi wrote:
Thanks. This blog is beyond awesome, and any programmer, specially a games programmer, will enjoy this series inmensely. I can only imagine what the Carrier code was like, and this bugs are directly correlated with the old inheritance model being adapted to games. If this game was made in components, they would've had wayyyy less code copypaste syndrome, and a much more dynamic model to approach bugs.

What's the inheritance vs component model of making things?
Что?
Falling
Profile Blog Joined June 2009
Canada11349 Posts
February 21 2013 01:33 GMT
#42
On February 21 2013 09:01 Evangelist wrote:
Show nested quote +
On February 21 2013 05:33 Andr3 wrote:
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.

There's a lot of cool stuff that wasn't intended to be as the developers imagined it.

Besides all the cool tricks there are in BW, Quake had bunnyhopping( i think it was first "introduced" in doom..not sure), GunZ has a bunch of animation-based tricks. Like Wall cancelling etc.



I found BW's awful pathfinding to be a distraction. I would say the most successful unintentional game mechanic in modern games came from Tribes, namely skiing, followed by rocket jumping and then Counterstrike model stacking.

I don't play any of those games, so for RTS's I would move shot at the top of successful unintentional game mechanics. But mineral slides and worker drills are pretty good discoveries as well.
Moderator"In Trump We Trust," says the Golden Goat of Mars Lago. Have faith and believe! Trump moves in mysterious ways. Like the wind he blows where he pleases...
Wohmfg
Profile Blog Joined January 2009
United Kingdom1292 Posts
February 21 2013 03:08 GMT
#43
On February 21 2013 07:58 Torpedo.Vegas wrote:
Show nested quote +
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.


I would argue the "perfection" can from the persistence and innovative attitudes applied to the game because of the competitive scene built around it. It is only natural for players to try to exploit bugs or incorporate as many facets of a game into their play style. Regardless of whether these facets were intended or not. I think it may be even more unreasonable to expect a developer to truly know the effects of every input permutation in their game.


Exactly! So think of a game that is completely the developer's vision. There is less to exploit, there is less depth in the long run.
BW4Life!
Torpedo.Vegas
Profile Blog Joined January 2011
United States1890 Posts
February 21 2013 03:22 GMT
#44
On February 21 2013 12:08 Wohmfg wrote:
Show nested quote +
On February 21 2013 07:58 Torpedo.Vegas wrote:
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.


I would argue the "perfection" can from the persistence and innovative attitudes applied to the game because of the competitive scene built around it. It is only natural for players to try to exploit bugs or incorporate as many facets of a game into their play style. Regardless of whether these facets were intended or not. I think it may be even more unreasonable to expect a developer to truly know the effects of every input permutation in their game.


Exactly! So think of a game that is completely the developer's vision. There is less to exploit, there is less depth in the long run.


Its a tricky business though because at times certain bugs or quirks need to be patched in order to preserve competitive stability. Being able to identify which issues require fixing from issues that are benign and may even contribute to the depth of the game is a difficult task. A developer could try waiting and let time tell the difference, but that risks permanently damaging the competitive scene if they wait too long to patch a bad issue, or they could jump they gun and patch a "good" issue which makes the game more bland. There is no definitive science to this and seems to often be a hell of a lot of luck.
CecilSunkure
Profile Blog Joined May 2010
United States2829 Posts
February 21 2013 04:34 GMT
#45
Yay I've been waiting a while to be able to read this thing
mishimaBeef
Profile Blog Joined January 2010
Canada2259 Posts
February 21 2013 04:39 GMT
#46
My favourite part:

"Because the project was always two months from launch it was inconceivable that there was enough time to re-engineer the terrain engine to make path-finding easier, so the path-finding code just had to be made to work. To handle all the tricky edge-cases, the pathing code exploded into a gigantic state-machine which encoded all sorts of specialized “get me out of here” hacks."
Dare to live the life you have dreamed for yourself. Go forward and make your dreams come true. - Ralph Waldo Emerson
Antisocialmunky
Profile Blog Joined March 2010
United States5912 Posts
February 21 2013 06:55 GMT
#47
On February 21 2013 10:33 Falling wrote:
Show nested quote +
On February 21 2013 09:01 Evangelist wrote:
On February 21 2013 05:33 Andr3 wrote:
On February 21 2013 05:06 Wohmfg wrote:
I love how these little quirks in games add so much to the top level of play.

How a game can be so perfect without being engineered that way.

There's a lot of cool stuff that wasn't intended to be as the developers imagined it.

Besides all the cool tricks there are in BW, Quake had bunnyhopping( i think it was first "introduced" in doom..not sure), GunZ has a bunch of animation-based tricks. Like Wall cancelling etc.



I found BW's awful pathfinding to be a distraction. I would say the most successful unintentional game mechanic in modern games came from Tribes, namely skiing, followed by rocket jumping and then Counterstrike model stacking.

I don't play any of those games, so for RTS's I would move shot at the top of successful unintentional game mechanics. But mineral slides and worker drills are pretty good discoveries as well.


I'd say the most successful broodwar issues are tight walls, stacked fliers, and patrol micro since they have you be used to make the game balanced.
[゚n゚] SSSSssssssSSsss ¯\_(ツ)_/¯
Marine/Raven Guide:http://www.teamliquid.net/forum/viewmessage.php?topic_id=163605
endy
Profile Blog Joined May 2009
Switzerland8970 Posts
February 21 2013 07:19 GMT
#48
Great read, just like the previous ones.

Game units would get stuck and stop on the battlefield.


This still happens a lot to dragoons in version 1.16; please patch asap !

ॐ
budar
Profile Joined February 2011
175 Posts
February 21 2013 08:21 GMT
#49
Honestly, I thought this particular post was pretty low on information compared to the other few. It doesn't really say much about the path-finding except that it was messy and that they had to make workers "drill", both of which we already knew beforehand.
thedeadhaji *
Profile Blog Joined January 2006
39489 Posts
February 21 2013 08:50 GMT
#50
Props to heyoka for copying just enough of the original text to make us eager to read the rest
Foxxan
Profile Joined October 2004
Sweden3427 Posts
February 21 2013 16:35 GMT
#51
On February 21 2013 17:21 budar wrote:
Honestly, I thought this particular post was pretty low on information compared to the other few. It doesn't really say much about the path-finding except that it was messy and that they had to make workers "drill", both of which we already knew beforehand.



i feel excactly this
i was expecting more in the line of how patrol micro occured, was if with purpose or accident?
Just an example
Delwack
Profile Joined December 2011
123 Posts
Last Edited: 2013-02-21 16:54:44
February 21 2013 16:53 GMT
#52
With him stating that the pathfinding code had so many get me out of here hacks and it being more a giant state machine than fundamentally good pathfinding code, I think it's safe to conclude that pretty much all odd behavior was accidental (most likely as a side-effect as a fix for something worse as with mineral walking, or as a 'good enough, sorta kinda working' thing.)
Jealous
Profile Blog Joined December 2011
10141 Posts
February 21 2013 17:26 GMT
#53
Thanks for keeping us updated!
"The right to vote is only the oar of the slaveship, I wanna be free." -- бум бум сучка!
zf
Profile Joined April 2011
231 Posts
February 21 2013 17:34 GMT
#54
On February 21 2013 10:17 Shady Sands wrote:
What's the inheritance vs component model of making things?


In the inheritance model, polymorphism is provided by subclassing. Specialized game objects subclass general game object classes and override their relevant methods. In the component model, polymorphism is provided by aggregation. Game objects are associated with a number of different components, each of which provides some behavior that the game objects exhibit. Exactly how these components relate to one another depends on the kind of component model implemented.

Inheritance model:

class GameObject:
function Method():
//general functionality

class SpecializedGameObject (inherits GameObject):
function Method():
//specific functionality

Component model:

class GameObject:
Component[] components

Here's a link to a much better explanation than the one I provided.
Kommatiazo
Profile Blog Joined February 2011
United States579 Posts
February 21 2013 18:31 GMT
#55
The bit about the carrier made me laugh.

Great read. Love these write ups. Thanks for sharing Heyoka!
"You must enemy don't know, and very good micro" - Bosstoss #Wet4Ret
Grumbels
Profile Blog Joined May 2009
Netherlands7031 Posts
February 21 2013 19:33 GMT
#56
On February 21 2013 07:55 rauk wrote:
Show nested quote +
On February 21 2013 07:52 Grumbels wrote:
I wonder if they could have found a way to have workers have collision while mining for SC2.

And he has to be like my favorite person, such interesting blogs.


and remove worker drilling? yeurgh

The idea is that workers having no collision is something that we are all used to, but it's a bit weird and wasn't really the intention of the developers, as can be seen from this article (it's a hack to make the game work to meet a deadline).

Starcraft 2 was a chance to potentially change this mechanic and make workers always have collision, and because these days we have more computing power and better algorithms, there's a good chance they could have come up with something that was playable. And I was basically wondering if what they would have come up with had a chance to be superior to the current model.

With every change you make you lose something and it's not always obvious what you're getting back. Like Dustin Browder says: if you're too careful you'll never end up making a change to anything, at some point you're going to have to take risk.

I thought that maybe with worker collision a potential outcome could be that income per drone would be less straight forward and more interesting, so just wondering really. :o
Well, now I tell you, I never seen good come o' goodness yet. Him as strikes first is my fancy; dead men don't bite; them's my views--amen, so be it.
ajxPurpleRain
Profile Joined July 2012
United States87 Posts
February 21 2013 20:27 GMT
#57
Great blog. I greedily slurped this one up and eagerly await the next installment.
Only want to see you /dancing in the PurpleRain.
Master of DalK
Profile Blog Joined June 2012
Canada1797 Posts
February 21 2013 23:43 GMT
#58
Mr.Wyatt's blogs are really fun to read :D I enjoy them a lot!
@MasterDalK | Maelstrom Entertainment | Streaming Every Esport Under the Sun
jimminy_kriket
Profile Blog Joined February 2007
Canada5501 Posts
February 22 2013 00:20 GMT
#59
Thanks for the share. Interesting read, brought back great memories of worker drills and made me think of how much less excitement could have been produced by the game if that simple hack wasn't included in the release. <3 Patrick Wyatt
life of lively to live to life of full life thx to shield battery
Zariel
Profile Blog Joined December 2010
Australia1285 Posts
February 22 2013 00:38 GMT
#60
Interesting. I wonder what would Patrick have to say about the behaviour of air units and moving shot?
sup
Chimpalimp
Profile Joined May 2010
United States1135 Posts
February 22 2013 00:49 GMT
#61
Hacky fixes, sounds like when engineering and marketing have their bimonthly rage inducing encounter.

The carrier part was rather histarical, even thought I have had bugs like that in my own experience. When someone is in a rush, they tend to produce some rather terrifying code. Quite an entertaining read, thanks for posting it Heyoka.
I like money. You like money too? We should hang out.
Proseat
Profile Blog Joined February 2012
Germany5113 Posts
Last Edited: 2013-02-22 08:47:34
February 22 2013 08:43 GMT
#62
A quick dirty hack -- the origins of the infamous (Wiki)Mineral Walk.
The Rise and Fall of SlayerS -- a timeline: http://www.teamliquid.net/blogs/viewblog.php?id=378097
cerb
Profile Joined June 2009
Germany215 Posts
February 22 2013 12:10 GMT
#63
Wow, really a great blog. Great read.
Ciryandor
Profile Blog Joined May 2010
United States3735 Posts
February 22 2013 15:03 GMT
#64
I now wonder what he thinks of how hard it is to wall in in BW, and how micro can save some units by putting them out of reach of others because of those pixel differences.
에일리 and 아이유 <3 - O Captain 박재혁 ・゚✧*:・*゚+..。✧・゚:*・..。 ✧・゚ :・゚* ゜・*:・ ✧・゚:・゚:.。 ✧・゚ SPARKULING ・゜・:・゚✧*:・゚✧。*゚+..。 ✧・゚: ✧・゚:*・゜・:・゚✧*::
Masq
Profile Blog Joined March 2009
Canada1792 Posts
February 22 2013 19:01 GMT
#65
Interesting article.

Kind of emphasizes how broodwar was more of a fluke than anything.
AnomalySC2
Profile Joined August 2012
United States2073 Posts
February 22 2013 19:25 GMT
#66
On February 23 2013 04:01 Masq wrote:
Interesting article.

Kind of emphasizes how broodwar was more of a fluke than anything.


Interesting indeed, and a brilliant fluke it was and still is.
YoucriedWolf
Profile Joined July 2010
Sweden1456 Posts
February 23 2013 19:24 GMT
#67
This did nothing but make me miss BW ):

All of those glorious flukes will never be replicated
Normal
Please log in or register to reply.
Live Events Refresh
Sparkling Tuna Cup
10:00
Weekly #98
CranKy Ducklings122
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
ProTech83
StarCraft: Brood War
Hyuk 1792
Barracks 1583
BeSt 1406
Larva 669
Mini 582
firebathero 362
actioN 345
Dewaltoss 291
Soma 258
Shuttle 192
[ Show more ]
EffOrt 183
Leta 142
Hyun 137
Last 136
Bonyth 90
ToSsGirL 88
PianO 81
Sharp 63
Shinee 34
Backho 26
sorry 22
Sacsri 20
Noble 15
ajuk12(nOOB) 11
Dota 2
XcaliburYe671
XaKoH 597
canceldota215
League of Legends
JimRising 439
Counter-Strike
x6flipin460
Heroes of the Storm
Khaldor224
Other Games
Happy348
SortOf233
Organizations
Other Games
gamesdonequick2558
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 15 non-featured ]
StarCraft 2
• Berry_CruncH264
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• WagamamaTV375
• lizZardDota2253
• Ler56
League of Legends
• Jankos1463
Upcoming Events
Online Event
5h 21m
BSL 2v2 ProLeague S3
7h 21m
Esports World Cup
1d 23h
ByuN vs Astrea
Lambo vs HeRoMaRinE
Clem vs TBD
Solar vs Zoun
SHIN vs Reynor
Maru vs TriGGeR
herO vs Lancer
Cure vs ShoWTimE
Esports World Cup
2 days
Esports World Cup
3 days
Esports World Cup
5 days
CranKy Ducklings
5 days
BSL20 Non-Korean Champi…
6 days
BSL20 Non-Korean Champi…
6 days
Bonyth vs Sziky
Dewalt vs Hawk
Hawk vs QiaoGege
Sziky vs Dewalt
Mihu vs Bonyth
Zhanhun vs QiaoGege
QiaoGege vs Fengzi
FEL
6 days
Liquipedia Results

Completed

2025 ACS Season 2
RSL Revival: Season 1
Murky Cup #2

Ongoing

BSL 2v2 Season 3
Copa Latinoamericana 4
Jiahua Invitational
BSL20 Non-Korean Championship
CSL Xiamen Invitational
Championship of Russia 2025
Underdog Cup #2
FISSURE Playground #1
BLAST.tv Austin Major 2025
ESL Impact League Season 7
IEM Dallas 2025
PGL Astana 2025
Asian Champions League '25

Upcoming

CSLPRO Last Chance 2025
CSLPRO Chat StarLAN 3
BSL Season 21
RSL Revival: Season 2
SEL Season 2 Championship
uThermal 2v2 Main Event
FEL Cracov 2025
Esports World Cup 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2
BLAST Open Fall 2025
BLAST Open Fall Qual
Esports World Cup 2025
BLAST Bounty Fall 2025
BLAST Bounty Fall Qual
IEM Cologne 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.