TODO/General

From UFO:AI
< TODO
Revision as of 13:10, 3 October 2012 by Mattn (talk | contribs) (Code)
Git working directory: root

The stuff in General is not assigned to a specific version.

But please do only commit stuff to trunk if it's no major change. If it is please ask a project manager before doing that.

Artwork

2D artwork

  • [open] Alternate skins for existing civilians, scientists, pilots, etc.
  • [open] We need normalmaps, specular maps, glow maps, etc. for a lot of our existing artwork. See Artwork for more details and use the forums to coordinate work.
  • [open] Alternate skins for 'crashed' aircraft.

3D models (other than maps)

  • [open] We need various character models that are animated
    • [WIP] Several soldier models with a unified style, in several different armors. TODO/Soldier_Models
    • [open] Civilians in all shapes and sizes
    • [open] Alternate scientists' models/heads
    • [open] Small 1x1 robot to be used as a scout drone
    • [open] New aliens with animations Proposals/Alien_Bestiary
  • [open] Aircraft/Hyperion-class_Armed_Dropship
  • [open] 'crashed' versions for the already existing aircraft models, essentially cutting the model into parts and making each part a seperate model
  • [open] Human-Alien Hybrid Missile (as aircraft weapon, I think)
  • [open] We must find GPL'd replacements for a few models with UNKNOWN licenses. [1].

Maps

PHALANX craft

Equipment interface and team handling

  • [open] equip screen before mission start, after map load, which will allow to adjust soldiers' equipment after reading mission briefing
    • [done] Allow spawning actors after the map was loaded
  • [WIP] extend team limit from 8 actors to some higher but reasonable value (that includes HUD updating)

Map code

  • [open] code to spawn a light on the map, which will be used for example with flares
    • That code is already there - spawn a server side edict that will spawn a particle for each client where at least one actor can see this edict. you can also use some triggers to use touch functions (to be able to execute different actions as soon as an actor enters a given grid field) --Mattn 19:41, 17 August 2008 (UTC)
  • [open] nextmap mission trigger (to immediately start new map after "finishing" first one) - useful for situations where we need to have a mission with more than 8 levels

LUA driven AI

  • [done] find targets
  • [WIP] shoot targets
  • [open] handle approaching far away enemies or when enemies are not seen
  • [open] better grenade handling
  • [open] hiding
  • [open] civilian ai

Music & Sounds

  • Atmospheric background noise for the missions (the more the better)
  • New music tracks for the geoscape and the battlescape
  • [WIP] Replace sounds from this list with gpled ones


Code Cleanup

  • Reduce sideeffects by global variables
  • Reduce sideeffects by interal cvar usage that is invisible to the caller (using a function should be mean to fully read the function, understand it, and handle the sideeffects)
  • Functions should "only" do what their names imply
  • [done] Every function in src/client/campaign should only be called inside of that dir (except one global init function that is called from cl_game_campaign.c). E.g. a skirmish or multiplayer game shouldn't know anything about techs.
    • once this is done, the game mode code should go into dynamic libraries - like the game.dll we have for tactical missions already.

Code

  • XVI Incorporate overarching XVI system.
  • Map ladders Code and model changes to allow using ladders on maps
  • [open] mission briefings at mission selection (to re-equip soldiers and decide whether you want to do that mission or not BEFORE you send your craft)
  • [WIP] Generate soldier names depending on their nation of origin. Change team_humans.ufo so it defines names per nation rather than per class. --Cmdrquan 23:11, 15 February 2008 (EDT)
  • [open] Proposed: Knockdown effect for very damaging hits.
  • [open] Code to handle Alien Containment behaviour during base defence mission - based on difficulty, aliens stored in containment should get free in certain situations and participate in the battle; i know more what to do and how, but this is a long-term task--Zenerka 12:07, 22 January 2007 (CET)
  • Multiplayer: (proposed) Point-based setup system.
  • (Proposed) Changes to reaction fire.
  • Support for 2x2 units such as Phoenix, Triax, Hovernets/Floaters, etc...

Equipment

  • extension container
  • [open] fix/finish equipments
    • [open] fuel pod (aircraft)
      • [open] reduces the operational range instead of increasing it
      • [open] can be equipped to antimatter powered craft and works on it
      • [open] doesn't blind anybody anymore

Inventory to team assignment

  • [open] each object that can wear, use, store items should get its own equipment container (that is NOT related to a global linked list)
  • [open] capacity can be calculated for each of the above mentioned equipment container because the all use the same data structure just with a different size
  • [open] inventory templates
    • [open] allow to save current soldier inventory as a template
    • [open] allow to equip soldier by picking desired template from the list; when doing that check if the items exists in base storage, block usage of template if no items for hands in base storage
  • [open] unhiring soldier
    • [open] readd inventory to base storage
    • [open] if the storage inventory is full at any point in the unhiring processed, drop any remaining items that are not already stored.
  • [open] beginning a mission
    • [open] soldiers can reequip themselves by using items from aircraft equipment container - but this costs TUs when we are already in the tactical mission
    • [open] open inventory menu for aircraft before entering a mission (button to do this in mission brief screen)
  • [open] dropship returns to the base
    • [open] reload soldiers' weapons (check for item.a, check if such clip is in base storage, reload)
  • [open] destroying an aircraft will destroy its storage as well - as it's an equipment container that is stored in the aircraft_t data
  • [open] adding items to aircraft storage updates aircraft capacity - do not allow to put too many things to aircraft (see the above mentioned capacity function for all the equipment containers)

New equipping menu code

  • Soldier equip menu should not be dependent from any aircraft - equipment should be stored at the soldier and thus only the soldier is needed to equip him (and the storage equipment container of course)
  • Additional option for transfer menu: transfer soldier to another base with (default) OR without equipment assigned to this soldier (just move the soldiers equipment container back into the base the soldier is currently in, or the aircraft the soldier is currently assigned to [if any] in case the base equipment container is full).

Interface add-ons

  • [low priority] Tooltip action with content based on specific values, when moving cursor on the specific node; it could be used in various situations, few examples:
    • [done] Moving cursor to the ammo in inventory menu shows tooltip with names fo the weapons that use this ammo ... vice versa for weapons. As long as the weapons are researched that is.
    • [open] Moving cursor to the hire button (of the employee already hired in another base) in hire menu shows tooltip the base where this employee is hired.
    • [open] Moving cursor to the reaction fire button in HUD shows tooltip informing which weapon and which firemode will be used.
    • [open] Moving cursor to the button "next entry" in UFOpedia shows the name of the next entry, same for previous entry.
    • [open] Moving cursor to the reload button in HUD shows tooltip informing about the amount of TU needed to reload.
  • [open] Rework the input system to allow user-configurable key combinations (such as shift+key or control+key). Currently, they have to be hardcoded.
  • [open] Allow the user to change key bindings in the game menu, rather than having to edit keys.cfg.

Pathfinding and Tracing

  • [WIP] Support hovering/flying units
  • [done] Support areas that are only reachable when crouching
  • [open] Support more accurate model tracing to determine pathfinding
  • [open] Support accurate pathfinding for 2x2 actors

Webpage & Sourceforge

Sourceforge

  • Make a clean list of all releases so far. Something like this:
    • ufoai 2.x
    • ufoai 2.2
    • ufoai 2.1
    • ufoai 2.0
    • ufoai 2.0-RCx
    • ufoai techdemo2
    • ufoai xmas release
    • data
    • tools
  • Also link to each download version from the matching Changelog.

Other

  • Psionic warfare
  • [done] UFO interceptions. See also the information in TODO/General/Aircraft Items for a more in-deep requirement list.
  • [done] Working random maps
  • FR #1493721: Change of building-selection (building info)
  • Add support for item- and building-upgrades. <Suggested by Winter>
  • Unmanned recon/spy drones that search for alien activity. You'd simply pay X credits to send a UAV drone out to check for UFOs and alien bases and such. <Suggested by Winter>
  • [WIP] Pilot management (pilot skills) -- Malick
  • [open] "civilian" teams, which can fight against aliens, like soldiers
  • [open] knockdown effect for very damaged soldiers
  • [open] Incorporate UFO_CONDOR (UFO -- Corrupter to the game - we already have model and one map with that UFO
  • [open] Incorporate flare (base/models/weapons/flare/) into the game (scripts entry, UFOpaedia article)
  • [open] Add tutorials

Installer