Added a minimal work in progress TS mod with few backfalls on RA

to showcase infantry, vehicles, aircraft
This commit is contained in:
Matthias Mailänder
2013-05-25 13:22:39 +02:00
parent 2d050cb2cc
commit 389aa6c929
31 changed files with 5818 additions and 75 deletions

View File

@@ -151,6 +151,15 @@ mod_d2k_EXTRA_CMDS = mono --debug RALint.exe d2k
PROGRAMS += mod_d2k
mod_d2k: $(mod_d2k_TARGET)
# Tiberian Sun
mod_ts_SRCS := $(shell find OpenRA.Mods.TS/ -iname '*.cs')
mod_ts_TARGET = mods/ts/OpenRA.Mods.TS.dll
mod_ts_KIND = library
mod_ts_DEPS = $(STD_MOD_DEPS) $(mod_ra_TARGET)
mod_ts_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(mod_ra_TARGET)
mod_ts_EXTRA_CMDS = mono --debug RALint.exe ts
PROGRAMS += mod_ts
mod_ts: $(mod_ts_TARGET)
##### Tools #####
@@ -243,7 +252,7 @@ tools: editor tsbuild ralint
package: dependencies core editor docs version
mods: mod_ra mod_cnc mod_d2k
mods: mod_ra mod_cnc mod_d2k mod_ts
all: dependencies core tools

View File

@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>10.0.0</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}</ProjectGuid>
<OutputType>Library</OutputType>
<RootNamespace>OpenRA.Mods.TS</RootNamespace>
<AssemblyName>OpenRA.Mods.TS</AssemblyName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<Optimize>false</Optimize>
<OutputPath>bin\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
<CustomCommands>
<CustomCommands>
<Command type="AfterBuild" command="cp ${TargetFile} ../mods/ts" workingdir="${ProjectDir}" />
</CustomCommands>
</CustomCommands>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<Optimize>true</Optimize>
<OutputPath>bin\Release</OutputPath>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Core" />
</ItemGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<ItemGroup>
<ProjectReference Include="..\OpenRA.Mods.RA\OpenRA.Mods.RA.csproj">
<Project>{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}</Project>
<Name>OpenRA.Mods.RA</Name>
</ProjectReference>
<ProjectReference Include="..\OpenRA.Game\OpenRA.Game.csproj">
<Project>{0DFB103F-2962-400F-8C6D-E2C28CCBA633}</Project>
<Name>OpenRA.Game</Name>
</ProjectReference>
<ProjectReference Include="..\OpenRA.FileFormats\OpenRA.FileFormats.csproj">
<Project>{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}</Project>
<Name>OpenRA.FileFormats</Name>
</ProjectReference>
</ItemGroup>
</Project>

View File

@@ -0,0 +1,37 @@
#region Copyright & License Information
/*
* Copyright 2007-2013 The OpenRA Developers (see AUTHORS)
* This file is part of OpenRA, which is free software. It is made
* available to you under the terms of the GNU General Public License
* as published by the Free Software Foundation. For more information,
* see COPYING.
*/
#endregion
using System.Reflection;
using System.Runtime.CompilerServices;
// Information about this assembly is defined by the following attributes.
// Change them to the values specific to your project.
[assembly: AssemblyTitle("OpenRA.Mods.TS")]
[assembly: AssemblyDescription("Tiberian Sun Mod")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("OpenRA.Mods.TS")]
[assembly: AssemblyCopyright("Copyright © 2013")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
// The form "{Major}.{Minor}.*" will automatically update the build and revision,
// and "{Major}.{Minor}.{Build}.*" will update just the revision.
[assembly: AssemblyVersion("1.0.*")]
// The following attributes are used to specify the signing key for the assembly,
// if desired. See the Mono documentation for more information about signing.
//[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyFile("")]

View File

@@ -33,6 +33,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Renderer.SdlCommon",
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.D2k", "OpenRA.Mods.D2k\OpenRA.Mods.D2k.csproj", "{C0B0465C-6BE2-409C-8770-3A9BF64C4344}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OpenRA.Mods.TS", "OpenRA.Mods.TS\OpenRA.Mods.TS.csproj", "{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -41,45 +43,6 @@ Global
Release|Mixed Platforms = Release|Mixed Platforms
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.Build.0 = Release|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Any CPU.ActiveCfg = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Any CPU.Build.0 = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Mixed Platforms.Build.0 = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Release|Any CPU.ActiveCfg = Release|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Release|Mixed Platforms.ActiveCfg = Release|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Release|Mixed Platforms.Build.0 = Release|x86
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Any CPU.Build.0 = Release|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.Build.0 = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Any CPU.Build.0 = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{00038B75-405B-44F5-8691-BD2546DBE224}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{00038B75-405B-44F5-8691-BD2546DBE224}.Debug|Any CPU.Build.0 = Debug|Any CPU
{00038B75-405B-44F5-8691-BD2546DBE224}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -88,30 +51,6 @@ Global
{00038B75-405B-44F5-8691-BD2546DBE224}.Release|Any CPU.Build.0 = Release|Any CPU
{00038B75-405B-44F5-8691-BD2546DBE224}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{00038B75-405B-44F5-8691-BD2546DBE224}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Any CPU.Build.0 = Release|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Any CPU.Build.0 = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Any CPU.Build.0 = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{0C4AEC1A-E7D5-4114-8CCD-3EEC82872981}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0C4AEC1A-E7D5-4114-8CCD-3EEC82872981}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0C4AEC1A-E7D5-4114-8CCD-3EEC82872981}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -120,14 +59,37 @@ Global
{0C4AEC1A-E7D5-4114-8CCD-3EEC82872981}.Release|Any CPU.Build.0 = Release|Any CPU
{0C4AEC1A-E7D5-4114-8CCD-3EEC82872981}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{0C4AEC1A-E7D5-4114-8CCD-3EEC82872981}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Any CPU.Build.0 = Release|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Any CPU.ActiveCfg = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Any CPU.Build.0 = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Debug|Mixed Platforms.Build.0 = Debug|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Release|Any CPU.ActiveCfg = Release|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Release|Mixed Platforms.ActiveCfg = Release|x86
{0DFB103F-2962-400F-8C6D-E2C28CCBA633}.Release|Mixed Platforms.Build.0 = Release|x86
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Any CPU.Build.0 = Release|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{1A8E50CC-EE32-4E57-8842-0C39C8EA7541}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Any CPU.Build.0 = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{2881135D-4D62-493E-8F83-5EEE92CCC6BE}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Any CPU.Build.0 = Release|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{4A8A43B5-A9EF-4ED0-99DD-4BAB10A0DB6E}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{52FD9F0B-B209-4ED7-8A32-AC8033363263}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{52FD9F0B-B209-4ED7-8A32-AC8033363263}.Debug|Any CPU.Build.0 = Debug|Any CPU
{52FD9F0B-B209-4ED7-8A32-AC8033363263}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -136,6 +98,30 @@ Global
{52FD9F0B-B209-4ED7-8A32-AC8033363263}.Release|Any CPU.Build.0 = Release|Any CPU
{52FD9F0B-B209-4ED7-8A32-AC8033363263}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{52FD9F0B-B209-4ED7-8A32-AC8033363263}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Release|Any CPU.Build.0 = Release|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{5457CBF5-4CE4-421E-A8BF-9FD6C9732E1D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Any CPU.Build.0 = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{67CF1A10-C5F6-48FA-B1A7-FE83BE4CE2CC}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Any CPU.Build.0 = Release|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{BDAEAB25-991E-46A7-AF1E-4F0E03358DAA}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
@@ -144,11 +130,35 @@ Global
{C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Release|Any CPU.Build.0 = Release|Any CPU
{C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{C0B0465C-6BE2-409C-8770-3A9BF64C4344}.Release|Mixed Platforms.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Any CPU.Build.0 = Release|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{E9C01A96-C3E2-4772-825B-A740AC513D31}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Any CPU.Build.0 = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{F33337BE-CB69-4B24-850F-07D23E408DDF}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Any CPU.Build.0 = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{F9FA4D9F-2302-470A-8A07-6E37F488C124}.Release|Mixed Platforms.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(MonoDevelopProperties) = preSolution
StartupItem = OpenRA.Game\OpenRA.Game.csproj
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

BIN
mods/ts/bits/interior.mix Normal file

Binary file not shown.

BIN
mods/ts/bits/mouse.shp Normal file

Binary file not shown.

BIN
mods/ts/bits/mousepal.pal Normal file

Binary file not shown.

BIN
mods/ts/bits/mpspawn.shp Normal file

Binary file not shown.

BIN
mods/ts/bits/rank.shp Normal file

Binary file not shown.

BIN
mods/ts/bits/shadow.shp Normal file

Binary file not shown.

BIN
mods/ts/bits/waypoint.shp Normal file

Binary file not shown.

275
mods/ts/cursors.yaml Normal file
View File

@@ -0,0 +1,275 @@
Palettes:
cursor: mousepal.pal
Cursors:
mouse: cursor
scroll-t: #TODO
start:1
x: 12
y: 12
scroll-tr: #TODO
start: 2
x: 12
y: 12
scroll-r: #TODO
start: 3
x: 12
y: 12
scroll-br: #TODO
start: 4
x: 12
y: 12
scroll-b: #TODO
start:5
x: 12
y: 12
scroll-bl: #TODO
start:6
x: 12
y: 12
scroll-l: #TODO
start:7
x: 12
y: 12
scroll-tl: #TODO
start:8
x: 12
y: 12
scroll-t-blocked: #TODO
start:124
x: 12
y: 12
scroll-tr-blocked: #TODO
start:125
x: 12
y: 12
scroll-r-blocked: #TODO
start:126
x: 12
y: 12
scroll-br-blocked: #TODO
start:127
x: 12
y: 12
scroll-b-blocked: #TODO
start:128
x: 12
y: 12
scroll-bl-blocked: #TODO
start:129
x: 12
y: 12
scroll-l-blocked: #TODO
start:130
x: 12
y: 12
scroll-tl-blocked:#TODO
start:131
x: 12
y: 12
select:
start:18
length: 12
x: 12
y: 12
default:
start:0
default-minimap:
start:1
generic-blocked:
start:9
generic-blocked-minimap:
start:52
move:
start:31
length: 10
x: 12
y: 12
move-minimap:
start:42
length: 10
x: 12
y: 12
move-rough:
start:31
length: 10
x: 12
y: 12
move-blocked:
start:41
x: 12
y: 12
move-blocked-minimap:
start:52
x: 12
y: 12
attack:
start: 31
length: 10
x: 12
y: 12
attack-blocked: # TODO: unused
start: 32
length: 1
x: 12
y: 12
attack-minimap:
start: 42
length: 10
x: 12
y: 12
attackmove: #TODO
start:21
length: 8
x: 12
y: 12
attackmove-minimap: #TODO
start:134
length: 8
x: 12
y: 12
harvest: #TODO
start:21
length: 8
x: 12
y: 12
harvest-minimap: #TODO
start:134
length: 8
x: 12
y: 12
enter: #TODO
start:113
length: 3
x: 12
y: 12
enter-minimap: #TODO
start:139
length: 3
x: 12
y: 12
enter-blocked: #TODO
start:212
length: 1
x: 12
y: 12
enter-blocked-minimap: #TODO
start:33
c4: #TODO
start:116
length: 3
x: 12
y: 12
c4-minimap: #TODO
start:121
length: 3
x: 12
y: 12
guard: #TODO
start:147
length: 1
x: 12
y: 12
guard-minimap: #TODO
start:146
length: 1
x: 12
y: 12
capture: #TODO
start:164
length: 3
x: 12
y: 12
capture-minimap: #TODO
start:167
length: 3
x: 12
y: 12
heal: #TODO
start:160
length: 4
x: 12
y: 12
heal-minimap: #TODO
start:194
length: 1
x: 12
y: 12
ability: #TODO
start:82
length: 8
x: 12
y: 12
ability-minimap: #TODO
start:214
length: 8
x: 12
y: 12
deploy:
start:110
length: 9
x: 12
y: 12
deploy-blocked:
start:119
length: 1
x: 12
y: 12
undeploy: #TODO: unused
start:120
length: 9
x: 12
y: 12
goldwrench: #TODO
start:170
length: 24
x: 12
y: 12
goldwrench-blocked: #TODO
start:213
length: 1
x: 12
y: 12
nuke: #TODO
start:90
length: 7
x: 12
y: 12
sell:
start:129
length: 10
x: 12
y: 12
sell-minimap: #TODO: unused
start:139
length: 10
x: 12
y: 12
sell-blocked:
start:149
length: 1
x: 12
y: 12
repair:
start:170
length: 20
x: 12
y: 12
repair-blocked:
start:190
length: 1
x: 12
y: 12
sell2: #TODO ?
start:148
length: 12
powerdown-blocked:
start:345
length: 1
x: 12
y: 12
powerdown:
start:329
length: 15
x: 12
y: 12

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,47 @@
Selectable: False
MapFormat: 5
Title: Blank
Description: Placeholder
Author: Matthias Mailänder
Tileset: INTERIOR
MapSize: 128,128
Bounds: 16,16,96,96
UseAsShellmap: True
Type: Conquest
Players:
PlayerReference@Neutral:
Name: Neutral
OwnsWorld: True
NonCombatant: True
PlayerReference@Creeps:
Name: Creeps
NonCombatant: True
Actors:
Smudges:
Rules:
World:
-SpawnMPUnits:
-MPStartLocations:
LoadWidgetAtGameStart:
Widget: MAINMENU
Sequences:
Weapons:
Voices:
Notifications:

167
mods/ts/mod.yaml Normal file
View File

@@ -0,0 +1,167 @@
Metadata:
Title: Tiberian Sun
Description: Developer stub, not yet ready for release!
Version: {DEV_VERSION}
Author: The OpenRA Developers
Folders:
.
# Tiberian Sun
./mods/ts
./mods/ts/bits
./mods/ts/uibits
~^/Content/ts
# Red Alert
./mods/ra/uibits
Packages:
# Red Alert
interior.mix
# Tiberian Sun
~scores.mix:CRC32
~sidenc01.mix:CRC32
~sidenc02.mix:CRC32
~gmenu.mix:CRC32
~e01scd01.mix:CRC32
~e01scd02.mix:CRC32
~maps01.mix:CRC32
~maps02.mix:CRC32
~movies01.mix:CRC32
~movies02.mix:CRC32
~multi.mix:CRC32
~patch.mix:CRC32
~sidecd01.mix:CRC32
~sidecd02.mix:CRC32
~tibsun.mix:CRC32
cache.mix:CRC32
conquer.mix:CRC32
isosnow.mix:CRC32
isotemp.mix:CRC32
local.mix:CRC32
sidec01.mix:CRC32
sidec02.mix:CRC32
sno.mix:CRC32
snow.mix:CRC32
sounds.mix:CRC32
# TODO: differentiate between:
speech01.mix:CRC32 # EVA
# speech02.mix:CRC32 # Cabal
tem.mix:CRC32
temperat.mix:CRC32
# Firestorm
~scores01.mix:CRC32
expand01.mix:CRC32
sounds01.mix:CRC32
~e01sc01.mix:CRC32
~e01sc02.mix:CRC32
~e01vox01.mix:CRC32
~e01vox02.mix:CRC32
~ecache01.mix:CRC32
PackageContents:
Rules:
mods/ts/rules/aircraft.yaml
mods/ts/rules/defaults.yaml
mods/ts/rules/infantry.yaml
mods/ts/rules/structures.yaml
mods/ts/rules/system.yaml
mods/ts/rules/vehicles.yaml
Sequences:
mods/ts/sequences/aircraft.yaml
mods/ts/sequences/infantry.yaml
mods/ts/sequences/misc.yaml
mods/ts/sequences/structures.yaml
mods/ts/sequences/vehicles.yaml
VoxelSequences:
mods/ts/sequences/voxels.yaml
Cursors:
mods/ts/cursors.yaml
Chrome:
mods/ts/chrome.yaml
Assemblies:
mods/ra/OpenRA.Mods.RA.dll
mods/ts/OpenRA.Mods.TS.dll
ChromeLayout:
mods/ra/chrome/gameinit.yaml
mods/ra/chrome/ingame.yaml
mods/ra/chrome/ingame-chat.yaml
mods/ra/chrome/ingame-fmvplayer.yaml
mods/ra/chrome/ingame-menu.yaml
mods/ra/chrome/ingame-objectives.yaml
mods/ra/chrome/ingame-observerstats.yaml
mods/ra/chrome/mainmenu.yaml
mods/ra/chrome/settings.yaml
mods/ra/chrome/credits.yaml
mods/ra/chrome/lobby.yaml
mods/ra/chrome/lobby-playerbin.yaml
mods/ra/chrome/lobby-dialogs.yaml
mods/ra/chrome/color-picker.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/musicplayer.yaml
mods/ra/chrome/tooltips.yaml
mods/ra/chrome/assetbrowser.yaml
mods/ra/chrome/convertassets.yaml
Weapons:
mods/ts/weapons.yaml
Voices:
mods/ts/voices.yaml
Notifications:
mods/ts/notifications.yaml
TileSets:
mods/ra/tilesets/interior.yaml
Music:
mods/ts/music.yaml
Movies:
LoadScreen: RALoadScreen
LoadScreenImage: mods/ts/uibits/loadscreen.png
InstallerMenuWidget: INSTALL_PANEL
TestFile: tibsun.mix
PackageURL: http://open-ra.org/get-dependency.php?file=ts-packages # TODO: upload a stripped down package
ServerTraits:
LobbyCommands
PlayerPinger
MasterServerPinger
ChromeMetrics:
mods/ra/metrics.yaml
Fonts:
Regular:
Font:FreeSans.ttf
Size:14
Bold:
Font:FreeSansBold.ttf
Size:14
Title:
Font:FreeSansBold.ttf
Size:32
BigBold:
Font:FreeSansBold.ttf
Size:24
Tiny:
Font:FreeSans.ttf
Size:10
TinyBold:
Font:FreeSansBold.ttf
Size:10

View File

@@ -0,0 +1,43 @@
Speech:
Notifications:
Repairing: 00-i040
LowPower: 00-i240
SilosNeeded: 00-i044
PrimaryBuildingSelected: 00-i034
BuildingCannotPlaceAudio: 00-i016
NewOptions: 00-i032
AbilityInsufficientPower:
Win: 00-i284
Lose: 00-i286
BaseAttack: 00-i082
HarvesterAttack: 00-i090
Leave: 00-i012
StartGame: 00-i200
UnitReady: 00-i076
NoBuild:
Training: 00-i062
OnHold: 00-i218
Cancelled: 00-i220
Building: 00-i216
ConstructionComplete: 00-i018
UnitLost: 00-i074
NavalUnitLost: 00-i074
AirUnitLost: 00-i074
BuildingCaptured: 00-i056
Sounds:
Notifications:
RadarUp:
RadarDown:radardn1
CashTickUp: credup1
CashTickDown: creddwn1
LevelUp:
DisablePower:
EnablePower:
ChatLine:message1
BuildPaletteOpen:
BuildPaletteClose:
TabClick:
ClickSound:clicky1
ClickDisabledSound:wrong1

274
mods/ts/rules/aircraft.yaml Normal file
View File

@@ -0,0 +1,274 @@
DPOD:
Inherits: ^Helicopter
Valued:
Cost: 10
Tooltip:
Name: Drop Pod
Icon: podsicon
Buildable:
Queue: Air
BuildPaletteOrder: 10
Owner: gdi
Helicopter:
LandWhenIdle: yes
ROT: 5
Speed: 16
InitialFacing: 0
LandableTerrainTypes: Clear # TODO: add more
Health:
HP: 60
Armor:
Type: Light
RevealsShroud:
Range: 0
Cargo:
Types: Infantry
MaxWeight: 5
PipCount: 5
Armament:
Weapon: Vulcan2
AttackHeli:
LimitedAmmo:
Ammo: 5
PipCount: 5
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
DSHP:
Inherits: ^Helicopter
Valued:
Cost: 1000
Tooltip:
Name: Dropship
Icon: xxicon
Buildable:
Queue: Air
BuildPaletteOrder: 10
Owner: gdi
Prerequisites: gaweap
Helicopter:
LandWhenIdle: yes # TODO: use DROPUP1.AUD and DROPDWN1.AUD
ROT: 5
Speed: 18
InitialFacing: 0
LandableTerrainTypes: Clear # TODO: add more
Health:
HP: 200
Armor:
Type: Heavy
RevealsShroud:
Range: 3
Cargo:
Types: Infantry
MaxWeight: 5
PipCount: 5
RenderSprites:
RenderVoxels:
WithVoxelBody:
ORCA:
Inherits: ^Helicopter
Valued:
Cost: 1000
Tooltip:
Name: Orca Fighter
Icon: orcaicon
Description: Helicopter Gunship with Missiles.\n Strong vs Buildings, Tanks\n Weak vs Infantry
Buildable:
Queue: Air
BuildPaletteOrder: 20
Prerequisites: gahpad
Owner: gdi
Selectable:
Bounds: 30,24
Helicopter:
RearmBuildings: gahpad # TODO: use ORCAUP1.AUD and ORCADWN1.AUD
ROT: 5
Speed: 20
Health:
HP: 200
Armor:
Type: Light
RevealsShroud:
Range: 10
Armament:
Weapon: Hellfire
AttackHeli:
FacingTolerance: 20
LimitedAmmo:
Ammo: 5
PipCount: 5
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
ORCAB:
Inherits: ^Helicopter
Valued:
Cost: 1600
Tooltip:
Name: Orca Bomber
Icon: obmbicon
Buildable:
Queue: Air
BuildPaletteOrder: 20
Prerequisites: gahpad#, gatech
Owner: gdi
Selectable:
Bounds: 30,24
Helicopter:
RearmBuildings: gahpad # TODO: use ORCAUP1.AUD and ORCADWN1.AUD
ROT: 5
Speed: 12
Health:
HP: 260
Armor:
Type: Light
RevealsShroud:
Range: 2
Armament:
Weapon: Bomb
AttackHeli:
FacingTolerance: 20
LimitedAmmo:
Ammo: 2
PipCount: 2
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
ORCATRAN:
Inherits: ^Helicopter
Valued:
Cost: 1200
Tooltip:
Name: Orca Transport
Icon: crryicon
Buildable:
Queue: Air
BuildPaletteOrder: 10
Owner: gdi
Prerequisites: gahpad
Helicopter:
LandWhenIdle: yes # TODO: use ORCAUP1.AUD and ORCADWN1.AUD
ROT: 5
Speed: 9
InitialFacing: 0
LandableTerrainTypes: Clear # TODO: add more
Health:
HP: 200
Armor:
Type: Light
RevealsShroud:
Range: 2
Cargo:
Types: Infantry
MaxWeight: 5
PipCount: 5
RenderSprites:
RenderVoxels:
WithVoxelBody:
TRNSPORT: # TODO: set up the vehicle cargo traits, but beware of desyncs
Inherits: ^Helicopter
Valued:
Cost: 750
Tooltip:
Name: Carryall
Icon: otrnicon
Buildable:
Queue: Air
BuildPaletteOrder: 10
Owner: gdi
Prerequisites: gahpad#, gadept
Helicopter:
LandWhenIdle: yes # TODO: use DROPUP1.AUD and DROPDWN1.AUD
ROT: 5
Speed: 16
InitialFacing: 0
LandableTerrainTypes: Clear # TODO: add more
Health:
HP: 175
Armor:
Type: Light
RevealsShroud:
Range: 2
RenderSprites:
RenderVoxels:
WithVoxelBody:
SCRIN:
Inherits: ^Helicopter
Valued:
Cost: 1500
Tooltip:
Name: Banshee Fighter
Icon: proicon
Buildable:
Queue: Air
BuildPaletteOrder: 20
Prerequisites: #nahpad, natech
Owner: nod
Selectable:
Bounds: 30,24
Helicopter:
RearmBuildings: #nahpad # TODO: use DROPUP1.AUD and DROPDWN1.AUD
ROT: 3
Speed: 18
Health:
HP: 280
Armor:
Type: Light
RevealsShroud:
Range: 2
Armament:
Weapon: Proton
AttackHeli:
FacingTolerance: 20
LimitedAmmo:
Ammo: 3
PipCount: 3
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
APACHE:
Inherits: ^Helicopter
Valued:
Cost: 1000
Tooltip:
Name: Harpy
Icon: apchicon
Buildable:
Queue: Air
BuildPaletteOrder: 20
Prerequisites: #nahpad
Owner: nod
Selectable:
Bounds: 30,24
Helicopter:
RearmBuildings: #nahpad
ROT: 5
Speed: 14
Health:
HP: 225
Armor:
Type: Light
RevealsShroud:
Range: 2
Armament:
Weapon: HarpyClaw
AttackHeli:
FacingTolerance: 20
LimitedAmmo:
Ammo: 12
PipCount: 4
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:

202
mods/ts/rules/defaults.yaml Normal file
View File

@@ -0,0 +1,202 @@
^Building:
AppearsOnRadar:
SelectionDecorations:
Selectable:
Priority: 3
TargetableBuilding:
TargetTypes: Ground, C4
Building:
Dimensions: 1,1
Footprint: x
TerrainTypes: Clear,Road
GivesBuildableArea:
Capturable:
CapturableBar:
SoundOnDamageTransition:
DamagedSound: #TODO
DestroyedSound: #TODO
RenderBuilding:
WithBuildingExplosion:
RepairableBuilding:
EngineerRepairable:
# EmitInfantryOnSell:
MustBeDestroyed:
GivesExperience:
# FrozenUnderFog:
CaptureNotification:
EditorAppearance:
RelativeToTopLeft: yes
ShakeOnDeath:
ProximityCaptor:
Types:Building
Sellable:
AcceptsSupplies:
GivesBounty:
UpdatesPlayerStatistics:
DebugMuzzlePositions:
Guardable:
Range: 3
BodyOrientation:
^Infantry:
AppearsOnRadar:
Health:
Radius: 3
Armor:
Type: None
RevealsShroud:
Range: 4
Mobile:
Crushes: crate
SharesCell: yes
TerrainSpeeds:
Clear: 90
Rough: 80
Road: 100
Ore: 80
Gems: 80
Beach: 80
SelectionDecorations:
Selectable:
Voice: Infantry
TargetableUnit:
TargetTypes: Ground
RenderInfantry:
AutoTarget:
AttackMove:
Passenger:
CargoType: Infantry
HiddenUnderFog:
GainsExperience:
GivesExperience:
DrawLineToTarget:
ActorLostNotification:
ProximityCaptor:
Types: Infantry
GivesBounty:
CrushableInfantry:
CrushSound: squish6.aud
UpdatesPlayerStatistics:
DebugMuzzlePositions:
Guard:
Guardable:
BodyOrientation:
^CivilianInfantry:
Inherits: ^Infantry
Selectable:
Voice: Civilian
Bounds: 12,17,0,-9
Valued:
Cost: 10
Tooltip:
Name: Civilian
Icon: xxicon
Buildable: # TODO: remove this once the testing period is over
Queue: Infantry
BuildPaletteOrder: 1000
Owner: gdi, nod
Health:
HP: 50
Mobile:
Speed: 5
RevealsShroud:
Range: 2
Armament:
Weapon: Pistola # deviation from RULES.INI (only CTECH is armed)
# LimitedAmmo:
# Ammo: 10
# PipCount: 2
AttackFrontal:
ProximityCaptor:
Types: CivilianInfantry
-RenderInfantry:
RenderInfantryPanic:
ScaredyCat:
^Vehicle:
AppearsOnRadar:
Mobile:
Crushes: crate
TerrainSpeeds:
Clear: 80
Rough: 40
Road: 100
Beach: 40
ROT: 5
SelectionDecorations:
Selectable:
Voice: Vehicle
TargetableUnit:
TargetTypes: Ground
Repairable:
Passenger:
CargoType: Vehicle
AttackMove:
HiddenUnderFog:
GainsExperience:
GivesExperience:
DrawLineToTarget:
ActorLostNotification:
ProximityCaptor:
Types:Vehicle
GivesBounty:
# WithSmoke:
UpdatesPlayerStatistics:
DebugMuzzlePositions:
Guard:
Guardable:
BodyOrientation:
^Wall:
AppearsOnRadar:
Building:
Dimensions: 1,1
Footprint: x
BuildSounds: placbldg.aud
Adjacent: 7
TerrainTypes: Clear,Road
Wall:
CrushClasses: wall
LineBuild:
Range: 8
SelectionDecorations:
Selectable:
Priority: 1
TargetableBuilding:
TargetTypes: Ground, C4
RenderBuildingWall:
HasMakeAnimation: no
GivesExperience:
EditorAppearance:
RelativeToTopLeft: yes
UseTerrainPalette: yes
AutoTargetIgnore:
ProximityCaptor:
Types: Wall
Sellable:
UpdatesPlayerStatistics:
BodyOrientation:
^Helicopter:
AppearsOnRadar:
UseLocation: yes
TargetableAircraft:
TargetTypes: Air
GroundedTargetTypes: Ground
SelectionDecorations:
Selectable:
Voice: Heli
Helicopter:
RepairBuildings:
RearmBuildings:
LandWhenIdle: no
Buildable:
Queue: Aircraft
HiddenUnderFog:
GainsExperience:
GivesExperience:
DrawLineToTarget:
ActorLostNotification:
DebugMuzzlePositions:
BodyOrientation:

710
mods/ts/rules/infantry.yaml Normal file
View File

@@ -0,0 +1,710 @@
E1:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: gdi,nod
Hotkey: i
Valued:
Cost: 120
Tooltip:
Name: Light Infantry
Description: General-purpose infantry.\n Strong vs Infantry\n Weak vs Vehicles
Selectable:
Bounds: 12,17,0,-9
Health:
HP: 125
Mobile:
Speed: 5
Armament:
Weapon: Minigun
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
E2:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: gdi
Hotkey: n
Valued:
Cost: 200
Tooltip:
Name: Disc Thrower
Description: Infantry armed with grenades. \n Strong vs Buildings, Infantry\n Weak vs Vehicles
Selectable:
Bounds: 12,17,0,-9
Health:
HP: 150
Mobile:
Speed: 4
Armament:
Weapon: Grenade
LocalOffset: 0,0,555
FireDelay: 15
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
E3:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 20
Owner: nod
Hotkey: r
Valued:
Cost: 250
Tooltip:
Name: Rocket Infantry
Description: Anti-tank infantry.\n Strong vs Tanks\n Weak vs Infantry
Icon: e4icon # TODO: really?
Selectable:
Bounds: 12,17,0,-9
Voice: Rocket
Health:
HP: 100
Mobile:
Speed: 3
Armament@PRIMARY:
Weapon: Bazooka
LocalOffset: 0,0,555
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
WEEDGUY:
Inherits: ^Infantry
Valued:
Cost: 300
Tooltip:
Name: Chem Spray Infantry
Description: Advanced Anti-infantry unit.\n Strong vs Infantry\n Weak vs Vehicles
Icon: weaticon
Buildable:
Queue: Infantry
BuildPaletteOrder: 50
Owner: gdi
Selectable:
Bounds: 12,17,0,-6
Voice: Weed
Mobile:
Speed: 3
Health:
HP: 130
CrushableInfantry:
CrushSound: squish2.aud
Armament:
Weapon: MultiCluster
LocalOffset: 85,0,384
FireDelay: 3
AttackFrontal:
# -PoisonedByTiberium:
-RenderInfantry:
RenderInfantryProne:
TakeCover:
MEDIC:
Inherits: ^Infantry
Valued:
Cost: 600
Tooltip:
Name: Medic
Description: Heals nearby infantry.\n Strong vs Nothing\n Weak vs Everything
Icon: mediicon
Buildable:
Queue: Infantry
BuildPaletteOrder: 60
Owner: gdi
Selectable:
Bounds: 12,17,0,-6
Voice: Medic
Mobile:
Speed: 4
Health:
HP: 125
CrushableInfantry:
CrushSound: squish2.aud
Armament:
Weapon: Heal
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
SelfHealing:
Passenger:
PipType: Red
ENGINEER:
Inherits: ^Infantry
Valued:
Cost: 500
Tooltip:
Name: Engineer
Description: Infiltrates and captures enemy structures.\n Strong vs Nothing\n Weak vs Everything
Icon: engnicon
Buildable:
Queue: Infantry
BuildPaletteOrder: 30
Owner: gdi,nod
Selectable:
Bounds: 12,17,0,-6
Voice: Engineer
Mobile:
Speed: 4
Health:
HP: 500
Passenger:
PipType: Yellow
EngineerRepair:
RepairsBridges:
LegacyCaptures:
CaptureTypes: building
-AutoTarget:
AttackMove:
JustMove: true
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
TakeCover:
-GainsExperience:
UMAGON:
Inherits: ^Infantry
Valued:
Cost: 400
Tooltip:
Icon: umagicon
Name: Umagon
Description: Elite sniper infantry unit.\n Strong vs Infantry, Buildings\n Weak vs Vehicles
Buildable:
Queue: Infantry
BuildPaletteOrder: 50
Owner: gdi
Selectable:
Bounds: 12,17,0,-6
Voice: Umagon
Mobile:
Speed: 5
Health:
HP: 150
Passenger: # TODO:
# PipType: White
RevealsShroud:
Range: 7
Armament:
Weapon: Sniper
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
GHOST:
Inherits: ^Infantry
Valued:
Cost: 1750
Tooltip:
Icon: gosticon
Name: Ghost Stalker
Description: Elite commando infantry, armed with \ndual pistols and C4.\n Strong vs Infantry, Buildings\n Weak vs Vehicles\n Special Ability: Destroy Building with C4\n\nMaximum 1 can be trained
BuildLimit: 1
Buildable:
Queue: Infantry
BuildPaletteOrder: 50
Owner: gdi
Selectable:
Bounds: 12,17,0,-6
Voice: Ghost
Mobile:
Speed: 4
Health:
HP: 200
Passenger: # TODO:
# PipType: White
RevealsShroud:
Range: 6
Armament:
Weapon: LtRail
CrushableInfantry:
CrushSound: squish2.aud
AttackFrontal:
C4Demolition:
C4Delay: 45
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
JUMPJET:
Inherits: ^Infantry
Valued:
Cost: 600
Tooltip:
Icon: jjeticon
Name: Jumpjet Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 50
Owner: gdi
Selectable:
Bounds: 12,17,0,-6
Voice: JumpJet
Mobile:
Speed: 4
Health:
HP: 120
Armor:
Type: Light
Passenger:
PipType: Green
RevealsShroud:
Range: 6
Armament:
Weapon: JumpCannon
-CrushableInfantry:
AttackFrontal:
TakeCover:
RenderInfantry:
# LeavesHusk: # TODO
# Transforms: # TODO
CHAMSPY:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 60
Owner: nod
Hotkey: p
Valued:
Cost: 700
SpyToolTip:
Name: Chameleon Spy
Description: Infiltrates enemy structures to gather \nintelligence. Exact effect depends on the \nbuilding infiltrated.\n Strong vs Nothing\n Weak vs Everything\n Special Ability: Disguised
Icon: chamicon
Selectable:
Voice: Spy
Bounds: 12,17,0,-9
Health:
HP: 120
Mobile:
Speed: 6
RevealsShroud:
Range: 9
Passenger: # TODO
# PipType: White
TakeCover:
Spy:
Infiltrates:
Types: Cash, SupportPower, Exploration
-AutoTarget:
AttackMove:
JustMove: true
-RenderInfantry:
RenderSpy:
IdleAnimations: idle1,idle2
CYBORG:
Inherits: ^Infantry
Armor:
Type: Heavy
Valued:
Cost: 650
Tooltip:
Icon: cybiicon
Name: Cyborg Infantry
Description: Cybernetic infantry unit.\n Strong vs Infantry, Buildings\n Weak vs Vehicles
Buildable:
Queue: Infantry
BuildPaletteOrder: 50
Owner: nod
-CrushableInfantry:
CrushSound: squish2.aud
Selectable:
Bounds: 12,17,0,-6 # TODO: wrong
Voice: Cyborg
Mobile:
Speed: 4
Health:
HP: 300
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
Passenger: # TODO:
# PipType: White
RevealsShroud:
Range: 5
Armament:
Weapon: Vulcan3
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# LeavesHusk: # TODO:
# CrawlingCyborg
CYC2:
Inherits: ^Infantry
Armor:
Type: Heavy
Valued:
Cost: 2000
Tooltip:
Icon: cybcicon
Name: Cyborg Commando
Description: Elite cybernetic infantry unit.\n Strong vs Infantry, Buildings\n Weak vs Vehicles
Buildable:
Queue: Infantry
BuildPaletteOrder: 50
Owner: nod
-CrushableInfantry:
CrushSound: squish2.aud
Selectable:
Bounds: 12,17,0,-6 # TODO: wrong
Voice: CyborgCommando
Mobile:
Speed: 4
Health:
HP: 500
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
Passenger: # TODO:
# PipType: White
RevealsShroud:
Range: 7
Armament:
Weapon: Sniper
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# LeavesHusk: # TODO:
# CrawlingCyborgCommando
MUTANT:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: forgotten
Valued:
Cost: 100
Tooltip:
Name: Mutant
Description: General-purpose infantry.\n Strong vs Infantry\n Weak vs Vehicles
Icon: mutcicon
Selectable:
Bounds: 12,17,0,-9
Voice: Mutant
Health:
HP: 50
Mobile:
Speed: 4
RevealsShroud:
Range: 4
Armament:
Weapon: Vulcan
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
MWMN:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: forgotten
Valued:
Cost: 100
Tooltip:
Name: Mutant Soldier
Description: General-purpose infantry.\n Strong vs Infantry\n Weak vs Vehicles
Icon: mutcicon
Selectable:
Bounds: 12,17,0,-9
Voice: Mutant
Health:
HP: 50
Mobile:
Speed: 4
RevealsShroud:
Range: 4
Armament:
Weapon: Vulcan
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
MUTANT3:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: forgotten
Valued:
Cost: 100
Tooltip:
Name: Mutant Sergeant
Description: General-purpose infantry.\n Strong vs Infantry\n Weak vs Vehicles
Icon: mutcicon
Selectable:
Bounds: 12,17,0,-9
Voice: Mutant
Health:
HP: 50
Mobile:
Speed: 4
RevealsShroud:
Range: 4
Armament:
Weapon: Vulcan
AttackFrontal:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
MHIJACK: # TODO: does not work
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: forgotten
Valued:
Cost: 100
Tooltip:
Name: Mutant Hijacker
Description: General-purpose infantry.\n Strong vs Infantry\n Weak vs Vehicles
Icon: mutcicon
Selectable:
Bounds: 12,17,0,-9
Voice: Hijacker
Health:
HP: 300
Mobile:
Speed: 7
RevealsShroud:
Range: 6
-AutoTarget:
-AttackMove:
TakeCover:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
TRATOS:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: forgotten
Valued:
Cost: 100
Tooltip:
Name: Tratos
Icon: mutcicon
Selectable:
Bounds: 12,17,0,-9
Voice: Tratos
Health:
HP: 200
Mobile:
Speed: 5
RevealsShroud:
Range: 4
TakeCover:
-AutoTarget:
-AttackMove:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
OXANNA:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: forgotten
Valued:
Cost: 100
Tooltip:
Name: Oxanna
Icon: mutcicon
Selectable:
Bounds: 12,17,0,-9
Voice: Oxanna
Health:
HP: 50
Mobile:
Speed: 4
RevealsShroud:
Range: 4
TakeCover:
-AutoTarget:
-AttackMove:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
SLAV:
Inherits: ^Infantry
Buildable:
Queue: Infantry
BuildPaletteOrder: 10
Owner: forgotten
Valued:
Cost: 100
Tooltip:
Name: Slavick
Icon: mutcicon
Selectable:
Bounds: 12,17,0,-9
Voice: Slavick
Health:
HP: 300
Mobile:
Speed: 4
RevealsShroud:
Range: 4
TakeCover:
-AutoTarget:
-AttackMove:
-RenderInfantry:
RenderInfantryProne:
IdleAnimations: idle1,idle2
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
DOGGIE:
Inherits: ^Infantry
Tooltip:
Name: Tiberian Fiend
Icon: xxicon
Buildable:
Queue: Infantry
BuildPaletteOrder: 100
Owner: None
Health:
Radius: 3
HP: 250
Valued:
Cost: 100
Armor:
Type: Light
RevealsShroud:
Range: 4
Mobile:
Speed: 8
# CrushableInfantry:
# CrushSound: squish2.aud
Selectable:
Voice: Fiend
TargetableUnit:
TargetTypes: Ground
Armament:
Weapon: FiendShard
AttackFrontal:
AttackWander:
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
VISSML:
Inherits: ^Infantry
Tooltip:
Name: Baby Visceroid
Icon: xxicon
Buildable:
Queue: Infantry
BuildPaletteOrder: 100
Owner: None
Health:
HP: 200
Valued:
Cost: 1
Armor:
Type: Light
RevealsShroud:
Range: 0
Mobile:
Speed: 8
ROT: 16
-CrushableInfantry:
Selectable:
Voice: Fiend
TargetableUnit:
TargetTypes: Ground
-AutoTarget:
-AttackMove:
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
-RenderInfantry:
RenderUnit:
VISLRG:
Inherits: ^Infantry
Tooltip:
Name: Adult Visceroid
Icon: xxicon
Buildable:
Queue: Infantry
BuildPaletteOrder: 100
Owner: None
Health:
HP: 500
Valued:
Cost: 1
Armor:
Type: Light
RevealsShroud:
Range: 0
Mobile:
Speed: 8
ROT: 16
-CrushableInfantry:
Selectable:
Voice: Fiend
TargetableUnit:
TargetTypes: Ground
Armament:
Weapon: SlimeAttack
AttackFrontal:
AttackWander:
# -PoisonedByTiberium:
# TiberiumHeal: # TODO
-RenderInfantry:
RenderUnit:
CIV1:
Inherits: ^CivilianInfantry
CIV2:
Inherits: ^CivilianInfantry
CIV3:
Inherits: ^CivilianInfantry

View File

@@ -0,0 +1,352 @@
GACNST:
Inherits: ^Building
Building:
Power: 0
Footprint: xxx xxx xxx
Dimensions: 3,3
Buildable:
Queue: Building
BuildPaletteOrder: 1000
Owner: None
Health:
HP: 1500
Armor:
Type: Wood
RevealsShroud:
Range: 5
Bib:
Production:
Produces: Building,Defense
Valued:
Cost: 2500
Tooltip:
Name: Construction Yard
Description: Builds base structures.
Icon: facticon
CustomSellValue:
Value: 2500
BaseBuilding:
Transforms:
IntoActor: mcv
Offset:1,1
Facing: 96
ProductionBar:
-Sellable:
GAPOWR:
Inherits: ^Building
Buildable:
Queue: Building
BuildPaletteOrder: 0
Owner: gdi
Hotkey: p
Valued:
Cost: 300
Tooltip:
Name: GDI Power Plant
Description: Provides power for other structures
Icon: powricon
ProvidesCustomPrerequisite:
Prerequisite: anypower
Building:
Power: 100
Footprint: xx xx
Dimensions: 2,2
Health:
HP: 750
Armor:
Type: Wood
RevealsShroud:
Range: 4
Bib:
GAPILE:
Inherits: ^Building
Buildable:
Queue: Building
BuildPaletteOrder: 30
Prerequisites: anypower
Owner: gdi
Hotkey: b
Valued:
Cost: 300
Tooltip:
Name: GDI Barracks
Description: Produces infantry
Icon: brrkicon
Building:
Power: -20
Footprint: xx xx
Dimensions: 2,2
Health:
HP: 800
Armor:
Type: Wood
RevealsShroud:
Range: 5
Bib:
# RallyPoint: #TODO: setup sequences
Exit@1:
SpawnOffset: -64,64,0
ExitCell: 0,2
Production:
Produces: Infantry
PrimaryBuilding:
IronCurtainable:
ProductionBar:
GAWEAP:
Inherits: ^Building
Valued:
Cost: 2000
Tooltip:
Name: GDI War Factory
Icon: weapicon
Description: Assembly point for\nvehicle reinforcements
# ProvidesCustomPrerequisite:
# Prerequisite: VehicleProduction
Buildable:
Queue: Building
BuildPaletteOrder: 50
Owner: gdi
Building:
Power: -30
Footprint: ___ xxx ===
Dimensions: 3,3
Health:
HP: 1000
RevealsShroud:
Range: 4
Bib:
-RenderBuilding:
RenderBuildingWarFactory:
# RallyPoint: # TODO: setup sequences
Exit@1:
SpawnOffset: -8,-8
ExitCell: 0,2
Production:
Produces: Vehicle
ProductionBar:
GASAND:
Inherits: ^Wall
Buildable:
Queue: Defense
BuildPaletteOrder: 1000
Prerequisites: gacnst
Owner: gdi
Hotkey: b
SoundOnDamageTransition:
DamagedSound: sandbag1.aud
DestroyedSound: sandbag1.aud
Valued:
Cost: 25
CustomSellValue:
Value: 0
Tooltip:
Name: Sandbags
Description: Stops infantry and blocks enemy fire.\nCan be crushed by tanks.
Icon: sbagicon
Health:
HP: 250
Armor:
Type: Light
GATICK:
Inherits: ^Building
Valued:
Cost: 800
-AcceptsSupplies:
Tooltip:
Name: Deployed Tick Tank
Building:
Footprint: x
Dimensions: 1,1
-GivesBuildableArea:
Health:
HP: 350
Armor:
Type: Concrete
RevealsShroud:
Range: 5
Turreted:
ROT: 6
InitialFacing: 128
Armament:
Weapon: 90mm
AttackTurreted:
AutoTarget:
RenderRangeCircle:
DrawLineToTarget:
RenderBuilding:
RenderVoxels:
Image: ttnk
WithVoxelBarrel: # TODO: offsets
WithVoxelTurret: # TODO: offsets
Transforms:
IntoActor: ttnk
Offset: 1,1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
GAICBM: # TODO: does not launch anything yet
Inherits: ^Building
Valued:
Cost: 800
-AcceptsSupplies:
Tooltip:
Name: Deployed ICBM
Building:
Footprint: _ x # TODO
Dimensions: 1,2 # TODO
-GivesBuildableArea:
Health:
HP: 400
Armor:
Type: Wood
RevealsShroud:
Range: 5
Transforms:
IntoActor: icbm
Offset: 1,1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
GADPSA:
Inherits: ^Building
Valued:
Cost: 950
-AcceptsSupplies:
Tooltip:
Name: Deployed Sensor Array
Building:
Footprint: _ x # TODO
Dimensions: 1,2 # TODO
-GivesBuildableArea:
Health:
HP: 600
Armor:
Type: Wood
RevealsShroud:
Range: 8
Transforms:
IntoActor: lpst
Offset: 1,1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
RenderDetectionCircle:
DetectCloaked:
Range: 6
GAARTY:
Inherits: ^Building
Valued:
Cost: 975
-AcceptsSupplies:
Tooltip:
Name: Deployed Artillery
Building:
Footprint: x
Dimensions: 1,1
-GivesBuildableArea:
Health:
HP: 300
Armor:
Type: Light
RevealsShroud:
Range: 9
Selectable:
Voice: Vehicle
Turreted:
ROT: 5
InitialFacing: 128
Armament:
Weapon: 155mm
AttackTurreted:
AutoTarget:
RenderRangeCircle:
DrawLineToTarget:
RenderBuilding:
RenderVoxels:
Image: art2
WithVoxelBarrel: # TODO: offsets
WithVoxelTurret: # TODO: offsets
Transforms:
IntoActor: art2
Offset: 1,1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
GASPOT: # TODO: has moving spotlights
Inherits: ^Building
Buildable:
Queue: Defense
BuildPaletteOrder: 10
Owner: gdi, nod
Valued:
Cost: 300
Tooltip:
Name: Light Tower
Icon: spoticon
Building:
Power: -10
Footprint: x
Dimensions: 1,1
Health:
HP: 400
Armor:
Type: Wood
RevealsShroud:
Range: 4
Bib:
RenderDetectionCircle:
DetectCloaked:
Range: 3
GAHPAD:
Inherits: ^Building
Valued:
Cost: 500
Tooltip:
Name: Helipad
Icon: heliicon
Description: Produces, rearms and\nrepairs helicopters
Buildable:
BuildPaletteOrder: 60
# Prerequisites: garadr
Owner: gdi
Queue: Building
Building:
Power: -10
Footprint: xx xx
Dimensions: 2,2
Health:
HP: 600
RevealsShroud:
Range: 5
Exit@1:
SpawnOffset: 0,-6
Production:
Produces: Air
BelowUnits:
Reservable:
RepairsUnits:
# RallyPoint:
ProductionBar:
-RenderBuilding:
RenderBuildingWarFactory: # TODO: workaround
# custom prerequisites:
ANYPOWER:
Tooltip:
Name: Power Plant
Description: Power Plant
BARRACKS:
Tooltip:
Name: Infantry Production
Description: Infantry Production

138
mods/ts/rules/system.yaml Normal file
View File

@@ -0,0 +1,138 @@
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@Air:
Type: Air
BuildSpeed: .4
LowPowerSlowdown: 3
PlaceBuilding:
SupportPowerManager:
ConquestVictoryConditions:
PowerManager:
AllyRepair:
PlayerResources:
InitialCash: 5000
ActorGroupProxy:
DeveloperMode:
PlayerColorPalette:
BasePalette: player
RemapIndex: 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31
GpsWatcher:
Shroud:
BaseAttackNotifier:
PlayerStatistics:
World:
LoadWidgetAtGameStart:
Widget: INGAME_ROOT
BuildingInfluence:
ChooseBuildTabOnSelect:
PaletteFromFile@player:
Name: player
Filename: unittem.pal
ShadowIndex: 1
PaletteFromFile@terrain:
Name: terrain
Filename: isotem.pal
PaletteFromFile@chrome:
Name: chrome
Filename: cameo.pal
AllowModifiers: false
ShadowIndex: 242
PaletteFromFile@effect:
Name: effect
Filename: anim.pal
PaletteFromFile@colorpicker:
Name: colorpicker
Filename: unittem.pal
AllowModifiers: false
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@invuln:
Name: invuln
R: 128
G: 0
B: 0
A: 128
PaletteFromRGBA@disabled:
Name: disabled
R: 0
G: 0
B: 0
A: 180
ShroudPalette@shroud:
Type: Shroud
ShroudPalette@fog:
Name: fog
Type: Fog
VoxelNormalsPalette@normals:
Name: normals
Type: TiberianSun
Country@0:
Name: GDI
Race: gdi
Country@1:
Name: Nod
Race: nod
ResourceLayer:
ResourceClaimLayer:
# BibLayer: # TODO: file not found: bib3
DebugOverlay:
SpawnMapActors:
CreateMPPlayers:
MPStartUnits:
Races: gdi, nod
BaseActor: mcv
MPStartLocations:
SpawnMPUnits:
SpatialBins:
BinSize: 4
PathFinder:
ValidateOrder:
DebugPauseState:
ScreenShaker:
mpspawn:
Waypoint:
RenderEditorOnly:
BodyOrientation:
waypoint:
Waypoint:
RenderEditorOnly:
BodyOrientation:

831
mods/ts/rules/vehicles.yaml Normal file
View File

@@ -0,0 +1,831 @@
MCV:
Inherits: ^Vehicle
Buildable:
Queue: Vehicle
BuildPaletteOrder: 110
Owner: gdi,nod
Hotkey: b
Valued:
Cost: 2000
Tooltip:
Name: Mobile Construction Vehicle
Description: Deploys into another Construction Yard.\n Unarmed
Selectable:
Priority: 3
Bounds: 42,42
Health:
HP: 600
Armor:
Type: Light
Mobile:
Speed: 6
Crushes: wall, crate, infantry
RevealsShroud:
Range: 4
MustBeDestroyed:
BaseBuilding:
-AttackMove:
Transforms:
IntoActor: gacnst
Offset:-1,-1
Facing: 96
TransformSounds: # TODO
NoTransformSounds: # TODO
RenderSprites:
RenderVoxels:
WithVoxelBody:
APC:
Inherits: ^Vehicle
Valued:
Cost: 600
Tooltip:
Name: Amphibious APC # TODO: not yet amphibious
Icon: apcicon
Description: Armored infantry transport and mobile AA\n Strong vs Aircraft, Vehicles\n Weak vs Infantry
Buildable:
Queue: Vehicle
BuildPaletteOrder: 30
Owner: gdi
Mobile:
ROT: 5
Speed: 8
Health:
HP: 200
Armor:
Type: Heavy
RevealsShroud:
Range: 5
Turreted:
ROT: 10
-AttackMove:
Cargo:
Types: Infantry
MaxWeight: 5
PipCount: 5
UnloadFacing: 220
RenderSprites:
RenderVoxels:
WithVoxelBody:
HARV: # TODO: without back: HORV
Inherits: ^Vehicle
Valued:
Cost: 1400
Tooltip:
Name: Harvester
Icon: harvicon
Description: Collects Tiberium for processing.\n Unarmed
Buildable:
Queue: Vehicle
BuildPaletteOrder: 10
# Prerequisites: proc
Owner: gdi,nod
Selectable:
Priority: 7
Bounds: 36,36
# Harvester:
# Resources: Tiberium, BlueTiberium
# PipCount: 7
# Capacity: 28
# LoadTicksPerBale: 6
# UnloadTicksPerBale: 12
# SearchFromProcRadius: 24
# SearchFromOrderRadius: 12
Mobile:
Speed: 5
Health:
HP: 1000
SelfHealing:
Ticks: 10
HealIfBelow: 50%
DamageCooldown: 200
Armor:
Type: Heavy
RevealsShroud:
Range: 4
AttackMove:
JustMove: yes
-GainsExperience:
RenderSprites:
RenderVoxels:
WithVoxelBody:
HVR:
Inherits: ^Vehicle
Valued:
Cost: 900
Tooltip:
Name: Hover MLRS
Icon: hovricon
Description: Hover Multi-Launch Rocket System
Buildable:
Queue: Vehicle
BuildPaletteOrder: 30
Owner: gdi
Mobile: # TODO: amphibious
Speed: 7
Health:
HP: 230
Armor:
Type: Light
RevealsShroud:
Range: 7
Armament:
Weapon: HoverMissile
Turreted:
ROT: 7
AttackTurreted:
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
WithVoxelTurret:
4TNK:
Inherits: ^Vehicle
Valued:
Cost: 1700
Tooltip:
Name: Mammoth Tank
Icon: xxicon
Description: Heavily armored GDI Tank.\n Strong vs Everything
Buildable:
Queue: Vehicle
BuildPaletteOrder: 60
Owner: gdi
Mobile:
Speed: 4
ROT: 5
Health:
HP: 600
Armor:
Type: Heavy
RevealsShroud:
Range: 6
Turreted:
ROT: 3
Armament@PRIMARY:
Weapon: 120mmx
Armament@SECONDARY:
Weapon: MammothTusk
AttackTurreted:
AutoTarget:
SelfHealing:
Ticks: 10
HealIfBelow: 50%
DamageCooldown: 200
RenderSprites:
RenderVoxels:
WithVoxelBody:
WithVoxelTurret:
TRUCKB: # NOTE: TRUCKA is unloaded
Inherits: ^Vehicle
Buildable:
Queue: Vehicle
BuildPaletteOrder: 120
Owner: gdi, nod
Valued:
Cost: 500
Tooltip:
Name: Truck
Description: Transports cash to other players.\n Unarmed
Icon: xxicon
Health:
HP: 2000
Armor:
Type: Light
Mobile:
Speed: 4
RevealsShroud:
Range: 5
SupplyTruck:
Payload: 500
AttackMove:
JustMove: yes
RenderSprites:
RenderVoxels:
WithVoxelBody:
LPST:
Inherits: ^Vehicle
Valued:
Cost: 950
Tooltip:
Name: Mobile Sensor Array
Icon: lpsticon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 100
Owner: gdi, nod
Health:
HP: 600
Armor:
Type: Light
Mobile:
Speed: 6
ROT: 5
RevealsShroud:
Range: 10
AttackMove:
JustMove: yes
RenderSprites:
RenderVoxels:
WithVoxelBody:
Transforms:
IntoActor: gadpsa
Offset: -1,-1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
ICBM:
Inherits: ^Vehicle
Valued:
Cost: 1400
Tooltip:
Name: Ballistic Missile Launcher
Icon: xxicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 100
Owner: gdi
Health:
HP: 500
Armor:
Type: Light
Mobile:
Speed: 6
ROT: 5
RevealsShroud:
Range: 7
AttackMove:
JustMove: yes
RenderSprites:
RenderVoxels:
WithVoxelBody:
Transforms:
IntoActor: gaicbm
Offset:-1,-1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
REPAIR:
Inherits: ^Vehicle
Buildable:
Queue: Vehicle
BuildPaletteOrder: 70
Owner: nod
Valued:
Cost: 1000
Tooltip:
Name: Mobile Repair Vehicle
Description: Repairs nearby vehicles.\n Strong vs Nothing\n Weak vs Everything
Icon: rboticon
Health:
HP: 200
Mobile:
Speed: 6
ROT: 5
RevealsShroud:
Range: 5
Armament:
Weapon: Repair
AttackMedic:
Cursor: repair
AttackMove:
JustMove: true
RenderSprites:
RenderVoxels:
WithVoxelBody:
ART2:
Inherits: ^Vehicle
Valued:
Cost: 975
Tooltip:
Name: Artillery
Icon: artyicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 100
Owner: nod
Health:
HP: 300
Armor:
Type: Light
Mobile:
Speed: 5
ROT: 2
RevealsShroud:
Range: 9
AttackMove:
JustMove: yes
RenderSprites:
RenderVoxels:
WithVoxelBody:
Transforms:
IntoActor: gaarty
Offset: -1,-1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
WEED:
Inherits: ^Vehicle
Valued:
Cost: 1400
Tooltip:
Name: Weed Eater
Icon: weedicon
Description: Collects veins for processing.\n Unarmed
Buildable:
Queue: Vehicle
BuildPaletteOrder: 10
# Prerequisites: naweap, nawast
Owner: nod
# Harvester:
# Resources: Veins
# PipCount: 7
# Capacity: 28
# LoadTicksPerBale: 6
# UnloadTicksPerBale: 12
# SearchFromProcRadius: 24
# SearchFromOrderRadius: 12
Mobile:
Speed: 5
ROT: 5
Health:
HP: 600
Armor:
Type: Heavy
RevealsShroud:
Range: 4
AttackMove:
JustMove: yes
-GainsExperience:
RenderSprites:
RenderVoxels:
WithVoxelBody:
BUS:
Inherits: ^Vehicle
Valued:
Cost: 800
Tooltip:
Name: School Bus
Icon: xxicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 300
Owner: gdi
Mobile:
ROT: 5
Speed: 8
Health:
HP: 100
Armor:
Type: Light
RevealsShroud:
Range: 5
-AttackMove:
Cargo:
Types: Infantry
MaxWeight: 20
PipCount: 5
UnloadFacing: 220
RenderSprites:
RenderVoxels:
WithVoxelBody:
PICK:
Inherits: ^Vehicle
Valued:
Cost: 800
Tooltip:
Name: Pickup
Icon: xxicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 300
Owner: gdi
Mobile:
ROT: 5
Speed: 8
Health:
HP: 100
Armor:
Type: Light
RevealsShroud:
Range: 5
-AttackMove:
Cargo:
Types: Infantry
MaxWeight: 2
PipCount: 5
UnloadFacing: 220
RenderSprites:
RenderVoxels:
WithVoxelBody:
CAR:
Inherits: ^Vehicle
Valued:
Cost: 800
Tooltip:
Name: Automobile
Icon: xxicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 300
Owner: gdi
Mobile:
ROT: 5
Speed: 8
Health:
HP: 100
Armor:
Type: Light
RevealsShroud:
Range: 5
-AttackMove:
Cargo:
Types: Infantry
MaxWeight: 4
PipCount: 5
UnloadFacing: 220
RenderSprites:
RenderVoxels:
WithVoxelBody:
GGHUNT:
Inherits: ^Vehicle
Valued:
Cost: 1000
Tooltip:
Name: Hunter-Seeker Droid
Icon: seekicon
Buildable:
BuildPaletteOrder: 20
Owner: gdi, nod
Queue: Vehicle
Mobile:
ROT: 16
Speed: 25
Health:
HP: 500
Armor:
Type: Light
RevealsShroud:
Range: 7
RenderUnit:
AttackMove:
JustMove: yes
DemoTruck:
Explodes:
Weapon: SuicideBomb
EmptyWeapon: SuicideBomb
WINI:
Inherits: ^Vehicle
Valued:
Cost: 800
Tooltip:
Name: Recreational Vehicle
Icon: xxicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 300
Owner: gdi
Mobile:
ROT: 5
Speed: 8
Health:
HP: 200
Armor:
Type: Light
RevealsShroud:
Range: 5
-AttackMove:
Cargo:
Types: Infantry
MaxWeight: 5
PipCount: 5
UnloadFacing: 220
RenderSprites:
RenderVoxels:
WithVoxelBody:
MMCH:
Inherits: ^Vehicle
Valued:
Cost: 800
Tooltip:
Name: Medium Mech
Icon: mmchicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 300
Owner: gdi
Mobile:
ROT: 5
Speed: 4
Health:
HP: 400
Armor:
Type: Heavy
RevealsShroud:
Range: 8
RenderInfantry:
Turreted:
AttackTurreted:
WithTurret:
Recoils: no
Armament:
Weapon: 120mm
Recoil: 127
RecoilRecovery: 26
RenderVoxels:
WithVoxelBarrel:
LocalOffset: -128, 128, 213
AutoTarget:
HMEC:
Inherits: ^Vehicle
Valued:
Cost: 3000
Tooltip:
Name: Mammoth Mk. II
Icon: hmecicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 40
Owner: gdi
Mobile:
ROT: 3
Speed: 3
Health:
HP: 800
SelfHealing:
Armor:
Type: Heavy
RevealsShroud:
Range: 8
RenderSprites:
AttackFrontal:
AutoTarget:
Armament@MISSILES:
Weapon: MammothTusk
Armament@RAILGUN:
Weapon: MechRailgun
LocalOffset: 640,-640,980, 640,640,980
RenderVoxels:
WithVoxelWalkerBody:
SMECH:
Inherits: ^Vehicle
Valued:
Cost: 500
Tooltip:
Name: Wolverine
Description: Small Mech
Icon: smchicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 10
Owner: gdi
Mobile:
ROT: 5
Speed: 7
Health:
HP: 800
Armor:
Type: Light
RevealsShroud:
Range: 6
AttackFrontal:
AutoTarget:
Armament:
Weapon: AssaultCannon
RenderInfantry:
Selectable:
Voices: Mech
BIKE:
Inherits: ^Vehicle
Valued:
Cost: 600
Tooltip:
Name: Attack Cycle
Icon: cyclicon
Description: Fast scout vehicle, armed with \nrockets.\n Strong vs Vehicles, Aircraft\n Weak vs Infantry
Buildable:
Queue: Vehicle
BuildPaletteOrder: 30
Owner: nod
Mobile:
ROT: 8
Speed: 12
Health:
HP: 150
Armor:
Type: Light
RevealsShroud:
Range: 5
Armament:
Weapon: BikeMissile
LocalOffset: -128, -170, 170, -128, 170, 170
LocalYaw: 100, -100
AttackFrontal:
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
BGGY:
Inherits: ^Vehicle
Valued:
Cost: 500
Tooltip:
Name: Attack Buggy
Icon: bggyicon
Description: Fast scout & anti-infantry vehicle.\n Strong vs Infantry, Vehicles\n Weak vs Tanks, Aircraft
Buildable:
Queue: Vehicle
BuildPaletteOrder: 40
Owner: nod
Mobile:
ROT: 8
Speed: 10
Health:
HP: 220
Armor:
Type: Light
RevealsShroud:
Range: 6
Armament:
Weapon: RaiderCannon
AttackFrontal:
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
SAPC:
Inherits: ^Vehicle
Valued:
Cost: 800
Tooltip:
Name: Subterranean APC # TODO: not yet subterranean
Icon: sapcicon
Description: Armored infantry transport and mobile AA\n Strong vs Aircraft, Vehicles\n Weak vs Infantry
Buildable:
Queue: Vehicle
BuildPaletteOrder: 30
Owner: nod
Mobile:
ROT: 5
Speed: 5
Health:
HP: 175
Armor:
Type: Heavy
RevealsShroud:
Range: 5
-AttackMove:
Cargo:
Types: Infantry
MaxWeight: 5
PipCount: 5
UnloadFacing: 220
RenderSprites:
RenderVoxels:
WithVoxelBody:
SUBTANK:
Inherits: ^Vehicle
Valued:
Cost: 750
Tooltip:
Name: Devil's Tongue
Icon: subticon
Description: Subterranean Tank
Buildable:
Queue: Vehicle
BuildPaletteOrder: 40
Owner: nod
Mobile:
ROT: 6
Speed: 5
Health:
HP: 300
Armor:
Type: Light
RevealsShroud:
Range: 5
Armament:
Weapon: FireballLauncher
AttackFrontal:
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
SONIC:
Inherits: ^Vehicle
Valued:
Cost: 1300
Tooltip:
Name: Disruptor
Icon: soniicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 40
Owner: gdi
Mobile:
ROT: 4
Speed: 4
Health:
HP: 500
Armor:
Type: Heavy
RevealsShroud:
Range: 7
Armament:
Weapon: SonicZap
AttackTurreted:
Turreted:
AutoTarget:
RenderSprites:
RenderVoxels:
WithVoxelBody:
WithVoxelTurret:
TTNK:
Inherits: ^Vehicle
Valued:
Cost: 800
Tooltip:
Name: Tick Tank
Icon: tickicon
Buildable:
Queue: Vehicle
BuildPaletteOrder: 60
Owner: nod
Mobile:
ROT: 5
Speed: 6
Health:
HP: 350
Armor:
Type: Light
RevealsShroud:
Range: 5
-AttackMove:
RenderSprites:
RenderVoxels:
WithVoxelBody:
Transforms:
IntoActor: gatick
Offset:-1,-1 # TODO
Facing: 96 # TODO
TransformSounds: # TODO
NoTransformSounds: # TODO
STNK:
Inherits: ^Vehicle
Valued:
Cost: 1100
Tooltip:
Name: Stealth Tank
Icon: stnkicon
Description: Long-range missile tank that can cloak.\nHas weak armor. Can be spotted by infantry.\n Strong vs Vehicles, Tanks, Aircraft\n Weak vs Infantry.
Buildable:
BuildPaletteOrder: 90
Queue: Vehicle
Owner: nod
Mobile:
ROT: 5
Speed: 6
Health:
HP: 180
Armor:
Type: Light
RevealsShroud:
Range: 5
Cloak:
InitialDelay: 90
CloakDelay: 90
CloakSound: # TODO
UncloakSound: # TODO
Armament:
Weapon: Dragon
LocalOffset: 213,43,128, 213,-43,128
AttackFrontal:
AutoTarget:
InitialStance: HoldFire
RenderSprites:
RenderVoxels:
WithVoxelBody:

View File

File diff suppressed because it is too large Load Diff

105
mods/ts/sequences/misc.yaml Normal file
View File

@@ -0,0 +1,105 @@
overlay:
build-valid-interior: cellsel #TODO remove backfall to RA tileset
Start: 3
build-valid-snow: cellsel
Start: 3
build-valid-temperat: cellsel
Start: 3
build-invalid: cellsel
Start: 6
target-select: cellsel
Start: 10
target-valid-desert: cellsel
Start: 3
target-valid-interior: cellsel
Start: 3
target-valid-snow: cellsel
Start: 3
target-valid-temperat: cellsel
Start: 3
target-invalid: cellsel
Start: 6
poweroff:
offline: poweroff
Start: 0
Length: *
Tick: 160
allyrepair:
repair: wrench
Start: 0
Length: *
Tick: 160
rank: # TODO: backfall to RA asset
rank:
Start: 0
Length: *
mpspawn: # TODO: backfall to RA asset
idle:
Start: 0
Length: *
waypoint: # TODO: backfall to RA asset
idle:
Start: 0
Length: *
clock:
idle: gclock2
Start: 0
Length: *
pips:
medic:
Start: 6
tag-primary:
Start: 8
pip-empty:
Start: 1
# TODO:
pip-green:
Start: 2
pip-yellow:
Start: 2
pip-gray:
Start: 2
pip-red:
Start: 2
pip-blue:
Start: 2
explosion:
piff: piff
Start: 0
Length: *
piffpiff: piffpiff
Start: 0
Length: *
discus:
idle:
Start: 0
Length: *
dragon:
idle:
Start: 0
Facings: 32
crystal4:
idle:
Start: 0
Length: 15
ShadowStart: 15
120mm:
idle:
Start: 0
torpedo:
idle:
Start: 0
Length: *

View File

@@ -0,0 +1,212 @@
gacnst: # TODO: write a render trait for the overlays
idle: gtcnst
Start: 0
ShadowStart: 3
medium-damaged-idle: gtcnst
Start: 1
ShadowStart: 4
damaged-idle: gtcnst
Start: 2
ShadowStart: 5
make: gtcnstmk
Start: 0
Length: 24
ShadowStart: 24
build-front: gtcnst_d
Start: 0
Length: 20
damaged-build-front: gtcnst_d
Start: 0
Length: 20
idle-top: gtcnst_c
Start: 0
Length: 15
Tick: 200
damaged-idle-top: gtcnst_c
Start: 15
Length: 15
Tick: 200
heavy-damaged-idle-top: gtcnst_c
Start: 30
idle-side: gtcnst_a
Start: 0
Length: 10
damaged-idle-side: gtcnst_a
Start: 10
Length: 10
heavy-damaged-idle-side: gtcnst_a
Start: 20
Length: 10
idle-front: gtcnst_b
Start: 0
Length: 10
damaged-idle-front: gtcnst_b
Start: 0
Length: 10
gapowr: # TODO: shadow, plugs
idle: gtpowr
Start: 0
ShadowStart: 3
make: gtpowrmk
Start: 0
Length: 20
ShadowStart: 20
damaged-idle: gtpowr
Start: 1
ShadowStart: 4
dead: gtpowr
Start: 2
ShadowStart: 5
gapile:
idle: gtpile
Start: 0
ShadowStart: 3
# TODO: lights: gtpile_a
# Start: 0
# TODO: light: gtpile_b
# Start: 0
# TODO: flag: gtpile_c
# Start:0
make: gtpilemk
Start: 0
Length: 20
ShadowStart: 20
damaged-idle: gtpile
Start: 1
ShadowStart: 4
dead: gtpile
Start: 2
ShadowStart: 5
gaweap:
idle: gtweap
Start: 0
ShadowStart: 3
damaged-idle: gtweap
Start: 1
ShadowStart: 4
dead: gtweap
Start: 2
ShadowStart: 5
build-top: gtweap_d
Start: 0
Length: 9
ShadowStart: 9
damaged-build-top: gtweap_d
Start: 0
Length: 9
ShadowStart: 9
idle-top: gtweap_2
Start: 0
damaged-idle-top: gtweap_2
Start: 1
make: gtweapmk
Start: 0
Length: 20
Tick: 80
ShadowStart: 20
# TODO: gtweap_1 & gtweapbb & gtweap_a & gtweap_b & gtweap_c are unused
gasand: # TODO frame order (horizontal seems busted)
idle: gtsand
Start: 0
Length: 16
ShadowStart: 32
damaged-idle: gtsand
Start: 16
Length: 16
ShadowStart: 48
gatick:
idle:
Start: 0
Facings: 1
ShadowStart: 3
damaged-idle:
Start: 1
Facings: 1
ShadowStart: 4
make: gatickmk
Start: 0
Length: 24
ShadowStart: 24
gaicbm:
idle:
Start: 0
Facings: 1
ShadowStart: 3
damaged-idle:
Start: 1
Facings: 1
ShadowStart: 4
make: gaicbmmk
Start: 0
Length: 30
ShadowStart: 30
gadpsa:
idle:
Start: 0
Facings: 1
ShadowStart: 3
damaged-idle:
Start: 1
Facings: 1
ShadowStart: 4
make: gadpsamk
Start: 0
Length: 36
ShadowStart: 36
gaarty:
idle:
Start: 0
Facings: 1
ShadowStart: 3
damaged-idle:
Start: 1
Facings: 1
ShadowStart: 4
make: gaartymk
Start: 0
Length: 16
ShadowStart: 16
gaspot: # TODO: 1 more damage state, GASPOT_A active animation
idle:
Start: 0
ShadowStart: 3
damaged-idle:
Start: 1
ShadowStart: 4
make: gaspotmk
Start: 0
Length: 14
ShadowStart: 14
gahpad: # TODO: 1 more damage state
idle:
Start: 0
ShadowStart: 3
damaged-idle:
Start: 1
ShadowStart: 4
make: gahpadmk
Start: 0
Length: 18
ShadowStart: 18
build-top: gahpad_a
Start: 8
Length: 8
damaged-build-top: gahpad_a
Start: 0
Length: 8
idle-top: gahpadbb
Start: 0
ShadowStart: 3
damaged-idle-top: gahpadbb
Start: 1
ShadowStart: 4

View File

@@ -0,0 +1,37 @@
mmch:
stand:
Start: 0
Facings: -8
Stride: 15
ShadowStart: 152
run:
Start: 0
Length: 15
Facings: -8
ShadowStart: 152
turret:
Start: 120
Facings: -32
gghunt:
idle:
Start: 0
Facings: 1
Length: 8
ShadowStart: 8
smech:
stand: # TODO: slightly glitchy
Start: 0
Facings: 8
ShadowStart: 136
run:
Start: 0
Facings: -8
Length: 12
ShadowStart: 136
shoot: # TODO: played somehow too fast
Start: 104
Length: 4
Facings: -8
ShadowStart: 240

View File

@@ -0,0 +1,127 @@
mcv:
idle:
harv:
idle:
horv:
idle:
apc: # TODO apcw in water
idle:
art2:
idle:
turret: art2tur
barrel: art2barl
subtank:
idle:
bggy:
idle:
# muzzle: # TODO: use MGUN-N,MGUN-NE,MGUN-E,MGUN-SE,MGUN-S,MGUN-SW,MGUN-W,MGUN-NW
sapc:
idle:
bike:
idle:
ttnk:
idle:
turret: ttnktur
barrel: ttnkbarl
mmch:
barrel: mmchbarl
hmec:
idle:
hvr:
idle:
turret: hvrtur
stnk:
idle:
orca:
idle:
orcab:
idle:
orcatran:
idle:
trnsport:
idle:
scrin:
idle:
apache:
idle:
dshp:
idle:
4tnk:
idle:
turret: 4tnktur
trucka:
idle:
truckb:
idle:
lpst:
idle:
icbm:
idle:
repair:
idle:
weed:
idle:
bus:
idle:
pick:
idle:
car:
idle:
wini:
idle:
sonic:
idle:
turret: sonictur
#truk: # TODO: unused
# idle:
#truck2: # TODO: unused
# idle:
#utnk: # TODO: unused alternative version of Devil's Tongue
# idle:
#tire: # TODO: unused debris
# idle:
#probe: # TODO: unused
# idle:
#piece: # TODO: unused debris
# idle:
dpod:
idle:

148
mods/ts/voices.yaml Normal file
View File

@@ -0,0 +1,148 @@
Infantry:
Voices:
Select: 15-I000, 15-I004, 15-I012, 15-I048
Move: 15-I018, 15-I024, 15-I044
Attack: 15-I044, 15-I050, 15-I044, 15-I046
# Feedback: 15-I058, 15-I064 # TODO
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Rocket:
Voices:
Select: 15-I000, 15-I032, 15-I048
Move: 15-I008, 15-I014, 15-I026
Attack: 15-I008, 15-I014, 15-I026, 15-I050, 15-I060
# Feedback: 15-I058, 15-I064 #TODO
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Umagon:
Voices:
Select: 10-I000, 10-I002, 10-I004, 10-I006
Move: 10-I016, 10-I020, 10-I022
Attack: 10-I024, 10-I026, 10-I028, 10-I030
Die: DEDGIRL1, DEDGIRL2, DEDGIRL3, DEDGIRL4
Ghost:
Voices:
Select: 14-I000, 14-I002, 14-I004
Move: 14-I008, 14-I010, 14-I012, 14-I014
Attack: 14-I008, 14-I010, 14-I014, 14-I016
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Medic:
Voices:
Select: 20-I000, 20-I004, 20-I006
Move: 20-I008, 20-I010, 20-I012
Attack: 20-I016, 20-I018, 20-I020
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Engineer:
Voices:
Select: 19-I000, 19-I002, 19-I006
Move: 19-I010, 19-I016
Attack: 19-I018, 19-I016
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
JumpJet:
Voices:
Select: 15-I000, 15-I004, 15-I012, 15-I048
Move: 15-I018, 15-I024, 15-I044
Attack: 15-I044, 15-I050, 15-I044, 15-I046
# Feedback: 15-I058, 15-I064
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Weed:
Voices:
Select: 15-I000, 15-I006, 15-I040, 15-I042
Move: 15-I024, 15-I044
Attack: 15-I006, 15-I046
# Feedback: 15-I058, 15-I064 # TODO
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Spy:
Voices:
Select: 21-I000, 21-I002, 21-I004
Move: 21-I010, 21-I012, 21-I016
Attack: 21-I010, 21-I012, 21-I022
# Feedback: 21-I000, 21-I002 # TODO
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Hijacker:
Voices:
Select: 24-I000, 24-I002, 24-I004, 24-I006
Move: 24-I008, 24-I010, 24-I012, 24-I014
Attack: 24-I016, 24-I018, 24-I020, 24-I022, 24-I024
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Cyborg:
Voices:
Select: 22-I000, 22-I002, 22-I006
Move: 22-I008, 22-I010, 22-I014, 22-I016, 22-I020
Attack: 22-I008, 22-I010, 22-I012, 22-I018
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
CyborgCommando:
Voices:
Select: 23-I000, 23-I002, 23-I004, 23-I006
Move: 23-I008, 23-I010, 23-I012, 23-I016
Attack: 23-I014, 23-I018, 23-I020, 23-I022
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Mutant:
Voices:
Select: 15-I032, 15-I048
Move: 15-I008,15-I014,15-I026
Attack: 15-I008,15-I014,15-I026,15-I050,15-I060
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Tratos:
Voices:
Select: 13-I000, 13-I002, 13-I004, 13-I006
Move: 13-I008, 13-I010, 13-I012, 13-I014
Attack: 13-I016, 13-I018, 13-I020
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Oxanna:
Voices:
Select: 11-I000, 11-I002, 11-I004, 11-I006
Move: 10-I016, 10-I020, 10-I022
Attack: 10-I024, 10-I026, 10-I028, 10-I030
Die: DEDGIRL1, DEDGIRL2, DEDGIRL3, DEDGIRL4
Slavick:
Voices:
Select: 12-I000, 12-I002, 12-I004
Move: 12-I006, 12-I008, 12-I010
Attack: 12-I012, 12-I014, 12-I016
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6
Fiend:
Voices:
Select:
Move:
Attack:
Die: FIEND1
Vehicle:
Voices:
Select: 25-I000, 25-I002, 25-I004, 25-I006
Move: 25-I012, 25-I014, 25-I016, 25-I018, 25-I022
Attack: 25-I014, 25-I022, 25-I024, 25-I026
Mech:
Voices:
Select: 15-I000, 15-I006, 15-I040, 15-I042
Move: 15-I024, 15-I044
Attack: 15-I006, 15-I046
Heli:
Voices:
Select: 30-I000, 30-I002, 30-I004, 30-I006
Move: 30-I014, 30-I016, 30-I018, 30-I022
Attack: 30-I022, 30-I030, 30-I034, 30-I036
Civilian:
Voices:
Select:
Move:
Attack:
Die: DEDMAN1, DEDMAN2, DEDMAN3, DEDMAN4, DEDMAN5, DEDMAN6

656
mods/ts/weapons.yaml Normal file
View File

@@ -0,0 +1,656 @@
Minigun:
ROF: 21
Range: 4
Report: INFGUN2.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 3
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 15
Grenade:
ROF: 60
Range: 4.5
Projectile: Bullet
Speed: 5
High: yes
Angle: .1
Inaccuracy: 13
Image: DISCUS
Warhead:
Spread: 6
Versus:
None: 50%
Wood: 100%
Light: 25%
Heavy: 5%
InfDeath: 2
Damage: 40
Bazooka:
ROF: 60
Range: 6
Report: RKETINF1.AUD
ValidTargets: Ground, Air
Projectile: Missile
Speed: 25
Arm: 2
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: DRAGON
ROT: 8
RangeLimit: 35
Warhead:
Spread: 3
Versus:
None: 10%
Wood: 75%
Light: 35%
Concrete: 20%
InfDeath: 2
Damage: 25
MultiCluster:
ROF: 80
Range: 6
Report: MISL1.AUD
ValidTargets: Ground
Projectile: Missile
Speed: 20
Arm: 2
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: DRAGON
ROT: 8
RangeLimit: 35
Warhead:
Spread: 3
Versus:
None: 10%
Wood: 75%
Light: 35%
Concrete: 20%
InfDeath: 2
Damage: 65
Heal:
ROF: 80
Range: 2.83
Report: HEALER1.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 5
Versus:
Wood: 0%
Light: 0%
Heavy: 0%
Concrete: 0%
InfDeath: 1
Damage: -50
Sniper:
ROF: 60
Range: 6.75
Report: SILENCER.AUD
Projectile: Bullet
Speed: 100
Warhead:
Damage: 150
Spread: 1
Versus:
None: 100%
Wood: 5%
Light: 5%
Heavy: 5%
InfDeath: 2
M1Carbine:
ROF: 20
Range: 4
Report: INFGUN3.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 3
Versus:
None: 100%
Wood: 25%
Light: 30%
Heavy: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 15
LtRail:
ROF: 60
Range: 6
Report: BIGGGUN1.AUD
Projectile: Bullet
Speed: 100
Warhead:
Damage: 150
Spread: 1
Versus:
None: 100%
Wood: 5%
Light: 5%
Heavy: 5%
InfDeath: 2
Vulcan3:
ROF: 30
Range: 4
Report: CYGUN1.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 3
Burst: 3
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 10
Vulcan2:
ROF: 50
Range: 6
Report: TSGUN4.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 3
Burst: 3
Versus:
None: 100%
Wood: 60%
Light: 40%
Heavy: 25%
Concrete: 10%
Explosion: piffpiff
InfDeath: 1
Damage: 50
Vulcan:
ROF: 60
Range: 4
Report: CHAINGN1.AUD
Projectile: Bullet
Speed: 100
Warhead:
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 20
FiendShard:
ROF: 30
Range: 5
Report: FIEND2.AUD
Projectile: Missile
Burst: 3
Speed: 25
Image: CRYSTAL4
Warhead:
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
InfDeath: 2
Damage: 35
JumpCannon:
ROF: 40
Range: 5
Report: JUMPJET1.AUD
Projectile: Bullet
Speed: 100
Burst: 2
Warhead:
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 15
HoverMissile:
ROF: 68
Range: 8
Report: HOVRMIS1.AUD
ValidTargets: Ground, Air
Projectile: Missile
Burst: 2
Speed: 30
Arm: 2
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: DRAGON
ROT: 8
RangeLimit: 35
Warhead:
Spread: 3
Versus:
None: 10%
Wood: 75%
Light: 35%
Concrete: 20%
InfDeath: 2
Damage: 30
120mmx:
ROF: 80
Range: 6.75
Report: 120MMX9.AUD
Burst: 2
BurstDelay: 5
Projectile: Bullet
Speed: 40
Warhead:
Spread: 3
Versus:
None: 30%
Wood: 75%
Light: 100%
Heavy: 100%
Concrete: 100%
InfDeath: 2
Damage: 50
MammothTusk:
ROF: 80
Range: 6
Report: MISL1.AUD
ValidTargets: Air
Burst: 2
Projectile: Missile
Arm: 0
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: DRAGON
ROT: 10
Speed: 20
RangeLimit: 35
Warhead:
Spread: 6
Versus:
None: 40%
Wood: 75%
Light: 75%
Heavy: 50%
InfDeath: 2
Damage: 40
Repair:
ROF: 80
Range: 1.8
Report: REPAIR11.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 5
Versus:
None: 0%
Wood: 0%
Light: 100%
Heavy: 100%
Concrete: 0%
InfDeath: 1
Damage: -50
SlimeAttack:
ROF: 80
Range: 5
Report: VICER1.AUD
Projectile: Bullet
Burst: 3
Speed: 25
Warhead:
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
InfDeath: 2
Damage: 100
SuicideBomb:
ROF: 1
Range: 0.5
Report: HUNTER2.AUD
Warhead:
Damage: 11000
Spread: 6
Ore: true
Versus:
None: 90%
Light: 60%
Heavy: 25%
Concrete: 50%
InfDeath: 5
120mm:
ROF: 80
Range: 6.75
Report: 120MMF.AUD
Burst: 2
BurstDelay: 5
Projectile: Bullet
Speed: 90
Warhead:
Spread: 3
Versus:
None: 30%
Wood: 75%
Light: 100%
Heavy: 100%
Concrete: 100%
InfDeath: 3
Damage: 70
MechRailgun:
ROF: 60
Range: 8
Burst: 2
BurstDelay:10
Charges: yes
Report: RAILUSE5.AUD
Projectile: LaserZap
Color: 200,0,255,255
BeamWidth: 2
Warhead:
Spread: 1
InfDeath: 5
# SmudgeType: Scorch
Damage: 200
AssaultCannon:
ROF: 50
Range: 5
Report: TSGUN4.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 3
Versus:
Wood: 100%
Light: 60%
Heavy: 40%
Concrete: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 40
BikeMissile:
ROF: 60
Range: 5
Report: MISL1.AUD
ValidTargets: Ground
Burst: 2
Projectile: Missile
Arm: 2
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: DRAGON
ROT: 8
Speed: 30
RangeLimit: 35
Warhead:
Spread: 6
Versus:
None: 40%
Wood: 75%
Light: 75%
Heavy: 50%
InfDeath: 2
Damage: 40
RaiderCannon:
ROF: 55
Range: 4
Report: CHAINGN1.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 3
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 40
FireballLauncher: # TODO: add fire particles
ROF: 50
Range: 4.25
Report: FLAMTNK1.AUD
Projectile: Bullet
Speed: 20
Burst: 2
BurstDelay: 25
Warhead:
Spread: 8
Versus:
None: 100%
Wood: 100%
Light: 50%
Heavy: 25%
InfDeath: 5
Damage: 90
SonicZap:
ROF: 120
Range: 6
Burst: 2
BurstDelay:10
Charges: yes
Report: SONIC4.AUD
Projectile: LaserZap # TODO: SonicBeam
Color: 200,0,255,255
BeamWidth: 2
Warhead:
Spread: 1
InfDeath: 5
# SmudgeType: Scorch
Damage: 100
Dragon:
ROF: 50
Range: 6
Burst: 2
Report: MISL1.AUD
ValidTargets: Ground, Air
Projectile: Missile
Speed: 25
Arm: 2
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: DRAGON
ROT: 8
RangeLimit: 35
Warhead:
Spread: 3
Versus:
None: 10%
Wood: 75%
Light: 35%
Concrete: 20%
InfDeath: 2
Damage: 30
90mm:
ROF: 50
Range: 6.75
Report: 120MMF.AUD
Burst: 2
BurstDelay: 5
Projectile: Bullet
Speed: 40
Warhead:
Spread: 3
Versus:
None: 30%
Wood: 75%
Light: 100%
Heavy: 100%
Concrete: 100%
InfDeath: 2
Damage: 36
155mm:
ROF: 110
Range: 18
Report: 120MMF.AUD
Burst: 2
BurstDelay: 5
Projectile: Bullet
Speed: 10
MinRange: 5
Warhead:
Spread: 7
Versus:
None: 100%
Wood: 85%
Light: 68%
Heavy: 35%
Concrete: 35%
InfDeath: 2
Damage: 150
Hellfire:
ROF: 50
Range: 6
Report: ORCAMIS1.AUD
Burst: 2
ValidTargets: Ground, Air
Projectile: Missile
Speed: 30
Arm: 2
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: DRAGON
ROT: 8
RangeLimit: 35
Warhead:
Spread: 2
Versus:
None: 30%
Wood: 65%
Light: 150%
Heavy: 100%
Concrete: 30%
InfDeath: 3
Damage: 30
Bomb:
ROF: 10
Range: 5
Projectile: Bullet
Speed: 10
Image: 120MM
Warhead:
Spread: 7
Versus:
None: 200%
Wood: 90%
Light: 75%
Heavy: 32%
Concrete: 100%
InfDeath: 2
Damage: 160
Proton:
ROF: 3
Range: 5
Report: SCRIN5B.AUD
Burst: 2
ValidTargets: Ground, Air
Projectile: Missile
Speed: 30
Arm: 2
High: yes
Shadow: no
Proximity: yes
Inaccuracy: 3
Image: TORPEDO
ROT: 1
RangeLimit: 35
Warhead:
Spread: 3
Versus:
None: 25%
Wood: 65%
Light: 75%
Heavy: 100%
Concrete: 60%
InfDeath: 3
Damage: 20
HarpyClaw:
ROF: 36
Range: 5
Report: CYGUN1.AUD
Projectile: Bullet
Speed: 100
ValidTargets: Ground, Air
Warhead:
Spread: 3
Versus:
Wood: 25%
Light: 30%
Heavy: 10%
Concrete: 10%
Explosion: piffpiff
InfDeath: 2
Damage: 60
Pistola:
ROF: 20
Range: 3
Report: GUN18.AUD
Projectile: Bullet
Speed: 100
Warhead:
Spread: 3
Versus:
Wood: 50%
Light: 60%
Heavy: 25%
Concrete: 25%
Explosion: piff
InfDeath: 2
Damage: 2