Announcement

Collapse
No announcement yet.

Improvements for Ragdoll Madness Mutator?

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

    Improvements for Ragdoll Madness Mutator?

    This is a mutator which Great Emerald could need for his UT3 style mutator.

    Post all problems with this mutator here, improvements could also be useful!

    That's what we could find out so far:
    1. Does not work online that well.
    2. Touching a wall in ragdoll mode -> ca. -20hp
    3. No bot support like in UT3. -> possible solution: Tactical Shadows mutator
    4. Feigning death can deal damage to the player.
    5. Feign death: Falling into a damage volume crashes the game! -solved
    6. You can only feign your death for a limited period of time, standard: (I think it was) 30 sec, can be changed ingame in mutator properties
    7. Ragdoll mode: You can walk after some time, independent of the movement of your body, e.g. falling.
    8. Bots should be able to feign death depending on situation to ambush the player later. -> possible solution: Ragdoll Weeds mutator
    9. Bots and players can shoot while in ragdoll mode in online games.
    10. No 1st person view. -solved

    #2
    If you are thrown to the ground in UT3, you can only get up if your ragdoll stops moving, e.g. you were blown off a cliff and arrived on the ground. In ragdoll madness, this is time based, so you are "radolled" e.g. 3 seconds and get up after that, even if you are still in air or rolling down a hill. This is a major thing that should be improved.

    To get around Problem number 3: I have a mutator called "tactical shadows", it is generally the opposite of bright players and tries to bring back the tactical element of hiding in shadows and surprising enemies. This also has bot support and detects certain dark areas in maps to enable players hiding from bots.
    Maybe it is possible to use a similar method for checking if bots have seen a player and attack him/her/it (depending on the player model ) or even if it would make sense for a bot to let itself drop to the ground and stay there a couple of seconds. Maybe if the bot is in a group of bots and some of them have been killed simultaneously, e.g. because of a rocketlauncher attack, so it is not obvious that it is a fake death because of a lacking death message.
    I hope you understand what I mean

    Comment


      #3
      Bah, bot support wouldn't be much of an issue, as long as you have it working, bots can use it. Just that creating your own bots might create certain incompatibilities.

      Comment


        #4
        Originally posted by Barionyx View Post
        If you are thrown to the ground in UT3, you can only get up if your ragdoll stops moving, e.g. you were blown off a cliff and arrived on the ground. In ragdoll madness, this is time based, so you are "radolled" e.g. 3 seconds and get up after that, even if you are still in air or rolling down a hill. This is a major thing that should be improved.

        To get around Problem number 3: I have a mutator called "tactical shadows", it is generally the opposite of bright players and tries to bring back the tactical element of hiding in shadows and surprising enemies. This also has bot support and detects certain dark areas in maps to enable players hiding from bots.
        Maybe it is possible to use a similar method for checking if bots have seen a player and attack him/her/it (depending on the player model ) or even if it would make sense for a bot to let itself drop to the ground and stay there a couple of seconds. Maybe if the bot is in a group of bots and some of them have been killed simultaneously, e.g. because of a rocketlauncher attack, so it is not obvious that it is a fake death because of a lacking death message.
        I hope you understand what I mean
        Yes I think I understand you. You mean that bots should feign their death in certain situations with a lot of action where you don't pay attention to the death messages (because there is none displayed) so that they can attack you from behind after some time, right? You could use Ragdoll Weeds as a base for that, I think. It throws you to the ground for a period of time, you can adjust, but only when you're hit by special damage types, e.g. rocket explosion, Redeemer Warhead explosion etc. And I have tactical shadows too, but then I would leave out the "Invisible to bots"-message. There's nothing like that in UT3 and in some situations it's a bit annoying when you're hiding and you have this message all the time...

        EDIT: Added to the list.

        Comment


          #5
          About falling while feigning death - simple fix, if (base == None) return, settimer(5, false).

          Comment


            #6
            Originally posted by Sly. View Post
            [...] You mean that bots should feign their death in certain situations with a lot of action where you don't pay attention to the death messages (because there is none displayed) so that they can attack you from behind after some time [...] I would leave out the "Invisible to bots"-message. There's nothing like that in UT3 and in some situations it's a bit annoying when you're hiding and you have this message all the time...[...]
            Exactly! Now we only need coders for that... Maybe the author of ragdoll madness himself?

            Comment


              #7
              I'll send him a PM. Then we've only to wait for the answer.

              Comment


                #8
                Originally posted by Sly. View Post
                I'll send him a PM. Then we've only to wait for the answer.
                Don't worry =)

                That's quite a surprise. I always thought my mutator would be the kind of gadget people play for a month or two and then forget. You are making me a honour, lol.

                Actually, I already had made a second version of the mutator at the time, with some of the above issues already fixed and several new things. The reasons I did not release it was for being perfectionist and therefore took quite some time. Then, as the mutator seemed good enough for a second release, well, the thread on the mutator had already sunken, and as I said above, I thought it was already forgotten.

                I'll work back on it then. I'll however not really focus on two things: online compatibility and bots using feign death. Online compatibility, simply because UT2004 technically doesn't replicate ragdolls (since it was only designed for death effects), it's all client computed. There is a much better way of doing it than in my mutator, but it will always be unstable. I will think about it though.
                For bots support, I think that's quite a big work, I would have to replace the whole AI and hundreds of script lines in order to get an intelligent use of the feign death. I might also think about it, but it really won't be my priority. Sorry =(


                Thanks a lot for playing my mutator after two years! You've made my day =)

                Comment


                  #9
                  Well, a simple solution for bot support (in terms of having the bot not attacking you the same way as a living player when you are a ragdoll) would be probably to tweak the Visibility variable of the Pawn class so that the bots are less likely to spot you (without making it impossible). After all this is supposed to be used against humans.

                  I also have never seen a situation in UT3 where a bot would have feigned death.


                  The replication is an issue, though. Does anybody have an idea how much the location of ragdolls differs between the clients when they are calculated independently? Is it much or is a simple ragdoll at about the same place on the clients? If it depends on Physic Detail settings, then you might need to force them to a necessary value on all clients.
                  And then you could maybe use something like Wormbo's Unlagged Instagib mutator to calculate the hits on the ragdoll clientsidely as it's not replicated. That's not a fine solution, but a solution after all.
                  In that case would it be enough if a player hits the ragdoll on his local machine, then the ragdolled player would take the damage and be de-ragdolled at the location where the ragdoll was hit by the client.


                  Nice to see that legacy coders still care about their work after all the time that has passed.

                  Comment


                    #10
                    I found another bug which is a bit annoying: Bots and human players can still shoot while in ragdoll mode, though they shouldn't, but it only seems to appear in online games. Added it to the list. I hope you get it working online, though. That would be really great!

                    Comment


                      #11
                      For bot support, I don't believe you'd need a lot of code to hide players (just a simple check if the pawn is ragdolled in Bot's event SeePlayer(Pawn SeenPlayer)). Making bots feign is another story, but it could be done as well - it's just a matter of deciding when the bot should do that.

                      I found another bug which is a bit annoying: Bots and human players can still shoot while in ragdoll mode, though they shouldn't, but it only seems to appear in online games.
                      Maybe that was the inspiration for Second Wind in Borderlands?

                      Comment


                        #12
                        The replication is an issue, though. Does anybody have an idea how much the location of ragdolls differs between the clients when they are calculated independently?
                        Quite a lot IMO, because the ragdoll will not start at the same time for all clients. I think clients will still be able to shoot and hit the ragdoll where they see it. I'm not sure what would happen if a ragdoll stops existing (like falling into a lava pool) for one client and not another; that could rise quite problematic issues.
                        I think one possible work-around would be to let the ragdoll be computed server side, make it invisible, and spawn a replicated actor which has the same model than the player and constantly updates its bones position from the server-side ragdoll to the clients. However, I'm not sure if that is totally safe, and it would probably have a heavy bandwidth hit, even if only some of the limbs are replicated.

                        I hope you get it working online, though. That would be really great!
                        I feel guilty that you attempted to play online! I have not even planned the online compatibility, since I knew the ragdolls weren't designed for it

                        I think I'll first update the mutator without network compatibitity, then start everything from scratch for another more net-friendly version.

                        For bot support, I don't believe you'd need a lot of code to hide players (just a simple check if the pawn is ragdolled in Bot's event SeePlayer(Pawn SeenPlayer)). Making bots feign is another story, but it could be done as well - it's just a matter of deciding when the bot should do that.
                        Making players less noticeable by bots is already a fixed issue. What I really wouldn't do right now is allowing bot to use feign death strategically.
                        BTW, cool to see you there GreatEmerald, still playing the Might and Magic series?

                        Comment


                          #13
                          Originally posted by Kognefaure View Post
                          Making players less noticeable by bots is already a fixed issue. What I really wouldn't do right now is allowing bot to use feign death strategically.
                          BTW, cool to see you there GreatEmerald, still playing the Might and Magic series?
                          Yea, in order for them to use it strategically, you have to know how to use it yourself... And that's rather difficult since it's not often that people use this feature, and it didn't have bot support in any of the Unreal games. The only example that comes to mind are Skaarj feigning death after getting hit with the Shock Rifle.
                          Yeap, still playing and recording, and not going to stop soon

                          Comment


                            #14
                            Not only Skaarj feign their death, Kralls also do it and I use this feature very often in UT3.
                            I feign my death everytime a Manta wants to pancake me in UT3. In most cases the Manta can't hit me, cuz I'm lying on the ground and when the bot or player tries to shoot at me, he gets killed (not everytime but it works in most cases ) It's quite useful, especially when you have no Avril Another example: A Goliath wants to kill you by crushing you. You feign your death and you're under the Goliath. There's a big chance that you survive when it explodes or wants to hit you with its chains. Or you can jump off a cliff or ledge and by hitting some other ledges while falling you can survive without taking damage! It's a bug but it's very useful.
                            I could list much more examples I use in online games

                            Comment


                              #15
                              All those examples are just because of collision, and feigning death is not about it! You could do the same things just fine if it wasn't there and instead you had prone from Unreal II. The actual use of feigning death would be in a firefight when you want to either surprise your opponents by getting up behind them, or avoid the conflict until it's clear and you can go take the health pack.

                              Comment

                              Working...
                              X