|
2011-12-16 16:11
조회: 4,759
추천: 5
프로그래머입장에서 본 아이템잘뽑기 팁세상에 그런게 있을리가 없잖아요.
프로그래머도 사람인데 그런 귀찮은 짓을 할리가 없어요 (이글은 사제게시판에 썼다가, 아무래도 팁게에도 한번 쓰는게 좋을거 같아서 내용을 조금 수정하여 작성하였음을 밝힙니다.) 윗 사람들이 혹시라도 저런걸 요구한다 이러면 모르겠는데(무슨정신으로 이런걸 요구할지는 이해할 수 없지만) 일반적인 코딩작업에서 복권을 긁거나 알을 까거나 하는 행위는 다음과 같은 방법을 씁니다. 알을깐다 또는 몬스터를 쓰러뜨려 아이템이 떨어진다(시작) 1. 사전에 기획된 대로 가중치를 둔 주사위를 굴린다(그냥 rand()등의 랜덤함수 돌리면 됩니다.) 예) 1~10000 사이의 숫자를 아무거나 뽑아낸다. -> 100이 나옴 2. 100에 대응되는 아이템을 생성한다 예) 10000 이면 다이아몬드(0.01% 확률) 9998~9999면 에메랄드(0.02% 확률) 9995~9997이면 루비 (0.03% 확률) 1~9000 이면 폭죽 (90% 확률) 9001~9900 이면 산타양초 (9% 확률) 9901~9994이면 산타호문이라고 미리 지정되어있음 (0.94% 확률) (이건 기획단계에서 이미 지정된것) => 100이므로 폭죽이 생성된다. 이런식입니다. 실제로 간략하게 코딩한다면 아마 rand()//숫자생성 select item_code from item_list_santa where..... //숫자에 해당하는 아이템을 가져옴 create_item(p_item_list_santa) ...//아이템생성 대충 이런 흐름을 따라갑니다. 근데 옷을 벗고 장비를 벗고 모두 비운뒤 하면 잘 나오게 하기 위해서는 rand()//숫자생성 if(.... 장비를 입고있는지 아닌지 체크 장비를 입고있지 않다면 어떻게 할건지 체크 만약 무기만 들고있다면 어떻게 할건지 체크 만약 무기에 크리스탈이 하나만 있다면 어떻게 할건지 만약 그 크리스탈이 마나의 흐름이라면 만약 그 크리스탈이 전사의 사슬이라면 만약 그 크리스탈이 집행자의 위용이라면 ...... 만약 무기에 크리스탈이 두개만 있다면 어ㅤㄷㅓㅎ게할건지 만약 그 크리스탈이 마나의 흐름과 전사의 사슬이라면 만약 그 크리스탈이 마나의 흐름 2개라면 ..... 만약 무기에 크리스탈이 3개.... ...... 만약 방어구에 크리스탈이 1개.... if (인벤에 아이템이 얼마 없다면) ... if (.... ) select item_code from item_list_santa where..... //숫자에 해당하는 아이템을 가져옴 create_item(item_list_santa) ...//아이템생성 저런 조건식이 한참 들어가야 합니다. 저걸 하고싶어하는사람이 있다면 과연 어떤 사람인지 좀 보고싶네요. 강화를 또 예로 든다면 주사위 100을 굴린다 50이 나왔다 0->1 의 경우 1~99까지는 성공, 100은 실패 라고 지정되어있다(예입니다) 50이 나왔으므로 성공 ...... 주사위를 굴려서 16이 나왔다 사용한 가루가 빛나는 단련의 가루 이므로 20보다 작을 경우 +5를 해준다 보정된 결과값은 21 11->12 의 경우 1~20은 -1, 21~94은 +0, 95~100은 +1(예입니다.) 결국 11->12는 실패 .... 주사위를 굴려서 94가 나왔다! 사용한 가루가 축복받은 단련의 가루이므로, 21이상, 94 이하일 경우 +5를 해준다 94 이므로 보정값은 94+5=99 11->12 의 경우 1~20은 -1, 21~94은 +0, 95~100은 +1(예입니다.) 99으미로 11->12는 성공! 이런식으로 진행될겁니다. 근데 사람이 없는곳에서 강화가 잘된다 이러면... 강화시마다 주변 100미터내에 유저가 있는지 없는지 확인한다. 몇명이나 있는가? 1명이면... 2명이면... 3명이면... 4명이면... .... 이런식으로 조건문이 쓸데없이 길어집니다. 이런걸 프로그래머가 할리가 없습니다. 게다가 기획자도 저런식으로 비상식적인 일을 저지를 수도 없고, 저지를 방법도 없습니다. (위에서 결제를 안해줍니다) 결론 : 강화잘되는 법, 아이템 잘 뽑는법, 보스에서 좋은아이템 획득법 이런거 다 거짓말입니다. 가끔 프로그래머가 장난 삼아 또는 의도적으로 넣는 경우도 있긴한데, 그런건 발각되면 그 프로그래머는 짤린다고 보면 되기때문에 실제로 사전에 의도적으로 들어간게 아니라면 없다고 보시는게 좋습니다. (이스트에그 같은 경우는 배포전에 의도적으로 넣은것입니다)
EXP
67,049
(0%)
/ 72,001
|
이피리아