Tremulous Forum

Mods => Mod Releases => Non-Gameplay Changing => Topic started by: FooBar on February 26, 2007, 04:57:26 pm

Title: FooBar's Patches/Mods
Post by: FooBar on February 26, 2007, 04:57:26 pm
*Updated* - March 6 - Added links to patches.  

These patches and many more can also be found on the Tremulous Patch Tracker (http://www.mercenariesguild.net/patches/).

Right now all of these patches are testing on AVALANCHE (http://avalanche.server.googlepages.com).

AntiDecon - v0.90

AntiDecon was intended to prevent catastrophic decon events like loss of the reactor or overmind due to decon at some inopportune moment.  As it turned out, this patch is slightly an anti-decon measure and mostly a modification of the voting system.  The anti-decon system is simple:[list=1]
Anti-deconner option. Defaults to 0. Set g_antiDecon 1 to enable the following features:[list=a]
Defaults to 0.  Set g_newbieNumber 1 to enable the following feature:[list=a]
Defaults to "Newbie#".  This options sets the prefix of the name that will be automatically assigned to UnnamedPlayers.
This message will be displayed in a dialog window after the client disconnects.  The default value is "This is a pure server.  Your client is missing files or corrupted.  Try turning on AutoDownload."[/list:o]Credits : by FooBar.


RatingSystem - v0.90

RatingSystem-0.90.zip (http://avalanche.admin.googlepages.com/RatingSystem-0.90.zip) - for SVN 879 & 899

RatingSystem is intended as a device to display how much a player helps or hurts their own team.  A new column called "Rating" is added to the client scoreboard.  Each time a player dies, their "worth" is divided among all players based upon how much damage was done, as follows:[list=1]
Title: FooBar's Patches/Mods
Post by: Rawr on February 27, 2007, 12:11:56 am
Ahh, Very nice FooBar.
I am looking foward to these, perhaps to be placed on SST :P
Title: FooBar's Patches/Mods
Post by: Odin on February 27, 2007, 12:33:32 am
The latest SVN code renders your decon protection obsolete(g_markDeconstruct).

NewbieNaming is obsolete because I think the latest SVN forces UnnamedPlayers to choose a name at the server connection screen(at least on our }MG{ servers).
Title: FooBar's Patches/Mods
Post by: FooBar on February 27, 2007, 01:22:55 am
I'm pretty sure that the latest svn doesn't have this forced-naming thing you're talking about.  Most likely it's a custom thing on your server.  You'd be surprised how much custom stuff is floating around that never even goes into Bugzilla, let alone SVN.

Decon protect isn't obsolete, it will just have to be tweaked a little bit.  Why? Correct me if I'm wrong, but even with g_markDeconstruct a player can still decon the reactor in one place and remake it somewhere useless.  Decon protection makes sure that any potentially catastrophic move has the support of the team.  It will be fairly straightforward to tweak it for g_markDeconstruct.

Personally, even if no one wants their patches in Bugzilla I would love to see some kind of patch repository (yes, I know about this one (http://wraths.dyndns.org/downloads/code/patches/)) where admins and hobby-coders can put up any clever coding they've done, whether they think it's good enough for bugzilla or not.  Hmm... kind of like this forum....
Title: FooBar's Patches/Mods
Post by: kevlarman on February 27, 2007, 01:28:37 am
Quote from: "Odin"
NewbieNaming is obsolete because I think the latest SVN forces UnnamedPlayers to choose a name at the server connection screen(at least on our }MG{ servers).
actually i stole that code from r1ch, not svn, and it forces them to choose ea name  before joining a team. in 1.2 there will be a menu similar to ET's the first time trem is run, that asks you to choose a name (and it defaults to your username on *nix systems).
Title: FooBar's Patches/Mods
Post by: kotoko on February 27, 2007, 12:56:09 pm
Can you release the patch soon :) ? More ppl testing help you to debug faster XD
Title: FooBar's Patches/Mods
Post by: Paradox on February 27, 2007, 03:29:46 pm
Send it to Risujin, so he can add it to his melting pot. Antidecon sounds more like a g_markdeconstruct and vote hybrid, and i dont know how much i will like the vote, but others might. As for the noob naming, i have wanted this for a long time. Finally, the worth sounds interesting, but a little over complicated. I think that retribution should just work like what TJW coded up for ETPub
Title: FooBar's Patches/Mods
Post by: FooBar on February 27, 2007, 04:41:45 pm
I added a link to the Newbie-Naming patch.  There's a small bug with the Newbie-Naming patch but it won't be noticable unless you run a pure server with custom client qvms.

I'm going to wait until the weekend to post the other patches so I can revise them.  I have a really busy week this week, and it looks like there are some changes I'll need to make to these patches based on feedback, and I won't have time until the weekend.

I'm going to revise AntiDecon to work within g_markDeconstruct.  Basically all it will do is add a 10-second vote when someone tries to move the Reactor/OM.  I think I will add Martin Doucha's team vote patch (https://bugzilla.icculus.org/attachment.cgi?id=1075) from bug 2867 (https://bugzilla.icculus.org/show_bug.cgi?id=2867) to my patch, so that team votes will work with the standard F1/F2 keys when there's no global vote going on.

RatingSystem is not part of Retribution.  They are entirely separate.  The "rating" is simply intended to rate how "good" a player is, or how much they're helping their team.  It's just a number to display on the screen that gives a better idea of a player's skill than the "kills" column.  It will get more complicated, not less, because I would like to include points for structures built/deconned/destroyed, and other things.

Eventually I want it to be good enough that players can forget about where the number comes from and just assume that it's usually a fair ranking of skill or at least good team play.  Obviously any rating system will have flaws -- I just wanted to make a system with fewer flaws than the "kills" system.  But I kept the kills column because people like it.  :)
Title: FooBar's Patches/Mods
Post by: vcxzet on February 27, 2007, 05:04:29 pm
lol
Title: FooBar's Patches/Mods
Post by: Risujin on February 28, 2007, 03:40:02 pm
Great work! Can't wait to get my hands on your patches. 8)
Title: FooBar's Patches/Mods
Post by: vcxzet on February 28, 2007, 05:30:33 pm
Quote from: "Risujin"
Great work! Can't wait to get my dirty hands on your patches. 8)
Title: FooBar's Patches/Mods
Post by: FooBar on March 06, 2007, 04:50:38 pm
Okay, I've added links to all patches except the Anti-Decon patch, which is undergoing revision.  I expect the Rating system will also be changed fairly soon.

Any coders here who are working on patches or mods should consider contributing to the Patch Tracker (http://www.mercenariesguild.net/patches/) hosted by the Mercenaries' Guild.  Thanks to khalsa for setting that up!
Title: Re: FooBar's Patches/Mods
Post by: benmachine on March 06, 2007, 07:01:37 pm
Quote from: "FooBar"
Code: [Select]
   (world)       (4/25) * 1.00  =  0.16 points (unawarded)

    Player A  : - (5/25) * 1.00  = -0.20 points

    Player H1 : +(10/25) * 1.00  = +0.40 points
    Player H2 : + (6/25) * 1.00  = +0.24 points
    ----------                     ------------
    Player D  :                  = -0.64 points (total awarded to enemies)


Hm. I think it would be best to give player D -0.44 points (i.e. factor in the teamdamage) not because of any equality reasons but because without doing that you get a net loss in rating across both teams. Factoring in teamdamage will ensure that rating numbers always centre around 0 as any points lost by one player are gained by another, which, in my opinion, would result in a more logical system.
Title: FooBar's Patches/Mods
Post by: FooBar on March 06, 2007, 09:06:56 pm
Nice idea.  I'm working on the next version now, and I'll see what I can do.  One thing to take into account: I'll be adding functionality to give scoring based on buildable-related events.  So this will probably not end up being a zero-sum system anyway.  :)