본문 바로가기

메이플스토리 월드

(7)
[메이플스토리 월드/LUA] 360도까지 지원가능한 새로운 조이스틱 만들기 메이플스토리 월드는 내장된 기능이 정~~~~~~~~말 많아서 내가 개발을 하나도 모른다 해도 개발이 가능할정도다. 그렇지만 그거는 어느정도 기존 메이플 형식을 따라갔을 때의 얘기고, 메이플과 다른 새로운 느낌을 주기위해 개발을 할 때는 자체적으로 스크립트를 많이 만지게 된다. 기본적으로 제공되는 조이스틱은 4방향, 그리고 8방향 까지만 지원이 가능하며 내가 못 찾은건지는 모르겠지만 오직 이동만을 다루는 듯한 느낌이였다. 사실 메이플과 같은 플랫포머를 만들때 상,하,좌,우 그리고 점프정도로 이동이 가능하겠지만 현재 내가 제작하고 싶은 게임은 탑뷰 형식이기 때문에 8방향을 사용해야겠다. 라고 생각을 했다가 아니 그냥 완벽하게 360도를 구현하자!!! 라고 생각이 들었다. 우선 이미지 UI두개를 만들어 주자...
[LUA] 루아스크립트에서 자연스러운 체력바 만들기 (LERP) Lerp 연산 (Linear Interpolation) 라고 불리는 연산, 한국어로는 선형 보간이라고 한다. Unity를 활용한 개발을 할 때는 자체 내장함수가 있어서 사용했엇는데, lua에서 동일한 기능을 구현하려 하다보니 없어서 직접 만들어서 사용했다. 사실 정말 간단한 함수인데, 유니티만 사용했을 때는 어떠한 원리로 동작하는지 모르고 사용했었는데, 간단히 정리하자면 A B 사이에 특정한 비율로 점을 하나 찍는다. ex) A=0 B=10 비율 = 0.5 1차적으로는 저 가운데에 찍힐 것이고, 저 점을 A로 잡아준다. 두번째로는, 이런식으로 그려질 것이고, 계속 하다보면 A점이 B에 거의 일치가 될 것이다. 단 이 작업은 A와 B는 완전히 같은 값이 되지 않는다!!!! 또한 비율이 크면 클수록 B에 가..
[슈퍼해커톤] LUA스크립트를 어느정도 익히고 나서!! 메이플스토리 월드 플랫폼과 LUA스크립트에 대해서 익숙해짐과 동시에 개발속도가 매우 빨라졌다. 기존 단순히 투사체를 날리는 형태의 무기만 만들었었는데, 더욱 응용된 공격방식이 많아졌다. 특히 던파 스킬 C4에서 영감을 받아서 만든 총 무기는 너무 마음에 든다!! 이제 무기 구현을 넘어서 더욱 많은 구현을...해야지......
[슈퍼 해커톤 2022] 메이플스토리 월드 어느정도 손에 익히는중 아직 많이 부족하긴 하지만, 어느정도 손에 익으니까 개발하면서 구현하는 과정이 너무 재밌고, 작업이 빨라지는 느낌이다. 해커톤 마감까지 두달도 안 남았는데, 할 일 하면서 마무리 지으려면 많이 바빠질듯..
[LUA/메이플스토리 월드] 반사 벡터 만들기,특정 오브젝트에 닿으면 튕기는 오브젝트 만들기 Unity를 사용해서 반사 벡터를 만드는것은, Vector3 내장함수인 Reflect를 사용해서 쉽게 구현을 했었다. 그런데 메이플스토리 월드를 사용해서 개발을 하는데, 내가 못 찾은건지 존재하지 않는건지 모르겠지만 내장함수가 없었다... 그래서 직접 구현해보기로 결정 생각보다 많이 간단했다. 우선 반사 벡터를, 구하는 과정을 찾아보면 위와 같이 볼 수 있다. 여기서, 법선 벡터에 내 벡터를 투영하는 벡터를 만들어 줄 것인데, 이 값의 벡터값은 n이고, 스칼라값은 내 벡터의 역벡터인 -P와n을 내적한 값이기 때문에 n(-P·n) 라고 할 수 있다. 자 이제, 조금더 확장해서 본다면 그림이 많이 복잡하지만, 이런식으로 그려질 수 있고 따라서 내가 구하고 싶은 반사벡터는 P+2*n(-P·n) 이 된다. 사실..
[슈퍼 해커톤 2022] lua스크립트와 어느정도 친해졌나 LUA뿐 아니라 메이플 월드 자체 제공하는 기능이 너~~~무 많고, 가장 어려운게 server/client로 나눠지는게 너무 헷갈렸다... 그래도 어느정도 익숙해지니 개발이 조금 더 빨라지고 있다. 이번에는 저번에 랜덤으로 생성한 맵에, 적 몬스터 오브젝트를 3개씩 두고 마우스 방향으로 총알이 나가는 간단한 슈팅게임을 구현해보았다. 역시 리소스가 되니까 별거 안해도 엄청 멋있는 게임이 만들어진 기분이다. 스크립트를 쉽게 설명할정도로 익숙해지는게 목표다
[슈퍼 해커톤 2022] LUA 스크립트랑 친해지는 중 메이플스토리 월드를 제작하는 해커톤에 참가하게 됐는데 새로운 스크립트를 배워야 한다 해서 별거 있겠어~라고 생각했는데 별거 있었다. 기존에 유니티로 구현했던 BSP알고리즘으로 맵 만들기를 적용해보려 했는데 생각보다 언어에 대한 이해도 부족때문인지 구현이 힘들어서 다량의 IF문을 동반해서 맵 만들기를 완성시켰다. 아직 언어적으로 많이 부족해서 코드가 깔끔하지는 않지만 그래도 생각한대로 구현 완성