The title pretty much says everything, should we remove any reference of the handicap option and keep the /handicap command in the console?
I have read what Biondo thought about this option and I fully agree with him. We should remove this option for few reason:
-  New player don't understand this option and set it wrongly
-  It is some heritage from quake 3 which should have been removed for a while
-  If players would want to play with handicap, most of them already know how to set it up with the console command /handicap
So... If yes, let's act...
I've spent few minutes and I was able to remove this option without requiring much code change. Here are the files I changed:
ui/ingame_player.menu
- Code: Select all
- #include "ui/menudef.h"
 
 {
 \\ SETUP MENU \\
 
 menuDef {
 name "ingame_player"
 visible 0
 fullscreen 0
 outOfBoundsClick         // this closes the window if it gets a click out of the rectangle
 rect 128 0 256 140
 focusColor 1 .75 0 1
 onOpen  { uiScript update "ui_GetName" }
 onClose { uiScript update "ui_SetName" }
 
 itemDef {
 name window
 rect 0 0 256 80
 ownerdraw UI_INGAME_RECT
 visible 1
 decoration
 cvarTest "g_gametype"
 hideCvar { "0" ; "1" }
 }
 
 itemDef {
 name window
 rect 0 0 256 140
 ownerdraw UI_INGAME_RECT
 visible 1
 decoration
 cvarTest "g_gametype"
 showCvar { "0" ; "1" }
 }
 
 itemDef {
 name namefield
 group "playersettinggroup"
 type ITEM_TYPE_EDITFIELD
 style 0
 text "Name:"
 cvar "ui_Name"
 maxchars 26
 rect 20 40 256 20
 textalign ITEM_ALIGN_LEFT
 textalignx 10
 textaligny 18
 textscale .27
 outlinecolor 1 .5 .5 .5
 backcolor 0 0 0 0
 forecolor 1 1 1 1
 border 0
 bordercolor 0 0 0 0
 visible 1
 }
 
 /*
 itemDef {
 name handicapfield
 group "playersettinggroup"
 style 0
 text "Handicap:"
 ownerdraw UI_HANDICAP
 rect 20 60 256 20
 textalign ITEM_ALIGN_LEFT
 textalignx 10
 textaligny 18
 textscale .27
 outlinecolor 1 .5 .5 .5
 backcolor 0 0 0 0
 forecolor 1 1 1 1
 border 0
 bordercolor 0 0 0 0
 visible 1
 }
 
 itemDef {
 name effectentry
 group "playersettinggroup"
 text "Effect:"
 type 1
 style 0
 rect 20 65 256 20
 textalign ITEM_ALIGN_LEFT
 textalignx 10
 textaligny 18
 textscale .25
 outlinecolor 1 .5 .5 .5
 backcolor 0 0 0 0
 forecolor 1 1 1 1
 border 0
 bordercolor 0 0 0 0
 visible 1
 decoration
 mouseEnterText { setitemcolor effectentry forecolor 1 .75 0 1 ; setfocus effectfield ; show message_effect }
 mouseExitText { setitemcolor playersettinggroup forecolor 1 1 1 1 ; hide message_effect }
 }
 
 itemDef {
 name effectfield
 group "playersettinggroup"
 style 0
 ownerdraw UI_EFFECTS
 rect 20 65 256 20
 textalign ITEM_ALIGN_LEFT
 textalignx 50
 textaligny 25
 outlinecolor 1 .5 .5 .5
 backcolor 0 0 0 0
 forecolor 1 1 1 1
 border 0
 bordercolor 0 0 0 0
 visible 1
 }
 
 itemDef {
 name headlist
 rect 15 100 260 50
 type ITEM_TYPE_LISTBOX
 style WINDOW_STYLE_FILLED
 elementwidth 32
 elementheight 32
 elementtype LISTBOX_IMAGE
 feeder FEEDER_HEADS
 horizontalscroll
 backcolor 0 0 0 1
 border 1
 bordercolor .5 .5 .5 1
 forecolor 1 1 1 1
 visible 1
 cvarTest "g_gametype"
 showCvar { "3" ; "4" ; "5" ; "6" ; "7" ; "8" }
 mouseenter { setitemcolor headlist bordercolor 1 0 0 1 }
 mouseexit { setitemcolor headlist bordercolor .5 .5 .5 1 }
 }
 */
 
 itemDef {
 name headlist
 rect 17 65 221 50
 type ITEM_TYPE_LISTBOX
 style WINDOW_STYLE_FILLED
 elementwidth 32
 elementheight 32
 elementtype LISTBOX_IMAGE
 feeder FEEDER_Q3HEADS
 horizontalscroll
 backcolor .5 .5 .5 .5
 border 1
 bordercolor .5 .5 .5 1
 forecolor 1 1 1 1
 visible 1
 cvarTest "g_gametype"
 showCvar { "0" ; "1" }
 mouseenter {  }
 mouseexit {  }
 }
 
 }
 }
 
ui/settings_player.menu
- Code: Select all
- #include "ui/menudef.h"
 
 {
 \\ SETUP MENU \\
 
 menuDef {
 name "player_menu"
 visible 0
 fullscreen 0
 rect 0 50 640 371
 focusColor 1 .75 0 1
 style 1
 border 1
 onClose {
 uiScript saveControls
 }
 onOpen { }
 onEsc { close player_menu ; close setup_menu ; open main }
 
 
 itemDef {
 name window
 group grpControlbutton
 rect 2 2 632 371
 style WINDOW_STYLE_FILLED
 border 1
 bordercolor .5 .5 .5 .5
 forecolor 1 1 1 1
 backcolor 0 0 0 .5
 visible 1
 decoration
 }
 
 itemDef {
 name namefield
 group "playersettinggroup"
 type ITEM_TYPE_EDITFIELD
 style 0
 text "Name:"
 cvar "name"
 maxchars 26
 rect 60 130 256 20
 textalign ITEM_ALIGN_LEFT
 textalignx 10
 textaligny 18
 textscale .27
 outlinecolor 1 .5 .5 .5
 backcolor 0 0 0 0
 forecolor 1 1 1 1
 border 0
 bordercolor 0 0 0 0
 visible 1
 }
 
 /*
 itemDef {
 name handicapfield
 group "playersettinggroup"
 style 0
 text "Handicap:"
 ownerdraw UI_HANDICAP
 rect 100 120 256 20
 textalign ITEM_ALIGN_LEFT
 textalignx 10
 textaligny 18
 textscale .27
 outlinecolor 1 .5 .5 .5
 backcolor 0 0 0 0
 forecolor 1 1 1 1
 border 0
 bordercolor 0 0 0 0
 visible 1
 }
 */
 
 itemDef {
 name headlist
 rect 67 160 281 50
 type ITEM_TYPE_LISTBOX
 style WINDOW_STYLE_FILLED
 elementwidth 32
 elementheight 32
 elementtype LISTBOX_IMAGE
 feeder FEEDER_Q3HEADS
 horizontalscroll
 backcolor .5 .5 .5 .5
 border 1
 bordercolor .5 .5 .5 1
 forecolor 1 1 1 1
 visible 1
 mouseenter {  }
 mouseexit {  }
 }
 
 itemDef {
 name window
 group grpControlbutton
 rect 425 30 150 330
 style WINDOW_STYLE_FILLED
 border 1
 bordercolor 1 1 1 .5
 forecolor 1 1 1 1
 backcolor 1 1 1 .2
 visible 1
 decoration
 }
 
 itemDef {
 name modelselection
 ownerdraw UI_PLAYERMODEL
 rect 350 50 330 330
 style 1
 decoration
 visible 1
 }
 
 }
 }
 
And here is a small pk3 that will let you test the changes if needed: 
z_ui.pk3 (just put it in smokinguns/ with the other pk3 files)
Now few questions:
Is there anything I should change?
Should I fork SG on github and make a pull request?
"Chuck Norris had to shorten his beard in the presence of Richard Stallman because two beards that awesome, so close would segfault the universe (again)."