게임

스타크래프트 유저를 위한 모니터 해상도 토글 소스

Resolution Change applications

윈7를 사용하는데, 언제부터인지 스타크래프트를 실행하면 화면이 넘쳐서 짤리는 현상이 생겼습니다. 이것저것 시도해보다가 윈도우를 저해상도로 바꾸니 제대로 화면이 나오기는 하는데, 끝나면 다시 원래 해상도로 바꾸는 작업이 영 귀찮아서, 델파이로 해상도 토글 소스를 간단히 만들게 되었습니다.

대상과 기능

  • 대상 : 스타크래프트를 실행하면 윈7등에서 화면이 짤리는 분.
    윈도우 제어판에서 일일히 변경하는게 영 귀찮으신 분.
  • 기능 : 실행하면 resolution.ini에 기록된 2가지 해상도대로 원클릭으로 상호 전환됩니다.

사용법

  1. 해상도토글.exe를 실행합니다.
  2. 처음 실행하면 바로 종료되는데, 같은 폴더 위치에 resolution.ini파일이 생깁니다. 메모장으로 이 파일을 엽니다.
  3. 전환하기를 원하는 본인의 모니터의 2가지 해상도를 [toggle1]의 해상도와 [toggle2]의 해상도 항목에 각각 수정주1하여 저장하고 닫습니다.
  4. 해상도토글.exe를 다시 실행하면 바로 해상도가 전환됩니다.

델파이 소스

unit _fmMain;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes,
  Vcl.Controls, Vcl.Forms, Vcl.StdCtrls, Vcl.ExtCtrls;

type
  TfmMain = class(TForm)
    Button1: TButton;
    Timer1: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure do_readini;
    procedure do_writeini;
  private
    { Private declarations }
    function SetScreenResolution(Width, Height, ColorBit: integer; Fhz: DWORD): Longint;
  public
    { Public declarations }
    t1_r : string;
    t2_r : string;
  end;

var
  fmMain: TfmMain;

implementation

{$R *.dfm}

uses
  iniFiles;

procedure TfmMain.do_readini;
var
  iniSet   :TIniFile;
  iFile : string;
begin
  iFile := ExtractFilePath(Application.ExeName)+'resolution.ini';
  // file exist?
  if not FileExists(iFile) then
     do_writeini;

  iniSet := TIniFile.Create(iFile);
  //     1280 x 1024 32bit 60HZ
  try
    t1_r := iniSet.ReadString('toggle1', '해상도', '');
    t2_r := iniSet.ReadString('toggle2', '해상도', '');
  finally
    iniSet.Free;
  end;
end;

procedure TfmMain.do_writeini;
var
  i,j,k,l: string;
  iniSet:TIniFile;
  iFile :string;
begin
  // defalut
  i:= '1280 x 1024 32bit 75HZ';
  j:= '1680 x 1050 32bit 60HZ';

  iFile := ExtractFilePath(Application.ExeName)+'resolution.ini';

  // INI파일 만들기(기존에 파일있는 경우는 파일 열기로 됨)
  iniSet := TIniFile.Create(iFile);
  try
    iniSet.WriteString('toggle1','해상도',i);
    iniSet.WriteString('toggle2','해상도',j);
  finally
    // INI파일 닫기
    iniSet.Free;
    timer1.Enabled := true;  // ini만 만들고 종료
  end;

end;

function TfmMain.SetScreenResolution(Width, Height, ColorBit: integer; Fhz: DWORD): Longint;
var
  DeviceMode: TDeviceMode;
begin
  with DeviceMode do begin
    dmSize := SizeOf(TDeviceMode);
    dmPelsWidth := Width;
    dmPelsHeight := Height;
    dmBitsPerPel := ColorBit;
    dmDisplayFrequency := Fhz;
    dmFields := DM_PELSWIDTH or DM_PELSHEIGHT or DM_BITSPERPEL or DM_DISPLAYFREQUENCY;

  end;
  Result := ChangeDisplaySettings(DeviceMode, CDS_UPDATEREGISTRY);
end;

procedure TfmMain.Timer1Timer(Sender: TObject);
var
  XForm: TForm;
begin
  XForm := Screen.ActiveForm;
  XForm.Close;
end;

procedure TfmMain.Button1Click(Sender: TObject);
var
  li_Pos,li_Width,li_Height,li_ColorBit : Integer;
  t_Pos,t1_Width,t2_Width : Integer;
  li_Frequncy : Dword;
  DevMode    : TDevMode;
  procedure FormatResolution( Reso : String );
  begin
    //ori_r des_r 변환 1280 x 1024 32bit 75HZ
    // w
    li_Pos := Pos('x',Reso)-2;
    li_Width := StrToInt(Copy(Reso,1,li_Pos));
    Reso := copy(Reso,li_pos+4,Length(Reso)-li_Pos+3);
    // h
    li_Pos := Pos(' ',Reso)-1;
    li_Height := StrToInt(Copy(Reso,1,li_Pos));
    Reso := copy(Reso,li_pos+2,Length(Reso)-li_Pos);
    // b
    li_Pos := Pos(' ',Reso)-4;
    li_ColorBit := StrToInt(Copy(Reso,1,li_Pos));
    Reso := copy(Reso,li_pos+5,Length(Reso)-li_Pos+3);
    // f
    li_Frequncy := StrToint(Copy(Reso,1,2));
  end;
begin
  do_readini;
  t_Pos := Pos('x',t1_r)-2;
  t1_Width := StrToInt(Copy(t1_r,1,t_Pos));
  t_Pos := Pos('x',t2_r)-2;
  t2_Width := StrToInt(Copy(t2_r,1,t_Pos));

  if GetSystemMetrics(SM_CXSCREEN) = t1_Width then
    FormatResolution(t2_r)
  else if GetSystemMetrics(SM_CXSCREEN) = t2_Width then begin
    FormatResolution(t1_r)
  end;
  SetScreenResolution(li_Width,li_Height,li_ColorBit,li_Frequncy);
  timer1.Enabled := true;
end;
end.

ini 소스

[toggle1]
해상도=1280 x 1024 32bit 60HZ
[toggle2]
해상도=1680 x 1050 32bit 59HZ

맺음말

  • 스타크래프트의 화면 깨짐현상을 해결하려면, 제 경우는 75HZ로 변경해야 하더군요. 그래서 1280 x 1024 32bits 75HZ로 바꾸고 사용하였습니다.
  • 듀얼모니터이신 분은 프로그램을 변경하고자 하는 모니터에서 프로그램을 실행하시면 잘 실행 될 것 같습니다.
  • ini의 해상도가 구현 가능한 해상도가 아니면 작동하지 않습니다.
  • 구현 가능한 해상도의 목록을 모두 표시하고 선택하게 코드를 짰으면 편리하긴 한데, 짜기 귀찮아서 ini에 변경하는 형식을 취하였습니다.

내려받기

해상도토글


각주.
  1. 형식은 가로 x 세로 비트수bits 주파수hz 입니다. ex.)1280 x 1024 32bits 75hz [Back]
게임

와우는 다른 게임과는 다르게 기존의 기능을 확장, 개선할 수 있는 애드온을 사용자가 직접 설치할 수 있습니다.

마치 텍스트큐브의 플러그인과 비슷하다고 할 수 있는데, 이미 만들어진 애드온은 플러그인 처럼 공개하여 쉽게 공유할 수 있습니다.

리치왕의 분노 출시이후 와우를 처음 접하여 애드온에 대해 전혀 모르시는 분이나 기존에 하셨던 분들일 지라도 모르시는 애드온들이 있을 것 같아서 이렇게 정리하여 소개하게 되었습니다.

각각의 애드온자체의 세부적인 설명은 지면이 너무 짧아서 생략하고 간단한 리뷰형식으로 소개하겠습니다.

애드온은 주기적으로 버전업이 되므로 될 수 있으면 외국 원본 경로를 이용하시길 바라며 한글화경로는 그에 맞게 관련지어서 사용하시면 되겠습니다.

퀘스트관련 애드온

QuestHelper와 Tourguide


퀘스트의 네비게이션, 빠른 렙업을 위한 퀘스트GPS인 QuestHelperTourguide의 경우는 퀘스트의 진행장소와 퀘스트 완료장소를 알려주는 편리한 애드온이다. 자세한 사항은 따로 포스팅한 글을 참고하시길 바랍니다.

Questhelper 사용설정 : 맵창 오른쪽 상단 [Questhelper] 버튼 오른클릭

Tourguide 사용설정 : 화면상의 프레임 오른클릭

Questhelper 외국 원본 내리받음    * 한글화 내리받음

Tourguide 외국원본 내리받음    * 한글화 내리받음
Qbar

>퀘스트아이템의 툴팁을 보면 퀘스트 진행의 힌트를 얻어 도움이 많이 됩니다. 하지만 가방 속에 아이템과 섞여있는 퀘스트 아이템을 일일이 찾는 것도 힘든 일인데, 이 애드온은 퀘스트 아이템만 추려서 화면에 표시해주므로 편리합니다..

사용설정 : /qb 프레임 이동 : /qb lock후에 왼쪽하단 모서리 쉬프트+클릭 드래그

Qbar 외국 원본 내리받음     * 한글화 내리받음

버프,디버프관련 애드온

SmartDebuff 와 Smartbuff

SmartDebuff를 사용하고 있다면 당신은 이미 축복받은 힐러입니다. 체력이 빠진 정도가 반전되서 나오므로 매우 직관적이며 어그로 및 마나표시, 마법,질병의 디버프가 표시되며 마우스버튼조작만으로도 쉽게 힐, 디버프를 할 수 있습니다. 사제인 경우 예를 들면 화면상에 표시된 UI의 파티원을 오른클릭 -> 도트힐, ALT+왼클릭 -> 질병해제, ALT+오른클릭 -> 마법해제 할 수 있습니다. 기타 드루,성기사, 주술사 등의 힐계열 직업도 마찬가지입니다.

SmartBuff는 자신, 파티및 공대 단위의 버프를 화면상의 작은 버튼만 계속 누르면 알아서 필요한 버프가 자동으로 들어갑니다. 버프음식이나, 마부사오일 등이 가방에 있으면 자동으로 버프하게 할 수 있습니다.

SmartDebuff 사용설정 : 화면상의 UI 상단오른쪽 O버튼 클릭

SmartBuff 사용설정 : 미니맵의 SmartBuff 설정 아이콘 클릭

SmartDeBuff 외국 원본 내리받음     SmartBuff 외국원본 내리받음  * 한글화 내리받음
게임

와우는 다른 게임과는 다르게 기존의 기능을 확장, 개선할 수 있는 애드온을 사용자가 직접 설치할 수 있습니다.

마치 텍스트큐브의 플러그인과 비슷하다고 할 수 있는데, 이미 만들어진 애드온은 플러그인 처럼 공개하여 쉽게 공유할 수 있습니다.

리치왕의 분노 출시이후 와우를 처음 접하여 애드온에 대해 전혀 모르시는 분이나 기존에 하셨던 분들일 지라도 모르시는 애드온들이 있을 것 같아서 이렇게 정리하여 소개하게 되었습니다.

각각의 애드온자체의 세부적인 설명은 지면이 너무 짧아서 생략하고 간단한 리뷰형식으로 소개하겠습니다.

애드온은 주기적으로 버전업이 되므로 될 수 있으면 외국 원본 경로를 이용하시길 바라며 한글화 경로는 그에 맞게 관련지어서 사용하시면 되겠습니다.

전문기술관련 애드온

TradeskillInfo와 DoubleWideTradeSkills

사용자 삽입 이미지

전문기술창의 크기를 늘려서 한번에 목록을 더 많이 볼 수 있도록 해 주며, 한번에 세부창이 표시되어 편리합니다. 또한 툴팁에도 아이템의 사용처와 출처를 표시하거나 가방및 은행보유량을 표시하는 등 그 밖의 다양한 기능이 있습니다.

사용설정 : /tsi config 
레피시구입처등을 표시 : /tsi menu

TradeskillInfo 외국 원본 내리받음   * 한글화 내리받음

DoubleWideTradeSkills 외국원본 내리받음  * 한글화 내리받음

미니맵관련 애드온

Minimap Button Frame

사용자 삽입 이미지
사용자 삽입 이미지
애드온 갯수가 늘어나다보면 미니맵 원주위로 애드온 관련 설정 관련 버튼이 빼곡하게 생기게 되는데 이것을 정리해서 손쉽게 사용할 수 있게 해줍니다.

사용설정 : 미니맵 빨간 아이콘에 Shift+왼쪽 클릭 or 인터페이스 설정 -> 애드온

Minimap Button Frame 외국 원본 내리받음   * 한글화 내리받음

은행,가방관련 애드온

BankItem과 BankStack

사용자 삽입 이미지
은행, 길드 금고 및 우편함에 어떤 아이템들이 있는지 확인하고 싶을 때에 수시로 확인할 수 있게 해주는 애드온이다. 더불어서 툴팁에 아이템의 수량과 보관위치를 표시해주어 편리하다.

사용방법 : /bi

BankStack은 창고캐릭의 가방정렬시 유용하며 가방및 은행의 아이템을 정렬해줍니다.

사용방법 : 가방정렬 /sort 은행정렬 /sort bank

BankItem 외국 원본 내리받음   * 한글화 내리받음

BankStack 외국 원본 내리받음   * 한글화 내리받음

특성관련 애드온

Talented

사용자 삽입 이미지
전사, 성기사, 사제등의 직업은 인전이나 전장에 참여할 때 그에 알맞는 특성으로 일일이 바꿔줘야 하는데 귀찮은 일이 아닐 수 없다. 이 애드온은 본인이 미리 설정한 특성으로 자동으로 찍어주거나, 살펴보기한 다른 캐릭의 특성을 즉각 저장하여 똑같이 찍을 수 있게 해준다.

사용설정 : /talented 사용방법 : 특성(N) 버튼

Talented 외국 원본 내리받음   * 한글화 내리받음

편리성관련 애드온

HS_Dura, HS_Emote, HS_Gold, HS_Signal

사용자 삽입 이미지
섬게라는 와우 팬사이트에서 화수라는 필명으로 애드온 제작자로 활약하시는 분의 HS애드온 시리즈중 Hs_Emote는 모든 감정표현을 쉽게 찾아서 선택할 수 있게 해주며, HS Dura는 내구도를 표시해주고 자동수리및 회색템 판매의 부가적인 기능도 은근히 편리합니다. HS Gold는 간단히 골드를 표시해주고, HS Signal은 비전투, 전투의 상태를 아이콘으로 표시해주어 편리합니다.

사용설정 : 아이콘에 마우스오버하면 사용설명이 나옴

HS UI 원본 내리받음 (모음집이므로 상기의 애드온이 다 포함되어 있습니다.)


게임
11월 18일 리치왕의 분노 출시후 노스렌드에서의 빠른 렙업을 위해, 늘 써왔던 Tourguide 애드온이 아직 작동하지 않아서, 퀘스트 글에 설명된 위치 또는, 근처의 유저에게 물어가며 퀘스트를 해야할 형편이었다. 그래서 빠른 광렙업을 위해 찾게된 애드온이 바로 '퀘스트헬퍼(QuestHelper)입니다.

 

그 지역의 퀘스트를 여러개 받으면 맵에 점선으로 경로가 찍여서
어디서 뭐하고, 뭐하고, 그 다음 퀘스트완료지역까지 이렇게 최단거리 루트가 찍힙니다.
투어가이드와 같이 퀘스트 네비게이션이라고 할 수 있지만 꼭 구글맵같은 느낌도 듭니다.
퀘스트 완료지역까지 찍히게 됩니다.
미니맵에서도 동시에 찍히게 되어있어서 퀘스트아이템이나 퀘스트몹을 찾기가 무척 수월하였습니다.

이제 와우 팬사이트를 뒤치서 퀘스트 장소를 확인하느라 말타고 서있지 마시고 맵화면을 열고 바로바로 확인하면서 빠른 렙업하시길 바랍니다.

TomTom이란 애드온을 깔면 맵화면에서뿐만 아니라 게임화면상에 퀘스트위치의 방향을 알려줘서 무척 편리합니다. 다만 아직 노스렌드에서는 TomTom이 제대로 작동하지 않는데 조만간 업데이트되면서 수정되리라 믿습니다.

노스렌드에서 TomTom 기능을 일시적으로 정지하실려면 위와 같이 Disable Waypoint Arrow를 누르시면 됩니다. (다만, 아제로스, 아웃랜드는 TomTom이 정상적으로 작동됩니다.)

* 노스렌드에서 QuestHelper와 정상작동하는 TomTom이 수정되어서 나왔습니다. 이제 TomTom과 같이 편리하게 사용하시길 바랍니다.^^

애드온 설치방법은 생략합니다. (각 와우 팬사이트의 애드온 게시판에서 나온 설치방법을 참조하시며 아래의 다운로드 경로중에 아무곳에서나 다운받아 설치하시면 됩니다.(원본경로가 업데이트가 빠르므로 다운로드추천함)

QuestHelper 원본 애드온 다운로드 경로 : http://wow.curse.com/downloads/details/9924/
QuestHelper 섬게 다운로드 경로 : http://wow.somegate.com/topic.php?topic_uid=103061

Tomtom 원본 애드온 다운로드 경로 : http://www.wowinterface.com/downloads/i ··· tom.html
Tomtom 한글화된 다운로드 경로 : http://wow.somegate.com/topic.php?topic_uid=99749

* 노스렌드에서 정상작동하는 Tomtom 다운로드 경로 : http://wow.somegate.com/topic.php?topic_uid=100616

게임
최근 게임업체들이 과거에 발매됐던 패키지 게임들을 무료로 제공하는 다운로드 이벤트를 실시하는 사례가 늘어나고 있다. 패키지 게임의 무료 공개는 아주 오래된 고전 게임들의 경우 예전에도 있었으나, 최근에는 발매된지 2, 3년도 채 지나지 않은 게임들을 공개하는 경우도 있어, 게이머들을 기쁘게 하고 있다.

이런 무료 다운로드 서비스의 상당수는 다른 업체로부터 스폰서를 받는 대신 게임 곳곳에 광고를 삽입해 주는 '스폰서 광고 버전'으로, 게임을 플레이 하면서 광고에 노출된다는 단점이 있지만 게이머들로서는 과거에 재미있게 즐겼던 게임을 패키지 구입이라는 부담 없이 다시 한 번 즐길 수 있기 때문에 긍정적으로 받아들이고 있다.

그렇다면 현재 무료로 다운로드 서비스를 통해 플레이 할 수 있는 게임으로는 어떤 것이 있는지 알아 보도록 하겠다.

* C&C 13주년 기념으로 'C&C 레드얼럿' 공개한 EA

지난해 '커맨드앤컨커'(이하 'C&C') 시리즈 발매 12주년을 기념해 한 달간 'C&C 골드'의 공개 다운로드 서비스를 실시했던 EA는 올해도 13주년 기념 선물로 'C&C 레드얼럿'을 게이머들에게 선사했다. 'C&C 레드얼럿3'의 발매를 앞두고 있는 만큼 다운로드 페이지에서는 'C&C 레드얼럿3'의 동영상을 감상할 수 있으며, 'C&C 레드얼럿3'를 예약판매를 통해 구입할 경우 'C&C 레드얼럿2'도 무료로 받을 수 있음을 홍보하고 있다. 다운받은 파일의 압축을 풀면, ISO 방식의 이미지 파일 형태로 들어있기 때문에 '데몬툴' '알코올'과 같은 이미지 마운트 프로그램이 컴퓨터에 설치돼 있어야 사용할 수 있으며, 윈도XP 이상에서 사용할 수 있도록 동봉된 XP 실행 패치를 함께 설치해야 한다. 멀티 플레이를 이용하기 위해서는 스트라이크 팀 사이트에서 '웨스트우드 챗 소프트웨어'라는 프로그램을 다운로드 받아 설치하면 된다.

게임 다운로드: http://www.ea.com/redalert/news-detail.jsp?id=62

멀티 플레이 관련: http://strike-team.net/

* 미 공군도 게임으로 홍보한다

최근에는 미 공군의 후원으로 무료로 다운로드 서비스를 시작한 게임들도 있다. 공개된 게임들은 미드웨이와 THQ에서 발매됐던 게임들로 외계인들을 소탕해야 하는 슈팅 '에어리어51', 자신 안에 있는 악마와 싸우며 교도소에 나타난 괴물들을 물리쳐야 하는 호러 액션 '더 서퍼링', '엠파이어 어스'의 개발자들이 만든 또 하나의 문명 충돌 게임 '라이즈 앤 폴', 그리고 미 육군의 제작 지원으로 사실적인 전술을 구현할 수 있는 '풀 스펙트럼 워리어'의 총 4 종류다. 이 게임들 역시 다른 스폰서 지원 게임들과 마찬가지로 미 공군의 홍보 광고가 게임 내에 삽입돼 있으며, 국내 외 다운로드 사이트들에 올라있는 패치를 이용해 최신 업데이트를 적용시킬 수도 있다.

'에어리어51' 다운로드: http://file.naver.com/pc/view.html?fnum=208240&cat=50

'라이즈 앤 폴' 다운로드: http://www.gamershell.com/download_33916.shtml

'더 서퍼링' 다운로드: http://file.naver.com/pc/view.html?fnum=207515&cat=50

'풀 스펙트럼 워리어' 다운로드: http://file.naver.com/pc/view.html?fnum=208127&cat=53

* 게이머와 게임 업체 양쪽에 만족 주는 무료 게임 공개

이 외에도 락스타게임즈가 자사의 고전 게임 'GTA' 'GTA2' '와일드메탈'을 락스타 클래식이라는 브랜드로 묶어 북미 지역 한정으로 무료 다운로드 서비스를 실시하고, 타임워너 계열의 온라인 게임 통합 사이트 '게임탭'에서 '폴아웃' 등 140여 개 고전 게임의 무료 플레이 서비스를 실시하는 등 게임 업체들의 게임 무료 다운로드 서비스는 그 방법과 수를 점차 확대해 나가고 있다.

이런 게임 업체들의 게임 무료 다운로드 공개에 대해 한 게임 전문가는 "일반 소프트웨어의 경우에도 광고를 보는 대신 무료로 사용할 수 있는 버전을 함께 내놓는 경우가 많은 만큼 게임도 이런 추세를 따르고 있는 것"이라며 "게이머들은 과거에 즐겼던 게임을 패키지 구입이라는 부담 없이 즐길 수 있고, 게임업체로서는 기업 이미지 제고와 동시에 게이머들을 충성 고객으로 붙잡을 수 있다는 장점이 있기 때문에 이를 이용하는 업체들은 앞으로 점차 늘어날 것이다"고 말했다.