본문 바로가기

전체 글612

24.04.09 플레이리스트작업 보호되어 있는 글 입니다. 2024. 4. 9.
24.04.08 플레이리스트작업 보호되어 있는 글 입니다. 2024. 4. 8.
[언리얼5] 클라이언트의 검증 함수 멀티 플레이 프로그래밍을 할때 해킹을 방지하기위한 방법중의 하나인 클라이언트 검증 함수 프로그래밍은 가능하면 서버를 통하여 계산이 이루어져야하며 만일 클라이언트에 노출되어 수정이 가능한 데이터가 있다면 해당 데이터를 검증한후 전송할 수 있도록 해야함. 예를 들어 슈팅게임에서 무기마다 발사 속도를 BP에서 조절할 수 있도록 변수를 노출시켰을때. 어떠한 프로그램을 통하여 해당 변수가 저장되는 메모리의 주소를 알아내고 값을 변경한다면 해킹이 가능하게 된다. 해당 변수가 사용될 함수는 클라이언트가 서버로 요청하여 실행할 수 있도록 UFUNCTION(Server, Reliable, WithValidation) 을 사용한다. 위처럼 매크로를 선언하고 _Validate 접미어가 붙은 함수를 CPP에서만 선언하여 검증.. 2024. 4. 7.
[언리얼5] SSR & CSR Server-Side Rewind (SSR) Server-Side Rewind는 서버가 클라이언트로부터 받은 입력을 처리할 때, 해당 입력이 발생했던 시점의 게임 상태로 "되돌아간다"고 가정하여 처리하는 방식입니다. 이는 주로 히트 스캔(hit-scan) 무기를 사용하는 FPS(First-Person Shooter) 게임에서 플레이어의 총알이 목표물에 맞았는지 판정할 때 사용됩니다. 예를 들어, 클라이언트 A가 적을 쏘고, 그 총알이 명중했다고 서버에 보고했지만, 서버와의 통신 지연으로 인해 서버는 적이 이미 그 위치에서 움직였다고 판단할 수 있습니다. SSR을 사용하면, 서버는 클라이언트 A의 총알이 발사되었던 시점으로 게임 상태를 "되돌린" 후, 그 시점에서 총알이 적에게 명중했는지를 판정합니다. 이.. 2024. 4. 7.
[언리얼5] 언리얼 네트워크 시뮬레이션 관련 참고 자료 SettingDescription PktLag Delays the sending of a packet by the amount of time specified in milliseconds PktLagVariance Provides some randomness to the amount of time a packet is delayed, +/- the amount specified in milliseconds PktLoss Specifies a percentage chance of an outbound packet being discarded to simulate packet loss PktDup Specifies a percentage chance to send a duplicate packet PktOr.. 2024. 4. 7.
24.04.06 플레이리스트작업 보호되어 있는 글 입니다. 2024. 4. 6.