[Setup] Product=EavyAssaultPractice Version=100 Archive=EavyAssaultPractice.umod SrcPath=. MasterPath=.. Requires=UnrealTournament400Requirement Group=SetupGroup Group=EavyAssaultPracticeGroup Group=umodIncludeFilesGroup [UnrealTournament400Requirement] Product=UnrealTournament Version=400 [SetupGroup] Copy=(Src=System\Manifest.ini,Master=System\Manifest.ini,Size=580,Flags=3) Copy=(Src=System\Manifest.int,Master=System\Manifest.int,Size=594,Flags=3) [EavyAssaultPracticeGroup] File=(Src=System\EavyAssaultPractice.int,Size=376) File=(Src=System\EavyAssaultPractice.u,Size=11716) [umodIncludeFilesGroup] File=(Src=Help\EavyAssaultPractice.txt,Size=1249) File=(Src=Help\EavyLogo.bmp,Size=8402) [Setup] LocalProduct=EavyAssaultPractice ReadMe=Help\EavyAssaultPractice.txt SetupWindowTitle=Dedicated To Jenniffer AutoplayWindowTitle=EavyAssaultPractice Options ProductURL=http://unreal.eavy.de/ VersionURL=http://unreal.eavy.de/EavyAssaultPractice/ Developer=Stefan Daniel Schwarz DeveloperURL=mailto:EavyAssaultPractice@unreal.eavy.de Logo=Help\EavyLogo.bmp [UnrealTournament400Requirement] LocalProduct=UnrealTournament ProductURL=http://www.unrealtournament.com/ VersionURL=http://unreal.epicgames.com/ Developer=Epic Games, Inc. DeveloperURL=http://www.epicgames.com/ ; EavyAssaultPractice: "Eavy Assault Practice" Stefan Daniel Schwarz ; ; Dedicated to Jenni - Happy Valentine's Day! [Public] Object=(Name=EavyAssaultPractice.EavyAssaultPractice,Class=Class,MetaClass=Botpack.TournamentGameInfo) Preferences=(Caption="EavyAssaultPractice",Parent="Game Types",Class=EavyAssaultPractice.EavyAssaultPractice,Immediate=True) *Ec@!+<)"8RTߛ!cNoneCriticalEventBroadcastMessageEavyAssaultPractice ScoreKill CheatFlyingSystemAllEngineCoreJenniStopCountDown RestartGameJenniPauseableJenniCheatsEnabled JenniSummonSpawned JenniGod JenniWalk JenniGhost JenniFlyJenniAmphibious JenniAllAmmo Spectator PlayerPawn GameNameFindInventoryTypeEavyInventoryCheaterJenniInvisibleJenniUseTranslocatorAddDefaultInventoryGiveToJenniPlayersOnlyBotpack InitGame StartWalk NamePropertyPlayerReplicationInfo LevelInfoGameReplicationInfo TeamGamePlusMutator GameInfoActor AmmoAmountbHiddenDeathMatchPlusAmmobCollideWorldObjectProperty InventoryLevelAssaultOtherPawn ClassNamebUseTranslocator Visibility bGameEnded bPauseable bIsPlayerOptions TimeLimitReducedDamageType bHeldItemInv KillCount DieCount bMegaSpeed PlayerOwner bJumpMatch BaseMutator bDefenseSet NewClassOwnerGame PlayerNamebCheatsEnabledKillerbStopCountDown Locationi ScriptTextDynamicLoadObject bPlayersOnly BoolPropertyErrorClassPropertyClassPackageStructProperty TextBufferUnderWaterTimeObject Function StrPropertyFloatProperty ByteProperty IntProperty Rotation 6 K9 }9 }l9 }9 }9 }9 }DۑDۑDۑDۂRRR  ]EavyAssaultPractice2Qj@RùR .;RùR .;.;RùR .;.;RùR .;RùR .;RùR .;RùR .;RùR j@ѸBj@.;   @@ @ eU A- .-   w *a  ?,H9 #??,-> Summon '! 9A- .- "-> Walk'! A- .- #tI-> Amphibious'! PA- .- w*w.*.U-> AllAmmo'! Q .A- .- -:%-'$-> Invisible ON'!,-(-> Invisible OFF'!  < - --PauseableT-'! AA- .- !!-> God OFF'!!-> God ON'! .gA- .- a(((-(q!-> Ghost'! #A- .- a'''-'q!-> Fly'! !/uB - --UseTranslocatorT-'! 9f9-a/! ~a/!r  *a w*-'   . l7//EavyAssaultPractice: "Eavy Assault Practice" Stefan Daniel Schwarz // //Dedicated to Jenni - Happy Valentine's Day! class EavyInventoryCheater extends Inventory; var PlayerPawn PlayerOwner; event Spawned() { PlayerOwner = PlayerPawn(Owner); } exec function JenniAllAmmo() { local Inventory Inv; if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; for( Inv=PlayerOwner.Inventory; Inv!=None; Inv=Inv.Inventory ) if (Ammo(Inv)!=None) Ammo(Inv).AmmoAmount = 999; BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> AllAmmo", true, 'CriticalEvent'); } exec function JenniAmphibious() { if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; PlayerOwner.UnderwaterTime = +999999.0; BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> Amphibious", true, 'CriticalEvent'); } exec function JenniFly() { if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; PlayerOwner.UnderWaterTime = PlayerOwner.Default.UnderWaterTime; PlayerOwner.SetCollision(true, true, true); PlayerOwner.bCollideWorld = true; PlayerOwner.GotoState('CheatFlying'); BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> Fly", true, 'CriticalEvent'); } exec function JenniGhost() { if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; PlayerOwner.UnderWaterTime = -1.0; PlayerOwner.SetCollision(false, false, false); PlayerOwner.bCollideWorld = false; PlayerOwner.GotoState('CheatFlying'); BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> Ghost", true, 'CriticalEvent'); } exec function JenniWalk() { if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; PlayerOwner.StartWalk(); BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> Walk", true, 'CriticalEvent'); } exec function JenniGod() { if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; if ( PlayerOwner.ReducedDamageType == 'All' ) { PlayerOwner.ReducedDamageType = ''; BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> God OFF", true, 'CriticalEvent'); } else { PlayerOwner.ReducedDamageType = 'All'; BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> God ON", true, 'CriticalEvent'); } } exec function JenniInvisible() { if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; if ( (!PlayerOwner.bHidden) && (PlayerOwner.Visibility != 0) ) { PlayerOwner.bHidden = true; PlayerOwner.Visibility = 0; BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> Invisible ON", true, 'CriticalEvent'); } else { PlayerOwner.bHidden = false; PlayerOwner.Visibility = PlayerOwner.Default.Visibility; BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> Invisible OFF", true, 'CriticalEvent'); } } exec function JenniSummon( string ClassName ) { local class NewClass; if ( Level.Game.bGameEnded || !EavyAssaultPractice(Level.Game).bCheatsEnabled ) return; NewClass = class( DynamicLoadObject( ClassName, class'Class' ) ); if( NewClass!=None ) Spawn( NewClass,,,PlayerOwner.Location + 72 * Vector(PlayerOwner.Rotation) + vect(0,0,1) * 15 ); BroadcastMessage(PlayerOwner.PlayerReplicationInfo.PlayerName@"-> Summon"@ClassName, true, 'CriticalEvent'); }  !H9 ------  @ - --CheatsEnabledT-'! bY - --PlayersOnlyT-'!  Q-' X2W <w  w*  y"//EavyAssaultPractice: "Eavy Assault Practice" Stefan Daniel Schwarz // //Dedicated to Jenni - Happy Valentine's Day! class EavyAssaultPractice extends Assault config; var bool bCheatsEnabled; exec function JenniCheatsEnabled() { if ( bGameEnded ) return; bCheatsEnabled = !bCheatsEnabled; BroadcastMessage("CheatsEnabled"@bCheatsEnabled, true, 'CriticalEvent'); } exec function JenniPauseable() { if ( bGameEnded ) return; bPauseable = !bPauseable; BroadcastMessage("Pauseable"@bPauseable, true, 'CriticalEvent'); } exec function JenniPlayersOnly() { if ( bGameEnded ) return; Level.bPlayersOnly = !Level.bPlayersOnly; BroadcastMessage("PlayersOnly"@Level.bPlayersOnly, true, 'CriticalEvent'); } exec function JenniStopCountDown() { if ( bGameEnded ) return; if ( GameReplicationInfo.bStopCountDown ) TimeLimit = 1; else TimeLimit = 0; GameReplicationInfo.bStopCountDown = !GameReplicationInfo.bStopCountDown; BroadcastMessage("StopCountDown"@GameReplicationInfo.bStopCountDown, true, 'CriticalEvent'); } exec function JenniUseTranslocator() { if ( bGameEnded ) return; bUseTranslocator = !bUseTranslocator; BroadcastMessage("UseTranslocator"@bUseTranslocator, true, 'CriticalEvent'); } function AddDefaultInventory( pawn PlayerPawn ) { local EavyInventoryCheater i; Super(TeamGamePlus).AddDefaultInventory(PlayerPawn); if ( !PlayerPawn.bIsPlayer || !PlayerPawn.IsA('PlayerPawn') ) return; if ( !PlayerPawn.IsA('Spectator') && (PlayerPawn.FindInventoryType(class'EavyInventoryCheater') == None) ) i = Spawn(class'EavyInventoryCheater', PlayerPawn); if ( i != None ) { i.bHeldItem = true; i.GiveTo(PlayerPawn); } } event InitGame( string Options, out string Error ) { Super.InitGame(Options, Error); bMegaSpeed = Default.bMegaSpeed; bUseTranslocator = Default.bUseTranslocator; bJumpMatch = Default.bJumpMatch; } function RestartGame() { bDefenseSet = true; Super.RestartGame(); } function ScoreKill(Pawn Killer, Pawn Other) { Other.DieCount++; if ( (Killer != Other) && (Killer != None) ) Killer.KillCount++; BaseMutator.ScoreKill(Killer, Other); }  #&~ - '-&.%--StopCountDownT-'!  X W% X W W5 W* W) X W$ 02 W] 0J T9 W- ^K 0$ W& W3 W0 W1 T7 TN W. 0& `8 _[ WW T: #> W\ W^ T, TS ] T/ TE TC ]! WZ a= 01 ] YO Yb W' WV ] ] ]R TG ] aB aA T? a+ 0F 0I T; W( WTD K~XL V b@ o] |P Y+M f+Hs+4 A,6 N,U Z,< f,sr,oe/zT1dN3jr5 C\9r_:VQ=Wg?I~AMGC"TEQ4w7vE!7m} Gd~Wk #BOeQ4D#t px* EavyAssaultPractice: "Eavy Assault Practice" Stefan Daniel Schwarz * * Dedicated to Jenni - Happy Valentine's Day! Information ----------- On this special day, I proudly present a special mod, that is dedicated to a very special friend. She regularly plays Assault with me, that's why I made the mod for us, so we can practice together. Since it might be useful for others as well, I'm publishing it now, have fun and enjoy yourselves. Admin Console Commands ---------------------- You won't gain points for killing others, you won't lose points for killing yourself. There's only one round, attackers and defenders won't switch roles after game is over. There're a lot of additional console commands available to tweak your practice matches. Admin Console Commands ---------------------- JenniCheatsEnabled JenniPauseable JenniPlayersOnly JenniStopCountDown JenniUseTranslocator Cheat Console Commands ---------------------- JenniAllAmmo JenniAmphibious JenniFly JenniGhost JenniWalk JenniGod JenniInvisible JenniSummon Contact Me At ------------- mailto:EavyAssaultPractice@unreal.eavy.de http://unreal.eavy.de/EavyAssaultPractice/ <<< "Stefan Daniel 'Eavy' Schwarz" >>> BM 6(WR!B1J919RBBBZJJRkZZcss{!!))1199JJRRZZkkss{{)19JsWA941(-!.(.((..((..((..((..((..((AAWV"F"SCWKFM++W'=W &##'WWA941(-!.(.((..((..((..((..((..((AAWV"F"SCWKFM++W'=W &##'WWB2(-(-(.(-(-(-((--((--((--((--((--((;;W FAWQFS-W(-(-(-1BFWOFS5W+ F++W'+:W#!W W>(-(-(-1BFWOFS5W+ F++W'+:W#!WWB-(-(0HLWF"F5WQFS-W+:W!WWB-(-(0HLWF"F5WQFS-W+:W!WW-(.(-;PWTFO3WFI-W$ :W#WW-(.(-;PWTFO3WFI-W$ :W#WW-(.(-;PWTFO3WFI-W$ :W#WW2(-(-=TWKF"/W+LF+-W W+:W WW2(-(-=TWKF"/W+LF+-W W+:W WWC(-(-7XWFK++WUF"FN-W W'jWTF"P+FI.W$/W #W# WWW-(-(->jWTF"P+FI.W$/W #W# WWW-(-(.9jWKF+LF"F+.W 3W+!W WWW-(-(.9jWKF+LF"F+.W 3W+!W WWW-(-(.9jWKF+LF"F+.W 3W+!W WWWC(-(-(.ChWFGFN.W 5W'W W&WWC(-(-(.ChWFGFN.W 5W'W W&W WA-(-(-(!>dWOF+,W'7WW#W+W WA-(-(-(!>dWOF+,W'7WW#W+W WC(-(-(.(-17;=@A@A@A@H9WF"FS-W;W+WWW WC(-(-(.(-17;=@A@A@A@H9WF"FS-W;W+WWWW3(-(-(-(.(.(-(-(-((--((--((--((--((--((;;9WT FI-W$$;W W#WWW3(-(-(-(.(.(-(-(-((--((--((--((--((--((;;9WT FI-W$$;W W#WWW3(-(-(-(.(.(-(-(-((--((--((--((--((--((;;9WT FI-W$$;W W#WWWC(-(-(-(-(-(.(-(..((--((..((--((..((--;;;WKF+-W ?WW WWWC(-(-(-(-(-(.(-(..((--((..((--((..((--;;;WKF+-W ?WW WWW8(-(-(-(-(-(--((--((--((--((--((--;;=WFN-W AW'W W&W8(-(-(-(-(-(--((--((--((--((--((--;;=WFN-W AW'W W&WD;62.(-(-(--((--((--((--((--((--AA=WRFK/W CWW  WWD;62.(-(-(--((--((--((--((--((--AA=WRFK/W CWW  WWD;62.(-(-(--((--((--((--((--((--AA=WRFK/W CWW  WSystem\Manifest.iniSystem\Manifest.intRSystem\EavyAssaultPractice.int*xSystem\EavyAssaultPractice.u-Help\EavyAssaultPractice.txtf4Help\EavyLogo.bmpG9 Z[gϽ