-
์คํฌ๋ฆฝํฐ๋ธ ์ค๋ธ์ ํธ๋ ๋ง์ด ๋๋ฌด ๊ธธ์ด์
"SO" ์ ๋๋ก ์ค์ฌ์ ํํํ ๊ฒ์.
๋ชฉ์ฐจ
0. ์๋ก
1. SO, ์ ์ฐ๋๊ฐ?
2. ํ์ฉ ์ ์ง๋๋ ์๊ฐ
3. ์๊ฐ์ ํ๋ฆ
4. ์ผ์ง์ ์ด SO ์ค๋ช
5. 6์ค ์์ฝ
0. ์๋ก
๋ฉฐ์น ์ ์ผ๋ ๊ฐ๋ฐ ์ผ์ง์ ํ ๋ถ์ด ์ง๋ฌธ ๋ฌ์์ฃผ์ จ๋๋ฐ,
๋ต๋ณ์ด ์ข ๊ธธ์ด์ ธ์ ์ฐ๋ ๊ธ์ด์์.
ํด๋น ๊ธ:
https://gall.dcinside.com/mgallery/board/view?id=game_dev&no=158098
์ง๋ฌธํด ์ฃผ์ ๋ด์ฉ์ ๋ณด๊ณ ,
'SO ์ฌ์ฉ๋ฒ์ ๋ดค๋๋ฐ,
๋ค๋ฅธ ๊ตฌ์กฐ์ ์ ์ฉํ๋ ค๊ณ ๋ณด๋ ๊ฐ์ด ์ ์กํ์
์ ์ฉ ์์๊ฐ ํ์ํ ์ํ.'
์ ๋๋ก ์ดํดํ์ด์.
๊ทธ๋์ ์ ๊ฐ ์ด๋ค ์๊ฐ์ผ๋ก ์ฌ์ฉํ๊ณ ์๋์ง ์ ์ผ๋ ค๊ณ ํด์.
์ ๋ ์ด๋ณด๋ผ, ์ด๋ณด๋ค ์ข์ ํ์ฉ ๋ฐฉ๋ฒ์ด ๋ง๊ณ
์์ ํ๋ฆฐ ๋ด์ฉ์ด ์์ ์ ์์ง๋ง,
์ฒ์์ ๊ฐ์ ์ก๋ ๋ฐ์๋ ๋์์ด ๋ ์ ์๋ค๊ณ ์๊ฐํด์.
1. SO, ์ ์ฐ๋๊ฐ?
์ด๊ฑด ์ด๋ฏธ ์์๋ ๋ด์ฉ์ผ ์ ์์ง๋ง,
์ ๋ ์๋ ๋ชฉ์ ์์ ์ฝ๊ฐ์ ๋ณ์ง๋ ๋ชฉ์ ์ ์๊ฐํ๋ฉฐ ์ฌ์ฉํ๊ณ ์๋ ๋ฏ ํด์
์๋ ๋ชฉ์ ์ ๋จผ์ ์ง๊ณ ๊ฐ๋ ค๊ณ ํด์.
๋ง์ฝ ๋ชฌ์คํฐ๋ฅผ ๋ง๋ ๋ค๊ณ ๊ฐ์ ํ ๋,
๋ชฌ์คํฐ์ ์ ๋ณด(ex: ์ฒด๋ ฅ, ๊ณต๊ฒฉ๋ ฅ, ๋ฐฉ์ด๋ ฅ... ๋ฑ๋ฑ)๋ฅผ
์๋์ฒ๋ผ ๋ณ์๋ก ๋ฃ์ด๋ ์๊ฐ ์๋๋ฐ,
์ด๋ฐ ์คํฌ๋ฆฝํธ ๋ฃ์ ์ค๋ธ์ ํธ๊ฐ ๋ง์์ง๋ฉด...
์ด ์ ๋ ํฌ๊ธฐ์ ์คํฌ๋ฆฝํธ ์ ๋๋ ๊ด์ฐฎ์ง๋ง,
๋ณ์๊ฐ ์์ฃผ ๋ง์์ง ์คํฌ๋ฆฝํธ๊ฐ ์๋ฐฑ, ์์ฒ๊ฐ๋ก ๋์ด๋๋ฉด
์ปดํจํฐ๊ฐ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ จํด์ ํ๋ค์ดํ ๊ฑฐ์์.
์ด๋ ์ปดํจํฐ๋ฅผ ๋ ํ๋ค๊ฒ ํ๊ธฐ ์ํด
SO๋ผ๋ ์์ ์ ์ ๋ณด๋ฅผ ๋ชจ์์ ๋ด์๋๋ ๊ฑฐ์์.
์๋ ๊ทธ๋ฆผ์ฒ๋ผ์.
*๋๊ดํธ ์ ๋ด์ฉ์ด ๋ฉ๋ชจ๋ฆฌ ์ฐจ์ง
์ด๋ ๊ฒ SO๋ฅผ ์ถ๊ฐํด '๋ชฌ์คํฐA'์ ์ฃผ์๋ง ํ์ํ๋ฉด
๋๊ดํธ ์ ๋ด์ฉ์ ์์ ์ค์ผ ์๊ฐ ์๋ ๊ฑฐ์ฃ .
2. ํ์ฉ ์ ์ง๋๋ ์๊ฐ
์ ์์์ฒ๋ผ SO๋ฅผ ์ฌ์ฉํ๋ฉด, ์คํฌ๋ฆฝํธ์ ์ธ์คํํฐ๋ ์ด๋ ๊ฒ ๋ผ์.
์ด๊ฑธ ๋ณด๊ณ , ์ ๋
'SO๊ฐ ๋ง์น ์ค์๋ง ๊ฐ๋ค'๋ผ๋ ์๊ฐ์ ํ์ด์.
'๊ณต๊ฒฉํ์ ๋
๊ณต๊ฒฉ๋ ฅ, ์ฒด๋ ฅ, ๋ฐฉ์ด๋ ฅ... ๋ฑ๋ฑ์ ๊ฐ์ ธ์ค๊ธฐ ๊ท์ฐฎ๋ค.
๊ทธ๋ฐ๋ฐ ์ด ์ ๋ณด๋ค์ SO์ ๋ด์๋๋ฉด monsterA๋ง ๋๊ฒจ์ฃผ๋ฉด ๋๋ค.'
์ด๋ฐ ๋ง์ธ๋์์.
์ [ 1. SO, ์ ์ฐ๋๊ฐ? ]์ ์ ํ ์ด์ ๋ ์ค์ง '๋ฉ๋ชจ๋ฆฌ'์ธ๋ฐ,
๋ง์ ์ด์ฉํ ๋๋ '์ค์๋ง'๋ก ์ฐ๊ฒ ๋ผ์.
์ค์๋ง๋ก์จ SO๋ฅผ ์ฐ๋ค ๋ณด๋ฉด ์ด๋์ ๋ฉ๋ชจ๋ฆฌ ์ด๋์ ๋ณด๊ณ ์๊ฒ ๋๋๋ผ๊ณ ์.
3. ์๊ฐ์ ํ๋ฆ
์์ ๋ด์ฉ์ ํ ๋๋ก ์ ๊ฐ SO๋ฅผ ์ธ ๋
ํ๋ ์๊ฐ์ ํ๋ฆ์ ๊ฐ๋ตํ๊ฒ ์ ์ด ๋ณผ๊ฒ์.
์ผ์ง์ ์ ํ์๋ ์ง์ ์ฌ์ฉํ ์ถ๋ณต์ด๋ ์ฅ์ ๊ตฌ ๋ฐ์ดํฐ ์ค๋ช ์
์๋ [ 4. ๋ด๊ฐ ์ด SO ์ค๋ช (์ผ์ง ๋ด์ฉ) ] ์ ์์ด์.
1) ๋ถํธํจ์ ๋ฏธ๋ฆฌ ๊ฐ์ง
๋ฌด์ธ๊ฐ ๊ตฌํํ๊ธฐ ์ ์ ๋ฏธ๋ฆฌ ๋ถํธํ ์ํฉ์ ์์ํด ๋ณด๊ณ ,
๋ถํธํจ์ ๊ฐ์งํ๋ค๋ฉด ๋ฐ์ดํฐ(SO)๋ฅผ ๋ง๋๋ ๊ฑฐ์์.
์๋๋ ItemData๋ผ๋ SO๋ฅผ ๋ง๋ค๊ธฐ๊น์ง์ ์๊ฐ ์์์์.
ex1: "์ธ๋ฒคํ ๋ฆฌ์์ ํ ์ฌ๋กฏ์ ์ ํ ์ค์ด๋ผ๋ฉด,
์ ํ ์ค์ธ ์์ดํ ์ ๋ณด๋ฅผ ํดํ์ ๋์์ผ๊ฒ ์ด."
-> ํ์ํ ์ ๋ณด๊ฐ ์์ดํ ์ด๋ฆ, ์ค๋ช , ๊ทธ๋ฆผ... ๋ญ๊ฐ ๋ง๋ค?
-> '๋ถํธํ๋ค'
-> SO "ItemData" ์์ฑ
ex2: "์ด ์์ดํ ์ ์ฐฉ์ฉํ ์ํ๋ผ๋ฉด,
์์ดํ ์ ์ถ๊ฐ ๋ฅ๋ ฅ์น๋ฅผ ํ๋ ์ด์ด์๊ฒ ์ ์ฉํด์ผ๊ฒ ์ด."
-> ํ์ํ ์ ๋ณด๊ฐ ์์ดํ ์ ๊ณต๊ฒฉ๋ ฅ, ์ฒด๋ ฅ, ๋ฐฉ์ด๋ ฅ... ๋ญ๊ฐ ๋ง๋ค?
-> '๋ถํธํ๋ค'
-> SO "ItemData" ์์ฑ
ex3: ...
์ด๋ฐ ์์๋ค ์ค ํ๋๋ง ์์ด๋
SO๋ฅผ ๋ง๋ค ๊ฐ์น๋ ์ถฉ๋ถํ๋ค๊ณ ์๊ฐํด์.
๋ฐ๋๋ก ์ด๋ฐ ๋ถํธํจ์ด ์ฌ๋ฌ ๊ฐ์ง๋ก ์์๋๋ค๋ฉด
SO๋ฅผ ๊ฐ๋ฅํ ๋นจ๋ฆฌ ๋ง๋ค์ด์ผ๊ฒ ์ง์?
2) ๋ฐ์ดํฐ ์์ฑ์ ์ ํ์ง
ํ ๊ฐ์ง ๋ชฉํ์๋, ์ฌ๋ฌ ๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ๋ฐ์ดํฐ(SO)๋ฅผ ๋ง๋ค ์ ์๋๋ฐ,
๋ฐ๋ก ์ ๋ต์ด ์๋ ๊ฑด ์๋์์. ํ์ง๋ง
๋ค์ํ ๋ฐฉ๋ฒ ์ค ๋ณธ์ธ or ํ์๊ฒ ๋ง๋, ์ฐ๊ธฐ ํธํ ๊ฒ ์ต๊ณ ์์.
ex: ์์ดํ ์ ๊ฐํํ๋ฉด,
๋ถ์ด์๋ ๋ฅ๋ ฅ์น๊ฐ ์ฌ๋์ผ๋ฉด ์ข๊ฒ ์ด.
๋ฐฉ๋ฒ I. ๊ฐํํ ๋ฒ์ ์ ์์ดํ (ItemData)์ ์ถ๊ฐํด์, ๊ฐํํ๋ฉด ์์ดํ ์ ๋ฐ๊ฟ์ฃผ๊ธฐ.
๋ฐฉ๋ฒ II. ๊ฐํํ ๋ฅ๋ ฅ์น๊ฐ ๋ด๊ธด ReinforceData(SO)๋ฅผ ์๋ก ๋ง๋ค์ด์, ๊ฐํํ๋ฉด ์์ดํ ์ด ๋ด๊ธด ์ฌ๋กฏ์ ํด๋น ๊ฐํ ๋ฐ์ดํฐ(ReinforceData) ๋ฃ์ด์ฃผ๊ธฐ.
+) ์ถ๊ฐ๋ก, ItemData์ ์ด ์์ดํ ์ ๋ถ์ผ ์ ์๋ ๊ฐํ ๋ชฉ๋ก(ReinforceData[])์ ๋ฃ์ด์ค ์๋ ์์ด์.
๋ฐฉ๋ฒ III. ...
๋น์ฐํ ์์ผ๋ก ๊ฐ๋ฐํ ๋ฐฉํฅ์ ๋ฐ๋ผ ๋ฐฉ๋ฒ์ด ์ด๋ ์ ๋ ์ ํด์ง๊ฒ ์ง๋ง,
๊ฒฝ์ฐ์ ๋ฐ๋ผ '์ด ๋ฐฉ๋ฒ ๋ง๊ณ ์ ๋ฐฉ๋ฒ์ผ๋ก ํ ๊ฑธ ใ ใ ' ํ๊ณ ํํํ ์ ์์ผ๋
๋๋ฆ ์ ์คํ๊ฒ ๊ณ ๋ฏผํ๋ ๊ฒ์ ์ถ์ฒํด์.
๋ค์ ๋ฐ๊พธ๋ ๊ฑด ๊ท์ฐฎ๊ฑฐ๋ ์.
๋ฌผ๋ก ์ง์ฌ์ผ๋ก ํํ๊ฐ ๋ ๋๋ ๋ฐ๊พธ๋ฉด ๊ทธ๋ง์ด๊ธด ํฉ๋๋ค.
+) ์๊ฐ๋๋ฉด ๋ฐ๋ก ์์ฑ
๋ด์ฉ์ ์ค์ผ ์ ์๋ ๊ฒ ์๊ฐ๋๋ฉด
์๋์ฒ๋ผ ~~Data ํํ๋ก ๊ณ์ ๋ง๋ค๊ณ ์์ด์.
๋ช ๊ฐ ์๋ค๊ณ ์๊ฐํ๋๋ฐ, ๊ฝค ๋ง์์ก๋๋ผ๊ณ ์.
4. ์ผ์ง์ ์ด SO ์ค๋ช
์ด์ฉ๋ฉด ๊ธ์ ํต์ฌ์ด ๋ ๋ด์ฉ์ด๋ค์.
์ด์ ๋ ์ผ์ง์ ๋ณด์๋ ์ถ๋ณต, ์ฅ์ ๊ตฌ, ๋ณด์ ๋ฐ์ดํฐ์์
ํน์ง์ ์ธ? ์์๋ค ๋ช ๊ฐ๋ง
์ ๊ทธ๋ ๊ฒ ๋ง๋ค์๋์ง ๊ฐ๋จํ ์ค๋ช ๋ถ์ด๋ฉด์, ๊ธ ๋ง๋ฌด๋ฆฌํ ๊ฒ์.
- ์ถ๋ณต ๋ฐ์ดํฐ (์์)
Blessing Type: ์ ๋ณด ์ฐฝ ๊ธ์ ์์ ์ํ ๋ณ์.
๋ณด์ฌ์ง ์ถ๋ณต ๋ฆฌ์คํธ ์ ๋ณด ์ฐฝ์ ์ ๋ ฌ์ ์ํด ์ธ ์ง๋ ๋ชฐ๋ผ์,
์ด๋ฆ์ Color ์๋ Type์ผ๋ก ํ์ด์.
+) ์ด๊ฑฐํ ์๋ฃํ enum ์ฌ์ฉํ์ด์
- type buff
- type debuff
- type epic
int[] Blessing Value: ์ถ๋ณต ๋ ๋ฒจ์ ๋ฐ๋ฅธ ์ ์ฉ ๊ฐ
- ์ฅ์ ๊ตฌ ๋ฐ์ดํฐ (์์)
์ฅ์ ๊ตฌ ๋ฐ์ดํฐ๋ ์ผํ ๋ณด๋ฉด... ๋ณต์กํด ๋ณด์ด๋๋ฐ์.
์ฅ์ ๊ตฌ์ ๋ผ์ด ๋ณด์์ ๋ฐ๋ผ ์ ์ฉ๋
์ถ๋ณต ๋ฆฌ์คํธ + ์ฅ์ ๊ตฌ ๊ทธ๋ฆผ.
์ด 2๊ฐ๋ฅผ ๋ด์๋ ๊ฒ์ด ์ ๋ถ์ ๋๋ค.
ํ ๋ง๋๋ก '์ด ์ฅ์ ๊ตฌ๋ฅผ ๋ผ๋ฉด ์ด๋ค ์ถ๋ณต๋ค์ด ์ ์ฉ๋ ๊ฒ์ธ๊ฐ'
๋ฅผ ์ํ ๋ฐ์ดํฐ์์.
์ถ๋ณต ๋ฆฌ์คํธ(Blessing Datas Amount): (์ถ๋ณต ๋ฐ์ดํฐ+์ถ๋ณต ๋ ๋ฒจ)[]
์ด๋ค ์ถ๋ณต์ด ๋ช ๋ ๋ฒจ์ฉ ์ ์ฉ๋๋์ง ์ฒดํฌ.
Blessing List_empty Gem: ๋ณด์์ ๋ฏธ์ฐฉ์ฉํ ์ํ์ ์ถ๋ณต ๋ฆฌ์คํธ
์ด์ ์ฐฉ์ฉํ ๋ณด์์ด ๋ญ์ง ์์์ผ ํ๋๋ฐ,
๋ณด์์ ์๊ณผ ๋ ๋ฒจ๋ก ๋๋๊ธฐ ๋๋ฌธ์
Gem Color List์ ์๋ Gem Color๋ก ๋ณด์์ ์๊น์,
Blessing Lists_by Gem Lvl์ ์ธ๋ฑ์ค๋ก ๋ ๋ฒจ์ ๊ตฌ๋ถํด์.
๊ฒฐ๊ตญ ๊ทธ ์์๋ ํด๋น ๋ณด์์ ๊ผ์ ๋์ ์ถ๋ณต ๋ฆฌ์คํธ๊ฐ ์์ด์.
Gem Color List์ ์๋ Sprite Accessory With Gem์๋
๊ทธ ์ ๋ณด์์ ์ฐฉ์ฉํ ์ฅ์ ๊ตฌ์ ๊ทธ๋ฆผ์ด ๋ค์ด๊ฐ์
- ๋ณด์ ๋ฐ์ดํฐ (์์)
Gem Color_index: ์์ ์ฅ์ ๊ตฌ ๋ฐ์ดํฐ์์ Gem Color List๋ฅผ ํตํด ์ถ๋ณต ๋ฆฌ์คํธ๋ฅผ ์ป์ด๋ด์ผ ํ๋๋ฐ,
๋งค๋ฒ for๋ฌธ ๊ฐ์ ๊ฑฐ ๋๋ ค '์ด ๋ฆฌ์คํธ๊ฐ ์ด ๋ณด์์ด๋ ๊ฐ์ ์์ธ๊ฐ?'๋ฅผ ์ฐ๊ธฐ๊ฐ ์ข ๊ฑฐ์๊ธฐํด์ ์ถ๊ฐํ์ด์.
Item_gem: ๋ณด์์ ์ฅ์ ๊ตฌ์ ์ฅ์ฐฉํ๋ '๋ณด์'์ด๊ธฐ๋ ํ๋ฉด์, ์ธ๋ฒคํ ๋ฆฌ์์๋ ์กด์ฌํ๋ '์์ดํ '์ด์์.
๊ทธ๋์ GemData๋, ItemData๋ ์กด์ฌํด์. ํ๊ณ ํ๊ณ ๋ค์ด๊ฐ๋ ๊ฒ ํธํ ๊ฑฐ ๊ฐ์์
ItemData์๋ ๋ณด์ ๋ฐ์ดํฐ๋ฅผ, GemData์๋ ์์ดํ ๋ฐ์ดํฐ๋ฅผ ์์ชฝ ๋ค ๋ฃ์ด ๋์์ด์.
Next Level Gem: ๋ณด์์ ์ธ๊ณตํด ์ ๊ทธ๋ ์ด๋ํ ๋, ๊ฑด๋ค์ค ๋ค์ ๋ ๋ฒจ์ GemData์์.
5. 6์ค ์์ฝ
1. SO๋ฅผ ์ฐ๋ ์๋ ๋ชฉ์ ์ ๋ฉ๋ชจ๋ฆฌ ๋๋ฌธ์ด์์.
2. ๊ทผ๋ฐ ์ ๋ ๊ทธ๋ฅ ์ค์๋ง์ด๋ผ๊ณ ์๊ฐํ๋ ๊ฒ ํธํ๋๋ผ๊ณ ์.
๊ทธ๋ ๊ฒ ์ฐ๋ค ๋ณด๋ฉด ์ด๋์ ์๋ ๋ชฉ์ ์๋ ๋ง๊ฒ ๋๊ฑฐ๋ ์.
3. ๋ถํธํจ์ ๋ฏธ๋ฆฌ ๊ฐ์งํด SO๋ฅผ ๋ง๋๋๋ฐ,
๋ค์ํ ๋ฐฉ๋ฒ ์ค ๋ณธ์ธ or ํ์๊ฒ ๋ง๋, ์ฐ๊ธฐ ํธํ ๊ฒ ์ต๊ณ ์์.
4. ์ ๊ฐ ์ด ๊ฒ๋ค ํ์ด์์.
์ฐ๋ค ๋ณด๋ ๊ธ์ด ๊ฝค ๊ธธ์ด์ก๋ค์...
๊ธด ๊ธ ์ฝ์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๊ตณ
์ง๋ฌธํ๋ ์ธ๋ถ์ธ๋ฐ ๊ณ ๋ง์ ์์์ดํด๋๋ค!!
๋๋ถ์ ๋จธ๋ฆฟ์์ ๋ ๊ฒ๋ค์ ์ ๋ฆฌํ๋ ๊ณ๊ธฐ๊ฐ ๋์ด์. ๋์ ๋์ จ๋ค๋ ๊ธฐ์๋ค์. ใ ใ
๊ฐ์ ๋ฐ์ดํฐ ๋ฌถ์ ๋๋ง ์ฐ๊ณ , ์๋ก ๋ค๋ฅธ ๊ฐ์ธ๊ณณ์๋ ์ฐ๋ฉด ์๋๋ค
๋ง์์. ์ด๊ฑฐ ์ค์ํ ๊ฑด๋ฐ, ์ด์ ๋ณด๋ ๊ฐ์กฐ๋ฅผ ๋ชปํ ๊ฑฐ ๊ฐ๋ค์! ๋ง๋ถ์ฌ ์ฃผ์ ์ ๊ฐ์ฌํด์.
์ ๋ณด๊ธ์ถ
๋ณดํต ์ค์ฌ์ SO๋ผ๊ณ ๋ง์ด ํ๋๊ฑฐ ๊ฐ๋๋ผ - dc App
๊ทธ๋ ๊ตฐ์. ์ฒ์์ SO๋ก ์ค์ด๋ ค๋ ์ด์ํ ๊ฑฐ ๊ฐ์๋๋ฐ, ๋ง์ ์จ ๋ณด๋ ํ์คํ ๊น๋ํ๋ค์. ๋๋ถ์ ์์๊ฐ์. ๊ธ๋ ์์ ํ์ด์.
์ ๋ํฐ ์คํ ํ๋ก์ ํธ์์ ์ํํจํด์ ๊ตฌํํ ๋์๋ ์ฌ์ฉํ๋๋ผ๊ณ ์. ๋จ์ํ ๋ฐ์ดํฐ, ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ๊ฒธ ์ฌ์ฉํ์๋๋ฐ ์๊ฐ๋ณด๋ค ๋ค์ฉ๋๋ก ์ฌ์ฉ๋๋๋ด์. - dc App