In our Thang Component System architecture, the Thangs are the units, the things, the actors, the entities. A Thang can be an ogre, a rock, an arrow, a land, an invisible obstacle, a goal trigger--whatever. Thangs are specific to Levels and have just three properties:
id
: the Thang's unique name within the LevelthangType
: a pointer to a ThangType in the database, which holds all the art and sound information needed to display the Thang, but which has no impact on the Level's World simulation itself.components
: a list of Components and their configuration, which together determine everything about how the Thang behaves in the game engine.
A very simple Thang might be a land. Let's look at a default Dungeon Floor Thang. Its id
might be "DungeonFloor3"
if there were a few other floors placed before it. Or you could rename it to "Top Left Floor"
--doesn't matter, as long as it's unique. Its thangType
will point to the latest Dungeon Floor ThangType. And it'll just have three Components:
Represented as JSON, these Components are simply:
[
{"original":"524b4150ff92f1f4f8000024","majorVersion":0,
"config":{"stateless":true}},
{"original":"524b7aff7fc0f6d519000006","majorVersion":0},
{"original":"524b75ad7fc0f6d519000001","majorVersion":0,
"config":{"pos":{"x":10,"y":30,"z":1},"width":20,"height":20,"depth":2,"shape":"sheet"}}]
A more complex Thang might have 20+ Components, and its ThangType might have many animations and sounds associated.
- Home
- Archmage Home
- Artisan Home
- Adventurer Home
- Scribe Home
- Diplomat Home
- Ambassador 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
- Artisan How-To Index
- Adventurer General
- Scribe General
- Diplomat General
- i18n
- i18n Glossary nb
- i18n Glossary ru
- i18n Glossary es-419
- Ambassador General
- 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
CodeCombat | Home | Blog | Forum | Teachers | Legal | Contribute