Announcement

Collapse
No announcement yet.

foxMod v0.8 - Improved AI, widescreen support, 4-player splitscreen, gamepad support

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    And another mirror post from the Steam forums:
    Originally posted by fox
    Hey everyone! It's been a while, but here's the current list of changes for the upcoming 0.8 release. I've been busy as of late but still like finding time to work on this here and there for kicks. Here goes!
    • General:
    • Fixed audio replication issues that would cause network clients to hear their own jumping, landing and other misc. sounds twice
    • Music now correctly plays for network clients
    • New Music Manager with configurable action/tension music times (see related section)
    • Shuffled some new taunts around and fixed the issue where taunts would play no matter what voice command you picked (broke in v0.7 - whoops!)
    • Ensure all voice messages of a particular category (taunts, status updates, etc.) have been played before allowing them to be reused - so you'll never hear the same taunt twice in a row now
    • Fully functional music support for all splitscreen players
    • Fully functional dialogue and announcement support for all splitscreen players
    • Fully functional spectating support for splitscreen (modes like Duel now work correctly)
    • Fixed FOV issues when driving a Nemesis and changing turret height
    • Fixed FOV issues where a vehicle driver's FOV would be set for all passengers
    • Fixed FOV issues related to spectating another player
    • Chance of using a faster, fancier equip animation for the Enforcer on respawn, depending on number of Enforcer kills
    • First-person weapon now correctly scales with aspect ratio and is no longer positioned or oriented strangely with 16:9 or above ratios
    • Fixed issue where first-person arms would not update with screen aspect ratio change (adjusting resolution, adding/droping local player) until switching weapons
    • Enabled red crosshair hit notifications for Hellbender Gunner (fixed VWeap code)
    • Fixed issue with crosshairs not displaying for splitscreen players until visiting the pause menu at least once
    • Fixed issue with warfare map continually displaying on death in splitscreen until visiting the pause menu at least once
    • Fixed some issues related to CBP3 Domination support and voice extensions
    • Major code cleanup for splitscreen audio code, audio playback in splitscreen is now much more reliable
    • Death messages are now a slightly different color than regular chat messages
    • Players can now cancel an engaged Scorpion boost by pulling back on the throttle
    • Auto-weapon switch is now honored for network hosts when respawning at a weapon locker-enabled spawn
    • Weapons now cycle correctly if using Next/Previous Weapon while the Weapon Picker is up
    • Possible fix for issue where players would be kicked out of a Scorpion upon engaging boost after a bot had previously driven the vehicle
    • Relative steering for all vehicles ("Mixed" now behaves like old "Relative")
    • Dodge key now functions on keyboards (as an alternative to double-tapping movement keys)
    • Improved auto-pitch centering
    • Reorganized options menus with per-player settings up top and shared settings on bottom
    • Per-player controller deadzone config (via INI edits, but it's a start!)
    • Fixed issue where players could get into an AI-piloted Fury at any altitude by simply standing under it
    • Players with auto-taunt enabled now auto-taunt flag captures etc. in a similar manner to foxMod bots
    • Spectator target remembered when advancing to a new round etc.
    • Subtle voice pitch randomization
    • Fixed crash when picking up dropped weapons as a network client
    • Exiting the pause menu is now slightly faster
    • MapMixer main menu no longer breaks after exiting a splitscreen match (MapMixer still has some splitscreen-related issues that need resolving)

      AI:
    • Extended vehicle pathfinding, AI will now attempt to drive vehicles anywhere they'll fit
    • Improved AI vehicle usage all-around, particularly in combat
    • AI correctly pick a different vehicle if someone else is already heading towards one (was disabled in v0.7 due to issues, now fixed - this helps AI get in all of the vehicles at once at the start of a round etc.)
    • AI now make sure healing weapons have ammo when determining if they can heal vehicles
    • AI now remain in their vehicles if near an objective and someone else nearby is on foot (to help cover them)
    • AI now get out of stationary vehicles if they have a pending Titan transformation
    • AI no longer track invisible enemies as reliably
    • Improved AI anti-stuck check on vehicles (don't trigger anti-stuck on a tank that's turning in place, for example, unless it's actually stuck and can't turn)
    • AI look for vehicles more when following player
    • AI no longer wait 8 seconds at the start of a Warfare round to grab the Orb
    • AI now largely prefer enemy unlocked vehicles to help tip vehicle usage in their team's favor
    • AI will no longer run for the Orb if a squad-mate is closer
    • Improved vehicle usage in Deathmatch
    • AI squads now concentrate on objectives (Power Nodes etc.) closest to the majority of the squad (can complete them and contribute faster)
    • AI now always go after a vulnerable Power Core if it's closer than their original objective
    • Even more AI config variables (because we really needed those)
    • AI now bail off of Hoverboards if about to hit ground when falling quickly
    • AI now crouch more often, particularly if it allows them to hit a target they could not otherwise hit
    • AI can now reliably engage targets (enemies and objectives) when flying through the air (e.g. from jump pads etc.)
    • AI can now properly heal an unoccupied enemy vehicle to convert it to their team
    • AI no longer randomly engage Scorpion self-destruct
    • AI use jumping ability of vehicles more often (Manta, Viper, Scavenger, etc.)
    • AI can now switch targets more often as appropriate
    • AI can now search for super pickups while inside a vehicle again
    • AI now properly bail from Hoverboards when passing over inventory to grab it
    • AI now longer blow themselves up with splash damage weapons as often
    • AI now use tow cables when attempting to get in a vehicle as passenger
    • AI now always consider returning enemy Orb in Warfare if appropriate
    • AI now utilize Scorpion, Scavenger and Fury boost functionality
    • AI now keep charging weapons charged as long as possible when they can not attack their target
    • AI now keep Biorifle charged when out of combat
    • Freelance bots may now harass enemies at locked nodes
    • AI now honk horn when looking for passengers
    • Configurable Avoidance Mapping trace method (advanced)
    • Improved Translocator usage slightly
    • Improved jumping out of water behavior

    There's a few things I still need to look into before it's ready for release, but it'll be about some time before the holidays.
    M^vL, I still have a console-based speech binder on the books for the next version. Also, there will be new player options for portrait display (others + self / others / none), as this bugged me as well. Portraits also just plain old work better in general due to some bug-fixes (large queues of banter will display all portraits correctly now, instead of some ending up hidden).

    As always, stay tuned!

    Comment


      #17
      I have been occasionally using the ai mutator for a couple of weeks and i've got to say great job

      Some minor things bugs me out but i'm not even sure you can fix them, here they are anyway :

      - the ai tracking is quite insane with some weapons (minigun and enforcer comes to mind), i've tested with default and custom bots and it does it with both when using your ai. I'm playing Masterful and Inhuman difficulty. Not sure with worse difficulties as they don't aim that good with all the weapons.

      - the ai tracking you for some time while you play hide and gun with them (with snipe or instagib for example)resulting in them hitting you as soon as you reappear (quite frustrating in instagib ), i see it will be nerf a bit in next version so i'm happy with it.

      - ai tend to stick with hammer when you pass next to them with power-up or belt. The issue is that they never change back and they run brainlessly towards you until you kill them.

      Comment


        #18
        It's probably about time I get this thing out the door anyhow...

        https://www.dropbox.com/s/rd830uhbel...foxMod-v08.exe - Installer
        https://www.dropbox.com/s/uv9f22fexytwpu1/foxMod-v08.7z - Manual Zip (see Install Instructions.txt)

        I'll be updating relevant posts (topic, ModDB, etc.) shortly. Enjoy!

        Here is the final changelog:
        General:
        • Fixed audio replication issues that would cause network clients to hear their own jumping, landing and other misc. sounds twice
        • Music now correctly plays for network clients
        • New Music Manager with configurable action/tension music times (see related section)
        • Shuffled some new taunts around and fixed the issue where taunts would play no matter what voice command you picked (broke in v0.7 - whoops!)
        • Ensure all voice messages of a particular category (taunts, status updates, etc.) have been played before allowing them to be reused - so you'll never hear the same taunt twice in a row now
        • Fully functional music support for all splitscreen players
        • Fully functional dialogue and announcement support for all splitscreen players
        • Fully functional spectating support for splitscreen (modes like Duel now work correctly)
        • Fixed FOV issues when driving a Nemesis and changing turret height
        • Fixed FOV issues where a vehicle driver's FOV would be set for all passengers
        • Fixed FOV issues related to spectating another player
        • Chance of using a faster, fancier equip animation for the Enforcer on respawn, depending on number of Enforcer kills
        • First-person weapon now correctly scales with aspect ratio and is no longer positioned or oriented strangely with 16:9 or above ratios
        • Fixed issue where first-person arms would not update with screen aspect ratio change (adjusting resolution, adding/droping local player) until switching weapons
        • Enabled red crosshair hit notifications for Hellbender Gunner (fixed VWeap code)
        • Fixed issue with crosshairs not displaying for splitscreen players until visiting the pause menu at least once
        • Fixed issue with warfare map continually displaying on death in splitscreen until visiting the pause menu at least once
        • Fixed some issues related to CBP3 Domination support and voice extensions
        • Major code cleanup for splitscreen audio code, audio playback in splitscreen is now much more reliable
        • Death messages are now a slightly different color than regular chat messages
        • Players can now cancel an engaged Scorpion boost by pulling back on the throttle
        • Auto-weapon switch is now honored for network hosts when respawning at a weapon locker-enabled spawn
        • Weapons now cycle correctly if using Next/Previous Weapon while the Weapon Picker is up
        • Possible fix for issue where players would be kicked out of a Scorpion upon engaging boost after a bot had previously driven the vehicle
        • Relative steering for all vehicles ("Mixed" now behaves like old "Relative")
        • Dodge key now functions on keyboards (as an alternative to double-tapping movement keys)
        • Improved auto-pitch centering
        • Reorganized options menus with per-player settings up top and shared settings on bottom
        • Per-player controller deadzone config (via INI edits, but it's a start!)
        • Fixed issue where players could get into an AI-piloted Fury at any altitude by simply standing under it
        • Players with auto-taunt enabled now auto-taunt flag captures etc. in a similar manner to foxMod bots
        • Spectator target remembered when advancing to a new round etc.
        • Subtle voice pitch randomization
        • Fixed crash when picking up dropped weapons as a network client
        • Exiting the pause menu is now slightly faster
        • MapMixer main menu no longer breaks after exiting a splitscreen match (MapMixer still has some splitscreen-related issues that need resolving)
        • Fixed server-configurable FOV clamps not being properly enforced
        • Music tracks are now always played under the "Music" audio group (fixes issues with Music Volume slider not affecting some custom music in custom maps)
        • Music tracks are now always guaranteed to loop (fixes issues with some custom music in custom maps stopping if the combat state has never changed)
        • New SendSpeech console command for broadcasting specific voice clips, optionally to team only (see related section)
        • CBP3 Domination Support mutator now has clearer name
        • Proper handling of vanilla clients - vanilla clients connected to a foxMod server will continue to use vanilla UT gamepad handling, vehicle controls, etc.
        • foxMod now reports conflicts with other mods via both in-game messages and logging to Launch.log, including details of what caused the conflict and which features may not be available as a result
        • Added config vars "bShowPortraits" and "bShowOwnPortrait" in UTGame.ini for displaying voice portraits and displaying own portrait respectively
        • Translocator can now switch to previous weapon by pressing fire while holding alternate fire, and vice versa (like UT'99 / 2kX)


        AI:
        • Extended vehicle pathfinding, AI will now attempt to drive vehicles anywhere they'll fit
        • Improved AI vehicle usage all-around, particularly in combat
        • AI correctly pick a different vehicle if someone else is already heading towards one (was disabled in v0.7 due to issues, now fixed - this helps AI get in all of the vehicles at once at the start of a round etc.)
        • AI now make sure healing weapons have ammo when determining if they can heal vehicles
        • AI now remain in their vehicles if near an objective and someone else nearby is on foot (to help cover them)
        • AI now get out of stationary vehicles if they have a pending Titan transformation
        • AI no longer track invisible enemies as reliably
        • Improved AI anti-stuck check on vehicles (don't trigger anti-stuck on a tank that's turning in place, for example, unless it's actually stuck and can't turn)
        • AI look for vehicles more when following player
        • AI no longer wait 8 seconds at the start of a Warfare round to grab the Orb
        • AI now largely prefer enemy unlocked vehicles to help tip vehicle usage in their team's favor
        • AI will no longer run for the Orb if a squad-mate is closer
        • Improved vehicle usage in Deathmatch
        • AI squads now concentrate on objectives (Power Nodes etc.) closest to the majority of the squad (can complete them and contribute faster)
        • AI now always go after a vulnerable Power Core if it's closer than their original objective
        • AI now prefer to grab the enemy flag when attacking even if the friendly flag is taken (more realistic)
        • Even more AI config variables (because we really needed those)
        • AI now bail off of Hoverboards if about to smack into the ground at high velocity (to avoid falling off)
        • AI now crouch more often, particularly if it allows them to hit a target they could not otherwise hit
        • AI no longer spam jump when weilding splash-damage weapons (predictable and bad for evading projectiles)
        • AI can now reliably engage targets (enemies and objectives) when flying through the air (e.g. from jump pads etc.)
        • AI can now properly heal an unoccupied enemy vehicle to convert it to their team
        • AI no longer randomly engage Scorpion self-destruct
        • AI use jumping ability of vehicles more often (Manta, Viper, Scavenger, etc.)
        • AI can now switch targets more often as appropriate
        • AI can now search for super pickups while inside a vehicle again
        • AI now properly bail from Hoverboards when passing over inventory to grab it
        • AI now longer blow themselves up with splash damage weapons as often
        • AI now use tow cables when attempting to get in a vehicle as passenger
        • AI now always consider returning enemy Orb in Warfare if appropriate
        • AI now utilize Scorpion, Scavenger and Fury boost functionality
        • AI now keep charging weapons charged as long as possible when they can not attack their target
        • AI now keep Biorifle charged when out of combat
        • Freelance bots may now harass enemies at locked nodes
        • AI now honk horn when looking for passengers
        • AI no longer toss weapons to opponents in Deathmatch (whoops!)
        • Configurable Avoidance Mapping trace method (advanced; see related section)
        • Improved Translocator usage slightly
        • Improved jumping out of water behavior

        Comment


          #19
          Is that the changelog from 0.7 to 0.8? Impressive work

          Comment


            #20
            Indeed it is. Thanks!

            Also, since I mentioned this in the Steam thread and forgot to here, the source for this is also on a BitBucket repo at https://bitbucket.org/alexstrout/foxmod-ut3 - in contrast to the source provided within the mod archive, this will always contain the latest development snapshot. I generally work on this here and there at my leisure as a fun side-project, but anyone is welcome to poke around if they wish.

            Comment


              #21
              Thanks for the update, that really is a great mod!

              Comment


                #22
                Epic should hire you. And pay you really well.

                This mods includes many things that the game should have had in its official release.

                Comment


                  #23
                  Wow, tried a dozen of deathmatches and one Warfare map: everything is clean!
                  The new additions are absolutely fantastic. I love it how the Ai destroy the enemy orb, repair vehicles, get out to support team members, ect, ect... This is definitely a must-have mod. Anyone still playing UT3 should get it. It won't alter the gameplay, just make offline games 200 times better.

                  Again, thanks a lot for this awesome mod!

                  Comment


                    #24
                    great work...........

                    Comment


                      #25
                      Hey everyone - for those interested, the first PS3 test for foxMod is now available. Check it out at https://www.dropbox.com/s/1in6xjna7n...v08-PS3Test.7z

                      This is my first attempt at cooking console packages in Unreal, and I do not actually own a PS3 to test this on - so I'm flying blind and there's a good chance it will not work.
                      Please let me know what sort of problems crop up (or if it miraculously does work), I'm quite curious!

                      Comment


                        #26
                        Does it have configuration sections in the ini file? That never works. I tried to cook a mutator with a configuration scene for instance (MutateSpec) and euchreplayer23 tested it. So many tests but none worked.

                        Comment


                          #27
                          Config screens don't work at all on PS3 as RattleSN4K3 said. The mutators here need/have a config screen? I have to play it on PC i guess to see. Anyways can I alter your code to get it to work on the PS3? i.e. remove all the configurable stuff. Set your stuff inside the default properties.
                          This stuff also can cause some headaches for the PS3:
                          `define CTFClass
                          `include(foxSquadAICommonVars.uci);

                          I have tried your file and cooked my own version based upon your files, neither work properly.

                          Comment


                            #28
                            I omitted the various class' config variables, as they by default mirror their respective defaultproperties blocks and can't be changed on PS3 anyways. (If that's what you're asking. :P )

                            This is what I had in PS3-UTGame.ini:
                            Code:
                            [UTMutator_foxSplitScreen UTUIDataProvider_Mutator]
                            ClassName=foxMod.UTMutator_foxSplitScreen
                            FriendlyName=foxMod v0.8 (PS3) - Splitscreen / Controller / FOV
                            Description=Hor+ FOV widescreen support, splitscreen support (2-4 players drop-in/drop-out), improved music and announcement handling, enhanced controller support and additional controls. (PS3 Test - some features (or everything) may not work!)
                            GroupNames=FOXMOD
                            UIConfigScene=
                            bStandaloneOnly=False
                            BitValue=0
                            bRemoveOn360=False
                            bRemoveOnPC=False
                            bRemoveOnPS3=False
                            
                            [UTMutator_foxAI UTUIDataProvider_Mutator]
                            ClassName=foxMod_AI.UTMutator_foxAI
                            FriendlyName=foxMod v0.8 (PS3) - AI / Voice
                            Description=New AI behaviors alongside various bugfixes and improved pathfinding, teamwork, combat, vehicle usage and objective understanding. Also optionally extends voices for more taunts and proper speech from Necris and Krall bots. (PS3 Test - some features (or everything) may not work!)
                            GroupNames=FOXMODAI
                            UIConfigScene=
                            bStandaloneOnly=False
                            BitValue=0
                            bRemoveOn360=False
                            bRemoveOnPC=False
                            bRemoveOnPS3=False
                            
                            [LoadForAllGameTypes]
                            Package=foxMod
                            Package=foxMod_AI
                            Does that look right?

                            Comment


                              #29
                              Originally posted by euchreplayer23 View Post
                              I have tried your file and cooked my own version based upon your files, neither work properly.
                              Ah, ****. Worth a shot I guess.

                              Originally posted by euchreplayer23 View Post
                              Config screens don't work at all on PS3 as RattleSN4K3 said. The mutators here need/have a config screen?
                              Nope, nor are they needed. All classes have good defaults under defaultproperties, which is what any INI-config vars are set to for release (the only reason they're present in that INIs that I ship is convenience for the user to edit)

                              Edit: Except for the mutators themselves for FriendlyName etc. - for whatever reason I only set those in the INIs, and I forget why.

                              Originally posted by euchreplayer23 View Post
                              Anyways can I alter your code to get it to work on the PS3?
                              Definitely, tear it up. This is also hosted at https://bitbucket.org/alexstrout/foxmod-ut3 if you happen to use Mercurial and would like to just fork the project for convenience.

                              Edit Edit: foxMod's "client features" (i.e. splitscreen support, FOV settings, etc.) rely on INI edits to the menu sections under UTGame.ini, since the only thing available to splitscreen players is the in-game menu. I went into this assuming such things would not work on the PS3, nor did I plan to get them to work - I figured it'd be good to at least get the AI on PS3, as well as some of the code-only changes (like better splitscreen audio handling, since PS3 has 2-player splitscreen support anyway)

                              Comment


                                #30
                                This is wrong, the ps3 will only load the "first" package:
                                Code:
                                [LoadForAllGameTypes]
                                Package=foxMod
                                Package=foxMod_AI
                                What i recommend if you are loading 2 .u files in 1 ps3 file. The ofcourse you would have two cook 2 .u files for the PS3 into the same place.
                                Code:
                                [LoadForAllGameTypes]
                                Package=foxMod
                                
                                [LoadForAllGameTypes]
                                Package=foxMod_AI
                                But really the code should look like this, I never even dreamed you could get 4 players onto 1 PS3(?). Cooking 2 .u file into 1 PS3 is sometimes harder than it seems. Just avoid doing it if you can.

                                Code:
                                [UTMutator_foxAI UTUIDataProvider_Mutator]
                                ClassName=foxMod_AI.UTMutator_foxAI
                                FriendlyName=foxMod v0.8 - AI / Voice
                                Description=New AI behaviors alongside various bugfixes and improved pathfinding, teamwork, combat, vehicle usage and objective understanding. Also optionally extends voices for more taunts and proper speech from Necris and Krall bots. 
                                bRemoveOn360=False
                                bRemoveOnPC=False
                                bRemoveOnPS3=False
                                
                                [LoadForAllGameTypes]
                                Package=foxMod_AI
                                I will narrow down what the mutator is selecting to find out where the PS3 is crashing. Find something that works then add/subtract where necessary.

                                This will be my first try, loading the new AI with nothing else.
                                Code:
                                function InitMutator(string Options, out string ErrorMessage)
                                {
                                	local UTTeamGame TG;
                                	local UTGame UTG;
                                
                                	Super.InitMutator(Options, ErrorMessage);
                                
                                	//Team Game TeamAI Overrides (sets SquadAI and randomized orders)
                                	TG = UTTeamGame(WorldInfo.Game);
                                	if (TG != None) {
                                		OldTeamAIType = TG.TeamAIType[0];
                                		bMultiTeamSupportRequired = TG.DefaultEnemyRosterClass == "UTMultiTeam.UTMT_TeamInfo";
                                		if (TG.TeamAIType[0] == class'UTCTFTeamAI') {
                                			TG.TeamAIType[0] = class'foxCTFTeamAI';
                                			TG.TeamAIType[1] = class'foxCTFTeamAI';
                                		}
                                		else if (TG.TeamAIType[0] == class'UTOnslaughtTeamAI') {
                                			TG.TeamAIType[0] = class'foxOnslaughtTeamAI';
                                			TG.TeamAIType[1] = class'foxOnslaughtTeamAI';
                                		}
                                		else if (TG.TeamAIType[0] == class'UTGreedTeamAI') {
                                			TG.TeamAIType[0] = class'foxGreedTeamAI';
                                			TG.TeamAIType[1] = class'foxGreedTeamAI';
                                		}
                                		else if (bForceActivate || TG.TeamAIType[0] == class'UTTeamAI') {
                                			TG.TeamAIType[0] = class'foxTeamAI';
                                			TG.TeamAIType[1] = class'foxTeamAI';
                                		}
                                	}
                                }

                                Comment

                                Working...
                                X