Q&A

  • 자주 글을 올리는군여....파일변경에 대해서여...
역시 초보는 괴롭습니다.....

산넘어 산이군여.....



어떤 파일을 읽어서 데이타 값을 수정하는 루틴을 생각하고 있는데여...

예를 들어 aaa.cfg라는 파일에서 여러가지 세팅이 되어있는데....

어떤 한부분 또른 변경된 몇가지 값만 변경하려구 하려구여...



게시판 관련 글도 읽어보구 했는데두....뽀족한 답변의 글을 찾지 못해 이렇게 다시

글을 남깁니다....



append 함수를 써야 할까여??

변경할 파일이

--------------------------------------------------------------

// 부정한 짓(팀킬, 인질 죽이기 등-_-;)을 저질렀을때 자동 킥한다.

mp_autokick 1



// 자동으로 팀 인원의 균형을 맞춘다.

mp_autoteambalance 1



// C4가 폭발하는 그 시간을 50초로 정한다.

mp_c4timer 50



// 플래시를 켤수 있게 한다.

mp_flashlight 1



// 발소리를 나게 한다.

mp_footsteps 1



// 죽은후 자유롭게 돌아다닐수 있게 한다.

mp_forcechasecam 0



// 라운드 시작시 멈춰있는 시간을 4초로 설정한다.

mp_freezetime 2



// 팀킬을 끝다.

mp_friendlyfire 0



// 인질을 죽여도 상관없게 한다. 숫자에 따라서 그 인질을 죽이면 자동 킥(위에 autokick과 연관)된다.

mp_hostagepenalty 0



// 팀당 1명 이상 차이가 나지 않게 한다.

mp_limitteams 1



// 서버 메시지를 파일로 저장한다.

mp_logmessages 1



// 맵 투표의 비율을 40% 찬성으로 한다.

mp_mapvoteratio 0.4



// 한 라운드의 시간을 4분으로 설정한다.

mp_roundtime 3



// 한 맵의 시간을 25분으로 설정한다.

mp_timelimit 3



// 팀킬을 했을때(friendlyfire와 관련) 응징한다. -_-;

mp_tkpunish 1





// 로고스프레이를 60초마다 뿌릴수 있게 한다.

decalfrequency 60



// 서버 메시지를 화면에 뿌린다.

log on



// 높은데서 떨어지면 상처를 입는다.

mp_falldamage 1



// 클라이언트 측에서 정지를 못하게 한다.

pausable 0



// 자동 조준을 못하게 한다.

sv_aim 0



// 하프라이프의 치트를 못쓰게 한다.

sv_cheats 0



// 다운로드(맵 등)를 못하게 한다.

sv_allowdownload 0



// 운영자 메일 주소를 적어 준다.

//sv_contact seaofp@netsgo.com





// 서버를 원격 관리할 때의 암호를 정한다.

//rcon_password "여기에는 비밀번호"





// 영구히 밴 당한 사람들의 WONID를 읽어온다.

//exec banned.cfg

--------------------------------------------------------------------------

이런 값을 가지고 있는 파일인데 이중에 한두개 정도만 값을 변경하구 싶어서여..

변경되는것이 있다면....

이리 저리 머리는 굴리는데...음....--;







1  COMMENTS
  • Profile
    델맹 2001.05.30 19:16
    오은미 wrote:

    > 역시 초보는 괴롭습니다.....

    > 산넘어 산이군여.....

    >

    > 어떤 파일을 읽어서 데이타 값을 수정하는 루틴을 생각하고 있는데여...

    > 예를 들어 aaa.cfg라는 파일에서 여러가지 세팅이 되어있는데....

    > 어떤 한부분 또른 변경된 몇가지 값만 변경하려구 하려구여...

    >

    > 게시판 관련 글도 읽어보구 했는데두....뽀족한 답변의 글을 찾지 못해 이렇게 다시

    > 글을 남깁니다....

    >

    > append 함수를 써야 할까여??

    > 변경할 파일이

    > --------------------------------------------------------------

    > // 부정한 짓(팀킬, 인질 죽이기 등-_-;)을 저질렀을때 자동 킥한다.

    > mp_autokick 1

    >

    > // 자동으로 팀 인원의 균형을 맞춘다.

    > mp_autoteambalance 1

    >

    > // C4가 폭발하는 그 시간을 50초로 정한다.

    > mp_c4timer 50

    >

    > // 플래시를 켤수 있게 한다.

    > mp_flashlight 1

    >

    > // 발소리를 나게 한다.

    > mp_footsteps 1

    >

    > // 죽은후 자유롭게 돌아다닐수 있게 한다.

    > mp_forcechasecam 0

    >

    > // 라운드 시작시 멈춰있는 시간을 4초로 설정한다.

    > mp_freezetime 2

    >

    > // 팀킬을 끝다.

    > mp_friendlyfire 0

    >

    > // 인질을 죽여도 상관없게 한다. 숫자에 따라서 그 인질을 죽이면 자동 킥(위에 autokick과 연관)된다.

    > mp_hostagepenalty 0

    >

    > // 팀당 1명 이상 차이가 나지 않게 한다.

    > mp_limitteams 1

    >

    > // 서버 메시지를 파일로 저장한다.

    > mp_logmessages 1

    >

    > // 맵 투표의 비율을 40% 찬성으로 한다.

    > mp_mapvoteratio 0.4

    >

    > // 한 라운드의 시간을 4분으로 설정한다.

    > mp_roundtime 3

    >

    > // 한 맵의 시간을 25분으로 설정한다.

    > mp_timelimit 3

    >

    > // 팀킬을 했을때(friendlyfire와 관련) 응징한다. -_-;

    > mp_tkpunish 1

    >

    >

    > // 로고스프레이를 60초마다 뿌릴수 있게 한다.

    > decalfrequency 60

    >

    > // 서버 메시지를 화면에 뿌린다.

    > log on

    >

    > // 높은데서 떨어지면 상처를 입는다.

    > mp_falldamage 1

    >

    > // 클라이언트 측에서 정지를 못하게 한다.

    > pausable 0

    >

    > // 자동 조준을 못하게 한다.

    > sv_aim 0

    >

    > // 하프라이프의 치트를 못쓰게 한다.

    > sv_cheats 0

    >

    > // 다운로드(맵 등)를 못하게 한다.

    > sv_allowdownload 0

    >

    > // 운영자 메일 주소를 적어 준다.

    > //sv_contact seaofp@netsgo.com

    >

    >

    > // 서버를 원격 관리할 때의 암호를 정한다.

    > //rcon_password "여기에는 비밀번호"

    >

    >

    > // 영구히 밴 당한 사람들의 WONID를 읽어온다.

    > //exec banned.cfg

    > --------------------------------------------------------------------------

    > 이런 값을 가지고 있는 파일인데 이중에 한두개 정도만 값을 변경하구 싶어서여..

    > 변경되는것이 있다면....

    > 이리 저리 머리는 굴리는데...음....--;

    >



    TStringList.LoadFormFile로 파일을 읽어들인후 수정하고 SaveToFile 하세요.

    내용이 name=value형식이라면 더 쉽겠지만 '=' 이 없으니 그냥 하나씩 검사하는수밖에 없겠네요. 예를들면...



    procedure ChangeValue(name:string; value:string);

    var i:integer;

    begin

    with TStringList.Create do

    try

    LoadFormFile('파일경로aaa.cfg');

    for i:=0 to Count -1 do

    if pos(name,Trim(Strings[i]))=1 then

    if Strings[i][Length[name]+1]=' ' then begin

    String[i]:=name + ' ' + value;

    Break;

    end;

    SaveToFile('파일경로aaa.cfg');

    finally

    free;

    end;

    end;



    안돌려봐서 에러가 날지도 모르겠네요..