그 뭐냐.
스마트 기능이 어째 제대로 빛을 발휘하지 못하고 있습니다.
왜그런가 되돌아서 생각해보니
발더스카이 개조할때 구현한 기능중 하나가
스마트에서 빠졌다는겁니다;;
그래서 요번 기가 사에서 나온 게임들 전부가
에러 팅팅 거리면서 꺼지더군요.
OTL
일단 결론입니다.
굳이 스마트 방식뿐만이 아닌
포인터 방식에서도 이 기능을 필요로 합니다.
후킹하는 지점이 call 지점을 겨냥한 상태일때 입니다.
(저번에 추가 건의한것과 별개입니다. 그거까지 적용된다면 금상첨화군요 안뚫리는 게임이 없어질겁니다.)
1000 CALL 2000 <-이곳을 후킹한다고 가정할때 (스마트 혹은 포인터 방식으로, 후킹하는 장소가 무조건 call 문일때)
--------------------------------
1000 CALL 5000 (아랄에서 번역실시 후 포인터를 넘겨줌)
5300 CALL 2000 (복사해온 조각 실행)
5306 ..
..
-------------------------------
구현하고자 하는건 저부분에서 약간 스크립트 형식을 따라한 형태일까요.
우선 전제조건은
1. 후킹한 장소(스마트 포인터방식 이나 , 포인터 방식일때) 가 무조건 CALL 문일때입니다.
사용하고자 하는 것은
포인터 방식이 아랄 번역한 메모리에 포인터 인자를 바꿔넣는 작업인데.
딱! 특정 함수만 거친뒤 다시 복구하는 겁니다.
위 예로 들었을때
5300 CALL 2000 을 실행한뒤
다시 수정된 포인터를 원래 포인터로 복구 후
실행되는 것이지요.
예전부터 구현하고자 하는 기능들이였습니다.
스마트, 콜지점선택, 콜진행후 포인터복구... 등.
또 생각나면 떠들겠습니다.
시간이 잘 안나네요..ㅠ
헐, 리뉴얼 됐다 싶었더니 여기서 거주하시는군요, 피시님. =ㅅ=