· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Real Time Battle

ÇÁ·Î±×·¡¹Ö ÇнÀ µµ±¸·Î¼­ °ÔÀÓ : Real Time Battle


2005.6.7 ÇöÀç RealTimeBattleÀº 1.0.7À¸·Î Æǿø²µÇ¾î ÀÖÀ¸¸ç RealTimeBattle Team¿¡ ÀÇÇؼ­ ²ÙÁØÈ÷ °³¼±µÇ¾î°¡°í ÀÖ´Â ÁßÀÔ´Ï´Ù. [http]ȨÆäÀÌÁöÀÇ Latest News¸¦ Âü°íÇϽñ⠹ٶø´Ï´Ù.



ÀÌ ±ÛÀº ¸®´ª½º¸Å°ÅÁø 2002³â 7¿ùÈ£¿¡ ½Ç¸° ±â»çÀÔ´Ï´Ù. ±â»ç¸¦ À§Å°·Î Á¤¸®Çϸ鼭 À̶§ ¿Ö ÀÌ·¸°Ô ±ÛÀ» ½è´ÂÁö ºÎ²ô·¯¿î ¸¶À½ÀÌ ¾Õ¼­´õ±º¿ä. 2002³â ±â»ç¸¦ Á¤¸®ÇÑ °ÍÀÌ¶ó¼­ 2004³â 12¿ù ÇöÀç RTB ÇÁ·ÎÁ§Æ®°¡ ¾îµð±îÁö ¿Í ÀÖ´ÂÁö, ¾ÆÁ÷µµ È°¹ßÈ÷ °³¹ßÀÌ ÀÌ·ç¾îÁö°í ÀÖ´ÂÁö¿¡ ´ëÇؼ­´Â ÀüÇô ¾ËÁö ¸øÇÕ´Ï´Ù. ÇÁ·ÎÁ§Æ®¿¡ °ü½ÉÀÖ´Â ºÐÀÌ °è½Ã´Ù¸é ÀÌ ±â»ç¸¦ ´õ¿í ¾ËÂ÷°Ô º¸¿ÏÇØ Áֽø®¶ó ¹Ï¾î ÀǽÉÄ¡ ¾Ê½À´Ï´Ù.

ÇÑ°¡Áö ´õ! ÇÁ·Î±×·¡¹Ö ½Ç·ÂÀÌ ¾ÆÁ÷ ¹Ì¼÷Çϱ⠶§¹®¿¡ Áú¹®¿¡ ´ëÇØ ¿øÇϽô ´äº¯À» Çص帱 ¼ö ÀÖÀ»Áö °ÆÁ¤À̵˴ϴÙ. Çü½ÄÀûÀ¸·Î³ª¸¶ ¹®¼­ ³¡¿¡ Áú¹®/´äº¯ÀÌ ÀÌ·ç¾îÁú ¼ö ÀÖ´Â °ø°£À» ¸¶·ÃÇØ µÎ¾ú½À´Ï´Ù.


ºñÀü°øÀڷμ­ ÇÁ·Î±×·¡¹Ö¿¡ °ü½ÉÀÌ ¸¹Àº µ¶ÀÚ´Â ¾ó¸¶³ª µÉ±î? ÀÌ Áß¿¡´Â Ưº°È÷ Á¦2ÀÇ µµ¾àÀ» ²Þ²Ù¸ç ÇÁ·Î±×·¡¹ÖÀ» ÁغñÇÏ´Â ºÐµéµµ ÀÖ°ÚÁö¸¸ »ý°è¿Í´Â »ó°ü¾øÀÌ ¼ø¼öÇÑ ÁöÀû ¿å±¸·Î ÇÁ·Î±×·¡¹ÖÀ» °øºÎÇÏ°í ½Í¾îÇÏ´Â ºÐµéµµ ²Ï ÀÖÀ» °ÍÀ̶ó´Â ±â´ë¸¦ ÇØ º»´Ù. Á¤±Ô ±³À°°úÁ¤À» ÅëÇØ ¹è¿ï ¼ö ¾ø´Â ¿å±¸¸¦ µ¶ÇÐÀ¸·Î ä¿ì°í ½Í¾îÇÏ´Â ¸ÚÁø ±×´ë, ±×´ë´Â ¾î¶»°Ô °øºÎÇÏ°í Àִ°¡? ¿©±â ¸®´ª½º¿¡¼­ ÇÒ ¼ö ÀÖ´Â ÇÁ·Î±×·¡¹Ö ÇнÀ ¹æ¹ýÀ¸·Î ±×´ë°¡ °øºÎÇÏ´Â ¹æ½Ä°ú´Â Á¶±Ý ´Ù¸¥ ³»¿ëÀ» ¼Ò°³ÇÏ°íÀÚ ÇÑ´Ù.

ÇÊÀÚ : ½ÅÀçÈÆ(gunsmoke.shin at gmail.com)

ÇÊÀÚ, Ưº°È÷ ÇÁ·Î±×·¡¹ÖÀ» Àß ÇÏ´Â °Íµµ ¾Æ´Ï°í ÇÁ·Î±×·¡¹ÖÀ¸·Î ¹ä ¸Ô°í »ì Àϵµ ¾ø´Â °ÍÀÌ »ç½ÇÀÌ´Ù. ÇÏÁö¸¸ Áö±Ý ÀÌ ±ÛÀ» º¸°í ÀÖ´Â µ¶ÀÚ ¿©·¯ºÐµé°ú ¸¶Âù°¡Áö·Î ÇÊÀÚ´Â ¾ðÁ¦³ª ¹è°íÇ ÇÁ·Î±×·¡¸Ó¸¦ ²Þ²Ù¸ç »ê´Ù. ³ª¸¸ÀÇ ¼¼°è¸¦ âÁ¶ÇÑ´Ù´Â °Í, ±×¸¸Å­ ¸Å·ÂÀûÀÎ ÀÏÀÓ¿¡ Ʋ¸²¾ø´Ù. ±×·¯³ª Áö±Ýµµ Ã¥Àå¿¡´Â ¾ÆÁ÷ ´Ù ÀÐÁö ¾ÊÀº ÇÁ·Î±×·¡¹Ö ¼­ÀûµéÀÌ ÁÙÁö¾î ÀÖ°í Áö³­´Þ¿¡ ¹è´ÞµÈ ¸®´ª½º ¸Å°ÅÁøÀº ¾ÆÁ÷µµ Ã¥»ó À§¿¡¼­ µß±¼°í ÀÖ´Â ½Å¼¼ÀÌ´Ù. À̹ø¿¡ ÀÌ Àϸ¸ ³¡³ª¸é, ÃÊÀú³á¿¡ Àä´Ù°¡ »õº®¿¡ ÀϾ¸é ²À Àоî¾ßÁö °¢¿À¸¦ ´ÙÁöÁö¸¸ ÀÌ ÇèÇÑ ¼¼»ó ÇÏ·çÇÏ·ç ¸Ô°í»ç´Â °Íµµ ½±Áö°¡ ¾Ê´Ù.

1.1. ªÀº ¿¹Á¦¸¦ ¸¹ÀÌ ÄÚµùÇϸé ÇÁ·Î±×·¡¹Ö ½Ç·ÂÀÌ Çâ»óµÈ´Ù?


°ÔÀÓÀ» Áñ±â¸é¼­ ¡®³ªµµ ÀÌ·± °ÔÀÓÀ» ¸¸µé¾î ºÁ¾ßÁö!¡¯ÇÏ´Â ¸¾À¸·Î ÇÁ·Î±×·¡¹Ö¿¡ ÀÔ¹®ÇÑ »ç¶÷µéÀº ¾ó¸¶³ª ¸¹Àº°¡? ¾î¸± ÀûºÎÅÍ ÀÌ·± ¸¾À» °¡Áö°í ¾Æ¿¹ Àü°øÀ» ÀÌÂÊÀ¸·Î ÅÃÇß´Ù¸é ¾î¿ ¼ö ¾øÁö¸¸ ºñÀü°øÀڷμ­ µ¶ÇÐÀ¸·Î ¾ß¹«Áø °¢¿À¸¦ °¡Áö°í ÇÁ·Î±×·¡¹Ö ÀÔ¹®¼­¸¦ »ò´Ù¸é Ã¥¿¡¼­ Á¦°øÇϴ ©¸·ÇÑ ¿¹Á¦ºÎÅÍ ÄÚµùÇÏ´Â °ÍÀÌ ½ÃÀÛÀÌ´Ù. ¡®¹é°ßÀÌ ºÒ¿©ÀÏŸ¡¯¶ó´Â À¯¸íÇÑ ¾ê±âµµ ÀÖÁö ¾ÊÀº°¡? ¡®Hello World' ¹®ÀÚ¿­ Ãâ·ÂÇϱ⸦ ½ÃÀÛÀ¸·Î ±¸±¸´Ü Ãâ·ÂÇϱâ, À±´ÞÀÌ ¼¯ÀÎ ´Þ·Â ÇÁ·Î±×·¥ ¸¸µé±â, ºñµð¿À ´ë¿©Á¡¿¡¼­³ª ¾µ¸¸ÇÑ °í°´°ü¸® ÇÁ·Î±×·¥ ¸¸µé±â µîµî....

K&RÀÇ ¡®C Programming¡¯ÀÌ µ¶ÀÚ ¿©·¯ºÐÀÌ Áö±Ý º¸°í ÀÖ´Â ¸®´ª½º ¸Å°ÅÁø Á¤µµÀÇ µÎ²²¹Û¿¡ µÇÁö ¾Ê¾ÒÀ½À» »ý°¢ÇÒ ¶§ 800¢¦900 ÆäÀÌÁö ½ÉÁö¾î 1,000 ÆäÀÌÁö¸¦ °Å¶áÇÏ°Ô ³Ñ´Â ÇÁ·Î±×·¡¹Ö ÀÔ¹®¼­ÀÇ ºÐ·®À» Â÷ÁöÇÏ°ÔµÈ ÁÖ¹üÀº ÀÌ·± ¿¹Á¦µéÀ̶ó´Â °á·ÐÀ» ³»¸± ¼ö ÀÖ´Ù. ÀÌ·¸°Ô ªÀº ¿¹Á¦¸¦ ÄÚµùÇϸ鼭 ÇÁ·Î±×·¡¹ÖÀ» ¹è¿ï ¼ö ÀÖ´Ù´Â ÁÖÀåÀº ¸¶Ä¡ ¿µ¾î¸¦ °øºÎÇÒ ¶§ ´Ü¹® µ¶Çظ¦ °­¿äÇÏ´Â °Í°ú ºñ½ÁÇÏ´Ù. ´Ü¹® µ¶ÇØÀÇ ¸ÍÁ¡Àº ¿µ¾î·Î »ý°¢ÇÒ ¿©Áö¸¦ Á¦°øÇØ ÁÖÁö ¾Ê´Âµ¥ ÀÖ´Ù. ¹®¸ÆÀ» ÅëÇØ ¿µ¹®À» ÆľÇÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ´Ü¾î¿Í ´Ü¾îÀÇ Àǹ̸¸ °¡Áö°í Çؼ®À» ½ÃµµÇϱ⠶§¹®¿¡ µ¶ÇØ·ÂÀ» Å°¿öÁÖ´Â µ¥¿¡´Â ÇÑ°è°¡ ÀÖ´Ù. ÇÁ·Î±×·¡¹Ö ÀÔ¹®¼­°¡ °­¿äÇϴ ªÀº ¿¹Á¦ ¶ÇÇÑ °°Àº ¹®Á¦¸¦ °¡Áø´Ù.

¸¹ÀÌ ÄÚµùÇØ º¸¸é ÇÁ·Î±×·¡¹ÖÀ» ´õ ÀßÇÒ ¼ö ÀÖ´Ù´Â ÁÖÀåÀÌ Æ²¸° °ÍÀº ¾Æ´ÏÁö¸¸ ¿©±â¿¡´Â ÇÁ·Î±×·¡¹ÖÀ» Çϱâ Àü¿¡ ³í¸®ÀûÀ¸·Î »ç°íÇÏ´Â ¹ö¸©À» µé¿©¾ß ÇÑ´Ù´Â ÇÙ½ÉÀûÀÎ ³»¿ëÀÌ »ý·«µÇ¾î ÀÖ´Ù. ¹°·Ð ÀÌ·± ºÎºÐÀº Ã¥°ú °°Àº ÅؽºÆ®¸¦ ÅëÇؼ­ µ¶ÀÚ¿¡°Ô ½±°Ô Àü´ÞÇÒ ¼ö ¾ø´Â °ÍÀÌ »ç½ÇÀÌ´Ù. ÇÁ·Î±×·¡¹Ö ÇнÀ¿¡ À־ ¹«¾ùº¸´Ù Áß¿äÇÑ °ÍÀº ³í¸®ÀûÀ¸·Î »ç°íÇÏ´Â ½À°üÀÌ´Ù. ¾î¶² Äڵ带 ÀÛ¼ºÇϱâ Àü¿¡ ¾Õ¼­¼­ ÀÌ ÇÁ·Î±×·¥ÀÌ ¾î¶»°Ô µ¿ÀÛÇÒÁö ¸Ó¸® ¼Ó¿¡ ±×·Áº¸´Â ½À°üÀÌ ¹«¾ùº¸´Ù Áß¿äÇÑ °ÍÀÌ´Ù. ´çÀåÀº ½Ç·ÂÀÌ ºÎÁ·ÇÏ°í °³¼±Çϴµ¥ ½Ã°£ÀÌ °É·Á ´ä´äÇÒÁö ¸ð¸£³ª ³í¸®ÀûÀ¸·Î »ç°íÇÔÀ¸·Î¼­ °á±¹ ÇÁ·Î±×·¡¹Ö ½Ç·ÂÀ» Çâ»ó½Ãų ¼ö ÀÖÀ¸¸ç °á°ú·Î ¸¸µé¾îÁö´Â ÄÚµåÀÇ ÁúÀ» ³ôÀÏ ¼ö ÀÖ´Ù.

¶ÇÇÑ ÀÌ·¯ÇÑ ·ùÀÇ ¿¹Á¦µéÀº ´ëºÎºÐ ¿©·¯ºÐÀ» ÇÁ·Î±×·¡¹Ö¿¡ ¹ÌÄ¥ ¼ö ÀÖ´Â Èï¹Ì¸¦ Á¦°øÇØ ÁÖÁö´Â ¾Ê´Â´Ù. Èï¹Ì°¡ ¾ø´Â ÇнÀÀ̶ó, µ¶ÀÚ ¿©·¯ºÐÀÇ °í3 ½ÃÀýÀÌ ¾î¶°Çß´ÂÁö¿¡ ´ëÇؼ­ ´õ ÀÌ»ó ¼³¸íÇÒ ÇÊ¿ä°¡ ¾øÀ» °Í °°´Ù. Hello World¶ó´Â ¹®ÀÚ¿­À» ¸ð´ÏÅÍ¿¡ Ãâ·ÂÇÔÀ¸·Î¼­ ¡®¿Í¢¦ ÄÄÇ»ÅÍ´Â ±²ÀåÈ÷ ½Å±âÇÑ ±â°è³×! ³»°¡ ÀÌ·¸°Ô Ãâ·ÂÇ϶ó°í ¸í·ÉÇÏ´Ï±î ±×´ë·Î ÇÏÀݾÆ!'ÇÏ¸ç °¨ÅºÇÏ´ø ¼¼´ë´Â ÀÌ¹Ì Áö³ª°¬´Ù. ±¹³»/ÇØ¿ÜÀÇ ÄÄÇ»ÅÍ »ê¾÷ÀÇ Á߽ɿ¡ ÀÖ´Â ºÐµéÀÌ ¹Ù·Î ±×µéÀÌ´Ù. ¿©·¯ºÐÀº ÀÌ¹Ì ¿ªÄ¡ °ªÀÌ ¿Ã¶ó°¥ ´ë·Î ¿Ã¶ó°¡¼­ 3D È­¸é¿¡ Çö½ÇÀ» ±×´ë·Î ÀçÇöÇÑ °ÔÀÓÂë ÇØ¾ß ¡®³ªµµ ÀÌ·± °ÔÀÓÀ̳ª ÇÁ·Î±×·¡¹Ö ÇÒ ¼ö ÀÖÀ¸¸é ÁÁ°Ú´Ù¡¯°í »ý°¢ÇÒ °ÍÀÌ´Ù.

ÇÁ·Î±×·¡¹Ö ÇнÀ¿¡ Å©°Ô µµ¿òÀÌ µÇÁö ¸øÇÏ°í, Àç¹Ì¾ø°í µûºÐÇÑ ¿¹Á¦µé ´ë½Å ¿©·¯ºÐÀÇ ÇÁ·Î±×·¡¹Ö ½Ç·ÂÀ¸·Î ÀüÅõ¿ë ·Îº¿À» µ¿ÀÛÇϵµ·Ï ÇØ º¸´Â °ÍÀº ¾î¶°ÇÑ°¡? ¼ö¸¹Àº ·Îº¿ÀÌ Ä¡°í ¹Ú°í ½Î¿ì´Â Arena(Åõ±âÀå)¿¡¼­ Ȧ·Î »ì¾Æ³²¾Æ èÇǾðÀÌ µÉ ¼ö ÀÖµµ·Ï ÃÖ°íÀÇ ·Îº¿À» ÇÁ·Î±×·¡¹Ö ÇØ º¸´Â °Íµµ Àç¹ÌÀÖÁö ¾ÊÀ»±î?

1.2. ½Ç½Ã°£ ·Îº¿ ÀüÅõ °ÔÀÓ : Real Time Battle


Àü»ê Àü°øÀÚ¸¦ Á¦¿ÜÇÏ°í ÇÊÀÚó·³ ´Ü¼ø È£±â½É ¶§¹®¿¡ ¸®´ª½º¸¦ ¼³Ä¡ÇÑ »ç¶÷µéÀÌ °¡Àå ¸ÕÀú ÇÏ´Â ÀÏÀº ´ç¿¬È÷ °ÔÀÓÀÏ °ÍÀÌ´Ù. ±×·¯³ª X¿¡¼­ Á¦°øÇÏ´Â ±âº» °ÔÀÓÀº Á¤¸»·Î Àç¹Ì¾ø´Ù! ±×·¸´Ù°í ÆÐÅ°Áö °ÔÀÓÀ» ÇÏÀÚ´Ï ¸®´ª½º¿ë ÆÐÅ°Áö °ÔÀÓÀ» ½±°Ô ±¸ÇÒ ¼ö ÀÖ´Â °Íµµ ¾Æ´Ï°í ÀÌ·± °ÔÀÓÀ» Çϱâ À§ÇØ ÃÖ°í±Þ »ç¾çÀÇ ¸Ó½ÅÀ» »ç¿ëÇÏ´Â °ÍÀº ³¶ºñ¶ó°í ¹Û¿¡ »ý°¢ÇÒ ¼ö ¾ø´Ù.

¿©±â ¡®Real Time Battle¡¯(ÀÌÇÏ RTB)À̶ó´Â °ÔÀÓÀÌ ÀÖ´Ù. <±×¸² 1>ÀÇ ½ºÅ©¸° ¼¦À» º¸¾ÆÇÏ´Ï °ÔÀÓ Äþ¸®Æ¼´Â XÀÇ ±âº» °ÔÀÓµéÀ̳ª ±×´ÙÁö ´Ù¸¦ °Ô ¾ø´Ù. ÀÌÂë ¿Í¼­ ¡®¹¹¾ß?! °íÀÛ ÀÌ·± °ÔÀÓÀ̾ß?!¡¯ÇÏ°í ½Ç¸ÁÇÏ´Â µ¶ÀÚµéÀÇ ¿ø¼ºÀÌ Çϳª µÑ¾¿ µé¸®±â ½ÃÀÛÇÑ´Ù.

screenshot.jpg
[JPG image (104.77 KB)]

<±×¸² 1> RTB ½ºÅ©¸° ¼¦ ¡®ÀÌ Á¤µµ °ÔÀÓÂëÀ̾ߢ¦¡¯¶ó°í ¾èº¸Áö ¸»±æ

¾Õ¼­ ¼³¸íÇÑ ¹Ù¿Í °°ÀÌ RTB´Â ÇÁ·Î±×·¡¹Ö °ÔÀÓÀÌ´Ù. »ç¿ëÀÚ°¡ ·Îº¿ÀÇ µ¿ÀÛÀ» ÇÁ·Î±×·¡¹ÖÇؼ­ »ó´ë¹æ ·Îº¿À» Æı«½ÃÅ°´Â ´Ü¼øÇÑ °Í °°À¸¸é¼­µµ °áÄÚ ´Ü¼øÇÏÁö¸¸Àº ¾ÊÀº(?) °ÔÀÓÀ̶ó°í ÇÒ ¼ö ÀÖ´Ù. ¿©±â¼­ µ¶ÀÚµéÀÌ ¿ÀÇØÇؼ­´Â ¾È µÇ´Â °ÍÀÌ »ç¿ëÀÚ°¡ Á÷Á¢ Å°º¸µå³ª ¸¶¿ì½º¸¦ ÅëÇؼ­ ·Îº¿ÀÇ µ¿ÀÛÀ» ÄÁÆ®·ÑÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ÇÁ·Î±×·¡¹Ö µÈ ´ë·Î ¿òÁ÷Àδٴ »ç½ÇÀÌ´Ù. µû¶ó¼­ ½ÇÁ¦ °ÔÀÓÀÌ ½ÃÀÛµÇ¸é µ¶ÀÚ°¡ ÇÒ ÀÏÀº °ÅÀÇ ¾ø´Â °ÍÀ̳ª ´Ù¸§¾ø´Ù. ³»°¡ ÇÁ·Î±×·¡¹Ö ÇÑ ·Îº¿ÀÌ ÇÁ·Î±×·¡¹ÖÇÑ ´ë·Î Àß ½Î¿ì°í ÀÖ´ÂÁö, ¾Æ´Ï¸é ¸ÛûÇÏ°Ô ¼­ ÀÖ´Ù°¡ ³²ÀÇ Æ÷źÀ̳ª ¾ò¾î¸Â°í ÀÖ´ÂÁö ÁöÄѺ¼ »ÓÀÌ´Ù. ¹°·Ð ·Îº¿ÀÌ ÀǵµÇÑ´ë·Î µ¿ÀÛÇÏÁö ¾Ê´Â´Ù¸é À̸¦ À¯½ÉÈ÷ °üÂûÇß´Ù°¡ ·Îº¿ ÇÁ·Î±×·¥À» ´Ù½Ã ¼öÁ¤ÇؾßÇÒ °ÍÀÌ´Ù.

·Îº¿Àº ijÅÍÇÊ·¯¸¦ ÀÌ¿ëÇؼ­ À̵¿ÇÏ°í °¢°¢ ij³í°ú ·¹ÀÌ´õ¸¦ ÀåºñÇÏ°í ÀÖ´Ù. ´ëÃæ <±×¸² 2>¿Í °°Àº ·Îº¿µéÀÌ ¼­·Î Ä¡°í ¹Ú°í ½Î¿ì´Â °ÍÀ» »ó»óÇÏ¸é µÈ´Ù. ·¹ÀÌ´õ¸¦ »ç¿ëÇØ ÁÖº¯ ȯ°æÀ» °üÂûÇϸç ij³íÀ» ÀÌ¿ëÇØ »ó´ë¹æÀ» °ø°ÝÇÏ´Â ÇüÅ·ΠÀüÅõ°¡ ÁøÇàµÈ´Ù. ·£´ý ÇÏ°Ô ³ªÅ¸³ª´Â Áö·Ú¸¦ ÇÇÇØ¾ß (½ÇÀç °ÔÀÓ¿¡¼­´Â »¡°£ Á¡À¸·Î Ç¥½ÃµÈ´Ù.) ÇÏ°í ·Îº¿ÀÇ ¿¡³ÊÁö¸¦ ¿Ã·ÁÁÖ´Â ÄíÅ°¸¦ (½ÇÀç °ÔÀÓ¿¡¼­´Â Ǫ¸¥ Á¡À¸·Î Ç¥½ÃµÈ´Ù.) ¸Ô¾î¾ß ÇÑ´Ù. »ç¶÷ÀÌ ¸Ô´Â ÄíÅ°¸¦ ¾î¶»°Ô ·Îº¿ÀÌ ¸Ô´ÂÁö¿¡ ´ëÇؼ­´Â ³íÀÇ¿¡¼­ Á¦¿ÜÇÑ´Ù.

rmv-1-02.jpg
[JPG image (29.01 KB)]

ms-06v.jpg
[JPG image (35.42 KB)]

<±×¸² 2> RTB¿¡ µîÀåÇÏ´Â ·Îº¿µé (ÀÌ Á¤µµ »ó»ó·ÂÀº µÇ¾î¾ß ´ç½Åµµ ·Îº¿ °úÇÐÀÚ!)

1.3. RTB ¼³Ä¡

RTBÀÇ È¨ÆäÀÌÁö¸¦ ¹æ¹®Çϸé 2000³â 10¿ù¿¡ ¸±¸®Áî µÈ 1.0.5 ¹öÀüÀÇ RTB tarº¼À» ´Ù¿î¹ÞÀ» ¼ö ÀÖ´Ù. <±×¸² 3> ¹ú½á 2³âÀ̳ª Áö³µ´Âµ¥ 2.0 ¹öÀüÀÌ ¸±¸®Áî µÇÁö ¾Ê´Â °ÍÀ» º¸¸é ¾î´À Á¤µµ °³¹ßÀÌ ÁßÁöµÇ¾úÀ» °ÍÀ̶ó´Â »ý°¢µµ ÇØ º»´Ù. ÇÏÁö¸¸ ±×·± °Ô ¹¹ ´ë¼öÀΰ¡? ÀÌ°É °¡Áö°í Àç¹ÌÀÖ°Ô Áñ±æ ¼ö¸¸ ÀÖÀ¸¸é µÇ´Â °ÍÀÌ´Ï...

homepage.jpg
[JPG image (109.1 KB)]

<±×¸² 3> RTBÀÇ È¨ÆäÀÌÁö (http://realtimebattle.sourceforge.net)

Á¤±âÀûÀ¸·Î RealTimeBattle Championships °°Àº ´ëȸµµ ¿­¸®³ª º¸´Ù. ȨÆäÀÌÁöÀÇ Competition ¸Þ´º¸¦ Ŭ¸¯Çϸé 2000³â 2¿ù¿¡ ¿­¸° First Official RealTimeBattle CompetitionÀ» ½ÃÀÛÀ¸·Î ¸î ¹øÀÇ ´ëȸ°¡ ÀÖ¾ú´ø »ç½ÇÀÌ ±â·ÏµÇ¾î ÀÖ´Ù. ±¹³»¿¡¼­µµ ¾î´À Á¤µµ ¸Å´Ï¾ÆµéÀÌ »ý±ä´Ù¸é ¼­·ÎÀÇ ·Îº¿À» ´ëÀü½ÃÅ°´Â À̺¥Æ® Á¤µµ´Â ±â´ëÇÒ ¼ö ÀÖÀ» °Í °°´Ù.

¿ÞÂÊ ¸Þ´ºÀÇ Download ¸µÅ©¸¦ Ŭ¸¯Çϸé RTB¸¦ ´Ù¿î¹ÞÀ» ¼ö ÀÖ´Â ÆäÀÌÁö·Î À̵¿ÇÑ´Ù. tar.gz ÇüÅÂ¿Í tar.bz2 ÇüÅÂÀÇ ÆÄÀÏ Áß ÆíÇÑ °ÍÀ» ´Ù¿î ¹ÞÀÚ. tarº¼¿¡ SPEC ÆÄÀÏÀÌ Æ÷ÇԵǾî ÀÖÀ¸¹Ç·Î RPM ÆÐÅ°Áö¸¦ ÀÛ¼ºÇÏ´Â °ÍÀº °¡´ÉÇÏÁö¸¸ ȨÆäÀÌÁö¿¡¼­ RPM ÆÐÅ°Áö¸¦ ¹èÆ÷ÇÏ°í ÀÖÁö´Â ¾Ê´Ù. (µ¥ºñ¾È ÆÐÅ°ÁöÀÇ °æ¿ì´Â http://packages.debian.org/unstable/games/realtimebattle.html¿¡¼­ Á¦°øÇÏ°í ÀÖ´Ù.)

ÆÄÀÏÀ» ´Ù¿î¹Þ¾ÒÀ¸¸é ¾ÐÃàÀ» ÇØÁ¦ÇÏ°í ÀϹÝÀûÀÎ ºôµå ¼ø¼­¿¡ µû¶ó ./configure ¡æ make ¡æ make install ¸í·ÉÀ» Â÷·Ê·Î ³»¸®¸é µÈ´Ù. ½ÇÇè °á°ú ÆæƼ¾ö ¼¿·¯·Ð 300M±Þ ¸Ó½Å¿¡¼­ ´ã¹è ÇÑ ´ë ÇÇ¿ì´Â ½Ã°£ÀÌ¸é ºôµå°¡ ³¡³ª´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ¾ú´Ù.
$ tar zxvf RealTimeBattle-1.0.5.tar.gz
$ cd RealTimeBattle-1.0.5
$ ./configure
$ make
# make install

´Ù¸¥ ¹èÆ÷ÆÇ¿¡¼­´Â ºôµå¿Í ÀνºÅç °úÁ¤¿¡¼­ ¾î¶² ¹®Á¦°¡ ¹ß»ýÇÒÁö Àß ¸ð¸£°ÚÁö¸¸ ·¹µåÇÞ ¸®´ª½º 7.2¸¦ »ç¿ëÇÏ´Â ÇÊÀÚÀÇ °æ¿ì´Â make °úÁ¤¿¡¼­ ¹®Á¦°¡ »ý°å´Ù. ¿ª½Ã³ª ¸»µµ ¸¹°í Å»µµ ¸¹Àº gcc 2.96 ¶§¹®¿¡ ÀÌ·± °ÍÀÎÁö Àß ¸ð¸£°Ú´Ù. ¾î·µç Å« ¹®Á¦´Â ¾Æ´Ï¹Ç·Î ÇÊÀÚ°¡ ÇØ°áÇÑ ¹æ¹ýÀ» °ø°³ÇÑ´Ù. ¿¡·¯ ¸Þ½ÃÁö´Â seek_and_destroy.cc ÆÄÀÏ¿¡¼­ strcmp ÇÔ¼ö¸¦ »ç¿ëÇÏ´Â µ¥¼­ ¹ß»ýÇÏ°í ÀÖ´Ù.
$ make
...
In file included from seek_and_destroy.cc:22:
../../src/Messagetypes.h:213:8: warning: extra tokens at end of #endif directive
seek_and_destroy.cc: In function `message_to_robot_type 
name2msg_to_robot_type (char *)':
seek_and_destroy.cc:45: `strcmp' undeclared (first use this function)
seek_and_destroy.cc:45: (Each undeclared identifier is reported only 
once for each function it appears in.)
make[3]: *** [seek_and_destroy.o] ¿À·ù 1
make[3]: ³ª°¨ `/home/GunSmoke/RealTimeBattle-1.0.5/Robots/seek_and_destroy' µð·ºÅ丮
make[2]: *** [all-recursive] ¿À·ù 1
make[2]: ³ª°¨ `/home/GunSmoke/RealTimeBattle-1.0.5/Robots' µð·ºÅ丮
make[1]: *** [all-recursive] ¿À·ù 1
make[1]: ³ª°¨ `/home/GunSmoke/RealTimeBattle-1.0.5' µð·ºÅ丮
make: *** [all-recursive-am] ¿À·ù 2
$ 

RealTimeBattle-1.0.5/Robots µð·ºÅ丮¿¡ ÀÖ´Â °°Àº ±â´ÉÀ» ÇÏ´Â ´Ù¸¥ ÆÄÀÏÀ» ºÐ¼®ÇØ º» °á°ú ¼Ò½º ³»¿¡ strcmp ÇÔ¼ö¸¦ »ç¿ëÇϴµ¥ ÇÊ¿äÇÑ string.h ÆÄÀÏÀ» include ÇÏÁö ¾Ê¾ÒÀ½À» ¹ß°ßÇÒ ¼ö ÀÖ¾ú´Ù. °³¹ßÀڵ鵵 ÀÌ·± ½Ç¼ö¸¦ Çϴ°¡ º¸´Ù.

RealTimeBattle-1.0.5/Robots/seek_and_destroy µð·ºÅ丮ÀÇ seek_and_destroy.cc ÆÄÀÏÀ» ¿­¾î¼­ ´ÙÀ½°ú °°ÀÌ ÇÑ ÁÙÀ» »ðÀÔÇÏÀÚ.
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <iostream.h>
#include <unistd.h>
#include <signal.h>
#include <stdlib.h>
#include <string.h>
...

°°Àº ¹æ¹ýÀ¸·Î ÇØ°áÇؾßÇÒ ÆÄÀÏÀÌ µÎ °³ ´õ Àִµ¥ RealTimeBattle-1.0.5/src µð·ºÅ丮ÀÇ ArenaBase.h ÆÄÀÏ°ú Robot.h ÆÄÀÏ¿¡µµ À§¿Í °°ÀÌ ¡®#include <string.h>¡¯¸¦ Àû´çÇÑ À§Ä¡¿¡ »ðÀÔÇØ¾ß ÇÑ´Ù. ±×·± ´ÙÀ½¿¡ RealTimeBattle-1.0.5 µð·ºÅ丮¿¡¼­ make¸¦ ´Ù½Ã ÇØ ÁÖ°í root ±ÇÇÑÀ¸·Î ÀüȯÇÑ µÚ make install ¸í·ÉÀ» ¿Ï·áÇÑ´Ù. RTB´Â ±âº»ÀûÀ¸·Î /usr/local/games/RealTimeBattle µð·ºÅ丮¿¡ ¼³Ä¡µÈ´Ù.
$ vi ArenaBase.h
$ vi Robot.h

$ make
# make install

ArenaBase.cc ÆÄÀÏ°ú Robot.cc ÆÄÀÏÀÌ ¾Æ´Ñ ArenaBase.h ÆÄÀÏ°ú Robot.h ÆÄÀÏÀ» ¼öÁ¤ÇؾßÇÑ´Ù. ¾ÕÀÇ ÆÄÀÏÀ» ¼öÁ¤ÇØ ¹ö¸®¸é RTB¸¦ ½ÇÇàÇÒ ¶§ ¹«½Ã¹«½ÃÇÑ ¼¼±×¸àÅ×ÀÌ¼Ç ¿À·ù°¡ ±â´Ù¸®°í ÀÖÀ¸¹Ç·Î ÁÖÀÇÇÒ °Í!

1.4. Battle TournamentÀÇ ½ÃÀÛ

¼³Ä¡°¡ ¸ðµÎ ³¡³µ´Ù¸é RTB¸¦ ½ÃÀÛÇØ º¸ÀÚ. Å͹̳ο¡¼­ ¡®RealTimeBattle &'(1.0.7 : realtimebattle)¶ó°í ÀÔ·ÂÇϸé RTB ÄÁÆ®·Ñ À©µµ¿ì°¡ ³ªÅ¸³­´Ù. ÄÁÆ®·Ñ À©µµ¿ìÀÇ °¢ ¹öÆ°¿¡ ´ëÇÑ ¼³¸íÀº <±×¸² 4>¿Í °°´Ù.

controlWW.jpg
[JPG image (9.91 KB)]
<±×¸² 4> RTBÀÇ ¸ÞÀÎ ÀÎÅÍÆäÀ̽ºÀÎ ÄÁÆ®·Ñ À©µµ¿ì

Options ¹öÆ°À» Ŭ¸¯Çϸé Åä³Ê¸ÕÆ®°¡ ÁøÇàµÇ´Â ȯ°æÀ» ¼³Á¤ÇÒ ¼ö ÀÖ´Ù. <±×¸² 5> ÀÌ ¶ÇÇÑ RTBÀÇ ¸Å·Â ÁßÀÇ Çϳª·Î »ý°¢Çϴµ¥, ¿É¼ÇÀ» ÅëÇؼ­ ÀüÅõ¿¡ ´ëÇØ ±²ÀåÈ÷ ´Ù¾çÇÑ ¼³Á¤À» ÇØ ÁÙ ¼ö ÀÖ´Â °ÍÀÌ Àç¹ÌÀÖ´Ù. ·Îº¿ÀÇ Ãʱ⠿¡³ÊÁö³ª °¡¼Óµµ¸¦ ¼³Á¤ÇÏ´Â °ÍºÎÅÍ ½ÃÀÛÇؼ­ ·Îº¿ÀÇ ¿òÁ÷ÀÓ¿¡ ¿µÇâÀ» ¹ÌÄ¡´Â Áß·ÂÀ̳ª °ø±âÀúÇ×, ¸¶Âû±îÁö ¸¶Ä¡ °ÔÀÓÀ» °³¹ßÇϴµ¥ ÇÊ¿äÇÑ ¹°¸®ÇÐ ¹ýÄ¢Àº ¸ù¶¥ ´Ù Àû¿ëÇØ º¼ ¼ö ÀÖ´Â °ÍÀÌ´Ù.

Áö¸é»ó ¸ðµç ¿É¼ÇÀ» ´Ù ¼³¸íÇÒ ¼ö´Â ¾øÀ¸¹Ç·Î <±×¸² 5>ÀÇ °¢ ÅÇ¿¡ ´ëÇØ °£´ÜÇÑ ¼³¸íÀ» ÇÏ´Â °ÍÀ¸·Î ±×Ä£´Ù.

Environment : Áß·Â, °ø±âÀúÇ×, ¸¶Âû·Â µî ÀüÅõ ½Ã ȯ°æ¿¡ ´ëÇÑ ¼³Á¤À» Á¶ÀýÇÑ´Ù. Robot : ·Îº¿¿¡ ´ëÇÑ ±âº»ÀûÀÎ ¼³Á¤À» Á¶ÀýÇÑ´Ù. Shot : »ç°Ý ¹Ý°æ, źȯÀÇ ¼Óµµ µî ij³í¿¡ ´ëÇÑ ¼³Á¤À» Á¶ÀýÇÑ´Ù. Extra : ÄíÅ°¿Í Áö·Ú¿¡ ´ëÇÑ ¼³Á¤À» ÇÑ´Ù. Time : ÇÑ °æ±â ´ç ¼Ò¿ä ½Ã°£ µîÀ» ¼³Á¤ÇÑ´Ù. Windows size : °¢ À©µµ¿ìÀÇ Ã¢ Å©±â¸¦ ¼³Á¤ÇÑ´Ù. Miscellaneous : ±× ¿Ü Àâ´ÙÇÑ ¼³Á¤µéÀ» ÇØ ÁØ´Ù.

optionWW01.jpg
[JPG image (32.22 KB)]

<±×¸² 5> ´«ÀÌ ÈÖµÕ±×·¹Áö´Â RTBÀÇ ¿É¼Ç â. ´õ¿í Àç¹ÌÀÖ´Â ÀüÅõ ȯ°æÀ» ¸¸µé¾î º¸¶ó

RTB¿¡¼­´Â µå·¡°ïº¼¿¡ ³ª¿À´Â õÇÏÁ¦ÀÏ ¹«µµÈ¸¿Í °°ÀÌ ·Îº¿³¢¸® Åä³Ê¸ÕÆ® Çü½ÄÀ¸·Î ÀüÅõ¸¦ ÇÏ°Ô µÈ´Ù. Áغñ°¡ µÇ¾ú´Ù¸é ¡®New Tournament¡¯ ¹öÆ°À» Ŭ¸¯ÇÏ¿© ·Îº¿µéÀÇ ¹èƲ Åä³Ê¸ÕÆ®¸¦ ½ÃÀÛÇÏÀÚ. ±×·¯¸é Åä³Ê¸ÕÆ®ÀÇ Á¶°ÇÀ» ¼³Á¤ÇÏ´Â Åä³Ê¸ÕÆ® À©µµ¿ì°¡ ³ªÅ¸³­´Ù. <±×¸² 6> ÀÌ Ã¢¿¡¼­ Åä³Ê¸ÕÆ®¿¡ Âü¿©½Ãų ·Îº¿°ú ÀüÅõÀÇ ¹è°æÀÌ µÇ´Â Arena¸¦ °áÁ¤ÇÒ ¼ö ÀÖ´Ù. °¡¿îµ¥ ÀÖ´Â ¹öÆ°À» ÀÌ¿ëÇؼ­ ·Îº¿°ú Arena¸¦ Ãß°¡ÇÑ´Ù.

RTB¿¡¼­ ·Îº¿ ÆÄÀÏÀº /usr/local/games/RealTimeBattle/Robot µð·ºÅ丮¿¡ À§Ä¡Çϴµ¥ ÄÄÆÄÀÏµÈ ÆÄÀϷμ­ ¡®*.robot¡¯À̶ó´Â È®ÀåÀÚ¸¦ °®´Â´Ù. rotate_and_fire ·Îº¿°ú seek_and_destroy ·Îº¿ÀÌ ±âº»ÀûÀ¸·Î Á¦°øµÇ´Â ·Îº¿ÀÌ´Ù. ¶ÇÇÑ ·Îº¿ÀÌ ÀüÅõ¸¦ ¹úÀÌ´Â Arena ÆÄÀÏÀº /usr/local/games/RealTimeBattle/Arena µð·ºÅ丮¿¡ ¡®*.arena¡¯¶ó´Â À̸§À¸·Î ÀúÀåµÈ´Ù. Á÷Á¢ È®ÀÎÇØ º¸¶ó.

tournamentWW.jpg
[JPG image (50.92 KB)]

<±×¸² 6> ¼±¼öÀÔÀå! Åä³Ê¸ÕÆ® À©µµ¿ì¿¡¼­´Â ·Îº¿°ú ÀüÅõ¸¦ ¹úÀÏ ArenaÀ» °áÁ¤ÇÑ´Ù.

µ¶ÀÚ ¿©·¯ºÐµéÀº Åä³Ê¸ÕÆ® À©µµ¿ìÀÇ ¾Æ·¡¿¡ ÀÖ´Â Game per sequence µîÀÌ ±Ã±ÝÇÒ °ÍÀÌ´Ù. ¿©±â¼­ sequence¶õ ·Îº¿³¢¸® Çѹø ½Î¿ì´Â ¶ó¿îµå¶ó°í »ý°¢ÇÏ¸é µÈ´Ù. Áï Game per sequence´Â ÇÑ ¶ó¿îµå¿¡ ´ëÇÑ °ÔÀÓ ¼ö¸¦ ÁöÁ¤ÇÏ´Â °ÍÀÌ°í Robot per sequence´Â ÇÑ ¶ó¿îµå¿¡ ½Î¿ì´Â ·Îº¿ÀÇ ¼ö, Number of sequence´Â Åä³Ê¸ÕÆ® ÀüüÀÇ ¶ó¿îµå ¼ö¸¦ °¡¸®Å²´Ù. Åä³Ê¸ÕÆ®¸¦ ½ÃÀÛÇÒ Áغñ°¡ µÇ¾ú´Ù¸é Start ¹öÆ°À» Ŭ¸¯ÇÑ´Ù.

1.5. RTBÀÇ ÀÎÅÍÆäÀ̽º


Åä³Ê¸ÕÆ®°¡ ½ÃÀÛµÇ¸é °¢ ¶ó¿îµåÀÇ °ÔÀÓÀÌ ¼ø¼­´ë·Î ½ÃÀ۵ȴÙ. À̶§ ±âº»ÀûÀ¸·Î ¼¼ °³ÀÇ Ã¢ÀÌ ¶ß´Âµ¥ ÀÌ°ÍÀÌ RTBÀÇ ÀÎÅÍÆäÀ̽ºÀÇ ÀüºÎÀÌ´Ù. °ÔÀÓÀÌ ½ÃÀÛµÇ¸é ·Îº¿ÀÌ ÀüÅõ¸¦ ¹úÀÌ´Â Àå¸éÀ» ÁöÄѺ¸°í ÀÖ´Ù°¡ ¿øÇÏ´Â ´ë·Î ·Îº¿ÀÌ ¿òÁ÷ÀÌÁö ¾ÊÀ¸¸é ¼öÁ¤ÇÒ ³»¿ëÀ» ¸Þ¸ðÇØ µÎ´Â Á¤µµ°¡ µ¶ÀÚ ¿©·¯ºÐÀÌ ÇؾßÇÒ ÀÏ ÀÏ °ÍÀÌ´Ù. (ÇÊÀÚ¿Í °°ÀÌ ¾ÆÄÉÀÌµå °ÔÀÓ¿¡ ´É¼÷ÇÏÁö ¸øÇÑ µ¶ÀÚµµ º¹ÀâÇÑ Å° Á¶ÀÛÀÌ ÇÊ¿ä ¾ø´Ù.)

<±×¸² 7>Àº Arena À©µµ¿ìÀÌ´Ù. ½Ç½Ã°£À¸·Î ¹ú¾îÁö´Â ·Îº¿ÀÇ ÀüÅõ °úÁ¤À» ÁöÄѺ¼ ¼ö ÀÖ´Ù. Zoom ¹öÆ°À» ÀÌ¿ëÇؼ­ ÀüÅõ Àå¸éÀ» È®´ëÇؼ­ º¼ ¼öµµ ÀÖ´Ù. ¾Õ¿¡¼­ Àá±ñ ¾ð±ÞÇÑ ¹Ù¿Í °°ÀÌ ·Îº¿Àº ijÅÍÇÊ·¯¸¦ ÀÌ¿ëÇؼ­ ¿òÁ÷À̸ç ÁÖº¯ÀÇ Á¤º¸¸¦ ÆľÇÇϱâ À§ÇÑ ·¹ÀÌ´õ¿Í ÀûÀÇ ·Îº¿À» Æı«Çϱâ À§ÇÑ Ä³³íÀ» ÀåºñÇÏ°í ÀÖ´Ù. (È®´ëÇؼ­ º¸¸é ´õ Àß º¼ ¼ö ÀÖ´Ù.) ·Îº¿Àº ·¹ÀÌ´õ¸¦ ÀÌ¿ëÇؼ­ ·£´ý ÇÏ°Ô µîÀåÇÏ´Â Áö·Ú¸¦ (ºÓÀº Á¡) ÇÇÇÏ°í ÄíÅ°¸¦ ¸Ô¾î¼­ (Ǫ¸¥ Á¡) ¿¡³ÊÁö¸¦ ȸº¹ÇÑ´Ù. ·Îº¿ÀÇ »óÅ´ ¿¡³ÊÁö·Î Ç¥½ÃµÇ´Âµ¥ ´ç¿¬È÷ ÀûÀÇ Æ÷°ÝÀ» ¹ÞÀ¸¸é ¿¡³ÊÁö°¡ °¨¼ÒÇÏ°í ¶ÇÇÑ »ó´ë¹æ ·Îº¿°ú Ãæµ¹ÇßÀ» ¶§, º®¿¡ ºÎµúÃÆÀ» ¶§, Áö·Ú¸¦ ¹â¾ÒÀ» ¶§¿¡µµ ¿¡³ÊÁö°¡ ÁÙ¾îµç´Ù.

arenaWW.jpg
[JPG image (16.22 KB)]

<±×¸² 7> Arena À©µµ¿ì, ij³í°ú ·¹ÀÌ´õ¸¦ »ç¿ëÇÏ´Â ·Îº¿ÀÇ ´õ¿í ÀÚ¼¼ÇÑ ¸ð½ÀÀ» º¸°í ½Í´Ù¸é Zoom ¹öÆ°À¸·Î È­¸éÀ» È®´ëÇØ º¸¶ó.

<±×¸² 8>Àº ¸Þ½ÃÁö À©µµ¿ìÀÌ´Ù. ÀüÅõ°¡ ½ÃÀ۵ǰųª Á¾·áµÇ¾úÀ» ¶§, Àû¿¡°Ô Æ÷°Ý ´çÇÏ°í ÀÖÀ» ¶§, ÄíÅ°¸¦ ¸Ô°Å³ª Áö·Ú¸¦ ¹â¾ÒÀ» ¶§ µî Arena¿¡¼­ ¹ú¾îÁö´Â ÀüÅõ Àå¸éÀÌ ½Ç½Ã°£À¸·Î ±â·ÏµÈ´Ù.

messageWW.jpg
[JPG image (13.5 KB)]

<±×¸² 8> ¸Þ½ÃÁö À©µµ¿ì

¸¶Áö¸·À¸·Î <±×¸² 9>Àº ½ºÄÚ¾î À©µµ¿ìÀÌ´Ù. ½ºÄÚ¾î À©µµ¿ì¿¡¼­ ·Îº¿ÀÇ ¿¡³ÊÁö¸¦ È®ÀÎÇÒ ¼ö Àִµ¥ ·Îº¿ÀÇ ¿¡³ÊÁö°¡ 0ÀÌ µÇ¸é ·Îº¿Àº Æı«µÈ´Ù. Arena¿¡ ³²¾ÆÀÖ´Â ·Îº¿ÀÌ 1´ëµµ ³²Áö ¾Ê¾ÒÀ» ¶§, ½ºÄÚ¾î À©µµ¿ì¿¡¼­ È®ÀÎÇÒ ¼ö ÀÖ´Â Á¦ÇÑµÈ ½Ã°£ÀÌ °æ°úµÇ¾úÀ» ¶§ ±× °ÔÀÓÀº Á¾·áµÈ´Ù. ½Â¸®ÇÑ ·Îº¿Àº 1Æ÷ÀÎÆ®°¡ °¡»êµÇ¾î ÃÖÁ¾ Åä³Ê¸ÕÆ®¿¡ ±â·ÏÀÌ ¹Ý¿µµÈ´Ù.

scoreWW.jpg
[JPG image (12.27 KB)]

ÀÌ»ó Arena À©µµ¿ì¿Í ¸Þ½ÃÁö À©µµ¿ì, ½ºÄÚ¾î À©µµ¿ì°¡ ½ÇÁ¦ ÀüÅõ°¡ ÁøÇàµÇ´Â µ¿¾È µ¶ÀÚ°¡ ÁöÄѺÁ¾ß ÇÏ´Â ¸ÞÀÎ À©µµ¿ìÀ̸ç ÇÑ ÀüÅõ°¡ Á¾·áµÇ¸é ÄÁÆ®·Ñ À©µµ¿ì¿¡¼­ Statistics ¹öÆ°À» Ŭ¸¯Çؼ­ ÀüÅõ °á°ú¸¦ ´Ù¾çÇÑ °üÁ¡¿¡¼­ Á¤¸®ÇÑ Á¤º¸¸¦ È®ÀÎÇÒ ¼ö ÀÖ´Ù. <±×¸² 10>Àº Á¤º¸¸¦ º¸¿©ÁÖ´Â statistic À©µµ¿ìÀÌ´Ù.

statistWW.jpg
[JPG image (22.04 KB)]

<±×¸² 10> statistic À©µµ¿ì ÇÑ °æ±âÀÇ °á°ú¸¦ ÃÑüÀûÀ¸·Î Á¤¸®Çؼ­ º¸¿©ÁØ´Ù.

1.6. ÃÖ°­ÀÇ ÀüÅõ·Îº¿À» ´ç½ÅÀÌ Á÷Á¢ ÇÁ·Î±×·¡¹Ö Ç϶ó


»ç½Ç RTB¿¡¼­ ±âº»À¸·Î Á¦°øµÇ´Â ·Îº¿ÀÇ ÀüÅõ¸¦ ¹Ù¶óº¸´Â °Í¸¸À¸·Î´Â RTBÀÇ Áñ°Å¿òÀ» Àý¹Ýµµ ÀÌÇØÇϱâ Èûµé´Ù. ¿ª½Ã RTBÀÇ ¹é¹Ì´Â Á÷Á¢ ÀüÅõ ·Îº¿À» ÇÁ·Î±×·¡¹Ö Çغ¸´Â °ÍÀÌ´Ù. RTB¸¦ ¼Ò°³Çϸ鼭 ÀÚ²Ù ·Îº¿ °úÇÐÀÚ¸¦ ¾ð±ÞÇÑ °ÍÀº ÀÌ ¶§¹®ÀÌ´Ù.

·Îº¿ ÇÁ·Î±×·¥Àº RTB¿¡¼­ ÀÚ½Ä ÇÁ·Î¼¼½º·Î ½ÇÇàµÇ¾î Ç¥ÁØ ÀÔÃâ·Â (stdin/stdout)À» ÅëÇØ RTB º»Ã¼¿Í ¸Þ½ÃÁö¸¦ ±³È¯ÇÏ´Â ¹æ½ÄÀ¸·Î µ¿ÀÛÇÑ´Ù. ÀÌ°ÍÀº ¸¶Ä¡ ³×Æ®¿öÅ© ¸ðµ¨¿¡¼­ ¼­¹ö ¸Ó½Å°ú Ŭ¶óÀ̾ðÆ® ¸Ó½Å°£¿¡ Åë½ÅÇÏ´Â ¹æ¹ý°ú ºñ½ÁÇÏ´Ù. RTB ¸ÞÀÎ ÇÁ·Î±×·¥Àº ¼­¹ö ¸Ó½Å¿¡ ÇØ´çÇÏ¸ç ·Îº¿ ÇÁ·Î±×·¥Àº Ŭ¶óÀ̾ðÆ® ¸Ó½Å¿¡ ÇØ´çÇÑ´Ù°í ÇÒ ¼ö ÀÖ´Ù. <±×¸² 11>

howtocom.jpg
[JPG image (16.93 KB)]

<±×¸² 11> RTB ¸ÞÀÎ ÇÁ·Î±×·¥°ú ·Îº¿ ÇÁ·Î±×·¥ÀÌ µ¿ÀÛÇÏ´Â ¿ø¸®

RTB ¸ÞÀÎ ÇÁ·Î±×·¥°ú ·Îº¿ ÇÁ·Î±×·¥°£¿¡ ¸Þ½ÃÁö¸¦ ±³È¯ÇÏ´Â ¹æ½ÄÀ̱⠶§¹®¿¡ Ç¥ÁØ ÀÔÃâ·ÂÀ»(stdin/stdout) ÅëÇؼ­ Àü´ÞµÇ´Â ¸Þ½ÃÁöÀÇ Çü½Ä¸¸ Á¦´ë·Î °®Ãá´Ù¸é ·Îº¿ ÇÁ·Î±×·¥Àº ¾î¶°ÇÑ ÇÁ·Î±×·¡¹Ö ¾ð¾î¸¦ »ç¿ëÇؼ­ ÇÁ·Î±×·¡¹Ö ÇÏ´Â °ÍÀÌ °¡´ÉÇÏ´Ù. C, C++À̳ª Java´Â ¹°·Ð PerlÀ̳ª PHP °°Àº ½ºÅ©¸³Æ® ¾ð¾î¸¦ »ç¿ëÇؼ­ ·Îº¿À» ÇÁ·Î±×·¡¹Ö ÇÒ ¼öµµ ÀÖ´Ù.

¸Þ½ÃÁö Á¾·ù³ª ¸Þ½ÃÁöÀÇ ¼Û¼ö½Å ¹æ¹ý, ±âŸ ·Îº¿À» ÇÁ·Î±×·¡¹Ö Çϴµ¥ ÇÊ¿äÇÑ ¸Å´º¾óÀº RTBÀÇ È¨ÆäÀÌÁö¿¡ »ó¼¼È÷ ¼Ò°³µÇ¾î ÀÖ´Ù. (http://www.lysator.liu.se/realtimebattle/Documentation/RealTimeBattle-4.html) ¾Æ½±Áö¸¸ Áö¸é °ü°è»ó º» ±â»ç¿¡¼­´Â ¸Å´º¾óÀÇ ³»¿ëÀ» ¸ðµÎ ¼Ò°³ÇÏÁö´Â ¾Ê´Â´Ù. ´ë½Å RTBÀÇ ¸ÞÀÎ ÇÁ·Î±×·¥°ú ¿©·¯ºÐÀÌ Á¦ÀÛÇÏ´Â ·Îº¿ »çÀÌ¿¡ ±³È¯µÇ´Â ¸Þ½ÃÁö¸¦ °£´ÜÈ÷ »ìÆ캻 ÈÄ, ½ÇÁ¦ ·Îº¿ÀÇ ¼Ò½º¿¡´Â ¸Þ½ÃÁö°¡ ¾î¶»°Ô È°¿ëµÇ°í ÀÖ´ÂÁö È®ÀÎÇϱâ·Î ÇÑ´Ù. À̸¦ ÅëÇØ ·Îº¿ÀÌ µ¿ÀÛÇÏ´Â ¹æ½ÄÀ» ÀÌÇØÇϵµ·Ï ÇÏÀÚ.

¸Þ½ÃÁöÀÇ ¼Û¼ö½Å ¹æ¹ýÀº Ç¥ÁØ ÀÔÃâ·ÂÀ» ÅëÇؼ­ ÀÌ·ç¾îÁø´Ù. Ç¥ÁØ ÀÔÃâ·ÂÀ̶õ ¹«¾ùÀΰ¡? º¸Åë C¿¡¼­´Â stdin, stdout, stderr °°Àº Ç¥ÁØ ÀÔ·Â, Ç¥ÁØ Ãâ·Â, Ç¥ÁØ ¿¡·¯ ÆÄÀÏÀ» Àбâ, ¾²±â À§ÇØ ¹Ì¸® ¿­¾î¼­ Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ ÆÄÀÏÀ» Ç¥ÁØ ÆÄÀÏÀ̶ó°í ÇÑ´Ù. µ¥ÀÌÅ͸¦ Çϳª ¶Ç´Â ±× ÀÌ»óÀÇ ¹°¸®Àû(½ºÅ©¸°À̳ª ÇÁ¸°ÅÍ, Ç÷ÎÅÍ µîÀÇ ÄÄÇ»ÅÍ¿¡ ¿¬°áµÉ ¼ö ÀÖ´Â ¸ðµç)ÀåÄ¡·Î ÁöÇâµÇ´Â ½ºÆ®¸²(stream)ÀÇ ÇüÅ·Π³ªÅ¸³½ °ÍÀÌ ¹Ù·Î Ç¥ÁØ ÀÔÃâ·Â ÆÄÀÏÀÎ °ÍÀÌ´Ù. ½ºÆ®¸²À» ÀÌ¿ëÇÑ Ç¥ÁØ ÀÔÃâ·Â ÀåÄ¡´Â À̵éÀ» ó¸®ÇÏ´Â stdio.h Çì´õ¿¡ Á¤ÀǵǾî ÀÖ´Ù.

 #define stdin   (&_streams[0])
 #define stdout  (&_streams[1])
 #define stderr  (&_streams[2])

stdinÀº Ç¥ÁØ ÀÔ·Â ÀåÄ¡·Î ÀÔ·ÂÀ» ¹Þ¾ÆµéÀÏ ¶§ ÆÄÀÏÀ» »ç¿ëÇÏÁö ¾Ê°í scanf()³ª getchar() µîÀ» »ç¿ëÇÏ¿© ÀÔ·ÂÀ» ¹Þ¾ÆµéÀδÙ. ÀÌ´Â º¸Åë »ç¿ëÇÏ°í ÀÖ´Â ÄÄÇ»ÅÍÀÇ Å°º¸µå°¡ µÈ´Ù. ¹Ý¸é¿¡ stdoutÀº Ç¥ÁØ Ãâ·Â ÀåÄ¡·Î printf()³ª putchar()¸¦ »ç¿ëÇÏ¿© Ãâ·ÂÇßÀ» ¶§ ±× Ãâ·ÂÀÌ ³ª°¡´Â °÷À» ÀǹÌÇϸç, ÀÌ´Â ÀϹÝÀûÀ¸·Î »ç¿ëÇÏ°í ÀÖ´Â ÄÄÇ»ÅÍÀÇ È­¸éÀÌ µÈ´Ù.

°á±¹ ·Îº¿ÀÇ ¸Þ½ÃÁö¸¦ ó¸®ÇÏ´Â °ÍÀº fgets() ÇÔ¼ö µîÀ» ÀÌ¿ëÇÏ¿© RTBÀÇ ¸ÞÀÎ ÇÁ·Î±×·¥¿¡¼­ Àü´ÞµÇ´Â ¸Þ½ÃÁö¸¦ Ç¥ÁØ ÀÔ·ÂÀ» ÅëÇØ ¹Þ¾ÆµéÀÌ´Â ÀÏ°ú printf() ÇÔ¼ö µîÀ» ÀÌ¿ëÇÏ¿© ·Îº¿ÀÌ RTB ¸ÞÀÎ ÇÁ·Î±×·¥¿¡°Ô Àü´ÞÇÒ ¸Þ½ÃÁö¸¦ Ç¥ÁØ Ãâ·ÂÀ» ÅëÇØ º¸³»´Â ÀÏ, ÀÌ µÎ °¡Áö·Î Áý¾àµÈ´Ù. Ç¥ÁØ ÀÔÃâ·ÂÀ» ÅëÇØ ¸Þ½ÃÁö¸¦ ó¸®ÇÑ´Ù´Â ¸»Àº ¹Ù·Î ÀÌ °ÍÀ» ÀǹÌÇÑ´Ù.

RTB ȨÆäÀÌÁö¿¡ ¼Ò°³µÈ ¿µ¹® ¸Å´º¾óµµ ±×·¸°Ô ¾î·Á¿î ¿µ¾î·Î ¾²¿©ÀÖ´Â °ÍÀÌ ¾Æ´Ï±â ¶§¹®¿¡ ·Îº¿À» ÇÁ·Î±×·¡¹Ö Çϱâ Àü¿¡ ¹Ýµå½Ã Àо °ÍÀ» ±ÇÇÑ´Ù.

¸ÕÀú RTB ¸ÞÀÎ ÇÁ·Î±×·¥À¸·ÎºÎÅÍ ·Îº¿ ÇÁ·Î±×·¥¿¡°Ô Àü´ÞµÇ´Â ¸Þ½ÃÁö´Â ´ÙÀ½°ú °°´Ù. <Ç¥ 1> °¢ ¸Þ½ÃÁöÀÇ ¿É¼Ç¿¡ ´ëÇÑ ¼³¸íÀº »ý·«ÇÏ´Ï ¸Å´º¾óÀ» Âü°íÇ϶ó. ·Îº¿À» ÇÁ·Î±×·¡¹Ö ÇÏ´Â ¿©·¯ºÐÀÇ ÀÔÀå¿¡¼­´Â RTB·ÎºÎÅÍ ·Îº¿¿¡°Ô Àü´ÞµÇ´Â ¹®ÀÚ¿­À» ºñ±³Çؼ­ ±×¿¡ ¾Ë¸ÂÀº 󸮸¦ ÇØ ÁÖ¸é µÈ´Ù.

table01.jpg
[JPG image (67.09 KB)]

<Ç¥ 1> RTB ¸ÞÀÎ ÇÁ·Î±×·¥À¸·ÎºÎÅÍ ·Îº¿¿¡°Ô Àü´ÞµÇ´Â ¸Þ½ÃÁö

´ÙÀ½Àº ·Îº¿À¸·ÎºÎÅÍ RTB¿¡ Àü´ÞµÇ´Â ¸Þ½ÃÁöÀÌ´Ù. <Ç¥ 2> RTB°¡ Àü´ÞÇÏ´Â ¸Þ½ÃÁö¿¡ ´ëÇؼ­ À̺¥Æ®¸¦ ¼³Á¤ÇÏ°í °¢ À̺¥Æ®¿¡ ´ëÀÀÇÏ´Â µ¿ÀÛÀ» ¼öÇàÇ϶ó´Â ½ÄÀ¸·Î ÇÁ·Î±×·¡¹Ö ÇÑ´Ù. ÇÁ·Î±×·¡¹Ö µÈ µ¿ÀÛÀ» RTB¿¡ <Ç¥ 2>¿Í °°Àº ¸Þ½ÃÁö¸¦ ÅëÇؼ­ Àü´ÞÇÏ¸é µÈ´Ù.

table02.jpg
[JPG image (42.69 KB)]

<Ç¥ 2> ·Îº¿À¸·ÎºÎÅÍ RTB ¸ÞÀÎ ÇÁ·Î±×·¥¿¡ Àü´ÞµÇ´Â ¸Þ½ÃÁö

¸Þ½ÃÁöÀÇ Àüü¸¦ ¼Ò°³ÇÑ °ÍÀº ¾Æ´ÏÁö¸¸ ÀÌ Á¤µµÀÇ ¸Þ½ÃÁö¸¦ °¡Áö°í ÃæºÐÈ÷ ·Îº¿ÀÇ µ¿ÀÛÀ» ÇÁ·Î±×·¡¹Ö ÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

1.7. Trinity ·Îº¿°ú ÇÔ²² ÇÏ´Â ·Îº¿ ÇغÎÇÐ ½Ç½À!!

RTB¿¡¼­´Â ·Îº¿À» ÇÁ·Î±×·¡¹Ö Çϱâ À§Çؼ­ ¹Ì¸® Empty¶ó´Â ·Îº¿ÀÌ ÁغñµÇ¾î ÀÖ´Ù. ÀÌ ³à¼®Àº ¸» ±×´ë·Î ¾Æ¹«°Íµµ ÇÁ·Î±×·¡¹Ö µÇ¾î ÀÖÁö ¾ÊÀº ±øÅë ·Îº¿, ¹éÁö¿Íµµ °°¾Æ¼­ óÀ½ RTBÀÇ ·Îº¿À» ÇÁ·Î±×·¡¹Ö ÇÏ´Â ¿ì¸®¿¡°Ô´Â ºÎ´ãÀÌ µÉ ¼ö¹Û¿¡ ¾ø´Ù. ¹«¿¡¼­ À¯¸¦ ¹Ù·Î âÁ¶Çϱ⺸´Ù´Â ÀÌ¹Ì ¸¸µé¾îÁ® ÀÖ´Â °ÍÀ» ¸ð¹æÇÔÀ¸·Î¼­ ±âº»À» Å°¿ì´Â °ÍÀÌ ÇÊ¿äÇÏ´Ù°í º»´Ù. ±×·¡¼­ ¸ð¹æÀº âÁ¶ÀÇ ¾î¸Ó´Ï¶ó Çß´ø°¡. ÇغÎÇÐ ½Ç½ÀÀ» ÇÏ´Â ¸¶À½À¸·Î ³²ÀÌ Àß ¸¸µé¾î ³õÀº ·Îº¿ ÇÁ·Î±×·¥À» ºÐ¼®ÇØ º¸ÀÚ.

RTB °ÔÀÓ ³»¿¡ ±âº»ÀûÀ¸·Î Æ÷ÇԵǾî ÀÖ´Â ·Îº¿Àº ¸ðµÎ C++À» ÀÌ¿ëÇؼ­ Á¦À۵Ǿú±â ¶§¹®¿¡ ´Ù¼öÀÇ µ¶ÀÚ¸¦ °í·ÁÇÏ¿© C¸¦ ÀÌ¿ëÇؼ­ Á¦ÀÛµÈ ·Îº¿À» ã¾ÆºÃ´Ù. RTB ȨÆäÀÌÁö¿¡ ¸µÅ©µÇ¾î ÀÖ´Â Dr. FrostÀÇ ·Îº¿ µ¥ÀÌÅͺ£À̽º¿¡´Â <±×¸² 12> C++, C, JAVA, Perl, PHP µîÀ¸·Î ÄÚµùµÈ ´Ù¾çÇÑ ·Îº¿ ÇÁ·Î±×·¥À» È®ÀÎÇÒ ¼ö ÀÖ´Ù. ÀÌ Áß¿¡¼­ Trinity¶ó´Â ·Îº¿°ú Olivaw¶ó´Â ·Îº¿ÀÌ C·Î Á¦À۵Ǿî Àִµ¥ ÇÊÀÚ´Â ¡®¾î´À ·Îº¿ÀÌ ´õ °­ÇÑ°¡?¡¯ÀÇ ±âÁØÀÌ ¾Æ´Ï¶ó ¡®¾î´À ·Îº¿ÀÌ ´õ º¸±â ½±°Ô ÄÚµùµÇ¾î Àִ°¡?¡¯ÀÇ ±âÁØÀ¸·Î ÁÖ¼®ÀÌ ¸¹ÀÌ ´Þ·Á ÀÖ°í °¡µ¶¼ºÀÌ ÁÁ°Ô ÄÚµùµÈ Trinity ·Îº¿À» ¼±Á¤ÇÏ¿© µ¶ÀÚ ¿©·¯ºÐ²² ¼Ò°³ÇÑ´Ù.

mrfrostdatabase.jpg
[JPG image (93.68 KB)]

Trinity ·Îº¿Àº ¾ÆÁ÷ ºÎÁ·ÇÑ »çÇ×ÀÌ ¸¹´Ù. ¸ñÇ¥¸¦ ÁöÁ¤ÇÏ°í ±× °÷À¸·Î À̵¿ÇÏ´Â ¾Ë°í¸®Áòµµ Çü¼ºµÇ¾îÀÖÁö ¾Ê°í °³¹ßÀÚ°¡ RTB¿¡¼­ ·Îº¿¿¡°Ô Àü´ÞµÇ´Â ¸ðµç ¸Þ½ÃÁö¸¦ ºÐ¼®Çؼ­ ·Îº¿¿¡ Àû¿ëÇÏ°í ÀÖ´Â °Íµµ ¾Æ´Ï´Ù. (±×·¡¼­ ±×·±Áö ½ÇÁ¦ ÀüÅõ¿¡¼­ Trinity°¡ À̱â´Â ²ÃÀ» Çѹøµµ ¸ø ºÃ´Ù.) ±×·¯³ª TrinityÀÇ ÄÚµå´Â °³¹ßÀÚ°¡ ÄÚµå ÇϳªÇϳª¿¡ ÁÖ¼®À» Áý¾î³Ö¾î ÀÚ¼¼ÇÑ ¼³¸íÀ» ÇØÁÖ°í ÀÖÀ¸¸ç µÚÁ×¹ÚÁ× ¸¶±¸ÀâÀÌ·Î ÄÚµùµÇ¾î ÀÖÁö ¾Ê±â ¶§¹®¿¡ °¡µ¶¼ºÀÌ ÁÁ´Ù. ÀÚ¼¼ÇÑ ¼³¸í°ú °¡µ¶¼ºÀÌ ³ôÀº ÄÚµå·Î °³¼±ÀÇ ¿©Áö°¡ ¸¹´Ù´Â °Í, ÀÌ°ÍÀ̾߸»·Î °¡Àå ÁÁÀº ÇÁ·Î±×·¡¹Ö ½À°üÀÏ °ÍÀÌ´Ï ÇÁ·Î±×·¡¹ÖÀ» °øºÎÇÏ´Â µ¶ÀÚ ¿©·¯ºÐµéµµ ÇÊÈ÷ À̸¦ º»¹Þµµ·Ï!

Dr.FrostÀÇ ·Îº¿ µ¥ÀÌÅͺ£À̽º¿¡¼­ Trinity.tar.gz ÆÄÀÏÀ» ´Ù¿î¹Þ¾Ò´Ù¸é Àû´çÇÑ À§Ä¡¿¡ ¾ÐÃàÀ» ÇØÁ¦ÇÑ´Ù. ¡®Trinity.c¡¯ ÆÄÀÏÀº Trinity ·Îº¿ÀÇ ¼Ò½º ÆÄÀÏÀÌ°í ¡®Trinity.robot¡¯Àº ÄÄÆÄÀÏµÈ ·Îº¿ ÆÄÀÏÀÌ´Ù. vi³ª emacs µî ÀûÀýÇÑ ¿¡µðÅ͸¦ ÀÌ¿ëÇؼ­ Trinity.c ÆÄÀÏÀ» ºÐ¼®Ç϶ó.

TrinityÀÇ ¼Ò½º´Â ´ÙÀ½°ú °°ÀÌ 4°³ÀÇ ÇÔ¼ö·Î ÀÌ·ç¾îÁ® ÀÖ´Ù. ÀÌÁß get_angle() ÇÔ¼ö´Â °¢µµ¸¦ ±¸Çϱâ À§Çؼ­ µû·Î ¸¸µé¾î ³õÀº ÇÔ¼ö¿¡ ºÒ°úÇϸç Trinity ·Îº¿ÀÇ µ¿ÀÛÀ» Á¦¾îÇϴµ¥ »ç¿ëµÇ´Â °¡Àå Áß¿äÇÑ ÇÔ¼ö´Â get_message()¿Í sighandler()ÀÌ´Ù.

get_angle(){
...
}
get_message(){
...
}
sighandler(){
...
}
main(){
...
}


¿ì¼± sighandler() ÇÔ¼ö¸¦ »ìÆ캸ÀÚ. ÀÌ ÇÔ¼ö´Â ¸Þ½ÃÁö¸¦ ó¸®ÇÏ´Â ÇÔ¼ö·Î¼­ Trinity ·Îº¿ÀÇ ÇÙ½ÉÀÌ µÇ´Â ºÎºÐÀÌ´Ù. RTB ¸ÞÀÎ ÇÁ·Î±×·¥¿¡¼­ Trinity ·Îº¿¿¡°Ô Àü´ÞµÇ´Â ¸Þ½ÃÁö¸¦ Ç¥ÁØ ÀÔ·ÂÀ»(stdin) ÅëÇØ Àü´Þ¹ÞÀ¸¸é ÀÌ ¸Þ½ÃÁö¸¦ get_message() ÇÔ¼ö¸¦ È£ÃâÇÏ¿© ºÐ¼®ÇÑ´Ù. get_message() ÇÔ¼ö´Â ÀÌ ¸Þ½ÃÁö¸¦ ºÐ¼®Çؼ­ °á°ú °ªÀ» ¸®ÅÏ Çϴµ¥ ÀÌ °ªÀ» °¡Áö°í ±× »óȲ¿¡ ÀûÀýÇÑ ÇൿÀ» ¼öÇàÇÑ´Ù. ÀûÀýÇÑ ÇൿÀ̶õ ´Ù¸§ ¾Æ´Ñ Trinity ·Îº¿ÀÌ RTB¿¡°Ô Ç¥ÁØ Ãâ·ÂÀ»(stdout) ÅëÇØ ÀûÀýÇÑ ¸Þ½ÃÁö¸¦ º¸³»´Â °ÍÀ» ÀǹÌÇÑ´Ù. Trinity ¼Ò½ºÀÇ ¡®printf("Shoot %f\n",SHOT_MAX_ENERGY/3);¡¯¶ó´Â Ãâ·Â ±¸¹®Àº °ð Trinity ·Îº¿ÀÌ »ç°ÝÇÏ´Â µ¿ÀÛÀ» RTB ¸ÞÀÎ ÇÁ·Î±×·¥¿¡°Ô ¾Ë¸®´Â ¹®ÀåÀÌ µÈ´Ù.

void sighandler(int sig)
{
...
  while(feof(stdin)==0)
  {
...
    fgets(str,80,stdin);
    /* stdinÀ» ÅëÇؼ­ RTB ¸ÞÀÎ ÇÁ·Î±×·¥À¸·ÎºÎÅÍ Àü´ÞµÇ´Â ¸Þ½ÃÁö¸¦ strÀ̶ó´Â ¹è¿­¿¡ ÀúÀåÇÑ´Ù.
    str ¹è¿­¿¡ ÀúÀåµÈ ¸Þ½ÃÁö´Â  get_message() ÇÔ¼ö¸¦ ÅëÇØ ºÐ¼®µÈ´Ù.*/
...
    message=get_message(str);
    /*get_message() ÇÔ¼öÀÇ Ã³¸® °á°ú °ªÀ» °¡Áö°í switch ¹®À» ÅëÇØ °¢ »óȲ¿¡ ¾Ë¸ÂÀº µ¿ÀÛÀ» Çϵµ·Ï ÇÑ´Ù.*/
...
    switch (message)
    {
      case 10:  /* Robot Info : 2 other robots energy, 0-enemy <> 1-friend */
        if(arg2==0)
        {
'''
          printf("Shoot %f\n",SHOT_MAX_ENERGY/3);
...
          fflush(stdout);
           /*printf()¸¦ ÀÌ¿ëÇؼ­ RTB ¸ÞÀÎ ÇÁ·Î±×·¥¿¡°Ô ¸Þ½ÃÁö¸¦ Àü´ÞÇÑ ÈÄ, fflush(stdout) ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ­
           Ç¥ÁØ Ãâ·Â ¹öÆÛ¿¡ ³²¾ÆÀÖ´Â ¸Þ½ÃÁö¸¦ ±ú²ýÀÌ Á¦°ÅÇØ ÁÖ´Â °ÍÀº
           ·Îº¿ÀÌ ¸Þ½ÃÁö¸¦ Àü´ÞÇϱâ À§ÇØ °¡Àå Áß¿äÇÑ Ã¼Å© Æ÷ÀÎÆ®!*/

        }
        break;
...

get_message() ÇÔ¼ö´Â RTB ¸ÞÀÎ ÇÁ·Î±×·¥À¸·ÎºÎÅÍ Trinity ·Îº¿¿¡°Ô Àü´ÞµÇ´Â ¸Þ½ÃÁö¸¦ ºÐ¼®ÇÏ¿© °á°ú °ªÀ» sighandler() ÇÔ¼ö¿¡ ¸®ÅÏ ÇÑ´Ù. RTB·ÎºÎÅÍ RobotInfo ¶ó´Â ¸Þ½ÃÁö°¡ Æ÷ÇÔµÈ ¹®ÀÚ¿­ÀÌ Àü´ÞµÇ¸é Ç¥ÁØ ÇÔ¼ö strtok()À» ÀÌ¿ëÇؼ­ ±× ¹®ÀÚ¿­À» ¡®RobotInfo¡¯¿Í arg1°ú arg2 Çü½ÄÀ¸·Î ºÐ¸®ÇÑ´Ù. À̶§ ºÐ¸®µÈ arg1°ú arg2ÀÇ °ªÀº °ð RobotInfo ¸Þ½ÃÁöÀÇ ¿É¼Ç °ªÀÌ µÇ´Â °ÍÀÌ´Ù.
int get_message(char *msg)
/*strstr()¸¦ ÀÌ¿ëÇؼ­ ¹®ÀÚ¿­ ³»¿¡ ¡®RobotInfo¡¯¶ó´Â ¸Þ½ÃÁö°¡ Æ÷ÇԵǾî ÀÖ´Â Áö È®ÀÎÇÑ´Ù.*/
{
  if(strstr(msg,"RobotInfo"))
  {
    strtok(msg," ");
    /*strtok()¸¦ ÀÌ¿ëÇؼ­ ¹®ÀÚ¿­À» ¸Þ½ÃÁö¿Í ¿É¼ÇÀ¸·Î ºÐ¸®ÇÑ´Ù.
    ºÐ¸®ÇÑ ¿É¼ÇÀÇ ³»¿ëÀº arg1°ú arg2·Î ÀúÀåµÈ´Ù.*/
    arg1=strtod(strtok(NULL," "),NULL);
    arg2=strtod(strtok(NULL," "),NULL);
    return 10;
  }

ÀÌ·¸°Ô Çؼ­ ´Ù½Ã sighandler() ÇÔ¼ö·Î ¸®ÅÏµÈ °ªÀº switch¹®¿¡ ÀÇÇؼ­ ƯÁ¤ »óȲ¿¡ ´ëÇØ µ¿ÀÛÇÏ°Ô µÇ´Â °ÍÀÌ´Ù. sighandler() ÇÔ¼öÀÇ case 5, Áï Radar ¸Þ½ÃÁö¿¡ ´ëÇؼ­ µ¿ÀÛÇÏ´Â Äڵ带 º¸¶ó. Trinity ·Îº¿Àº Radar ¸Þ½ÃÁö¸¦ ÅëÇؼ­ ·¹ÀÌ´õÀÇ µ¿ÀÛÀ» Á¤ÀÇÇÑ´Ù. ·¹ÀÌ´õÀÇ µ¿ÀÛ¿¡ ´ëÇؼ­ ÃëÇÏ´Â µ¿ÀÛÀ» Á¤ÀÇÇϱâ À§ÇØ ´Ù½Ã Á¶°Ç¹® if¸¦ »ç¿ëÇÑ °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ´Ù.
void sighandler(int sig)
...
      case 5:   /* Radar : 3 distance, object, radar angle */
                /* -> Object: 0 robot, 1 shot, 2 wall, 3 cookie, 4 mine */
                  /*Radar ¸Þ½ÃÁöÀÇ arg1Àº ·Îº¿°ú ·¹ÀÌ´õ·Î È®ÀÎµÈ ¹°Ã¼¿ÍÀÇ °Å¸®,
                  arg2´Â ·¹ÀÌ´õ·Î È®ÀÎµÈ ¹°Ã¼, arg3´Â ·¹ÀÌ´õÀÇ °¢µµ¸¦ ÀǹÌÇÑ´Ù.*/
...
/* mine ahead -> activate emp and destroy it */
        if((arg2==4)&&(arg1<5.0)&&(arg3<0.3)&&(arg3>-0.3))
        {
          printf("Shoot %f\n",SHOT_MIN_ENERGY);
          printf("Print Activate EMP\n");
          fflush(stdout);
          break;
        }
...


ÁÖ¼®¿¡ ³ª¿ÍÀÖ´Â ´ë·Î ÀÌ if ¹®Àº Áö·Ú°¡ Á¢±ÙÇÏ°í ÀÖÀ» ¶§ Trinity ·Îº¿ÀÌ Áö·Ú¸¦ ij³íÀ» ÀÌ¿ëÇؼ­ Æı«ÇÏ´Â µ¿ÀÛÀ» Á¤ÀÇÇÑ´Ù. if ¹®ÀÇ Á¶°Ç ÀýÀº ´ÙÀ½°ú °°Àº ¹®ÀåÀ¸·Î ¾²¿´´Ù.
        if((arg2==4)&&(arg1<5.0)&&(arg3<0.3)&&(arg3>-0.3))


Áï, ·¹ÀÌ´õ·Î ÆľÇÇÑ ¹°Ã¼°¡ Áö·ÚÀÎ °æ¿ì(arg2 == 4), Áö·Ú¿Í Trinity ·Îº¿°£ÀÇ °Å¸®°¡ 5.0 ¹Ì¸¸ÀÏ ¶§(arg < 5.0), ·¹ÀÌ´õÀÇ °¢µµ°¡ -0.3 radian¿¡¼­ 0.3 radian »çÀÌÀÏ ¶§ ((arg3 < 0.3) && (arg3 > -0.3)) Trinity ·Îº¿Àº Áö·Ú¸¦ »ç°ÝÇÒ ¼ö ÀÖ´Â »óÅ°¡ µÈ´Ù. Áö·Ú¸¦ »ç°ÝÇÒ ¼ö ÀÖ´Â ÀûÁ¤ °Å¸®, ÀûÁ¤ °¢µµ¿¡ ÇØ´çÇÑ´Ù¸é Trinity ·Îº¿Àº °ð¹Ù·Î ij³íÀ» ÀÌ¿ëÇؼ­ Áö·Ú¸¦ »ç°ÝÇØ ¹ö¸°´Ù. ³î¶øÁö ¾ÊÀº°¡?

RTB¿¡¼­ °¢µµ´Â ¿ì¸®°¡ ÀϹÝÀûÀ¸·Î ¾Ë°í ÀÖ´Â Degree °¢ÀÌ ¾Æ´Ñ Radian °¢À» »ç¿ëÇÑ´Ù. Radian = Degree * Pi / 360 (¿©±â¼­ Pi = 3.141592654)

Áï, RTBÀÇ ·Îº¿Àº ¸Þ½ÃÁö¸¦ ÅëÇؼ­ ·Îº¿¿¡°Ô ¹ß»ýÇÑ À̺¥Æ®¸¦ ÆľÇÇÏ°í °¢ À̺¥Æ®¿¡ ´ëÇØ ÀûÀýÇÑ ¹ÝÀÀÀ» ÇÁ·Î±×·¡¹Ö ÇÔÀ¸·Î¼­ µ¿ÀÛÀ» ÃëÇÏ°Ô µÈ´Ù. ±×·¯¹Ç·Î ´õ¿í ´Ù¾çÇÑ »óȲ¿¡¼­ ´Ù¾çÇÑ ¹ÝÀÀÀ» ÀÔ·ÂÇϸé ÈξÀ ¶È¶ÈÇÑ ·Îº¿, ´õ¿í °­ÇÑ ·Îº¿À» ¸¸µé¾î³¾ ¼ö ÀÖ´Ù.

¾î¶²°¡? Ȥ, ÀÚ½ÅÀÇ ÇÁ·Î±×·¡¹Ö ½Ç·Â¿¡ ºñÇØ ·Îº¿ ÆÄÀÏÀÇ ¼Ò½º ±æÀÌ°¡ ³Ê¹« ºÎ´ãÀÌ µÇ´Â°¡? ¾Õ¿¡¼­ ¾ð±ÞÇßµíÀÌ ÇÊÀÚ´Â ÀÌ°Í ¶ÇÇÑ ´Ü¹®µ¶ÇØÀÇ ÆóÇضó°í »ý°¢ÇÑ´Ù. ¸Å¹ø 10¢¦20, 30 ¶óÀÎ µÇ´Â ¼Ò½º¸¸ ÄÚµùÇÏ´Â ´Ü¹®µ¶ÇØÀÇ ÇÑ°è´Â ¿©±â±îÁö´Ù. ¾î´À Á¤µµ ÀÔ¹®¼­¸¦ ¸¶½ºÅÍÇß´Ù¸é ÃÖ¼Ò ÀÌ Á¤µµÀÇ ¼Ò½º´Â ¹«¸® ¾øÀÌ ºÐ¼®ÇÒ ¼ö ÀÖ¾î¾ß ÇÏÁö ¾ÊÀ»±î?

µ¡ºÙ¿© ¸®´ª½º¿¡¼­ ÄÚµùÇÑ ¼Ò½º¸¦ ÄÄÆÄÀÏ ÇÏ´Â ¹æ¹ý¿¡ ´ëÇؼ­ °£´ÜÈ÷ ¼³¸íÇÑ´Ù. -o ¿É¼ÇÀ» »ç¿ëÇؼ­ *.robotÀ̶ó´Â ÆÄÀϸíÀ¸·Î ÄÄÆÄÀÏÇÏ¸é ´ÙÀ½ °æ±â ¶§ ¿©·¯ºÐÀÇ ·Îº¿À» Arena¿¡ ¿Ã¸± ¼ö ÀÖ´Ù. ·Îº¿ ÆÄÀÏÀÌ ÀÖ¾î¾ß ÇÒ µð·ºÅ丮ÀÇ À§Ä¡´Â /usr/local/games/RealTimeBattle/Robot ÀÌ´Ù. ¿¹¸¦ µé¾î GunSmoke.c¶ó´Â ¼Ò½º¸¦ ¸¸µé¾úÀ¸¸é ´ÙÀ½°ú °°ÀÌ ÄÄÆÄÀÏÇÏ¸é µÈ´Ù.

$ gcc GunSmoke.c -o GunSmoke.robot
$ cp GunSmoke.robot /usr/local/games/RealTimeBattle/Robot

1.8. °í³úÇÏ´Â ·Îº¿ °úÇÐÀÚµéÀ» À§ÇÏ¿©

·Îº¿À» Arena¿¡ ¿Ã·Á ÀüÅõ¸¦ ½ÃÀÛÇØ º¸ÀÚ. ¾î¶²°¡? ´ç½ÅÀÌ ÀǵµÇÑ ¹Ù´ë·Î ·Îº¿ÀÌ ¿òÁ÷ÀÌ´Â °ÍÀ» È®ÀÎÇÒ ¼ö Àִ°¡? ±×·¸Áö ¾Ê´Ù¸é ¶Ç´Ù½Ã ÇÁ·Î±×·¥À» ¼öÁ¤ÇÏÀÚ. ¾Æ, ±×Àü¿¡ ¹Ýµå½Ã ¡®À̹ø¿¡´Â ÀÌ·¸°Ô ÄÚµùÇØ ºÁ¾ßÁö¡¯ÇÏ°í »ý°¢À» Çϱ⠹ٶõ´Ù.

Ã¥À» ÅëÇؼ­ ÇÁ·Î±×·¡¹ÖÀ» ÀÍÈ÷´Â À̵éÀÌ ÈçÈ÷ ÀúÁö¸£´Â ½Ç¼ö´Â ¾Æ¹« »ý°¢ ¾øÀÌ ¿¹Á¦¸¦ ÄÚµùÇϱ⸸ ÇÏ´Â °ÍÀÌ´Ù. ÁÖ¾îÁø ¿¹Á¦¸¦ Ãæ½ÇÇÏ°Ô Ä¡±â¸¸ Çؼ­´Â ¾Æ¹« µµ¿òµµ µÇÁö ¾Ê´Â´Ù. ÀÌ ¿¹Á¦¿¡¼­ Ưº°È÷ ÁÖÀÇÇؼ­ ºÁ¾ßÇÒ °ÍÀº ¹«¾ùÀÎÁö, ÇÊÀÚ´Â ¹«½¼ Àǵµ·Î ÀÌ ¿¹Á¦¸¦ Ã¥¿¡ »ðÀÔÇß´ÂÁö, ³ª¾Æ°¡ ÀÌ ¿¹Á¦¸¦ ³» ½º½º·Î °³¼±Çغ¸´Â ³ë·ÂÀÌ ¹Ýµå½Ã ÇÊ¿äÇÏ´Ù. ÀÌ·¯ÇÑ ºñÆÇÀûÀÎ »ç°íÀÇ °úÁ¤À» ÅëÇؼ­¾ß ºñ·Î¼Ò ´ç½ÅÀÇ ÇÁ·Î±×·¡¹Ö ½Ç·ÂÀº Çâ»óµÉ ¼ö ÀÖ´Ù.

ÇÊÀÚµµ Trinity ·Îº¿À» ¼öÁ¤Çؼ­ ·Îº¿À» ¸¸µé¾î º¸¾Ò´Ù. ±× ÁßÀÇ Çϳª´Â »ç°ÝÇÒ ¶§¿¡ ½ºÅ¸ Å©·¡ÇÁÆ®ÀÇ ½ÃÁî ÅÊũó·³ ¹Ýµå½Ã Á¤ÁöÇÏ°í¼­ ¹ß»çÇÏ´Â ³à¼®ÀÌ ÀÖÁö ¾ÊÀº°¡ ÇÏ¸é ¾Æ¿¹ »ç°ÝÀ» ÇÏÁö ¾Ê´Â ³à¼®, ¹«½¼ »ý°¢À» ÇÏ´Â °ÍÀÎÁö º® ±Ù󿡸¸ °¡¸é °è¼Ó ȸÀüÇϸ鼭 ³ª¿Ã »ý°¢À» ÇÏÁö ¾Ê´Â ³à¼®µµ ÀÖ´Ù. ÀÌ·¯ÇÑ ½Ç¼ö´Â RTBÀÇ »ç°Ý ¸ÞÄ¿´ÏÁòÀ» Á¦´ë·Î ÀÌÇØÇÏÁö ¸øÇÑ µ¥¼­ ºñ·ÔµÈ °ÍÀ̶ó°í »ý°¢ÇÑ´Ù. ÇÊÀÚ ¿ª½Ã »ç°Ý ¸ÞÄ¿´ÏÁò¿¡ À־´Â ¾Æ¹« »ý°¢ ¾øÀÌ ÄÚµùÇÑ µíÇÏ´Ù. (´Ü¼øÈ÷ Shoot ¸Þ½ÃÁö¸¦ ÅëÇؼ­ ½î¸é µÇ´Â °ÍÀ̶ó°í »ý°¢Ç߱⠶§¹®ÀÌ´Ù.)

·Îº¿ÀÌ Á¦´ë·Î µ¿ÀÛÇÑ´Ù°í °Å±â¼­ ÇÁ·Î±×·¡¹ÖÀ» ³¡³»´Â °ÍÀº ºÎÁ·ÇÑ »ó»ó·ÂÀ» °¡Áö°í Ǫ³äÇÏ´Â °ÍÀÏ »ÓÀÌ´Ù. »ó´ë¹æ ·Îº¿À» ·¹ÀÌ´õ·Î ¹ß°ßÇÏ¸é »ç°ÝÇÒ »ý°¢Àº ÇÏÁö ¾Ê°í ¹«Á¶°Ç µµ¸Á°¡´Â ·Îº¿À» ¸¸µé¾î º¸´Â °ÍÀº ¾î¶°ÇÑ°¡? ȤÀº ¼ö¸¹Àº ·Îº¿ÀÌ ÇÑ Arena¿¡¼­ Áý´Ü ³­Åõ±ØÀ» ¹úÀÌ´Â ¹èƲ ·Î¾â°ú °°Àº ´ëÀüÀ» À§ÇØ 360¡£·Î ȸÀüÇÏ¸ç »ç°ÝÇÏ´Â ·Îº¿À» ¸¸µé¾î º¸´Â °ÍÀº ¾î¶°ÇÑ°¡? °³¼±ÀÇ ¿©Áö´Â ¾ó¸¶µçÁö ÀÖ´Ù.

¹Ýµå½Ã ÀüÅõ °úÁ¤À» Á¡°ËÇÏ°í ¿øÇÏ´Â µ¿ÀÛÀ» ¼öÇàÇÏÁö ¾Ê´Â °æ¿ì, À̸¦ ¾î¶»°Ô ¼öÁ¤ÇؾßÇÒ °ÍÀÎÁö ³í¸®ÀûÀ¸·Î »ý°¢ÇÒ °Í! ±×¸®°í »ó»ó·ÂÀ» µ¿¿øÇÏ¿© ´õ¿í °­·ÂÇÑ ·Îº¿À» ¸¸µé °Í! ÀÌ°ÍÀ̾߸»·Î RTB¸¦ ÅëÇؼ­ ÇÁ·Î±×·¡¹ÖÀ» ÇнÀÇϴµ¥ ²À ÇÊ¿äÇÑ ÀÚ¼¼ÀÏ °ÍÀÌ´Ù.

µ¶ÀÚµé Áß ´ëºÎºÐÀº ½ÅÀÇ Àå³­°¨À̶ó°í ºÒ¸®´Â ·¹°í ºí·ÏÀ» ÇѹøÂëÀº °¡Áö°í ³î¾ÆºÃ´ø °æÇèÀ» °¡Áö°í ÀÖÀ» ÁÙ ¾È´Ù. ÃÖ±Ù¿¡ ·¹°í ½Ã¸®Áî Áß Mind Storm ½Ã¸®Áî°¡ Ãâ½ÃµÇ¾ú´Ù. <±×¸² 13> ·¹°í ºí·ÏÀ» °¡Áö°í ·Îº¿À» ¸¸µé°í »ç¿ëÀÚ°¡ Á÷Á¢ ÄÁÆ®·Ñ·¯¸¦ Á÷Á¢ ÇÁ·Î±×·¡¹Ö Çؼ­ µ¿ÀÛÇÏ°Ô ¸¸µç ½Ã¸®Áî·Î, ·Îº¿ °úÇÐÀÚ¸¦ ²Þ²Ù´Â ¾î¸°À̵éÀÇ µ¿½ÉÀ» ÀÚ±ØÇÏ´Â Èï¹Ì·Î¿î ¹°°ÇÀÌ´Ù. ÇÊÀÚ ¿ª½Ã °æÁ¦ÀûÀÎ ¿©°ÇÀÌ Çã¶ôÇÑ´Ù¸é ±¸ÀÔÇÏ°í ½Í´Ù.

mindstrom2.jpg
[JPG image (8.25 KB)]

RTB´Â Mind Storm ½Ã¸®Áî¿Í ºñ½ÁÇÑ ¸éÀ» °¡Áö°í ÀÖ´Ù. µÑ ´Ù ÇÁ·Î±×·¡¹ÖÀ» ÇнÀÇϴµ¥ ÁÁÀº ÇнÀµµ±¸°¡ µÉ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ´ÜÁö Mind StormÀº Çö½Ç¿¡¼­ ·Îº¿À» ¿òÁ÷¿© º¸´Â °ÍÀÌ°í RTB´Â ¸ð´ÏÅÍ ¼Ó¿¡ Ãß»óÈ­µÈ ·Îº¿À» ÁöÄѺÁ¾ß ÇÏ´Â Á¡ÀÌ ´Ù¸¦ »ÓÀÌ´Ù. ±×·¯³ª ÇÊÀÚ´Â Çö½Ç¿¡¼­ µ¿ÀÛÇÏ´Â ·Îº¿À» ÇÁ·Î±×·¡¹Ö Çϴµ¥ µû¸£´Â ¾î´À Á¤µµÀÇ Á¦¾àÀÌ µû¸£±â ¶§¹®¿¡ RTB°¡ ´õ¿í Àç¹ÌÀÖÀ» °ÍÀ̶ó°í »ý°¢ÇÑ´Ù. ±×¸¸Å­ RTB¸¦ ÅëÇؼ­ ¹«ÇÑÇÑ ÇÁ·Î±×·¡¹ÖÀÇ »ó»óÀÇ ³ª·¡¸¦ Æî ¼ö ÀÖ´Ù.

ÇÁ·Î±×·¡¹ÖÀº ¹°·Ð ¾î¶°ÇÑ °ÍÀ» ÇнÀÇϴµ¥ °¡Àå Áß¿äÇÑ °ÍÀº ÇнÀÀÚÀÇ Èï¹ÌÀÌ´Ù. ±³À°°è¿¡ Á¾»çÇÏ´Â ÇÊÀÚ°¡(¾ÆÁ÷ ¿¹ºñ±³»ç¿¡ ºÒ°úÇÏÁö¸¸) ÇÁ·Î±×·¡¹ÖÀ» ÇнÀÇϴµ¥ RTB¿Í °°ÀÌ Ã¢ÀÇÀûÀÌ°í Èï¹Ì ÀÖ´Â ÇнÀµµ±¸¸¦ »ç¿ëÇÏ´Â °ÍÀº ±âÁ¸ÀÇ ÇÁ·Î±×·¡¹Ö ÇнÀ Æз¯´ÙÀÓÀ» µÚ¾þ´Â ³î¶ó¿î ÀÏÀ̶ó°í »ý°¢ÇÑ´Ù. ÇÁ·Î±×·¡¹ÖÀ» óÀ½ ½ÃÀÛÇÑ´Ù¸é Àç¹Ì¾ø´Â ³²ÀÇ ¿¹Á¦¸¸ Á×¾î¶ó ÄÚµùÇÏ´Ù°¡ ÁöÃĹö¸®Áö ¸»°í À§¿Í °°Àº °ÍÀ¸·Î Àç¹Ì¸¦ ´À³¥ ¼ö Àֱ⠹ٶõ´Ù.

Arena¿¡¼­ »ì¾Æ³²´Â ÃÖ°íÀÇ ·Îº¿À» C, JAVA, C++ °°Àº ´Ù¾çÇÑ ÇÁ·Î±×·¡¹Ö ¾ð¾î·Î ÄÚµùÇØ º¸¶ó. ¾î´À»õ ÇÑ °ÉÀ½ ¼ºÀåÇÑ ¿©·¯ºÐÀÇ ÇÁ·Î±×·¡¹Ö ½Ç·ÂÀ» ´À³¥ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

1.9. Áú¹®? ±×¸®°í ´äº¯

¿©±â¿¡! ±â»ç¿Í °ü·ÃÇؼ­ Áú¹®ÇØ ÁÖ¼¼¿ä -- GunSmoke

¿À. ÀÌ·±°ÍÀÌ ÀÖ¾ú±º¿ä. ±×·±µ¥.. ¹èƲ ¼­¹ö·Î Á¢¼ÓÇÒ ¼ö ¾ø³ª¿ä? infiniterun -- infiniterun 2004-12-29

¿Ã¸®½Ã´À¶ó °í»ý¸¹ÀÌ Çϼ̰ڳ׿ä.... °í¸¿½À´Ï´Ù.... -- Tolchi 2004-12-29

ÀÌ·±°Íµµ ÀÖ¾ú±º¿ä..¤¾¤¾´çÀåÇغÁ¾ß°Ú´ç!!~¤¾¤¾¼ö°íÇϼ̽À´Ï´Ù. -- root84 2005-07-03

database¿¡¼­ ´Ù¸¥ »ç¶÷µéÀÌ ¸¸µç robotÇÁ·Î±×·¥ Á» ¹Þ¾Æ º¸·ÁÇß´õ´Ï, ¾ø´øµ¥..;;; Ȥ½Ã ¾Æ½Ã´Â ºÐ?? -- mosaick 2005-07-05

¿Í Àç¹Õ´Â°Ô Àֳ׿ä. °ÔÀÓÀÇ Áßµ¶À¸·Î ¹«ÀåÇßÁö¸¸ ÇÁ·Î±×·¡¹Ö¿¡ ´ëÇÑ Èï¹Ì¸¦ À¯¹ß½ÃÅ°´Â±º¿ä. ¿µ¾î°¡ ¾ÈµÇ´Ù º¸´Ï À½...Á» Èûµå³×¿ä ¤Ð -- ±×³É 2005-10-27

captcha
Username:

ID
Password
Join
Like winter snow on summer lawn, time past is time gone.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2005-10-27 11:39:37
Processing time 0.0135 sec