This is the old version. 5.x is now available here:
http://tremulous.net/phpBB2/viewtopic.php?p=88535-------------
Lakitu7's Tremulous 1.1 QVM
Current Version: 4.18
From SVN Revision 910
Downloads:
http://www.mercenariesguild.net/patches/?do=details&task_id=69While playing on and admining Tremulous servers, I've found a distinct lack of a server package that
a) Contains all of the features that I want
b) Doesn't have any nonsense that ruins the game
Thus, like many server owners, I began the task of making my own for the {SGA} Server. While I originally intended to just put something together from existing patches, I quickly found that patches for many things that I wanted either didn't exist, weren't available, or weren't available separate from a ton of other things that I didn't want, or couldn't be applied together.
By the time I'd finished tracking down, separating, and creating my own patches, I'd done enough work to feel that I should distribute this QVM. Thanks to the encouragement of my friends asking for it, I've finished getting this to a releasable state.
As an overview, my QVM includes EVERYTHING in tjw's 1.1 QVM (not the balance changes tested on trem.tjw.org nowadays, but the things here:
http://tjw.org/tremulous/). It also includes a number of the more popular enhancements found in other packages (avenger, risujin, *wraths') and things that I have written myself for features and bugfixes that I wanted.
If you do decide to use this, I would appreciate leaving a post here to tell me the name of your server. Then I can know to tell you about updates or bugs or whatever if I see you in game/irc.
--------------------
Installation:
Easy way:
Follow TJW's instructions at
http://tjw.org/tremulous/SETUP.txt, but wget a URL for my QVM instead of his. My QVM DOES use TJW's Tremded executable, so get it from
http://tjw.org/tremulous/Harder way:
Download TJW's tremded, as above
Compile my qvm yourself:
Download SVN revision 910 (svn svn://svn.icculus.org/tremulous/ -r910)
Apply my .patch
make
If you're using linux, you should already know how to compile things.
If you're using Windows, use either of the excellent build guides at:
http://tremulous.net/phpBB2/viewtopic.php?t=3408http://tremulous.net/phpBB2/viewtopic.php?t=2672--------------------
Contact Information:
Forums: The Lakitu7's 1.1 QVM thread, tremulous.net forums, mods subforum
IRC: Lakitu7 on Freenode, Quakenet, Dorksnet, or Zirc
Ingame: {SGA}Lakitu7, probably on Beergarden
--------------------
FAQ:
Q: I want a QVM with features x and y, but not z. Will you compile one for me?
A: Unless you're a good friend of mine and you have a darn good reason why you can't do it yourself, no. If you're running Linux, I'm sure you know how to compile your own anyway. If you're running Windows, see either of the excellent build guides linked in "harder way." If you ask nicely and put forth the effort to learn to do things yourself, I may help you, but I won't do it for you. The only thing I put here that's really all that controversial is SD Votes and those are both controlled and disablable.
Q: I don't want your QVM, but I do want patch X from it
A: I've made EVERY patch that I have used available here:
http://browsingtheinternet.com/trem/patches/910_qvm/ Q: I found a bug.
A: Well damn, tell me. Use the contact information above and I'll fix it. If it's part of a patch that I didn't make, then I'll still fix it, or I'll whine at whoever did to to fix it instead

.
Q: I have a suggestion for a new feature.
A: Maybe. If I don't see myself using something, I won't code it for you. But if the idea is good and I'd like to have it, perhaps. BUT, I have no interest in doing any fullscale mods that make sweeping gameplay changes. I do not have any interest in making any "balance" changes. If your suggestion is nice and can be implemented with a reasonable degree of effort, I'll think about it.
Q: You should add the Protoss/Predator/MDriver Turret/M4A1 Abrams Tank/BFG9000
A: Hay man that's so cool how about you make it yourself and then post it on the forums.
Q: Update this for newer SVN revisions
A: This was already a ton of work. Maybe. It depends on how many things get into SVN that I want to include BEFORE 1.2 comes out. Then I may or may not release something for 1.2.
--------------------
The long, long list of patches/features:
I have mirrored every patch that I've used here:
http://browsingtheinternet.com/trem/patches/910_qvm/The ones that I have made I've also mostly submitted to
http://www.mercenariesguild.net/patchesYou may use any patches that I have made for whatever you wish, but as with all GPLed code, follow the license: you must keep it opensource.
Other patches are available from their given sources
Listing is roughly in order of significance of their effect, in my opinion
Patches that have multiple things are together because they don't apply together in their seperate forms. I have linked their original separated versions where applicable.
--
backport901_tjw_game_qvm_only.patch
Description: Backports SVN code to be compatable with 1.1 clients. QVMs generated are to be used with TJW's Tremded
Author: vcxzet
Source:
http://www.mercenariesguild.net/patches/?do=details&task_id=3 (Why he 'closed' the task for the most important patch there is well beyond me
--
tjw-no_chomp_during_pounce.patch
tjw-poison-system.patch
Description: Balance changes from TJW's 1.1 QVM. You're likely used to all of them
Author: TJW
Source:
http://tjw.org/tremulous/ (separated out by me) Info here:
http://tjw.org/tremulous/FEATURES.txt--
sdmodes+sdvotes+denybuild+denybuildvotes+mutevotes+customvotes+specvoting.patch
This is my votes megapatch. Only customvotes is my idea, but none of these patches would otherwise apply together. In the case of SD Modes + SD Votes, I had to rewrite most of the SD functions to make them work together. Please enjoy my efforts.
SDModes: Adds different methods of sudden death.
Author: TJW
Source:
http://tjw.org/tremulous/ (separated out by me) Info here:
http://tjw.org/tremulous/FEATURES.txtSD Votes: Allows /callvote sudden_death
Author: Avenger
Source:
https://bugzilla.icculus.org/show_bug.cgi?id=2920 (modified heavily by me)
g_suddenDeathVotePercent
Author: me
Percentage required to vote yes for Sudden Death votes to pass. This is in an effort to balance them. Set to 0 if you want to DISABLE them entirely. Defaults to 75
g_mapVotesPercent
Author: me
Percantage required to vote yet for map, nextmap, and map_restart votes to pass.
DenyBuild: !denybuild user, disallows user from building
Author: Peoro
Source:
http://wraths.dyndns.org/games/tremulous/patches/svn901/This is in SVN as of r925
DenyBuildVotes: /callvote denybuild user
Author: Me, sort of
This is in SVN as of r925
Mute Votes: /callvote mute user
Author: Avenger (Rewritten by me)
THis is in SVN as of r925
Spectator Voting: g_allowSpecVoting toggles ability for spectators to vote and call votes
Author: Peoro
Source:
http://wraths.dyndns.org/games/tremulous/patches/svn901Custom Votes: /callvote custom "String goes here".
Allows the calling "custom" votes. Before r858, people would use /callvote map "Is unnamedPlayer an idiot?" Since that's diabled now by a check to verify that "is unnamed player an idiot.bsp" exists before calling the vote, I replaced it with customvotes. They DO nothing, but can be useful for an admin to ask a question of users on their server.
Also has /callteamvote custom "String goes here" for things like /callteamvote custom "Move to window room?" Idea for teamvote version thanks to Benmachine
Author: Me
--
dretchPunt+no_pounce_trample_ff.patch
Dretchpunt: everyone knows what this is already
Author: TJW
Source:
http://tjw.org/tremulous/ (separated out by me)
No Pounce and Trample FF: turn frindly fire on pounce/trample on and off by g_friendlyFireMovementAttacks. Irrelevant if g_friendlyFire is off.
Idea: Norfenstein/TJW. Rewritten for 1.1 by me
Source: trem.tjw.org server autodownload
--
mnp-share+risujin-donate.patch
Authors: Martin Doucha, Risujin
Source:
http://tremulous.net/phpBB2/viewtopic.php?t=3014 ,
https://bugzilla.icculus.org/show_bug.cgi?id=2896Please turn these off. They ruin the game. g_allowShare 0 will turn off BOTH of them. I just have them because they're so damn popular that I can't not do it anymore.
--
002.tjw.www_download.patch
003.tjw.teamkill_messages.patch
005.tjw.vote_message_in_console.patch
009.peoro.building_messages.patch
011.r1ch.sticky_spec.patch
012.peoro.change_team_messages.patch
014.peoro.namelog_shows_prohibition.patch
016.np.black_names_fix.patch
017.npa.privmsg_to_console.patch
022.kristall.nojoin_warmup_time.patch
027.napkin.more_info_to_flag4.patch
034.risujin.ckit_recovers_with_blaster.patch
035.pierre.realtime_stamp_at_mapstart.patch
All of these are from
http://wraths.dyndns.org/games/tremulous/patches/svn901 and their authors/functions are obvious from the filenames. Several notes:
Stickyspec: Camera doesn't change to a new person when the one you're specatating dies
I'd use my own version, but it requires client side mods too. Developers, Please, please put this into SVN.
https://bugzilla.icculus.org/show_bug.cgi?id=2792Black Names Fix: Fixes the bug with white ^ and black names. Black names are disallowed by this fix, as was intended by the original code.
--
avenger-enhanced_give.patch: adds more options to /give for devmap use
Author: Avenger
https://bugzilla.icculus.org/show_bug.cgi?id=3075Added to svn 937 now
--
gate-!warn.patch: !warn user reason
Author: Gate
Displays a big ol' message to your target that tells them that an admin is warning them for reason: reason and they should stop whatever they are doing and comply. I feel this is a much less abusable alternative to !slap
--
foobar-NewbieNaming-0.90-899.patch: Auto-renaming of unnamedPlayers to your choice + numbers
Author: Foobar
http://tremulous.net/phpBB2/viewtopic.php?t=3738--
kev-putmespec-svn827.patch: !specme
Author: Kevlarman
I modified this to !specme instead because that seems to be what most people expect it to be called. Personally, I don't see why people can't just use /team spectate, but it's requested a lot, so here it is.
--
risujin-retribution.patch: Teamkillers pay their victims for the price of their equipement.
Author: Risujin
Source:
http://tremulous.net/phpBB2/viewtopic.php?t=3014 Separated out by me
--
svn910revert+lakitu7-admin_true_name_in_banlog.patch:
svn910 revert:
Reverts kick and ban code to how they were pre-revision910. The bug that introduced (
https://bugzilla.icculus.org/show_bug.cgi?id=3096) is worse than the bug that it fixed (
https://bugzilla.icculus.org/show_bug.cgi?id=3052).
Admin true name:
Save admin's "true" name in the ban logs. "True" name is the one that shows up in !listplayers when they are using something else
Author: Me
--
lakitu7-devmapNoGod+devmapNoStructDmg.patch
g_devmapNoGod: Disables use of /god, /noclip, and /give health during /devmap. Useful during practices
g_devmapNoStructDmg: Prevents damaging structures during /devmap. Useful during practices
Author: Me
--
lakitu7-g_minLevelToSpecMM1.patch: Spectators with admin level < g_minLevelToSpecMM1 can only speak to other spectators. (/say_team, but not /say) Combine with g_privateMessages 0 to be uninterrupted by spectators during clan matches
Author: Me
--
lakitu7-g_minLevelToJoinTeam.patch: Only users with admin level > g_minLevelToJoinTeam can join a team. Otherwise, they are forced to spectate. This can be used to quickly create a private server.
Author: Me
--
lakitu7-l1command.patch: Adds command !L1, usable by admin levels with flag S. !L1 user sets a level 0 user to level 1. Made to be used with g_minLevelToJoinTeam.
Author: Me
--
lakitu7-name-duplication-color-fix.patch
Author: Me
Fixes g_admin's name check functions to prevent two people from having the same name, different only by color codes or leading/trailing spaces.
https://bugzilla.icculus.org/show_bug.cgi?id=3161--
lakitu7-PMDisabledFix.patch: When g_privateMessages 0, prevents attempted messages from being sent publically and making you look like an idiot. IE: /m teammate OH MAN THESE GUYS ARE GIANT NEWBS doesn't get sent to the whole server.
Author: Me
https://bugzilla.icculus.org/show_bug.cgi?id=3093Added to SVN 940
--
lakitu7-restart_keepteams_switchteams.patch: Adds !restart keepteams and !restart switchteams
Author: Me
Useful for clan matches when you want to set things up, then !restart the round while keeping people on the teams they've just joined.
--
LogTeamClass.patch: This does something or other to make tremstats work
Author: Wolfwings
Source:
http://dev.dasprids.de/programs/tremstats/--
mute-name.patch
mute-novote.patch
mute-pm.patch
mute-tell.patch
Muted people can't change names, vote, or send PMs (or get around that with /tell)
Author: Avenger
--
risujin-svn929-admin_layout.patch
Adds !devmap and !savelayout back to g_admin. Works with the existing implementation of !layout in SVN
Author: Risujin
Source:
http://v1.risujin.org/pub/tremulous/admin_layout-svn929.patch.tar.gz--
benmachine-info923-8.patch
Adds !info <topic> admin command, usable by those with flag H. It Returns the text of a file from /info/info-topic.txt. See source for full info.
Author: benmachine
Source:
http://www.mercenariesguild.net/patches/?do=details&task_id=43--
benmachine-me-action939-4.patch
Adds IRC-like /me command. It's useless, but fun. g_allowActions disables it. g_actionPrefix changes the text that appears before an action to denote that it is an action.
Author: benmachine
Source:
http://www.mercenariesguild.net/patches/?do=details&task_id=5--
avenger-g_maxGameClients.patch
Do not allow more than g_maxGameClients to join a team. Connected clients beyond this amount can only spectate, creating spectator slots, R1Admin style.
Author: Avenger
Source:
https://bugzilla.icculus.org/show_bug.cgi?id=2969--
benmachine-antiblock940-5.patch
Forcibly bumps players out of the way when they are blocking the spawn. This patch is disabled by default, for now. Set g_antiSpawnBlock 150 to try it out.
Author: benmachine
Source:
http://www.mercenariesguild.net/patches/?do=details&task_id=70--
philbordelon-floodprotection+lakitu7-enhancements.patch
Prevents flooding of chat commands. Controled by g_floodMinTime. 0=off. Default: 2000.
Admins with admin permission #2 (immune to flood protection & censorship) are immune. This permission was already in the admin system, but didn't do anything because it wasn't implemented yet. All forms of /say are protected by flood protection, along with PMs and admin commands. g_floodMaxDemerits lets you fine tune the harshness of the protection somewhat. See the source link for details. I defaulted it to 5000.
Author: Phil Bordelon (Updated and given a few more features by me)
Source (Original):
https://bugzilla.icculus.org/show_bug.cgi?id=2811--
lakitu7-g_deconDead.patch
Adds g_deconDead, which controls the ability to decon structures that have 0 health and are about to explode, causing damage. This was possible before g_markdeconstruct (r880), but was regardless of g_markdeconstruct's setting. g_deconDead defaults to 0 (svn behavior, cannot decon dead structures). g_deconDead reverts to the pre-880 behavior.
Author: Me
--------------------
List of new cvars, commands, and admin flags
Admin flags:
d: !denybuild, !allowbuild
l: !layout, !devmap
S: !L1
w: !warn
H: !info
Cvars:
g_newbieNumbering: Default 0
g_newbieNamePrefix: Default "Newbie#"
g_suddenDeath: Used by SD votes. May break things if you modify via rcon manually
g_suddenDeathMode: Default 2
g_friendlyFireMovementAttacks: Default 1 for compatability, Recommended 0 (turns off pounce/trample damage)
g_retribution: Default 100.
g_allowSpecVoting: Default 1 (allow)
g_suddenDeathVotePercent: Default 75. (3/4ths must vote yes to pass) Set to 0 to disable SD votes entirely.
g_mapVotesPercent: Default 50.
g_allowShare: Default 0. Also controls /donate. Please leave this off, it ruins the game

g_minLevelToJoinTeam: Default 0
g_minLevelToSpecMM1: Default 0
g_dretchPunt: Default 1
g_devmapNoGod: Default 0
g_devmapNoStructDmg: 0
g_maxGameClients: Default 0 (no limit)
g_allowActions: Default 1
g_actionPrefix: Default "***"
g_antiSpawnBlock: Default 0 (disabled). Set to 150 to turn on.
g_deconDead: Default 0 (disallow deconning dead structures)
g_floodMinTime: Default 2000. Set to 0 to turn off flood protection
g_floodMaxDemerits: Default 5000. Fine tuning of flood protection. See docs for more info.
Commands:
/me
/me_team
/share
/donate
----
Version Log:
4.18: Fixed SD Mode 1. It's been broken all this time and nobody noticed, I guess. Thanks Kevlarman.
4.17: Changed to Phil Bordelon's (better) flood protect system instead of mine. Covers PM spam.
4.16: Reverted g_admin_ban code to SVN909 version (see svn910revert+lakitu7-admin_true_name_in_banlog.patch notes)
!L1 fix: Now doesn't give undesired behavior when people have numbers and spaces in their names
Added g_deconDead
4.15: Simple chat flood protection
4.10: Removed tjw's antiwarp (too many problems, especially when unlagged is off)
added /me
added !info
added g_maxGameClients
added team customvotes
modified the "__ called a vote" console message to say what they called a vote for
modified vote messages to say what percent is needed to pass, if this percent != 50
added g_antiSpawnBlock (but disabled it by default for now)
4.03: Fixed votes percentages; I'm an idiot
4.02: Fix mute-PM, add mute-tell
4.01: g_markDeconstruct default to 0
4.00: First public release
--------------------
Credits: The following people contributed code, created included code, or provided help to make this possible:
kevlarman, vcxzet, Napkin, Avenger, Risujin, r1ch, peoro, tjw, pierre, Khalsa, foobar, gate, Martin Doucha, Wolfwings, benmachine, Phil Bordelon