LogoLogo
一般アカウントプレイヤーオーナークリエイターThe Sandbox ウェブサイト
クリエイターページ
クリエイターページ
  • 🎆クリエイター向けコンテンツのご紹介
  • 🟦制作の基本
    • 🟦LAND の使用方法とサイズ
    • 🟦アセットと装備品
    • 🟦アバターとキャラクター
    • 🟦外観とイメージ
    • 🟦ロジックの基本
    • ❓ゲームプレイに関する質問
    • ❓アセットに関する質問
  • 🪙収益化
  • Game Maker
    • ✨体験の制作
    • 🔰初心者向けガイド
    • 📖ドキュメント
      • Game Maker ホーム画面
      • 体験の管理
      • コントロールとショートカット
      • 制作に関するメニュー
        • トップバー
          • メニューバー
          • Objective
          • Player
          • Gameplay
          • Debug
        • サイドバー
          • Hierarchy
          • Preset
        • ライブラリとクイックアクセスバー
        • グリッドシステムとスナップツール
        • プロパティパネル
      • 🔹ブロックの使い方
      • 🔹アセットとオブジェクトの使い方
        • ビヘイビアとコンポーネントのパラメーター
        • Tags(タグ)
        • Messages(メッセージ)
      • 🔹Behaviour(ビヘイビア)
        • Actor Property Switcher
        • Advanced Platform
        • Animated Decoration
        • Asker
        • Asset Spawner
        • Basic Platform
        • Bird
        • Citizen
        • Crowd Event
        • Door
        • Farmer
        • Healer
        • Melee Enemy
        • Message Broadcaster
        • Multi
        • Post Process Effects
        • Predator
        • Prey
        • Projectile
        • Replace Asset
        • Spawn Point と Avatar's Feature
        • Soldier
        • Timed Events
        • Void
        • Weather Switcher
      • 🔹Components(コンポーネント)
        • Avatar Checkpoint
        • Avatar Teleport
        • Button
        • Climbable
        • Collectable
        • Defeat
        • Drop
        • Health
        • Image Display
        • Indicator
        • Light
        • NFT Details Display
        • NFT Image Display
        • NFT Sensor
        • Pickable
        • Plant
        • Play Sound
        • Power Up
        • Rarity VFX
        • Raycast
        • Slide
        • Speaker
        • Switch
        • Toggle
        • Trigger Volume
        • Victory
        • Visual FX
      • 🔹ゲームルール
        • ルールタイプ
        • シングルプレイヤーとマルチプレイヤーのロジック
      • 📋クオリティガイドライン
        • Text Formatting
        • 最適化
        • テスト
        • プレイアビリティ
      • パッチノート
        • Game Maker 0.9 (Active)
        • Game Maker 0.8 (Active)
        • 0.7
        • 0.5 [10/02/2021]
        • 0.4 [12/23/2020]
      • 🔩テンプレート
    • 📑クリエイティブガイド
      • 📗ゲームルールガイド
        • 🅿️Point Race
        • 🅿️Collect Points(ポイント集め)
        • 🅿️Time Trial(タイムトライアル)
        • 🅿️Combo(コンボ)
        • 🅿️Hunger(ハンガー)
        • 🅿️Poison(ポイズン)
        • 🅿️Shop(ショップ)
        • シングルプレイヤーとマルチプレイヤーのロジック
      • ⚙️ロジックガイド
        • Climbing
        • Doors & Chests
        • Dialogue Strings
        • Quiz
        • Collectibles
        • Quests
          • Quest System & Indicators
          • Dialogue States for Quests
        • Platforms
          • Button & Platform
        • Victory & Defeat
        • Miscellaneous
        • NFT Inspect
        • Fighting
        • Respawn
      • 🏞️体験ガイド
        • Tower Defense
        • Horror/Backrooms
        • Parkour & Platformers
        • Resource Management
          • Cooking Simulator
        • Survival
        • Action / Adventure
        • Night Club & Sound
        • Virtual Home & Architecture
        • NFT Gallery / In-Game Shop
        • Puzzle Games
        • Social Hubs
        • Simulation
      • 🎲体験デザインテクニック
        • ストーリーデザイン
          • Worldbuilding
          • Storyboard
          • Dialogue
        • アートデザイン
          • Experience Art Concept
          • Asset Curation
          • Blockout Aesthetics
          • Detailing /Dressing
        • 3D 空間レイアウト
          • Rough Base Map
          • Greyboxing / Blockout
        • ゲームデザイン
          • 難易度の設定
          • リスクと報酬
          • Game Loops & Decisions
    • 🎬ゲーム制作ガイド
      • 🟥コンセプト
      • 🟧ブロックアウト
      • 🟨ロジック
      • 🟩アート
      • 🟦QA
      • 🟪ポリッシュ
      • ⬜マーケティング
    • 🧰体験の公開
      • 体験マネージャー
        • Experience Analytics
        • 🧰体験ページ
          • Content Guide
          • Marketing
          • Create an Experience Trailer
          • Player Engagement
        • マップロケーション
        • アセットレビュー
        • GM Compatibility Check
        • アクセス制限
      • Collaborating With Third Parties
      • ❓体験の公開に関する質問
    • 🕘変更履歴
      • Game Maker 0.11
        • 0.11 アップグレードガイド
    • ❓Game Maker に関する質問
  • VoxEdit
    • ✨アセットの制作
    • 🔰初心者向けガイド
    • 📖ドキュメント
      • Navigate VoxEdit Home
      • Controls & Shortcuts
      • 🔹ブロックエディタ
        • ブロックエディタ - メニュー
        • Block Editor Dropdown Menu
        • Block Editor Top Bar
        • Block Editor Tools Menu
        • Block Editor Viewport
        • Block Editor Panels
      • 🔹モデラー
        • Modeler Menus
        • Modeler Dropdown Menu
        • Modeler Top Bar
        • Modeler Tools Menu
        • Modeler Viewport
        • Modeler Panels
      • 🔹アニメーター
        • Animator Menus
        • Animator Dropdown Menu
        • Animator Top Bar
        • Rig: Animator Skeleton & Viewport
        • Motion: Animator Timeline Panel
        • Animator Library & Inspector Panels
      • 🔹テンプレート
      • 📋クオリティガイドライン
        • Asset Types & Collisions
        • Asset Scale
        • Node Efficiency
        • Pivot Point & Alignment
        • アニメーション
        • ビジュアルクオリティ
        • Asset Name & Description
        • Manage Files & Folders
    • 📑クリエイティブガイド
      • 🧍アセットガイド
        • Structures & Landmarks
          • Basic Building: No Entry
          • Animated Building: No Entry
          • Unanimated Building: Player Entry
          • ランドマーク
          • 建物の正面
          • Structure Component Parts
          • Modular Architecture
        • Humanoids & Animals
        • Vehicles
        • 装備品
        • Art: Statues, Paintings
          • Animated Art Screens
          • Statues
          • キネティックアート彫刻
          • Paintings
          • パフォーマンスアート
        • Furniture
        • Platforms
        • Doors, Gates, and Windows
          • Multi Design Door Asset
        • Chests & Other Animated Interactions
        • Plants, Trees
        • Objects, Machines
        • Signs & Text
        • Obstacles
        • フレームアセット
      • 🎨アートテクニック
        • アートアイデア
        • 3D デザイン
          • 🧹Need to Simplify?
          • ✂️Trim All Volumes
          • 🟢Optimize with Texture
          • 🟢Curved Edges: Blocky Style
          • 🟡Break Down Objects
          • 🟡Create Smooth Angled Lines
          • 🟡Circular Shapes: Cross Technique
        • 色とテクスチャ
          • 🪅Colour Choice & Strategy
          • 🧱Textures & Materials
    • 🧰アセットのワークスペースへのアップロード方法
    • 🌟アセットのミントと販売方法
    • 🕘変更履歴
    • 🔓オープンソースアセット
    • ❓VoxEdit に関する質問
  • クリエイター向けプログラム
    • 🏗️Builders' Challenge
      • ルールと参加条件
      • 賞金の獲得と報酬
      • Builders' Challenge 成功のコツ
      • ❓Builders' Challenge に関する質問
    • ℹ️コンテスト
    • 🏆Game Jam
      • ルールとガイドライン
      • 審査と投票
      • 過去の入賞作品
      • ❓Game Jam に関する質問
    • 🏆VoxEdit コンテスト
      • ルールとガイドライン
      • 審査と投票
      • 過去の入賞作品
      • ❓FAQs: Voxel Art Contests
  • 一般
    • 📚The Sandbox ドキュメント
    • 🔄遊んで、作って、稼ごう!
    • 🗺️マップ
    • 🛒マーケットプレイス
    • 🗣️Discord コミュニティ
    • 🔗SNS、お知らせ、ブログ
    • The Sandbox リンク集
    • 📣FAQ(よくある質問)
    • ❓ヘルプ、お問合せ
GitBook提供
LogoLogo

インフォ

  • Discord
  • SNS、お知らせ、ブログ
  • システム状況

プレイ

  • イベント
  • マップ
  • アバター

制作

  • VoxEdit
  • Game Maker
  • コンテスト

所有

  • SAND
  • LAND
  • トークン

Copyright © The Sandbox. All Rights Reserved.

このページ内
  • Game Maker's Logic Systems
  • Object Logic
  • Triggering Logic Across Systems
  • Creating Experiences
  • 👤 Singleplayer
  • 👥 Multiplayer
  • Resources

役に立ちましたか?

  1. Game Maker
  2. ドキュメント
  3. ゲームルール

シングルプレイヤーとマルチプレイヤーのロジック

このページではGame Maker のロジックシステム、シングルプレイヤーとマルチプレイヤーでのロジックシステムの使用方法を解説します。

前へルールタイプ次へクオリティガイドライン

最終更新 3 か月前

役に立ちましたか?

Game Maker's Logic Systems

Object Logic

[SP] & [MP] Behaviours and Components

A split between [SP] and [MP] logic was introduced with Game Maker 0.8.

This made it possible for players to experience some logic independently and other logic simultaneously with all other players. Synchronised logic includes position and state of objects, environment, global mechanics, etc.

An object may have one of the following logic setups:

Selecting [SP] or [MP]

  1. Select an object and click on the behaviour or component field in the Properties panel.

  2. When the pop-up window opens, use the dropdown at the top right to select a logic Type: All, [SP] Client Only, or [MP] Synchronised.

  3. Click on the desired logic for your needs, and it will be added to the selected object.

There is no visual indicator in the viewport that an object has [SP] or [MP] logic. Select an object to view its properties.

Game Maker will automatically grey out options you cannot apply.

For example, [MP] and [SP] variants of behaviours and components cannot exist on the same object since they communicate on different layers.

Remove all logic to switch an object to the other type.

Triggering Logic Across Systems

Logic can be a simple or complex chains of events, and it can be linear or branching with options.

Broadcast

Send a message on start of the Experience or when triggered, once or repeatedly.

Example:

Use a message broadcaster as a middle step if two logic elements will not send or receive messages as quickly, consistently, or specifically as you want.

Object/Player Avatar Detection

An object can send a message when an expected tag is detected. It can also be set to play one of its animations. Detection is triggered when:

  • player avatars are in range

  • specific tags are in range

  • specific objects are in range

Examples:

Object Destruction

Send a message or drop (spawn) a new object (e.g. loot, smaller enemies, etc) when an object is destroyed from an attack or an instant kill message.

Example (direct):

Example (indirect):

Object Collection

Can be set as collectible by one player or every player, send a message, and/or play a sound.

Example:

Object Interaction (E)

Press E to send the “Interact” Message. This can trigger a wide variety of events depending on logic setup.

Examples:

  • Open a door to access a new area

  • Toggle on/off logic

  • Talk to NPCs for a quest

  • Collect or pick up an item

  • View NFT info (The Sandbox & external NFTs)

  • More complex logic sequences

Objectives/Quests

Send a message after receiving confirmation that a quest condition is met and/or after the quest is complete.

Example:

Game Rules

Most rules can optionally send a message when their logical flow is complete. Some may also be stopped or paused with a message.

Example:

  • Add a rule to the gridboard, set the Message In, apply any custom settings you like, and set the Message Out. Trigger the Message In and the Message Out will quickly be sent.

Creating Experiences

👤 Singleplayer

One Layer of Logic

FULL DESIGN FLEXIBILITY

✅ [MP] and [SP] logic communicate with each other in singleplayer games.

✅ [MP] and [SP] logic communicate with an individual player's Objectives/quests.

✅ [MP] and [SP] logic communicate with Game Rules.

[SP] means Client Only, and [MP] means Synchronised to all players. Both can be used in single and multiplayer Experiences.

Why use [MP] objects in a singleplayer game?

Some logic would cause conflicts between what is visible and what has collisions in a multiplayer Experience, so in some cases there is only a [MP] version available. [MP] logic works like [SP] logic in a singleplayer Experience.

Performance

[MP] logic DOES NOT reduce gameplay performance in singleplayer games compared to multiplayer games.

Variables (Game Rules)

Local (L) and global (G) variables were introduced with the new Game Rules system with Game Maker 0.9, allowing you to track numbers, time, text, etc. for all players or each individual player. Both (G) and (L) variables work in singleplayer, but global may perform slightly better.

Global and local variables are unrelated to [SP] and [MP] differences. They can be used in a rule triggered by both types of logic.

Logic:

  • The player picks up the key and takes it to the door.

  • When the door detects the key nearby, it opens.

Logic:

  • Interact with Seb to trigger the quest and turn on quest markers.

  • Interact with the machine to get a drink.

  • Return to Seb to give him the drink, which triggers the quest as complete.

👥 Multiplayer

There are two layers of logic that do not communicate with each other, but must be designed to feel seamlessly integrated for players.

Toggle the Multiplayer Simulator at the top right in the Editor to test how the Experience will behave if published as singleplayer or multiplayer.

Two Layers of Logic

DESIGN RESTRICTIONS APPLY

❌ [MP] and [SP] logic DO NOT communicate with each other in multiplayer games.

❌ [MP] logic DOES NOT communicate with individual player Objectives/quests.

✅ [MP] and [SP] logic communicate with Game Rules.

[SP] is Client Only for individual players and [MP] is Synchronised for all players. Both can be used in single and multiplayer Experiences.

Behaviours and components without [SP] or [MP] in the name are not compatible with multiplayer Experiences yet. They will be ported in the future.

Why use [SP] logic in a multiplayer game?

[SP] logic is necessary in the game world to trigger quests, which track each player's individual progression in your game. Some logic may also only be available as [SP].

Performance

[MP] logic should be used minimally in multiplayer games to add more gameplay potential without reducing the fun. Start by using as much [SP] logic as possible and then add the [MP] layer. You can build the same player experience that performs more efficiently!

Consistency

1️⃣ Consistent Type

An object with [MP] logic may only have other [MP] logic added. An object with [SP] logic may only have other [SP] logic added.

2️⃣ Consistent Messages

An object with [MP] logic may only send messages to objects with [MP] logic. An object with [SP] logic may only send messages to objects with [SP] logic.

3️⃣ Consistent Hierarchy

An object with [MP] logic may only be a parent or child of an object with [MP] logic. An object with [SP] logic may only be a parent or child of an object with [SP] logic.

4️⃣ Consistent Spawn

An object with [MP] logic may only spawn an object or preset with [MP] logic. An object with [SP] logic may only spawn an object or preset with [SP] logic.

Variables (Game Rules)

  • Use Global (G) variables to track time, numbers, etc for all players.

    Example: all players share the same timer value

  • Use Local (L) variables to track time, numbers, etc for each player.

    Example: each player has a different timer value

To change a local variable (L), the message that triggers the Rule must be sent by a direct player interaction. It may be sent directly or the start of a chain of logic. This ensures the player source is sent to the rule to identify the correct player’s local variable to modify.

Global and local variables are unrelated to [SP] and [MP] differences. They can be used in a rule triggered by both types of logic.

Logic:

  • One player picks up the key and takes it to the door.

  • When the door detects the key nearby, it open for all players.

Gameplay: All players explore and find Seb on their own time, triggering logic only they can see.

Logic:

  • Each player interacts with Seb to trigger dialogue, quest, and quest markers.

  • Each player interacts with the machine to get a drink.

  • Each player returns to interact with Seb to "give him the drink." A message is sent to Objectives to complete the quest.

Using a Local Variable (L) The Shop Ruleset gives coins to only the players who trigger the rule to earn coins. It tracks this value as it changes (earning or spending) for every player individually. Using a Global Variable (G) The Shop Ruleset gives coins to all players even if only one player triggers earning them. It tracks this value as it changes (earning or spending).

Resources

In SIn Si, [MP] logic works like [SP] logic. Gameplay design is more simple.

In , there are communication and bandwidth limitations to consider when designing gameplay.

Trying to select a Behaviour or Component from an alternate network will result in the message: "BLOCKED BY Network policy incompatible with another behaviour/component assigned to the actor/s."
The message received when trying to add a [SP] Component to an actor with a [MP] Behaviour.

are sent between and within systems to trigger gameplay logic.

There are many simple ways to send a message and trigger something to happen. Messages can also be directed more specifically using and .

Add a behaviour to a logic actor or object and set desired parameters.

Add a component and choose what to detect and detection range (avatars, tags, or a specific actor).

To trigger an asset's animation and send a message when an avatar is detected or a message is received, use behaviour.

The component can also detect and trigger a message when any tag enters or exits its volume.

Send Message - Add a component to the object that will be destroyed. Set a Message sent on death. You can trigger this with an Instant death message.

Drop (spawn) object - Add a component to the object that will be destroyed. Choose Behavior (default asset settings) or (custom settings for one or more objects to spawn). Select the asset or preset to spawn.

Other objects nearby with a component can detect a tag that is included in your spawned object.

A spawned object, such as a , could instantly send a message.

Add a component to an object and set a message to send.

Create an . In the Action After Completion dropdown, choose Send Message. Use the dropdown below this to select an existing message or create a new one. Any object in your Experience will be able to receive this message.

Objective 1: Find the key and unlock the break room in 30 seconds

Game Ruleset: Countdown (triggered with Objective 1)

[MP] Objects: Pickable key, Door

Objective 2: Get Seb a drink from the vending machine room

Ruleset: (global or local variable for money)

[SP] Objects: Vending machine, Seb NPC, coin

Collect enough coin objects (money variable in the Ruleset) to buy a drink.

Multiplayer Simulator

Use Objectives for individual player goals. Use for collective goals.

See below for more details on additional design considerations.

Objective 1 (auto trigger at start): Race to unlock the break room Gameplay: All players see the single player objective and rush to find the key

Ruleset: Countdown (triggered with Objective 1)

[MP] Objects: Pickable key, Door

Objective 2: Get Seb a drink from the machine

Ruleset: (Local variable - track each player's money)

[SP] Objects: Vending machine, Seb NPC; [MP] Object: Coin

Each player collects enough coin objects (money variable in the Ruleset) to buy a drink (all coins must be [MP] and collectable by each player).

Notes on in Multiplayer

📖
🔹

No logic applied

Only [SP] logic "Client Only" - for each player to experience at different times Example: A player explores gameplay at their own pace and reads Quest dialogue when ready

Only [MP] logic "Networked" - for all players to experience at the same time Example: A door opening or a platform moving is synchronised for all players

Message Broadcaster
Speaker
Animated Decoration
Trigger Volume
Health
Drop
Preset
Speaker
Message Broadcaster
Collectable
Objective/Quest
Shop
Crowd Events
Multiplayer Logic
Shop
Variable Types
Experience Guide
Quality Guidelines
Game Production Guide
Monetisation
ngleplayer Experiences
Multiplayer Experiences
timer
Shop
timer
Shop

Rules are gameplay mechanics that can be triggered and completed repeatedly and use variables for all players or individual players.

Example: Points, Timers, Shops, and more

Quests are an individual player's progress in a singleplayer or multiplayer Experience's flow, which can be completed only one time.

Example: A quest to collect coins

OBJECT LOGIC

Example (image above):

Light, NFT Sensor, NFT Image Display, Play Sound & Trigger Volume

Player settings customize avatars, controls, basic features, and interactions in the world.

Example:

The player's avatar may be allowed to swim, may receive damage from certain blocks, etc.

Messages
tags

(QUESTS)

& are logic applied to voxel objects placed in the game world.

GAME RULES
OBJECTIVES
Behaviours
components
PLAYER SETTINGS
filters
Game Rules
Objectives (Quests)
Voxel Object Logic (Behaviours & Components)
Player Settings