Racing maps (LDGObjects)
Posted: Mon 25 Jul , 2011 3:58 pm
Allright, I started making a cleanup in Racing maps to remove dependencies on old packages (the maps are marked with [REV] suffix, plus some new maps). The system is suited for easy maintainbility on the server so it's a little more complex when playing offline. Download these archives and extract them into system directory:
Nitro Vehicles 8 Patch 13
UTComp R01
LDG Gametype 8
LDG Objects
Unreal Extension
Then in UT2004 System folder create LDGObjects.ini and put in it:
And NitroVehicles.ini and fill it with
In order to prevent redundant map dependencies, objective classes LDGRaceProxObjective, LDGRaceProxObjective, and vehicle factory class ASTaggedVehicleFactory have a property called "VehicleTypeTag". Objectives use it for ConstraintPawnClass and Factory uses it for VehicleClass. VehicleTypeTag will only override those if it is valid (the tag is in the list). The tags are:
Note: You don't have to use tags when using vehicles from Onslaught.u, OnslaughtFull.u and OnslaughtBP.u packages and just fill the VehicleClass / ConstraitPawnClass with them. Nitro Vehicles Mutator will then override them on their own. You can also use normal ASVehicleFactory for such case.
ASTaggedVehicleFactory:
- vehicle factory, described above
LDGRaceProxObjective:
- race proximity objective, in properties under LDG: bAllowRespawnToBase -> whether to allow respawning to base, bRenderObjective -> whether display arrow / render objective on screen (false in C&C)
LDGRaceDestroyableObjective_SM:
- destroyable objective, in properties under LDG: bAllowRespawnToBase -> whether to allow respawning to base, bRenderObjective -> whether display arrow / render objective on screen, ResistantTo -> damage types that the object ignores, MinDamage -> damage that must be dealt in one shot to claim the objective
LDGTriggeredObjective:
- triggered objective, in properties under LDG: bAllowRespawnToBase -> whether to allow respawning to base, bRenderObjective -> whether display arrow / render objective on screen (false in C&C)
AS_OverrideTimeLimit:
- overrides time limit of the round (just place in map, works in RACE as well)
LDGNoRandomTeams:
- overrides settings of first attacking team (just place in map)
RACE_CheckPoint:
- in race, a checkpoint. In props:
EnabledOnObjectiveTag will enable the checkpoint when the objective of given Tag becomes active.
DisableOnObjectiveTag disables the checkpoint when the objective of the given Tag is completed.
Position is the number of the checkpoint in the sequence - first CP should be 0.
ResetActor is an actor used to place and rotate vehicles and players which are reset to this checkpoint - use the Find ability in UnrealEd to select an actor, preferably a RACE_RestartSpot for convenience.
ActiveState has 3 settings - Reject (resets all actors touching), Check (checks for position and resets actors which are out of checkpoint sequence) and Disabled (does nothing). Initial state should be Check for the path to the first objective and Reject for all else.
The player's checkpoint progression will be reset whenever a checkpoint's ActiveState changes as a result of the Enable/DisableObjectiveTags. Be aware of this when making paths. Objectives which use the same path sequence may benefit from using a shared path system for both branches or not using checkpoints at all if the map is already safe.
RACE_ExtendTimeLimit:
- in race, it will extend time limit when triggered
RACE_PreFinishVolume:
- when touched by a player, will trigger the ability to end the map using simple voting
RACE_RestartSpot
- convenience actor for marking restart spots for checkpoints
KarmaTopSpeedLimitVolume:
- limits top speed of the vehicles inside the volume
Nitro Vehicles 8 Patch 13
UTComp R01
LDG Gametype 8
LDG Objects
Unreal Extension
Then in UT2004 System folder create LDGObjects.ini and put in it:
Code: Select all
[LDGObjects.VehicleTags]
VTags=(TypeTag="TWB",TypeClass="NV8_Patch13.NitroTWB")
VTags=(TypeTag="LVR",TypeClass="NV8_Patch13.NitroLVR")
VTags=(TypeTag="RV",TypeClass="NV8_Patch13.NitroRV")
VTags=(TypeTag="HYBRID",TypeClass="NV8_Patch13.NitroHybridBender")
VTags=(TypeTag="RV_GUNLESS",TypeClass="NV8_Patch13.NitroRVGunless")
VTags=(TypeTag="RV_GUNLESS_B",TypeClass="NV8_Patch13.NitroRVGunlessB")
VTags=(TypeTag="RV_MINIGUN",TypeClass="NV8_Patch13.NitroRVMinigun")
VTags=(TypeTag="RV_SHOCK_NOCAMP",TypeClass="NV8_Patch13.NitroRVShockNoCamp")
VTags=(TypeTag="RV_PLASMA",TypeClass="NV8_Patch13.NitroRVPlasma")
VTags=(TypeTag="RV_PLASMA_RS",TypeClass="NV8_Patch13.NitroRVPlasmaRS")
VTags=(TypeTag="RV_ENERGY",TypeClass="NV8_Patch13.NitroRVEnergy")
VTags=(TypeTag="RV_ENERGY_RS",TypeClass="NV8_Patch13.NitroRVEnergyRS")
VTags=(TypeTag="RV_EMP",TypeClass="NV8_Patch13.NitroRVEMP")
VTags=(TypeTag="SPMA",TypeClass="NV8_Patch13.NitroSPMA")
VTags=(TypeTag="SPMA_GUNLESS",TypeClass="NV8_Patch13.NitroSPMAGunless")
VTags=(TypeTag="GENERIC_SD",TypeClass="NV8_Patch13.NitroGenericSD")
VTags=(TypeTag="GENERIC_XD",TypeClass="NV8_Patch13.NitroGenericXD")
VTags=(TypeTag="RAPTOR",TypeClass="NV8_Patch13.NitroRaptor")
VTags=(TypeTag="RAPTOR_PRISON",TypeClass="NV8_Patch13.NitroRaptorPrison")
VTags=(TypeTag="CICADA",TypeClass="NV8_Patch13.NitroCicada")
VTags=(TypeTag="CICADA_PRISON",TypeClass="NV8_Patch13.NitroCicadaPrison")
VTags=(TypeTag="WHEELED",TypeClass="NV8_Patch13.NitroWheeledVehicle")
VTags=(TypeTag="CHOPPER",TypeClass="NV8_Patch13.NitroChopperVehicle")
Code: Select all
[NV8_Patch13.NitroVehiclesMut]
VehicleReplacementConfig=(OldClassName="Onslaught.ONSWheeledCraft",NewClassName="NV8_Patch13.NitroWheeledVehicle")
VehicleReplacementConfig=(OldClassName="Onslaught.ONSChopperCraft",NewClassName="NV8_Patch13.NitroChopperVehicle")
VehicleReplacementConfig=(OldClassName="Onslaught.ONSPRV",NewClassName="NV8_Patch13.NitroTWB")
VehicleReplacementConfig=(OldClassName="TeamworkBender4.TeamworkBender",NewClassName="NV8_Patch13.NitroTWB")
VehicleReplacementConfig=(OldClassName="Onslaught.ONSRV",NewClassName="NV8_Patch13.NitroRV")
VehicleReplacementConfig=(OldClassName="ScorpionType2.ScorpionType2",NewClassName="NV8_Patch13.NitroRVMinigun")
VehicleReplacementConfig=(OldClassName="ScorpionType4.ScorpionT4Plasma",NewClassName="NV8_Patch13.NitroRVPlasma")
VehicleReplacementConfig=(OldClassName="OnslaughtBP.ONSArtillery",NewClassName="NV8_Patch13.NitroSPMA")
VehicleReplacementConfig=(OldClassName="OnslaughtFull.ONSGenericSD",NewClassName="NV8_Patch13.NitroGenericSD")
VehicleReplacementConfig=(OldClassName="Onslaught.ONSAttackCraft",NewClassName="NV8_Patch13.NitroRaptor")
VehicleReplacementConfig=(OldClassName="OnslaughtBP.ONSDualAttackCraft",NewClassName="NV8_Patch13.NitroCicada")
VehicleReplacementConfig=(OldClassName="VenomBL2.Venom",NewClassName="NV8_Patch13.NitroVenom")
MyLevelVehicleReplacementConfig=(OldClassName="myLevel.myScorpion",NewClassName="NV8_Patch13.NitroRVGunless")
MyLevelVehicleReplacementConfig=(OldClassName="myLevel.myScorpion3",NewClassName="NV8_Patch13.NitroRVGunless")
MyLevelVehicleReplacementConfig=(OldClassName="myLevel.myScorpion2",NewClassName="NV8_Patch13.NitroRVMinigun")
MyLevelVehicleReplacementConfig=(OldClassName="myLevel.ONSLVR",NewClassName="NV8_Patch13.NitroLVR")
MyLevelVehicleReplacementConfig=(OldClassName="myLevel.ONSPrisonAttackCraft",NewClassName="NV8_Patch13.NitroRaptorPrison")
MyLevelVehicleReplacementConfig=(OldClassName="myLevel.ONSPrisonDualCraft",NewClassName="NV8_Patch13.NitroCicadaPrison")
Code: Select all
TWB -> Teamwork Bender
LVR -> Teamwork Leveler
HYBRID -> HybridBender
RV -> Scorpion
RV_GUNLESS -> Unarmed Scorpion
RV_GUNLESS_B -> Unarmed Scorpion (Quantum scorpion skin)
RV_MINIGUN -> Minigun Scroption
RV_SHOCK_NOCAMP-> AntiCamp Shock Scorpion
RV_PLASMA -> Plasma Scorpion
RV_PLASMA_RS -> Plasma Scorpion (with shield and repair)
RV_ENERGY -> Quantum Scorpion
RV_ENERGY_RS -> Quantum Scorpion (with shield and repair)
RV_EMP -> EMP Scorpion
SPMA -> SPMA
SPMA_GUNLESS -> Unarmed SPMA
GENERIC_SD -> Toilet
GENERIC_XD -> Boing Toliet
RAPTOR -> Raptor
RAPTOR_PRISON -> Prison Raptor (can't leave)
CICADA -> Cicada
CICADA_PRISON -> Prison Cicada (can't leave)
WHEELED -> objectives only, when objective can only be completed by wheeled craft
CHOPPER -> objectives only, when objective can only be completed by chopper craft
Code: Select all
---------------------
-LDGObjects contents-
---------------------
- vehicle factory, described above
LDGRaceProxObjective:
- race proximity objective, in properties under LDG: bAllowRespawnToBase -> whether to allow respawning to base, bRenderObjective -> whether display arrow / render objective on screen (false in C&C)
LDGRaceDestroyableObjective_SM:
- destroyable objective, in properties under LDG: bAllowRespawnToBase -> whether to allow respawning to base, bRenderObjective -> whether display arrow / render objective on screen, ResistantTo -> damage types that the object ignores, MinDamage -> damage that must be dealt in one shot to claim the objective
LDGTriggeredObjective:
- triggered objective, in properties under LDG: bAllowRespawnToBase -> whether to allow respawning to base, bRenderObjective -> whether display arrow / render objective on screen (false in C&C)
AS_OverrideTimeLimit:
- overrides time limit of the round (just place in map, works in RACE as well)
LDGNoRandomTeams:
- overrides settings of first attacking team (just place in map)
RACE_CheckPoint:
- in race, a checkpoint. In props:
EnabledOnObjectiveTag will enable the checkpoint when the objective of given Tag becomes active.
DisableOnObjectiveTag disables the checkpoint when the objective of the given Tag is completed.
Position is the number of the checkpoint in the sequence - first CP should be 0.
ResetActor is an actor used to place and rotate vehicles and players which are reset to this checkpoint - use the Find ability in UnrealEd to select an actor, preferably a RACE_RestartSpot for convenience.
ActiveState has 3 settings - Reject (resets all actors touching), Check (checks for position and resets actors which are out of checkpoint sequence) and Disabled (does nothing). Initial state should be Check for the path to the first objective and Reject for all else.
The player's checkpoint progression will be reset whenever a checkpoint's ActiveState changes as a result of the Enable/DisableObjectiveTags. Be aware of this when making paths. Objectives which use the same path sequence may benefit from using a shared path system for both branches or not using checkpoints at all if the map is already safe.
RACE_ExtendTimeLimit:
- in race, it will extend time limit when triggered
RACE_PreFinishVolume:
- when touched by a player, will trigger the ability to end the map using simple voting
RACE_RestartSpot
- convenience actor for marking restart spots for checkpoints
KarmaTopSpeedLimitVolume:
- limits top speed of the vehicles inside the volume