제가 생각하는 최고의 활용용도는 "프로그래밍 가능한 conf 파일"입니다만... 뭐, 사람들 생각은 모두 다를 수 있으니까요.
^^
- redpixel
덧글 : 답신을 달아주신 분들에게는 me2day 초대권을 무료로 보내드립니다. -_-;;;;; 요즘 하고 있는데 꽤 중독성이 있
네요.
원래는 여러가지 설정 데이터를 XML 형태로 처리를 하고 있었는데,
구조적으로 깔끔해서 좋긴 한데, 아무래도 상황에 따른 데이터를 설정 파일에 저장하려니
결국 기본 프로그래밍 구조를 포함할 수 있는 설정 파일이 필요하더군요.
또한 해당 설정에 따른 간단한 로직 처리도 수정이 발생하면 항상 빌드를 새로 해야하고;;
(모듈화는 되어 있지만서도)
현재는 CONF 파일 수준이 아니라 상당한 로직을 아예 루아로 빼버리고 있습니다.
일정 패턴이 있으면서 약간의 변경이 있는 그런 부분을(UI + DATA + CONTROL 모두)
전부 루아 스크립트 수정만으로 처리를 하고 있는거죠.
게임 업계에 계신 분들이라면 아마 자체 스크립트를 제작하는 분도 많을 듯 한데..
자체 파서 개발이 참 답답하기도 하고 C 수준으로 개발하는 것도
스크립트 자체의 안정성/성능을 확보하기까지 시간이 꽤 걸리더라고요.
결론은 뭐, 루아를 유지보수 중인 게임에 적용한게 훌륭한 결정이었다고 생각되고요.
팀 내에서는 적극적으로 적용을 하려고 합니다. ^^
서버 쪽은 어떨런지.. 잘 모르겠네요. ㅎㅎ
)
home: http://www.redwiki.net
PGPkey: http://keyserver.veridis.com:11371/export?id=-5789970709130555655&created=1143603649000
PGPKeyID: 0x0E5B4EF9
MSN,GTalk ID : redwi...@gmail.com
여기에 정말 수긍이 가는군요..
기획자 스크립팅 환경을 제공해 줌으로 해서 프로그래머도 편해지고, 기획자도 원하는 여러가지를 해볼 수 있고..
제가 생각하기엔 이 부분이 가장 큰것 같습니다.
컴파일 시간이 전혀 없다는 것도 한 장점이 될 수 있겠습니다만,
뭣보다도 게임 만들다보니 UI 를 한두번 갈아엎게되는 게 아니라서 정말 스크립트로 빼지 않았따면 짜증이 나서 참을 수가 없었을
것 같습니다. ㅋㅋ
요즘에는 각종 툴의 저장 파일을 또 루아 스크립트로 하게 되네요.
루아의 테이블이 워낙 강력하다보니 툴에서 저장한 것을 테이블 형식으로 담아두고 있습니다.
저장한 파일을 읽을 때는 파싱을 루아에서 다 해주는 꼴이니 이것 또한 정말 편하더군요.
redpixel 님이 말씀하신 대로, 프로그래밍이 되는 config 파일로도 무척 편리합니다.
유연해질 필요가 있는 것들은 일단 스크립트로 빼내고,
빼낸 것들이 쌓이다보면 또 어느정도 구조화 시킬 여지가 보이더군요.
그리고 스크립트가 아무래도 텍스트 파일이다보니,
외부 배포시에 공개하기 싫다면 루아와 같이 제공되는 루아 컴파일러로 컴파일 시키면 바이너리 형식으로 스크립트가 컴파일 되더군요. ^^
아시다시피 게임에서 UI 와 conf 파일 용도로 썼다는 사실 아실거구요(UI 대표적으로 WoW)
라그나로크에서는 호문클루스의 AI 스크립트로 사용되었습니다.
저희 게임에서도 역시 UI와 Conf 용도로 사용하고 있구요
이벤트성 물체 - 밟으면 발동한다던가 하는 그런 특수 기능을 하는 물체 - 를 설정하는 용도로 사용하고 있습니다.
이벤트성 물체는 간단하게 카트 같은데서 특정 타일을 지나칠때 속도가 빨라지는 뭐 그런 겁니다.
--
Kwon Tai-in
Senior Engineer
GES Co.ltd. (http://www.iges.co.kr)