버그

Bug

1 벌레를 뜻하는 영어단어

곤충을 포함한 벌레류의 총칭. 스타쉽 트루퍼스 영화판에선 원작의 멀쩡한 아라크니드(거미족) 냅두고 갑자기 버그라고 부르기 시작했다[1] 물론 이거 하나 적자고 만든게 아니다 곤충인 노린재도 영어로 bug다.[2]

2 프로그램을 실행하는 과정에서 발생하는 오류

파일:Attachment/computer bug.jpg

이것이 1945년 9월 9일, 코볼의 발명자인 그레이스 호퍼가 발견한 인류 역사상 최초의 컴퓨터 버그. Mark.II 컴퓨터의 회로에 나방이 들어가 합선을 일으켜 비정상적으로 동작되었던 것이며 이 나방은 나중에 미국 해군에서 여러 해 동안 전시해 놨었다고 한다. 운 더럽게 좋네 죽는 대신 영원히 사람들 앞에서 고통받으리라... 현재는 스미소니언 박물관이 소장 중.

다른 말로는 glitch라고도 불린다.근데 정확히 말하면 서로 다른 개념이다. 글리치는 하드웨어적 오류고 버그는 소프트 웨어적 오류이다 그럼 최초의 버그는 글리치인데? 절대 치트와 혼동하지 마라! 버그라는 이름의 유래로, 위에서 언급한 컴퓨터에 벌레가 들어가 오류를 일으킨 사건 때문에 만들어졌단 설이 널리 알려져 있으나, 실제로는 컴퓨터가 만들어지기 이전부터 엔지니어들 사이에서 사용된 전문 용어였다. 1878년 토마스 에디슨이 언급하기도 했다. 영문 위키백과 참조

크게는 메모리 할당과 반환, 오버플로우 등에 따른 크래쉬(실행 불가능한 오류 혹은 컴퓨터 다운) 현상에서부터 작게는 구현상의 실수나 착각, 헛손질(...)에 따른 오작동도 포함한다. 한 마디로 원하던 결과가 나오지 않으면 버그.

웬만한 크기 이상의 프로그램 개발 중 50%의 시간과 70%의 골치(?)는 최종 디버깅(버그를 찾아내고 없애는 작업) 작업에 따른다. 프로그램이라는 게 뚝딱뚝딱 만든다고 되는 게 절대로 아니다. 거기에다 디버깅이 새로운 버그를 만들어낼 때도 많다. 심지어 디버깅했더니 더 많은 버그가 불쑥 튀어나오는 경우도 있고 디버깅하려고 손만 대면 또 멀쩡해지는 버그(하이젠버그#s-3)도 있다.[3] 또한, 버그를 발견해 수정한 뒤 실행해보면 다른 부분에서 버그가 걸리는 경우도 많다. 이 경우는 대규모 프로그램에서 자주 발생된다. 워낙 많은 코드들이 관여돼서 코드를 조금만 손봐도 시스템 전체에 영향을 미치는데, 이 경우에는 실 사용에 무리를 주는 치명적인 버그가 아니라면 그냥 두는 경우도 많다.[4]

102849a9864bd466b0dd1b642516278e.jpg

있으면 환장하겠고 없으면 나중에 터질까 불안하고...

"코딩 단 한 번에 완성되는 프로그램은 절대로 없다."

"버그가 없는 프로그램은 존재하지 않는다."
"버그가 없으면 그게 바로 버그다" 이건 현실인데?

두 말은 프로그래밍에서는 십계명만큼이나 중요한 진리. 여기에 해당되지 않는 경우라면 만드는 프로그램이 Hello, world!처럼 간단하며 만드는 방법도 다 알려져 있어서 버그가 나올 건덕지가 없거나[5] 프로그래머가 신의 영역에 들어선 굇수거나 둘 중 하나다.

사실 프로그래머들도 버그가 없는 프로그램이 작성되면 굉장히 두려워한다. 이러한 프로그램들은 꼭 중요한 순간에 뒤통수를 때린다는 징크스가 있기 때문이다(...) 예를 들면 슈뢰딩버그. 그리고 이에 대한 공포를 드러내주는 예. 초등학생이 대다수를 차지하는 네이버 댓글이라 그런지 이해하지 못하는 사람들이 많다.[6]초등학생이 아닌데도 이해못한다면? 뭐긴뭐야 컴돌이가 아닌거지 속칭 컴덕쪽의 비유로는 컴퓨터 자가수리 다 끝내고 심지어 컴퓨터도 아무런 문제없이 잘 돌아가는데 분해할 때 나온 나사 한두개가 남아있는 상황과 같은 것이다.

당신이 아무 불편 없이 쓴다고 생각하고 있는 (상용은 특히) 프로그램들은 100% 버그를 가지고 있다. 못 느껴서 그렇지. 심지어 단순한 메모장조차 버그가 존재한다!!

오죽하면 "버그가 없는 프로그램은 없다. 만약 버그가 없는 프로그램이 있다면 그것은 버그가 존재할 수 없을 정도로 단순하거나 버그가 있어도 모를 정도로 복잡한 프로그램일 것이다" 라는 말도 있을 정도.[7]

사실 상용 프로그램의 경우에는 주어진 기한이 있기 때문에 그 날짜 안에 프로그램이 동작하도록 만드는 것이 제 1의 목적이다. 프로그램에 버그가 있고 없고는 중요하지 않다. 일단 날짜 맞추는 게 중요하다. 안 그러면 위약금이나 각종 패널티 크리가 터진다. 그러다보니 버그가 있다는 것을 알면서도 일단 동작만 하도록 프로그램을 만든다. 보통 프로그램이 한 번에 납품되는 것은 아니므로 문제를 인식한 고객 측은 버그에 대한 피드백을 해올 것이고 발생하는 문제는 그때 가서 완벽하게 해결하는 형태이다.이래서 프로그래머의 연봉이 높은겁니다

그 외에 프로그램을 개발하는 단계에서는 "사용자가 A와 B란 동작을 하면 C란 결과가 나온다" 와 같은 시나리오가 존재한다. 여기에는 FM동작 이외에도 각종 변칙적이거나 돌발적인 행동요소도 포함되지만 사실 모든 상황을 감안하지는 못한다.[8] 그러다보니 상정 외의 상황에서는 미처 파악하지 못한 버그가 나오는 경우가 있다.[9]

또한 프로그램 동작 메카니즘에서 발생하는 나비효과 크리가 있다. 이건 정말 답 안 나온다. 앞에서 영향을 받은 것들이 쌓이고 쌓였다가 터지는 것이라서 A를 해결하니 B가 터져나오고 B를 해결하니 C가 터져나오는 형상. 더 꼬일 수도 있고 하나씩하나씩 해결했더니 원점으로 회귀하는 경우도 간혹 발생한다(...) 프로그래머 입장에서는 그야말로 헬게이트.

반대로 희귀하지만 버그를 이용 또는 적용한 사례도 있는데, 그 경우가 RTS게임 워게임: 레드 드래곤[10]

이것을 제거하는 작업을 디버깅이라고 한다.
네이버 검색창에 .? 를 처보세요

현대에도 PC에 벌레가 서식해 고장의 원인이 되기도 한다. 발열로 따뜻한 본체 속으로 추위를 피해서 터를 잡기도 하고, 심지어는 알을 까기도 한다. 데스크탑은 2~3년간은 들춰볼 일이 없어서 벌레들에게 완벽한 도피처. 이런 사례는 심심찮게 발생한다. SSD를 점령한 불개미. 어느 날 갑자기 SSD 인식 오류가 생겨 열어봤더니 불개미떼가 SSD에 들어가 알을 까고 있는 모습이 당사자로 하여금 개미를 죽입시다 개미는 나의 원수를 외치게 할 정도로 처참하다. 심한 경우 바퀴벌레가 둥지를 트거나, 심지어는 고양이나 쥐가 기어 들어가기도 한다.

집안이 깨끗하다면 큰 걱정 하지 않아도 된다. 조용하고 따뜻한 인터넷 공유기를 미리 까보면 무소음 PC가 벌레로부터 안전할지 짐작해 볼 수 있다.

2.1 게임에서의 버그

게임 쪽에서는 게임의 다른 부분과 동떨어진 비현실적인(?) 현상이나 게임의 메커니즘을 따르지 않고 치트 비슷한 효과를 부르거나 정상적으로 게임이 진행되지 않는 등의 상황을 부르는 요소를 뜻한다.

이러한 버그로 악명이 높은 게임들은 마그나카르타를 필두로한 소프트맥스의 몇몇 작품들.[11] 그리고 개발자들의 꿈인 발매연기를 그렇게나 했고 패치도 숱하게 했음에도 여전히 버그가 있다는 포가튼 사가, 게임의 절반을 패치로 공개했냐는 말을 들은 천랑열전 등이 있다.

버그가 심하면 못해먹을 정도가 되지만 악마성 드라큘라 월하의 야상곡 같은 경우는 오히려 버그를 찾아내는 게 게임의 또 다른 재미로 회자되기도 한다(아무래도 게임 진행 불가능보다는 치트성 버그가 더 많아서 그런 듯). 특히 정상적인 플레이로 채울 수 있는 맵을 넘어서 악마성의 바깥 부분을 탐색하여 맵 달성도를 300% 가까이 올리거나 하는 등의 요소는 이미 일종의 야리코미용 서비스로 자리잡은 듯한 느낌도 든다. 월하의 야상곡 이후부터 GBA용 백야의 협주곡과 효월의 원무곡 등에서도 이러한 버그가 존재했다.

하지만 콘솔 게임에서의 버그야 남에게 피해를 주지 않고 혼자서 플레이하는 게임이기 때문에 크게 상관은 없지만[12] 여러 명의 게이머들이 함께 즐기는 온라인 게임에서의 버그 사용은 스포츠에서의 약물복용과 동급인 행위이자 온라인 게임 내에서 최악의 범죄로 취급한다. 만약 버그 쓰다가 들키면 GM에게 해당 게임에서 계정을 영구정지당해 해당 게임에서 영구퇴갤당할 수 있다. 그러므로 고의든 모르고든 간에 버그는 절대로 쓰지 마라. 그리고 돈 복사같은 치명적인 버그를 악용해서 물질적인 이득(예를 들어서 : 현금화)을 본 경우 영업 방해로 처벌 될 수 있다. 우리나라의 경우 그냥 넘어가는 경우가 많지만, 외국은 그딴 거 없고 무조건 영업 방해로 고소한다. 참고 이 때 배상해야 되는 금액은 해당 행위로 이득을 본 금액의 전부의 + 해당 사태 진정을 위해 사용된 인건비 등등 합해서 버그 악용해서 이득을 봤던 금액의 몇 십에서 몇 백배는 우습게 뛰어넘는다.

프로그램 적인 오류 이외에 하드웨어적인 오류들도 있는데 대표적인 예가 겟단으로 널리 알려져 있는 글리치 오류. 패미컴 같은 전극식 롬팩의 경우에 이런 일이 잦아서 접속이 잘 안될 경우 롬팩 전극을 부는 일이 일상적인 풍경이었다.

또한 심각한 버그들이 플레이어들에 의해 아주 독특한 게임 시스템으로 자리매김한 북두의 권 -심판의 쌍창성 권호열전-이라는 쿠소게도 있다. 졸지에 대전액션게임이 세기말 스포츠 게임이 되었다.

스트리트 파이터 2부터 대전액션게임에서의 버그도 주목을 받기 시작했다. 역시 가장 유명한 것은 가일의 버그성 기술들. 단, 무한 콤보는 버그가 아니라 밸런스 조정 실패로 인한 현상으로 버그와 구별된다. 단 무한콤보라도 KOF 97의 무한 파워차지나 01엔젤한정 무한콤보처럼 버그로 인해 일어난 무한콤보가 존재한다는 것은 알아두자. 괴게임으로 유명한 해적판 게임인 강룡[13]의 경우 일부러 시스템을 만져 버그를 일으킨 케이스.
그 외에도 연속기를 넣는 중에 다음 기술을 넣지 않고 중간에 끊는 이른바 '캔슬' 개념 또한 대표적인 버그이며,[14] 파동권을 연속해서 쓸 경우 나가던 빨간색 파동권 역시 버그인데, 그 때문에 위력 차이는 없었다. 그러나 훗날 이 버그는 류의 화염파동권으로 재탄생되는 계기가 되었다.

KOF 시리즈는 거의 매시리즈마다 이상한 버그가 여러개 발견되기로 악명높은 게임 시리즈.허나 이것은 문제는 XI이나 XIII등 개발 시간이 넉넉한 경우에도 발생한다(...)

베데스다 게임 스튜디오엘더스크롤 시리즈폴아웃 3(그리고 그걸 토대로 만들어진 폴아웃 뉴베가스까지)는 버그가 많기로 악명이 높다. 그러나 게임 자체의 인기가 너무 많다보니 아예 유저들이 제작진이 못 고친 버그를 고치는 모드를 내놓기까지 한다.

복돌판에서 버그가 생기는 경우도 있다.대표적인 게임이 바로 3D Instructor(City Car Driving)

이거 완전 짤방감이다(...)
임시방편으로 '~'키를 눌러서 콘솔창을 띄운다음 <p_reload_car>를 치면 된다던데...[15]걍 정품을 지르자...정품은 그런거 없다.

2.1.1 버그가 공식적인 플레이로 인정받은 케이스

버그 중에서도 게임 밸런스를 심각하게 침해하지 않는 수준의 플레이는 공식적으로 허용되기도 하며 컨트롤의 영역으로 인정받는다. 특히 FPS에서 이런 경향이 두드러진다고 한다. 고치지 않기로 한 경우 오히려 버그성 플레이를 염두에 두고 밸런싱을 하는 경우도 종종 볼수 있다. 이러한 경우는 단순히 버그에서 멈추지 않고, 나아가 창발적 플레이로도 볼 수 있게 된다.

  • 게인 그라운드 - 굉장히 특이한 케이스인데, 초기 아케이드 버젼에서는 버그로써 4-8에서 적 전멸 플래그가 작동 하지 않아서 제한시간내에 멤버들을 출구로 보내야하는데 시간이 모든 동료를 다 내보내기에는 빠듯하다. 그런데 탈출 못 한 멤버는 사망처리 되는데 게이머들은 오히려 이 것을 여긴 내게 맡기고 앞으로 클리셰로 인식하고 뜨거운 전개라고 생각했다. 마침 해당 4-8스테이지의 위치가 최종스테이지의 전 전 스테이지기 때문. 그래서 해당 버그를 고친 다른 아케이드 버전은 오히려 그 부분에 대해서 욕을 먹었고, PS2판은 해당 버그를 On/Off시키는 옵션을 넣어놨다. (...)
  • 더 킹 오브 파이터즈 시리즈 - 패캔. 한국 캐릭터중 하나인 김갑환이 기가 없는 상태에서 패기각을 가드/히트시킨 뒤 봉황각 커맨드↓↙←↙→ + B or D를 입력하면 버그로 패기각의 딜레이만 사라지는 현상이 있다. 성공하면 사라진 딜레이만큼 예상못한 공격을 한두번 더 가능하게 하며 이를 시작으로 더욱더 다양한 콤보가 파생이 가능하다. 실제사용이 매우 어려운 만큼 컨트롤의 일종으로 공인받아 시리즈가 새로 만들어져도 오히려 넣게 되었다고 한다.
  • 더 킹 오브 파이터즈 시리즈 - 지뢰진 버그. 날리는 기본기or특수기-필살기로 캔슬-지뢰진을 하면 상대가 낙법중이어도 지뢰진을 맞는 버그와, 기상직후에 지뢰진을 구겨넣으면 지뢰진을 가불로 맞는 버그가 있었다. 98UM에서는 고로의 너프를 위해 삭제시켰고, 03에서도 타격기로 바뀌면서 삭제되었지만, NW와 02UM에서는 버그를 오히려 확장시켜 모드 중이라면 본래는 안 들어가는 지뢰진 버그까지 들어가게 바뀌었다.
  • 던전 앤 파이터 - 많은 결장 테크닉이 버그이다. P2P 방식의 문제점으로 생긴 버그들로 보통 맞지 않아야 할 것들이 맞는다. 관전할 때 가장 멋드러진 테크닉인 끌잡이 이를 이용한 버그.
  • 데빌 메이 크라이 4 - 많은 상급 테크닉들. 워낙에 잔버그가 많은걸 플레이어들이 수 년동안 연구해서 이를 활용한 것. [16] 그중 제일 유명한 게 디스토션. 마인화 특정 타이밍에 기술의 판정이 겹쳐지면 데미지가 많이 부풀려진다. 보통 길가메시의 리얼 임팩트에 많이 쓰인다. SE에서도 건재한 걸로 보아 아마 캡콤에서도 인정한 모양.
  • 도타 올스타즈,도타 2 - 타이니(도타 2)의 산사태-던지기 콤보. 속칭 아발토스. 산사태는 일정시간동안 범위내에 있는 적에게 피해를 주며 기절시키는 기술인데, 산사태 지속중 던지기에 맞으면 산사태를 2번 맞는 버그가 발견되었으나 성공시키기 쉬운 콤보가 아니기 때문에 공식 기술로 인정받아 이식작인 도타2에서도 가능하게 되어있다.
  • 리그 오브 레전드 - 리븐(리그 오브 레전드)의 q평캔, 카직스의 도약도중 스킬난사. 둘 다 상당히 난이도가 높다. 하지만 이 두 캐릭은 버그로 인한 혜택이 너무 커서 자체 스펙을 끝도 없이 너프당했다(...) 아니던데... 또한 헤카림의 E스킬도 있다. 평타 사거리를 늘려주는 스킬이지만 얇은 벽 너머에 있는 적을 타겟팅하게 되면 넘어갈 수 있다. 하지만, 버그로 규정해 패치는 하지 않고 인정해줬다.
  • 마비노기 영웅전 - 피오나의 헤비스탠더 캔슬. 운영진이 컨트롤의 영역으로 인정하고 남겨둔다고 공인한 버그.[17]
  • 메이플스토리 - 메르세데스의 '라엣 캔슬'. 본래 라이트닝 엣지(약칭 라엣)이란 돌진 스킬은 꽤 긴 선후딜을 가진 스킬이지만 점프 시에만 사용 가능한 스킬인 리프 토네이도를 점프하지 않고 발동 시 리프 토네이도는 씹히지만 라이트닝 엣지의 선후딜이 사라지는 버그가 있었다. 이를 통해 라이트닝 엣지를 선후딜 없이 연속적으로 사용할 수 있었다. 이 캔슬은 한 때 막혔지만이 때 메르세데스 유저들은 광광 우럭따, 운영자가 컨트롤의 영역으로 인정하여 부활시켜주었다.
  • 문명 - 처음 플레이를 인도로 설정하고 민주주의로 하게되면....
  • 사이퍼즈 - 낙스킬, 낙궁 컨트롤. 휠을 굴려 휠스킬을 사용하며 언덕 등에서 떨어질 경우 낙하중인데도 낙하 모션 없이 정상적으로 스킬이 발동한다. 제작사 측에서도 예측 못한 버그였지만 고쳐지지 않고 오히려 낙스킬을 염두에 두고 밸런싱이 이루어졌다. 대표적으로 결정의 루이스는 궁극기 하단판정이 생겼다.
  • 스타크래프트 - 비비기, 뮤짤, 스탑러커[18]
  • 엘더스크롤 시리즈 - 자이언트 공중사출 사망신. 개그소재가 되어 팬들의 요청에 의해 수정되지 않고 있다.
  • 염소 시뮬레이터 - 재밌어서 일부러 버그를 고치지 않는다고 제작진이 천명했다. 물론 게임 실행 자체가 불가능한 튕기는 버그는 잡는다.게임이 팅겨야 하는 도전과제가 있는데 덕분에 깨기 힘들다.
  • 카운터 스트라이크 - 플레이어 캐릭 위에 플레이어 캐릭이 올라가는 소위 겹치기 버그,시전시간이 있는 근접무기로 공격을 시전한뒤 다른 무기로 바꾸면 약간의 추가데미지와 함께 공격의 판정이 해당 무기로 바뀌는 체인지샷[19][20][21]
  • 케츠이 - 케츠이봄 현상도 엑스박스360에서 도전과제로 인정받았다
  • 타이거 우즈 PGA 투어 08 - '지져스 샷'. 버그가 아니라 스킬이다. 참고.
  • 테일즈런너 - 달리기경주게임이라는 것 외에는 컨셉이 잡히지 않았던 시절. 대시중 점프 일정 높이 이상에선 대시버튼을 떼도 속도가 유지된다는게 알려진후 평등한 대시게이지로 최대한 오래 가속을 유지하는 게 관건인 게임이 되었다.[22]
  • 팀 포트리스 2 - 스파이스파이크랩 버그.[23] 역시 개그소재로 받아들인 플레이어들에 지지에 의해 수정되지 않고 공식에 받아들여졌다.
  • 능력자X - 블레이드의 일섬에 걸리기 직전에 대쉬를 할 경우 일섬의 경직이 들어가지 않는 버그가 있었다. 하지만 오히려 밸런스에 유익하다고 판단해서 그냥 대쉬중 일섬의 경직이 들어가지 않도록 수정하였다.
  • 테일즈위버 - 게임 내에서 바닥을 클릭한 상태에서 특정 윈도우(예, 이모티콘 창, 스킬 창 등)까지 커서를 드래그 한 후, 커서를 떼면 계속 클릭 요청을 보내는 상태가 된다. 즉, 마우스 커서 방향으로 자동으로 이동함.
  • 스케이트3 - 더 이상의 말이 필요한가? 게임 자체는 훌륭하지만 괴랄한 물리엔진으로 인해 버그 아닌 버그플레이가 차고 넘친다!
  • 버니합 - 항목 참고[24]
  • 워게임 레드 드래곤 - 게임 내에서 보병이 이동할때 원모양으로 대형을 짜서 이동해야 하나 발매 전 사전 테스트때 보병분대들이 무작위로 움직이는 버그를 발견. 개발진들은 이 버그를 도입해서 이제는 좀더 사실적으로 보병들이 움직인다고.
  • SD건담 캡슐파이터 온라인 - 저격 무기를 가진 기체, 특히 실탄 저격 무기를 가진 기체는 점프와 동시에 조준 모드에 들어가 딜레이를 캔슬하는 일명 순줌 이라는 테크닉을 사용할수 있었다. 냄비받침 공식 가이드북 에서 소개하면서 정식 기술로 인정받은 기술.
  • 그랜드체이스 - 그랜드체이스의 조작은 방향키와 z키가 주 조작키이며, 이를 활용하여 일반적인 플레이 범위에서 멀어난 플레이까지 할 수 있었다. 방향키로 대시와 점프 이동등등의 특정 커맨드를 순간 빠르게 입력하면 보통 대시보다 비정상적인 속도로 빠르게 이동하게 된다. 게임 가이드에서도 나와있지 않는 방법이고, 서비스 되고나서 약간이 시간이 흐른 뒤에야 발견된 것이니 만큼 운영자가 예상치못한 버그로 봐도 무방한 듯. 유저들이 직접 찾아냈고 유저들이 활동하는 커뮤니티에서 공유되고 있는 일종의 버그. 이 버그가 발견된지 오래됐으며, 아예 대중화가 되어버렸는데, 이를 유저 사이에서 스탭이라고 하며, 운영자들은 그랜드체이스가 초창기 대전게임이었던 만큼 추가적인 컨트롤 요소로 보고 디버깅은 하지 않기로 한 것 같다. 그랜드체이스 월드챔피언쉽에서도 실력자들은 다양한 스탭을 기본적으로 사용하며 이것이 그랜드체이스에게 얼마나 많은 영향을 끼쳤는지 알게 해주는 버그이다. 하지만 엄연히 보면 그랜드체이스의 PVP 진입장벽을 높게 만들어준 장본인이기도 하다. 다른 것이 또 있는데 오토라 하며 아래로 내려 갈 수있는 지형에서 적을 빠르게 하단공격을 했을 경우, 보통이면 아래로 내려가며 점프공격이 되어야 정상이지만 하단으로 내려가지 않고 그 자리에 그대로 있는 버그이다. 이것을 빠르게 반복해 적을 때릴 경우 평타보다 무척 빠르고 강력한 지속딜을 줄 수 있는 버그인데, 운영자 입장에서는 게임의 일부 재미요소로써 받아드리고, 게임의 한 시스템이라고 주장하며 디버깅을 하지 않았다.
  • 모던컴뱃3,4 - 백샷이라고 불리는 달리기중 격발 딜레이를 캔슬시키는 버그와 저격라이플을 사용할 때 줌인 상태에서 격발 후 달리기를 하면 볼트액션이 캔슬되는 이른바 퀵스코핑이라는 버그가 있다. 둘다 익히기가 조금 난해한 기술이라 개발사가 스킬로 인정한건지 두 시리즈 연속으로 이 버그가 존재한다고. 특히 백샷은 상대보다 2~3발을 먼저 박을 수 있다는 엄청난 이점때문에 고수가 되기 위해선 꼭 익혀야할 스킬이다. 하지만 핑이 높은 국내에선 얄짤 없는데?
  • 언턴드 - 스킬중에 비행(Flight) 스킬은 원래 버그였으나 개발자가 재미있다고 스킬로 넣었다
  • 카트라이더- 톡톡이라고 불리는 기술이다 물리엔진 처리상 드리프트 탈출력이 드리프트를 끊어지게 만드는 방법은 카트의 속도를 증가시켜 드리프트를 끊기게 하는 것이다. 따라서 드리프트 탈출력이 비정상적으로 높은 카트를 타고 드리프트를 아슬아슬하게 끌어주면, 드리프트를 끊으려고 카트의 속도를 증가시키려는 힘이 기존의 속도에 더해져 직선 부스터를 뛰어넘는 엄청난 속도를 만드는 것이다.

2.1.2 참고

2.2 기묘한(...) 소프트웨어 버그들

기묘한 프로그래머들을 기묘하게 빡치게 만드는 기묘한 버그

  • 보어버그 Bohrbug - 보어의 원자모형처럼 명확한 버그라고 해서 붙은 버그들로, 매우 명확한 이유로 생기는 버그지만, 정작 도저히 찾아낼 수 없는 버그들을 보어버그라고 부른다. 이런 버그들은 대부분 매우매우 특수한 경우에만 등장하는 버그이기 때문에 반영구적으로 발견되지 않는 경우가 상당히 많다.
  • 하이젠버그 Heisenbug - 불확정성원리에서 이름을 따온 버그로, 특정 수단으로만 발견이 가능한, 즉 디버거의 종류나 수단에 따라서 발견되기도, 되지 않기도 하는, 심지어 모습을 바꾸는(!) 버그들을 말한다. 대부분의 경우 메모리 부분의 코딩이 뭔가 잘못된 경우다. 이런 버그들은 디버거가 알아서 고쳐놓고 출력해버려[29] 발견되지 않는 경우가 있기 때문.
  • 만델버그 Mandelbug - 프렉탈이란 명칭을 제시한 만델브로트의 이름을 딴 버그로, 버그를 일으키는 원인이 괴악하게 꼬여있는 것들을 말한다. 만델버그는 보어버그에 속하며 그중에서도 실용적으로 해결할 방법이 없는 답이 없는 경우에 해당된다.
  • 슈뢰딩버그 Schrödinbug - 누군가 소스코드를 열어보기 전까지(상자를 열어보기 전까지), 기능이 정상과 오작동을 오가며 파동하는 것을 말한다. (슈뢰딩거의 고양이가 삶과 죽음 사이에서 요동하는 것 처럼). 소스코드를 열어보면, 영구적인 버그로 상태가 고정된다. aaronaught이 만든 단어이다.
  • 달 주기 버그 (...) - 달의 주기에 따라 버그 발생율이 달라진다는 미신이 실제로 일어난 경우(...) Y2K 버그처럼 특정 숫자에 약한 경우가 해당된다.
  • 통계학적 버그 - 한두번 실행해보는 것으로는 발견할 수 없고, 여러 번 실행해서 통계를 낼 수 있을 정도가 되면 그제야 튀어나오는 버그를 말한다. 유사-랜덤 코드들에서 자주 발생하며, 이런 버그들은 출력 노가다를 뛰지 않으면 발견할 수가 없어서 역시 매우 성가시다.
  • 카운터 버그 - 버그를 재현하려는 사람이 만든 재현 코드에서 당신이 찾은 버그이다.
  • 힉스-보손 버그 Higgs-Bugson - 사용자 보고서나, 이벤트 로그등을 분석 해 볼 때, 낮은 확률로 존재할 것으로 추측되는 가상의 버그이다. 실존하는지 여부를 알 수 없고, 원인을 알 수 없기 때문에 이를 개발환경에서 재현하는 것은 매우 어렵거나 불가능하다.
  • 성난 여자친구 버그(Mad girlfriend bug) - 뚜렷한 오동작이 있는데도 불구하고, 애플리케이션은 모든 것이 정상이라는 메시지만 보여주는 경우를 말한다. 이 단어는 jeduan-cornejo이 만들었고, 그의 여자친구는 음...
  • UFO 버그 - 고객에 의해 보고되는 버그로, 버그가 존재하지 않음을 증명하고 보여주어도, 계속해서 보고되며, 고객들은 반드시 그 버그가 존재한다고 믿는다.
  • 엑스칼리버 버그 - 회사의 모든 개발자가 수정하려고 시도 했었으나 아무도 성공하지 못한 버그를 말한다.

2.3 치트를 적용한 해킹 버전 게임들의 속어

정식 명칭은 아니나 꽤 많은 초딩들에 의해 사용되는 단어. 아무래도 해킹과 버그의 개념 차이를 잘 모르기 때문에 사용되는 단어로 추정된다. 혹은 '우린 모르고 그랬어요 징징'하는 식의 면책을 위해 의도적으로 사용하는 은어일 가능성도 있다. 네이버 지식iN 등지에서 심심치 않게 게임 버그를 찾는 초딩들을 발견할수 있다.

그리고 버그라는 단어하나로 기묘한 단어들을 만들어낸다. '돈버그'등의 단어는 그나마 양호한 축에 속한다. 심하면 '크랙버그', 돈버그크랙 등의 당최 정체를 알수없는 정체불명의 단어가 탄생한다.

특히 일반적인 치트 방식[30]을 사용할 수 없는 온라인 게임이나 인앱 결제가 포함된 모바일 게임들을 찾는 경우가 많다. 당연히 불법이고 발각되면 계정 정지를 먹을 가능성이 높기도 하지만 정작 제대로 동작하지 않는 경우가 많으며 와레즈 불법 공유와 마찬가지로 각종 악성코드로 뒤덮혀있을 가능성이 높다.

명절 등지에 사촌동생들이 이것을 찾느라 컴퓨터를 악성코드 투성이로 만들어 컴퓨터들을 박살내고 다닌다는 피해사례 등이 보고되고 있다.

3 오! 나의 여신님에 등장했던 개념

버그(동음이의어)참조

4 어린이 드라마 요정 컴미의 등장 조직

버그(동음이의어)

5 지구용사 벡터맨의 등장인물

버그(동음이의어)

6 기동전사 건담 F91에 등장하는 대량학살무기

자세한 것은 버그 항목 참조.

7 프리파라의 등장인물

자세한 것은 버그(동음이의어)파루루 항목 참조.
  1. 자세히 들어보면 영화 내에서도 아라크니드족이라고 나온다. 특히 연방 뉴스 부분. 버그(벌레새끼들)이라고 부르는 것은 2차 세계대전 중 독일인들을 krauts라고 부르고 일본인을 Japs라고 불렀던 미국인들, 그리고 일본인들을 왜구 및 왜놈이라고 불렀던 임진왜란 및 일제강점기 당시의 우리 민족들처럼 적을 비하하는 명칭이었을 뿐.
  2. True bug라고 구분지어 부르긴 하나, Assasin bug(침노린재)와 같이 노린재류를 bug라고 총칭하는 게 대부분
  3. 하이젠베르크의 불확정성 원리에서 따온 말. 하이젠버그의 원인은 주로 그냥 실행할 때 메모리 초기화 같이 예기치 못한 동작을 막아주는 기작이 빠졌는데 디버깅을 할 때는 디버거가 알아서 그런 기작을 다 해주는 것이다. 또는 멀티코어 시스템에서 둘 이상의 코어가 같은 메모리 영역을 사용하는데 메모리에 대한 연산이 보호되어있지 않을 때 발생한다. 나는 분명 1을 썼는데 다시 값을 참조해보니 10이 되거나 하는 경우. 디버거를 걸면 연산을 추적하는 과정에서 이러한 경우가 걸러질 때가 많다.
  4. 대용량, 고사양 게임의 경우 제작사 측에서 버그의 존재를 알고도 플레이에 지장이 없으면 그냥 출시하는 경우가 대표적.
  5. 물론 이것도 복잡하게 만들려면 한이 없고, 그경우 어김없이 버그가 나타난다. 정말 버그가 없다는 것을 확신하기 위해선 프로그램의 정확성을 수학적으로 증명해야 한다.
  6. 이해가 가지 않는 이들을 위해 쉽게 예를 들자면 여러분의 방에 벌레(버그)가 들어왔다고 상상해 보자. 여러분은 벌레를 싫어하기 때문에 창문과 문을 닫고 전기파리채를 챙겨왔다. 그런게 방금전까지 책상위에 있던 벌레(버그)가 보이지 않는다! 여러분은 분명 창문을 닫고 문을 닫았기 때문에 벌레(버그)는 반드시 방안에 있을 수밖에 없다. 프로그램에 버그가 없다는 것은 그런 상황이라고 설명할 수 있다.
  7. 근데 사실 버그가 존재할 수 없을 정도로 단순한 프로그램은 없다. 단순히 화면에 'hi' 두 글자 띄우는 프로그램을 실제로 짜면 5줄 안쪽으로 코딩할 수 있지만 그 5줄을 돌리기 위해 밑에 깔려있는 숨겨진 코드들이 수백 줄이다. 좀 생각을 크게 하자면, (그러니까 컴퓨터 하드웨어 단위까지) 프로그램 5줄 + 컴파일러, 헤더 파일 몇천줄, 프로그래밍 프로그램 몇천줄, 인스톨러 몇천줄, 익스플로러 몇천줄, 윈도우 몇십만줄.... 그만해라 미친놈들아!
  8. 프로그래머들이 기억해야 하는 중요한 명언중에 하나가, '사용자들은 절대 네가 상상한대로 프로그램을 사용하지 않는다' 일 정도..
  9. 이런걸 노리고 이스터 에그를 만들기도 하지만, 프로그래머가 정말 상상도 못한 일을 벌이는 경우에만 튀어나오는 버그도 종종 있다.
  10. 2번 발매 전 정보 맨 밑 참조
  11. 동 회사의 온라인 게임인 SD건담 캡슐파이터 온라인의 경우에는 패치를 할 때마다 신종 버그가 계속 늘어나는(그리고 버그 대부분 게임을 종료해야 하는) 현상으로 유명하다.
  12. 단, 스코어링처럼 공정한 실력이 필요한 경우는 제외.
  13. 구룡으로 더 잘 알려져 있다.
  14. 원래대로라면 고쳐야 되지만, 개발자 중 한명이었던 NIN은 이를 알면서도 일부러 고치지 않고 그대로 출시했다고 한다.
  15. 이 방법인경우 대시보드의 회전속도계(타코미터)가 비활성이 되는 문제가 있다.그리고 5분후 튕긴다.
  16. 네로의 경우 하이롤러를 끊고 야마토 기술을 쓸 수 있고, 단테도 길가메시 차지 후 바로 라운드 트립을 쓴다거나, 특정 기술을 점프캔슬후 사방으로 날아다닌다던가, 루시퍼 엑스터시 잔상을 붙여놓는다건가... SE의 버질도 에어트릭 중에 저지먼트 컷이 써지고, 트리쉬는 판도라를 선딜 없이 연속으로 쓸 수 있는 버그가 있다. 아예 개발진이 개발하면서 버그를 일부러 같이 만들어둔 듯한 착각마저 들 정도다.
  17. 다만 추후에 추가된 커맨드들은 헤비캔이 안먹는게 많다
  18. 공허의 유산에는 '공격 중지'라는 스탑러커 전용기술까지 나왔다.
  19. 다만 첸샷의 경우는 스컬8을 보면 바꿀수 있었지만 수익을 위해 노골적으로 방치한것으로 보이며(실제로 스팀카온은 첸샷이 막혔다!) 이런 이유때문에 욕을 먹고있다.한때는 이놈의 첸샷때문에 오히려 숙주가 도망가는일도 많았으니
  20. 이 체인지샷은 글옵에서도 나오기는 하는데, 무기성능에 영향을 주는 버그가 아닌 데스매치 경험치 획득량이 바뀐다. 콘솔로 mp_buy_allow_grenades 1 을 쓰고 수류탄류를 사고 던지고 터질때 다른무기를 들고 있다면 그무기로 죽인것으로 점수는 계산되어 수류탄킬이 12점을 주는데 반해 칼로 바꾸고 이미 던진 수류탄에 누가 죽으면 칼점수인 20점으로 획득한다.
  21. 16년 패치로 막혔다.
  22. 착지 중 타이밍을 맞춰 대시버튼을 누르는 시스템은 원래부터 의도하고 만든 게 맞으며 초창기 맵인 트레이닝 슈퍼점프등을 통해 알 수 있다. 하지만 대시점프는 마도로스 죠의 습격 - 설녀 맵이 나올때쯤의 업데이트에서 잠깐 사용 불가능했던 적이 있으며 유저들의 요구에 따라 패치되었다. 튜토리얼에 공식 등장한 것도 그후 한참 더 지난 후의 이야기이다.
  23. 변장도구를 들고있을 때 앉은상태로 위를 보면 3인칭 시점으로 스파이가 게처럼(...) 기어다니는듯한 자세를 취한다. 이스터에그로 변장도구 들고 도발시 낮은 확률로 스파이크랩을 흉내내는 도발이 나온다.
  24. 참고로, 소스엔진을 사용하는 모든게임에 적용된다!(물론, 점프키가 없으면....)
  25. 의도적으로 만들어진 기술이므로 버그가 절대 아니다. 자세한 내용은 해당 항목 참고.
  26. 항목을 보면 알겠지만, 살아있는 버그탐지장치다. 발생장치가 아니고??
  27. 워크래프트 3 승부조작 사건참고
  28. 신이계의 빠른 정복을 막겠다고 연습 모드를 날려버리는 데 정신이 팔려 버그를 제대로 잡지도 않아서 유저들에게는 버그의 틈이라는 오명을 뒤집어 썼다. 그래도 기존 설정까지 오류로 치부하고 갈아 엎어버리는 것보단 나을지도?
  29. 위에 언급되었듯이 예상치 못한 동작을 막는 류의 코드가 빠젔는데 디버거가 알아서 그걸 붙여서 작동한 경우가 해당된다.
  30. 세이브 파일 조작 등