msw-ai-tf/maplestory-worlds-creator-docs huggingface dataset:
MapLayerComponent

Manages information for each layer of the map.

# Properties

[{"index":"boolean IsVisible (ReadOnly) (HideFromInspector)","0":"Indicates whether the layer is rendered or not. Invisible in the Maker scene if false."}]

[{"index":"int32 LayerSortOrder (ReadOnly)","0":"The priority order of the layers. Smaller values are drawn in lower layers and behind them."}]

[{"index":"boolean Locked (ReadOnly) (HideFromInspector)","0":"Indicates whether the layer is locked. The maker prevents editing when locked."}]

[{"index":"string MapLayerName (ReadOnly)","0":"The name of the map layer."}]

##### inherited from Component:

[{"index":"boolean Enable (Sync)","0":"Checks whether Component is activated or not."}]

[{"index":"boolean EnableInHierarchy (ReadOnly) (HideFromInspector)","0":"Displays whether this Component is Enable in the hierarchy. If Entity Enable is false regardless of Component Enable, returns false."}]

[{"index":"Entity Entity (ReadOnly)","0":"The Entity that owns this component."}]

# Methods

##### inherited from Component:

[{"index":"boolean IsClient()","0":"Returns whether the current execution environment is a client or not."}]

[{"index":"boolean IsServer()","0":"Returns whether the current execution environment is a server or not."}]
RegexMatch

The result of a single match found using the regular expression.

# Properties

[{"index":"int32 Index (ReadOnly)","0":"Retrieves the first position index of the captured string from the origin string."}]

[{"index":"int32 Length (ReadOnly)","0":"Retrieves the length of the captured string."}]

[{"index":"string Name (ReadOnly)","0":"The name of the group."}]

[{"index":"boolean Success (ReadOnly)","0":"Returns the success status of the match operation."}]

[{"index":"string Text (ReadOnly)","0":"Retrieves the captured string."}]

# Methods

[{"index":"table GetCaptures()","0":"Retrieves all captures matched using capturing groups."}]

[{"index":"table GetGroups()","0":"Retrieves all groups matching the regular expression."}]

[{"index":"RegexMatch NextMatch()","0":"Starting from the character after the last match, retrieves the new RegexMatch and the result for the next match. If it fails, returns nil."}]

[{"index":"string Result(string replacement)","0":"Replaces a single match item with the specified substitution pattern and returns the result."}]

# SeeAlso

  * [Regular Expression Syntax](/docs?postId=1043)
  * [Regular Expressions](/docs?postId=1041)
SharedMemoryResultCode

This code indicates the result of processing requests related to shared memory.

# Members

[{"Name":"OK","Value":"0","Desc":"Request processing was successful."},{"Name":"Cancelled","Value":"1000000","Desc":"Your request has been cancelled."},{"Name":"InternalError","Value":"1000001","Desc":"An internal system error has occurred."},{"Name":"NotFound","Value":"1000002","Desc":"The requested value does not exist on the server."},{"Name":"BadRequest","Value":"1000003","Desc":"Invalid request."},{"Name":"TimedOut","Value":"1000004","Desc":"The request took a long time to process and failed."},{"Name":"ResourceExhausted","Value":"1000005","Desc":"Failed due to high request volume."},{"Name":"AlreadyExists","Value":"1000007","Desc":"The requested content already exists."},{"Name":"PreconditionFailed","Value":"1000008","Desc":"The information requested by the script does not match the information received from the server."},{"Name":"Unknown","Value":"2147483647","Desc":"An unknown error has occurred."}]

# Methods

[{"index":"SharedMemoryResultCode CastFrom(number value) (Static)","0":"Converts a number to the applicable type."}]

[{"index":"SharedMemoryResultCode CastFrom(string value) (Static)","0":"Converts a string to the applicable type."}]
SyncDictionary<K,V>

Use this hash table to save data to by key and value. Provides the function to add, remove, and search data and performs particularly well with searching. Each key must have a unique value. Empty values (nil) are not allowed. K represents the key type to be added to the hash table, and V represents the value type.

# Properties

[{"index":"number Count (ReadOnly)","0":"Gets the number of keys and values in the Dictionary."}]

[{"index":"table Keys (ReadOnly)","0":"Gets the table that includes the Dictionary keys."}]

[{"index":"table Values (ReadOnly)","0":"Gets the table that includes the Dictionary values."}]

# Methods

[{"index":"boolean ContainsKey(K key)","0":"Checks if the specified key is included in the Dictionary."}]

[{"index":"table ToTable()","0":"Generates a table that has the keys and values included in the Dictionary."}]

[{"index":"boolean, V TryGetValue(K key)","0":"Retrieves the specified key and the connected value."}]

[{"index":"void Add(K key, V value)","0":"Adds the specified key and value to the Dictionary."}]

[{"index":"void Clear()","0":"Removes all keys and values from the Dictionary."}]

[{"index":"void Remove(K key)","0":"Removes the specified key and connected value from the Dictionary."}]
CompositeNode

A node that can have multiple child nodes. Controls child nodes' functions.

# Properties

##### inherited from BTNode:

[{"index":"boolean ExclusiveExecutionWhenRunning (Deprecated)","0":"This property is deprecated."}]

[{"index":"func InitFunction","0":"Initialization calls this function."}]

[{"index":"string Name","0":"The name of the node."}]

[{"index":"AIComponent ParentAI (ReadOnly) (HideFromInspector)","0":"AIComponent to have the node."}]

# Methods

[{"index":"void AttachChild(BTNode node)","0":"Incorporates the node as a child."}]

[{"index":"void AttachChildAt(BTNode node, int32 index)","0":"Incorporates the node as a child at the index position. Index starts at 1."}]

[{"index":"boolean DetachChild(BTNode node)","0":"Detaches a child node."}]

[{"index":"boolean DetachChild(string nodeName)","0":"Finds and detaches nodeName child node."}]

[{"index":"void DetachChildAt(int32 index)","0":"Detaches the child node at index position. Index starts at 1."}]

##### inherited from BTNode:

[{"index":"BehaviourTreeStatus Behave(float deltaTime)","0":"Executes the node. The deltaTime refers to the duration between the previous frame and the current frame. Defined in seconds."}]
CanvasGroupComponent

Used to control an entire group of UI elements in one place.

# Properties

[{"index":"boolean BlocksRaycasts","0":"When it's set as true, the child UI can receive a screen touch or click input. The UI hidden behind will not receive the input."}]

[{"index":"float GroupAlpha","0":"Sets the child UI's transparency to a value between 0 and 1."}]

[{"index":"boolean Interactable","0":"Sets whether the child UI is interactive. If it's set as false, it will not operate even if it receives the user input."}]

##### inherited from Component:

[{"index":"boolean Enable (Sync)","0":"Checks whether Component is activated or not."}]

[{"index":"boolean EnableInHierarchy (ReadOnly) (HideFromInspector)","0":"Displays whether this Component is Enable in the hierarchy. If Entity Enable is false regardless of Component Enable, returns false."}]

[{"index":"Entity Entity (ReadOnly)","0":"The Entity that owns this component."}]

# Methods

##### inherited from Component:

[{"index":"boolean IsClient()","0":"Returns whether the current execution environment is a client or not."}]

[{"index":"boolean IsServer()","0":"Returns whether the current execution environment is a server or not."}]

# SeeAlso

  * [Basic UI Components](/docs?postId=744)
  * [Creating UI](/docs?postId=64)
PreloadResultStatus

Shows the resource load execution result value.

# Members

[{"Name":"UnknownError","Value":"-1","Desc":"An unknown error has occurred."},{"Name":"Success","Value":"0","Desc":"Resources loaded normally."},{"Name":"NotFound","Value":"1","Desc":"The requested resource can't be found."},{"Name":"InvalidRUID","Value":"2","Desc":"Invalid RUID."},{"Name":"InvalidRUIDFormat","Value":"3","Desc":"Invalid RUID format. An RUID must be 32 digits long."},{"Name":"InvalidResource","Value":"4","Desc":"An invalid resource has been loaded."},{"Name":"InvalidProtocol","Value":"5","Desc":"A resource request was made using an invalid protocol."},{"Name":"Timeout","Value":"6","Desc":"The resource load request timed out. Please try again later."},{"Name":"TypeMismatch","Value":"7","Desc":"A resource of a different type than the request was loaded."},{"Name":"Unauthorized","Value":"8","Desc":"A resource that you aren't authorized to use was requested."},{"Name":"NetworkError","Value":"9","Desc":"A temporary network error has occurred. Please try again later."}]

# Methods

[{"index":"PreloadResultStatus CastFrom(number value) (Static)","0":"Converts numbers to the applicable type."}]

[{"index":"PreloadResultStatus CastFrom(string value) (Static)","0":"Converts strings to the applicable type."}]
RigidbodyClimbableAttachStartEvent

This Event occurs before the Avatar climbs the ladder or rope.  
  
This event is triggered by the API below.

  * RigidbodyComponent (Space;Client)



# Properties

[{"index":"Entity AttachedEntity","0":"This is a ladder or rope Entity that an Avatar can ride on."}]

# Constructors

[{"index":"RigidbodyClimbableAttachStartEvent(Entity attachedEntity = nil)","0":"Initializes RigidbodyClimbableAttachStartEvent to the specified value."}]

# Examples

If the player entity has a SpriteRendererComponent among the child objects of the player entity when the player attaches to the ladder, this is an example of changing the layer of that component.
    
    
    @Component
    script ClimbableLayerSynchronizer extends Component
        @ExecSpace("ServerOnly")
        method void ChangedChildSortingLayer(Entity attachedEntity)
        for i, j in ipairs(self.Entity:GetChildComponentsByTypeName("SpriteRendererComponent"))  do
        	j.Entity.SpriteRendererComponent.SortingLayer =     attachedEntity.ClimbableSpriteRendererComponent.SortingLayer
        end
        end
    
        @EventSender("Self")
        handler HandleRigidbodyClimbableAttachStartEvent(RigidbodyClimbableAttachStartEvent event)
        -- Parameters
        local AttachedEntity = event.AttachedEntity
        --------------------------------------------------------
    
        self:ChangeChildSortingLayer(AttachedEntity)
        end
    end
    

# SeeAlso

  * ClimbableSpriteRendererComponent
  * SpriteRendererComponent
DirectionSynchronizerComponent

Follows the parent Entity’s direction. The current Entity’s orientation changes with a ChangedLookAtEvent in the parent Entity.

# Properties

##### inherited from Component:

[{"index":"boolean Enable (Sync)","0":"Checks whether Component is activated or not."}]

[{"index":"boolean EnableInHierarchy (ReadOnly) (HideFromInspector)","0":"Displays whether this Component is Enable in the hierarchy. If Entity Enable is false regardless of Component Enable, returns false."}]

[{"index":"Entity Entity (ReadOnly)","0":"The Entity that owns this component."}]

# Methods

##### inherited from Component:

[{"index":"boolean IsClient()","0":"Returns whether the current execution environment is a client or not."}]

[{"index":"boolean IsServer()","0":"Returns whether the current execution environment is a server or not."}]

# Examples

You can execute the example below after adding the object-1 model to the workspace. Create an object facing the same direction as the player by adding the Component below to DefaultPlayer.
    
    
    @Component
    script SynchronizedModelAttacher extends Component
        @ExecSpace("ServerOnly")
        method void OnBeginPlay()
        local modelId = "Model Entry ID"
        local attachedEntity = _SpawnService:SpawnByModelId(modelId, "attachedEntity", Vector3.zero, self.Entity, "")
        attachedEntity:AddComponent("DirectionSynchronizerComponent")
        end
    end
    

# SeeAlso

  * SpawnService
ActionStateChangedEvent

This event occurs when the action state changes.  
  
This event is triggered by the API below.

  * AvatarBodyActionSelectorComponent (Space;Client)



# Properties

[{"index":"string CoreActionName","0":"This is the avatar's bare body action."}]

[{"index":"int32 EndFrameIndex","0":"Specifies the end frame of the animation played. You cannot exceed the number of total frames of the animation."}]

[{"index":"string PartsActionName","0":"These are the actions of the avatar's equipped items. (Does not include face accessory.)"}]

[{"index":"float PlayRate","0":"The animation playback speed."}]

[{"index":"SpriteAnimClipPlayType PlayType","0":"How to play. Onetime plays only once in sequence, Loop plays repeatedly in sequence, and ZigzagLoop repeats sequential and reverse playback. Overlapping sequences will not be played consecutively."}]

[{"index":"int32 StartFrameIndex","0":"Specifies the start frame of the animation played. The start frame cannot exceed the EndFramdIndex value."}]

# Constructors

[{"index":"ActionStateChangedEvent(string coreActionName = \"\", string partsActionName = \"\", float playRate = 1, SpriteAnimClipPlayType playType = SpriteAnimClipPlayType.Loop, int32 startFrameIndex = 0, int32 endFrameIndex = 2147483647)","0":"Initialize ActionStateChangedEvent to the specified value."}]
InputContentType

Indicates the type that can be input to TextInputComponent.

# Members

[{"Name":"Standard","Value":"0","Desc":"This allows all formats of input."},{"Name":"Autocorrected","Value":"1","Desc":"This allows all input. Input is automatically corrected on platforms that support autocorrection."},{"Name":"IntegerNumber","Value":"2","Desc":"Accepts numeric input only."},{"Name":"DecimalNumber","Value":"3","Desc":"You can enter numbers up to one decimal place."},{"Name":"Alphanumeric","Value":"4","Desc":"You can enter capital and lowercase English letters and numbers."},{"Name":"Name","Value":"5","Desc":"The first letter is capitalized."},{"Name":"EmailAddress","Value":"6","Desc":"You can enter your email address. Accepts English and numeric input. Periods cannot be entered consecutively."},{"Name":"Password","Value":"7","Desc":"All characters are accepted. Entered characters are marked with *."},{"Name":"Pin","Value":"8","Desc":"Accepts numeric input only. Entered numbers are marked with *."},{"Name":"Custom","Value":"9","Desc":"Only user-specified types are accepted. Select from Line Type, Input Type, Keyboard Type, and String Verification."}]

# Methods

[{"index":"InputContentType CastFrom(number value) (Static)","0":"Converts numbers to the applicable type."}]

[{"index":"InputContentType CastFrom(string value) (Static)","0":"Converts strings to the applicable type."}]
Dictionary<K,V>

Use this hash table to save data to by key and value. Provides the function to add, remove, and search data and performs particularly well with searching. Each key must have a unique value. Empty values (nil) are not allowed. K represents the key type to be added to the hash table, and V represents the value type.

# Properties

[{"index":"number Count (ReadOnly)","0":"Gets the number of keys and values in the Dictionary."}]

[{"index":"table Keys (ReadOnly)","0":"Gets the table that includes the Dictionary keys."}]

[{"index":"table Values (ReadOnly)","0":"Gets the table that includes the Dictionary values."}]

# Methods

[{"index":"boolean ContainsKey(K key)","0":"Checks whether the specified key is included in the Dictionary."}]

[{"index":"table ToTable()","0":"Generates a table that has the keys and values included in the Dictionary."}]

[{"index":"boolean, V TryGetValue(K key)","0":"Retrieves the specified key and the connected value."}]

[{"index":"void Add(K key, V value)","0":"Adds the specified key and value to the Dictionary."}]

[{"index":"void Clear()","0":"Removes all keys and values from the Dictionary."}]

[{"index":"void Remove(K key)","0":"Removes the specified key and connected value from the Dictionary."}]

[{"index":"boolean ContainsValue(V value)","0":"Checks whether the Dictionary contains the specified value."}]
utf8

# Properties

[{"index":"string charpattern (Static)","0":"The pattern is \"[\\\0-\\\x7F\\\xC2-\\\xF4][\\\x80-0xBF]*\". A valid UTF-8 string matches exactly one column of UTF-8 bytes."}]

# Functions

[{"index":"integer... codepoint(string s, integer i = 1, integer j = i) (Static)","0":"Returns the code points for all characters starting between byte positions i and j."}]

[{"index":"func, string, integer codes(string s) (Static)","0":"Returns a value that enables you to repeat all characters from string s. Retrieves the byte position and code point and displays an error when it meets an invalid byte column."}]

[{"index":"integer offset(string s, integer n, integer i = 1) (Static)","0":"Returns the position where the encoding of the n-th character of s starts."}]

[{"index":"string char(integer... args) (Static)","0":"Receives zero or more integers, converts each one to its corresponding UTF-8 byte sequence, and returns it. Returns a string with a concatenation all of the columns together."}]

[{"index":"any... len(string s, integer i = 1, integer j = -1) (Static)","0":"Returns the number of UTF-8 characters in s that start between positions i and j. If it finds any invalid byte sequence, returns a false value plus the position of the first invalid byte."}]
DefaultUserEnterLeaveLogic

Provides functions related to user entry and exit.

# Properties

[{"index":"string PlayerUri","0":"The Model Id to use when creating the player. Apply the Copy Model ID from the model's context menu. You must change in the Server area to properly apply the changes."}]

[{"index":"string StartPoint","0":"The name of the start map. Apply the Copy Entry Path from the map's context menu. You need to make the changes in the server environment to properly apply the changes."}]

# Methods

##### inherited from Logic:

[{"index":"EventHandlerBase ConnectEvent(string key, IScriptFunction eventHandler)","0":"Links events. When a key-type event occurs in this service, a handler is notified. The handler receives event parameters."}]

[{"index":"EventHandlerBase ConnectEvent(Type eventType, IScriptFunction eventHandler)","0":"Links events. This service notifies a handler when an eventType event occurs. The handler receives event parameters."}]

[{"index":"boolean DisconnectEvent(string key, EventHandlerBase eventHandler)","0":"Disconnects the key-type event and its handler."}]

[{"index":"boolean DisconnectEvent(Type eventType, EventHandlerBase eventHandler)","0":"Disconnects the eventType event from its handler."}]

[{"index":"boolean IsClient()","0":"Returns whether the current execution environment is a client or not."}]

[{"index":"boolean IsServer()","0":"Returns whether the current execution environment is a server or not."}]

[{"index":"void SendEvent(EventType sendEvent)","0":"Generates an event."}]
AreaParticleType

Particle preset type used by AreaParticleComponent.

# Members

[{"Name":"nan","Value":"0","Desc":"This is the default. No particles are used."},{"Name":"Rain","Value":"1","Desc":"Rain particles."},{"Name":"Snow","Value":"2","Desc":"Snow particles."},{"Name":"FogCalm","Value":"3","Desc":"Fog particles."},{"Name":"FogHeavy","Value":"4","Desc":"Descending fog particles."},{"Name":"FogLively","Value":"5","Desc":"Rising fog particles."},{"Name":"CalmStarField","Value":"6","Desc":"Rising star cluster particles."},{"Name":"StarFieldSimple","Value":"7","Desc":"Glittering cluster of star particles."},{"Name":"StarFog","Value":"8","Desc":"A cluster of stars and nebula particles moving in place."},{"Name":"StarFogFlow","Value":"9","Desc":"A cluster of rising stars and nebula particles."},{"Name":"Windlines","Value":"10","Desc":"A thin line particle."},{"Name":"WindlinesBig","Value":"11","Desc":"A particle with both thin and thick lines."},{"Name":"WindlinesSpeedy","Value":"12","Desc":"A thin line particle moving fast in a straight line."}]

# Methods

[{"index":"AreaParticleType CastFrom(number value) (Static)","0":"Converts numbers to the applicable type."}]

[{"index":"AreaParticleType CastFrom(string value) (Static)","0":"Converts strings to the applicable type."}]
ParallelNode

Executes all child nodes simultaneously.

# Properties

##### inherited from BTNode:

[{"index":"boolean ExclusiveExecutionWhenRunning (Deprecated)","0":"This property is deprecated."}]

[{"index":"func InitFunction","0":"Initialization calls this function."}]

[{"index":"string Name","0":"The name of the node."}]

[{"index":"AIComponent ParentAI (ReadOnly) (HideFromInspector)","0":"AIComponent to have the node."}]

# Constructors

[{"index":"ParallelNode(string name = \"ParallelNode\")","0":"Initializes ParallerNode to the specified name."}]

# Methods

##### inherited from CompositeNode:

[{"index":"void AttachChild(BTNode node)","0":"Incorporates the node as a child."}]

[{"index":"void AttachChildAt(BTNode node, int32 index)","0":"Incorporates the node as a child at the index position. Index starts at 1."}]

[{"index":"boolean DetachChild(BTNode node)","0":"Detaches a child node."}]

[{"index":"boolean DetachChild(string nodeName)","0":"Finds and detaches nodeName child node."}]

[{"index":"void DetachChildAt(int32 index)","0":"Detaches the child node at index position. Index starts at 1."}]

##### inherited from BTNode:

[{"index":"BehaviourTreeStatus Behave(float deltaTime)","0":"Executes the node. The deltaTime refers to the duration between the previous frame and the current frame. Defined in seconds."}]
World Coin Calculation Ratio

# Course Introduction

In this course, we'll take a look at how world items and avatar items (meaning "creator-generated content", herein "CGC items") sold by a creator are converted into revenue. Upon selling CGC items in MapleStory Worlds, a certain amount will be paid out as the creator's revenue in accordance with a set calculation ratio. Please refer to the following for details about the calculation ratio.

# World Coin Calculation Ratio

MapleStory Worlds deducts 65% of CGC item sales and gives the remaining 35% to the creators in USD.  
Please refer to the graph below for details on the calculation ratio.

Sales Charge (30%) When selling CGC items, a sales charge of 30% is automatically deducted. The sales charge includes the transaction fees from each store such as Google or Apple, PG fees, and others. MapleStory Worlds does not charge any fees other than the sales fees deducted from product sales.

Toben (35%) When selling CGC items, 50% of the revenue from the sales fees deducted (70%) is paid to Toben Studio Inc. The fees are used for the server, DB, and solution maintenance as well as development to provide a better platform, R&D, marketing, or other such administrative and maintenance costs.

Creators (35%) When selling CGC items, 50% of the revenue from the sales fees deducted (70%) is paid to the creator. All CGC items have the same calculation ratio.

[png](17442515197247b2fb4387ca34977ab75bf70e8a37cb6)
SelectorNode

Executes child nodes until the child node returns Success.

# Properties

##### inherited from BTNode:

[{"index":"boolean ExclusiveExecutionWhenRunning (Deprecated)","0":"This property is deprecated."}]

[{"index":"func InitFunction","0":"Initialization calls this function."}]

[{"index":"string Name","0":"The name of the node."}]

[{"index":"AIComponent ParentAI (ReadOnly) (HideFromInspector)","0":"AIComponent to have the node."}]

# Constructors

[{"index":"SelectorNode(string name = \"SelectorNode\")","0":"Initializes SelectNode to the specified name."}]

# Methods

##### inherited from CompositeNode:

[{"index":"void AttachChild(BTNode node)","0":"Incorporates the node as a child."}]

[{"index":"void AttachChildAt(BTNode node, int32 index)","0":"Incorporates the node as a child at the index position. Index starts at 1."}]

[{"index":"boolean DetachChild(BTNode node)","0":"Detaches a child node."}]

[{"index":"boolean DetachChild(string nodeName)","0":"Finds and detaches nodeName child node."}]

[{"index":"void DetachChildAt(int32 index)","0":"Detaches the child node at index position. Index starts at 1."}]

##### inherited from BTNode:

[{"index":"BehaviourTreeStatus Behave(float deltaTime)","0":"Executes the node. The deltaTime refers to the duration between the previous frame and the current frame. Defined in seconds."}]