발표 자체를 web3가 아닌 caver-js로 마이그레이션 해달라는 요청이 들어와서 코드를 좀 다 뜯어 고쳐서 DAO형태로 프로젝트를 수정하고자 합니다.
일단 기본적으로 Token은 바로 지급이 되게 만들것 입니다.
모든 가스비는 사용자가 지불하는 형태가 될 것이고 토큰을 지급하는 행위만 서버계정에서 주게 될 것입니다.
가스비가 너무 많이 소비될수 있는 전투, 병사수 갱신, 맵데이터, item, 경매 부분은 오프체인에서 구현이 될것 같습니다.
대략적인 구상도는 이와 같고 물론 이 구상도는 바뀔수 있습니다.
이전에 솔리디티를 좀더 심도있게 공부를 하면서 알게된 ERC-20의 토큰 이동에 관한 최소 가스비 문제가 조금 걸립니다.
지분에 따라 토큰을 지급하는 행위는 모든 데이터를 모아서 한번에 처리하면 되지만
전투 결과에 따른 토큰 지급은 개인당 한번식 트랜잭션을 발생시켜야 하기 떄문에
이 부분에서 작은 데이터를 전송하지만 고정적으로 21000wei가 소모되게 됩니다.
이 부분에서 가스비가 너무 비효율적으로 사용될것 같다는 걱정이 있고
해결방법으로는 이 또한 한번에 모아서 처리를 하는 방법이 있는데
사용자가 어느정도 기다려야 하는 단점이 있습니다.
사실 뚜렷한 해결방법이 떠오르지도 않아서 일단 가스비가 낭비되는 방향으로 코드를 작성을 해보고 후에 방법이 떠오르면 수정을 하는 방향으로 생각을 하고 있습니다.