commit e2462d348ea0d00ec6f9775806c6110c098edbe0 Author: cclecle Date: Sat Jul 23 13:30:35 2022 +0200 first commit diff --git a/Help/readme.html b/Help/readme.html new file mode 100644 index 0000000..2a9faf1 --- /dev/null +++ b/Help/readme.html @@ -0,0 +1,1521 @@ + + + + + + + + + + + +
+ +

FRAG NEWNET

+ +

 

+ +

 

+ +

--------------DESCRIPTION--------------

+ +

 

+ +

NewNet +- "Modern Netcode for UT99 (AKA a bunch of hacks)" ©

+ +

 

+ +

Main +features NewNet:

+ +

- +no delay before firing at high ping

+ +

- +motion compensation at high ping

+ +

- +smooth movements at high ping

+ +

- +fast weapon switch

+ +

 

+ +

FragNewNet +(FNN) is based on the UltimateNewNet Beta 1e (UN1e) +by Deepu

+ +

UltimateNewNet +is based on the original NewNet code written by TimTim

+ +

FragNewNet +contains IG+ code

+ +

 

+ +

FragNewNet +is primarily intended for classic game modes (DM, TDM, LMS, CTF, AS, DOM).

+ +

Inside +the package there are mutators that modify these game modes (TeamLMS, ComboGib, +Instagib, etc)

+ +

 

+ +

--------------UPDATE FNN--------------

+ +

 

+ +

Copy +the new fnnXXX.u (XXX - new version FragNewNet, YYY - old version FragNewNet) +to System folder game.

+ +

 

+ +

Change +the all values fnnYYY to fnnXXX ​​in the files:

+ +

UnrealTournament.ini, +FragNewNet.ini, mapvote.ini (the name file may be different depending on the +mapvote you are using)

+ +

 

+ +

EXAMPLE:

+ +

 

+ +

UnrealTournament.ini

+ +

ServerPackages=fnnYYY +--> ServerPackages=fnnXXX

+ +

ServerActors=fnnYYY.NewNetServer +--> ServerActors=fnnXXX.NewNetServer

+ +

 

+ +

FragNewNet.ini

+ +

[fnnYYY.UTPure] +--> [fnnXXX.UTPure]

+ +

[fnnYYY.DoubleJump] +--> [fnnXXX.DoubleJump]

+ +

etc.

+ +

 

+ +

--------------INSTALLATION FNN--------------

+ +

 

+ +

Copy +the fnnXXX.u (XXX - version FragNewNet) to System folder game.

+ +

 

+ +

UnrealTournament.ini:

+ +

[Engine.GameEngine]

+ +

ServerPackages=fnnXXX

+ +

ServerActors=fnnXXX.NewNetServer +(or as a mutators: fnnXXX.UTPure, fnnXXX.ST_Mutator)

+ +

 

+ +

After +starting the server, the FragNewNet.ini file with the FragNewNet settings is +created in the System folder game.

+ +

Description +of settings:

+ +

The +default damage values ​​are the same as in the original game. To get the real +damage value, multiply the NewNet value by 1.5

+ +

[fnnXXX.UTPure]

+ +

HammerDamagePri=60.000000

+ +

HammerDamageSec=20.000000

+ +

HammerDamageSelfPri=36.000000

+ +

HammerDamageSelfSec=24.000000

+ +

EnforcerDamage=17.000000 (Hitscan damage)

+ +

BioDamagePri=40.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

BioDamageSec=75.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

BioDamageCharging=150.000000 (Damage when fired +with a not fully charged BioRifle)

+ +

BioDamageCharged=300.000000 (Damage when fired +with a fully charged BioRifle)

+ +

ShockDamagePri=40.000000 (Hitscan damage)

+ +

ShockDamageSec=55.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

ShockDamageCombo=165.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

PulseDamagePri=20.000000 (Hitscan damage)

+ +

PulseDamageSec=4.000000 (Hitscan damage)

+ +

RipperDamagePri=30.000000 (Hitscan damage)

+ +

RipperDamageSec=34.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

MinigunDamagePri=9.000000 (Hitscan damage)

+ +

MinigunDamageSec=14.000000 (Hitscan damage)

+ +

FlakDamagePri=16.000000 (Damage from one +chunk. One shot contains 8 chunk)

+ +

FlakDamageSec=70.000000 (Projectile Direct +Hit Damage. The projectile, upon hitting the surface, explodes and releases 8 +chunk)

+ +

RocketDamagePri=75.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

RocketDamageSec=80.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

SniperDamagePri=40.000000 (Hitscan damage)

+ +

SniperHeadshotDamage=100.000000 (Hitscan damage)

+ +

H4xDamagePri=45.000000 (Hitscan damage)

+ +

H4xHeadshotDamage=100.000000 (Hitscan damage)

+ +

H4xSpeed=1.000000 (Reload speed)

+ +

HookDamageMode0=1.000000 (Damage for setting +HookKillMode=0)

+ +

HookDamageMode1=13.000000 (Damage for setting +HookKillMode=1)

+ +

ComboGibDamagePri=700.000000 (Hitscan damage)

+ +

ComboGibDamageSec=700.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

ComboGibDamageCombo=700.000000 (Deals damage in a +radius. The further from the center of the body, the less damage)

+ +

ComboGibDamageType=jolted (Makes fnn compatible +with some announcer mutators for combo kill detection.

+ +

For +example, for the ComboWhoreAnnouncerV1a mutator, change the value to +ShockCombo)

+ +

bNNAnnouncer=True (True - automatically +add an announcer for new multi Kill messages for players and spectators, False +- automatically

+ +

add +an announcer for classic multi Kill messages for players and spectators.)

+ +

bAnnouncerForSpecs=True (False - turns off +the any announcers for spectators.  This is to allow administrators to use +third-party mods

+ +

for +multikill messages. True - activates the announcer for spectators. If +NNAnnouncer=True there will be new multikill messages.

+ +

If +NNAnnouncer=False - classic multikill messages.)

+ +

bDMPlayerCount=False (True - displays the +number of players in the game in the HUD. Default False)

+ +

bTeamPlayerCount=False (True - displays the +number of players in each team (blue and red) in the HUD)

+ +

bBrightPlayer=False (This function makes +the player to look brighter, it does not change the parameters of the light +(brightness or such),

+ +

only +makes him immune to light, practically becomes visible all the time, including +in dark places)

+ +

bShowCarcass=True (True - the corpses +will be visible after kills. False - the corpses will be hidden).

+ +

bShootCarcass=True (True - players can +destroy corpses with weapons. False - corpses are only visible, but not part of +the game)

+ +

bBunnyHopping=True (False - players will +be slowed down to ground speed upon landing, which prevents Bunny Hopping.
+True - landing works like before in newnet)

+ +

bSmoothFOVChanges=False (True - smooths out +FOV changes so they arent as jarring when spawning and zooming with a sniper +rifle)

+ +

PlayerPacks[0]= (Config list of +supported player packs)

+ +

PlayerPacks[1]=

+ +

PlayerPacks[2]=

+ +

bForceDefaultHitSounds=False (True - clients will +be forced to use HitSound installed on the server by default,

+ +

False +- clients can select hitsounds themselves by entering in the console: hitsounds +1/2/3/4/5/6/7/8/9/off)

+ +

DefaultHitSound=2

+ +

DefaultTeamHitSound=3

+ +

bCoaches=False (Enable or disable +coaching. bTournament only)

+ +

bAutoPause=False (Enable or disable +autopause. bTournament only)

+ +

MinClientRate=12000 (Minimum allowed +client rate)

+ +

MaxClientRate=25000 (Maximum allowed +client rate)

+ +

bUseOldLogo=False (True - use old logo +FNN bottom left in start game)

+ +

 

+ +

 

+ +

--------------GAME MODES AND MUTATORS--------------

+ +

 

+ +

__________Last +Man Standing__________

+ +

 

+ +

MapVote.ini

+ +

CustomGameConfig[1]=(bEnabled=True,GameClass="fnnXXX.LastManStanding",NewPrefix="LMS",Mutators="",Settings="")

+ +

 

+ +

UnrealTournament.ini

+ +

[fnnXXX.LastManStanding]

+ +

bHighDetailGhosts=False

+ +

bDynamicBots=False

+ +

NumberDynamicBots=0

+ +

StartWeapon=

+ +

FragLimit=20

+ +

TimeLimit=13

+ +

bMultiWeaponStay=True

+ +

bForceRespawn=False

+ +

bUseTranslocator=False

+ +

MaxCommanders=0

+ +

bNoMonsters=True

+ +

bHumansOnly=False

+ +

bCoopWeaponMode=False

+ +

bClassicDeathMessages=False

+ +

MinFOV=80.000000

+ +

MaxFOV=130.000000

+ +

MaxNameChanges=0

+ +

 

+ +

__________Last +Team Standing__________

+ +

 

+ +

MapVote.ini

+ +

CustomGameConfig[1]=(bEnabled=True,GameClass="fnnXXX.TLastManStanding",NewPrefix="TeamLMS",Mutators="",Settings="MinPlayers=2")

+ +

 

+ +

UnrealTournament.ini

+ +

[fnnXXX.TLastManStanding]

+ +

bHighDetailGhosts=False

+ +

StartWeapon=

+ +

bNoTeamChanges=False

+ +

FriendlyFireScale=1.000000 +(do not change this value, change this value in mapvote)

+ +

MaxTeams=2

+ +

GoalTeamScore=0.000000

+ +

MaxTeamSize=16

+ +

FragLimit=0

+ +

TimeLimit=15

+ +

bMultiWeaponStay=True

+ +

bForceRespawn=True

+ +

bUseTranslocator=False

+ +

MaxCommanders=0

+ +

bNoMonsters=True

+ +

bHumansOnly=False

+ +

bCoopWeaponMode=False

+ +

bClassicDeathMessages=False

+ +

MinFOV=80.000000

+ +

MaxFOV=130.000000

+ +

MaxNameChanges=0

+ +

 

+ +

__________InstaGib__________

+ +

Mutator: +fnnXXX.NewNetIG

+ +

 

+ +

__________Zooming +InstaGib__________

+ +

Mutator: +fnnXXX.NewNetZIG

+ +

 

+ +

__________Sniper +Arena__________

+ +

Mutator: +fnnXXX.NewNetSA

+ +

 

+ +

__________Shock +Domination__________

+ +

Mutator: +fnnXXX.NewNetSDOM

+ +

 

+ +

__________Rocket +Arena__________

+ +

Mutator: +fnnXXX.NewNetRA

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.NewNetRA]

+ +

bAllowJumpBoots=True

+ +

bAllowHealthPickups=True

+ +

bAllowArmorItems=True

+ +

bAllowNoSmoke=True +(True - removes smoke from rockets)

+ +

 

+ +

__________ComboGib__________

+ +

Mutator: +fnnXXX.NewNetCG

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.NewNetCG]

+ +

EnableNoSpam=False +(True - to enable no spam options)

+ +

FireRateScale=0.500000 +(Adjust primary firing speed)

+ +

MinSecBetweenBalls=0.700000 +(Adjust this setting when enabling "AntiSpamMethod=3")

+ +

MaxShockBalls=3 +(Max shock ball for shock secondary fire when enabling "AntiSpamMethod=2 +or AntiSpamMethod=1")

+ +

AntiSpamMethod=1

+ +

bAllowJumpBoots=True

+ +

bAllowScubaGear=False

+ +

bAllowFlashlight=False

+ +

bAllowSuits=False

+ +

bAllowHealthPickups=False

+ +

bAllowArmorItems=False

+ +

 

+ +

Methods:

+ +

AntiSpamMethod=1 +(Limit shock balls with adjusting "MaxShockBalls=*" value)

+ +

AntiSpamMethod=2 +(Remove old fired shock ball if more than this "MaxShockBalls=*" +value)

+ +

AntiSpamMethod=2 +(Timed shock ball fire with adjusting "MinSecBetweenBalls=*" value)

+ +

 

+ +

__________Grapple +Hook__________

+ +

Mutator: +fnnXXX.NewNetGH

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.UTPure]

+ +

HookDamageMode0=1.000000 +(Damage for setting HookKillMode=0)

+ +

HookDamageMode1=13.000000 +(Damage for setting HookKillMode=1)

+ +

 

+ +

[fnnXXX.Grappling]

+ +

HookSpeed=2700

+ +

HookKillMode=1 +(0 - be attracted by the grapple to the enemy and inflict constant damage,

+ +

1 +- damaging an enemy when firing a grapple, 2 - disable kill mode)

+ +

Range=5000.000000

+ +

FlySpeed=1.000000

+ +

FFlySpeed=1.000000

+ +

SpeedFactor=2.000000

+ +

bFlagFly=False

+ +

bFlagNoAttach=True

+ +

bFlagTeamTravel=False

+ +

bDropOnfire=True

+ +

bNotifyKeyBind=True +(True - send message for bind key for grapple)

+ +

 

+ +

__________h4x +Sniper__________

+ +

Mutator: +fnnXXX.NewNetH4X

+ +

Mutator: +fnnXXX.XlocMut (Translocator for large maps)

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.UTPure]

+ +

H4xDamagePri=45.000000 +(To get the real damage value, multiply the NewNet value by 1.5)

+ +

H4xHeadshotDamage=100.000000

+ +

H4xSpeed=1.000000

+ +

 

+ +

[fnnXXX.NewNetH4X]

+ +

bAllowJumpBoots=True

+ +

bAllowHealthPickups=True

+ +

bAllowArmorItems=True

+ +

 

+ +

[fnnXXX.XlocToss]

+ +

XlocTossForce=830 +(Changing the distance the translocator can be thrown)

+ +

 

+ +

__________All +weapons__________

+ +

Loads +the weapon to the player's inventory at the start of the game. Weapon will not +drop from the killed player.

+ +

Mutator: +fnnXXX.GiveWeapons

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.GiveWeapons]

+ +

bDoubleEnforcer=True +(True - the player will get DoubleEnforcer)

+ +

bGiveAllWeapons=True +(True - the player player will get all weapons, False - the player will get +default weapon )

+ +

bGiveRedeemer=False +(True - the player will get Redeemer)

+ +

bGiveTranslocator=False +(True - the player will get Translocator)

+ +

GiveMaxAmmo=199 +(The number of ammo for all weapons)

+ +

 

+ +

__________All +armors__________

+ +

Adds +armor to the player's inventory at the start of the game.

+ +

Mutator: +fnnXXX.GiveArmors

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.GiveArmors]

+ +

bGiveShieldBelt=True

+ +

bGiveArmor=True

+ +

bGivePads=True

+ +

bGiveBigKegHealth=True

+ +

 

+ +

__________Items +on the map__________

+ +

Allows +to remove items from the map.

+ +

Mutator: +fnnXXX.NoItemsMap

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.NoItemsMap]

+ +

bNoAllWeapons=True

+ +

bNoRedeemer=True

+ +

bNoAmmo=True

+ +

bNoInvisibility=True

+ +

bNoAmplifier=True

+ +

bNoShieldbelt=True

+ +

bNoArmor=True

+ +

bNoThighPads=True

+ +

bNoBigKegOHealth=True

+ +

bNoMedBoxes=True

+ +

bNoVials=True

+ +

bNoJumpBoots=True

+ +

 

+ +

__________NoDamageBoost__________

+ +

Mutator: +fnnXXX.NoDamageBoost

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.NoDamageBoost]

+ +

bNoSelfDamage=True +(True - the player will not take damage from his weapon)

+ +

bNoTeamBoost=True

+ +

 

+ +

__________TeleportToPoint__________

+ +

Allows, +using commands to teleport the player to the designated place.

+ +

Mutator: +fnnXXX.TeleportToPoint

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.TeleportToPoint]

+ +

bCmdInform=True +(True - the players will be told the command to print all the available +commands.)

+ +

CmdFormatting=! +(Symbol ! to be put at the start of the message to be interpreted as a +command.)

+ +

bCmdFormattingMutate=True +(True - cmdFormatting must be put when using "mutate" command.)

+ +

MaxCPs=3 +(Max amount of CPs that can be spawned. When reached, CPs will start to +recycle.)

+ +

bTeleportEffect=False +(True - the GameType's teleport effect will be spawned at target location when +teleporting.)

+ +

 

+ +

Commands:

+ +

!cmd +- Displays this thing

+ +

!spawn +- Teleports you to a PlayerStart

+ +

!cp +- Creates a checkpoint

+ +

!prevcp +- Moves your CP to a previous location

+ +

!nocp +- Deletes your checkpoint

+ +

!gocp +- Teleports you to your checkpoint

+ +

!go +<player_name> - Teleports you to the first player found with a similar +player_name

+ +

!goview +- Teleports you to the viewing player

+ +

 

+ +

__________Double +Jump__________

+ +

Mutator: +fnnXXX.DoubleJump

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.DoubleJump]

+ +

MaxJumps=2 +(Changing number of jumps, no more than 10)

+ +

JumpHeight=1.200000

+ +

bJumpWithFlag=True

+ +

bJumpWithDodge=True +(True - enable double jumps after dodge, False - disable jumps after dodge)

+ +

bJumpWithBoots=True +(True - double jump will be at the height of JumpBoots, False - double jump +will be at the height JumpHeight)

+ +

 

+ +

__________Commands__________

+ +

Mutator: +fnnXXX.CmdMut

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.CmdMut]

+ +

bUseTeamSwitch=True +(team change allowed using commands)

+ +

bUseBalanceTeams=True +(team balance allowed using commands)

+ +

 

+ +

Commands:

+ +

- +Team commands - !R, !B, !G, !Y, !T, !TEAM, !TEAMS

+ +

- +Game commands - !P (!PLAY), !S (!SPEC), !QUIT (!EXIT), !LEAVE (!BYE), !V +(!VOTE)

+ +

 

+ +

__________BeaconPlayer__________

+ +

Displays +the player's name above his head.

+ +

Mutator: +fnnXXX.BeaconPlayer

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.BeaconPlayer]

+ +

bShowForSpectators=True +(True - shows the names to spectators)

+ +

bShowForPlayers=True +( True - shows the names to players)

+ +

bShowForTeammates=False +(True - shows the names of only teammates)

+ +

bShowHealth=False +(True - displays health next to the name)

+ +

bSmallFont=False

+ +

bMediumFont=True

+ +

bBigFont=False

+ +

 

+ +

__________AntiCamp__________

+ +

Helps +take action against camper.

+ +

Mutator: +fnnXXX.AntiCamp

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.AntiCamp]

+ +

CampTime=10 +(Downtime in seconds in radius (CampRadius) when the player is mistaken for +campers)

+ +

CampRadius=100 +(The radius at which the downtime is counted for campers)

+ +

bCampDamage=True +(True - the player will lose health (CampDamage) after downtime)

+ +

CampDamage=30 +(The amount of health that the player will lose after downtime)

+ +

bCampFatness=True +(True - the player will get fat after downtime)

+ +

CampFatness=20 +(How much the player will get fat from 128 to 240 (128 - default Fatness, 240 - +maximum Fatness))

+ +

bDeathMaxFatness=True +(True - when the maximum Fatness (240) the player dies)

+ +

bCampSpeed=True +(True - the player will lose speed after downtime)

+ +

CampSpeed=10 +(How much the player will speed slow down from 100 to 0)

+ +

MinLimitSpeed=0.5 +(The player's minimum speed limit that will be set during a speed loss, 1 - +normal speed)

+ +

bTakeLivesTime=True +(True - each players health is draining 1 health point per second)

+ +

bKillBonuses=True +(True - each kill is rewarded with health points (HealthBonuses) or, in 5% of +the cases, with either UDamage, Armor or ThingPads.

+ +

Not +valid for mode ComboGib and InstaGib)

+ +

HealthBonuses=25 +(How many health points will be added in the form of bonuses for the kill)

+ +

MaxHealthBonuses=199 +(The health limit that a player can get for bonuses)

+ +

 

+ +

__________Idlers +to Spectators__________

+ +

The +player will be automatically switched to spectator mode or, if spectator slot +is full, kicked player after the idle time,

+ +

if +he is idle (does not move - does not press movement keys and no view rotation +with the mouse, does not shots, does not write to chat).

+ +

Idle +player with a flag is excluded. The mutator will only work in conjunction with +the CmdMut mutator or another third-party mutator

+ +

that +supports the player to spectator switch command (!s).

+ +

Mutator: +fnnXXX.SpecIdlers

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.SpecIdlers]

+ +

SpecTime=60 +(The time in seconds after which the idle player will be switched to spectator +mode)

+ +

WarningMessage=5 +(The time in seconds before the player switches to spectator mode or kicked, he +will observe a warning message)

+ +

 

+ +

__________UnlimitedAmmo__________

+ +

Adds +unlimited ammo to the player's inventory.

+ +

Mutator: +fnnXXX.UnlimitedAmmo

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.UnlimitedAmmo]

+ +

RedeemerUnlimited=False

+ +

 

+ +

__________NoSmoke__________

+ +

Removes +smoke from rockets in weapon Rocket Launcher.

+ +

Do +not use it in conjunction with the NewNetRA mutator, as it already contains +this feature

+ +

or +disable this feature in the NewNetRA mutator bAllowNoSmoke=False.

+ +

Mutator: +fnnXXX.NoSmoke

+ +

 

+ +

__________ScoreSave__________

+ +

Saves +frags and deaths after player disconnect.

+ +

Mutator: +fnnXXX.ScoreSave

+ +

 

+ +

[fnnXXX.ScoreSave]

+ +

SSDelay=4.000000 +(Time in seconds after which the score is saved)

+ +

 

+ +

__________Disabling +NewNet for custom game support__________

+ +

Mutator: +fnnXXX.DisableNewNet

+ +

 

+ +

__________Disabling +NewNet weapons for custom game support (custom weapons, unreal1, etc)__________

+ +

Mutator: +fnnXXX.DisableWeapons

+ +

 

+ +

__________Auto +Pause__________

+ +

If +you run AutoPause as a mutator, then you need set bAutoPause=False in +[fnnXXX.UTPure] section.

+ +

Mutator: +fnnXXX.PureAutoPause

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.PureAutoPause]

+ +

PauseTotalTime=300

+ +

Pausetime=60

+ +

Timeouts=0

+ +

 

+ +

__________RX +fix__________

+ +

This +mutator needs to be added to game modes where RX weapon is used (example +Strangelove game mode).

+ +

Mutator +fixes random air stuck player while jumping off the rocket.

+ +

Mutator: +fnnXXX.RXfix

+ +

 

+ +

 

+ +

--------------INSTALLATION SKINS Bonus Pack 1, Bonus +Pack 4--------------

+ +

 

+ +

This +skin packs within itself such skins as: Nali Cow, Nali, Skaarj Trooper, XanMK2, +WarBoss

+ +

Some +skins may have problems with team colors in team games.

+ +

 

+ +

Copy +the BP1HXXX.u, BP4HXX.u (XXX - version FragNewNet) to System folder game.

+ +

Copy +the UTBonusPacks to System folder +game.

+ +

 

+ +

UnrealTournament.ini:

+ +

[Engine.GameEngine]

+ +

ServerPackages=BP1HXXX

+ +

ServerPackages=BP4HXXX

+ +

ServerPackages=multimesh

+ +

ServerPackages=EpicCustomModels

+ +

ServerPackages=TCowMeshSkins

+ +

ServerPackages=TNaliMeshSkins

+ +

ServerPackages=TSkMSkins

+ +

ServerPackages=SkeletalChars

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.UTPure]

+ +

PlayerPacks[0]=BP1

+ +

PlayerPacks[1]=BP4

+ +

PlayerPacks[2]=

+ +

 

+ +

 

+ +

--------------INSTALLATION SKINS Valhalla Avatar--------------

+ +

 

+ +

These +skin pack a number of bugs due to incompatibility with newnet:

+ +

- +flying after the start of the match

+ +

- +"freezing" after death

+ +

- +maybe others

+ +

This +skin pack contains a lot of confusing code. It takes a lot of time and effort +to tidy up this code and make it newnet compatible.

+ +

I +strongly advise against using these skin pack on your server. If you do decide +to do this, then what you need to know:

+ +

- +These skins need to be run without BP1 and BP4.

+ +

- +This skin pack contains such skins as:

+ +

  +Male 1, +Male 2, Male 3, Female 1, Female 2, Nali, Skaarj Trooper, Nali Cow, War Boss, +Xan Mark ][, Boss.

+ +

  +They can +be selected in the game in the "Player Settings" menu after you enter +the server

+ +

- +This skin pack allows clients to see their own set skin on a server, when the +server has no ServerPackage set. Other clients will still

+ +

see +the default skin, unless a ServerPackage on the server is set which sends it to +all clients.

+ +

 

+ +

Copy +the VAHXXX.u (XXX - version FragNewNet) to System folder game.

+ +

 

+ +

UnrealTournament.ini:

+ +

[Engine.GameEngine]

+ +

ServerPackages=VAHXXX

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.UTPure]

+ +

PlayerPacks[0]=VA

+ +

PlayerPacks[1]=

+ +

PlayerPacks[2]=

+ +

 

+ +

 

+ +

--------------USEFUL INFO--------------

+ +

 

+ +

__________Info__________

+ +

FragNewNet +compiled on patch 469b

+ +

Do +not use FragNewnet with XC_Engine mod!!!

+ +

It +is desirable to use FragNewNet with patch 469b (both on the server and on the +client)

+ +

 

+ +

__________Tick +rates & client rate__________

+ +

UnrealTournament.ini:

+ +

[IpDrv.TcpNetDriver]

+ +

NetServerMaxTickRate=65

+ +

LanServerMaxTickRate=65

+ +

 

+ +

[Engine.DemoRecDriver]

+ +

NetServerMaxTickRate=65

+ +

LanServerMaxTickRate=65

+ +

 

+ +

Tick +rates in [IpDrv.TcpNetDriver] and [Engine.DemoRecDriver] should be the same,

+ +

otherwise +there may be a delay in spectator mode when switching players.

+ +

 

+ +

FragNewNet.ini

+ +

[fnnXXX.UTPure]

+ +

MinClientRate=12000

+ +

MaxClientRate=25000

+ +

 

+ +

The +difference between MinClientRate and MaxClientRate must be no more than 15000

+ +

 

+ +

__________Demo +Record__________

+ +

For +correct display of demo rec need to use Demo Manager:

+ +

- +3.5 for client with path 436 +(or 451)

+ +

- +3.5.1 (inside the patch) for client with path 469.

+ +

 

+ +

UnrealTournament.ini:

+ +

[Engine.Engine]

+ +

DemoRecordingDevice=udemo.uDemoDriver

+ +

;DemoRecordingDevice=Engine.DemoRecDriver

+ +

 

+ +

__________Distribution +the game Unreal Tournament '99 with patch 469b official__________

+ +

Download (size 265Mb)

+ +

Instructions: +unzip the archive, launch UnrealTournament.exe game from the System folder.

+ +

 

+ +

__________Bugs__________

+ +

- +On the demorec Rocket Launcher missiles are not destroyed when they hit the +player and fly further.

+ +

- +On demorec Translocator module flight displayed incorrectly.

+ +

- +In spectator mode, when watch the player, multi-kills messages can continue +after the player dies, respawn and kill within a second.

+ +

If +you have other errors, this does not mean that the problem is in FragNewNet.

+ +

Before +making a conclusions, test multiplayer without FragNewNet or without mods.

+ +

Also +you can go to the servers where FragNewNet is configured and working correctly:

+ +

1.FRAG +- DM TDM LMS CTF - BEST MAP --> 195.98.73.166:7777

+ +

2.FRAG +- DUEL  --> 195.98.73.166:5555

+ +

3.DECK16][ +ALL WEAPONS  --> 195.98.73.166:6666

+ +

 

+ +

__________Credits__________

+ +

TimTim +- Original NewNet code.

+ +

Deepu +- Ultimate NewNet code.

+ +

Deaod +- IG+ code.

+ +

MyTulpa, +`esnesi, medor, Zim, vw!rato.skt, Dark191, ue, forsezor, Smiley, pho`, jenova*, +TaglesMalsto, VenoX, BearBeard - Testers.

+ +

ProAsm, +snowguy, Buggie - help with code.

+ +

 

+ +

__________Contact__________

+ +

EMail: +asosed@gmail.com

+ +

Discord: +asosed#3303

+ +
+ + + + diff --git a/Readme.md b/Readme.md new file mode 100644 index 0000000..055c7de --- /dev/null +++ b/Readme.md @@ -0,0 +1 @@ +# FragNewNet (Non-official) Release GIT repository diff --git a/Run.sh b/Run.sh new file mode 100644 index 0000000..cdac536 --- /dev/null +++ b/Run.sh @@ -0,0 +1,201 @@ +#!/bin/bash +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +OUTPUT_DIR="$2" +CFG_FILE="$3" +DEFAULT_CFG_FILE=UnrealTournament.ini +function add_iniKeyEx() { + crudini --set $OUTPUT_DIR/System/$1 $2 __$3 $4 + # Warning: ugly hack with sed to allow multiple key instances + to remove space around '=' + sed -i "s/[[:space:]]*__$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')[[:space:]]*=[[:space:]]*/$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')=/g" $OUTPUT_DIR/System/$1 +} +# !!Warning!! section is not considered +function del_iniKeyEx() { + sed -i "/[[:space:]]*$(echo $3 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')[[:space:]]*=[[:space:]]*$(echo $4 | sed -e 's/\([[\/.*]\|\]\)/\\&/g')/d" $OUTPUT_DIR/System/$1 +} +function add_iniKey() { + add_iniKeyEx $CFG_FILE $1 $2 $3 +} +# !!Warning!! section is not considered +function del_iniKey() { + del_iniKeyEx $CFG_FILE $1 $2 $3 +} +function add_ServerPackage() { + add_iniKey 'Engine.GameEngine' ServerPackages $1 + add_iniKey 'XC_Engine.XC_GameEngine' ServerPackages $1 +} +function del_ServerPackage() { + del_iniKey 'Engine.GameEngine' ServerPackages $1 + del_iniKey 'XC_Engine.XC_GameEngine' ServerPackages $1 +} +function add_ServerActors() { + add_iniKey 'Engine.GameEngine' ServerActors $1 + add_iniKey 'XC_Engine.XC_GameEngine' ServerActors $1 +} +function del_ServerActors() { + del_iniKey 'Engine.GameEngine' ServerActors $1 + del_iniKey 'XC_Engine.XC_GameEngine' ServerActors $1 +} +function getmodprefix() { + UNUFile=$(find $OUTPUT_DIR/System -type f -name "fnn*.u" -exec basename {} \;) + FNNBaseName="${UNUFile%.*}" + echo "$FNNBaseName" +} +function install() { + rsync -a $SCRIPT_DIR/Help/ $OUTPUT_DIR/Help --exclude '.git' + rsync -a $SCRIPT_DIR/System/ $OUTPUT_DIR/System --exclude '.git' + + echo install ok +} +function enable() { + FNNBaseName="$(getmodprefix)" + VAUFile=$(find $OUTPUT_DIR/System -type f -name "VAH*.u" -exec basename {} \;) + VABaseName="${VAUFile%.*}" + BP1UFile=$(find $OUTPUT_DIR/System -type f -name "BP1H*.u" -exec basename {} \;) + BP1BaseName="${BP1UFile%.*}" + BP4UFile=$(find $OUTPUT_DIR/System -type f -name "BP4H*.u" -exec basename {} \;) + BP4BaseName="${BP4UFile%.*}" + add_ServerPackage $FNNBaseName + add_ServerActors $FNNBaseName.NewNetServer + add_ServerPackage $BP1BaseName + add_ServerPackage $BP4BaseName + add_ServerPackage $VABaseName + + echo enable ok +} +function disable() { + FNNBaseName="$(getmodprefix)" + VAUFile=$(find $OUTPUT_DIR/System -type f -name "VAH*.u" -exec basename {} \;) + VABaseName="${VAUFile%.*}" + BP1UFile=$(find $OUTPUT_DIR/System -type f -name "BP1H*.u" -exec basename {} \;) + BP1BaseName="${BP1UFile%.*}" + BP4UFile=$(find $OUTPUT_DIR/System -type f -name "BP4H*.u" -exec basename {} \;) + BP4BaseName="${BP4UFile%.*}" + + del_ServerPackage $FNNBaseName + del_ServerActors $FNNBaseName.NewNetServer + del_ServerPackage $BP1BaseName + del_ServerPackage $BP4BaseName + del_ServerPackage $VABaseName + echo disable ok +} +function enableCG() { + FNNBaseName="$(getmodprefix)" + add_ServerActors $FNNBaseName.NewNetCG + echo enable ok +} +function disableCG() { + FNNBaseName="$(getmodprefix)" + del_ServerActors $FNNBaseName.NewNetCG + echo disable ok +} +function enableDJ() { + FNNBaseName="$(getmodprefix)" + add_ServerActors $FNNBaseName.DoubleJump + echo enable ok +} +function disableDJ() { + FNNBaseName="$(getmodprefix)" + del_ServerActors $FNNBaseName.DoubleJump + echo disable ok +} +function enableGM() { + FNNBaseName="$(getmodprefix)" + add_ServerActors $FNNBaseName.NewNetGH + echo enable ok +} +function disableGM() { + FNNBaseName="$(getmodprefix)" + del_ServerActors $FNNBaseName.NewNetGH + echo disable ok +} +function show_help() { + echo + echo "Usage: $0 { getmodprefix |install | enable | disable } []" + echo " $0 { enableCG | disableCG } []" + echo " $0 { enableDJ | disableDJ } []" + echo " $0 { enableGM | disableGM } []" + echo +} +function check_cfg_file() { + if [ -z ${CFG_FILE} ] + then + echo "CFG_FILE is unset, setting it to $DEFAULT_CFG_FILE" + CFG_FILE=$DEFAULT_CFG_FILE + else + echo "CFG_FILE is set to '$CFG_FILE'" + fi + if [ ! -f $OUTPUT_DIR/System/$CFG_FILE ] + then + echo "$OUTPUT_DIR/System/$CFG_FILE does not exist" + show_help + exit 9999 # die with error code 9999 + fi +} +function check_game_dir() { + ### Check if a directory does not exist ### + if [ -z $OUTPUT_DIR ] + then + echo "incorrect " + show_help + exit 9999 # die with error code 9999 + fi +} +case "$1" in + 'getmodprefix') + check_game_dir + getmodprefix + ;; + 'install') + check_game_dir + install + ;; + 'enable') + check_game_dir + check_cfg_file + disable + enable + ;; + 'disable') + check_game_dir + check_cfg_file + disable + ;; + 'enableCG') + check_game_dir + check_cfg_file + disableCG + enableCG + ;; + 'disableCG') + check_game_dir + check_cfg_file + disableCG + ;; + 'enableDJ') + check_game_dir + check_cfg_file + disableDJ + enableDJ + ;; + 'disableDJ') + check_game_dir + check_cfg_file + disableDJ + ;; + 'enableGM') + check_game_dir + check_cfg_file + disableGM + enableGM + ;; + 'disableGM') + check_game_dir + check_cfg_file + disableGM + ;; + *) + show_help + exit 1 + ;; +esac +exit 0 \ No newline at end of file diff --git a/System/BP1H166.u b/System/BP1H166.u new file mode 100644 index 0000000..c8c11d7 Binary files /dev/null and b/System/BP1H166.u differ diff --git a/System/BP4H166.u b/System/BP4H166.u new file mode 100644 index 0000000..4b82cf1 Binary files /dev/null and b/System/BP4H166.u differ diff --git a/System/VAH166.u b/System/VAH166.u new file mode 100644 index 0000000..1875a4e Binary files /dev/null and b/System/VAH166.u differ diff --git a/System/fnn166.int b/System/fnn166.int new file mode 100644 index 0000000..4943122 --- /dev/null +++ b/System/fnn166.int @@ -0,0 +1,32 @@ +[Public] +;Mutators +Object=(Name=fnn166.ST_mutator,Class=Class,MetaClass=Engine.Mutator,Description="FragNewNet v.166") +Object=(Name=fnn166.NewNetGH,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Grapple Hook") +Object=(Name=fnn166.GiveWeapons,Class=Class,MetaClass=Engine.Mutator,Description="FNN: All Weapons") +Object=(Name=fnn166.GiveArmors,Class=Class,MetaClass=Engine.Mutator,Description="FNN: All Armors") +Object=(Name=fnn166.NoItemsMap,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Items Map") +Object=(Name=fnn166.NoDamageBoost,Class=Class,MetaClass=Engine.Mutator,Description="FNN: No Damage Boost") +Object=(Name=fnn166.TeleportToPoint,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Teleport To Point") +Object=(Name=fnn166.DoubleJump,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Double Jump") +Object=(Name=fnn166.CmdMut,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Commands") +Object=(Name=fnn166.BeaconPlayer,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Beacon Player") +Object=(Name=fnn166.AntiCamp,Class=Class,MetaClass=Engine.Mutator,Description="FNN: AntiCamp") +Object=(Name=fnn166.SpecIdlers,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Idler to Spectator") +Object=(Name=fnn166.UnlimitedAmmo,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Unlimited Ammo") +Object=(Name=fnn166.NoSmoke,Class=Class,MetaClass=Engine.Mutator,Description="FNN: No Smoke RL") +Object=(Name=fnn166.ScoreSave,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Score Save") +Object=(Name=fnn166.DisableNewNet,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Disable NewNet") +Object=(Name=fnn166.DisableWeapons,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Disable NewNet Weapons") +Object=(Name=fnn166.PureAutoPause,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Auto Pause") +Object=(Name=fnn166.RXfix,Class=Class,MetaClass=Engine.Mutator,Description="FNN: RX Weapon Fix") +Object=(Name=fnn166.BrightPlayer,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Bright Player") +Object=(Name=fnn166.XlocMut,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Translocator Toss") + +;Arena +Object=(Name=fnn166.NewNetRA,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Rocket Arena") +Object=(Name=fnn166.NewNetIG,Class=Class,MetaClass=Engine.Mutator,Description="FNN: InstaGib Arena") +Object=(Name=fnn166.NewNetZIG,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Zooming InstaGib Arena") +Object=(Name=fnn166.NewNetSA,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Sniper Arena") +Object=(Name=fnn166.NewNetSDOM,Class=Class,MetaClass=Engine.Mutator,Description="FNN: Shock Domination Arena") +Object=(Name=fnn166.NewNetCG,Class=Class,MetaClass=Engine.Mutator,Description="FNN: ComboGib Arena") +Object=(Name=fnn166.NewNetH4X,Class=Class,MetaClass=Engine.Mutator,Description="FNN: H4X Sniper Arena") diff --git a/System/fnn166.u b/System/fnn166.u new file mode 100644 index 0000000..b0ad6f8 Binary files /dev/null and b/System/fnn166.u differ