-
Notifications
You must be signed in to change notification settings - Fork 4.1k
System
Shubhangi edited this page Jul 31, 2018
·
5 revisions
In our Thang Component System architecture, the Systems fulfill three roles.
- Systems are unto Levels as Components are unto Thangs. For example, if I want my Level to have gravity, I add the
Movement
System and configure its gravity to 9.81 m/s^2. - They also serve as namespaces for the Components. As an example, the
Physics
System doesn't actually do anything on its own yet, but it was a good place to putphysics.Physical
Component, which controls the size, shape, rotation, and position of all physical Thangs. - They can coordinate behavior across those Components. For example, the
Collision
System will look at all the Thangs which have thecollides
property set and update its Box2D-based collision simulation once per frame, instead of each Thang with aCollides
Component trying to figure out its own collision interactions.
You can also live-edit the code for any System directly within the Systems tab of the Level editor, just like in the Component example.
To see all the entity data for, say, the Movement
System, I can just go to http://localhost:3000/db/level_system/movement.
CodeCombat | Home | Blog | Forum | Teachers | Legal | Contribute
- Home
- Archmage Home
- Artisan Home
- Diplomat Home
- Archmage General
- Mission statement
- Coco Models
- Coding Guidelines
- Cookbook
- File system
- JSON Schema
- Technical overview
- Testing
- Third party software and services
- Artisan General
- Building A Level
- Coding Guidelines for Artisans
- Editing Thang Components
- Important Artisan Concepts
- Keyboard Shortcuts
- Debugging
- Artisan How-To Index
- Diplomat General
- i18n
- i18n Glossary nb
- i18n Glossary ru
- i18n Glossary es-419
- Dev Setup
- Dev Setup: Linux
- Dev Setup: Windows
- Dev Setup: Mac
- Dev Setup: Vagrant
- Dev Setup: Issues
- Game Engine
- Component
- Multiplayer
- Surface
- System
- Thang
- Thang Component System
- Tome
- World
- Artisan Tabs
- Components And Systems
- Scripts
- Settings
- Thangs
- Other
- Aether
- Client models
- Developer organization
- Educational Standards
- Events, subscriptions, shortcuts
- Chat Room
- Chat Room Rules
- Permissions
- Project Ideas List
- Treema
- Versioning
- Views