[그때살껄;;]
-
[그때살껄] 매칭 시스템(3)[그때살껄;;] 2024. 8. 21. 15:48
https://young-helloworld.tistory.com/30 [그때살껄] 매칭 시스템(2)https://young-helloworld.tistory.com/29 이글에 이어서 작성하겠습니다. 전에 임시저장만 해놓고 완료를 안눌러서 글을 바로 작성하는 것처럼 보이지만 2주 텀이 있습니다.. 내가 짠 랜덤 매칭에 적합한young-helloworld.tistory.com 대기열에 있는 많은 유저 자산이 비슷할때 성능이 매우 안좋아지는 불상사를 막기위해 고민을 몇개 해봤다. 1. 3차원 그라디언트 자산 가중치(k), 대기 시간 가중치(l), 평균 자산 가중치(m)을 파라미터로 둔다. 자산 (k)사용자의 자산에 크기를 반영한다.k가 높을수록 개개인 자산의 크기에 따라 더 공평한 게임을 할 수 있지만, ..
-
[그때살껄] 매칭 시스템(2)[그때살껄;;] 2024. 8. 21. 12:11
https://young-helloworld.tistory.com/29 [그때 살껄] 매칭 시스템(1)팀 프로젝트로 모의 코인투자를 해보기로 했다 !그 중 매칭 시스템을 맡게 되었는데 방을 생성, 수정, 삭제, 게임 시작 등 .. CRUD만 하는건 쉬웠다. 랜덤 매칭을 짤때는 머리가 좀 아팠는데 그 고young-helloworld.tistory.com 전에 임시저장만 해놓고 완료를 안눌러서 글을 바로 작성하는 것처럼 보이지만 2주 텀이 있습니다.. 내가 짠 랜덤 매칭에 적합한 유저를 찾아주는 로직이 너무 비효율적이라는 것을 깨달아버렸다.그래서 뭔가 더 좋은 방법이 없을까 알고리즘을 찾아보고 후보가 몇개 있었다. 1. 그리디 알고리즘가장 간단한 접근 방법이다. 각 단계에서 최선의 선택을 해 매칭을 시도..
-
[그때 살껄] 매칭 시스템(1)[그때살껄;;] 2024. 8. 21. 11:44
팀 프로젝트로 모의 코인투자를 해보기로 했다 !그 중 매칭 시스템을 맡게 되었는데 방을 생성, 수정, 삭제, 게임 시작 등 .. CRUD만 하는건 쉬웠다. 랜덤 매칭을 짤때는 머리가 좀 아팠는데 그 고민한 과정을 써보려고 한다. 처음 생각한 랜덤 매칭은 자산 별로 구간을 나눠서(예를 들어서 0 ~ 3천만원, 3천만1원 ~ 6천만원 이런식으로 ..) 그 구간에서만 최소인원인 4명에서 최대인원인 10명까지 인원을 구성하려고 했다. 하지만 롤이라는 게임을 생각해보니 티어가 나눠져 있지만 레이팅이라는 개념이 있어서 골드인 유저가 실버를 만날수도, 플레티넘을 만날수도 있다는걸 생각해보니 구간을 나눠서 그안에서만 인원을 구성하는건 너무 내가 편하게 짤라고 수를 쓰는거 같았다. 그래서 자산 자체를 레이팅으로 놓고 자..