Programming todo

From Trinity Reign Wiki

Jump to: navigation, search

Contents

Client

  • Core [Complete] Notes: The basic skeleton seems to be sufficient and stable.
  • GUI [WIP] Notes:
    • Out-of-Game [Complete] Notes: There may be a few things left to do, but for the most-part the out-of-game GUI is very stable and polished.
    • In-Game [WIP] Notes: Still quite a bit to be done here.
      • Menu [Incomplete] Notes: Basically non-existent at the moment, but it's pretty low priority for now.
      • Chat [WIP] Notes: Only basic chat functions in place at the moment. The chat system could need reworking to get multiple colors going at once and this is why it's listed as a work in progress. See Chat under the server to-do (scroll down) for information on the chat system.
      • Inventory [Incomplete] Notes: Not started yet.
  • Terrain [WIP] Notes: While the terrain support is implemented into the game, the shaders may need to be adjusted eventually; furthermore, there's a weak content pipeline for the terrain at the moment. Expect this to be complete when the editor is usable.
  • Collision Detection [Complete] Notes: I haven't tested it at all yet, but I don't see any reason it wouldn't work.
  • Sound [Incomplete] Notes: Will probably use OpenAL.


Server

  • Core [Complete] Notes: The core here is loosely defined due to the style of the server code.
  • Simulation [WIP] Notes: This probably won't be green until the last stages before this game goes public due to the fact that this is the area where the server will suffer performance hits.
    • Collision Detection [Complete] Notes: As far as I know it works okay, but it may be a good idea to test it more thoroughly.
    • Terrain [WIP] Notes: Keeping this yellow for now because it could be the case that the terrain and collision has to be broken up into a server farm or something similar in order to perform at a feasible speed.
  • Chat [WIP] Notes:
    • Say [Complete] Notes: All players within 1000 units of the chatting player hear what he/she has to say.
    • Party [Incomplete] Notes:
    • Guild [Incomplete] Notes:
  • Database [Incomplete] Notes: This will be used for storing in-game information mostly.
  • Load Balancing [Incomplete] Notes: Probably won't be in for a while, but may be necessary before going from beta to release.

Master Server

  • Core [Complete] Notes: Once again, the core here is loosely defined due to the style of the server code.
  • Authentication [WIP] Notes: While there's login authentication, there's no server-server authentication (session IDs?), meaning it could be easy for someone to hack into other's accounts... Nothing to worry about until we launch a beta.
  • Database [Incomplete] Notes: This will be used for holding account information.


Terrain Editor

  • Core [Complete] Notes: Uses Ogre3D, CEGUI and SPT2.
    • Camera System [Complete] Notes: Isometric view only.
  • File Operations [Complete] Notes:
    • DotScene [Complete] Notes:
      • Import [Complete] Notes: DotScene files can be created and loaded at any time.
      • Export [Complete] Notes: Simply selecting a save option should does this automatically without the need for nasty file operations.
    • Mesh Loading [Complete] Notes: Loading in a mesh consists of allowing the user to look at available mesh names then pick one. From there, it is placed in the world and automatically selected.
  • Tools [WIP] Notes:
    • Terrain [Complete] Notes:
      • Brush [Complete] Notes: May want several brushes for terrain modification.
        • Buttons [Complete] Notes: Left mouse button to raise, middle mouse button to flatten, right mouse button to lower, scroll wheel to increase or decrease brush size.
    • Splatting [Complete] Notes:
      • Brush [Complete] Notes: Select between available textures for splatting, left click to apply texture, right click to erase. Scroll wheel adjusts brush size.
    • Objects [WIP] Notes:
      • Properties [Complete] Notes: Allows for changing of properties such as x/y/z dimensions, scale, userData, etc.
      • Manipulation [WIP] Notes:
        • Selection [Incomplete] Notes: Need ability to select one thing and select multiple things and once.
        • Place [Complete] Notes: Places objects on the terrain at the mouse cursor.
        • Move [Complete] Notes: One of the later things to implement, can use properties to adjust things in early stages.
        • Rotate [Complete] Notes:
        • Scale [Complete] Notes: One of the later things to implement once again.
        • Snap To Terrain [Incomplete] Notes: Should allow objects to fall onto the terrain in a neat fashion.

Important Notes: When the terrain height is adjusted, the objects need to be refitted along the y to accomodate (preferrably using the offset the person has already put on the object from moving it).

Personal tools
3D art
communication