· 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
Nobody expects the Spanish Inquisition!


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.0131 sec