From 256e8c09ae6e639cfb24996c80565b33c234690f Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Fri, 2 Apr 2010 17:21:01 +1300 Subject: [PATCH] LegacyRules is dead. Long live.. yaml? --- OpenRA.FileFormats/Session.cs | 3 +- OpenRA.Game/GameRules/Rules.cs | 5 -- OpenRA.Game/Traits/Render/HiddenUnderFog.cs | 23 +++++- OpenRA.Game/Traits/Render/RenderUnit.cs | 2 - mods/aftermath/mod.yaml | 3 - mods/cnc/minimal.ini | 16 ---- mods/cnc/mod.yaml | 3 - mods/ra-ng/mod.yaml | 2 - mods/ra/mod.yaml | 3 - mods/ra/rules.ini | 90 --------------------- 10 files changed, 21 insertions(+), 129 deletions(-) delete mode 100644 mods/cnc/minimal.ini delete mode 100644 mods/ra/rules.ini diff --git a/OpenRA.FileFormats/Session.cs b/OpenRA.FileFormats/Session.cs index 843c1d5088..021df575d1 100644 --- a/OpenRA.FileFormats/Session.cs +++ b/OpenRA.FileFormats/Session.cs @@ -59,7 +59,7 @@ namespace OpenRA.FileFormats public class Manifest { public readonly string[] - Folders, Packages, LegacyRules, Rules, + Folders, Packages, Rules, Sequences, Chrome, Assemblies, ChromeLayout, Weapons, Voices, Terrain; @@ -71,7 +71,6 @@ namespace OpenRA.FileFormats Folders = YamlList(yaml, "Folders"); Packages = YamlList(yaml, "Packages"); - LegacyRules = YamlList(yaml, "LegacyRules"); Rules = YamlList(yaml, "Rules"); Sequences = YamlList(yaml, "Sequences"); Chrome = YamlList(yaml, "Chrome"); diff --git a/OpenRA.Game/GameRules/Rules.cs b/OpenRA.Game/GameRules/Rules.cs index c92a487cc0..1c10af26f1 100755 --- a/OpenRA.Game/GameRules/Rules.cs +++ b/OpenRA.Game/GameRules/Rules.cs @@ -28,7 +28,6 @@ namespace OpenRA { public static class Rules { - public static IniFile AllRules; public static TechTree TechTree; public static Dictionary Info; @@ -38,10 +37,6 @@ namespace OpenRA public static void LoadRules(string map, Manifest m) { - var legacyRules = m.LegacyRules.Reverse().ToList(); - legacyRules.Insert(0, map); - AllRules = new IniFile(legacyRules.Select(a => FileSystem.Open(a)).ToArray()); - Log.Write("Using rules files: "); foreach (var y in m.Rules) Log.Write(" -- {0}", y); diff --git a/OpenRA.Game/Traits/Render/HiddenUnderFog.cs b/OpenRA.Game/Traits/Render/HiddenUnderFog.cs index 991ce0e3c6..129b8526f0 100644 --- a/OpenRA.Game/Traits/Render/HiddenUnderFog.cs +++ b/OpenRA.Game/Traits/Render/HiddenUnderFog.cs @@ -1,7 +1,24 @@ -using System; +#region Copyright & License Information +/* + * Copyright 2007,2009,2010 Chris Forbes, Robert Pepperell, Matthew Bowra-Dean, Paul Chote, Alli Witheford. + * This file is part of OpenRA. + * + * OpenRA is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * OpenRA is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with OpenRA. If not, see . + */ +#endregion + using System.Collections.Generic; -using System.Linq; -using System.Text; namespace OpenRA.Traits.Render { diff --git a/OpenRA.Game/Traits/Render/RenderUnit.cs b/OpenRA.Game/Traits/Render/RenderUnit.cs index 4da320ed15..e631ea03cb 100644 --- a/OpenRA.Game/Traits/Render/RenderUnit.cs +++ b/OpenRA.Game/Traits/Render/RenderUnit.cs @@ -20,8 +20,6 @@ using System; using OpenRA.Graphics; -using System.Collections.Generic; -using OpenRA.FileFormats; namespace OpenRA.Traits { diff --git a/mods/aftermath/mod.yaml b/mods/aftermath/mod.yaml index f1fb219a73..4eac100446 100644 --- a/mods/aftermath/mod.yaml +++ b/mods/aftermath/mod.yaml @@ -6,9 +6,6 @@ Packages: mods/aftermath/packages/expand2.mix mods/aftermath/packages/hires1.mix -LegacyRules: - mods/aftermath/aftermathUnits.ini: OpenRA patches - Rules: mods/aftermath/rules.yaml: OpenRA actorinfos diff --git a/mods/cnc/minimal.ini b/mods/cnc/minimal.ini deleted file mode 100644 index baaa96e56a..0000000000 --- a/mods/cnc/minimal.ini +++ /dev/null @@ -1,16 +0,0 @@ -; The bare minimum rules required for the game to run -; The linecount of this file should reduce to zero as we port things to traits - -[General] -ConditionRed=25% ; when damaged to this percentage, health bar turns red -ConditionYellow=50% ; when damaged to this percentage, health bar turns yellow -RefundPercent=50% ; percent of original cost to refund when building/unit is sold -RepairRate=.016 ; minutes between applying repair step -URepairPercent=20% ; [units only] percent cost to fully repair as ratio of full cost -URepairStep=10 ; [units only] hit points to heal per repair 'tick' for units -BuildSpeed=.1 ; general build speed [time (in minutes) to produce a 1000 credit cost item] - -LowPowerSlowdown=3 ; slowdown factor for low power - -GapRegenInterval=.1 ; gap generators will regenerate their shroud at this time interval -SubmergeDelay=.02 ; forced delay that subs will remain on surface before allowing to submerge diff --git a/mods/cnc/mod.yaml b/mods/cnc/mod.yaml index a644bb2b02..f1f1ba4e25 100644 --- a/mods/cnc/mod.yaml +++ b/mods/cnc/mod.yaml @@ -16,9 +16,6 @@ Packages: mods/cnc/packages/winter.mix mods/cnc/packages/desert.mix -LegacyRules: - mods/cnc/minimal.ini: Minimal rules definitions - Rules: mods/cnc/defaults.yaml: Basic stuff mods/cnc/system.yaml: Player and world actors diff --git a/mods/ra-ng/mod.yaml b/mods/ra-ng/mod.yaml index 53300a2647..b3e8b8ee23 100644 --- a/mods/ra-ng/mod.yaml +++ b/mods/ra-ng/mod.yaml @@ -2,8 +2,6 @@ Packages: -LegacyRules: - Rules: mods/ra-ng/crate-drop.yaml mods/ra-ng/defense-queue.yaml diff --git a/mods/ra/mod.yaml b/mods/ra/mod.yaml index 9a40345166..d3f7ac0b41 100644 --- a/mods/ra/mod.yaml +++ b/mods/ra/mod.yaml @@ -20,9 +20,6 @@ Packages: snow.mix interior.mix -LegacyRules: - mods/ra/rules.ini - Rules: mods/ra/defaults.yaml: Basic stuff mods/ra/rules.yaml: OpenRA actorinfos diff --git a/mods/ra/rules.ini b/mods/ra/rules.ini deleted file mode 100644 index 8885a7ad59..0000000000 --- a/mods/ra/rules.ini +++ /dev/null @@ -1,90 +0,0 @@ -; RULES.INI -; If placed in game directory, it will override built in values. Values to be used as multipliers -; or percentages can be specified as either a simple floating point number (embed ".") or as a -; conventional percentage number (append "%"). Values used as cell distances or time delays -; are specified as simple floating point number. Distance values are expressed in cells. Time -; values are expressed in minutes. - -[General] - -; special weapons -GapRegenInterval=.1 ; gap generators will regenerate their shroud at this time interval -BadgerBombCount=1 ; number of badgers used to drop parabombs - -; Chrono side effects -QuakeChance=20% ; percentage chance time quake will occur with each chronoshift use -QuakeDamage=33% ; percentage damage to inflict when time quake occurs -VortexChance=20% ; percent chance that chronal vortex occurs with each chronoshift use -VortexDamage=200 ; damage inflicted by vortex discharge -VortexRange=10 ; scan for victims up to this distance away [in cells] -VortexSpeed=10 ; speed of vortex movement - -; repair and refit -RefundPercent=50% ; percent of original cost to refund when building/unit is sold -ReloadRate=.04 ; minutes to reload each ammo point for aircraft or helicopters -RepairPercent=20% ; percent cost to fully repair as ratio of full cost -RepairRate=.016 ; minutes between applying repair step -RepairStep=7 ; hit points to heal per repair 'tick' for buildings -URepairPercent=20% ; [units only] percent cost to fully repair as ratio of full cost -URepairStep=10 ; [units only] hit points to heal per repair 'tick' for units - -; combat and damage -TurboBoost=1.5 ; speed multiplier for turbo-boosted weapons when firing upon aircraft -BallisticScatter=1.0 ; maximum scatter distance (cells) for inaccurate ballistic projectiles -C4Delay=.03 ; minutes to delay after placing C4 before building will explode -ExpSpread=.3 ; cell damage spread per 256 damage points for exploding object types [if Explodes=yes] -FireSupress=1 ; radius from target to look for friendlies and thus discourage firing upon, if found -HomingScatter=2.0 ; maximum scatter distance (cells) for inaccurate homing projectiles -MaxDamage=1000 ; maximum damage (after adjustments) per shot -MinDamage=1 ; minimum damage (after adjustments) per shot -OreExplosive=no ; Does the harvester explode big time when destroyed? -PlayerAutoCrush=no ; Will player controlled units automatically try to crush enemy infantry? -PlayerReturnFire=no ; More aggressive return fire from player controlled objects? -PlayerScatter=no ; Will player units scatter, of their own accord, from threats and damage? -TreeTargeting=no ; Automatically show target cursor when over trees? -Incoming=10 ; If an incoming projectile is as slow or slower than this, then - ; object in the target location will try to run away. Grenades and - ; parachute bombs have this characteristic. - -; income and production -BuildSpeed=.4 ; general build speed [time (in minutes) to produce a 1000 credit cost item] -BuildupTime=.06 ; average minutes that building build-up animation runs -OreTruckRate=1 ; speed that harvester truck manages ore [larger means slower] -SeparateAircraft=no ; Is first helicopter to be purchased separately from helipad? -SurvivorRate=.4 ; fraction of building cost to be converted to survivors when sold - -; audio/visual map controls -AllyReveal=yes ; Allies automatically reveal radar maps to each other? -ConditionRed=25% ; when damaged to this percentage, health bar turns red -ConditionYellow=50% ; when damaged to this percentage, health bar turns yellow -DropZoneRadius=4 ; distance around drop zone flair that map reveals itself -EnemyHealth=yes ; Show enemy health bar graph when selected? -Gravity=3 ; gravity constant for ballistic projectiles -IdleActionFrequency=.1 ; average minutes between infantry performing idle actions -MessageDelay=.6 ; time duration of multiplayer messages displayed over map -MovieTime=.06 ; minutes that movie recorder will record when activated (debug version only) -NamedCivilians=no ; Show true names over civilians and civilian buildings? -SavourDelay=.03 ; delay between scenario end and ending movie [keep the delay short] -ShroudRate=4 ; minutes between each shroud creep process [0 means no shadow creep] -SpeakDelay=2 ; minutes between EVA repeating advice to the player -TimerWarning=2 ; if mission timer is less than this many minutes, then display in red -FlashLowPower=yes ; Flash the power bar when power is low? - -; computer and movement controls -CurleyShuffle=no ; Should helicopter shuffle position between shots (as in C&C)? -BaseBias=2 ; multiplier to threat target value when enemy is close to friendly base -BaseDefenseDelay=.25 ; minutes delay between sending response teams to deal with base threat -CloseEnough=2.75 ; If distance to destination less than this, then abort movement if otherwise blocked. -DamageDelay=1 ; minutes between applying trivial structure damage when low on power -GameSpeeBias=1 ; multiplier to overall game object movement speed -LZScanRadius=16 ; maximum radius to scan for alternate landing zone if otherwise occupied -MineAware=yes ; Are friendly units smart enough to avoid friendly mines? -Stray=2.0 ; radius distance (cells) that team members may stray without causing regroup action -SubmergeDelay=.02 ; forced delay that subs will remain on surface before allowing to submerge -SuspendDelay=2 ; minutes that suspended teams will remain suspended -SuspendPriority=20 ; teams with less than this priority will suspend during base defense ops -TeamDelay=.6 ; interval between checking for and creating teams - -; misc -FineDiffControl=no ; Allow 5 difficulty settings instead of only 3 settings? -LowPowerSlowdown=3