인프런 커뮤니티 질문&답변

초보님의 프로필 이미지

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

초보적인 질문. 서버 구축 비용

작성

·

11K

1

안녕하세요? 간단한 멀티 게임을 만드는 것에 관심을 가지고

이제 막 프로그래밍을 배우기 시작한 초보입니다ㅠㅜ

RooKiss님의 유니티c# 1강과 3강을 수강하고 있는데

궁금하여 질문 드리게 되었습니다

나중에 동시에 접속하려면 서버가 필요할 텐데 

소규모로 50명~100명 정도가 동시에 접속할 수 있으면 좋을거 같고,,

서버로 쓰는 컴퓨터가 별도로 필요한거로 아는데

그 외에도 추가적으로 온라인 서버를 사용하려면 건물 임차하듯이(??)

온라인 서버공간을 빌려쓰는 비용도 다달이 발생하게 되는 것인가요..?? ( 기초적인 것도 몰라서ㅠㅠ 초보적인 질문 죄송함니당..)

간단하게 줄여서 질문드리자면

50명 내외로 접속가능한 멀티게임을 만드려면 서버 구축이나 유지하는데

비용이 어느정도 들어갈지가 궁금합니다...!

감사합니다..

 

답변 1

3

Rookiss님의 프로필 이미지
Rookiss
지식공유자

그 외에도 추가적으로 온라인 서버를 사용하려면 건물 임차하듯이(??)
온라인 서버공간을 빌려쓰는 비용도 다달이 발생하게 되는 것인가요..??
( 기초적인 것도 몰라서ㅠㅠ 초보적인 질문 죄송함니당..)

-> 맞습니다. 보통 AWS를 이용해서 컴퓨터를 임대(?) 해서 서버를 띄우면 편합니다.
Windows 서버 기준으로 동접
50명 내외이고
몬스터가 아주 활발하게 AI를 돌리지 않는다는 가정하에
하루에 5천~1만원 정도는 예상해야 할 것으로 생각됩니다.
(리눅스 서버면 조금 더 싸긴 합니다.)

초보님의 프로필 이미지
초보
질문자

답변 감사드립니다~^^

아하... 하루에 1만원 정도씩 잡으면 한달이면 30만원 정도는 지출되겠네요..,

수익 창출을 하지 않는다면 그냥 30만원씩은 계속 나가겠군요 ㅠㅠ

혹 그럼  서버 운영이나 데이터 저장 등을 하지 않고

kahoot(카훗 퀴즈. 교육용 웹? 앱? 퀴즈 프로그램. 아시려는지 모르겠네요,,!)처럼

동시에 20~30명이 실시간으로 접속하여

해당 게임이나 퀴즈만 같이 한 이후에 바로 종료하는 방식의 게임이라면

이러한 경우라도 서버라던가 매달 임대료가 꼭 필요할까요? ㅠㅠ

수익창출 할 생각은 없고(할 수 없고...),

비용도 매달 발생한다면 유지하기가 어려워서..

교육용으로 실시간으로 학급 학생들 20명 정도가

접속하여 같이 플레이 하는 방식으로 멀티게임 제작을 해보고 싶은 것이라

서버용 컴퓨터까지는 괜찮겠지만 매달 임대료 내기는 어려울듯하여

혹 가능한 대안이 있을까요ㅠㅠ

한번 더 조언을 여쭙습니다..!!

Rookiss님의 프로필 이미지
Rookiss
지식공유자

위에 말씀드린 것은 MMORPG를 기준으로 설명드린 것이고,
(동접이 없더라도 몬스터 AI가 열심히 CPU를 소모하는)
퀴즈 류의 게임은 사실 부담이 굉장히 적습니다.
AWS 무료 체험 1년으로 1코어 컴퓨터를 제공하는데
그것으로도 충분히 운영할 수 있습니다.

Rookiss님의 프로필 이미지
Rookiss
지식공유자

그리고 학급용으로 테스트하는 것이 목표라면,
원격 컴퓨터를 굳이 임대하지 않고,
로컬 컴퓨터로 운영하는 것도 가능합니다.
단 그럴 경우 접속하는 학급 학생들도 동일한 네트워크망(내부 wifi)을 통해서만 접속이 가능하겠죠.

초보님의 프로필 이미지
초보
질문자

네~ 답변 감사드립니다^^

요새 보면 학생들이

io게임이라고 해서 저장 기능은 없이

실시간으로 경쟁하는 휘발성(??) 게임들도 많이 하던데

예) https://diep.io/

이러한 게임을 만드는 경우에도 서버/클라이언트 개념(?)이 필요하고

개발 이후 다달이 추가적인 유지비용이 들어가게 될까요?

이런 게임들은 수익은 따로 나진 않을거같은데, 그럼에도 인터넷에 보면

예전에 플래시 게임 올라오듯이

실시간 경쟁게임이 가능함에도 무료로 많이 양산하여 배포하는 것 같아서

예) https://iogames.space/

추가적인 유지비용 없이

저장 기능은 없어도 실시간 멀티 게임, 퀴즈 게임이 가능하다면

이런 쪽으로 교육용 게임 개발을

생각해볼 여지가 있는 것 같아 여쭈어봅니다~

뭔가 강의하시는 것과 핀트가 많이 엇나갔는데ㅠㅠ

강의하시는 내용과 연관성은 없지만 따로 여쭤볼 곳이 마땅하지 않고

설명도 너무 잘해주셔서 ... 염치불구하고 질문 올립니다ㅠㅜ

(c# 유니티만으로도 저런 io 게임도 만들 수 있을지,,,

아무래도 게임개발자는 아니고 수익창출을 하려는 것도 아니다보니

유지비용이 크게 안들어갈 수 있는지, 유니티 기본 c#언어 외에도 알아야할 언어가 있을지 등이 궁금합니다,,,!!.....)

질문을 너무 많이 드려서... 죄송, 감사합니다ㅠㅠ

Rookiss님의 프로필 이미지
Rookiss
지식공유자

시중에 있는 io게임의 대부분은
놀랍게도 서버 없이 AI를 그럴싸하게 구현해서
온라인 게임인 '척' 하는 것입니다.
수량으로 뿌려서 광고비로 돈을 버는 전략이죠.
아이디랑 국기까지 랜덤하게 뿌려서 온라인게임처럼 보이지만
놀랍게도 비행기 모드로 바꿔서 네트워크를 끊어도
온라인 게임(?)이 너무 잘 실행됩니다.

진짜 온라인 io 게임이라면,
우선 다수의 유저들이 같이 플레이할 때 게임서버가 필요하고
최종 결과를 저장하는 웹서버가 필요합니다.
추가로 유저들을 연결해주는 매치메이킹 서버도 필요합니다.
(롤 큐잡는거로 생각하시면 됩니다)
쉽게 말해서 '온라인'이 붙는 순간 작업량과 구현 난이도가
5~10배 상승한다고 생각하시면 됩니다.

[저장 기능은 필요없다]면 DB가 필요하지 않다는 것이고,
승/패 같은 기본 정보라도 저장이 필요하면 웹서버/DB가 필요합니다.
그 외 동시에 유저들이 게임을 하려면 게임 서버가 필요합니다.
(아주 간단한 게임이면 웹소켓 기술을 이용해도 되긴 합니다)

초보님의 프로필 이미지
초보
질문자

아하 그렇군요ㅠㅠ 역시 쉽고 빠른 길로, 무료로만 가려고 하는 자세는 안되겠군요...  유니티c# 전체 강의 열심히 듣도록 하겠습니다..! 게임을 실제로 내놓을때가 언제쯤이 될진 모르겠지만 차근히 하나씩 배워나가야겠네요. 답변 감사드립니다!!

초보님의 프로필 이미지

작성한 질문수

질문하기