LegacyRules is dead. Long live.. yaml?
This commit is contained in:
@@ -59,7 +59,7 @@ namespace OpenRA.FileFormats
|
|||||||
public class Manifest
|
public class Manifest
|
||||||
{
|
{
|
||||||
public readonly string[]
|
public readonly string[]
|
||||||
Folders, Packages, LegacyRules, Rules,
|
Folders, Packages, Rules,
|
||||||
Sequences, Chrome, Assemblies, ChromeLayout,
|
Sequences, Chrome, Assemblies, ChromeLayout,
|
||||||
Weapons, Voices, Terrain;
|
Weapons, Voices, Terrain;
|
||||||
|
|
||||||
@@ -71,7 +71,6 @@ namespace OpenRA.FileFormats
|
|||||||
|
|
||||||
Folders = YamlList(yaml, "Folders");
|
Folders = YamlList(yaml, "Folders");
|
||||||
Packages = YamlList(yaml, "Packages");
|
Packages = YamlList(yaml, "Packages");
|
||||||
LegacyRules = YamlList(yaml, "LegacyRules");
|
|
||||||
Rules = YamlList(yaml, "Rules");
|
Rules = YamlList(yaml, "Rules");
|
||||||
Sequences = YamlList(yaml, "Sequences");
|
Sequences = YamlList(yaml, "Sequences");
|
||||||
Chrome = YamlList(yaml, "Chrome");
|
Chrome = YamlList(yaml, "Chrome");
|
||||||
|
|||||||
@@ -28,7 +28,6 @@ namespace OpenRA
|
|||||||
{
|
{
|
||||||
public static class Rules
|
public static class Rules
|
||||||
{
|
{
|
||||||
public static IniFile AllRules;
|
|
||||||
public static TechTree TechTree;
|
public static TechTree TechTree;
|
||||||
|
|
||||||
public static Dictionary<string, ActorInfo> Info;
|
public static Dictionary<string, ActorInfo> Info;
|
||||||
@@ -38,10 +37,6 @@ namespace OpenRA
|
|||||||
|
|
||||||
public static void LoadRules(string map, Manifest m)
|
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: ");
|
Log.Write("Using rules files: ");
|
||||||
foreach (var y in m.Rules)
|
foreach (var y in m.Rules)
|
||||||
Log.Write(" -- {0}", y);
|
Log.Write(" -- {0}", y);
|
||||||
|
|||||||
@@ -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 <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
#endregion
|
||||||
|
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
|
||||||
using System.Text;
|
|
||||||
|
|
||||||
namespace OpenRA.Traits.Render
|
namespace OpenRA.Traits.Render
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -20,8 +20,6 @@
|
|||||||
|
|
||||||
using System;
|
using System;
|
||||||
using OpenRA.Graphics;
|
using OpenRA.Graphics;
|
||||||
using System.Collections.Generic;
|
|
||||||
using OpenRA.FileFormats;
|
|
||||||
|
|
||||||
namespace OpenRA.Traits
|
namespace OpenRA.Traits
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -6,9 +6,6 @@ Packages:
|
|||||||
mods/aftermath/packages/expand2.mix
|
mods/aftermath/packages/expand2.mix
|
||||||
mods/aftermath/packages/hires1.mix
|
mods/aftermath/packages/hires1.mix
|
||||||
|
|
||||||
LegacyRules:
|
|
||||||
mods/aftermath/aftermathUnits.ini: OpenRA patches
|
|
||||||
|
|
||||||
Rules:
|
Rules:
|
||||||
mods/aftermath/rules.yaml: OpenRA actorinfos
|
mods/aftermath/rules.yaml: OpenRA actorinfos
|
||||||
|
|
||||||
|
|||||||
@@ -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
|
|
||||||
@@ -16,9 +16,6 @@ Packages:
|
|||||||
mods/cnc/packages/winter.mix
|
mods/cnc/packages/winter.mix
|
||||||
mods/cnc/packages/desert.mix
|
mods/cnc/packages/desert.mix
|
||||||
|
|
||||||
LegacyRules:
|
|
||||||
mods/cnc/minimal.ini: Minimal rules definitions
|
|
||||||
|
|
||||||
Rules:
|
Rules:
|
||||||
mods/cnc/defaults.yaml: Basic stuff
|
mods/cnc/defaults.yaml: Basic stuff
|
||||||
mods/cnc/system.yaml: Player and world actors
|
mods/cnc/system.yaml: Player and world actors
|
||||||
|
|||||||
@@ -2,8 +2,6 @@
|
|||||||
|
|
||||||
Packages:
|
Packages:
|
||||||
|
|
||||||
LegacyRules:
|
|
||||||
|
|
||||||
Rules:
|
Rules:
|
||||||
mods/ra-ng/crate-drop.yaml
|
mods/ra-ng/crate-drop.yaml
|
||||||
mods/ra-ng/defense-queue.yaml
|
mods/ra-ng/defense-queue.yaml
|
||||||
|
|||||||
@@ -20,9 +20,6 @@ Packages:
|
|||||||
snow.mix
|
snow.mix
|
||||||
interior.mix
|
interior.mix
|
||||||
|
|
||||||
LegacyRules:
|
|
||||||
mods/ra/rules.ini
|
|
||||||
|
|
||||||
Rules:
|
Rules:
|
||||||
mods/ra/defaults.yaml: Basic stuff
|
mods/ra/defaults.yaml: Basic stuff
|
||||||
mods/ra/rules.yaml: OpenRA actorinfos
|
mods/ra/rules.yaml: OpenRA actorinfos
|
||||||
|
|||||||
@@ -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
|
|
||||||
Reference in New Issue
Block a user