From UFOpaedia
Jump to navigation Jump to search

Contacting Me

I'm hanging-out on the XCOM discord server if you want to chat directly or over voice (dependent on availability and what I'm doing at the time).

I have stopped working on the wiki for the time being until I get an answer back from the admins about whether or not they are going to let me change the site's CSS. Half of my editing time now consists of trying to manage the insane number of style tags required to get things to work; it's very pre-1995 stuff to be doing, and frankly, I don't have the time.

Useful Things

Regex pair to convert line breaks to HTML comments: \n(\s*)(.) >> <!--\n$1-->$2 And back: <!--\n(\s*)--> >> \n$1

Colours guide (for my own personal sanity and possibly yours; this should be formalized in CSS and not on a random page).

Mockup from @Mavoc via Discord for the Ability template.





Bot Jobs

  • Systematically check for all HTML tags that have been depreciated in HTML 5 and update or remove them. Make sure they are well-formed.
  • Since these depreciations are largely intended to be replaced by CSS, doing this without access to site-wide CSS is pointless.
  • Assign correct copyright for images (requires template).
  • Append a notice to all editors on all ability templates:
<!-- NOTICE TO EDITORS: For the sake of future maintainability, please do not remove parameters nor rearrange them. This will make it easier in future to update this template using a bot and regular expressions if necessary. -->


This is my todo list for templates. If you want to help me by doing any of this below, go for it. I won't mind. Really. Really I won't.

Roughly in order of priority.

To Create

  • Inline/table display, see problems below
  • {{Disambiguation}} : Disambiguation page.
  • {{Stub}} : Article stubs.
  • {{Sandbox}} : Mark sandboxes as such.
  • {{Candidate for deletion}} and {{Delete}} : Mark pages for deletion.
  • {{Constants}} : Mark that the template uses constants/defaults and provide links to each constant's subpage, up to say, 12? This could be folded into {{documentation}}
  • {{Subpage handler}} : Check for various subpages and display links if they exist, e.g. /Info , /Sandbox. Also allow for manual addition of at least three subpages. (A line of inline-blocks in a div should work well, or flex-box now that a skin update is coming.)
  • Status effects
  • Armor
  • Berserk
  • Bound
  • Burning
  • Concealed
  • Confused
  • Default
  • Disoriented
  • Haywire
  • Mind Controlled
  • Overwatch
  • Panic
  • Poison
  • Revealed
  • Stunned
  • Unconscious
  • Class icons
  • Assault
  • Grenadier
  • Gunner
  • Ranger
  • Sharpshooter
  • Shinobi
  • Specialist
  • Technical
  • Psi Operative
  • Stat bonuses
  • Aim
  • Dodge
  • Hack
  • Health
  • Mobility
  • Psi
  • Will

Inline/table display templates must be implemented very differently, but use the same data. This is a problem because it would result in duplication of information in different places, making it harder for editors to maintain in future. Template branching may be the best solution here, such that the default is inline display, with one "master" template for each subject/item. Gods I wish we had type checking and enums. Wishful thinking.

See Variable Templates for ideas. (After some thought, copying the selection logic into each implementation template makes the most sense. This would only need to be done once and will be less complicated than passing every parameter through a handler, which would get messy, fast.)

To Edit

  • {{documentation}} : Add link to /Sandbox .
  • {{TopBox}} : Make improvements. Set display to inline-block, and expose clear so that they can be along-side each other but also take-up the whole width if important. Will need min-widths, blah blah. Also consider flex.
  • {{Construction Notice}} : Make improvements.
  • {{No Direct Call}} : Make improvements.
  • Generalize template as a "do not transclude" template. Allow other reasons, e.g. a template being just so subpages are accessible.
  • Upon finalizing default values, all templates should be converted from using a Constants subpage and switch function, to using a subpage for each parameter.
Stat Progression (LW2)
Ability (LW2)
  • {{Ability_(LW2)}}
  • Support inline use by inserting the name in front of icon.
  • CSS Required : Display div with info text and invert colour of info icon when info icon is hovered over.

Create documentation for:


  • Upload Folders: Alerts, Corpses, DarkEvents, Equipment, Events, Facilities, Icons, POIs, Schematics, Research, Weapons. (Update: I think I got all these aside from weapons. Check if I did that.)
  • Compose Todo and Shortcut icons and upload.


Anything here will require access to the site's CSS to do.

  • Overlay weapon images inside a div to reconstruct a weapon + mods (could be useful for guides). Provide scaling ability. Definitely do not try without site CSS access. This will be dicey even with it. Classes are necessary to make this manageable, otherwise code duplication in style tags will be insane.

Classes to Create

  • CSS Strongly Recommended {{Style}} : Style templates for XCOM table and XCOMPsi table. Do so for rows as well. Do so for anything I touch in future. This is the entirely wrong way to do this. It should be handled by CSS classes, but since I don't have access to the CSS here will have to make do. These tables will not be portable between skins because of this (though no less so than the current versions). This could be handled by one switch function. And it's still a very bad idea because it will start to significantly effect server load if called constantly (which it will be because table styles have to be set for every cell when CSS is unavailable). To say nothing of the fact that doing so absolutely ruins specificity and makes it nigh impossible use CSS later. (Did I mention this is a bad idea? Style tags for everything is a bad idea.)
  • xcom2table : like wikitable but formatted with reasonable defaults for XCOM 2.
  • All classes in {{Ability (LW2)}}.
  • Classes for {{TopBox}} and all its children. (Link colours especially need to be fixed.)
  • Classes for {{Infobox}} and all its children.