Mod metadata, load screens and mod content is all now sourced from ftl files, allowing these items to be translated. Translations are now initialized as part of ModData creation, as currently they are made available too late for the usage we need here. The "modcontent" mod learns a new parameter for "Content.TranslationFile" - this allows a mod to provide the path of a translation file to the mod which it can load. This allows mods such as ra, cnc, d2k, ts to own the translations for their ModContent, yet still make them accessible to the modcontent mod. CheckFluentReference learns to validate all these new fields to ensure translations have been set.
325 lines
13 KiB
YAML
325 lines
13 KiB
YAML
Metadata:
|
|
Title: mod-title
|
|
Version: {DEV_VERSION}
|
|
Website: https://www.openra.net
|
|
WebIcon32: https://www.openra.net/images/icons/cnc_32x32.png
|
|
WindowTitle: mod-windowtitle
|
|
|
|
PackageFormats: Mix
|
|
|
|
FileSystem: DefaultFileSystem
|
|
Packages:
|
|
~^SupportDir|Content/cnc
|
|
~^SupportDir|Content/cnc/movies
|
|
^EngineDir
|
|
$cnc: cnc
|
|
^EngineDir|mods/common: common
|
|
~speech.mix
|
|
~conquer.mix
|
|
~sounds.mix
|
|
~tempicnh.mix
|
|
~temperat.mix
|
|
~winter.mix
|
|
~desert.mix
|
|
~movies.mix
|
|
~scores.mix
|
|
~scores2.mix
|
|
~scores-covertops.mix
|
|
~transit.mix
|
|
~general.mix
|
|
cnc|bits/snow.mix
|
|
cnc|bits
|
|
cnc|bits/jungle
|
|
cnc|bits/desert
|
|
cnc|bits/ss
|
|
cnc|scripts
|
|
common|scripts
|
|
cnc|uibits
|
|
|
|
MapFolders:
|
|
cnc|maps: System
|
|
~^SupportDir|maps/cnc/{DEV_VERSION}: User
|
|
|
|
Rules:
|
|
cnc|rules/misc.yaml
|
|
cnc|rules/ai.yaml
|
|
cnc|rules/player.yaml
|
|
cnc|rules/world.yaml
|
|
cnc|rules/palettes.yaml
|
|
cnc|rules/defaults.yaml
|
|
cnc|rules/structures.yaml
|
|
cnc|rules/infantry.yaml
|
|
cnc|rules/vehicles.yaml
|
|
cnc|rules/trees.yaml
|
|
cnc|rules/civilian.yaml
|
|
cnc|rules/civilian-desert.yaml
|
|
cnc|rules/tech.yaml
|
|
cnc|rules/ships.yaml
|
|
cnc|rules/aircraft.yaml
|
|
cnc|rules/husks.yaml
|
|
|
|
Sequences:
|
|
cnc|sequences/structures.yaml
|
|
cnc|sequences/vehicles.yaml
|
|
cnc|sequences/infantry.yaml
|
|
cnc|sequences/aircraft.yaml
|
|
cnc|sequences/decorations.yaml
|
|
cnc|sequences/misc.yaml
|
|
cnc|sequences/funpark.yaml
|
|
cnc|sequences/civilian.yaml
|
|
cnc|sequences/campaign.yaml
|
|
|
|
TileSets:
|
|
cnc|tilesets/desert.yaml
|
|
cnc|tilesets/winter.yaml
|
|
cnc|tilesets/snow.yaml
|
|
cnc|tilesets/temperat.yaml
|
|
cnc|tilesets/jungle.yaml
|
|
|
|
Weapons:
|
|
cnc|weapons/explosions.yaml
|
|
cnc|weapons/ballistics.yaml
|
|
cnc|weapons/missiles.yaml
|
|
cnc|weapons/other.yaml
|
|
cnc|weapons/smallcaliber.yaml
|
|
cnc|weapons/superweapons.yaml
|
|
|
|
Cursors:
|
|
cnc|cursors.yaml
|
|
|
|
Chrome:
|
|
cnc|chrome.yaml
|
|
|
|
Assemblies: OpenRA.Mods.Common.dll, OpenRA.Mods.Cnc.dll
|
|
|
|
ChromeLayout:
|
|
cnc|chrome/mainmenu.yaml
|
|
cnc|chrome/mainmenu-prompts.yaml
|
|
cnc|chrome/playerprofile.yaml
|
|
cnc|chrome/encyclopedia.yaml
|
|
cnc|chrome/multiplayer-browser.yaml
|
|
cnc|chrome/multiplayer-browserpanels.yaml
|
|
cnc|chrome/multiplayer-createserver.yaml
|
|
cnc|chrome/multiplayer-directconnect.yaml
|
|
cnc|chrome/lobby.yaml
|
|
cnc|chrome/lobby-mappreview.yaml
|
|
cnc|chrome/lobby-players.yaml
|
|
cnc|chrome/lobby-options.yaml
|
|
cnc|chrome/lobby-music.yaml
|
|
cnc|chrome/lobby-servers.yaml
|
|
cnc|chrome/lobby-kickdialogs.yaml
|
|
cnc|chrome/connection.yaml
|
|
cnc|chrome/color-picker.yaml
|
|
cnc|chrome/mapchooser.yaml
|
|
cnc|chrome/replaybrowser.yaml
|
|
cnc|chrome/gamesave-browser.yaml
|
|
cnc|chrome/gamesave-loading.yaml
|
|
cnc|chrome/ingame.yaml
|
|
cnc|chrome/ingame-chat.yaml
|
|
common|chrome/ingame-transients.yaml
|
|
cnc|chrome/ingame-menu.yaml
|
|
cnc|chrome/ingame-debug.yaml
|
|
common|chrome/ingame-debug-hpf.yaml
|
|
cnc|chrome/ingame-infochat.yaml
|
|
cnc|chrome/ingame-info.yaml
|
|
cnc|chrome/ingame-infobriefing.yaml
|
|
common|chrome/ingame-infoscripterror.yaml
|
|
cnc|chrome/ingame-infoobjectives.yaml
|
|
cnc|chrome/ingame-infostats.yaml
|
|
cnc|chrome/ingame-info-lobby-options.yaml
|
|
cnc|chrome/ingame-debuginfo.yaml
|
|
cnc|chrome/music.yaml
|
|
cnc|chrome/settings.yaml
|
|
cnc|chrome/settings-display.yaml
|
|
cnc|chrome/settings-audio.yaml
|
|
cnc|chrome/settings-input.yaml
|
|
cnc|chrome/settings-hotkeys.yaml
|
|
cnc|chrome/settings-advanced.yaml
|
|
cnc|chrome/credits.yaml
|
|
cnc|chrome/dialogs.yaml
|
|
cnc|chrome/tooltips.yaml
|
|
cnc|chrome/assetbrowser.yaml
|
|
cnc|chrome/missionbrowser.yaml
|
|
cnc|chrome/editor.yaml
|
|
common|chrome/text-notifications.yaml
|
|
|
|
Translations:
|
|
common|languages/en.ftl
|
|
common|languages/rules/en.ftl
|
|
cnc|languages/en.ftl
|
|
cnc|languages/chrome/en.ftl
|
|
cnc|languages/rules/en.ftl
|
|
|
|
AllowUnusedTranslationsInExternalPackages: false
|
|
|
|
Voices:
|
|
cnc|audio/voices.yaml
|
|
|
|
Notifications:
|
|
cnc|audio/notifications.yaml
|
|
|
|
Music:
|
|
cnc|audio/music.yaml
|
|
|
|
Hotkeys:
|
|
common|hotkeys/game.yaml
|
|
common|hotkeys/observer.yaml
|
|
common|hotkeys/production-common.yaml
|
|
common|hotkeys/production-peractor.yaml
|
|
common|hotkeys/supportpowers.yaml
|
|
common|hotkeys/viewport.yaml
|
|
common|hotkeys/chat.yaml
|
|
common|hotkeys/editor.yaml
|
|
common|hotkeys/control-groups.yaml
|
|
cnc|hotkeys.yaml
|
|
|
|
LoadScreen: CncLoadScreen
|
|
Image: cnc|uibits/chrome.png
|
|
Image2x: cnc|uibits/chrome-2x.png
|
|
Image3x: cnc|uibits/chrome-3x.png
|
|
|
|
ServerTraits:
|
|
LobbyCommands
|
|
SkirmishLogic
|
|
PlayerPinger
|
|
MasterServerPinger
|
|
LobbySettingsNotification
|
|
|
|
ChromeMetrics:
|
|
common|metrics.yaml
|
|
cnc|metrics.yaml
|
|
|
|
Fonts:
|
|
Tiny:
|
|
Font: common|FreeSans.ttf
|
|
Size: 10
|
|
Ascender: 8
|
|
TinyBold:
|
|
Font: common|FreeSansBold.ttf
|
|
Size: 10
|
|
Ascender: 8
|
|
Small:
|
|
Font: common|FreeSans.ttf
|
|
Size: 12
|
|
Ascender: 9
|
|
Regular:
|
|
Font: common|FreeSans.ttf
|
|
Size: 14
|
|
Ascender: 11
|
|
Bold:
|
|
Font: common|FreeSansBold.ttf
|
|
Size: 14
|
|
Ascender: 11
|
|
MediumBold:
|
|
Font: common|FreeSansBold.ttf
|
|
Size: 18
|
|
Ascender: 14
|
|
BigBold:
|
|
Font: common|FreeSansBold.ttf
|
|
Size: 24
|
|
Ascender: 18
|
|
Title:
|
|
Font: common|FreeSansBold.ttf
|
|
Size: 32
|
|
Ascender: 24
|
|
|
|
Missions:
|
|
cnc|missions.yaml
|
|
|
|
MapGrid:
|
|
TileSize: 24,24
|
|
Type: Rectangular
|
|
|
|
DefaultOrderGenerator: UnitOrderGenerator
|
|
|
|
SupportsMapsFrom: cnc
|
|
|
|
SoundFormats: Aud, Wav
|
|
|
|
SpriteFormats: ShpTD, TmpTD, ShpTS, TmpRA
|
|
|
|
VideoFormats: Vqa, Wsa
|
|
|
|
TerrainFormat: DefaultTerrain
|
|
|
|
SpriteSequenceFormat: ClassicTilesetSpecificSpriteSequence
|
|
|
|
AssetBrowser:
|
|
SpriteExtensions: .shp, .tem, .win, .sno, .des, .jun
|
|
AudioExtensions: .aud, .wav, .v00, .v01, .v02, .v03, .var
|
|
VideoExtensions: .vqa, .wsa
|
|
|
|
GameSpeeds:
|
|
DefaultSpeed: default
|
|
Speeds:
|
|
slowest:
|
|
Name: options-game-speed.slowest
|
|
Timestep: 80
|
|
OrderLatency: 2
|
|
slower:
|
|
Name: options-game-speed.slower
|
|
Timestep: 50
|
|
OrderLatency: 3
|
|
default:
|
|
Name: options-game-speed.normal
|
|
Timestep: 40
|
|
OrderLatency: 3
|
|
fast:
|
|
Name: options-game-speed.fast
|
|
Timestep: 35
|
|
OrderLatency: 4
|
|
faster:
|
|
Name: options-game-speed.faster
|
|
Timestep: 30
|
|
OrderLatency: 4
|
|
fastest:
|
|
Name: options-game-speed.fastest
|
|
Timestep: 20
|
|
OrderLatency: 6
|
|
|
|
ModContent:
|
|
InstallPromptMessage: modcontent-installprompt
|
|
QuickDownload: basefiles
|
|
HeaderMessage: modcontent-header
|
|
Packages:
|
|
ContentPackage@base:
|
|
Title: modcontent-package-basefiles
|
|
Identifier: base
|
|
TestFiles: ^SupportDir|Content/cnc/conquer.mix, ^SupportDir|Content/cnc/desert.mix, ^SupportDir|Content/cnc/sounds.mix, ^SupportDir|Content/cnc/speech.mix, ^SupportDir|Content/cnc/temperat.mix, ^SupportDir|Content/cnc/tempicnh.mix, ^SupportDir|Content/cnc/winter.mix
|
|
Sources: gdi95, nod95, tfd, tuc-steam, tuc-origin, cncr-steam, cncr-origin
|
|
Required: true
|
|
Download: basefiles
|
|
ContentPackage@music:
|
|
Title: modcontent-package-basemusic
|
|
Identifier: music
|
|
TestFiles: ^SupportDir|Content/cnc/scores.mix
|
|
Sources: gdi95, nod95, tfd, tuc-steam, tuc-origin, cncr-steam, cncr-origin
|
|
ContentPackage@movies-gdi:
|
|
Title: modcontent-package-gdi
|
|
Identifier: movies-gdi
|
|
TestFiles: ^SupportDir|Content/cnc/movies/visor.vqa, ^SupportDir|Content/cnc/movies/turtkill.vqa, ^SupportDir|Content/cnc/movies/tbrinfo3.vqa, ^SupportDir|Content/cnc/movies/tbrinfo2.vqa, ^SupportDir|Content/cnc/movies/tbrinfo1.vqa, ^SupportDir|Content/cnc/movies/seige.vqa, ^SupportDir|Content/cnc/movies/samsite.vqa, ^SupportDir|Content/cnc/movies/samdie.vqa, ^SupportDir|Content/cnc/movies/sabotage.vqa, ^SupportDir|Content/cnc/movies/retro.vqa, ^SupportDir|Content/cnc/movies/podium.vqa, ^SupportDir|Content/cnc/movies/planecra.vqa, ^SupportDir|Content/cnc/movies/pintle.vqa, ^SupportDir|Content/cnc/movies/paratrop.vqa, ^SupportDir|Content/cnc/movies/nodsweep.vqa, ^SupportDir|Content/cnc/movies/nodlose.vqa, ^SupportDir|Content/cnc/movies/nodflees.vqa, ^SupportDir|Content/cnc/movies/nod1.vqa, ^SupportDir|Content/cnc/movies/nitejump.vqa, ^SupportDir|Content/cnc/movies/napalm.vqa, ^SupportDir|Content/cnc/movies/logo.vqa, ^SupportDir|Content/cnc/movies/landing.vqa, ^SupportDir|Content/cnc/movies/intro2.vqa, ^SupportDir|Content/cnc/movies/hellvaly.vqa, ^SupportDir|Content/cnc/movies/gunboat.vqa, ^SupportDir|Content/cnc/movies/generic.vqa, ^SupportDir|Content/cnc/movies/gdilose.vqa, ^SupportDir|Content/cnc/movies/gdifinb.vqa, ^SupportDir|Content/cnc/movies/gdifina.vqa, ^SupportDir|Content/cnc/movies/gdiend2.vqa, ^SupportDir|Content/cnc/movies/gdiend1.vqa, ^SupportDir|Content/cnc/movies/gdi9.vqa, ^SupportDir|Content/cnc/movies/gdi8b.vqa, ^SupportDir|Content/cnc/movies/gdi8a.vqa, ^SupportDir|Content/cnc/movies/gdi7.vqa, ^SupportDir|Content/cnc/movies/gdi6.vqa, ^SupportDir|Content/cnc/movies/gdi5.vqa, ^SupportDir|Content/cnc/movies/gdi4b.vqa, ^SupportDir|Content/cnc/movies/gdi4a.vqa, ^SupportDir|Content/cnc/movies/gdi3lose.vqa, ^SupportDir|Content/cnc/movies/gdi3.vqa, ^SupportDir|Content/cnc/movies/gdi2.vqa, ^SupportDir|Content/cnc/movies/gdi15.vqa, ^SupportDir|Content/cnc/movies/gdi14.vqa, ^SupportDir|Content/cnc/movies/gdi13.vqa, ^SupportDir|Content/cnc/movies/gdi12.vqa, ^SupportDir|Content/cnc/movies/gdi11.vqa, ^SupportDir|Content/cnc/movies/gdi10.vqa, ^SupportDir|Content/cnc/movies/gdi1.vqa, ^SupportDir|Content/cnc/movies/gameover.vqa, ^SupportDir|Content/cnc/movies/forestkl.vqa, ^SupportDir|Content/cnc/movies/flyy.vqa, ^SupportDir|Content/cnc/movies/flag.vqa, ^SupportDir|Content/cnc/movies/dino.vqa, ^SupportDir|Content/cnc/movies/desolat.vqa, ^SupportDir|Content/cnc/movies/consyard.vqa, ^SupportDir|Content/cnc/movies/cc2tease.vqa, ^SupportDir|Content/cnc/movies/burdet2.vqa, ^SupportDir|Content/cnc/movies/burdet1.vqa, ^SupportDir|Content/cnc/movies/bombflee.vqa, ^SupportDir|Content/cnc/movies/bombaway.vqa, ^SupportDir|Content/cnc/movies/bkground.vqa, ^SupportDir|Content/cnc/movies/bcanyon.vqa, ^SupportDir|Content/cnc/movies/banner.vqa
|
|
Sources: gdi95, tfd, tuc-steam, tuc-origin, cncr-steam, cncr-origin
|
|
ContentPackage@movies-nod:
|
|
Title: modcontent-package-nod
|
|
Identifier: movies-nod
|
|
TestFiles: ^SupportDir|Content/cnc/movies/visor.vqa, ^SupportDir|Content/cnc/movies/trtkil_d.vqa, ^SupportDir|Content/cnc/movies/tiberfx.vqa, ^SupportDir|Content/cnc/movies/tankkill.vqa, ^SupportDir|Content/cnc/movies/tankgo.vqa, ^SupportDir|Content/cnc/movies/sundial.vqa, ^SupportDir|Content/cnc/movies/stealth.vqa, ^SupportDir|Content/cnc/movies/spycrash.vqa, ^SupportDir|Content/cnc/movies/sethpre.vqa, ^SupportDir|Content/cnc/movies/seige.vqa, ^SupportDir|Content/cnc/movies/samsite.vqa, ^SupportDir|Content/cnc/movies/retro.vqa, ^SupportDir|Content/cnc/movies/refint.vqa, ^SupportDir|Content/cnc/movies/obel.vqa, ^SupportDir|Content/cnc/movies/nuke.vqa, ^SupportDir|Content/cnc/movies/nodlose.vqa, ^SupportDir|Content/cnc/movies/nodfinal.vqa, ^SupportDir|Content/cnc/movies/nodend4.vqa, ^SupportDir|Content/cnc/movies/nodend3.vqa, ^SupportDir|Content/cnc/movies/nodend2.vqa, ^SupportDir|Content/cnc/movies/nodend1.vqa, ^SupportDir|Content/cnc/movies/nod9.vqa, ^SupportDir|Content/cnc/movies/nod8.vqa, ^SupportDir|Content/cnc/movies/nod7b.vqa, ^SupportDir|Content/cnc/movies/nod7a.vqa, ^SupportDir|Content/cnc/movies/nod6.vqa, ^SupportDir|Content/cnc/movies/nod5.vqa, ^SupportDir|Content/cnc/movies/nod4b.vqa, ^SupportDir|Content/cnc/movies/nod4a.vqa, ^SupportDir|Content/cnc/movies/nod3.vqa, ^SupportDir|Content/cnc/movies/nod2.vqa, ^SupportDir|Content/cnc/movies/nod1pre.vqa, ^SupportDir|Content/cnc/movies/nod13.vqa, ^SupportDir|Content/cnc/movies/nod12.vqa, ^SupportDir|Content/cnc/movies/nod11.vqa, ^SupportDir|Content/cnc/movies/nod10b.vqa, ^SupportDir|Content/cnc/movies/nod10a.vqa, ^SupportDir|Content/cnc/movies/nod1.vqa, ^SupportDir|Content/cnc/movies/logo.vqa, ^SupportDir|Content/cnc/movies/landing.vqa, ^SupportDir|Content/cnc/movies/kanepre.vqa, ^SupportDir|Content/cnc/movies/intro2.vqa, ^SupportDir|Content/cnc/movies/insites.vqa, ^SupportDir|Content/cnc/movies/generic.vqa, ^SupportDir|Content/cnc/movies/gdi1.vqa, ^SupportDir|Content/cnc/movies/gameover.vqa, ^SupportDir|Content/cnc/movies/forestkl.vqa, ^SupportDir|Content/cnc/movies/flag.vqa, ^SupportDir|Content/cnc/movies/dino.vqa, ^SupportDir|Content/cnc/movies/dessweep.vqa, ^SupportDir|Content/cnc/movies/deskill.vqa, ^SupportDir|Content/cnc/movies/desflees.vqa, ^SupportDir|Content/cnc/movies/consyard.vqa, ^SupportDir|Content/cnc/movies/cc2tease.vqa, ^SupportDir|Content/cnc/movies/bombflee.vqa, ^SupportDir|Content/cnc/movies/bombaway.vqa, ^SupportDir|Content/cnc/movies/bcanyon.vqa, ^SupportDir|Content/cnc/movies/banner.vqa, ^SupportDir|Content/cnc/movies/akira.vqa, ^SupportDir|Content/cnc/movies/airstrk.vqa
|
|
Sources: nod95, tfd, tuc-steam, tuc-origin, cncr-steam, cncr-origin
|
|
ContentPackage@music-covertops:
|
|
Title: modcontent-package-covertopsmusic
|
|
Identifier: music-covertops
|
|
TestFiles: ^SupportDir|Content/cnc/scores-covertops.mix
|
|
Sources: covertops, tfd, tuc-steam, tuc-origin, cncr-steam, cncr-origin
|
|
Downloads:
|
|
cnc|installer/downloads.yaml
|
|
Sources:
|
|
cnc|installer/covertops.yaml
|
|
cnc|installer/firstdecade.yaml
|
|
cnc|installer/gdi95.yaml
|
|
cnc|installer/nod95.yaml
|
|
cnc|installer/origin.yaml
|
|
cnc|installer/steam.yaml
|
|
Translation: cnc|languages/modcontent/en.ftl
|
|
|
|
DiscordService:
|
|
ApplicationId: 699223250181292033
|