vkQuake
vkQuake copied to clipboard
Add entries to the Controls menu to bind keys to weapons please
Like in source ports for other retro fps games, GZDoom, eduke32, Blood ports etc.
I found the solution below and it is easy for me to follow but casual users shouldn't have to go to google for this info and use the console.
https://steamcommunity.com/app/2310/discussions/0/1693785669852213749/
perhaps along it some reordering of the menus could help as well seeing some of the priorities changed a bit since the original release My idea for a new menu would be more topical :
- Controls a. Movement - open the same as the current controls b. Weapons - open new menu for weapons bindings c. Mouse Speed(currently on the main option menu) d. Invert Mouse (currently on the main option menu) f. Mouselook (currently on the main option menu) g. Lookspring (currently on the main option menu) h. Lookstrafe (currently on the main option menu) i. Always run (currently on the main option menu)
- Video options a. same as now + Brightness and contrast
- UI a. Scale b. Screen Size c. Statusbar alpha
- Sound volume
- Music
- Reset control
I was able to hack different values to Quake\menu.c:1336 bindnames which list the binding displayed. If item added above the 26 items the logic would still follow the list rather than the display but there will be no display feedback but it probably should be easier to use in separate menu if implemented
the menu itself seems to be running in a bit of a convoluted code. some initial mapping.
Data: 0974-1006: enums for the options 0974-1000: Main option menu 1000-1006: Options for the Always run
1010: int option_cursor - index for the place selected in the menu
Logic menu UI: 1012-1018: M_Menu_Options_f - default function of utilizing an action option 1021-1134: M_AdjustSliders - Logic for the sliders
Drawing: 1137-1164: M_DrawSlider - Drawing sliders 1152-1164: M_DrawCheckbox - Drawing checkboxs 1166-1259: M_Options_Draw - Drawing of the menu itself including all the possible options(controls, goto console etc.) 1262-1331: M_Options_Key - user control logic for the menu
Keybinidng: 1336-1365" bindname[][2] - list of all the bindings
the structure itself is fairly consistent with some list functions for logic function and function for drawing.
I'm conflicted on this. On one hand it's probably a good idea, but I really would like to get this implemented in QuakeSpasm first.
Scale and alpha would be welcome. But I'd rather see the demos and map menus from Mark V first. Those are so well done.
c523480a61a38bb12cb6e24f0750084b71407ff0