User:Anarchid/OmniCommanderDesign
Jump to navigation
Jump to search
Debug data:
This is my attempt to figure out a design for an unified commander chassis.
Why
Historically ZK has had several commander chassis to provide variety for a bunch of reasons:
- Initially it was the only way to provide commander variety (because procedural generation of unitdefs was not available)
- Later, because while
unitdefs_post
solved the former problem, the models existed, and provided some, albeit visual feedback on what the commander was - Even later, as commanders became mostly "dynamic", for the same legacy reasons
- No model that would display more useful information than the current system exists.
This is bad for several reasons:
- Significantly initially different chassis are pregame RPS in several situations - such as Recon commander's jump available at level zero, or Support commander's build range
- This provides useful visual representation only for one important commander ability - jump - while all other abilities are essentially hidden. Especially guns all look exactly alike.
Design Design
Before approaching the design of this thing, it is useful to approach the design of designing this thing.
- As with current commander design requirements, this design should not have degenerate, overpowered or useless paths.
- Commanders should not be significantly stronger than same fair cost in units at any point, but should not be that much worse either
- A single build or a series of builds should not be always better than the others
- It's also a good idea to avoid as much lock-in as possible; branching systems that prohibit modules further down the line are boring (but "this module goes in the helmet slot, which is already occupied" is fine).
- For transition from chassis to modules entirely, the first level-up should be important enough to encompass all of the variety in current chassis and first-morph modules
- With the following criterion, this also means that the first morph should make commanders very *visibly* different as well.
- As much interesting information about the commander as possible should be meaningfully visible on the commander body.
- This intrinsically suggests tying commander modules to their respective body parts, and maybe even have body part based equipment slots
- Current stackable or weapon modules are insufficient to encompass this. A "subsystem module" approach like in Aquanim's draft may be useful.
- The important qualitatively difference items should take priority. Guns and jump ability are first tier; everything else is secondary or tertiary.
- The technical considerations of the omni-commander model should be considered at every step
- The model should be reasonably easy to modify and generally as low-maintenance as possible
- Replacement or refund of current commander skins should be considered and made as easy as possible
- Additional types of "hats" could be considered
Debug data:
[SQLBagOStuff] MainObjectStash using store ReplicatedBagOStuff
[objectcache] MainWANObjectCache using store EmptyBagOStuff
IP: 3.145.60.193
Start request GET /mediawiki/index.php?direction=prev&oldid=5009&title=User%3AAnarchid%2FOmniCommanderDesign
HTTP HEADERS:
CONTENT-TYPE:
CONTENT-LENGTH: 0
USER-AGENT: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
HOST: zero-k.info
COOKIE: wikidb229_mw__session=cblehv9v90qsqu4vgig5mf5ruktk0mbe
ACCEPT-ENCODING: gzip, br, zstd, deflate
ACCEPT: */*
CONNECTION: close[localisation] LocalisationCache: using store LCStoreDB
[session] SessionManager using store SqlBagOStuff
[session] Session "cblehv9v90qsqu4vgig5mf5ruktk0mbe" requested without UserID cookie
[DBReplication] Cannot use ChronologyProtector with EmptyBagOStuff
[DBReplication] Wikimedia\Rdbms\LBFactory::getChronologyProtector: request info {
"IPAddress": "3.145.60.193",
"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 #126 (handle id #120) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
[DBConnection] Wikimedia\Rdbms\LoadBalancer::getLocalConnection: connected to database 0 at 'localhost'.
Title::getRestrictionTypes: applicable restrictions to [[User:Anarchid/OmniCommanderDesign]] are {edit,move}
[ContentHandler] Created handler for wikitext: WikitextContentHandler
[MessageCache] MessageCache using store SqlBagOStuff
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
[SQLBagOStuff] SqlBagOStuff::lock failed due to timeout for wikidb229-mw_:messages:en.
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #126 (handle id #120) 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: no
Article::view: doing uncached parse
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
[SQLBagOStuff] Connection mysql object #126 (handle id #120) will be used for SqlBagOStuff
Parser cache options found.
[Preprocessor] Cached preprocessor output (key: wikidb229-mw_:preprocess-hash:f967e1431195041f3543088f74aee581:0)
[Preprocessor] Cached preprocessor output (key: wikidb229-mw_:preprocess-hash:f967e1431195041f3543088f74aee581:0)
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 [[User:Anarchid/OmniCommanderDesign]] are {edit,move}