QTV ToDo

From FTE
Jump to: navigation, search

FTEQTV TODO List

1) free-float prediction to remove jerkyness

2) bug character fix when people quit

3) Announce client name changes

4) chat (when you are connected to a stream or demo, your chat should only go to those in the stream or demo with you).

5) Announce to players only in the main menu when another player goes off to observe/play somewhere (xxx has connected to yyy, or xxx is observing yyy, etc), and announce to players in the same stream when a player in the stream leaves or enters

6) Change names from "playername >" to "[QTV] playername" (or i guess different color so qtv text sticks out

7) Listen to client's rate settings

8) force pov change using TRACK if qtv is connected via udp

9) .clients and clients menu options to see who's connected to qtv (and see what they're doing, e.g.: client1 [watching this demo] or client2 [observing this game] etc

10) [MOLGRUM] change name from "FTEQTV" to "FTEQTV X" where X is the number of people connected to the proxy. Change name every minute or so as to not create problems. (x could of course be three digits)<s>

<s>11) [MOLGRUM] menu needs: (items 1-5 centered)

  1. FTEQTV build xxxx
  2. www.FTEQW.com
  3. ------------- (linebreak)
  4. hostname (ip:port)
  5. \n
  6. Connect
  7. Server Browser
  8. Demo Browser
  9. Clients
  10. Admin Menu
  11. Help

12) [MOLGRUM] .qtvinfo reports the following: [QuakeTV] hostname | ip

13) [MOLGRUM] IF OBSERVING: replace say function to talk to specs, say_game function to talk to game, and say_team talks to QTV people. IF PLAYING: say and say_team talks in-game, say_team talks to players on team and QTV people

14) proxy <-> proxy chat (what the hell did I mean by this? anyone know? -Up2)

15) following commentators (works to an extent, bit buggy)

16) voice chat (current plan is to use speex codec. will depend on todo 11)

17) QTV should send an autotrack command to server if server is KTX or KTPRO, and if QTV is connected via UDP

18) bug: player.mdl goes to frame0 on gibs

19) bug: sound/entity's not appearing on map load sometimes.

20) Add people connected to the stream in the quakeboard (so you could see time/ping etc). You (your name, not "you") should be the FIRST one, followed by the rest in alphabetical order. Each name should have [QTV] at the beginning (brown [] white QTV). Always truncate list of QTV watchers first, never players or actual spectators.



possible: 1) broadcasts when a new stream becomes available

2) proxy locking

3) reverse connections (server connects to proxy)

4) frag previewing. using the prebuffered data to calculate who will get the next kill and track that player until they score their kill. specifics need figuring out

5) .observe map changes can result in the proxy hightracking someone that might not be in the game yet, positioning the camera at '0 0 0'




Molgrums bughunt while playing with QTV:


1) You don't drop from the server when using ".disconnect".

2) After voting a map, the scoreboard shows up at all times (can't get rid of it), showing nothing at all but the labels such as "Name", "Frags" etc.

3) You're alone on the scoreboard, but can see specs.

4) On mapchange, you get no team, no name, no weapons, no armor, etc (disappeared from scoreboard too).

5) The rollangle when player is dead doesn't work (make it into a feature!).

6) Setting a master server doesn't make QTV send any heartbeats to it.

7) Angles are not set when entering a KTX server the first time (they are set correctly the rest of the spawns though).

8) Does not forward any stuffcmds to the client (can't execute any KTX commands, like mapvoting and /ready).

9) At the end of a match, the single player scoreboard is shown instead of the multiplayer one.

10) When MVDSV server has teamplay > 0, the client does not show the "team" column in scoreboard.

11) Win32/EzQuake 1754 (and above) -> QTV -> Any QW server: The mouse pitch doesn't work (can't move the view up/down).

12) When a map loads, the QTV start map flashes for a few milliseconds (seems to only happen in FTE client).

13) Seems like the "prespawn from different level" crap is still in QTV, do like normal clients do now (simply reconnect automatically or whatever it is).

14) The "serverinfo" command in both FuhQuake and ezQuake gives no reponse.

15) When I get on a server that has a map that I don't got, and the server is about to offer me the download, I get an error:

Downloading maps/something.bsp...

File not found.

Unable to load or replace maps/something.bsp

Unable to load or replace *1

Host_EndGame: Worldmodel wasn't sent

16) Entities are correctly removed from the surface whenever the user is under water, but the threshold lies too high. So for example, the user is jumping down into the water and is going down under, the entities above water will disappear before the user has fully entered the water.

17) When using say_team, you talk to the QTV instead of to the team you're playing with.

18) QTV drops sometimes from certain MVDSV servers.




Molgrums bughunt while spectating through QTV:


1) It seems QTV is focusing only on the highest scoring player. This means that only server data that player can see is sent to me, and I can't spectate whoever I want.




Molgrums collected feature requests:


1) EzQuake color code filtering.

2) Add a .ping command to get ping from servers (maybe make the number QW-style, why would you want to know anything else if pinging with QTV).

3) Add a command (for example .route) that will calculate from a known ping-table what qizmos/qtvs you would need to route through (if any) to get the best ping at a given server ip. Act as if the user is not connected to this QTV, so the routing starts at the users localhost and not this QTV. Maybe use Djikstra's here? Support for multiple routings would be cool. An example response can look like this:

quake.se qizmo -> suomicom.fi qizmo -> elvis victims ffa = 26 ms

4) Include some standard teamsays so newbies easily can switch clients and bind their keys to premade teamsays. Some examples how this can be done:

bind e "say_team .qtpreport"

bind e "say_team ==safe=="

Do whatever you think is the better choice, if you even like the idea :)

5) If possible, implement a QTV "shownick" equivalent, so you don't need KTPro/KTX to use it.

6) If possible, include the %-macros and $-macros found in Qizmo, FuhQuake, Mqwcl and ezQuake.

7) Some thoughts about voice chat:

Either send the sound data through the QW-server, to the ones who are there. OR send the data through an external server of the users choice, maybe support Teamspeak/Ventrilo here. If possible, support both. But I'm worried that sending sound data through the QW-server might cause lag for the players.

Make two types of channels: clan channels and commentary channels.

Clan channels: Can be created freely, but on match-start players with numbers higher than maxclients/2 are kicked and the channel is locked from having more users than maxclients/2. Make player1 the admin of the channel, that user may switch places with another player that needs to be admin. If player1 leaves make player2 into player1, etc.

Commentary channels: Like clan channels, but giving player1 admin would obviously not work here. Maybe do a password system so those who supply the password by ".auth <user> <password>" are granted admin of that channel.

This is all very messy, I'm not at all capable of understanding how all this would work out, but the basic demands are probably going to be something like the above :)