h1. ShopProductCash -------------------------------------------------- h2. 개요 - 과금 화폐 상품의 종류와 가격을 정의하는 데이터시트다. - [[Datascript_ShopProduct|ShopProduct]] 데이터시트와 거의 유사한 데이터 구조를 가지고 있으나, 현실 통화(Currency)를 다뤄야 하는 점 때문에 데이터시트가 분리되었다. -------------------------------------------------- h2. [1] Read h3. 형식 - 적용 대상 : 툴 - 자료형 : bool h3. 설명 툴에서 해당 줄의 데이터들을 읽어들일지 아닐지 결정한다. 다음 값들을 사용할 수 있다. *TRUE* : 툴은 그 줄의 데이터를 읽는다. *FALSE* : 툴은 그 줄의 데이터를 읽어들이지 않는다. 툴은 데이터시트에서 읽어들인 줄의 데이터들로만 데이터 스크립트를 제작한다. 따라서, 이 필드를 이용해서 특정한 줄의 데이터들을 선택적으로 게임에 적용하거나, 혹은 적용하지 않게 만드는 데 쓸 수 있다. 예를 들어, 데이터시트에 테스트를 위해 임시로 넣은 데이터가 많은데, 이런 기능이 없는 경우, 게임에 빌드를 하기 위해서는 테스트 데이터를 그대로 사용하든가 아니면 제거해야 한다. 그런데 작업 경과에 따라 이제까지의 작업이 아깝거나, 게임 빌드 이후에 또 실험하던 데이터를 써야하는 등의 갖가지 이유 때문에 게임 빌드에 적용할 동안만 '잠시 툴이 특정 줄들의 데이터를 읽지 못하게' 하고 싶을 수 있다. 이 필드는 그런 경우에 사용할 수 있다. -------------------------------------------------- h2. [2] Comment h3. 형식 - 적용 대상 : 툴 - 자료형 : string h3. 설명 편집하는 사용자에게, 현재 편집하는 줄이 무엇을 위한 데이터인지 알려주는 주석을 적는 공간이다. 따라서 대부분은 순전히 데이터시트를 편집하는 사람의 편의를 위한 필드이기 때문에, 툴에서 데이터 스크립트로 변환할 때 이 필드의 값은 무시한다. 이 필드에 들어가야 하는 값에 대한 규칙도 특별히 존재하지 않는다. 다만, 소스 파일에 데이터 값을 상수로 정의하여 내보내는 경우, Comment 필드의 값은, 소스 코드에서 해당 상수의 역할을 설명하는 주석문으로 사용한다. -------------------------------------------------- h2. [3] General_Type_Code h3. 형식 - 적용 대상 : 공통 - 자료형 : EodGTC(primitive) h3. 설명 현재 줄의 GTC의 값을 정의하는 필드다. 일반 타입 식별 코드(General Type Code)는 게임 내에서 종류를 구분할 필요가 있는 객체들 사이에서, 종류를 식별하는 키로써 사용하는 번호다. 종종 GTC라는 약어로써 표현한다. GTC를 정의하는 본래의 형식은 32비트 정수 타입이다. 따라서 이 필드에는 숫자로 GTC를 정의해야 한다. GTC와 관련한 상세한 내용은 프로젝트의 명세서에서 참고하기 바란다. -------------------------------------------------- h2. [4] GTC_Key h3. 형식 - 적용 대상 : 툴 - 자료형 : EodGTC(key define) h3. 설명 필드의 문자열 식별키를 정의한다. GTC는 숫자이기 때문에, 컴퓨터의 입장에서는 처리가 쉽고 속도도 빠르지만, 사람이 알아보기에는 쉽지 않다. 특히, 숫자가 많은 자릿수를 가지고 있을수록 더욱 그렇다. 이런 문제를 해소하기 위한 가장 좋은 방법은, 같은 GTC에 대해 사람은 문자열로, 컴퓨터는 숫자로 처리할 수 있도록 "자동으로" 연결해주는 기능을 만드는 것이다. 필드는 그러한 기능을 제공하기 위해 추가한 필드이다. 즉, 이 필드가 있기 때문에, 사람이 데이터시트를 편집하면서 다른 데이터시트의 GTC 참조 값을 필드에 넣어야 할 경우, 에서 정의하는 숫자 값으로 참조하는 대신, 이 필드의 문자 값으로 참조 값을 넣을 수 있다. 데이터 스크립트 생성 툴에서 이 데이터시트를 읽을 때, 이 필드에 정의한 문자열 값과 필드의 GTC 값을 연관짓는 사전(Dictionary) 객체를 생성한다. 이 사전 객체는 데이터시트 -> 데이터 스크립트 (+ 소스 파일) 변환 과정이 일어나는 동안 지워지지 않고 유지한다. 툴이 데이터시트들을 변환할 때, GTC를 (본래의 값인)숫자 대신 [4] GTC_Key에 정의한 문자열 값으로 링크하는 필드들을 발견하면, 그 GTC 문자열 키를 GTC의 본래 값인 숫자형으로 변환해서 데이터 스크립트를 작성해야 한다. 그 때, GTC 숫자 <-> GTC 문자 관계를 정의한 사전 객체를 이용해서 GTC 문자 키 -> GTC 숫자 변환을 수행한다. 데이터시트만 봐서는 GTC의 참조를 문자열 키로 하는 셈이지만, 실제로 게임에 탑재하는 데이터 스크립트에는 GTC의 본래 타입인 32비트 정수 값으로 툴이 자동으로 변환해서 넣어준다. -------------------------------------------------- h2. [5] Product_Item_Code h3. 형식 - 적용 대상 : 공통 - 자료형 : EodGTC : key_reference : Item h3. 설명 상품이 되는 아이템의 식별 코드. 플레이어가 값을 지불하고서 구매하는 아이템이다. 이 값은 [Item] 데이터시트의 필드에서 정의한 값이어야 한다. -------------------------------------------------- h2. [6] Selling_Unit h3. 형식 - 적용 대상 : 공통 - 자료형 : int h3. 설명 상품을 판매하는 수량 단위 -------------------------------------------------- h2. [7] Currency_Type h3. 형식 - 적용 대상 : 공통 - 자료형 : enum : short : Eod.Define.Localization.eCurrency h3. 설명 현실 통화의 타입. ISO 4217:2008 Codes for the representation of currencies and funds (통화와 기금의 표기법을 위한 코드)의 명칭을 따른다. 모든 단위의 현실 통화를 사용할 수 있는 건 아니다. 게임 애플리케이션을 서비스하는 지역과 마켓의 정책에 맞는 통화값을 사용해야 한다. 다음 값들을 사용할 수 있다. * Lek = 008 --> Albanian Lek [ ALL ] * Algerian_Dinar = 012 --> Algerian Dinar [ DZD ] * Argentine_Peso = 032 --> Argentine Peso [ ARS ] * Australian_Dollar = 036 --> Australian Dollar [ AUD ] * Bahamian_Dollar = 044 --> Bahamian Dollar [ BSD ] * Bahraini_Dinar = 048 --> Bahraini Dinar [ BHD ] * Taka = 050 --> Bangladeshi Taka [ BDT ] * Armenian_Dram = 051 --> Armenian Dram [ AMD ] * Barbados_Dollar = 052 --> Barbados Dollar [ BBD ] * Bermudian_Dollar = 060 --> Bermudian Dollar [ BMD ] * Ngultrum = 064 --> Bhutanese Ngultrum [ BTN ] * Boliviano = 068 --> Boliviano [ BOB ] * Pula = 072 --> Botswana Pula [ BWP ] * Belize_Dollar = 084 --> Belize Dollar [ BZD ] * Solomon_Islands_Dollar = 090 --> Solomon Islands Dollar [ SBD ] * Brunei_Dollar = 096 --> Brunei Dollar [ BND ] * Kyat = 104 --> Myanmar Kyat [ MMK ] * Burundi_Franc = 108 --> Burundian Franc [ BIF ] * Riel = 116 --> Cambodian Riel [ KHR ] * Canadian_Dollar = 124 --> Canadian Dollar [ CAD ] * Cabo_Verde_Escudo = 132 --> Cape Verde Escudo [ CVE ] * Cayman_Islands_Dollar = 136 --> Cayman Islands Dollar [ KYD ] * Sri_Lanka_Rupee = 144 --> Sri Lankan Rupee [ LKR ] * Chilean_Peso = 152 --> Chilean Peso [ CLP ] * Yuan_Renminbi = 156 --> Chinese Yuan [ CNY ] * Colombian_Peso = 170 --> Colombian Peso [ COP ] * Comoro_Franc = 174 --> Comoro [ KMF ] * Costa_Rican_Colon = 188 --> Costa Rican Colon [ CRC ] * Kuna = 191 --> Croatian Kuna [ HRK ] * Cuban_Peso = 192 --> Cuban Peso [ CUP ] * Czech_Koruna = 203 --> Czech koruna [ CZK ] * Danish_Krone = 208 --> Danish krone [ DKK ] * Dominican_Peso = 214 --> Dominican Peso [ DOP ] * El_Salvador_Colon = 222 --> El Salvador Colon [ SVC ] * Ethiopian_Birr = 230 --> Ethiopian Birr [ ETB ] * Nakfa = 232 --> Eritrean Makfa [ ERN ] * Falkland_Islands_Pound = 238 --> Falkland Islands Pound [ FKP ] * Fiji_Dollar = 242 --> Fiji Dollar [ FJD ] * Djibouti_Franc = 262 --> Djiboutian Franc [ DJF ] * Dalasi = 270 --> Gambian Dalasi [ GMD ] * Gibraltar_Pound = 292 --> Gibraltar Pound [ GIP ] * Quetzal = 320 --> Guatemalan Quetzal [ GTQ ] * Guinea_Franc = 324 --> Guinean Franc [ GNF ] * Guyana_Dollar = 328 --> Guyanese Dollar [ GYD ] * Gourde = 332 --> Haitian Gourde [ HTG ] * Lempira = 340 --> Honduran Lempira [ HNL ] * Hong_Kong_Dollar = 344 --> Hong Kong Dollar [ HKD ] * Forint = 348 --> Hungarian Forint [ HUF ] * Iceland_Krona = 352 --> Icelandic Krona [ ISK ] * Indian_Rupee = 356 --> Indian Rupee [ INR ] * Rupiah = 360 --> Indonesian Rupiah [ IDR ] * Iranian_Rial = 364 --> Iranian Rial [ IRR ] * Iraqi_Dinar = 368 --> Iraqi Dinar [ IQD ] * New_Israeli_Sheqel = 376 --> Israeli new shekel [ ILS ] * Jamaican_Dollar = 388 --> Jamaican Dollar JMD ] * Yen = 392 --> Japanese Yen [ JPY ] * Tenge = 398 --> Kazakhstani Tenge [ KZT ] * Jordanian_Dinar = 400 --> Jordanian Dinar [ JOD ] * Kenyan_Shilling = 404 --> Kenyan Shilling [ KES ] * North_Korean_Won = 408 --> North Korean Won [ KPW ] * Won = 410 --> South Korean Won [ KRW ] * Kuwaiti_Dinar = 414 --> Kuwaiti Dinar [ KWD ] * Som = 417 --> Kyrgyzstani Som [ KGS ] * Kip = 418 --> Lao Kip [ LAK ] * Lebanese_Pound = 422 --> Lebanese Pound [ LBP ] * Loti = 426 --> Lesotho Loti [ LSL ] * Liberian_Dollar = 430 --> Liberian Dollar [ LRD ] * Libyan_Dinar = 434 --> Libyan Dinar [ LYD ] * Pataca = 446 --> Macanese Pataca [ MOP ] * Kwacha = 454 --> Malawian Kwacha [ MWK ] * Malaysian_Ringgit = 458 --> Malaysian Ringgit [ MYR ] * Rufiyaa = 462 --> Maldivian Rufiyaa [ MVR ] * Ouguiya = 478 --> Mauritanian Ouguiya [ MRO ] * Mauritius_Rupee = 480 --> Mauritian Rupee [ MUR ] * Mexican_Peso = 484 --> Mexican Peso [ MXN ] * Tugrik = 496 --> Mongolian Tugrik [ MNT ] * Moldovan_Leu = 498 --> Moldovan Leu [ MDL ] * Moroccan_Dirham = 504 --> Moroccan Dirham [ MAD ] * Rial_Omani = 512 --> Omani Rial [ OMR ] * Namibia_Dollar = 516 --> Namibian Dollar [ NAD ] * Nepalese_Rupee = 524 --> Nepalese Rupee [ NPR ] * Netherlands_Antillean_Guilder = 532 --> Netherlands Antillean Guilder [ ANG ] * Aruban_Florin = 533 --> Aruban Florin [ AWG ] * Vatu = 548 --> Vanuatu Vatu [ VUV ] * New_Zealand_Dollar = 554 --> New Zealand Dollar [ NZD ] * Cordoba_Oro = 558 --> Nicaraguan Córdoba [ NIO ] * Naira = 566 --> Nigerian Naira [ NGN ] * Norwegian_Krone = 578 --> Norwegian Krone [ NOK ] * Pakistan_Rupee = 586 --> Pakistani Rupee [ PKR ] * Balboa = 590 --> Panamanian Balboa [ PAB ] * Kina = 598 --> Papua New Guinean Kina [ PGK ] * Guarani = 600 --> Paraguayan Guaran [ PYG ] * Nuevo_Sol = 604 --> Peruvian Nuevo Sol [ PEN ] * Philippine_Peso = 608 --> Philippine Peso [ PHP ] * Qatari_Rial = 634 --> Qatari Riyal [ QAR ] * Russian_Ruble = 643 --> Russian Ruble [ RUB ] * Rwanda_Franc = 646 --> Rwandan Franc [ RWF ] * Saint_Helena_Pound = 654 --> Saint Helena Pound [ SHP ] * Dobra = 678 --> São Tomé And Príncipe Dobra [ STD ] * Saudi_Riyal = 682 --> Saudi Riyal [ SAR ] * Seychelles_Rupee = 690 --> Seychelles Rupee [ SCR ] * Leone = 694 --> Sierra Leonean Leone [ SLL ] * Singapore_Dollar = 702 --> Singapore Dollar [ SGD ] * Dong = 704 --> Vietnamese Dong [ VND ] * Somali_Shilling = 706 --> Somali Shilling [ SOS ] * Rand = 710 --> South African Rand [ ZAR ] * South_Sudanese_Pound = 728 --> South Sudanese Pound [ SSP ] * Lilangeni = 748 --> Swazi Lilangeni [ SZL ] * Swedish_Krona = 752 --> Swedish Krona/Kronor [ SEK ] * Swiss_Franc = 756 --> Swiss Franc [ CHF ] * Syrian_Pound = 760 --> Syrian Pound [ SYP ] * Baht = 764 --> Thai Baht [ THB ] * Paanga = 776 --> Tongan Paanga [ TOP ] * Trinidad_and_Tobago_Dollar = 780 --> Trinidad and Tobago Dollar [ TTD ] * UAE_Dirham = 784 --> United Arab Emirates Dirham [ AED ] * Tunisian_Dinar = 788 --> Tunisian Dinar [ TND ] * Uganda_Shilling = 800 --> Ugandan Shilling [ UGX ] * Denar = 807 --> Macedonian Denar [ MKD ] * Egyptian_Pound = 818 --> Egyptian Pound [ EGP ] * Pound_Sterling = 826 --> Pound Sterling [ GBP ] * Tanzanian_Shilling = 834 --> Tanzanian Shilling [ TZS ] * US_Dollar = 840 --> United States Dollar [ USD ] * Peso_Uruguayo = 858 --> Uruguayan Peso [ UYU ] * Uzbekistan_Sum = 860 --> Uzbekistan Som [ UZS ] * Tala = 882 --> Samoan Tala [ WST ] * Yemeni_Rial = 886 --> Yemeni Rial [ YER ] * New_Taiwan_Dollar = 901 --> New Taiwan Dollar [ TWD ] * Peso_Convertible = 931 --> Cuban Convertible Peso [ CUC ] * Zimbabwe_Dollar = 932 --> Zimbabwe Dollar [ ZWL ] * Turkmenistan_New_Manat = 934 --> Turkmenistani Manat [ TMT ] * Ghana_Cedi = 936 --> Ghanaian Cedi [ GHS ] * Bolivar = 937 --> Venezuelan Bolívar [ VEF ] * Sudanese_Pound = 938 --> Sudanese Pound [ SDG ] * Uruguay_Peso_En_Unidades_Indexadas = 940 --> Uruguay Peso En Unidades Indexadas (URUIURUI) (funds code) [ UYI ] * Serbian_Dinar = 941 --> Serbian Dinar [ RSD ] * Mozambique_Metical = 943 --> Mozambican Metical [ MZN ] * Azerbaijanian_Manat = 944 --> Azerbaijani Manat [ AZN ] * Romanian_Leu = 946 --> Romanian Leu [ RON ] * WIR_Euro = 947 --> WIR Euro (complementary currency) [ CHE ] * WIR_Franc = 948 --> WIR Franc (complementary currency) [ CHW ] * Turkish_Lira = 949 --> Turkish Lira [ TRY ] * CFA_Franc_BEAC = 950 --> CFA Franc BEAC [ XAF ] * East_Caribbean_Dollar = 951 --> East Caribbean dollar [ XCD ] * CFA_Franc_BCEAO = 952 --> CFA Franc BCEAO [ XOF ] * CFP_Franc = 953 --> CFP Franc (franc Pacifique) [ XPF ] * Bond_Markets_Unit_European_Composite_Unit = 955 --> European Composite Unit (EURCO) (bond market unit) [ XBA ] * Bond_Markets_Unit_European_Monetary_Unit = 956 --> European Monetary Unit (E.M.U.-6) (bond market unit) [ XBB ] * Bond_Markets_Unit_European_Unit_Of_Account_9 = 957 --> European Unit Of Account 9 (E.U.A.-9) (bond market unit) [ XBC ] * Bond_Markets_Unit_European_Unit_Of_Account_17 = 958 --> European Unit Of Account 17 (E.U.A.-17) (bond market unit) [ XBD ] * Gold = 959 --> Gold (one troy ounce) [ XAU ] * Special_Drawing_Right = 960 --> Special Drawing Rights [ XDR ] * Silver = 961 --> Silver (one troy ounce) [ XAG ] * Platinum = 962 --> Platinum (one troy ounce) [ XPT ] * Codes_Specifically_Reserved_For_Testing_Purposes = 963 --> Code Reserved For Testing Purposes [ XTS ] * Palladium = 964 --> Palladium (one troy ounce) [ XPD ] * ADB_Unit_Of_Account = 965 --> ADB Unit of Account [ XUA ] * Zambian_Kwacha = 967 --> Zambian Kwacha [ ZMW ] * Surinam_Dollar = 968 --> Surinamese Dollar [ SRD ] * Malagasy_Ariary = 969 --> Malagasy Ariary [ MGA ] * Unidad_de_Valor_Real = 970 --> Unidad de Valor Real (UVR) (funds code) [ COU ] * Afghani = 971 --> Afghan Afghani [ AFN ] * Somoni = 972 --> Tajikistani Somoni [ TJS ] * Kwanza = 973 --> Angolan Kwanza [ AOA ] * Belarussian_Ruble = 974 --> Belarusian Ruble [ BYR ] * Bulgarian_Lev = 975 --> Bulgarian Lev [ BGN ] * Congolese_Franc = 976 --> Congolese Franc [ CDF ] * Convertible_Mark = 977 --> Bosnia And Herzegovina Convertible Mark [ BAM ] * Euro = 978 --> Euro [ EUR ] * Mexican_Unidad_De_Inversion = 979 --> Mexican Unidad De Inversion (UDI) (funds code) [ MXV ] * Hryvnia = 980 --> Ukrainian Hryvnia [ UAH ] * Lari = 981 --> Georgian Lari [ GEL ] * Mvdol = 984 --> Bolivian Mvdol (funds code) [ BOV ] * Zloty = 985 --> Polish Złoty [ PLN ] * Brazilian_Real = 986 --> Brazilian Real [ BRL ] * Unidad_de_Fomento = 990 --> Unidad De Fomento (funds code) [ CLF ] * Sucre = 994 --> SUCRE XSU ] * US_Dollar_NextDay = 997 --> United States Dollar (next day) (funds code) [ USN ] -------------------------------------------------- h2. [8] Cost h3. 형식 - 적용 대상 : 서버 - 자료형 : int h3. 설명 지불해야 하는 현실 통화의 양. 과금 화폐는 무조건 현실 통화로만 구입해야 하므로, 따로 아이템 타입을 규정할 필요가 없다. -------------------------------------------------- h2. [9] Icon_Image_Code h3. 형식 - 적용 대상 : 클라이언트 - 자료형 : EodGTC : key_reference : Image h3. 설명 아이콘 이미지 데이터의 식별 코드. 이 값은 [[Datascript_Image|Image]] 데이터시트의 필드에서 정의한 값이어야 한다. -------------------------------------------------- h2. [10] Text_Code_Title h3. 형식 - 적용 대상 : 클라이언트 - 자료형 : EodGTC : key_reference : Text h3. 설명 제목 UI에 적용할 텍스트 데이터의 식별 코드. 이 값은 [[Datascript_Text|Text]] 데이터시트의 필드에서 정의한 값이어야 한다. -------------------------------------------------- h2. [11] Text_Code_Description h3. 형식 - 적용 대상 : 클라이언트 - 자료형 : EodGTC : key_reference : Text h3. 설명 설명창 UI에 적용할 텍스트 데이터의 식별 코드. 이 값은 [[Datascript_Text|Text]] 데이터시트의 필드에서 정의한 값이어야 한다.