diff --git a/assets_src/renders/algorithm.png b/assets_src/renders/algorithm.png new file mode 100644 index 0000000..48bfe40 Binary files /dev/null and b/assets_src/renders/algorithm.png differ diff --git a/assets_src/renders/algorithm_raw.png b/assets_src/renders/algorithm_raw.png new file mode 100644 index 0000000..516a7b2 Binary files /dev/null and b/assets_src/renders/algorithm_raw.png differ diff --git a/mods/vinylgod/audio/mc_dropready.wav b/mods/vinylgod/audio/mc_dropready.wav new file mode 100644 index 0000000..dc55383 Binary files /dev/null and b/mods/vinylgod/audio/mc_dropready.wav differ diff --git a/mods/vinylgod/audio/mc_incoming.wav b/mods/vinylgod/audio/mc_incoming.wav new file mode 100644 index 0000000..ea7d40e Binary files /dev/null and b/mods/vinylgod/audio/mc_incoming.wav differ diff --git a/mods/vinylgod/audio/mc_selecttarget.wav b/mods/vinylgod/audio/mc_selecttarget.wav new file mode 100644 index 0000000..d53d6e0 Binary files /dev/null and b/mods/vinylgod/audio/mc_selecttarget.wav differ diff --git a/mods/vinylgod/audio/mc_shuffleready.wav b/mods/vinylgod/audio/mc_shuffleready.wav new file mode 100644 index 0000000..e8d40fd Binary files /dev/null and b/mods/vinylgod/audio/mc_shuffleready.wav differ diff --git a/mods/vinylgod/chrome/layouts/ingame-player.yaml b/mods/vinylgod/chrome/layouts/ingame-player.yaml index caeca1a..e8b3dea 100644 --- a/mods/vinylgod/chrome/layouts/ingame-player.yaml +++ b/mods/vinylgod/chrome/layouts/ingame-player.yaml @@ -16,6 +16,17 @@ Container@PLAYER_WIDGETS: Height: 23 Align: Right Font: TinyBold + Container@SUPPORT_POWERS: + X: 10 + Y: 45 + Width: 70 + Height: 250 + Children: + SupportPowers@SUPPORT_PALETTE: + IconSize: 64, 48 + IconMargin: 2 + ReadyText: production-ready + HoldText: production-hold Container@SIDEBAR_PRODUCTION: Logic: ClassicProductionLogic X: WINDOW_WIDTH - 240 diff --git a/mods/vinylgod/cursors/default.yaml b/mods/vinylgod/cursors/default.yaml index b5954f2..21de2b7 100644 --- a/mods/vinylgod/cursors/default.yaml +++ b/mods/vinylgod/cursors/default.yaml @@ -32,3 +32,9 @@ Cursors: Start: 0 assaultmove-blocked: Start: 0 + ability: + Start: 0 + generic-blocked: + Start: 0 + nuke: + Start: 0 diff --git a/mods/vinylgod/fluent/rules.ftl b/mods/vinylgod/fluent/rules.ftl index ea3328a..090f98c 100644 --- a/mods/vinylgod/fluent/rules.ftl +++ b/mods/vinylgod/fluent/rules.ftl @@ -77,3 +77,13 @@ actor-hornpit = .name = Horn Pit actor-adblocker = .name = Ad Tower + +## superweapons +actor-algorithm = + .name = The Algorithm +power-thedrop = + .name = THE DROP + .description = Orbital tonearm strike. The groove is the crater. +power-theshuffle = + .name = THE SHUFFLE + .description = Reality-compression strike. Terms of service apply. diff --git a/mods/vinylgod/notifications/vinylgod.yaml b/mods/vinylgod/notifications/vinylgod.yaml index 0d8e621..65fe1eb 100644 --- a/mods/vinylgod/notifications/vinylgod.yaml +++ b/mods/vinylgod/notifications/vinylgod.yaml @@ -14,3 +14,7 @@ Speech: Win: audio/mc_win Lose: audio/mc_lose LowPower: audio/mc_lowpower + DropReady: audio/mc_dropready + ShuffleReady: audio/mc_shuffleready + SelectTarget: audio/mc_selecttarget + Incoming: audio/mc_incoming diff --git a/mods/vinylgod/rules/ai.yaml b/mods/vinylgod/rules/ai.yaml index f9d2336..c5b64e9 100644 --- a/mods/vinylgod/rules/ai.yaml +++ b/mods/vinylgod/rules/ai.yaml @@ -36,6 +36,7 @@ player: garage: 1 printfarm: 1 mastering: 1 + algorithm: 1 BuildingFractions: pressplant: 30 hornpit: 8 @@ -46,6 +47,7 @@ player: garage: 1 printfarm: 1 mastering: 1 + algorithm: 1 UnitBuilderBotModule: RequiresCondition: enable-wax-ai UnitsToBuild: @@ -62,6 +64,18 @@ player: digger: 4 scraper: 4 roadie: 2 + SupportPowerBotModule: + RequiresCondition: enable-wax-ai + Decisions: + thedrop: + OrderName: NukePowerInfoOrder + MinimumAttractiveness: 3000 + Consideration@1: + Against: Enemy + Types: Structure + Attractiveness: 1 + TargetMetric: Value + CheckRadius: 5c0 SquadManagerBotModule: RequiresCondition: enable-wax-ai SquadSize: 8 diff --git a/mods/vinylgod/rules/combat.yaml b/mods/vinylgod/rules/combat.yaml index 168c083..8668ce1 100644 --- a/mods/vinylgod/rules/combat.yaml +++ b/mods/vinylgod/rules/combat.yaml @@ -95,6 +95,24 @@ roadie: mastering: Inherits: ^EconBuilding Inherits@shape: ^Buildable2x2 + NukePower: + Icon: thedrop + Name: power-thedrop.name + Description: power-thedrop.description + ChargeInterval: 9000 + Cursor: nuke + MissileWeapon: thedrop_impact + MissileImage: needle + SkipAscent: true + FlightDelay: 125 + FlightVelocity: 1024 + EndChargeSpeechNotification: DropReady + SelectTargetSpeechNotification: SelectTarget + IncomingSpeechNotification: Incoming + DisplayBeacon: false + DisplayRadarPing: true + SupportPowerPaletteOrder: 10 + SupportPowerChargeBar: Buildable: Queue: Building BuildPaletteOrder: 60 @@ -155,3 +173,37 @@ adblocker: ValidTargets: GroundActor Power: Amount: -15 + +algorithm: + Inherits: ^EconBuilding + Inherits@shape: ^Buildable2x2 + Buildable: + Queue: Building + BuildPaletteOrder: 61 + Prerequisites: printfarm + Valued: + Cost: 1500 + Tooltip: + Name: actor-algorithm.name + Health: + HP: 60000 + Power: + Amount: -40 + NukePower: + Icon: theshuffle + Name: power-theshuffle.name + Description: power-theshuffle.description + ChargeInterval: 9000 + Cursor: nuke + MissileWeapon: theshuffle_impact + MissileImage: shufflebolt + SkipAscent: true + FlightDelay: 125 + FlightVelocity: 1024 + EndChargeSpeechNotification: ShuffleReady + SelectTargetSpeechNotification: SelectTarget + IncomingSpeechNotification: Incoming + DisplayBeacon: false + DisplayRadarPing: true + SupportPowerPaletteOrder: 10 + SupportPowerChargeBar: diff --git a/mods/vinylgod/rules/player.yaml b/mods/vinylgod/rules/player.yaml index 3b9ffc8..3038d7b 100644 --- a/mods/vinylgod/rules/player.yaml +++ b/mods/vinylgod/rules/player.yaml @@ -30,6 +30,7 @@ player: WinNotification: Win LoseNotification: Lose BaseAttackNotifier: + SupportPowerManager: editorplayer: Inherits: ^baseplayer diff --git a/mods/vinylgod/sequences/assets/algorithm.png b/mods/vinylgod/sequences/assets/algorithm.png new file mode 100644 index 0000000..243a130 Binary files /dev/null and b/mods/vinylgod/sequences/assets/algorithm.png differ diff --git a/mods/vinylgod/sequences/assets/icon_algorithm.png b/mods/vinylgod/sequences/assets/icon_algorithm.png new file mode 100644 index 0000000..b1565cb Binary files /dev/null and b/mods/vinylgod/sequences/assets/icon_algorithm.png differ diff --git a/mods/vinylgod/sequences/assets/icon_thedrop.png b/mods/vinylgod/sequences/assets/icon_thedrop.png new file mode 100644 index 0000000..aba5fb5 Binary files /dev/null and b/mods/vinylgod/sequences/assets/icon_thedrop.png differ diff --git a/mods/vinylgod/sequences/assets/icon_theshuffle.png b/mods/vinylgod/sequences/assets/icon_theshuffle.png new file mode 100644 index 0000000..c100889 Binary files /dev/null and b/mods/vinylgod/sequences/assets/icon_theshuffle.png differ diff --git a/mods/vinylgod/sequences/assets/needle.png b/mods/vinylgod/sequences/assets/needle.png new file mode 100644 index 0000000..27e5c4e Binary files /dev/null and b/mods/vinylgod/sequences/assets/needle.png differ diff --git a/mods/vinylgod/sequences/assets/shufflebolt.png b/mods/vinylgod/sequences/assets/shufflebolt.png new file mode 100644 index 0000000..4dd9957 Binary files /dev/null and b/mods/vinylgod/sequences/assets/shufflebolt.png differ diff --git a/mods/vinylgod/sequences/economy.yaml b/mods/vinylgod/sequences/economy.yaml index 8c3b7bc..7ef0372 100644 --- a/mods/vinylgod/sequences/economy.yaml +++ b/mods/vinylgod/sequences/economy.yaml @@ -176,3 +176,27 @@ adblocker: Filename: sequences/assets/adblocker.png icon: Filename: sequences/assets/icon_adblocker.png + +needle: + up: + Filename: sequences/assets/needle.png + down: + Filename: sequences/assets/needle.png + +shufflebolt: + up: + Filename: sequences/assets/shufflebolt.png + down: + Filename: sequences/assets/shufflebolt.png + +icon: + thedrop: + Filename: sequences/assets/icon_thedrop.png + theshuffle: + Filename: sequences/assets/icon_theshuffle.png + +algorithm: + idle: + Filename: sequences/assets/algorithm.png + icon: + Filename: sequences/assets/icon_algorithm.png diff --git a/mods/vinylgod/weapons/vinylgod.yaml b/mods/vinylgod/weapons/vinylgod.yaml index 77e1789..d041e96 100644 --- a/mods/vinylgod/weapons/vinylgod.yaml +++ b/mods/vinylgod/weapons/vinylgod.yaml @@ -109,3 +109,33 @@ BuildingExplode: Warhead@Eff: CreateEffect Explosions: bigboom ValidTargets: Ground, GroundActor + +thedrop_impact: + ValidTargets: Ground, GroundActor, Structure + Warhead@1Dam: SpreadDamage + Spread: 682 + Damage: 30000 + ValidTargets: GroundActor, Structure + Versus: + None: 100 + Wood: 100 + Light: 100 + Heavy: 90 + Warhead@2Eff: CreateEffect + Explosions: bigboom + ValidTargets: Ground, GroundActor + +theshuffle_impact: + ValidTargets: Ground, GroundActor, Structure + Warhead@1Dam: SpreadDamage + Spread: 682 + Damage: 22000 + ValidTargets: GroundActor, Structure + Versus: + None: 80 + Wood: 130 + Light: 90 + Heavy: 80 + Warhead@2Eff: CreateEffect + Explosions: bigboom + ValidTargets: Ground, GroundActor