Page 2 of 4 FirstFirst 1234 LastLast
Results 11 to 20 of 35

Thread: Problematic Mods

  1. #11

    Default

    And can you post the script of that spec mod?
    @Sor

    This is the link for the spec mod. At the last page the 'final' code
    is posted.
    At least I think, there have been quite a few on-the-fly modifications.

    The problem is that a lot of times an incorrect player is being specced..

    http://www.x-null.net/forums/showthr...pectate-player

  2. #12

    Default

    I think this topic was intended for mods that were existing before Reborn, and that are now having issues when running it with Reborn. Right James?

    Anyway, as far as the spec mod, It wasn't ever finished. There are more bugs in it that aren't listed too. I don't think Elgan plans on finishing it.

  3. #13
    Administrator James's Avatar
    Join Date
    May 2010
    Location
    on the intraweb
    Posts
    3,180

    Default

    yes armageddon that's correct, but if there is anything we can do to help out with any mods, that's fine as well.

    I think Possimos did a fine job of explaining the steps. My scr scripting is fairly limited, but I'll see if there is anything I can do to try and fix it.
    Edit the spectator script of the game so it skips players who have the value 1 for self.mef_gstate=="GSTATE_DEAD" (This is a custom state variable in the mefy script. Alive means non-frozen. Dead means frozen and dead.)


    This seems like the best solution I would say. So that should resolve the monkey on back solution.

    In spectator.scr just change this
    Code:
    
    
    Code:
    	local.str = "Press " + local.switchtarget + " to follow a different player."
    	
    	if (level.mef_settings["observe_freefloat"])
    	{
    		local.str += (" Press " + local.freefloat + " to free spectate.")
    	}
    to this
    Code:
    
    
    Code:
    	local.str = "Press " + local.switchtarget + " to follow a different player."
    	
    	if ((level.mef_settings["observe_freefloat"]) && !self.mef_gstate == "GSTATE_DEAD")
    	{
    		local.str += (" Press " + local.freefloat + " to free spectate.")
    	}
    Would that work?

    or
    this line
    Code:
    	while (local.player != NULL && local.player.dmteam == local.team && local.player.mef_spectator && !level.mef_disablespectating)
    to
    Code:
    	while (local.player != NULL && local.player.dmteam == local.team && local.player.mef_spectator && !level.mef_disablespectating && !self.mef_gstate == "GSTATE_DEAD")

  4. #14

    Default

    I take it this is the spectator.scr from the mod?

    In that case, no it wont work. This file only has effect on the frozen people who are spectating. It needs to be changes in the script that refers to the dmteam==spectator. This is a script which runs on all gametypes (the normal spectating mode). I never found this script and not sure if it exists, it probably is in the binaries.
    :)

  5. #15
    Testing Crew Member dax's Avatar
    Join Date
    Aug 2010
    Location
    liverpool uk
    Posts
    549

    Default

    hi guys ....
    from what i have observed on our server, the problem arises when more than one player, frozen or spectating
    is speccing through the same live player.
    i know it might be a bit simplistic but ,is it not possible to only allow one spectator per player ?
    so if a live player already has someone speccing then jump to the next .
    that would eliminate both problems, camera angle /wrong name,and monkey on back .
    just a thought ....
    =COH=Ubersoldier/Dax
    mess with the best ,die like the rest !!!

  6. #16
    Über Prodigy & Developer Razo[R]apiD's Avatar
    Join Date
    May 2010
    Location
    Poland, Lublin
    Posts
    3,257

    Default

    The best thing, would be to implement normal speccing instead of spawning a player model on the back. The way I see this is that FT spawns a model on the back and hides it.
    Then it allows dead players to go through that dead models to see the players back so it's a spectator hack.

    The AntiWH checks whether the entity is just a model or player. So the monkey on back doesn't show up right away. If it didn't check for this, you would always see the models on the player's back. However when player starts to hack-spec, then it somehow must change the properties of this model or something so AntiWH see it as a legit player and unhides him if second player spectates the same person because for AntiWH - second spectator can see the first spectator. Then the model stays visible and you have the monkey on back issue.

  7. #17
    Developer Sor's Avatar
    Join Date
    Aug 2010
    Location
    The Medieval City of Bruges
    Posts
    747

    Default

    You're quite right... why can't mefy glue regular spectators instead of living, invisible and notsolid players to whatever frozen or yet to be frozen guy they want to observe, then the monkey problem might be resolved once and for all.

  8. #18

    Default

    There will be some functionality problems. The only one I can think of right now is that you wont be able to spectate frozen bodies anymore which will make it harder to find melts. Not that big of a problem.
    Though I think converting it will be a huge task since it is one of the main features of the mod. You wont be able to use the mefystates any more...
    :)

  9. #19
    Developer Sor's Avatar
    Join Date
    Aug 2010
    Location
    The Medieval City of Bruges
    Posts
    747

    Default

    Not necessarily, the commands he uses on the invisible player who are alive, can also be used for normal spectators. My guess is he used this method because then he could fake the 'enter' key to switch positions that would include frozen players.
    The only real problem here is finding an alternate key, or somehow temporarily disabling that enter function (for the latter we'll need some help from Razo I'm afraid) while spectating.

    Though I've thinking about this problem in a different way. We know mefy's spectators should always be invisible, and it always worked until you'd update to 1.12 patch.
    So like you said, Razo, you check for players, and mefy's spectators are living players, so they get caught up in the antiWH stuff which inevitably makes them visible again at some point thus causing the monkey on the back problem.
    If you could check if the player is alive, not on the spectator team AND has the var .mef_spectator set to 0 or NIL. Then mefy's spectators, with .mef_spectator set to 1, would excluded from the wallhacking stuff.
    If you already done this, then either var isn't being recognized and always ends up NIL... or, I'm wrong and the problem is a lot more complicated than that.
    Last edited by Sor; April 14th, 2012 at 05:38 AM.

  10. #20
    Über Prodigy & Developer Razo[R]apiD's Avatar
    Join Date
    May 2010
    Location
    Poland, Lublin
    Posts
    3,257

    Default

    We don't have an access to scripting variables from engine yet. I'd need to to create a scripting command like "skipantiwh" or something like this. Then I could skip the checks, but isn't it possible to somehow use camera instead of real players to have a working ft spectator?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •