달력

52024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
Windows 7에서 N150UA를 이용하여 카이 설정하는 법을 적어 봅니다.

* 아래 설치 화일을 미리 설치하지 마시고 아래 설명을 보고 나서 설치 하세요. 안그러면 지우고 또 설치해야 될지도 몰라요..

준비물
1. PSP
2. iptime N150UA  무선 랜카드  http://iptime.co.kr/~iptime/prd.php?pf=4&page=&pt=42&pd=2 
3. 랜카드 드라이버   http://iptime.co.kr/~iptime/bbs/zboard.php?id=sw_download&dffid=10&dfsid=6&dftid=151 
4. Xlink Kai   http://teamxlink.co.uk/ 
  - 다운로드는 회원가입 없이 되지만 이용은 어차피 회원가입 필요하니 회원가입 하고 다운 받으세요


설치법
1. PSP를 켜고 초기화면에서 네트워크 설정 -> ADHOC  ->  자동   으로 셋팅한다.
2. PSP 게임을 구동 후 네트워크에 접속한다 .
 - 몬헌3 기준으로 집회소를 X 버튼을 눌러 접속하면 로비를 선택 후 온라인으로 접속 가능하다.
3. 랜카드 드라이버를 설치 하기에 앞서 해당 드라이버 파일을 오른클릭 -> 속성 -> 호환성 -> 호환모드 (WinXP SP2) -> 관리자 모드 실행  으로 설정한다.
 - 이걸 설정하지 않으면 카이는 불가능.... 꼭 설정해 주세요.


4. 랜카드 드라이버 설치
 - 다른건 그냥 기본 상태로 넘어가시고 ralink 프로그램 쓰실거 아니면 드라이버만 설치하세요. 라링크켜두니 느려서 짜증..
 -

 
5. 무선랜 연결
 - 장치 연결 어쩌고 뜨고 802.11n 어쩌고 뜹니다.

6. 시작->실행-> devmgmt.msc (혹은 제어판 -> 시스템및 보안 -> 장치 관리자) (혹은  윈도우키 +  Pause -> 장치관리자)
 -> 네트워크어댑터 -> 802.11n Wireless Lan Card 오른클릭 -> 속성 -> 고급 -> PSP XLink Mode 사용함으로 설정
- 혹시 PSP XLink Mode 가 안뜨신다면 3번항목을 다시 한번 체크 해보세요. 호환성 모드 설정 안했을 경우 이 옵션 안뜹니다.


7. 네트워크 연결
 - 무선 네트워크를 보면 자신이 실행한 게임의 네트워크가 생성 되어 있을겁니다. 거기에 연결합니다.
 -  PSP_AULJM05800_L_MHP3Q000 이라는 연결이 생겼습니다. 더블클릭이나 오른클릭하여 연결합니다.

8. 네트워크아이콘 클릭하여 무선 네트워크에서 좀전에 연결한 게임을 오른클릭 -> 상태 -> 자세히 클릭 아이피를 기억해 둡니다.
 - 자세히 창을 닫고 속성 버튼을 눌러 속성창에서 InternetProtocol Version4(IPV4) 클릭 -> 속성으로 들어간 후  다음 IP주소 사용 체크후 해당 아이피를 입력 합니다.
 -  아래 첫번쨰 사진은 오른쪽의 상태 버튼 클릭 -> 자세히 -> 왼쪽의 아이피 순서로 보면 되고
 - 두번쨰 사진은 왼쪽의 속성 -> IPV4의 속성 -> 아이피 입력 순서 입니다.


9. 카이 설치
 - 카이설치의 경우는 별거 없이 그냥 설치 해줍니다.
 -  다만 설치 완료 후 start Kai 를 눌렀을떄 PSSDK 오류가 난다면(아마 100% 날겁니다.) C:\Program Files (x86)\XLink Kai 폴더에 있는 두개의 EXE 파일을 속성을 눌러 호환성을 WinXP SP2로 맞춰주고 관리자 실행 체크(LAN 드라이버 설치때와 동일하게) 해줍니다.
- 두개의 파일을 설정을 바꿔줍니다.



 10. 카이 설정
 - 카이를 시작하면 WEB 페이지가 뜹니다. 여기서 설정이 불편하니  트레이 아이콘에서  카이 오른클릭 -> configuration 을 클릭하면 설정 페이지가 뜹니다.
 -  여기서 제가 바꾼건 UI를 웹이 아니라 GUI로 바꾸고 Deep 포트를 30000 으로 바꿨습니다.
 - Save 버튼을 누르면 카이 어플이 실행 됩니다.


 11. 카이 실행
 - 실행 된 카이 창에서 계정을 넣고 로그인 합니다.
- 로그인 후  상단의 돋보기 아이콘 클릭 -> 폴더 아이콘 클릭 -> 어드레스 숫자가 막 보이면 성공한겁니다.
- PSP 이미지가 보여야 된다는 말도 있지만 PSP 이미지 안보고이고 잘 됩니다.
 

 12. 게임 연결
 -  지구본 아이콘 클릭 -> PSP 클릭 -> Action 클릭 -> MHP3 클릭 ->  Korean 클릭 -> 게임방 리스트가 나오고 현재 유저수 2/4 users.식으로 나오면 빈방을 찾아 접속
 - 그리고 게임을 즐겨 주세요~~





 
 현재 아무것도 셋팅 안된 PC에서 셋팅하면서 포스팅 작성 한 것입니다.
 정상적으로 카이 접속 되서 4명의 유저가 함께 있었네요..

 iptime  N150UA 가 안된다는 말이 있었느데 실제로도 잘 되며,  윈7에서 PSP Xlink Mode 가 안떠서 고생했었는데.. 호환성 바꿔서 설치하면 잘 되며.
Kai 시작시 오류가 떳었는데.. 역시 호환성 설정하니 잘 되고...
Kai 에서 PSP 이미지가 안나와서 안되나... 했었는데... PSP 이미지 안나와도 잘 되네요...

집에 짱박아둔 파판 영식이도 다시 해봐야 겠군요... 
Posted by SadDev
|
돌격병

Best Friend Forever

OBJECTIVES

  • 10 Revives (소생 10회)

    10 / 10
  • 10 Heals  (치료 10회)

    10 / 10

REWARDS

==============================================================

Professional Russian

OBJECTIVES

  • 100 kills with Assault Rifles  (돌격소총 100킬)

    100 / 100
  • 20 kills with Underslung Grenade Launcher  ( 하단런쳐 - M320 -  20킬)

    20 / 20
  • Win 5 rounds of SQDM (분대 데스매치 5승)

    5 / 5

REWARDS

=============================================================================



공병


Fixing it

OBJECTIVES

  • 10 repairs (수리 10회)

    10 / 10
  • Kill 1 enemy with Repair Torch (수리도구로 1킬)

    1 / 1

REWARDS

=====================================================================

It goes Boom!

OBJECTIVES

  • 50 AT rocket kills (로켓런쳐 50킬)

    50 / 50
  • Destroy 1 enemy vehicle with Repair Torch (수리도구로 적 탈것 파괴 - 박격포나 비콘같은 장비 파괴로도 가능- )

    1 / 1
  • Win 5 rounds of Conquest (컨퀘스트 5승)

    5 / 5

REWARDS

======================================================================

보급병


Let it rain

OBJECTIVES

  • 20 kills with Light Machine Guns (경기관총 20킬)

    20 / 20
  • 2 mortar kills (박격포 2킬)

    2 / 2

REWARDS

=========================================================================

Keep your head down

OBJECTIVES

  • 100 kills with Light Machine Guns (경기관총 100킬)

    51 / 100
  • 50 Suppression Assists (제압 지원 50회)

    49 / 50
  • 50 Ammo Resupplies (보급 50회)

    50 / 50

REWARDS

======================================================

정찰병


Specops

OBJECTIVES

  • 20 kills with Sniper Rifles(스나이퍼라이플 20킬)

    20 / 20
  • 5 Laser Designations (sofam 지원 5회)

    5 / 5

REWARDS

================================================================

Creeping Death

OBJECTIVES

  • 50 Headshots (헤드샷 50회)

    49 / 50
  • 50 Spot Assists (정찰지원 50회)

    13 / 50
  • 5 Knife takedowns (칼빵 5회)

    5 / 5

REWARDS

===============================================================

공통


Familiar Territory

OBJECTIVES

  • Arm 10 MCOMs (러쉬맵  MCOM 폭탄 설치 10회)

    10 / 10
  • Capture 10 flags (깃발 지원 10회)

    10 / 10
  • Play 2 hours on Karkand (카칸드 맵 2시간)

    24m 2s / 2h 0m

REWARDS

==============================================================

Scarred Veteran

OBJECTIVES

  • 10 Kills with PP-19 (pp-19 10킬)

    0 / 10
  • 5 kills in DPV Jeep (dpv 지프 탄채로 5킬)

    0 / 5
  • 10 Kills in BTR-90 IFV (btr-90 탄채로 10킬)

    0 / 10
  • Play 2 hours on Sharqi (샤르키 2시간)

    0m 0s / 2h 0m
  • Play 2 hours on Gulf of Oman (오만  2시간)

    0m 0s / 2h 0m

REWARDS

 

'게임 > PC' 카테고리의 다른 글

[배틀필드3] 서버 렌탈과 서버 셋팅  (5) 2011.11.08
[테라] 캐릭터...  (0) 2011.01.01
[PC]파이날 판타지 초반 스샷  (0) 2010.09.15
[PC] 파이날판타지 14  (1) 2010.09.14
Posted by SadDev
|
php 로 EXIF의 keyword 값(이미지 정보중 태그 값) 을 수정하려다가 포기하고 C#으로 만들어 봤다...

몇가지 사이트에서 정보를 얻어서 했지만 자꾸 문제가 발생...
byte 단위로 데이터 읽어가면서 테스트 해서 겨우 성공..

  protected void Page_Load(object sender, EventArgs e)
        {
 //* 특정 이미지 파일을 읽어와서 이미지의 EXIF 정보 중 40094(keyword) 를 화면에 출력함. *//
            System.Drawing.Image theImage = new Bitmap(@"D:\\photo\\DSC02787.JPG");   

            System.Drawing.Imaging.PropertyItem[] propItems = theImage.PropertyItems;
            foreach (System.Drawing.Imaging.PropertyItem items in propItems)
            {
                System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
//                string value = encoding.GetString(items.Value);
                if (items.Id == 40094)
                {   
                    Response.Write(items.Type + " : " + items.Id + " = " + items.Value.ToString() + "(len : " + items.Len + ")");
                   // for (int i = 0; i < items.Value.Length; i++) Response.Write(items.Value[i] + "<br>");
                }
            }
            theImage.Dispose();
// 특정 이미지에 keyword 값을 수정하여 이미지를 새로 저장
            WriteNewDescriptionInImage(@"d:\\photo\\DSC02787.JPG", "지혜님짱!!;이쁜이;사랑스러워");
        }

        private static ImageCodecInfo GetEncodeInfo(string mimeType)
        {
            int j;
            ImageCodecInfo[] encoders;
            encoders = ImageCodecInfo.GetImageEncoders();
            for (j = 0; j < encoders.Length; j++)
            {
                if (encoders[j].MimeType == mimeType)
                    return encoders[j];
            }
            return null;
        }

        private void WriteNewDescriptionInImage(string FileName, string NewKeywords)
        {
            System.Drawing.Image pic;
            PropertyItem[] PropertyItems;
            byte[] bKeywords = new Byte[NewKeywords.Length];

            string FileNameTemp;
            System.Drawing.Imaging.Encoder Enc = System.Drawing.Imaging.Encoder.Transformation;
            EncoderParameters EncParmas = new EncoderParameters(1);
            EncoderParameter EncParam;
            ImageCodecInfo CodenInfo = GetEncodeInfo("image/jpeg");
// 여기가 중요함 keyword 의 경우 unicode로 읽어야 함... comment 의 경우  ASCII나 UTF8로 읽어야 함. 
            bKeywords = Encoding.Unicode.GetBytes(NewKeywords);

            pic = System.Drawing.Image.FromFile(FileName);
            PropertyItems = pic.PropertyItems;
            foreach (PropertyItem item in PropertyItems)
            {
                if (item.Id == 40094)
                {
                    item.Value = bKeywords;
                    item.Len = bKeywords.Length;
                    pic.SetPropertyItem(item);
                }
            }

            FileNameTemp = FileName + ".temp";  // 파일명 + .temp로 새로 저장...
            EncParam = new EncoderParameter(Enc, (long)EncoderValue.TransformRotate90);
            EncParmas.Param[0] = EncParam;

            pic.Save(FileNameTemp, CodenInfo, EncParmas);
            pic.Dispose();
            pic = null;
            GC.Collect();
        }

'프로그래밍 > C#' 카테고리의 다른 글

[C#]byte[] 데이터 암호화  (0) 2012.08.31
BinaryWriter pointer 사용(seek)  (0) 2012.08.06
[C#] DataGridViewRow 복사  (0) 2010.07.05
[C#] MessageBox의 기능  (1) 2010.07.05
[C#] DataGridView  (0) 2010.07.02
Posted by SadDev
|
배틀필드3 서버를 렌탈하고 서버를 셋팅해봤다.
하지만 국내에 이와 관련된 문서를 찾기가 힘들어 블로그에 남겨본다.

우선 내가 렌탈을 신청한 곳은  http://www.gameservers.com  


가운데 배필 광고를 클릭하던 상단에 메뉴에서 들어가던 배필 서버 신청 화면으로 넘어가면 된다.


배필 서버는 public 과  private 가 있다.
public은 우리가 흔히 사용 하는 오픈 서버이고
private 는 클랜이나 소수가 모여서 비번 걸고 할 수있는 개인 서버로 보면 되겠다..
private 는 기본적으로 비번이 걸려있다.
public 은 기본이 오픈이며, 비번을 걸수도 있다.
gameserver 의 경우 가격은 public 은 슬롯당 1.29 private 는 슬롯당 1.19 달러이다
public 은 16인 기준 월 20.75달러
24 / $31.15
32 / $41.55
64 / $83.15
이며 16,24,32,64 가 아니라 16~ 64 중에 1슬롯 단위로 추가가 가능하다

계속해서 ORDER 를 누르면
결제 관련 정보를 입력하게 되고 결제가 완료되면 메일을 통해 계정과 비번이 전송된다.
메일로 온 아이디 비번을 이용해 https://my.gameservers.com 에 접속하면 관리 페이지가 뜬다.


기본적으로 ventrilo 음성 챗 서버를 지원해주는 것 같다.. 하지만 음성챗은 머....
$20.75를 주고 렌탈한 서버의  info 를 눌러보겠다.

 대충 봐도 알 수 있겠지만.
1. 서버 정지, 서버 리스타트가 있고, 리 인스톨의 경우 초기화 정도로 보면 될것같다.
2. 서버 오토 스타트 옵션이 있다. 오류가 나거나 멈추면 리스타트 시키는 옵션으로 생각된다.
3. 로케이션의 경우 한국에서 가장 가까운 일본 서버를 셋팅했다.
4. 아래 나오는 배너는 GAMETRACKER 와 연동해서 서버 정보를 디스플레이 해준다.

다음은 CONFIG 를 눌러보겠다.
****실질적으로 가장 중요한 항목이다.. ***



파일 종류는
startup.txt , maplist.txt 외에 몇가지가 더있는데 이 부분 셋팅은 사실 아직도 잘 모르겠고..
이거 두개만 보겠다.

startup 은 보는 것 처럼  어디민 패스, 게임 패스(현재 꺼놨음), 소갯글, 서버 이름 설정이 있다. 
이는 기본 적인 셋팅이라 Advanced Editor 를 눌러 확장 시켜보자

현재 내 서버의 셋팅이다..
사실 실제로는 7~8줄밖에 없는데 어디서 문서 구해서 추가했다..
각각의 내용에 대해 아래 추가해 두겠다.
위와 같이 설정된 서버 셋팅 화면..



어딘가에서 퍼온 내용이다.. 
vars.serverName controls the name of the server, as seen in the server browser. 
vars.gamePassword - if set, players must enter this password when connecting to the server. 
vars.friendlyFire – when set, people can inflict damage on others in the same team.
vars.killCam – when set, a killed player gets to see a close-up of his/hers killer for a few seconds.
vars.miniMap – when set, a minimap is available in the bottom-left corner of the screen during play. 
vars.hud – when set, the hud is present. // HUD 사용 
vars.crossHair – when set, guns have crosshairs in the center of the screen.
vars.3dSpotting – when set, spotted targets are marked with icons in the 3D world.
vars.miniMapSpotting - when set, spotted targets are marked with icons on the minimap.
vars.3pCam - when set, 3rd person vehicle cameras are enabled.
vars.nameTag – when set, nametags are rendered over players’ heads in the 3D world.
vars.regenerateHealth – when set, health regeneration is enabled.
vars.vehicleSpawnAllowed – when set, vehicles will spawn in-game.
vars.vehicleSpawnDelay – controls the delay between vehicle spawn; specified in percent (100% = normal).
vars.soldierHealth – sets maximum soldier health, specified in percent (0-100%; 100% = normal).
vars.playerRespawnTime – controls player respawn delay; specified in percent (100% = normal).
vars.playerManDownTime - controls player man-down time; specified in percent (100% = normal).
vars.bulletDamage – controls bullet damage; specified in percent (0-100%; 100% = normal).
vars.onlySquadLeaderSpawn – when set, players can only spawn on the squad leader.
vars.roundStartPlayerCount – when the server is in pre-round, it waits for this many players to be present until it proceeds to start the real round.
vars.roundRestartPlayerCount – when a round is going, if the number of players drops under this number, the round will be aborted and the server moves back to pre-round.

위 내용을 배필 서버 셋팅 문서로 보면


이렇다..
첨부 파일로 pdf 원본을 첨부 하도록 하겠다.



다음으로 맵 셋팅이다.
로테이션으로 돌아갈 맵을 설정 할 수 있으며
novice 셋팅과  advanced 셋팅은 각각 아래처럼 되어 있다.


 어떤 맵을 어떤 타입으로 몇라운드씩 할것이지 정할 수 있다.
직접 입력하려면 머리 아프다..
물론 이와 관련된 상세 내용도 첨부 문서에 있다.
맵 로테이션 순서라던가 여러가지 있지만.. 이런건 머리 아파서 넘어가겠다.
 
gameservers 는 대충 위와 같은 기능을 제공하며
추가로 procon 서버 $2.00 내고 추가하면 세부적으로 설정이 가능한 Procon 을 사용 할 수 있는 서버셋팅이 가능하다..
하지만 2달러가 아까워서 이부분은 테스트를 안해봤다..

 
다른 사이트로는  http://www.i3d.net/ 이라는 곳이 있는데..
이곳은 가격은 좀더 비싸다..
단 별도의 툴을 제공하더라..;;  BF3CC 라는 툴인데. 툴에서 직접 모든걸 다 할 수있는것 같다 ㅠ.ㅠ

조금이지만 배필 서버를 오픈하려는 유저들에게 도움이 되었으면 한다.
 

'게임 > PC' 카테고리의 다른 글

[PC]배틀필드3 백투카칸드 신규 무기 10종 언락  (1) 2011.12.15
[테라] 캐릭터...  (0) 2011.01.01
[PC]파이날 판타지 초반 스샷  (0) 2010.09.15
[PC] 파이날판타지 14  (1) 2010.09.14
Posted by SadDev
|
윈도우 라이브 라이터로 Textyle에 글을 작성할 경우 이미지 파일이 깨져 보이는 현상이 발생..

원인을 찾아보니..

라이브 라이터에서 aaa.jpg 라는 파일을 첨부하면
본문에는 <img src="$aaa.jpg"> 라고 태그가 생성되어 본문이 작성된다..

하지만 XE 에서는 파일 업로드 시 base64 인코딩을 해서
asdgqerhq34gh35hgq3gq3h.jpg 와 같이 암호화 된 파일명으로 변경되게 된다..

그러다 보니 본문에서 aaa.jpg 를 불러오려 해봤자 파일을 찾을 수 없어 엑박이 뜨게 된다.

이를 해결하기 위해 아래와 같이 수정했다.

1. /xe/addons/blogapi/blogapi.addon.php 의 line 208 정도에

case 'metaWeblog.newPost':    라는 곳이 있다.   새글 작성할 경우 이곳에서 처리가 되는데.. 이중에
첨부 파일 정리를 하는
대충 line 258 정도에
$oFileController->insertFile($file_info, $this->module_srl, $document_srl, 0, true);   라는 곳이 있다.
이곳을
$oFile = $oFileController->insertFile($file_info, $this->module_srl, $document_srl, 0, true);  로 바꾼다...그리고 바로 아랫줄에
$obj->content = str_replace($file_info['name'], $oFile->get('upload_filename'), $obj->content); 라고 추가 해준다.
설명 하자면... 
 $oFileController->insertFile() 결과를 $oFile 변수에 담는다....
그리고 두번째 줄은 본문 내용은 파일 네임이 들어간 부분을(aaa.jpg 라고 되어 있는 부분을)  암호화된 파일명으로 교체(replcae) 시키다.
이로써 본문의 내용중 <img src="aaa.jpg">는 <img src="asdgqerhq34gh35hgq3gq3h.jpg"> 로 바뀌게 된다.

2. 게시물을 수정할 때는 기존에 올렸던 파일을 다시 첨부하는게 아니고 본문 내용만 그대로 가져가므로 본문 내용중 파일 이름과 일치 하는 곳은 수정해야 된다.
line 283 쯤에
case 'metaWeBlog.editPost' : 라는 곳을 수정한다.

line 366 쯤에 $obj->content = str_replace( ......생략   이런 부분이 있는데.. 바로 위에 아래 내용을 추가 한다.

$oFileModel = $getModel('file');
$file_list = $oFileModel->getFile($document_srl);  // 현재 게시물에 있는 첨부 파일 리스트를 가져온다.
if(count($file_list)){  // 첨부 파일이 있다면
 foreach($file_list as $file)
{
  $obj->content = str_replace($file->source_filename, $file->upload_filename, $obj->content);  // 본문 중 실제 파일명과 같은 부분을 암호화 된 파일명으로 변경
}
}

이렇게만 수정해 주면 끝...

다만 윈도우 라이브 라이터가 한글 파일을 지원하지 않는다.. 
Posted by SadDev
|