This page is dedicated to suggestions about improvements/new features that may be included into the next versions of the game. To report problems in features already implemented, there is the "Bugs" page instead.
This is mostly a recap of what is suggested on the forums, let's try to maintain the two things synchronized.
Most related forum sections probably are Idea pit, Development, OA3.
Before adding your own suggestion check NOTTODO for stuff which won't ever be part of the game.
Features requested here should be moved to the "Already implemented" section below when realized. When the next official OpenArena release, containing them, is released to the public, those lines should be moved to the Wishlist/Archive page.
Suggestions for already implemented gametypes Edit
- A cvar (if the gametype will not be implemented) which marks that the skulls should spawn right at the place where the player died, like Unreal Tournament III 's Greed mode.
- Another possiblity about this cvar is it marks that the skulls should spawn in a random place.
Elimination / CTF Elimination Edit
- It would be nice to tune the bots, making them know if they are the last player on their team: in this case, they should go to get the enemy flag even if they were previously in defense (and obviously, after they get the enemy flag, they should look for their own flag if the enemies stole it). This has to be extended also to the standard CTF mode (if the bot is the only player on its team it should be more active)... and, with the necessary differences, also to all the other team-based gametypes where the goal is not simply to kill all the enemies. Please read this and the following posts. And think that in CTF Elimination with Oneway mode enabled, bots in the defensive team may attack the enemy base (to weaken/frag the the enemies), but should not be stuck at trying to grab a flag that they technically cannot pickup.
- Maybe, when one is the last player alive on his team, we could show a message on the screen for some moments, informing him of this fact, like it happens in the Aftershock mod. Proposed here.
- Some maps that would use Elimination features in varied ways (e.g. unfair maps), as suggested in Elimination#Map styles.
- Add a new variable to limit the number of rounds (at setting an end).
- Currently, in the tournament gememode, unlike the other gametype, all spectators are part of the fighters list. Modify the spectate mechanism for this gametype to can spectate without being part of this list.
CTF / Overload Edit
- A cvar to change the respawn rule : currently when a player is killed, this one is respawn at a spawn point of their team which is, in most maps, this spawn point is near from the flag point or the obelisk. The problem is, in ths case, the defender players work actually versus the attacker of their team (when, defending your flag/obelisk, you kill an ennemy, you send that ennemy defend his/her flag or obelisk versus your attacking buddies). The change, with this cvar, is that the killed player respawn at a fully random spawn point.
Suggestions for new gametypes Edit
NOTE: When suggesting a new gametype, don't just place the gametype name or where it originates from, place as well a short description.
Single-player based Edit
- Single Player/Cooperative game against ai monsters, in linear style (quake, doom) and/or dmsp (cube, sauerbraten, ut3) style.
- Challenges: A series of matches with different rules and goals to be achieved. Thread in the forum
- Speedrun: A related mode to the above (as one of the possible objectives) it gives the player different challenges which should be completed in the shortest time possible. See here.
- Test Your Luck: Features a five-slot machine, with the first two slots being for gametype and map, and the other three for different game modifiers. Depending on the settings, the players will always get different matches. Thread in the forum.
- Zone Domination: A "Heroes and Heralds"-like team-based game. The player chooses 4 bots as his allies, bots also display their stats. The maps are distributed in squares. The objective is to conquer all the squares in the map. Thread in the forum
- RPG/multi user RPG : each RPG is played on a group of maps (that include RPG features (to implement)) and the player doesn't lose their progress at leaving the game. In a multi user RPG (persistent or not), the map name and the levelshot in the server browser would correspond to a main map but the player could be redirected to an other. (note : a persistent multi user RPG would be similar to a little MMORPG but the game engine doesn't seem enough powerful for a true MMORPG)
Non-team based Edit
- King of the Hill: A gametype where players battle for controlling a central area. The one who wins is the one with the most amount of domination time.
- Possession: A gametype from Q3 Revolution (Q3 for PS2), where the objective is to hold a flag for the most amount of time, or to reach the holdlimit. Thread on the forum.
- kill the flag: like protect the leader but non-team based : when the match begin, a player is selected by the server an become the flag carrier. When the flag carrier is killed by an other player, the killer win a point and become the new flag carrier.
Team based Edit
- Assault: A round-based team-based gametype where there are two teams: attackers and defenders. The maps are objective-based, and the attacking team must reach all of the objectives inside of the timelimit. Once a round ends, both teams switch positions, so the defenders become the attackers and viceversa. If the defending team completes all the objectives in this second round, that team wins.
- Attack vs. Defense: An extension of the above, it's a CTF-based mode where 1 match has 2 rounds and where sides are switched (for asymmetric maps) Suggested here
- Strike Elimination: Also related to Assault, players start up with machinegun, and has buy zones for ammo, armor, items and weapons. The maps would also contain hostages, escapes and bombs.
- A ball sport like gametype, like "Bombing Run" and "QPong", but made for Open Arena.
- Bombing Run: A gametype where two teams battle for a ball placed in the mid-area (maps using Harvester assets will do well for this) The ball must be carried to the enemy base, so it can be thrown in the enemy goal.
- Centerless Harvester: Similar to Harvester, but there's no skull generator, and the skulls appear where a character has been killed, like Unreal Tournament 3's Greed. Thread on the forum.
- FreezeTag: A team based mode where the fragged or "frozen" teammates can be revived. Thread on the forum.
- Hide-and-seek: many players against a single heavy-armored one. Thread on the forum.
- Protect the flag: Similar to CTF but where the ennemy team gain a point when one of its members touch the flag.
- Tackle: A mix of "Team Possession" and "QPong": players of a team have to take the ball and put it in opposite places in order to score, and they can pass the ball each other. Forum thread about it.
- Team Possession: Similar to Possession, but with teams instead of individual players.
- Three/four team-based gametype variants, such as Four-Team Team Deathmatch or Four-Team Domination.
- Consumption: gauntlet is disabled (all eventual other weapons which, like it, can infinitely be used without get ammo are also disabled). Ammo and weapon respawn are also disabled. The match/round end when all the available ammo is used.
- On shot one kill: all weapon damage cause death. Other things reducing health work as usual.
Server stuff Edit
- Improve the callvote feature: a way to allow server admins to customize a table with the gametypes allowed for each map may be useful. It would be nice also a parameter to have the allowed callvote gametype list for a certain map set "automatically", reading from arenas.txt. Notice that it would need some additional checks (when the next map of the rotation script is loaded): please read this and the following posts.
- callvote for capturelimit: Capturelimit is very similar to fraglimit and timelimit. It should be integrated with the standard votes. Maybe allowed values limits, like now there are g_voteMaxTimelimit, g_voteMinTimelimit, g_voteMaxFraglimit, g_voteMinFraglimit, may be added, too. See also here.
- voting for the same fraglimit / timelimit as already used could be refused (e.g. if the current timelimit is 20, making a vote to set it to 20 sounds useless, and thus may be not allowed.).
- When a vote for nextmap is called, the name of the next map should be displayed in the vote string.
- Maybe there could be a challenge voting between the next two maps on the rotation taking place between the end of a game and mapchange:
You want to play map#1 (vote yes) or map#2 (vote no)?
- Enlarge the space available for "sets" variables: "sets" variables are those which are set by the server admin and which the user can see by using "serverinfo". This would allow server admins to publish more info, like special game options and game physics-related variables (g_elimination, g_catchup, pmove_fixed, etc. etc.), that would be useful for players to know. The only drawbacks are that it may require a protocol change, and there is the need to think if it would break compatibility with third party tools. See here on the forum.
- Alternatively, a brand-new system (like a new client command) to query such server settings, with less network compatibility problems. Which variables to be published (mainly, game settings) could be chosen by server admin or by the developers, talking with the community. See here on the forum also for this.
- About network protocol, it has been pointed out that newer versions of ioquake3 use "DarkPlaces" heartbeat string, that contains a "gamename" key the the master server uses to understand what game is running your server. This one and more reflections about new ioquake3 protocol, OpenArena and dpmaster co-existence (and IPv6 server listing!), with some suggestions, are explained by smcv (ioquake3/OA/Q3 Debian maintainer) in this thread on the forum. It is advisable for developers to check it out, especially if planning a network protocol change.
- With a static map rotation the server could tell the next map quickly after a game ended.
- Limit connections per IP. (There is a guy that sometimes consumes all open slots with fake logins and redoes when dropped out.)
- Anyway, this should be somehow configurable, considering that there are cases of players sharing the same IP (NAT), and sometimes even the same machine (spectating to record demos).
- A balancer for teamgames, triggered by some command or saying.
- Do you know that it already exists "callvote shuffle"? It shuffles human players only, IIRC. If it has got some problems, we may talk about it in the forums.
- Update the logo in the main menu (and, possibly, the intro video) with the new one. Thread on the forum.
- Achievements section.
- With OpenArena 0.8.8 executables, bloom effect is automatically disabled if r_texturebits is not set to 32 (this has been done to workaround a bug that affected 0.8.5 executables if bloom was enabled with texture quality set to 16 bit: a semi-transparent square that appeared in the lower left corner of the screen). The default r_texturebits value (0) is not enough to use bloom, one needs to force it to 32 or bloom will be automatically disabled. The problem is that the GUI does not tell people what they have to do to use bloom, and the console even prints a misleading message (due to it referring to an engine component that tries to call another one). A message in the console or in the GUI that would explain to the user what he should do to make bloom work would be important.
- Allow to abort the loading of a map instead of returning to main menu after the loading is finished.
- Give a clear message: You need version X to play on this server. instead of something about .pk3 files.
- When someone connects to a server and does not have a required file, and may download it from the server if he would enable autodownload, the message should be clear and advise the opportunity to enable autodownload. Thread on the forum.
- A pause/continue button in the download screen.
- The ability to change/disable the background cinematic of the download screen. (at least able/disable)
- When pressing tab, show how many frags per playtime the players have. This would make comparing scores easier.
- When the weapon bar is shown, the name of the item you just picked up is not shown, due to space requirements, probably. Thus, if you enable cg_alwaysweaponbar, you would never see the infos about the item you just picked up, and this isn't nice. The old Q3 didn't show both things at once, but OSP mod allowed to show both weapon bar and item picked up (it used smaller fonts). It would be nice if we may allow to show the picked up item info and weaponbar at the same time (maybe enabling the dual view by using the smaller fonts only when cg_alwaysweponbar is enabled?). Of course, we have to take in account that we have various weaponbar styles and that OpenArena may show up to 13 weapons, more than those available in OSP, but it should be possible anyway. See also here, here and following (here you can see a comparision with OSP HUD).
- As you can see playing an old mod, in Quake3 the name of the weapon you select is drawn just above the weapon bar. In OpenArena this does not happen. Is it possible to restore that info? Maybe using smaller fonts than in the past, if the problem is that it consumed too much space or was too distracting. Note: maybe the name may "fade away" after you complete weapon selection even if you are using cg_alwaysweaponbar.
- "mute" command for ignoring (as in, not seeing) text messages from specific player(s).
- \time command showing the system time of the computer (or updating g_timestamp locally and printing out)
- \mapcycle showing the mapcycle of the server to the player. Or \nextmap telling the player the next map to come.
- \checkcompat <map name> <gametype> to check the if the a map is actually compatible with a gametype (e.g. in open arena 0.8.8, oa_shouse is theorically compatible with the gametype domination (appear for this gametype in the skirmish menu) but is technically incompatible with (no domination point) while slimefac is theorically incompatible with this gametype (doesn't appear for this gametype in the skirmish menu) but is technically compatible with (have three domination points when the gametype is domination)) and, if they are not compatible, if it possible to make compatible the map with the gametype at adapting its stuff (e.g. obelisks instead flags).
- Add /cg_weaponBarStyle to the menu. Also /cg_alwaysweaponbar in menu may be nice (even if with lower priority).
- Add a short description for "Crosshair shows health": When it's enabled, the selected crosshair colors are ignored.
- Powerup descriptions, under the "Statistics" menu. Thread in the forum.
- Before entering the Setup select for what gametype you want to change the setup (current, all, baseoa, CTF, ...)
- A cvar, linked to the \checkcompat suggestion, to try to adapt (or not) the map stuff if the curent map and the current gametype are technically incompatible.
- Add an option to enable GLSL support in the menu. The variable r_ext_vertex_shader could still be set to 0 by default for compatibility reasons, but it should be comfortably reachable. See also here.
- Other than simply turning Bloom on/off, its menu option could have four values "disabled/classic/cascaded blur 1/cascaded blur 2", controlling both r_bloom and r_bloom_cascade variables. Not sure how to name Fromhell's bloom: I suppose "classic" or "original". Note: OA 0.8.8 only has original and "cascaded 1" bloom... "cascaded 2" version has been proposed after 0.8.8, and maybe it's not even in the SVN and test binaries yet (I don't know)! Forum thread about "cascaded blur 2" here.
Server browser Edit
- The ability to search a player with his nickname, when playing multi-player. - Such function is available on the dpmaster web page, and with some external tools.
- The ability to filter or show the name of the mod in use on each server. See here.
- The ability to filter low ping only servers. Show/hide them, like with the full, empty and private servers.
- The ability to see server address. This may be achieved by using a status line to show the address of the currently highlighted server, for example.
- Adding a button to be able to show "serverstatus" infos for the currently selected server, without the need to join it. That would simply execute the /serverstatus <address:ip> command and show the output in a dialog window.
- Allowing people to know how many favorites slots are used (e.g. 3/16). Also showing an error message if trying to add a new favorite when all fav slots are already used would be important.
- Updating cg_weaponorder default value (see autoswitch weapons) to integrate the three Team Arena weapons (weapon numbers 11, 12, 13). Considering that if a weapon is not in the list, this prevents both autoswitching FROM and TO that weapon (in modes 3 and 4), it is important all weapons are there (except grapple). See here and following posts on the forum. This is important, their lack may be considered a bug maybe.
- Allow to set a "best weapon key" that would automatically switch to the avaiable weapon most on the right side of your cg_weaponOrder list (see autoswitch weapons). Not urgent at all, but an idea.
- Maybe taking in account your cg_weaponorder variable also while having the "forced switching" due to "out of ammo"? Maybe this may be applied when the player is using 3 and 4 autoswitch modes only, and continue using the classic behavior otherwise (or if the list variable is empty).
- Integrating server-side demos in official OpenArena, removing the need of using unofficial executables. Forum thread
- Trying to find a way to make demos more portable between different OpenArena versions. One of the threads mentioning it.
- Integrating some kind of anti-cheat system.
- Since OpenArena 0.8.5, "cl_yawspeed" and "cl_pitchspeed" (variables that control the speed of turning around with keys) are hardcoded to 140.0 value (this maybe to prevent abuse of them, like a "180 turn button"?): e.g. setting them to 1 or to 3000 does not make any difference in practice. But the variables do not result as "read-only" or "cheat-protected", you simply change them but they have no effect: this may be confusing and seem a bug. It should be clearer that they are protected, and maybe some server-side way to disable the lock (like it happens with videoflags?) may be nice, or maybe allowing some ranges of freedom? An update here.
- updated maps should use a different name like am_galmevish <-> am_galmevish2 and not like oasago2 or oa_minia thus updated servers can use the version they want
- An option for autodownload only free stuff (a client option to choose if download anything or only "free" stuff). That would likely mean to create a standard for specifying licensing infos in PK3 files. (This option should probably be disabled by default, because all old stuff, including Q3 maps and mods, would not contain such licensing info). See forum thread.
- Adding the green armor (jacket armor, light armor) +25. Also the 2D item of the yellow armor may be a little tweaked. Forum thread.
- Adding support for different gravity levels in different areas of the same map (that would allow to play at lower gravity when outside space station or space ship, and at normal gravity when inside it... e.g. DM-Hyperblast of Unreal Tournament). It may sound difficult do to, but it looks like those of PainKeep Arena mod managed to do it. PainKeep Arena source code is available, but it's not GPL: we cannot copy-paste from it into OA, but anyway it could give useful hints about how to implement the feature also in OA. Some more infos here on the forum. That may be enable the creation of really cool maps.
Already implemented Edit
Move here wishes that have already been implemented, but have not been yet released with an official OpenArena version. When the new OA version containing them will be released to the public, please move them to the Wishlist/Archive page.
Dismissed ideas Edit
- Team Arena source code contains an unfinished "portal device". Maybe it could be completed and used in OpenArena (like it happened with the grapple). Obviously, we should check it would not became a "game breaker"... See here and here.