Skip to content

Latest commit

 

History

History
95 lines (73 loc) · 4.29 KB

PATENT.md

File metadata and controls

95 lines (73 loc) · 4.29 KB

This is a summary of the claims made by the patent: US8292744B2 A.K.A the patent for Roblox.

Before adding a pr, please ensure that your fork doesn't check all of the boxes of one claim. If it checks all the boxes of one claim, that is patent infringement. If there is patent infrigement and Roblox finds out, they will sue us and we will lose.

Ideally, we want to be 100% compatible with Roblox, without infringing on this patent.

Claim 1:

  • The software has a user interface for creating a game.
  • The user interface facilitates user selection of parts for the game.
  • The software can place a set of parts selected by a user in a 3D world.
  • The software can automatically detect adjacent parts.
  • The software can automatically determine joint types for the parts.
  • The software can automatically create joints for the parts.
  • The software forms models for the game from the set of parts.
  • The software physically simulates these models.

Claim 2:

  • The software physically simulates the joints between parts.
  • The software physically simulates the action of joints on parts they're not connected to directly.

Claim 3:

  • The software allows the user to change parts that already have joints and have already been physically simulated.
  • The software can continue simulating in real-time using the modified data.

Claim 4:

  • The software can simulate the motion of models.
  • The software can identify connections broken from the models.
  • The software can remove those broken connections.

Claim 5:

  • The software incorporates gameplay logic into the models.

Claim 6:

  • The software can upload game files to a server for use by the plurality of users.

Claim 7:

  • The software can receive a request for an existing model created by a different user.
  • The software can request a model file for that model from the server.
  • The software can present that model to the user.
  • The software can modify the model based on the user's actions.

Claim 8:

  • The software can receive a request for an existing model created by a different user.
  • The software can request a game file for that game from the server.
  • The software can present that game to the user.
  • The software allows the user to play that game.

Claim 9:

  • The software can create models when a user requests to group specific parts.

Claim 10:

  • A game is associated with many properties: one or more description properties and one or more gameplay properties.

Claim 11:

  • Each part and each model is associated with many properties: physical properties, visual properties, descriptive properties, editing properties, physical simulation properties, and gameplay properties.

Claim 12:

  • Each joint has a flexibility property and a break threshold property.

Claim 13:

  • The properties of joined parts affect the physical simulation.

Claim 14:

  • Two parts colliding is a collision between a moving model and another moving item.

Claim 15:

  • Physical proerties: mass, elasticity, friction. These are modifiable by the user.

Claim 16:

  • Joint types: No-joint, rigid joint (weld), revolute joint (hinge), motor joint
  • Joints: Snap, glue, bold, weld

Claim 17:

  • Joint types for adjacent parts are determined based on the surface of the adjacent parts.

Claim 18:

  • The system has memory.
  • The system has a processing system that is coupled to the memory causing:
  • A user interface presenter to present a user interface for creating the game.
  • An editing engine to place the set of parts in the 3D world determined by the user.
  • A joint engine to resolve joints and joint types for adjacent parts.
  • A physics engine to physically simulate the parts in the game.

Claim 19:

  • Provide a user interface for creating a game.
  • Place the set of parts selected by a user in a 3D world.
  • Automatically detect adjacent parts in the 3D world whilst being moved by the user.
  • Automatically detect joint types for adjacent parts.
  • Automatically create joints for adjacent parts.
  • Form models in the game from automatically joined parts.
  • Physically simulate these models.