diff --git a/mods/cnc-classic/chrome.yaml b/mods/cnc-classic/chrome.yaml new file mode 100644 index 0000000000..5f7630db6c --- /dev/null +++ b/mods/cnc-classic/chrome.yaml @@ -0,0 +1,528 @@ +chrome-gdi: chrome-gdi.png + specialbin-top: 0,0,30,51 + specialbin-middle: 0,51,30,51 + specialbin-bottom: 0,153,30,39 + moneybin: 192,0,320,32 + tooltip-bg: 0,288,272,136 + +radar-gdi: chrome-gdi.png + left: 297,31,9,192 + right: 498,31,9,192 + bottom: 297,223,210,30 + bg: 306,31,192,192 + +power-gdi: chrome-gdi.png + power-indicator: 187,4,4,7 + +palette-gdi: chrome-gdi.png + top: 297,288,201,9 + dock-top: 498,274,14,23 + bottom: 297,489,201,9 + dock-bottom: 498,489,14,23 + bg-0: 297,297,201,48 + dock-0: 498,297,14,48 + bg-1: 297,345,201,48 + dock-1: 498,345,14,48 + bg-2: 297,393,201,48 + dock-2: 498,393,14,48 + bg-3: 297,441,201,48 + dock-3: 498,441,14,48 + +digits-gdi: chrome-gdi.png + 0: 32,0,13,17 + 1: 45,0,13,17 + 2: 58,0,13,17 + 3: 71,0,13,17 + 4: 84,0,13,17 + 5: 97,0,13,17 + 6: 110,0,13,17 + 7: 123,0,13,17 + 8: 136,0,13,17 + 9: 149,0,13,17 + +chrome-nod: chrome-nod.png + specialbin-top: 0,0,30,51 + specialbin-middle: 0,51,30,51 + specialbin-bottom: 0,153,30,39 + moneybin: 192,0,320,32 + tooltip-bg: 0,288,272,136 + +radar-nod: chrome-nod.png + left: 297,31,9,192 + right: 498,31,9,192 + bottom: 297,223,210,30 + bg: 306,31,192,192 + power-indicator: 187,4,4,7 + +power-nod: chrome-nod.png + power-indicator: 187,4,4,7 + +palette-nod: chrome-nod.png + top: 297,288,201,9 + dock-top: 498,274,14,23 + bottom: 297,489,201,9 + dock-bottom: 498,489,14,23 + bg-0: 297,297,201,48 + dock-0: 498,297,14,48 + bg-1: 297,345,201,48 + dock-1: 498,345,14,48 + bg-2: 297,393,201,48 + dock-2: 498,393,14,48 + bg-3: 297,441,201,48 + dock-3: 498,441,14,48 + +digits-nod: chrome-nod.png + 0: 32,0,13,17 + 1: 45,0,13,17 + 2: 58,0,13,17 + 3: 71,0,13,17 + 4: 84,0,13,17 + 5: 97,0,13,17 + 6: 110,0,13,17 + 7: 123,0,13,17 + 8: 136,0,13,17 + 9: 149,0,13,17 + +tabs-selected: tabs.png + gdi-Building: 0,0,27,41 + gdi-Defense: 0,40,27,41 + gdi-Infantry: 0,80,27,41 + gdi-Vehicle: 0,120,27,41 + gdi-Aircraft: 0,160,27,41 + gdi-Ship: 0,200,27,41 + nod-Building: 80,0,27,41 + nod-Defense: 80,40,27,41 + nod-Infantry: 80,80,27,41 + nod-Vehicle: 80,120,27,41 + nod-Aircraft: 80,160,27,41 + nod-Ship: 80,200,27,41 + +tabs-ready: tabs.png + gdi-Building: 27,0,27,41 + gdi-Defense: 27,40,27,41 + gdi-Infantry: 27,80,27,41 + gdi-Vehicle: 27,120,27,41 + gdi-Aircraft: 27,160,27,41 + gdi-Ship: 27,200,27,41 + nod-Building: 107,0,27,41 + nod-Defense: 107,40,27,41 + nod-Infantry: 107,80,27,41 + nod-Vehicle: 107,120,27,41 + nod-Aircraft: 107,160,27,41 + nod-Ship: 107,200,27,41 + +tabs-normal: tabs.png + gdi-Building: 54,0,27,41 + gdi-Defense: 54,40,27,41 + gdi-Infantry: 54,80,27,41 + gdi-Vehicle: 54,120,27,41 + gdi-Aircraft: 54,160,27,41 + gdi-Ship: 54,200,27,41 + nod-Building: 134,0,27,41 + nod-Defense: 134,40,27,41 + nod-Infantry: 134,80,27,41 + nod-Vehicle: 134,120,27,41 + nod-Aircraft: 134,160,27,41 + nod-Ship: 134,200,27,41 + +dialog2: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +dialog3: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +dialog4: dialog.png + border-t: 773,0,52,6 + border-b: 773,58,52,6 + border-l: 768,5,6,54 + border-r: 826,5,6,54 + corner-tl: 768,0,6,6 + corner-tr: 826,0,6,6 + corner-bl: 768,58,6,6 + corner-br: 826,58,6,6 + background: 773,5,52,52 + +dialog: dialog.png + background: 0,0,480,480 + border-r: 489,0,9,192 + border-l: 480,0,9,192 + border-b: 0,489,191,9 + border-t: 0,480,191,9 + corner-tl: 191,480,9,9 + corner-tr: 200,480,9,9 + corner-bl: 191,489,9,9 + corner-br: 200,489,9,9 + +spawnpoints: spawnpoints.png + unowned: 528,128,16,16 + owned: 512,128,16,16 + +strategic: strategic.png + unowned: 0,0,32,32 + critical_unowned: 0,32,32,32 + enemy_owned: 32,32,32,32 + player_owned: 96,0,32,32 + +sell-button: buttons.png + normal: 0,0,34,28 + pressed: 34,0,34,28 + disabled: 68,0,34,28 + +repair-button: buttons.png + normal: 0,28,34,28 + pressed: 34,28,34,28 + disabled: 68,28,34,28 + +power-button: buttons.png + normal: 0,56,34,28 + pressed: 34,56,34,28 + disabled: 68,56,34,28 + +flags: buttons.png + gdi: 30,84,30,15 + nod: 0,84,30,15 + random: 60,84,30,15 + spectator: 60,84,30,15 + +music: musicplayer.png + pause: 0,0,25,25 + stop: 28,0,25,25 + play: 56,0,25,25 + next: 84,0,25,25 + prev: 112,0,25,25 + +scrollbar: buttons.png + down_arrow: 16,112,16,16 + down_pressed: 16,112,16,16 + up_arrow: 32,112,16,16 + up_pressed: 32,112,16,16 + +# A copy of dialog3 +progressbar-bg: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog2 +progressbar-thumb: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +# A copy of dialog2 +button: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +button-highlighted: dialog.png + background: 513,145,126,126 + border-r: 639,145,1,126 + border-l: 512,145,1,126 + border-b: 513,271,126,1 + border-t: 513,144,126,1 + corner-tl: 512,144,1,1 + corner-tr: 594,144,1,1 + corner-bl: 512,271,1,1 + corner-br: 594,271,1,1 + +# A copy of dialog2 +button-hover: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +button-hover-highlighted: dialog.png + background: 513,145,126,126 + border-r: 639,145,1,126 + border-l: 512,145,1,126 + border-b: 513,271,126,1 + border-t: 513,144,126,1 + corner-tl: 512,144,1,1 + corner-tr: 594,144,1,1 + corner-bl: 512,271,1,1 + corner-br: 594,271,1,1 + +# A copy of dialog2 +button-disabled: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +button-disabled-highlighted: dialog.png + background: 513,145,126,126 + border-r: 639,145,1,126 + border-l: 512,145,1,126 + border-b: 513,271,126,1 + border-t: 513,144,126,1 + corner-tl: 512,144,1,1 + corner-tr: 594,144,1,1 + corner-bl: 512,271,1,1 + corner-br: 594,271,1,1 + +# A copy of dialog3 +button-pressed: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +button-pressed-highlighted: dialog.png + background: 641,145,126,126 + border-r: 767,145,1,126 + border-l: 640,145,1,126 + border-b: 641,271,126,1 + border-t: 641,144,126,1 + corner-tl: 640,144,1,1 + corner-tr: 722,144,1,1 + corner-bl: 640,271,1,1 + corner-br: 722,271,1,1 + +scrollthumb: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +# A copy of dialog2 +scrollthumb-hover: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +# A copy of dialog2 +scrollthumb-disabled: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +# A copy of dialog3 +scrollthumb-pressed: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +# A copy of dialog3 +textfield: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog3 +textfield-hover: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog3 +textfield-disabled: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog3 +textfield-focused: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog3 +scrollpanel-bg: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + + +# A copy of dialog2 +slider-tick: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +# A copy of dialog3 +slider-track: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog3 +checkbox: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +checkbox-bits: buttons.png + checked: 0,112,16,16 + +# A copy of dialog3 +checkbox-hover: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog3 +checkbox-disabled: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog3 +scrollitem-selected: dialog.png + background: 641,1,126,126 + border-r: 767,1,1,126 + border-l: 640,1,1,126 + border-b: 641,127,126,1 + border-t: 641,0,126,1 + corner-tl: 640,0,1,1 + corner-tr: 722,0,1,1 + corner-bl: 640,82,1,1 + corner-br: 722,82,1,1 + +# A copy of dialog2 +scrollitem-hover: dialog.png + background: 513,1,126,126 + border-r: 639,1,1,126 + border-l: 512,1,1,126 + border-b: 513,127,126,1 + border-t: 513,0,126,1 + corner-tl: 512,0,1,1 + corner-tr: 594,0,1,1 + corner-bl: 512,82,1,1 + corner-br: 594,82,1,1 + +misc: misc.png + isadmin: 0,0,10,15 diff --git a/mods/cnc-classic/mod.yaml b/mods/cnc-classic/mod.yaml new file mode 100644 index 0000000000..1d57c7bf19 --- /dev/null +++ b/mods/cnc-classic/mod.yaml @@ -0,0 +1,137 @@ +Metadata: + Title: C&C Classic (WIP) + Description: Try to emulate the original + Version: {DEV_VERSION} + Author: The OpenRA Developers + +Folders: + . + ./mods/cnc + ./mods/cnc/bits + ./mods/cnc-classic/uibits + ./mods/cnc/uibits + ./mods/ra/uibits + ~^/Content/cnc + +Packages: + overrides.mix + bluetib.mix + speech.mix + conquer.mix + sounds.mix + tempicnh.mix + temperat.mix + winter.mix + desert.mix + snow.mix + ~movies-gdi.mix + ~movies-nod.mix + ~movies.mix + ~scores.mix + ~transit.mix + +Rules: + mods/cnc-classic/rules/defaults.yaml + mods/cnc-classic/rules/system.yaml + mods/cnc-classic/rules/structures.yaml + mods/cnc-classic/rules/infantry.yaml + mods/cnc-classic/rules/vehicles.yaml + mods/cnc-classic/rules/trees.yaml + mods/cnc-classic/rules/civilian.yaml + mods/cnc-classic/rules/civilian-desert.yaml + mods/cnc-classic/rules/tech.yaml + mods/cnc-classic/rules/ships.yaml + mods/cnc-classic/rules/aircraft.yaml + +Sequences: + mods/cnc/sequences/structures.yaml + mods/cnc/sequences/vehicles.yaml + mods/cnc/sequences/infantry.yaml + mods/cnc/sequences/map.yaml + mods/cnc/sequences/misc.yaml + # Low priority sequences that break the batch when used + mods/cnc/sequences/civilian.yaml + mods/cnc/sequences/campaign.yaml +Cursors: + mods/cnc/cursors.yaml + +Chrome: + mods/cnc-classic/chrome.yaml + +Assemblies: + mods/ra/OpenRA.Mods.RA.dll + mods/cnc/OpenRA.Mods.Cnc.dll + +ChromeLayout: + mods/ra/chrome/gameinit.yaml + mods/ra/chrome/ingame.yaml + mods/ra/chrome/mainmenu.yaml + mods/ra/chrome/settings.yaml + mods/ra/chrome/lobby.yaml + mods/ra/chrome/map-chooser.yaml + mods/ra/chrome/create-server.yaml + mods/ra/chrome/serverbrowser.yaml + mods/ra/chrome/replaybrowser.yaml + mods/ra/chrome/dropdowns.yaml + mods/ra/chrome/modchooser.yaml + mods/ra/chrome/cheats.yaml + mods/ra/chrome/objectives.yaml + +Weapons: + mods/cnc/weapons.yaml + +Movies: + mods/cnc/movies-gdi.yaml + mods/cnc/movies-nod.yaml + +Voices: + mods/cnc/voices.yaml + +Notifications: + mods/cnc-classic/notifications.yaml + +Music: + mods/cnc/music.yaml + +TileSets: + mods/cnc/tilesets/desert.yaml + mods/cnc/tilesets/winter.yaml + mods/cnc/tilesets/snow.yaml + mods/cnc/tilesets/temperat.yaml + + +LoadScreen: RALoadScreen + InstallerMenuWidget: INSTALL_PANEL + TestFile: conquer.mix + LoadScreenImage: mods/cnc-classic/uibits/loadscreen.png + PackageURL: http://open-ra.org/get-dependency.php?file=cnc-packages + +ServerTraits: + LobbyCommands + MasterServerPinger + +ChromeMetrics: + mods/ra/metrics.yaml + +Fonts: + Regular: + Font:FreeSans.ttf + Size:14 + Bold: + Font:FreeSansBold.ttf + Size:14 + Title: + Font:titles.ttf + Size:48 + MediumBold: + Font:FreeSansBold.ttf + Size:18 + BigBold: + Font:FreeSansBold.ttf + Size:24 + Tiny: + Font:FreeSans.ttf + Size:10 + TinyBold: + Font:FreeSansBold.ttf + Size:10 diff --git a/mods/cnc-classic/notifications.yaml b/mods/cnc-classic/notifications.yaml new file mode 100644 index 0000000000..64b327c77d --- /dev/null +++ b/mods/cnc-classic/notifications.yaml @@ -0,0 +1,38 @@ +Speech: + Notifications: + Repairing: repair1 + LowPower: lopower1 + SilosNeeded: silos1 + PrimaryBuildingSelected: pribldg1 + BuildingCannotPlaceAudio: deploy1 + NewOptions: newopt1 + AbilityInsufficientPower: nopower1 + Win: accom1 + Lose: fail1 + BaseAttack: baseatk1 + HarvesterAttack: + Leave: batlcon1 + UnitReady: unitredy + NoBuild: nobuild1 + Training: bldging1 + OnHold: onhold1 + Cancelled: cancel1 + Building: bldging1 + ConstructionComplete: constru1 + Reinforce: reinfor1 + +Sounds: + Notifications: + RadarUp: comcntr1 + RadarDown: powrdn1 + CashTickUp: + CashTickDown: + LevelUp: text2 + DisablePower: button + EnablePower: button + ChatLine: scold1 + BuildPaletteOpen: button + BuildPaletteClose: button + TabClick: button + ClickSound: button + ClickDisabledSound: scold2 \ No newline at end of file diff --git a/mods/cnc-classic/rules/aircraft.yaml b/mods/cnc-classic/rules/aircraft.yaml new file mode 100644 index 0000000000..06254fc00d --- /dev/null +++ b/mods/cnc-classic/rules/aircraft.yaml @@ -0,0 +1,177 @@ +TRAN: + Inherits: ^Helicopter + Valued: + Cost: 1500 + Tooltip: + Name: Chinook Transport + Icon:tranicnh + Description: Fast Infantry Transport Helicopter.\n Unarmed + Buildable: + BuildPaletteOrder: 10 + Prerequisites: hpad + BuiltAt: hpad + Owner: gdi,nod + Selectable: + Bounds: 41,41 + Helicopter: + LandWhenIdle: true + ROT: 5 + Speed: 15 + InitialFacing: 0 + LandableTerrainTypes: Clear,Rough,Road,Ore,Beach + Health: + HP: 90 + Armor: + Type: Light + RevealsShroud: + Range: 8 + RenderUnit: + WithRotor@PRIMARY: + Offset: 0,14,0,-4 + WithRotor@SECONDARY: + Id: rotor_2 + Offset: 0,-14,0,-2 + WithShadow: + Cargo: + Types: Infantry + MaxWeight: 10 + PipCount: 10 + FallsToEarth: + +HELI: + Inherits: ^Helicopter + Valued: + Cost: 1200 + Tooltip: + Name: Apache Longbow + Icon: heliicnh + Description: Helicopter Gunship with Chainguns.\n Strong vs Infantry, Light Vehicles\n Weak vs Tanks + Buildable: + BuildPaletteOrder: 20 + Prerequisites: hpad, hq + BuiltAt: hpad + Owner: nod + Selectable: + Bounds: 30,24 + Helicopter: + ROT: 4 + Speed: 20 + Health: + HP: 125 + Armor: + Type: Light + RevealsShroud: + Range: 8 + AttackHeli: + PrimaryWeapon: HeliAGGun + PrimaryOffset: 0,-3,0,2 + PrimaryLocalOffset: -5,0,0,0,0, 5,0,0,0,0 + SecondaryWeapon: HeliAAGun + SecondaryOffset: 0,-3,0,2 + SecondaryLocalOffset: -5,0,0,0,0, 5,0,0,0,0 + FacingTolerance: 20 + LimitedAmmo: + Ammo: 10 + PipCount: 5 + Reloads: + Count: 10 + Period: 200 + RenderUnit: + WithRotor: + Offset: 0,0,0,-2 + WithMuzzleFlash: + WithShadow: + FallsToEarth: + AutoTarget: + +ORCA: + Inherits: ^Helicopter + Valued: + Cost: 1200 + Tooltip: + Name: Orca + Icon: orcaicnh + Description: Helicopter Gunship with AG Missiles.\n Strong vs Buildings, Tanks\n Weak vs Infantry + Buildable: + BuildPaletteOrder: 20 + Prerequisites: hpad, hq + BuiltAt: hpad + Owner: gdi + Selectable: + Bounds: 30,24 + Helicopter: + ROT: 4 + Speed: 20 + Health: + HP: 100 + Armor: + Type: Light + RevealsShroud: + Range: 8 + AttackHeli: + PrimaryWeapon: OrcaAGMissiles + PrimaryOffset: 0,-10,0,5 + PrimaryLocalOffset: -4,0,0,0,0, 4,0,0,0,0 + SecondaryWeapon: OrcaAAMissiles + SecondaryOffset: 0,-10,0,5 + SecondaryLocalOffset: -4,0,0,0,0, 4,0,0,0,0 + FacingTolerance: 20 + LimitedAmmo: + Ammo: 10 + PipCount: 5 + Reloads: + Count: 2 + Period: 100 + RenderUnit: + WithShadow: + FallsToEarth: + AutoTarget: + +C17: + ParaDrop: + LZRange: 1 + Inherits: ^Plane + Tooltip: + Name: Supply Aircraft + Plane: + ROT: 5 + Speed: 35 + Health: + HP: 25 + Armor: + Type: Heavy + RenderUnit: + WithShadow: + Cargo: +# Types: Infantry, Vehicle + MaxWeight: 10 + PipCount: 10 + Invulnerable: + -Selectable: + -TargetableUnit: + FlyAwayOnIdle: + +A10: + Inherits: ^Plane + Tooltip: + Name: A10 Bomber + Icon: a10icnh + Plane: + ROT: 4 + Speed: 40 + Health: + HP: 60 + Armor: + Type: Heavy + RevealsShroud: + Range: 8 + RenderUnit: + WithShadow: + LimitedAmmo: + Ammo: 10 + CarpetBomb: + Weapon: Napalm + Range: 3 + -Selectable: + FlyAwayOnIdle: + diff --git a/mods/cnc-classic/rules/civilian-desert.yaml b/mods/cnc-classic/rules/civilian-desert.yaml new file mode 100644 index 0000000000..755b7a839b --- /dev/null +++ b/mods/cnc-classic/rules/civilian-desert.yaml @@ -0,0 +1,124 @@ +V20: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + EditorTilesetFilter: + RequireTilesets: DESERT + +V21: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + EditorTilesetFilter: + RequireTilesets: DESERT + +V22: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + RequireTilesets: DESERT + +V23: + Inherits: ^CivBuilding + EditorTilesetFilter: + RequireTilesets: DESERT + +V24: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + EditorTilesetFilter: + RequireTilesets: DESERT + +V25: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + Tooltip: + Name: Church + EditorTilesetFilter: + RequireTilesets: DESERT + +V26: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + RequireTilesets: DESERT + +V27: + Inherits: ^CivBuilding + EditorTilesetFilter: + RequireTilesets: DESERT + +V28: + Inherits: ^CivBuilding + EditorTilesetFilter: + RequireTilesets: DESERT + +V29: + Inherits: ^CivBuilding + EditorTilesetFilter: + RequireTilesets: DESERT + +V30: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + RequireTilesets: DESERT + +V31: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + RequireTilesets: DESERT + +V32: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + RequireTilesets: DESERT + +V33: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + RequireTilesets: DESERT + +V34: + Inherits: ^CivBuilding + EditorTilesetFilter: + RequireTilesets: DESERT + +V35: + Inherits: ^CivBuilding + EditorTilesetFilter: + RequireTilesets: DESERT + +V36: + Inherits: ^CivBuilding + EditorTilesetFilter: + RequireTilesets: DESERT + +V37: + Inherits: ^CivBuilding + Building: + Footprint: __xx_ ___xx + Dimensions: 5,2 + EditorTilesetFilter: + RequireTilesets: DESERT \ No newline at end of file diff --git a/mods/cnc-classic/rules/civilian.yaml b/mods/cnc-classic/rules/civilian.yaml new file mode 100644 index 0000000000..abaa743803 --- /dev/null +++ b/mods/cnc-classic/rules/civilian.yaml @@ -0,0 +1,254 @@ +V01: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + Tooltip: + Name: Church + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V02: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V03: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V04: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V05: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V06: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V07: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V08: + Inherits: ^CivBuilding + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V09: + Inherits: ^CivBuilding + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V10: + Inherits: ^CivBuilding + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V11: + Inherits: ^CivBuilding + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V12: + Inherits: ^CivBuilding + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V13: + Inherits: ^CivBuilding + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V14: + Inherits: ^CivField + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V15: + Inherits: ^CivField + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V16: + Inherits: ^CivField + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V17: + Inherits: ^CivField + EditorTilesetFilter: + ExcludeTilesets: DESERT + +V18: + Inherits: ^CivField + EditorTilesetFilter: + ExcludeTilesets: DESERT + +ARCO: + Inherits: ^CivBuilding + Building: + Footprint: xx + Dimensions: 2,1 + +BARB: + Inherits: ^Wall + Health: + HP: 100 + Armor: + Type: Light + Tooltip: + Name: Wire Fence + Icon: barbicnh + +WOOD: + Inherits: ^Wall + Health: + HP: 100 + Armor: + Type: Wood + Tooltip: + Name: Wooden Fence + Icon: woodicnh + +BRIDGE1: + Inherits: ^Bridge + Bridge: + Template: 165 + DestroyedTemplate: 166 + Building: + Footprint: ____ ____ ____ ____ + Dimensions: 4,4 + +BRIDGE2: + Inherits: ^Bridge + Bridge: + Template: 167 + DestroyedTemplate: 168 + Building: + Footprint: _____ _____ _____ _____ _____ + Dimensions: 5,5 + +BRIDGE3: + Inherits: ^Bridge + Bridge: + Template: 169 + DestroyedTemplate: 170 + Building: + Footprint: ______ ______ ______ ______ ______ + Dimensions: 6,5 + +BRIDGE4: + Inherits: ^Bridge + Bridge: + Template: 171 + DestroyedTemplate: 172 + Building: + Footprint: ______ ______ ______ ______ + Dimensions: 6,4 + +C1: + Inherits: ^CivInfantry + Selectable: + Voice: CivilianMaleVoice + +C2: + Inherits: ^CivInfantry + Selectable: + Voice: CivilianFemaleVoice + +C3: + Inherits: ^CivInfantry + +C4: + Inherits: ^CivInfantry + Selectable: + Voice: CivilianFemaleVoice + +C5: + Inherits: ^CivInfantry + +C6: + Inherits: ^CivInfantry + Selectable: + Voice: CivilianFemaleVoice + +C7: + Inherits: ^CivInfantry + +C8: + Inherits: ^CivInfantry + Selectable: + Voice: CivilianFemaleVoice + +C9: + Inherits: ^CivInfantry + +C10: + Inherits: ^CivInfantry + Selectable: + Voice: CivilianFemaleVoice + +VICE: + AppearsOnRadar: + Health: + Radius: 3 + HP: 400 + Armor: + Type: Wood + RevealsShroud: + Range: 4 + Mobile: + Speed: 5 + TerrainSpeeds: + Clear: 90 + Rough: 80 + Road: 100 + Tiberium: 70 + BlueTiberium: 70 + Beach: 80 + Selectable: + Voice: GenericVoice + TargetableUnit: + TargetTypes: Ground + AutoTarget: + ScanRadius: 4 + AttackMove: + HiddenUnderFog: + GainsExperience: + GivesExperience: + Valued: + Cost: 1000 + Tooltip: + Name: Viceroid + AttackFrontal: + PrimaryWeapon: Chemspray + AttackWander: + RenderUnit: + WithMuzzleFlash: \ No newline at end of file diff --git a/mods/cnc-classic/rules/defaults.yaml b/mods/cnc-classic/rules/defaults.yaml new file mode 100644 index 0000000000..3b1fe4a796 --- /dev/null +++ b/mods/cnc-classic/rules/defaults.yaml @@ -0,0 +1,348 @@ +^Vehicle: + AppearsOnRadar: + Mobile: + Crushes: crate + TerrainSpeeds: + Clear: 60 + Rough: 40 + Road: 100 + Tiberium: 40 + BlueTiberium: 40 + Beach: 40 + ROT: 5 + SelectionDecorations: + Selectable: + Voice: VehicleVoice + TargetableUnit: + TargetTypes: Ground + Buildable: + Queue: Vehicle + Repairable: + Passenger: + CargoType: Vehicle + ActorLostNotification: + Notification: unitlost.aud + AttackMove: + AcceptsCloakCrate: + WithSmoke: + +^Tank: + AppearsOnRadar: + Mobile: + Crushes: wall, crate, infantry + TerrainSpeeds: + Clear: 80 + Rough: 70 + Road: 100 + Tiberium: 70 + BlueTiberium: 70 + Beach: 70 + ROT: 5 + SelectionDecorations: + Selectable: + Voice: VehicleVoice + TargetableUnit: + TargetTypes: Ground + Buildable: + Queue: Vehicle + Repairable: + Passenger: + CargoType: Vehicle + ActorLostNotification: + Notification: unitlost.aud + AttackMove: + AcceptsCloakCrate: + WithSmoke: + +^Helicopter: + AppearsOnRadar: + UseLocation: yes + TargetableAircraft: + TargetTypes: Air + GroundedTargetTypes: Ground + SelectionDecorations: + Selectable: + Voice: VehicleVoice + Helicopter: + RepairBuildings: hpad + RearmBuildings: + LandWhenIdle: false + Buildable: + Queue: Aircraft + ActorLostNotification: + Notification: unitlost.aud + +^Infantry: + AppearsOnRadar: + Health: + Radius: 3 + Armor: + Type: None + RevealsShroud: + Range: 5 + AutoTarget: + ScanRadius: 4 + Mobile: + Crushes: crate + SharesCell: true + TerrainSpeeds: + Clear: 90 + Rough: 80 + Road: 100 + Tiberium: 70 + PathingCost: 1000 + BlueTiberium: 70 + PathingCost: 1000 + Beach: 80 + SelectionDecorations: + Selectable: + Voice: GenericVoice + TargetableUnit: + TargetTypes: Ground + Buildable: + Queue: Infantry + TakeCover: + BarrelOffset: 0,-2,0,4 + RenderInfantryProne: + AttackMove: + Passenger: + CargoType: Infantry + PoisonedByTiberium: + ActorLostNotification: + Notification: unitlost.aud + SpawnViceroid: + Probability: 2 + CrushableInfantry: + +^CivInfantry: + Inherits: ^Infantry + -Buildable: + -AutoTarget: + -TakeCover: + -RenderInfantryProne: + AppearsOnRadar: + SelectionDecorations: + Selectable: + Voice: CivilianMaleVoice + Bounds: 12,17,0,-9 + Valued: + Cost: 70 + Tooltip: + Name: Civilian + Mobile: + Speed: 4 + Health: + HP: 25 + RevealsShroud: + Range: 2 + AttackFrontal: + PrimaryWeapon: Pistol + ActorLostNotification: + Notification: civdead1.aud + NotifyAll: true + ScaredyCat: + RenderInfantryPanic: + AttackMove: + JustMove: yes + CrushableInfantry: + +^Plane: + AppearsOnRadar: + UseLocation: yes + SelectionDecorations: + Selectable: + Voice: GenericVoice + TargetableUnit: + TargetTypes: Air + ActorLostNotification: + Notification: unitlost.aud + +^Ship: + AppearsOnRadar: + Mobile: + Crushes: crate + TerrainSpeeds: + Water: 100 + SelectionDecorations: + Selectable: + Voice: GenericVoice + TargetableUnit: + TargetTypes: Ground, Water + ActorLostNotification: + Notification: unitlost.aud + AttackMove: + +^Building: + AppearsOnRadar: + SelectionDecorations: + Selectable: + Priority: 3 + TargetableBuilding: + TargetTypes: Ground + Armor: + Type: Wood + RepairableBuilding: + RepairPercent: 40 + RepairStep: 14 + Building: + Dimensions: 1,1 + Footprint: x + BuildSounds: constru2.aud, hvydoor1.aud + SellSounds: cashturn.aud + TerrainTypes: Clear,Road + SoundOnDamageTransition: + DamagedSound: xplos.aud + DestroyedSound: xplobig4.aud + Buildable: + Queue: Building + GivesBuildableArea: + RenderBuilding: + WithBuildingExplosion: + DeadBuildingState: + EmitInfantryOnSell: + ActorTypes: e6,e1 + MustBeDestroyed: + CaptureNotification@GDI: + Race: gdi + Notification: gdicapt1.aud + CaptureNotification@NOD: + Race: nod + Notification: nodcapt1.aud + ActorLostNotification: + Notification: strclost.aud + EditorAppearance: + RelativeToTopLeft: yes + AutoTargetIgnore: + ShakeOnDeath: + Sellable: + Capturable: + CapturableBar: + +^CivBuilding: + Inherits: ^Building + -DeadBuildingState: + -Buildable: + -GivesBuildableArea: + Health: + HP: 400 + Armor: + Type: Wood + Building: + RenderBuilding: + WithBuildingExplosion: + -RepairableBuilding: + -Capturable: + -CapturableBar: + -Sellable: + Tooltip: + Name: Civilian Building + +^CivBuildingHusk: + AppearsOnRadar: + Building: + Dimensions: 1,1 + Footprint: x + RenderBuilding: + EditorAppearance: + RelativeToTopLeft: yes + Tooltip: + Name: Civilian Building (Destroyed) + +^TechBuilding: + Inherits: ^CivBuilding + Capturable: + CapturableBar: + RepairableBuilding: + RevealsShroud: + Range: 3 + +^CivField: + Inherits: ^CivBuilding + -Selectable: + Tooltip: + Name: Field + -WithBuildingExplosion: + RenderBuilding: + Palette: terrain + EditorAppearance: + UseTerrainPalette: true + +^CivFieldHusk: + AppearsOnRadar: + Building: + Dimensions: 1,1 + Footprint: _ + EditorAppearance: + RelativeToTopLeft: yes + Tooltip: + Name: Field (Destroyed) + BelowUnits: + +^Wall: + AppearsOnRadar: + Building: + Dimensions: 1,1 + Footprint: x + BuildSounds: hvydoor1.aud + Adjacent: 7 + TerrainTypes: Clear,Road + TargetableBuilding: + TargetTypes: Ground + Wall: + CrushClasses: wall + CrushSound: sandbag2.aud + LineBuild: + Range: 8 + SelectionDecorations: + Selectable: + Priority: 1 + RenderBuildingWall: + HasMakeAnimation: false + Palette: staticterrain + EditorAppearance: + RelativeToTopLeft: yes + AutoTargetIgnore: + Sellable: + +^Tree: + Tooltip: + Name: Tree + RenderBuilding: + Palette: staticterrain + Building: + Footprint: __ x_ + Dimensions: 2,2 + AppearsOnRadar: + RadarColorFromTerrain: + Terrain: Tree + EditorAppearance: + RelativeToTopLeft: yes + +^Rock: + Tooltip: + Name: Rock + RenderBuilding: + Palette: staticterrain + Building: + Footprint: __ x_ + Dimensions: 2,2 + AppearsOnRadar: + RadarColorFromTerrain: + Terrain: Tree + EditorAppearance: + RelativeToTopLeft: yes + +^Bridge: + Tooltip: + Name: Bridge + TargetableBuilding: + TargetTypes: Ground, Water + BelowUnits: + Health: + HP: 500 + SoundOnDamageTransition: + DamagedSound: xplos.aud + DestroyedSound: xplobig4.aud + Building: + Footprint: ______ ______ ______ ______ + Dimensions: 6,4 diff --git a/mods/cnc-classic/rules/infantry.yaml b/mods/cnc-classic/rules/infantry.yaml new file mode 100644 index 0000000000..fa892681be --- /dev/null +++ b/mods/cnc-classic/rules/infantry.yaml @@ -0,0 +1,193 @@ +E1: + Inherits: ^Infantry + Valued: + Cost: 100 + Tooltip: + Name: Minigunner + Description: General-purpose infantry.\n Strong vs Infantry\n Weak vs Vehicles + Icon: e1icnh + Buildable: + BuildPaletteOrder: 10 + Owner: gdi, nod + Selectable: + Bounds: 12,17,0,-6 + Mobile: + Speed: 4 + Health: + HP: 50 + AttackFrontal: + PrimaryWeapon: M16 + RenderInfantryProne: + IdleAnimations: idle1,idle2,idle3,idle4 + +E2: + Inherits: ^Infantry + Valued: + Cost: 160 + Tooltip: + Name: Grenadier + Description: Infantry armed with grenades. \n Strong vs Buildings, Infantry\n Weak vs Vehicles + Icon: e2icnh + Buildable: + BuildPaletteOrder: 40 + Prerequisites: hq + Owner: gdi + Selectable: + Bounds: 12,17,0,-6 + Mobile: + Speed: 5 + Health: + HP: 50 + AttackFrontal: + PrimaryWeapon: Grenade + PrimaryOffset: 0,0,0,-10 + FireDelay: 15 + RenderInfantryProne: + IdleAnimations: idle1,idle2 + Explodes: + Weapon: GrenadierExplode + Chance: 50 + +E3: + Inherits: ^Infantry + Valued: + Cost: 300 + Tooltip: + Name: Rocket Soldier + Description: Anti-tank/Anti-aircraft infantry. \n Strong vs Tanks, Aircraft\n Weak vs Infantry + Icon: e3icnh + Buildable: + BuildPaletteOrder: 20 + Owner: nod, gdi + Selectable: + Bounds: 12,17,0,-6 + Mobile: + Speed: 3 + Health: + HP: 45 + AttackFrontal: + PrimaryWeapon: Rockets + PrimaryOffset: 1,-6,0,-8 + FireDelay: 5 + RenderInfantryProne: + IdleAnimations: idle1,idle2 + +E4: + Inherits: ^Infantry + Valued: + Cost: 200 + Tooltip: + Name: Flamethrower + Description: Advanced Anti-infantry unit.\n Strong vs Infantry, Buildings\n Weak vs Vehicles + Icon: e4icnh + Buildable: + BuildPaletteOrder: 40 + Owner: nod + Prerequisites: hq + Selectable: + Bounds: 12,17,0,-6 + Mobile: + Speed: 5 + Health: + HP: 90 + AttackFrontal: + PrimaryWeapon: Flamethrower + PrimaryOffset: 0,-2,2,-4 + FireDelay: 3 + WithMuzzleFlash: + RenderInfantryProne: + IdleAnimations: idle1,idle2 + +E5: + Inherits: ^Infantry + Valued: + Cost: 300 + Tooltip: + Name: Chem Warrior + Description: Advanced Anti-infantry unit.\n Strong vs Infantry\n Weak vs Vehicles + Icon: e5icnh + Buildable: + BuildPaletteOrder: 50 + Owner: nod + Prerequisites: tmpl + Selectable: + Bounds: 12,17,0,-6 + Mobile: + Speed: 4 + TerrainSpeeds: + Tiberium: 80 + PathingCost: 80 + BlueTiberium: 80 + PathingCost: 80 + Health: + HP: 90 + AttackFrontal: + PrimaryWeapon: Chemspray + PrimaryOffset: 0,-2,2,-9 + FireDelay: 3 + WithMuzzleFlash: + -PoisonedByTiberium: + RenderInfantryProne: + IdleAnimations: idle1,idle2 + +E6: + Inherits: ^Infantry + Valued: + Cost: 500 + Tooltip: + Name: Engineer + Description: Infiltrates and captures enemy structures.\n Strong vs Nothing\n Weak vs Everything + Icon: e6icnh + Buildable: + BuildPaletteOrder: 30 + Owner: gdi,nod + Selectable: + Bounds: 12,17,0,-6 + Mobile: + Speed: 4 + Health: + HP: 25 + Passenger: + PipType: Yellow + EngineerRepair: + Captures: + CaptureTypes: building, husk + -AutoTarget: + AttackMove: + JustMove: true + RenderInfantryProne: + IdleAnimations: idle1,idle2 + +RMBO: + Inherits: ^Infantry + Valued: + Cost: 1000 + Tooltip: + Icon: rmboicnh + Name: Commando + Description: Elite sniper infantry unit.\n Strong vs Infantry, Buildings\n Weak vs Vehicles + Buildable: + BuildPaletteOrder: 50 + Owner: gdi + Prerequisites: eye + Selectable: + Bounds: 12,17,0,-6 + Voice: CommandoVoice + Mobile: + Speed: 5 + Health: + HP: 200 + Passenger: + PipType: Red + RevealsShroud: + Range: 6 + AutoTarget: + ScanRadius: 5 + C4Demolition: + C4Delay: 45 + AttackFrontal: + PrimaryWeapon: Sniper + RenderInfantryProne: + IdleAnimations: idle1,idle2,idle3 + AnnounceOnBuild: + AnnounceOnKill: \ No newline at end of file diff --git a/mods/cnc-classic/rules/ships.yaml b/mods/cnc-classic/rules/ships.yaml new file mode 100644 index 0000000000..2d06993486 --- /dev/null +++ b/mods/cnc-classic/rules/ships.yaml @@ -0,0 +1,66 @@ +BOAT: + Inherits: ^Ship + Valued: + Cost: 300 + Tooltip: + Name: Gunboat + Icon: boaticnh + Health: + HP: 700 + Armor: + Type: Heavy + Mobile: + InitialFacing:64 + ROT: 4 + Speed: 2 + OnRails: true + RevealsShroud: + Range: 7 + Turreted: + ROT: 7 + AttackTurreted: + PrimaryWeapon: BoatMissile + PrimaryOffset: 0,-15,0,-4 + PrimaryLocalOffset: -3,-5,0,0,0, 3,-5,0,0,0, 0,-5,0,0,0 + RenderGunboat: + AutoTarget: + AllowMovement: false + WithSmoke: + +LST: + Inherits: ^Ship + Valued: + Cost: 300 + Tooltip: + Name: Landing Craft + Mobile: + Crushes: crate + TerrainSpeeds: + Clear: 100 + Rough: 100 + Road: 100 + Water: 100 + Tiberium: 100 + BlueTiberium: 100 + Beach: 100 + River: 100 + InitialFacing:0 + ROT: 4 + Speed: 10 + Health: + HP: 400 + Armor: + Type: Heavy + RevealsShroud: + Range: 7 + RenderUnit: + WithRoof: + RenderCargo: + -Selectable: + Cargo: + Types: Infantry, Vehicle + MaxWeight: 5 + PipCount: 5 + AttackMove: + JustMove: true + diff --git a/mods/cnc-classic/rules/structures.yaml b/mods/cnc-classic/rules/structures.yaml new file mode 100644 index 0000000000..3e03fa5e6d --- /dev/null +++ b/mods/cnc-classic/rules/structures.yaml @@ -0,0 +1,712 @@ +FACT: + Inherits: ^Building + -Buildable: + Valued: + Cost: 2000 + Tooltip: + Name: Construction Yard + Icon: mcvicnh + Description: Builds structures + Building: + Power: 15 + Footprint: xxx xxx + Dimensions: 3,2 + Health: + HP: 2000 + Armor: + Type: Heavy + RevealsShroud: + Range: 10 + Bib: + Production: + Produces: Building,Defense + Transforms: + IntoActor: mcv + Offset:1,1 + Facing: 108 + BaseBuilding: + ProductionBar: + +NUKE: + Inherits: ^Building + Valued: + Cost: 300 + Tooltip: + Name: Power Plant + Icon: nukeicnh + Description: Generates power + ProvidesCustomPrerequisite: + Prerequisite: anypower + Buildable: + BuildPaletteOrder: 10 + Owner: gdi,nod + Prerequisites: fact + Building: + Power: 100 + Footprint: x_ xx + Dimensions: 2,2 + Health: + HP: 400 + RevealsShroud: + Range: 4 + Bib: + +PROC: + Inherits: ^Building + Valued: + Cost: 1500 + Tooltip: + Name: Tiberium Refinery + Icon: procicnh + Description: Processes raw Tiberium\ninto useable resources + Buildable: + BuildPaletteOrder: 30 + Prerequisites: anypower + Owner: gdi,nod + Building: + Power: -30 + Footprint: _x_ xxx === + Dimensions: 3,3 + Health: + HP: 900 + RevealsShroud: + Range: 6 + Bib: + TiberiumRefinery: + DockOffset: 0,2 + TickRate: 15 + StoresOre: + PipColor: Green + PipCount: 18 + Capacity: 1800 + Selectable: + Bounds: 73,72 + CustomSellValue: + Value: 300 + CustomBuildTimeValue: + Value: 80 + FreeActor: + Actor: HARV + InitialActivity: FindResources + SpawnOffset: 1,2 + Facing: 64 + -RenderBuilding: + RenderBuildingRefinery: + +SILO: + Inherits: ^Building + Valued: + Cost: 150 + Tooltip: + Name: Tiberium Silo + Icon: siloicnh + Description: Stores processed Tiberium + Buildable: + Queue: Defense + BuildPaletteOrder: 15 + Prerequisites: proc + Owner: gdi,nod + Building: + Power: -10 + Footprint: xx + Dimensions: 2,1 + -GivesBuildableArea: + Health: + HP: 300 + RevealsShroud: + Range: 4 + RenderBuildingSilo: + StoresOre: + PipCount: 12 + PipColor: Green + Capacity: 1200 + Selectable: + Bounds: 49,24 + -RenderBuilding: + -EmitInfantryOnSell: + +PYLE: + Inherits: ^Building + Valued: + Cost: 300 + Tooltip: + Name: Barracks + Icon: pyleicnh + Description: Trains infantry + ProvidesCustomPrerequisite: + Prerequisite: barracks + Buildable: + BuildPaletteOrder: 40 + Prerequisites: anypower + Owner: gdi + Building: + Power: -20 + Footprint: xx xx + Dimensions: 2,2 + Health: + HP: 500 + RevealsShroud: + Range: 5 + Bib: + RallyPoint: + Exit@1: + SpawnOffset: -10,2 + ExitCell: 0,1 + Exit@2: + SpawnOffset: 7,7 + ExitCell: 1,1 + Production: + Produces: Infantry + ProductionBar: + +HAND: + Inherits: ^Building + Valued: + Cost: 300 + Tooltip: + Name: Hand of Nod + Icon: handicnh + Description: Trains infantry + ProvidesCustomPrerequisite: + Prerequisite: barracks + Buildable: + BuildPaletteOrder: 40 + Prerequisites: anypower + Owner: nod + Building: + Power: -20 + Footprint: __ xx xx + Dimensions: 2,3 + Health: + HP: 500 + RevealsShroud: + Range: 5 + Bib: + RallyPoint: + Exit@1: + SpawnOffset: 12,24 + ExitCell: 1,2 + Production: + Produces: Infantry + ProductionBar: + +AFLD: + Inherits: ^Building + Valued: + Cost: 2000 + Tooltip: + Name: Airstrip + Icon: afldicnh + Description: Provides a dropzone\nfor vehicle reinforcements + ProvidesCustomPrerequisite: + Prerequisite: vehicleproduction + Buildable: + BuildPaletteOrder: 60 + Prerequisites: proc + Owner: nod + Building: + Power: -30 + Footprint: xxxx xxxx + Dimensions: 4,2 + Health: + HP: 1750 + RevealsShroud: + Range: 7 + Bib: + RallyPoint: + RallyPoint: 4,2 + BelowUnits: + Exit@1: + SpawnOffset: -24,0 + ExitCell: 3,1 + ProductionAirdrop: + Produces: Vehicle + ProductionBar: + +WEAP: + Inherits: ^Building + Valued: + Cost: 2000 + Tooltip: + Name: Weapons Factory + Icon: weapicnh + Description: Assembly point for\nvehicle reinforcements + ProvidesCustomPrerequisite: + Prerequisite: vehicleproduction + Buildable: + BuildPaletteOrder: 60 + Prerequisites: proc + Owner: gdi + Building: + Power: -30 + Footprint: ___ xxx === + Dimensions: 3,3 + Health: + HP: 1750 + RevealsShroud: + Range: 4 + Bib: + -RenderBuilding: + RenderBuildingWarFactory: + RallyPoint: + RallyPoint: 0,3 + Exit@1: + SpawnOffset: -8,-8 + ExitCell: 0,2 + Production: + Produces: Vehicle + ProductionBar: + +HQ: + RequiresPower: + CanPowerDown: + Inherits: ^Building + Valued: + Cost: 1000 + Tooltip: + Name: Communications Center + Icon: hqicnh + Description: Provides an overview of the battlefield.\n Requires power to operate. + Buildable: + BuildPaletteOrder: 80 + Prerequisites: proc + Owner: gdi,nod + Building: + Power: -40 + Footprint: x_ xx + Dimensions: 2,2 + Health: + HP: 1000 + RevealsShroud: + Range: 10 + Bib: + ProvidesRadar: + RenderDetectionCircle: + DetectCloaked: + Range: 8 + AirstrikePower: + Image: bombicnh + ChargeTime: 240 + Description: Air Strike + LongDesc: Deploy an aerial napalm strike.\nBurns buildings and infantry along a line. + EndChargeSound: airredy1.aud + SelectTargetSound: select1.aud + UnitType: a10 + SupportPowerChargeBar: + +NUK2: + Inherits: ^Building + Valued: + Cost: 500 + Tooltip: + Name: Advanced Power Plant + Icon:nuk2icnh + Description: Provides more power, cheaper than the \nstandard Power Plant + ProvidesCustomPrerequisite: + Prerequisite: anypower + Buildable: + BuildPaletteOrder: 90 + Prerequisites: hq + Owner: gdi,nod + Building: + Power: 200 + Footprint: xx xx + Dimensions: 2,2 + Health: + HP: 650 + RevealsShroud: + Range: 4 + Bib: + +FIX: + Inherits: ^Building + Valued: + Cost: 1200 + Tooltip: + Name: Repair Facility + Icon: fixicnh + Description: Repairs vehicles and allows the\nconstruction of additional bases. + Buildable: + BuildPaletteOrder: 70 + Prerequisites: vehicleproduction + Owner: gdi,nod + Building: + Power: -30 + Footprint: _x_ xxx _x_ + Dimensions: 3,3 + Health: + HP: 800 + RevealsShroud: + Range: 5 + BelowUnits: + Reservable: + RepairsUnits: + RallyPoint: + +HPAD: + Inherits: ^Building + Valued: + Cost: 1500 + Tooltip: + Name: Helipad + Icon:hpadicnh + Description: Produces, rearms and\nrepairs helicopters + Buildable: + BuildPaletteOrder: 50 + Prerequisites: barracks + Owner: gdi,nod + Building: + Power: -10 + Footprint: xx xx + Dimensions: 2,2 + Health: + HP: 400 + RevealsShroud: + Range: 5 + Exit@1: + SpawnOffset: 0,-6 + Production: + Produces: Aircraft + BelowUnits: + Reservable: + RepairsUnits: + RallyPoint: + ProductionBar: + +EYE: + RequiresPower: + CanPowerDown: + Inherits: ^Building + Valued: + Cost: 1800 + Tooltip: + Name: Advanced Communications Center + Icon: eyeicnh + Description: Provides access to the Ion Cannon.\n Requires power to operate. + Buildable: + BuildPaletteOrder: 100 + Prerequisites: hq + Owner: gdi + Building: + Power: -200 + Footprint: x_ xx + Dimensions: 2,2 + Health: + HP: 1000 + RevealsShroud: + Range: 10 + Bib: + ProvidesRadar: + RenderDetectionCircle: + DetectCloaked: + Range: 8 + IonCannonPower: + Image: ionicnh + ChargeTime: 180 + Description: Ion Cannon + LongDesc: Initiate an Ion Cannon strike.\nApplies instant damage to a small area. + BeginChargeSound: ionchrg1.aud + EndChargeSound: ionredy1.aud + LaunchSound: ion1.aud + SelectTargetSound: select1.aud + SupportPowerChargeBar: + +TMPL: + RequiresPower: + CanPowerDown: + Inherits: ^Building + Valued: + Cost: 2000 + Tooltip: + Name: Temple of Nod + Icon: tmplicnh + Description: Place of worship and secret missile silo.\n Requires power to operate. + Buildable: + BuildPaletteOrder: 100 + Prerequisites: hq + Owner: nod + Building: + Power: -150 + Footprint: ___ xxx xxx + Dimensions: 3,3 + Health: + HP: 2000 + RevealsShroud: + Range: 6 + Bib: + NukePower: + Image: atomicnh + ChargeTime: 300 + Description: Nuclear Strike + LongDesc: Launch a tactical nuke.\nApplies heavy damage over a large area. + BeginChargeSound: + EndChargeSound: nukavail.aud + SelectTargetSound: select1.aud + LaunchSound: nukemisl.aud + MissileWeapon: atomic + SupportPowerChargeBar: + +OBLI: + RequiresPower: + Inherits: ^Building + Valued: + Cost: 1500 + Tooltip: + Name: Obelisk of Light + Icon:obliicnh + Description: Advanced base defense.\n Requires power to operate.\n Strong vs Tanks, Infantry\n Weak vs Aircraft + Buildable: + Queue: Defense + BuildPaletteOrder: 60 + Prerequisites: tmpl + Owner: nod + Building: + Power: -150 + Footprint: _ x + Dimensions: 1,2 + -GivesBuildableArea: + Health: + HP: 400 + Armor: + Type: Heavy + RevealsShroud: + Range: 8 + RenderBuildingCharge: + ChargeAudio: obelpowr.aud + AttackTurreted: + PrimaryWeapon: Laser + PrimaryOffset: 0,0,-2,-17 + FireDelay: 8 + Turreted: + ROT:255 + AutoTarget: + -RenderBuilding: + RenderRangeCircle: + -EmitInfantryOnSell: + RenderDetectionCircle: + DetectCloaked: + Range: 6 + +CYCL: + Inherits: ^Wall + Valued: + Cost: 25 + CustomSellValue: + Value: 0 + Tooltip: + Name: Chain Link Barrier + Icon:cyclicnh + Description: Stops infantry and blocks enemy fire.\nCan be crushed by tanks. + Buildable: + Queue: Defense + BuildPaletteOrder: 20 + Prerequisites: fact + Owner: nod + Health: + HP: 100 + Armor: + Type: Light + +SBAG: + Inherits: ^Wall + Valued: + Cost: 25 + CustomSellValue: + Value: 0 + Tooltip: + Name: Sandbag Barrier + Icon:sbagicnh + Description: Stops infantry and blocks enemy fire.\nCan be crushed by tanks. + Buildable: + Queue: Defense + BuildPaletteOrder: 20 + Prerequisites: fact + Owner: gdi + Health: + HP: 100 + Armor: + Type: Light + +BRIK: + Inherits: ^Wall + Valued: + Cost: 100 + CustomSellValue: + Value: 0 + Tooltip: + Name: Concrete Barrier + Icon:brikicnh + Description: Stop units and blocks enemy fire. + Buildable: + Queue: Defense + BuildPaletteOrder: 30 + Prerequisites: vehicleproduction + Owner: gdi,nod + Health: + HP: 250 + Armor: + Type: Heavy + Wall: + CrushClasses: heavywall + -CrushSound: + SoundOnDamageTransition: + DestroyedSound: crumble.aud + +GUN: + Inherits: ^Building + Valued: + Cost: 600 + Tooltip: + Name: Turret + Icon: gunicnh + Description: Anti-Armor base defense.\n Strong vs Tanks\n Weak vs Infantry, Aircraft + Buildable: + Queue: Defense + BuildPaletteOrder: 45 + Prerequisites: barracks + Owner: gdi,nod + Building: + Power: -20 + -GivesBuildableArea: + Health: + HP: 400 + RevealsShroud: + Range: 7 + Turreted: + ROT: 12 + InitialFacing: 50 + RenderBuildingTurreted: + AttackTurreted: + PrimaryWeapon: TurretGun + PrimaryLocalOffset: 0,4,0,-2,0 + AutoTarget: + -AutoTargetIgnore: + -RenderBuilding: + -DeadBuildingState: + RenderRangeCircle: + RenderDetectionCircle: + DetectCloaked: + Range: 3 +SAM: + Inherits: ^Building + RequiresPower: + Valued: + Cost: 750 + Tooltip: + Name: SAM Site + Icon: samicnh + Description: Anti-Air base defense.\n Strong vs Aircraft\n Weak vs Infantry, Tanks + Buildable: + Queue: Defense + BuildPaletteOrder: 50 + Prerequisites: hand + Owner: nod + Building: + Power: -20 + Footprint: xx + Dimensions: 2,1 + -GivesBuildableArea: + Health: + HP: 400 + Armor: + Type: Heavy + RevealsShroud: + Range: 5 + Turreted: + ROT: 7 + InitialFacing: 0 + RenderBuildingTurreted: + AttackPopupTurreted: + PrimaryWeapon: SAMMissile + WithMuzzleFlash: + AutoTarget: + -RenderBuilding: + RenderRangeCircle: + +GTWR: + Inherits: ^Building + Valued: + Cost: 500 + Tooltip: + Name: Guard Tower + Icon: gtwricnh + Description: Basic defensive structure.\n Strong vs Infantry\n Weak vs Tanks, Aircraft + Buildable: + Queue: Defense + BuildPaletteOrder: 40 + Prerequisites: barracks + Owner: gdi,nod + Building: + Power: -10 + -GivesBuildableArea: + Health: + HP: 600 + RevealsShroud: + Range: 6 + AttackTurreted: + PrimaryWeapon: HighV + PrimaryOffset: 0,0,0,-6 + PrimaryLocalOffset: 0,-6,0,0,0 + AutoTarget: + -AutoTargetIgnore: + DetectCloaked: + Range: 3 + RenderDetectionCircle: + RenderRangeCircle: + WithMuzzleFlash: + Turreted: + ROT:255 + +ATWR: + Inherits: ^Building + RequiresPower: + Valued: + Cost: 1000 + Tooltip: + Name: Advanced Guard Tower + Icon: atwricnh + Description: Anti-armor defensive structure.\n Strong vs Light Vehicles, Tanks\n Weak vs Infantry + Buildable: + Queue: Defense + BuildPaletteOrder: 60 + Prerequisites: hq + Owner: gdi + Building: + Power: -20 + Footprint: _ x + Dimensions: 1,2 + -GivesBuildableArea: + Health: + HP: 800 + Armor: + Type: Heavy + RevealsShroud: + Range: 8 + AttackTurreted: + PrimaryWeapon: TowerMissle + PrimaryOffset: 0,0,5,2 + PrimaryLocalOffset: 7,-7,0,0,-25, -7,-7,0,0,25 + Turreted: + ROT:255 + AutoTarget: + -AutoTargetIgnore: + RenderDetectionCircle: + DetectCloaked: + Range: 6 + RenderRangeCircle: + +# custom prerequisites: +BARRACKS: + Tooltip: + Name: Infantry Production + Description: Infantry Production + +VEHICLEPRODUCTION: + Tooltip: + Name: Vehicle Production + Description: Vehicle Production + +ANYPOWER: + Tooltip: + Name: Power Plant + Description: Power Plant \ No newline at end of file diff --git a/mods/cnc-classic/rules/system.yaml b/mods/cnc-classic/rules/system.yaml new file mode 100644 index 0000000000..cbdffe8c0b --- /dev/null +++ b/mods/cnc-classic/rules/system.yaml @@ -0,0 +1,235 @@ +Player: + TechTree: + ClassicProductionQueue@Building: + Type: Building + BuildSpeed: .4 + LowPowerSlowdown: 3 + QueuedAudio: Building + ReadyAudio: ConstructionComplete + ClassicProductionQueue@Defense: + Type: Defense + BuildSpeed: .4 + LowPowerSlowdown: 3 + QueuedAudio: Building + ReadyAudio: ConstructionComplete + ClassicProductionQueue@Vehicle: + Type: Vehicle + BuildSpeed: .4 + LowPowerSlowdown: 3 + ClassicProductionQueue@Infantry: + Type: Infantry + BuildSpeed: .4 + LowPowerSlowdown: 3 + ClassicProductionQueue@Aircraft: + Type: Aircraft + BuildSpeed: .4 + LowPowerSlowdown: 3 + PlaceBuilding: + SupportPowerManager: + ConquestVictoryConditions: + PowerManager: + AllyRepair: + PlayerResources: + InitialCash: 10000 + ActorGroupProxy: + DeveloperMode: + HackyAI@Default: + Name:Easy AI + BuildingFractions: + proc: 20% + nuke: 9% + pyle: 5% + hand: 5% + hq: 4% + nuk2: 9% + weap: 9% + afld: 9% + gtwr: 5% + gun: 5% + atwr: 9% + obli: 7% + sam: 7% + eye: 1% + tmpl: 1% + silo: 4% + fix: 1% + hpad: 2% + UnitsToBuild: + e1: 14% + e3: 7% + e2: 10% + e4: 7% + e5: 5% + harv: 1% + bggy: 5% + bike: 40% + ltnk: 25% + ftnk: 10% + arty: 60% + stnk: 40% + jeep: 5% + mtnk: 20% + msam: 40% + htnk: 50% + heli: 5% + orca: 5% + PlayerColorPalette: + BasePalette: terrain + RemapIndex: 176, 178, 180, 182, 184, 186, 189, 191, 177, 179, 181, 183, 185, 187, 188, 190 + DebugResourceCash: + DebugResourceOre: + DebugResourceOreCapacity: + Shroud: + BaseAttackNotifier: + PlayerStatistics: + +World: + OpenWidgetAtGameStart: + Widget: INGAME_ROOT + ObserverWidget: OBSERVER_ROOT + CloakPaletteEffect: + ScreenShaker: + WaterPaletteRotation: + NukePaletteEffect: + BuildingInfluence: + ChooseBuildTabOnSelect: + BridgeLayer: + Bridges: bridge1, bridge2, bridge3, bridge4 + CrateSpawner: + Minimum: 1 + Maximum: 3 + SpawnInterval: 120 + WaterChance: 0 + PaletteFromCurrentTileset@terrain: + Name: terrain + ShadowIndex: 4 + PaletteFromCurrentTileset@static: + Name: staticterrain + ShadowIndex: 4 + PaletteFromFile@chrome: + Name: chrome + Filename: temperat.pal + ShadowIndex: 3 + PaletteFromFile@effect: + Name: effect + Filename: temperat.pal + ShadowIndex: 4 + PaletteFromRGBA@shadow: + Name: shadow + R: 0 + G: 0 + B: 0 + A: 140 + PaletteFromRGBA@cloak: + Name: cloak + R: 0 + G: 0 + B: 0 + A: 140 + PaletteFromRGBA@highlight: + Name: highlight + R: 255 + G: 255 + B: 255 + A: 128 + PaletteFromRGBA@disabled: + Name: disabled + R: 0 + G: 0 + B: 0 + A: 180 + ColorPickerPaletteModifier: + ShroudPalette@shroud: + ShroudPalette@fog: + IsFog: yes + Name: fog + Country@gdi: + Name: GDI + Race: gdi + Country@nod: + Name: Nod + Race: nod + BibLayer: + ResourceLayer: + ResourceClaimLayer: + ResourceType@green-tib: + ResourceType: 1 + Palette: staticterrain + TerrainType: Tiberium + SpriteNames: ti1,ti2,ti3,ti4,ti5,ti6,ti7,ti8,ti9,ti10,ti11,ti12 + ValuePerUnit: 35 + Name: Tiberium + PipColor: Green + AllowedTerrainTypes: Clear,Road + AllowUnderActors: false + ResourceType@blue-tib: + ResourceType: 2 + Palette: staticterrain + TerrainType: BlueTiberium + SpriteNames: bti1,bti2,bti3,bti4,bti5,bti6,bti7,bti8,bti9,bti10,bti11,bti12 + ValuePerUnit: 75 + Name: Blue Tiberium + PipColor: Blue + AllowedTerrainTypes: Clear,Road + AllowUnderActors: false + SmudgeLayer@SCORCH: + Type:Scorch + SmokePercentage:50 + Types:sc1,sc2,sc3,sc4,sc5,sc6 + Depths:1,1,1,1,1,1 + SmudgeLayer@CRATER: + Type:Crater + Types:cr1,cr2,cr3,cr4,cr5,cr6 + Depths:5,5,5,5,5,5 + SpawnMapActors: + CreateMPPlayers: + MPStartLocations: + SpawnMPUnits: + SpatialBins: + BinSize: 4 + Shroud: + PathFinder: + ValidateOrder: + +CRATE: + Tooltip: + Name: Crate + Crate: + Lifetime: 120 + TerrainTypes: Clear, Rough, Road, Tiberium, BlueTiberium, Beach + GiveCashCrateAction: + Amount: 1000 + SelectionShares: 20 + UseCashTick: yes + RevealMapCrateAction: + SelectionShares: 1 + Effect: reveal-map + LevelUpCrateAction: + SelectionShares: 20 + ExplodeCrateAction@fire: + Weapon: Napalm.Crate + SelectionShares: 5 + CloakCrateAction: + SelectionShares: 5 + InitialDelay: 15 + CloakDelay: 125 + CloakSound: appear1.aud + UncloakSound: appear1.aud + Effect: cloak + GiveMcvCrateAction: + SelectionShares: 2 + NoBaseSelectionShares: 9001 + Unit: mcv + RenderSimple: + BelowUnits: + ProximityCaptor: + Types:Crate + Passenger: + +mpspawn: + Waypoint: + RenderEditorOnly: + +waypoint: + Waypoint: + RenderEditorOnly: diff --git a/mods/cnc-classic/rules/tech.yaml b/mods/cnc-classic/rules/tech.yaml new file mode 100644 index 0000000000..3396f5be32 --- /dev/null +++ b/mods/cnc-classic/rules/tech.yaml @@ -0,0 +1,49 @@ +# Oil Derrick +V19: + Inherits: ^TechBuilding + CashTrickler: + Building: + Footprint: x + Dimensions: 1,1 + Tooltip: + Name: Oil Derrick + LeavesHusk: + HuskActor: V19.Husk + +V19.Husk: + Inherits: ^CivBuildingHusk + WithFire: + Building: + Footprint: x + Dimensions: 1,1 + Tooltip: + Name: Oil Derrick (Destroyed) + +# Hospital +HOSP: + Inherits: ^CivBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + Tooltip: + Name: Hospital + RepairsUnits: + +# Bio Lab +BIO: + Inherits: ^TechBuilding + Building: + Footprint: xx xx + Dimensions: 2,2 + Tooltip: + Name: Biological Lab + +# Prison / Tech Center +MISS: + Inherits: ^CivBuilding + RenderBuilding: + Building: + Footprint: xxx xxx + Dimensions: 3,2 + Tooltip: + Name: Tech Center diff --git a/mods/cnc-classic/rules/trees.yaml b/mods/cnc-classic/rules/trees.yaml new file mode 100644 index 0000000000..1e0058bb0c --- /dev/null +++ b/mods/cnc-classic/rules/trees.yaml @@ -0,0 +1,139 @@ +SPLIT2: + Inherits: ^Tree + RenderBuilding: + Palette: staticterrain + SeedsResource: + ResourceType:Tiberium + Interval: 55 + Tooltip: + Name: Blossom Tree + RadarColorFromTerrain: + Terrain: Tiberium + +SPLIT3: + Inherits: ^Tree + RenderBuilding: + Palette: staticterrain + SeedsResource: + ResourceType:Tiberium + Interval: 55 + Tooltip: + Name: Blossom Tree + RadarColorFromTerrain: + Terrain: Tiberium + +ROCK1: + Inherits: ^Rock +ROCK2: + Inherits: ^Rock +ROCK3: + Inherits: ^Rock +ROCK4: + Inherits: ^Rock +ROCK5: + Inherits: ^Rock +ROCK6: + Inherits: ^Rock +ROCK7: + Inherits: ^Rock + +T01: + Inherits: ^Tree + +T02: + Inherits: ^Tree + +T03: + Inherits: ^Tree + +T04: + Inherits: ^Tree + +T05: + Inherits: ^Tree + +T06: + Inherits: ^Tree + +T07: + Inherits: ^Tree + +T08: + Inherits: ^Tree + Building: + Footprint: x_ + Dimensions: 2,1 + +T09: + Inherits: ^Tree + Building: + Footprint: x_ + Dimensions: 2,1 + +T10: + Inherits: ^Tree + Building: + Footprint: __ xx +T11: + Inherits: ^Tree + Building: + Footprint: __ xx + +T12: + Inherits: ^Tree + +T13: + Inherits: ^Tree + +T14: + Inherits: ^Tree + Building: + Footprint: ___ xx_ + Dimensions: 3,2 + +T15: + Inherits: ^Tree + Building: + Footprint: ___ xx_ + Dimensions: 3,2 + +T16: + Inherits: ^Tree + +T17: + Inherits: ^Tree + Building: + Footprint: ___ xx_ + Dimensions: 3,2 +T18: + Inherits: ^Tree + +TC01: + Inherits: ^Tree + Building: + Footprint: ___ xx_ + Dimensions: 3,2 + +TC02: + Inherits: ^Tree + Building: + Footprint: _x_ xx_ + Dimensions: 3,2 + +TC03: + Inherits: ^Tree + Building: + Footprint: xx_ xx_ + Dimensions: 3,2 + +TC04: + Inherits: ^Tree + Building: + Footprint: ____ xxx_ x___ + Dimensions: 4,3 + +TC05: + Inherits: ^Tree + Building: + Footprint: __x_ xxx_ _xx_ + Dimensions: 4,3 \ No newline at end of file diff --git a/mods/cnc-classic/rules/vehicles.yaml b/mods/cnc-classic/rules/vehicles.yaml new file mode 100644 index 0000000000..637aa07fa5 --- /dev/null +++ b/mods/cnc-classic/rules/vehicles.yaml @@ -0,0 +1,466 @@ +MCV: + Inherits: ^Vehicle + Valued: + Cost: 2000 + Tooltip: + Name: Mobile Construction Vehicle + Icon: mcvicnh + Description: Deploys into another Construction Yard.\n Unarmed + Buildable: + BuildPaletteOrder: 70 + Prerequisites: fix + Owner: gdi,nod + Selectable: + Priority: 3 + Mobile: + Speed: 6 + Health: + HP: 750 + Armor: + Type: Light + RevealsShroud: + Range: 8 + Transforms: + IntoActor: fact + Offset:-1,-1 + Facing: 108 + TransformSounds: constru2.aud, hvydoor1.aud + NoTransformSounds: deploy1.aud + RenderUnit: + MustBeDestroyed: + AttackMove: + JustMove:true + BaseBuilding: + -AcceptsCloakCrate: + +HARV: + Inherits: ^Tank + Valued: + Cost: 1200 + Tooltip: + Name: Harvester + Icon: harvicnh + Description: Collects Tiberium for processing.\n Unarmed + Buildable: + BuildPaletteOrder: 10 + Prerequisites: proc + Owner: gdi,nod + Selectable: + Priority: 7 + Bounds: 44,44 + Harvester: + Resources: Tiberium, Blue Tiberium + PipCount: 5 + Capacity: 15 + # How far away from our linked proc (refinery) to find resources (in cells): + SearchFromProcRadius: 24 + # How far away from last harvest order location to find more resources (in cells): + SearchFromOrderRadius: 12 + Mobile: + Speed: 6 + Health: + HP: 600 + Armor: + Type: Heavy + RevealsShroud: + Range: 4 + RenderUnit: + AttackMove: + JustMove:true + +APC: + Inherits: ^Tank + Valued: + Cost: 700 + Tooltip: + Name: Armored Personnel Carrier + Icon: apcicnh + Description: Armored infantry transport and mobile AA\n Strong vs Aircraft\n Weak vs Tanks, Infantry + Buildable: + BuildPaletteOrder: 30 + Prerequisites: pyle + Owner: gdi + Mobile: + ROT: 5 + Speed: 10 + Health: + HP: 200 + Armor: + Type: Heavy + RevealsShroud: + Range: 5 + Turreted: + ROT: 10 + AttackTurreted: + PrimaryWeapon: APCGun + PrimaryOffset: 0,0,0,0 + PrimaryLocalOffset: 2,-2,0,-7,0, -2,-2,0,-7,0 + WithMuzzleFlash: + RenderUnitTurreted: + AutoTarget: + Cargo: + Types: Infantry + MaxWeight: 5 + PipCount: 5 + UnloadFacing: 220 + +ARTY: + Inherits: ^Tank + Valued: + Cost: 600 + Tooltip: + Name: Artillery + Icon:artyicnh + Description: Long-range artillery.\n Strong vs Infantry, Buildings\n Weak vs Tanks, Aircraft + Buildable: + BuildPaletteOrder: 40 + Prerequisites: hq + Owner: nod + Mobile: + ROT: 2 + Speed: 6 + Health: + HP: 75 + Armor: + Type: Light + RevealsShroud: + Range: 6 + AttackFrontal: + PrimaryWeapon: ArtilleryShell + PrimaryOffset: 0,-7,0,-3 + RenderUnit: + Explodes: + AutoTarget: + +FTNK: + Inherits: ^Tank + Valued: + Cost: 800 + Tooltip: + Name: Flame Tank + Icon: ftnkicnh + Description: Heavily armored flame-throwing vehicle.\n Strong vs Infantry, Buildings\n Weak vs Aircraft + Buildable: + BuildPaletteOrder: 50 + Prerequisites: hq + Owner: nod + Mobile: + ROT: 5 + Speed: 9 + Health: + HP: 350 + Armor: + Type: Light + RevealsShroud: + Range: 4 + AttackFrontal: + PrimaryWeapon: BigFlamer + PrimaryOffset: 0,-5,3,2 + PrimaryLocalOffset: 2,0,0,0,0, -2,0,0,0,0 + RenderUnit: + AutoTarget: + WithMuzzleFlash: + Explodes: + Weapon: BigFlamer + EmptyWeapon: BigFlamer + +BGGY: + Inherits: ^Vehicle + Valued: + Cost: 300 + Tooltip: + Name: Nod Buggy + Icon: bggyicnh + Description: Fast scout & anti-infantry vehicle.\n Strong vs Infantry\n Weak vs Tanks, Aircraft + Buildable: + BuildPaletteOrder: 20 + Prerequisites: afld + Owner: nod + Mobile: + ROT: 10 + Speed: 16 + Health: + HP: 140 + Armor: + Type: Light + RevealsShroud: + Range: 5 + Turreted: + ROT: 10 + AttackTurreted: + PrimaryWeapon: MachineGun + PrimaryOffset: 0,1,0,-3 + WithMuzzleFlash: + RenderUnitTurreted: + AutoTarget: + +BIKE: + Inherits: ^Vehicle + Valued: + Cost: 400 + Tooltip: + Name: Recon Bike + Icon: bikeicnh + Description: Fast scout vehicle, armed with \nrockets.\n Strong vs Vehicles, Aircraft\n Weak vs Infantry + Buildable: + BuildPaletteOrder: 30 + Prerequisites: afld + Owner: nod + Mobile: + ROT: 10 + Speed: 20 + TerrainSpeeds: + Clear: 42 + Rough: 25 + Road: 100 + Tiberium: 25 + BlueTiberium: 25 + Beach: 25 + Health: + HP: 120 + Armor: + Type: Light + RevealsShroud: + Range: 7 + AttackFrontal: + PrimaryWeapon: BikeRockets + PrimaryOffset: 0,0,0,-2 + PrimaryLocalOffset: -4,0,0,0,25, 4,0,0,0,-25 + RenderUnit: + AutoTarget: + +JEEP: + Inherits: ^Vehicle + Valued: + Cost: 400 + Tooltip: + Name: Hum-Vee + Icon: jeepicnh + Description: Fast scout & anti-infantry vehicle.\n Strong vs Infantry\n Weak vs Tanks, Aircraft + Buildable: + BuildPaletteOrder: 20 + Prerequisites: weap + Owner: gdi + Mobile: + ROT: 10 + Speed: 14 + Health: + HP: 150 + Armor: + Type: Light + RevealsShroud: + Range: 7 + Turreted: + ROT: 10 + AttackTurreted: + PrimaryWeapon: MachineGun + PrimaryOffset: 0,2,0,-4 + WithMuzzleFlash: + RenderUnitTurreted: + AutoTarget: + +LTNK: + Inherits: ^Tank + Valued: + Cost: 600 + Tooltip: + Name: Light Tank + Icon: ltnkicnh + Description: Light Tank, good for scouting.\n Strong vs Light Vehicles\n Weak vs Tanks, Aircraft + Buildable: + BuildPaletteOrder: 30 + Prerequisites: hq + Owner: nod + Mobile: + Speed: 9 + Health: + HP: 300 + Armor: + Type: Heavy + RevealsShroud: + Range: 4 + Turreted: + ROT: 5 + AttackTurreted: + PrimaryWeapon: 70mm + PrimaryRecoil: 2 + PrimaryRecoilRecovery: 0.4 + PrimaryLocalOffset: 0,3,0,-2,0 + RenderUnitTurreted: + AutoTarget: + Explodes: + Weapon: UnitExplodeSmall + EmptyWeapon: UnitExplodeSmall + +MTNK: + Inherits: ^Tank + Valued: + Cost: 800 + Tooltip: + Name: Medium Tank + Icon: mtnkicnh + Description: General-Purpose GDI Tank.\n Strong vs Tanks, Light Vehicles\n Weak vs Infantry, Aircraft + Buildable: + BuildPaletteOrder: 30 + Prerequisites: hq + Owner: gdi + Mobile: + Speed: 7 + Health: + HP: 400 + Armor: + Type: Heavy + RevealsShroud: + Range: 5 + Turreted: + ROT: 5 + AttackTurreted: + PrimaryWeapon: 120mm + PrimaryRecoil: 3 + PrimaryRecoilRecovery: 0.6 + PrimaryLocalOffset: 0,0,0,-1,0 + RenderUnitTurreted: + AutoTarget: + Explodes: + Weapon: UnitExplodeSmall + EmptyWeapon: UnitExplodeSmall + Selectable: + Bounds: 34,34 + +HTNK: + Inherits: ^Tank + Valued: + Cost: 1500 + Tooltip: + Name: Mammoth Tank + Icon: htnkicnh + Description: Heavily armored GDI Tank.\n Strong vs Everything + Buildable: + BuildPaletteOrder: 60 + Prerequisites: eye + Owner: gdi + Mobile: + Crushes: wall, heavywall, crate, infantry + Speed: 3 + Health: + HP: 600 + Armor: + Type: Heavy + RevealsShroud: + Range: 6 + Turreted: + ROT: 2 + AttackTurreted: + PrimaryWeapon: 120mmDual + SecondaryWeapon: MammothMissiles + PrimaryLocalOffset: -5,-5,0,-10,0, 5,-5,0,-10,0 + SecondaryLocalOffset: -9,2,0,0,25, 9,2,0,0,-25 + PrimaryRecoil: 4 + SecondaryRecoil: 1 + PrimaryRecoilRecovery: 1 + RenderUnitTurreted: + AutoTarget: + SelfHealing: + Ticks: 10 + HealIfBelow: 50% + DamageCooldown: 200 + Explodes: + Weapon: UnitExplodeSmall + EmptyWeapon: UnitExplodeSmall + Selectable: + Bounds: 40,38,0,-3 + +MSAM: + Inherits: ^Tank + Valued: + Cost: 1200 + Tooltip: + Name: Rocket Launcher + Icon: msamicnh + Description: Long range artillery.\n Strong vs Infantry, Buildings\n Weak vs Tanks, Aircraft + Buildable: + BuildPaletteOrder: 50 + Prerequisites: hq + Owner: gdi + Mobile: + Speed: 6 + Health: + HP: 120 + Armor: + Type: Light + RevealsShroud: + Range: 10 + Turreted: + ROT: 255 + AttackFrontal: + PrimaryWeapon: 227mm + PrimaryOffset: 0,6,0,-3 + PrimaryLocalOffset: 3,-5,0,0,0, -3,-5,0,0,0 + RenderUnitTurretedAim: + AutoTarget: + +MLRS: + Inherits: ^Tank + Valued: + Cost: 750 + Tooltip: + Name: SSM Launcher + Icon: mlrsicnh + Description: Long range artillery.\n Strong vs Infantry, Aircraft\n Weak vs Tanks, Aircraft +# Buildable: +# BuildPaletteOrder: 60 +# Prerequisites: hq +# Owner: nod + Mobile: + Speed: 6 + Health: + HP: 120 + Armor: + Type: Light + RevealsShroud: + Range: 10 + Turreted: + ROT: 5 + AttackTurreted: + PrimaryWeapon: HonestJohn + SecondaryWeapon: HonestJohn + PrimaryOffset: 0,3,0,-3 + PrimaryLocalOffset: -4,0,0,0,0 + SecondaryLocalOffset: 4,0,0,0,0 + AlignIdleTurrets: true + RenderUnitTurretedAim: + AutoTarget: + +STNK: + Inherits: ^Vehicle + Valued: + Cost: 900 + Tooltip: + Name: Stealth Tank + Icon: stnkicnh + Description: Missile tank that can bend light around \nitself to become invisible\n Strong vs Infantry, Aircraft\n Weak vs Tanks + Buildable: + BuildPaletteOrder: 90 + Prerequisites: tmpl + Owner: nod + Mobile: + Speed: 14 + Health: + HP: 150 + Armor: + Type: Light + RevealsShroud: + Range: 4 + Cloak: + InitialDelay: 125 + CloakDelay: 125 + CloakSound: appear1.aud + UncloakSound: appear1.aud + AttackFrontal: + PrimaryWeapon: 227mm.stnk + PrimaryOffset: 0,-5,0,-3 + PrimaryLocalOffset: 1,0,0,0,0, -1,0,0,0,0 + RenderUnit: + AutoTarget: + InitialStance: HoldFire + TargetableUnit: diff --git a/mods/cnc-classic/uibits/buttons.png b/mods/cnc-classic/uibits/buttons.png new file mode 100644 index 0000000000..b0868fd437 Binary files /dev/null and b/mods/cnc-classic/uibits/buttons.png differ diff --git a/mods/cnc-classic/uibits/chrome-gdi.png b/mods/cnc-classic/uibits/chrome-gdi.png new file mode 100644 index 0000000000..25bad67e8d Binary files /dev/null and b/mods/cnc-classic/uibits/chrome-gdi.png differ diff --git a/mods/cnc-classic/uibits/chrome-nod.png b/mods/cnc-classic/uibits/chrome-nod.png new file mode 100644 index 0000000000..62ced4ac4d Binary files /dev/null and b/mods/cnc-classic/uibits/chrome-nod.png differ diff --git a/mods/cnc-classic/uibits/dialog.png b/mods/cnc-classic/uibits/dialog.png new file mode 100644 index 0000000000..96fc075277 Binary files /dev/null and b/mods/cnc-classic/uibits/dialog.png differ diff --git a/mods/cnc-classic/uibits/loadscreen.png b/mods/cnc-classic/uibits/loadscreen.png new file mode 100644 index 0000000000..85e73515c3 Binary files /dev/null and b/mods/cnc-classic/uibits/loadscreen.png differ diff --git a/mods/cnc-classic/uibits/tabs.png b/mods/cnc-classic/uibits/tabs.png new file mode 100644 index 0000000000..01e5b80f4e Binary files /dev/null and b/mods/cnc-classic/uibits/tabs.png differ