/dont-catch-me-server

2.5D pac-man game with phaser

Primary LanguageJavaScript

πŸ‡ Don't Catch Me!

Deploy

κ²Œμž„ μ„€λͺ…

main game

μ‹±κΈ€λͺ¨λ“œ stage 1 ν”Œλ ˆμ΄ ν™”λ©΄

  • Don't catch meλŠ” μ‹±κΈ€λͺ¨λ“œ, λ©€ν‹°λͺ¨λ“œ 두 κ°€μ§€λ‘œ ꡬ성 된 μ›Ή κ²Œμž„μž…λ‹ˆλ‹€.
  • 유λͺ…ν•œ κ³ μ „ κ²Œμž„μΈ pac-manκ²Œμž„μ—μ„œ λͺ¨ν‹°λΈŒλ₯Ό μ–»μ–΄, 이λ₯Ό 2.5d둜 κ΅¬ν˜„ν•΄λ³΄κ³ μž ν–ˆμŠ΅λ‹ˆλ‹€.

Features

  • μ‹±κΈ€λͺ¨λ“œμ˜ 경우, μ œν•œ 된 μ‹œκ°„ μ•ˆμ— μ«“μ•„μ˜€λŠ” 토끼듀을 ν”Όν•΄ 동전을 λ¨ΉλŠ” ν˜•μ‹μž…λ‹ˆλ‹€.
  • 맡에 μœ„μΉ˜ν•œ λͺ¨λ“  동전을 λ‹€ λ¨ΉλŠ”λ‹€λ©΄ λ‹€μŒ μŠ€ν…Œμ΄μ§€λ‘œ λ„˜μ–΄κ°ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.
  • μŠ€ν…Œμ΄μ§€λ₯Ό λ„˜μ–΄κ°ˆ 수둝, 맡에 더 λ§Žμ€ 토끼듀이 λ“±μž₯ν•˜κ²Œ λ©λ‹ˆλ‹€.
  • μ΅œμ’… μŠ€ν…Œμ΄μ§€λ₯Ό ν†΅κ³Όν•œλ‹€λ©΄, 남은 μž”μ—¬ μ‹œκ°„μ„ 톡해 점수λ₯Ό ν™˜μ‚°ν•˜μ—¬ 기둝할 수 μžˆμŠ΅λ‹ˆλ‹€.
  • 10μœ„ μ•ˆμ— λ“  ν”Œλ ˆμ΄μ–΄λ“€μ˜ 기둝은 record νŽ˜μ΄μ§€λ₯Ό 톡해 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.
  • λ©€ν‹°λͺ¨λ“œμ˜ 경우, μ—­μ‹œ μ œν•œ 된 μ‹œκ°„ μ•ˆμ— λ”μš± λ§Žμ€ 동전을 먹은 ν”Œλ ˆμ΄μ–΄κ°€ μš°μŠΉν•˜κ²Œ λ©λ‹ˆλ‹€.
  • λ©€ν‹°λͺ¨λ“œμ˜ μŠ€ν…Œμ΄μ§€κ°€ λλ‚˜κ³  λ‚œ ν›„, κ²Œμž„ν–ˆλ˜ ν”Œλ ˆμ΄μ–΄λ“€κ³Ό λ‹€μ‹œ κ²Œμž„ν•˜κ³  μ‹Άλ‹€λ©΄ 이전 방으둜 λŒμ•„κ°ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.

How to play

  • ν‚€λ³΄λ“œ λ°©ν–₯ ν‚€λ₯Ό μ΄μš©ν•΄ μ»¨νŠΈλ‘€ν•©λ‹ˆλ‹€.
  • λ©€ν‹°λͺ¨λ“œμ˜ 경우, μ΄ˆλŒ€ μ½”λ“œλ₯Ό λ³΅μ‚¬ν•˜κ±°λ‚˜ μΉ΄μΉ΄μ˜€ν†‘μ„ 톡해 κ°œμ„€ 된 방의 링크λ₯Ό 전솑할 수 μžˆμŠ΅λ‹ˆλ‹€.

main

waiting page, μΉœκ΅¬μ—κ²Œ 전솑받은 μ½”λ“œλ₯Ό 톡해 방으둜 μž…μž₯ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

🌌 Motivation

Single mode

  • javascript 곡뢀λ₯Ό 처음 μ‹œμž‘ ν–ˆμ„λ•Œμ—, Tick-Tac-Toe λΌλŠ” κ°„λ‹¨ν•œ μ›Ή μ•± κ²Œμž„μ„ κ΅¬ν˜„ν•΄ λ³Έ 적이 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.
  • μ €λŠ” 2λͺ…μ΄μ„œ λ²ˆκ°ˆμ•„κ°€λ©° ν”Œλ ˆμ΄ ν•  수 μžˆλ„λ‘ λ‹¨μˆœν•˜κ²Œ κ΅¬ν˜„μ„ ν–ˆμ—ˆμŠ΅λ‹ˆλ‹€. 그런데 κ²Œμž„ AIλ₯Ό κ΅¬ν˜„ ν•΄μ„œ ν˜Όμžμ„œλ„ ν”Œλ ˆμ΄ ν•  수 μžˆλ„λ‘ ν•˜κ³ , μ‹¬μ§€μ–΄λŠ” AI λ‚œμ΄λ„ 쑰정을 톡해 λ‹¨κ³„κΉŒμ§€ μ‘°μ ˆν•œ μ½”λ“œλ₯Ό μ ‘ν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 제 μžμ‹ μ—κ²Œ 많이 λΆ€λ„λŸ¬μ› μŠ΅λ‹ˆλ‹€.
  • κ·Έλ•Œ 처음으둜 ν˜Όμžμ„œ λ‹€μŒ 행동을 νŒλ‹¨ν•˜λŠ” AIλ₯Ό κ΅¬ν˜„ν•΄λ³΄κ³  μ‹Άλ‹€κ³  μƒκ°ν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

Multi mode

  • 이전 ν”„λ‘œμ νŠΈμ—μ„œ μ›Ή μ†ŒμΌ“μ„ 톡해 μ‹€μ‹œκ°„μœΌλ‘œ μ‚¬μš©μžλ“€μ—κ²Œ μƒνƒœ λ³€ν™” 및 이벀트λ₯Ό μ „λ‹¬ν•˜λŠ” μ›Ή μ‚¬μ΄νŠΈλ₯Ό κ΅¬ν˜„ν–ˆμ—ˆμŠ΅λ‹ˆλ‹€.
  • μ΄μ œκΉŒμ§€ μ‹€μ‹œκ°„μœΌλ‘œ μ‚¬μš©μžλ“€κ³Ό μ†Œν†΅ν•˜λ©΄μ„œ ν•˜λŠ” κ²Œμž„λ“€μ΄ 이런 μ‹μœΌλ‘œ κ΅¬ν˜„λκ² κ΅¬λ‚˜ ν•˜λŠ” 생각이 λ“€λ©΄μ„œ μ‹œμ•Όκ°€ μ—΄λ¦¬λŠ” κΈ°λΆ„μ΄μ—ˆμŠ΅λ‹ˆλ‹€.
  • 그렇기에 직접 μ›Ή μ†ŒμΌ“μ„ μ΄μš©ν•œ λ©€ν‹° κ²Œμž„μ„ λ§Œλ“€μ–΄ 보고 μ‹Άμ—ˆμŠ΅λ‹ˆλ‹€.

πŸ“Œ Teck stack

FrontEnd

  • React
  • ES2015+
  • Redux (Redux-toolkit)
  • Phaser
  • React-router-dom

BackEnd

  • Express
  • MongoDB Atlas
  • NodeJS

Third Party Stack

  • Git
  • Socket.io
  • Styled-components
  • Jest, enzyme for unit-test

πŸ“… Duration & Plan

ν”„λ‘œμ νŠΈ μ‹œμž‘ μ€€λΉ„ [2021.05.03 ~ 2021.05.07]

  • ν”„λ‘œμ νŠΈ 기획 및 asset 확보

carrot

캐릭터 μŠ€ν”„λΌμ΄νŠΈμ˜ 일뢀

  • κ²Œμž„ 맡 μž‘μ—…

map

Tiled ν”„λ‘œκ·Έλž¨μ„ μ΄μš©ν•˜μ—¬ 직접 맡을 κ΅¬ν˜„ ν•œ 후에 json 파일둜 λ³€ν™˜

ν”„λ‘œμ νŠΈ 및 배포 [2021.05.08 ~ 2021.05.21]

  • μ‹±κΈ€λͺ¨λ“œ κ΅¬ν˜„
  • λ©€ν‹°λͺ¨λ“œ κ΅¬ν˜„
  • 기타 νŽ˜μ΄μ§€ μž‘μ—…
  • AI λ‚œμ΄λ„ 쑰절
  • κ²Œμž„ λ‚œμ΄λ„ 쑰절 및 asset μ΅œμ’… 적용
  • μŠ€νƒ€μΌλ§
  • 배포

βš™οΈ Deploy

Client

  • netlifyλ₯Ό μ΄μš©ν•΄ λ°°ν¬ν–ˆμŠ΅λ‹ˆλ‹€.

Server

  • AWS Elastic beanstalkλ₯Ό μ΄μš©ν•΄ λ°°ν¬ν–ˆμŠ΅λ‹ˆλ‹€.

πŸ—’οΈ Comments

κ΅¬ν˜„ κ³Όμ • 쀑 어렀움

  • Phaser
    • isometric ν˜•μ‹μ˜ κ²Œμž„μ„ κ΅¬ν˜„ν•˜λ € ν–ˆκΈ°μ— 맡 λ Œλ”λ§κ³Ό 같은 λΆ€λΆ„μ—μ„œ 일반 canvasλ₯Ό μ‚¬μš© ν–ˆμ„ λ•Œ 어렀움이 λ§Žμ„ 것이라 생각을 ν–ˆμŠ΅λ‹ˆλ‹€.
    • phaserμ—μ„œ κ·Έλ™μ•ˆ 비곡식적인 ν”ŒλŸ¬κ·ΈμΈμ„ 톡해 isometric ν˜•μ‹ κ²Œμž„ μ œμž‘μ„ 지원을 ν•˜λ‹€κ°€, μž‘λ…„ 12μ›”λΆ€ν„° κ³΅μ‹μ μœΌλ‘œ isometric κ²Œμž„ κ΅¬ν˜„μ„ μ§€μ›ν•˜κ²Œ λλ‹€λŠ” 것을 μ•Œκ²ŒλμŠ΅λ‹ˆλ‹€.
    • 그렇기에 phaser 라이브러리λ₯Ό μ΄μš©ν•΄ κ²Œμž„ κ°œλ°œμ„ ν•΄μ•Όκ² λ‹€κ³  λ§ˆμŒμ„ λ¨Ήμ—ˆμœΌλ‚˜, μ‹€μ œλ‘œ κ°œλ°œμ„ ν•˜λ©° λ§ˆμ£Όν•œ 싀상은 μ’€ λ‹¬λžμŠ΅λ‹ˆλ‹€.
    • μ™„μ „νžˆ μ—…λ°μ΄νŠΈκ°€ λ˜μ§€ μ•Šμ•˜κΈ°μ— isometric 맡을 κ΅¬ν˜„ν•˜λŠ” tiledλΌλŠ” ν”„λ‘œκ·Έλž¨μ„ 톡해 λ°”λ‘œ 맡을 κ²Œμž„μ— 꽂을 수 μ—†μ—ˆκ³ , κ΄€λ ¨ λ ˆνΌλŸ°μŠ€κ°€ 생각보닀 많이 μ—†μ—ˆμŠ΅λ‹ˆλ‹€.
    • 이전에 μ§€μ›ν•˜λ˜ ν”ŒλŸ¬κ·ΈμΈμ„ ν†΅ν•΄μ„œ κ΅¬ν˜„ν•˜λ„λ‘ 방법을 λ°”κΏ”λ³ΌκΉŒ 생각도 ν–ˆμ§€λ§Œ, 이미 μ–΄λŠμ •λ„ 개발이 μ§„ν–‰μ€‘μ΄μ—ˆκ³  μ‹œκ°„λ„ κ½€ μ†Œμš”λœ μƒνƒœμ˜€μŠ΅λ‹ˆλ‹€.
    • λ”°λΌμ„œ μœ λ‹ˆν‹°μ˜ μ½”λ“œ 및 json νŒŒμΌλ“€μ˜ ν˜•μ‹μ„ μ°Έκ³ ν•΄μ„œ tiledμ—μ„œ λ³€ν™˜ 된 json νŒŒμΌλ“€μ„ 일일히 λ°”κΎΈμ–΄μ£Όκ³ , ν•˜λ‚˜μ”© ν…ŒμŠ€νŠΈ 및 디버깅을 ν†΅ν•΄μ„œ 맡을 λ Œλ”λ§ ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.
    • ν•˜μ§€λ§Œ 이후에도 개발 도쀑 계속 버그가 λ°œμƒν–ˆκ³  κ΄€λ ¨ λ‘œμ§λ“€μ„ 처리 ν•  λ•Œμ— λ§Žμ€ λ”œλ ˆμ΄κ°€ μƒκ²ΌμŠ΅λ‹ˆλ‹€. λ‹€ν–‰νžˆλ„ μ§€κΈˆμ€ μ–΄λŠμ •λ„ μ ˆμΆ©μ•ˆμ„ μ°Ύμ•„μ„œ κ²Œμž„ 싀행에 μ„±κ³΅ν–ˆμŠ΅λ‹ˆλ‹€.
    • ν”„λ‘œμ νŠΈμ— λ“€μ–΄κ°€κΈ° 전에 더 μΆ©λΆ„νžˆ 레퍼런슀 및 쑰사λ₯Ό ν•˜κ³ , 기본적인 κ΅¬ν˜„μ„ μ’€ 더 촘촘히 μ‹œλ„ν•΄ λ³Έ λ‹€μŒμ— λ³Έ ν”„λ‘œμ νŠΈμ— λ“€μ–΄κ°€λŠ” 것이 μ’‹κ² λ‹€λŠ” κ΅ν›ˆμ„ μ–»μ—ˆμŠ΅λ‹ˆλ‹€.
    • λ˜ν•œ μ’€ 더 어렀움이 μžˆλ”λΌλ„, 라이브러리λ₯Ό μ΄μš©ν•˜μ§€ μ•Šκ³  λ°”λ‘œ κ΅¬ν˜„μ„ ν•˜λŠ” 것이 결과적으둜 더 μ‹œκ°„μ„ μ•„λ‚„ 수 도 μžˆκ² λ‹€λŠ” 생각이 λ“€μ—ˆμŠ΅λ‹ˆλ‹€.
  • AI difficulty
    • 졜초 κΈ°νšλ•ŒλŠ” 더 λ‹€μ–‘ν•œ AIλ₯Ό κ΅¬ν˜„ν•  μƒκ°μ΄μ—ˆμœΌλ‚˜, 맡의 크기가 μƒλŒ€μ μœΌλ‘œ μž‘μ€ νŽΈμ΄κΈ°μ— μ‹¬ν”Œν•œ κ²Œμž„ 컨셉과 달리 κ²Œμž„ 진행이 ν•„μš” μ΄μƒμœΌλ‘œ λ³΅μž‘ν•΄ 보일 μˆ˜λ„ μžˆλ‹€λŠ” 것을 κΉ¨λ‹¬μ•˜μŠ΅λ‹ˆλ‹€.
    • λ”°λΌμ„œ μ›λž˜ κ΅¬ν˜„ν–ˆλ˜ AI의 정확성을 올리고, 속도λ₯Ό μ˜¬λ¦¬λŠ” μ‹μœΌλ‘œ λ°”κΏ”μ„œ 2가지 νƒ€μž…μ˜ AIλ₯Ό λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€.
    • isometric의 νŠΉμ„± 상 캐릭터듀이 상, ν•˜, 쒌, 우 4 λ°©ν–₯으둜 움직일 수 μžˆλŠ”λ°, AI의 정확성이 μ˜¬λΌκ°€μž κ²Œμž„ 화면이 μžμ—°μŠ€λŸ½μ§€ μ•Šκ²Œ λ³΄μ˜€μŠ΅λ‹ˆλ‹€.
    • 기본적인 AI 둜직의 λ² μ΄μŠ€λŠ”, ν”Œλ ˆμ΄μ–΄μ™€ 제일 κ°€κΉκ²Œ 이동할 수 μžˆλŠ” 지점을 μ°Ύμ•„μ„œ λ°©ν–₯을 κ²°μ •ν•˜κ³  μ›€μ§μ΄λŠ” ν˜•νƒœλ‘œ κ΅¬ν˜„λλŠ”λ°, 정확성이 μ˜¬λΌκ°€λ‹ˆ μˆ˜μ‹œλ‘œ λ‹€λ₯Έ λ°©ν–₯을 μ°Ύμ•„μ„œ 계속 λ°©ν–₯을 λ°”κΎΈλ‹€λ³΄λ‹ˆ ν™”λ©΄ μƒμ—μ„œ μ§€λ‚˜μΉ˜κ²Œ 많이 깜빑거리게 된 κ²ƒμž…λ‹ˆλ‹€.
    • λ”°λΌμ„œ 이미 μ΄λ™ν–ˆλ˜ λ§ˆμ§€λ§‰ λ°©ν–₯을 기둝해두고 이 정보듀을 λ‹€μŒ λ°©ν–₯을 νŒλ‹¨ν•  λ•Œμ— μ‚¬μš©ν–ˆκ³ , AIκ°€ λ°©ν–₯을 λ°”κΏ€ λ•Œ μ˜λ„μ μœΌλ‘œ λ”œλ ˆμ΄λ₯Ό μ€˜μ„œ ν™”λ©΄μ μœΌλ‘œλ„ λ„ˆλ¬΄ λΆ€μžμ—°μŠ€λŸ½μ§€ μ•Šλ„λ‘ κ°œμ„ ν–ˆμŠ΅λ‹ˆλ‹€.
    • 결과적으둜 AI의 λΆˆν•„μš”ν•œ λ°©ν–₯ 변동이 μ€„μ–΄λ“œλ‹ˆ, μƒλŒ€μ μœΌλ‘œ ν”Œλ ˆμ΄μ–΄λ₯Ό μ«“μ•„μ˜€λŠ” μ‹œκ°„μ΄ μ€„μ–΄λ“œλŠ” 긍정적인 κ²°κ³Όλ₯Ό μ–»μ—ˆμŠ΅λ‹ˆλ‹€.
    • ν•˜μ§€λ§Œ μ• μ΄ˆμ— 8λ°©ν–₯으둜 κ΅¬ν˜„μ„ ν–ˆλ‹€λ©΄ ν™”λ©΄μƒμœΌλ‘œ 보닀 덜 λΆ€μžμ—°μŠ€λŸ¬μ› μ„ 것이기에, 이 뢀뢄에 μžˆμ–΄μ„œλŠ” 아쉬움이 λ‚¨μŠ΅λ‹ˆλ‹€.
  • Socket action control
    • 졜초 socket 톡신을 λͺ¨λ‘ redux middleware에 κ·€μ†μ‹œμΌœμ„œ redux μ•‘μ…˜μ„ 톡해 ν•œλ²ˆμ— 컨트둀 ν•  수 μžˆλ„λ‘ κ΅¬ν˜„ν•˜κ³ μž ν–ˆμŠ΅λ‹ˆλ‹€.
    • μ΄λŠ” μƒˆλ‘œ ν”Œλ ˆμ΄μ–΄λ“€μ΄ λ“€μ–΄μ˜€κ³ , 이 ν”Œλ ˆμ΄μ–΄λ“€μ˜ 정보λ₯Ό μ„€μ •ν•˜κ³  ν•˜λŠ” 것과 같은 μ•‘μ…˜μ—” μ μ ˆν•œ νŒλ‹¨μ΄μ—ˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.
    • ν•˜μ§€λ§Œ κ²Œμž„μ΄ μ‹œμž‘ν•˜κ³  λ‚˜μ„œλΆ€ν„°λŠ”, 각 ν”Œλ ˆμ΄μ–΄λ“€μ˜ μ’Œν‘œ 정보 및 이벀트 정보듀을 μ‹€μ‹œκ°„μœΌλ‘œ 전달을 ν•΄μ£Όμ–΄μ•Ό ν•˜λŠ”λ°, 이 정보듀이 κ³Όμ—° redux에 λ“€μ–΄κ°ˆ ν•„μš”κ°€ μžˆλŠ”μ§€ 의문이 λ“€μ—ˆμŠ΅λ‹ˆλ‹€.
    • λ˜ν•œ phaser의 경우 canvasλ₯Ό 기반으둜 μž‘λ™ν•˜λŠ”λ°, canvas의 경우 λ Œλ”λ§μ΄ 맀우 자주되기 λ•Œλ¬Έμ— redux의 μ•‘μ…˜μ΄ μ§€λ‚˜μΉ˜κ²Œ 자주 μΌμ–΄λ‚¬μŠ΅λ‹ˆλ‹€.
    • λ”°λΌμ„œ κ΄€λ ¨ μ΄λ²€νŠΈλ“€μ€ phaser class에 직접 κ½‚μ•„μ£ΌλŠ” μ‹μœΌλ‘œ socket λ‘œμ§μ„ λ°”κΎΈμ—ˆμŠ΅λ‹ˆλ‹€.
    • μΆ”ν›„ μ„±λŠ₯ ν…ŒμŠ€νŠΈλ₯Ό 톡해 μ‹€μ§ˆμ μœΌλ‘œ μ–Όλ§ˆλ‚˜ νš¨μœ¨μ μΈμ§€λ₯Ό νŒλ‹¨ν•˜μ—¬ κ°œμ„ ν•΄ λ‚˜κ°ˆ μ˜ˆμ •μž…λ‹ˆλ‹€.

λŠλ‚€ 점

  • κ²Œμž„μ„ ꡉμž₯히 μ’‹μ•„ν•©λ‹ˆλ‹€. ν”„λ‘œκ·Έλž˜λ° 곡뢀λ₯Ό μ‹œμž‘ν•˜κΈ° μ „κΉŒμ§€λŠ” κ½€ λ§Žμ€ μ‹œκ°„μ„ κ²Œμž„μ— νˆ¬μžν•˜λ©΄μ„œ μ‚΄μ•˜μŠ΅λ‹ˆλ‹€. 인디 κ²Œμž„λ“€μ„ ν”Œλ ˆμ΄ν•˜λ©΄μ„œ 저도 ν•œλ²ˆ 쯀은 κ²Œμž„ μ œμž‘μ„ 해보고 μ‹Άλ‹€λŠ” 생각에 μΈμƒμ˜ 버킷 λ¦¬μŠ€νŠΈμ— "κ²Œμž„ 개발"μ΄λΌλŠ” ν•­λͺ©μ΄ 항상 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. ν”„λ‘œμ νŠΈλ₯Ό μ™„μ„±ν•œ μ§€κΈˆμ€ 버킷 리슀트λ₯Ό ν•˜λ‚˜ λ‹¬μ„±ν–ˆκΈ°μ— 맀우 ν–‰λ³΅ν•©λ‹ˆλ‹€. 제 μ†μœΌλ‘œ κ²Œμž„μ„ λ§Œλ“€ 수 μžˆλ‹€λŠ” 것을 깨달은지 비ꡐ적 μ–Όλ§ˆ λ˜μ§€ μ•Šμ•˜λŠ”λ°, μ‹€μ œλ‘œ ν•΄λ‚΄μ„œ 성취감이 λ“€μ—ˆμŠ΅λ‹ˆλ‹€. 아직은 μ œκ°€ μ›ν•˜λŠ” 만큼의 결과물이 λ‚˜μ˜€μ§€ μ•Šμ•˜μ§€λ§Œ, μ§€μ†μ μœΌλ‘œ μ—…λ°μ΄νŠΈλ₯Ό 톡해 계속 κ°œμ„ ν•΄λ‚˜κ°€κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.
  • 이번 κ²Œμž„μ„ μ œμž‘ν•˜λ©΄μ„œ, κ²Œμž„ νŠΉμ„± 상 (isometric 및 토끼가 당근을 μ«“λŠ”λ‹€λŠ” 컨셉) asset을 μ°ΎκΈ°κ°€ νž˜λ“€μ—ˆκ³ , κ΄€λ ¨λœ μ†Œμš” μ‹œκ°„μ΄ ꡉμž₯히 κΈΈμ—ˆμŠ΅λ‹ˆλ‹€. isometric 및 토끼와 λ‹Ήκ·Όμ΄λΌλŠ” asset을 가지고 μžˆλŠ” μ‚¬μ΄νŠΈλŠ” μ μ—ˆκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. κ·ΈλŸ¬λ‹€ 운 μ’‹κ²Œλ„ 쒋은 λ””μžμ΄λ„ˆ 뢄을 λ§Œλ‚˜μ„œ κ²Œμž„ asset μž‘μ—…μ„ ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. ν”„λ‘œμ νŠΈ 초반 μΌλ•Œμ—, 아직 κ΅¬ν˜„λ˜μ§€ μ•Šμ€ 것듀에 λŒ€ν•΄ λ§Žμ€ 뢀담감이 μžˆμ—ˆλŠ”λ° 이런 심적인 λΆˆμ•ˆκ°λ“€μ„ 쒋은 λ””μžμ΄λ„ˆλΆ„ 덕뢄에 많이 ν•΄μ†Œ ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ””μžμΈμ˜ μ€‘μš”μ„±μ΄ μ–Όλ§ˆλ‚˜ λŒ€λ‹¨ν•œμ§€ μ•Œκ²Œ λ˜μ—ˆκ³ , μ•žμœΌλ‘œ μΌν•˜λ©΄μ„œλ„ 이런 λ””μžμ΄λ„ˆ 뢄듀을 λ§Œλ‚˜μ„œ μž‘μ—…ν•˜κ³  μ‹Άλ‹€λŠ” 생각이 λ“€μ—ˆμŠ΅λ‹ˆλ‹€. μ € λ˜ν•œ 이 λ””μžμ΄λ„ˆ λΆ„ 처럼 쒋은 νŒ€μ›μ΄ 되고 μ‹Άλ‹€λŠ” 생각 μ—­μ‹œ λ“€μ—ˆμŠ΅λ‹ˆλ‹€.
  • ν”„λ‘œκ·Έλž˜λ° 곡뢀λ₯Ό μ‹œμž‘ν•œμ§€ 였랜 기간이 μ§€λ‚˜μ§€ μ•Šμ•˜μ§€λ§Œ, μ§€κΈˆκΉŒμ§€ μ„±μž₯ν•  수 μžˆμ—ˆλ˜ 원동λ ₯의 κΈ°λ°˜μ€ λ°”λ‹λΌμ½”λ”©μ΄λΌλŠ” 쒋은 λ‚˜μΉ¨λ°˜μ„ 빨리 μ•Œμ•„λ³΄κ³  μ„ νƒν–ˆκΈ° λ•Œλ¬Έμ΄λΌκ³  μƒκ°ν•©λ‹ˆλ‹€. 쒋은 λ™λ£Œλ“€κ³Ό λ°©ν–₯ 및 ν™˜κ²½μ„ μ œκ³΅ν•΄ μ£Όμ‹  μΌ„λ‹˜κ³Ό λ©˜ν† λ‹˜λ“€κ»˜ 정말 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€. λ§ˆμ§€λ§‰μœΌλ‘œ λΆ€νŠΈμΊ ν”„ κΈ°κ°„ λ™μ•ˆ 같이 λ‚  밀을 μ§€μƒˆλ©° νž˜λ“€μ–΄ν•˜κ³ , 같이 κ³ λ―Όν•˜λ©° μƒˆλ‘œμš΄ μ‹œμž‘μ„ μœ„ν•΄ ν•œ νšμ„ 그은 λΆ€νŠΈμΊ ν”„ μ‚¬λžŒλ“€μ—κ²Œ κ·Έλ™μ•ˆ κ³ λ§ˆμ› λ‹€κ³ , μ•žμœΌλ‘œλ„ 잘 λΆ€νƒν•œλ‹€λŠ” 인사λ₯Ό 남기고 μ‹ΆμŠ΅λ‹ˆλ‹€.