# 속성값 저장 해보기

이제 조\~금은 복잡한 내용에 대하여 알아볼 차례입니다.😏\
차근차근, 하나씩 같이 해보도록 해요.

인터랙티브 스토리에서 인터랙티비티를 만들기 위해 가장 필수이자 중요한 요소!

바로 <mark style="color:purple;">**`[속성값]`**</mark>입니다.

***

예를 들어 **소개팅**을 하는 작품을 만들어 본다고 가정해보죠. \
속성값을 활용해 플레이어의 **선택**에 따라 **호감도가 늘어나거나, 줄어들어서** 최종적으로 **애프터에 성공하는지 결정**되는 작품을 만들 수 있겠습니다.

또한 사건을 해결하거나 어딘가에서 탈출해야 하는 **추리/스릴러** 작품을 만들 때라면, \
플레이어의 선택에 따라 범인 검거가 가능할 수도, 탈출에 성공하는 엔딩에 도달할 수도 있겠죠?

<mark style="background-color:purple;">이 때 바로 그 결과를 달라지게 할 수 있는 것이 바로</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">**\[속성값]**</mark> <mark style="background-color:purple;"></mark><mark style="background-color:purple;">입니다.</mark>

***

우리는 선택지에 속성값을 더하거나 빼서, 플레이어마다 각자 얻는 수치와 엔딩을 다르게 만들어 볼 거예요. \
(미연시 게임의 호감도, RPG 게임의 체력, 민첩, 힘 등의 스테이터스를 생각해보세요!)

아직 감이 잘 안 잡히신다고요? 걱정 마세요. 전혀 어렵지 않습니다!😊&#x20;

우선, 이 속성값을 설정하는 방법은 두 가지가 있는데요.

***

### **첫 번째 방법 : \[속성값 저장] 활용하기**

우선 대사 입력창 하단의 **\[속성값 저장]**&#xC744; 선택해 봅니다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2F4Wo8dGktsyRH6IQ8j6ir%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202022-11-11%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%205.06.59.png?alt=media&#x26;token=3a9d310b-47e0-4214-a00b-a29affca6ef7" alt=""><figcaption></figcaption></figure>

\[속성값 저장] 이라는 팝업이 뜨죠?\
자... 천천히 따라와주세요!

❶ 일반이라고 적힌 토글창을 내려보면... 이렇게!

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FMG7dPzFNmQNjdQTw1OWh%2F%E1%84%89%E1%85%B3%E1%84%8F%E1%85%B3%E1%84%85%E1%85%B5%E1%86%AB%E1%84%89%E1%85%A3%E1%86%BA%202024-03-28%20%E1%84%8B%E1%85%A9%E1%84%8C%E1%85%A5%E1%86%AB%2011.01.00.png?alt=media&#x26;token=76be233d-ff10-44cb-a269-b7c901429bc0" alt=""><figcaption></figcaption></figure>

**\[일반]/\[내 수치]/\[아이템]** 의 **세 가지 선택지가 있는 콤보 박스**가 나타납니다.

자, 이 세 가지 속성값에 대해 설명해 드릴게요!

* **일반** : 사용자에게 드러나지 않는 속성값입니다. 사용자에게 알리지 않고, 내용을 분기하고 싶을 때 사용됩니다.
* **내 수치** : 사용자에게 보이는 속성값입니다. 인앱에서는 "공략포인트"로 노출됩니다.
* **아이템** : 사용자에게 보이며, 아이템 획득/상실에 해당하는 UI 가 토스트로 나타납니다.

❷ 콤보 박스를 선택한 후, \
두 번째 입력창에서는 **이미 만들어진 속성값** 또는 새로운 속성을 만들 수 있습니다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FK8jK9yLt9uektXOXrJJH%2Fimage.png?alt=media&#x26;token=acc0651a-6bd3-4756-818b-5eb065f8f165" alt=""><figcaption></figcaption></figure>

새로운 속성을 만들 때는 아래 이미지처럼 **\[OOO 속성 만들기]** 를 선택하세요.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2Fcgbo3dj5wtQ7VCg6mpev%2Fimage.png?alt=media&#x26;token=fcec0df6-7355-4b1e-be03-359fb027f063" alt=""><figcaption><p>속성값을 새롭게 정의합니다.</p></figcaption></figure>

새롭게 속성값을 정의할 때는 속성값의 이미지와 설명 등을 추가할 수도 있습니다. \
이러한 값들은 **사용자에게 보여지는&#x20;**<mark style="color:purple;">**\[내 수치]**</mark>**인 경우에만 유의미**하니 기억해주세요.&#x20;

향후에 이 내용을 수정하고 싶으실 때에는 좌측의 \[속성 관리]메뉴를 통해서 하실 수 있어요. (아래 이미지를 참고해주세요!)

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FvrRy22CaYNXCtMtcSee6%2F%E1%84%89%E1%85%A9%E1%86%A8%E1%84%89%E1%85%A5%E1%86%BC%E1%84%80%E1%85%AA%E1%86%AB%E1%84%85%E1%85%B5.png?alt=media&#x26;token=fd366166-6800-4154-a2bf-0ff6e74798a9" alt=""><figcaption></figcaption></figure>

❸ 세 번째 입력창은 = (설정), + (더하기) 옵션을 선택합니다.&#x20;

***

<mark style="color:yellow;">**⚠️**</mark><mark style="color:red;">**‼️ 중요 ‼️**</mark><mark style="color:yellow;">**⚠️**</mark>

* 이콜(=)을 선택하면 기존의 값이 몇인지 관계없이 해당 값으로 변경됩니다. (=) 이후의 값으로 리셋되는 형태입니다.
  * 따라서, 이전에 얻었던 값을 유지한 채 값을 추가로 더하고 싶다면 꼭 (=)이 아닌 (+)로 설정해주세요!
* 플러스(+)를 선택하면 현재 속성값에 더해주게 됩니다.
* 값을 빼고 싶다면 + 선택 후 음수(-)를 입력하면 됩니다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FTeZtpfKrnIgZZnmsIeB6%2Fimage.png?alt=media&#x26;token=6bed9377-d487-4621-8773-94ca415672a5" alt=""><figcaption></figcaption></figure>

***

이렇게 설정한 **\[속성값 저장]** 문장을 추가하면 블록 에디터에 다음과 같이 표시됩니다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2Fz69BdbDnSSjKcWQQFGLW%2Fimage.png?alt=media&#x26;token=b1a3acea-32c7-4de6-af2b-75eecd8d2411" alt=""><figcaption></figcaption></figure>

플레이어가 해당 지점을 지날 때, **속성값이 설정대로 변경됩니다**.

***

### **두 번째 방법 :** \[선택지] 내에 속성값 저장하기

이번엔 조금 다른 방법입니다. 만들어 둔 선택지에서 바로 속성값을 저장하는 형태예요.

자, 만들어둔 선택지의 수정 버튼을 눌러볼까요?

❶ 그리고 아래 이미지를 참고해, **\[+ 선택지에 저장할 속성 추가]**&#xB97C; 클릭해 봅시다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FRzKUZxh9Hq4hhAZaa469%2F35.png?alt=media&#x26;token=7675118f-d3a9-47bf-a97f-3a5f8a249673" alt=""><figcaption></figcaption></figure>

❷ \[속성값 저장]에서 보았던 것과 동일한 형태로 기입하게 되어 있네요! 따라서, 같은 방법으로 속성값을 선택하고 수치를 입력해 설정해주시면 됩니다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FMVfyEUTxwfzDAXUV0X9K%2F36.png?alt=media&#x26;token=0d99567e-644e-4966-a4ef-3506a962cb58" alt=""><figcaption></figcaption></figure>

속성값을 추가로 한 번 만들어 볼게요.

‘위험도’라는 속성을 \[내 수치]가 아닌 \[일반 속성]으로 새로 생성하려고 하니, \[속성 타입] 이라는 게 보이네요. 눌러보면, \[숫자]와 \[텍스트]가 존재합니다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FdBk69ydecl5IpnXdhFCo%2F37.png?alt=media&#x26;token=a58636f0-fae7-4d24-865f-210ed2941422" alt=""><figcaption></figcaption></figure>

말 그대로 내가 만드는 속성을 숫자, 즉 수치로 정의할 지 텍스트, 즉 글자 자체로 정의할 지를 선택하는 겁니다.

* 속성 타입을 숫자로 정의한다면 가장 일반적인 수치에 대한 증감을 설정할 수 있고, 텍스트로 정의한다면 수치 증감으로서의 기능이 불가능합니다.
* 텍스트로의 정의는 해당 속성을 가지고 있음/가지고 있지 않음 정도로 정의할 수 있어요.
* 추가로, \[내 수치] 즉, \[공략포인트]로서의 속성은 무조건 \[숫자]로만 정의할 수 있습니다.

그럼 일반적인 방법인 \[숫자]로 정의 후 선택지에 속성값을 저장해 봅시다.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FPGimdl0gqP7KiAOiutwE%2F38.png?alt=media&#x26;token=545d02b6-2fb1-4cb2-962b-323634698d2b" alt=""><figcaption></figcaption></figure>

이렇게, 선택지 아래에 저장한 속성값이 들어가 있는 걸 보실 수 있죠?

***

여기서 이런 의문이 드실 수도 있을 것 같아요.

*<mark style="color:red;">**⁉️**</mark>**\[속성값 저장]과 \[선택지에 속성 저장], 어떤 차이가 있나요?***

결론은… **수치를 변화시키는 데에는 큰 차이 없다!** 입니다.

선택지를 통한 선택에 따라 플레이어가 얻는 속성값이 변하게 되는 것이 일반적인데요.

작품에 따라, 그리고 장르에 따라 플레이어가 예상할 수 없는 곳에서 속성값이 변하는 경우가 재미 포인트로 작용할 때가 있어요.&#x20;

예컨대 추리물이라면, 작품 시작과 동시에 \[체력]이라는 속성값을 =100으로 미리 설정해두고, 점차 플레이가 진행될수록 해당 속성값을 깎거나 유지해 나갈 수 있겠죠?

이럴 때 \[속성값 저장] 방법을 활용해주시면 좋습니다.

***

참고로,

아래는 **\[내 수치]** 에 설정된 값을 앱에서 확인한 모습입니다. (발행 후 앱에서 아래와 같이 보입니다.)

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2F84s8n6RszcJpKaV9DSul%2FIMG_5229.jpg?alt=media&#x26;token=c5b7cb17-5b8d-4dc9-8beb-1307d826ee3f" alt=""><figcaption></figcaption></figure>

***

자! 다시 돌아와서, \
그럼 작가님께서 저장하신 속성값, 즉 공략 포인트(=내 수치)를 플레이어는 어떻게 인지해 공략에 따라 작품을 플레이 하게 될 수 있을까요?

이제 그 방법에 대해 알아봅시다.

우리는 여기서 <mark style="color:purple;">**`[토스트]`**</mark> 라는 기능을 활용할 거예요.

일단, 토스트에 대해 설명 드려야겠네요!&#x20;

**토스트는&#x20;**<mark style="color:purple;">**독자에게 계속 작품을 읽게 만드는 전지적 시점의 평가**</mark>입니다.

중간에 **게임 시스템창**처럼 **뿅!** 하고 나타나는 것이 바로 **토스트**에요. **선택지**를 고를 때마다 토스트를 배치해서 **즉각적인 평가**를 얻도록 합니다.

***

스튜디오 하단, 편집기에서 **\[토스트]** 를 클릭해보세요.

<div align="left"><figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FsAq7DMXDob4nlEed5Y73%2F39.png?alt=media&#x26;token=689a159d-2096-413b-b9de-2d9fdf47d5a1" alt=""><figcaption></figcaption></figure></div>

원하는 **아이콘**을 선택해 내용을 입력한 뒤, 완료를 눌러봅니다.

<div align="left"><figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FFmYXocApmhhbkmnUfmVY%2F40.png?alt=media&#x26;token=c0c930ad-f23a-45e9-8f01-94fe85c778ba" alt="" width="375"><figcaption></figcaption></figure></div>

참고로,\
토스트 아이콘은 토스트의 내용에 따라 **일관성 있게 통일**해주시는 것을 추천드립니다.&#x20;

\
별 거 아닌 것 같지만, 작은 요소들이 작품의 전체적인 완성도를 결정하곤 해요.

***

완료를 눌러보면, 스크립트 안에 이렇게 둥근 네모 형태로 토스트가 생긴 것을 확인해보실 수 있어요.

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2Fp2vGMJmO6Eel94y1bqsD%2F41.png?alt=media&#x26;token=c9335c25-737f-4ea5-b9e8-b49289404fd8" alt=""><figcaption></figcaption></figure>

앱에서 실제 플레이 할 때는, 약한 진동과 함께 토스트가 약 3초간 팝업 되었다가 사라집니다.

***

<mark style="color:yellow;">**⚠️**</mark> <mark style="color:red;">**‼️ 중요 ‼️**</mark><mark style="color:yellow;">**⚠️**</mark>

* <mark style="color:purple;">**속성값 증감**</mark> 시, 특별한 경우를 제외하고는 <mark style="color:purple;">**토스트로**</mark>**&#x20;**<mark style="color:red;">**반드시**</mark>**&#x20;**<mark style="color:purple;">**안내해주세요.**</mark>
  * 예시)

    * 시우 호감도 +10
    * 시우 호감도 +0

* 토스트는 <mark style="color:purple;">**`[주인공의 행동이나 생각] 상대의 반응`**</mark> 과 같은 구조로 작성해주세요.
  * 예시)

    * \[현명한 대답] 상사는 당신의 대답에 흡족해합니다.
    * \[어설픈 행동] 상사는 당신의 행동에 인상을 찡그렸습니다.
    * \[질투?] 애인은 당신의 말에 입술을 삐죽 내밀었습니다.

* \[주인공의 행동이나 생각] 부분이 없는 <mark style="color:purple;">**단순 상황 설명 토스트의 경우**</mark>에도 \
  상대나 상황이 보기에 주인공의 선택이 적절했는지, 부적절했는지, \ <mark style="color:purple;">**선택의 결과를 짚어주는 용도**</mark>로 토스트를 작성해야 합니다.
  * 예시)

    * 상대는 당신의 말에 함박웃음을 지었습니다.
    * 상대는 당신의 태도에 고개를 가로저었습니다.

* <mark style="color:purple;">**부정적인 내용**</mark>의 토스트는 <mark style="color:purple;">**너무 노골적이지 않도록**</mark> 작성합니다.
  * 예시)

    * \[부적절한 태도] 상대는 당신의 태도에 침묵을 지켰습니&#xB2E4;**.** \
      → 적당히 잘못되었다는 느낌을 주되, 기분이 상하지 않게

* 토스트는 일반 대사, 지문과 달리 일정 시간 후에는 스크롤을 올려서 다시 확인할 수 없습니다. (약 3초간 팝업 되었다가 사라지기 때문이에요.)

* 만약, 지문에서 속성값의 숫자를 알려주고 싶다면, 아래와 같은 문법을 **\[지문]**&#xC5D0; 작성해주세요!
  * <mark style="color:purple;">**`{{속성:속성 이름}}`**</mark> ex) {{속성:돈}}

<div align="center"><figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2Fo4wDb5jv8gKUb8BpQnS7%2F42.png?alt=media&#x26;token=c39bf35e-b43f-44e2-a590-0bca4792a9d1" alt="" width="375"><figcaption><p>입력 후 엔터를 눌러주세요.</p></figcaption></figure></div>

<div align="center"><figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FOjNsV4K0F2jAjoyxR7PD%2F43.jpeg?alt=media&#x26;token=3419552e-64b6-4552-b598-67ff7dffc6b4" alt="" width="375"><figcaption><p>실제 플레이에서는 이렇게 보입니다.</p></figcaption></figure></div>

***

<figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FFfstMc65iaZMdp3EOYuk%2F44.png?alt=media&#x26;token=91c222b9-5bb6-47f0-bb29-5b7c8f97d8dc" alt="" width="375"><figcaption><p>조금 더 응용해 볼까요? 입력 후 엔터를 눌러주세요.</p></figcaption></figure>

<div align="center"><figure><img src="https://3273553451-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHiuFFh8Ohur05zPKAeSM%2Fuploads%2FumJ5wFvdaokzbwi3Di6M%2F45.jpeg?alt=media&#x26;token=5ef427f4-8575-4929-a9ca-fe87ed412c9c" alt="" width="375"><figcaption><p>실제 플레이에서는 이렇게 보입니다.</p></figcaption></figure></div>
