Decision Streams for Visual Script Synchronization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional methods for synchronizing logic states between networked computers in real-time applications, such as online video games, face challenges due to latency introduced by round trip network communications with centralized game servers, leading to undesirable lag and reduced gameplay responsiveness.

Innovation Solution

The implementation of decision streams for synchronizing visual script language processing between networked computers, where clients can process private nodes locally and send private decision streams to a server for synchronization, allowing for near-instantaneous feedback and reduced latency by designating certain nodes as 'private' or 'master' for global synchronization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Stability of the object's composition

If centralized game server processes all logic scripts, then logic state consistency is maintained, but network latency increases

Engineering Contradiction:
Improvelogic state consistencyVSAvoidnetwork latency
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent segments logic script processing into two categories: deterministic logic processed locally by each client and non-deterministic logic processed by the centralized server. This segmentation allows clients to execute private nodes immediately without waiting for server responses, reducing network latency while maintaining consistency for critical game logic through server arbitration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by allowing each client to have private graphs with private nodes that can be processed locally. Different nodes are assigned different processing locations based on their requirements: private nodes for local processing and master nodes for server processing. This enables clients to process local effects immediately while maintaining overall logic state consistency.

Inventive Principle:
Principle #3Local quality

2Speed

If clients process logic locally, then responsiveness improves, but logic state synchronization becomes complex

Engineering Contradiction:
Improvegameplay responsivenessVSAvoidsynchronization complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by having clients pre-process private nodes locally before server arbitration is needed. Clients execute deterministic logic immediately and only send results to the server for non-deterministic logic, rather than waiting for server instructions. This reduces responsiveness latency while simplifying synchronization by only requiring server intervention for critical paths.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses decision streams as an intermediary mechanism to synchronize state between clients and server. Instead of complex direct peer-to-peer synchronization, clients send their private decision streams to the server, which reconciles them with master decision streams. This intermediary approach simplifies the synchronization complexity by providing a centralized coordination point.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Stability of the object's composition

If all nodes are synchronized through server, then state coherence is maintained, but feedback latency increases

Engineering Contradiction:
Improvestate coherenceVSAvoidfeedback latency
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent implements dynamics by making the processing location of nodes flexible rather than fixed. Nodes can be dynamically designated as private or master based on whether they require synchronization. This dynamic assignment allows the system to optimize between state coherence and feedback latency by routing appropriate nodes to appropriate processing locations based on their specific requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments decision streams into private decision streams (processed locally) and master decision streams (processed by server). This segmentation allows immediate feedback for private nodes while maintaining state coherence through server processing of master nodes. The segmentation reduces feedback latency for local effects while preserving state coherence for critical game logic.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9302185B2Decision streams for synchronizing visual script language processing between networked computers
Publication Date: 2016.04.05 DISNEY ENTERPRISES INC
  • US9302185B2 patent drawing
  • US9302185B2 patent drawing
  • US9302185B2 patent drawing

AI summary

A method is provided for decision streams for synchronizing visual script language processing between networked computers. A master computing device may receive a remote kickoff stream indicating master nodes to be processed on a master graph, create a master decision stream using the remote kickoff stream, process master nodes of the master graph to populate the master decision stream with states and actions during the processing, and distribute the master decision stream to clients for synchronization of private graphs. The master and private graphs may be copies of the same visual script for implementing game logic, which may be created and edited using a graphical user interface (GUI). Nodes of the graphs can be marked as master, requiring global synchronization, or private, allowing immediate local processing with reduced latency. Thus, online game designers are empowered to balance the competing concerns of state synchronization and latency.