Animator GUI
Jump to navigation
Jump to search
Debug data:
This is a quick tutorial about how to use the Animator GUI development tool.
Animator GUI
The animator GUI lets you create animations for LUS units. The following is an example of how to use it.
- When you run spring, make sure you do it so you can see the console output. Either use a commandline prompt or run it with a text editor that supports it like Komodo Edit or Notepad++.
- Spawn a Glaive.
/cheat /give armpw
- Enable: F11 > Developer Tools > AnimatorGUI
- Select the Glaive. *Note*: If it was already selected, deselect and reselect.
- A tree-view will show the pieces on the glave. Click on the piecename's button to select it. If you want to be sure you chose the right piece, use the Hide/Show buttons to check.
- You can move and rotate pieces to make a pose (mostly you'll use rotate, not move).
- When you have a pose, click Write Out.
- In the console, copy the POSENAME function it outputs and paste it into your LUS. Give it a name (for example we'll call it punch). Notice that it takes two parameters, one for turnspeed and one for movespeed.
- Add the following code in your LUS after the punch:
function script.TestThread() StartThread( punch, 1, 1.5 ) end
This function will tell the LUS to start your punch pose function as a separate thread. All animation calls must be within forked threads rather than synchronous within functions. It is passing 1 for mspeed and 1.5 for tspeed to the punch pose.
- Reload luarules to reload the changes to your LUS:
/luarules reload
- Click on Reset to reset all the pieces' positions.
- Click on the "Test Thread" button to see your pose in action.
- You can now start the pose threads in actual LUS callins such as FireWeapon1.
Further reading
Debug data:
[SQLBagOStuff] MainObjectStash using store ReplicatedBagOStuff
[objectcache] MainWANObjectCache using store EmptyBagOStuff
IP: 18.191.32.71
Start request GET /mediawiki/Animator_GUI
HTTP HEADERS:
CONTENT-TYPE:
CONTENT-LENGTH: 0
X-ORIGINAL-URL: /mediawiki/Animator_GUI
PRIORITY: u=0, i
SEC-FETCH-DEST: document
SEC-FETCH-USER: ?1
SEC-FETCH-MODE: navigate
SEC-FETCH-SITE: none
UPGRADE-INSECURE-REQUESTS: 1
SEC-CH-UA-PLATFORM: "Windows"
SEC-CH-UA-MOBILE: ?0
SEC-CH-UA: "HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"
USER-AGENT: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
HOST: zero-k.info
ACCEPT-ENCODING: gzip, deflate, br, zstd
ACCEPT: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
PRAGMA: no-cache
CONNECTION: close
CACHE-CONTROL: no-cache[localisation] LocalisationCache: using store LCStoreDB
[session] SessionManager using store SqlBagOStuff
[DBReplication] Cannot use ChronologyProtector with EmptyBagOStuff
[DBReplication] Wikimedia\Rdbms\LBFactory::getChronologyProtector: request info {
"IPAddress": "18.191.32.71",
"UserAgent": "Mozilla\/5.0 AppleWebKit\/537.36 (KHTML, like Gecko; compatible; ClaudeBot\/1.0; +claudebot@anthropic.com)",
"ChronologyProtection": false,
"ChronologyPositionIndex": 0,
"ChronologyClientId": false
}[DBConnection] Wikimedia\Rdbms\LoadBalancer::lazyLoadReplicationPositions: executed chronology callback.
[DBConnection] Wikimedia\Rdbms\LoadBalancer::getLocalConnection: connected to database 0 at 'localhost'.
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[session] SessionBackend "54v3eba9gmvrp3304rnj5mqmaqgnc6ru" is unsaved, marking dirty in constructor
[session] SessionBackend "54v3eba9gmvrp3304rnj5mqmaqgnc6ru" save: dataDirty=1 metaDirty=1 forcePersist=0
[cookie] already deleted setcookie: "wikidb229_mw__session", "", "1711664570", "/", "", "", "1"
[cookie] already deleted setcookie: "wikidb229_mw_UserID", "", "1711664570", "/", "", "", "1"
[cookie] already deleted setcookie: "wikidb229_mw_Token", "", "1711664570", "/", "", "", "1"
[cookie] already deleted setcookie: "forceHTTPS", "", "1711664570", "/", "", "", "1"
[DBConnection] Wikimedia\Rdbms\LoadBalancer::getLocalConnection: connected to database 0 at 'localhost'.
Title::getRestrictionTypes: applicable restrictions to [[Animator GUI]] are {edit,move}
[ContentHandler] Created handler for wikitext: WikitextContentHandler
[MessageCache] MessageCache using store SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] SqlBagOStuff::lock failed due to timeout for wikidb229-mw_:messages:en.
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[MessageCache] MessageCache::load: Loading en... local cache is empty, global cache is expired/volatile, loading from database
ParserFactory: using preprocessor: Preprocessor_Hash
Unstubbing $wgLang on call of $wgLang::_unstub from ParserOptions->__construct
[caches] parser: SqlBagOStuff
Article::view using parser cache: yes
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
Parser cache options found.
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #127 (handle id #121) will be used for SqlBagOStuff
ParserOutput cache found.
Article::view: showing parser cache contents
MediaWiki::preOutputCommit: primary transaction round committed
MediaWiki::preOutputCommit: pre-send deferred updates completed
MediaWiki::preOutputCommit: session changes committed
MediaWiki::preOutputCommit: LBFactory shutdown completed
Title::getRestrictionTypes: applicable restrictions to [[Animator GUI]] are {edit,move}