Feedback II

Geit

💜 I probably broke it 💜
aa
May 28, 2009
598
1,161
A year and a half ago, the initial TF2 Feedback System was released, it was intended to reimagine the way that feedback was delivered to map authors, the intuitive interface meant that players could easily share their thoughts on a particular location in the map, or on a particular situation that was developing in the map.

I’d like to think that it’s been a great success, here are some statistics for you:
  • Over two thousand registered players, of which thirty percent submitted at least one feedback.
  • Nearly thirty thousand annotations made over two thousand maps.
  • Three users with over 1000 annotations to their name.
  • One hundred and four events scheduled.
  • Over a million errors logged (oops).

And just for fun, here are the Top 10 contributors to the feedback system, ordered by the amount of feedbacks they’ve provided:

| Name | Feedback Length | Feedback Count
1.
| yyler | 54067 Characters | 1721
2.
| Wilson | 60811 Characters | 1488
3.
| Doom | 32352 Characters | 1063
4.
| Fr0z3n | 25771 Characters | 773
5.
| prestige | 18957 Characters | 768
6.
| LeSwordfish | 21811 Characters | 706
7.
| BY | 17711 Characters | 676
8.
| Ezekel | 25888 Characters | 649
9.
| re.wind | 19859 Characters | 633
10.
| LAGS AbsurdistOf | 20447 Characters | 572
However, in many ways the feedback system has been a complete and utter failure, some would argue that it impedes people from reflecting on a map and providing a generalized feedback and instead encourages thoughtless comments on matters of polish, rather than core gameplay. This is very much true, the “Feedback” system works more effectively as a bug reporting system than it does as its namesake. There are also flaws in the implementation, there is no distinctly easy way to derive where an annotation has been placed without opening up hammer and laboriously pasting in the co-ordinates. The event system is buggy at best, often requiring the organiser to wrestle with it to actually get the match recordings. There are also, according to the statistics I posted above, quite literally a million other problems.

So, without further adue, I would like to present my plans for Feedback II, which is the working title for the new version of the Feedback System.

A lot of the problems with the original Feedback system was that it was rushed, The initial versions of the web panel were made in a couple of hours, with absolutely no planning or prior prototyping. While Nineaxis did a great job of making it look good, it’s still the same old rickety framework underneath. Additional features were tacked on to this structure and over the past year, it’s become quite an unwieldy behemoth. It was also made with very little community input, sure it has additional features and has had massive improvement made to it based on community feedback, but very little of the community actually had a say in designing how it worked.

With Feedback II, this is something I very much intend to fix, I would like to hear your opinions and thoughts from the get go, I’d like to know what you need as mappers, and as players to help you make better maps, and subsequently, make the game better for everyone. I’ll be using this thread to post occasional updates and any significant design decisions (Time permitting, I do have exams in three weeks, and those take priority) and to take your feedback and hopefully incorporate it slightly better this time.

Another hope for the project, is that it should merge together a series of features that were part of separate projects into one core location. First and foremost of these is TF2 Heatmaps, which has not managed to see the light of day yet, and had a limited scope. Secondly will be a source implementation of EA’s “Battlelog” which will go into beta with the second milestone.

The rest of this post is a rough, bullet pointed roadmap, with current considerations and decisions etched on it. Please be aware that all dates and features are subject to change and move about, subject to my schedule and work-load.


Milestone 1 (12th July):
  • The original feedback web panel will be deactivated.
    • It will be available at feedback.tf2maps.net/archive for 3 months, with limited functionality.
  • The original feedback plugin will be removed from TF2M Servers
  • Data will be converted to the new database format and held at the ready.
  • The original plugin and web code will be open sourced, for those that care.
  • Round tracking removed, will be added back in Milestone 2.
  • Plugin Changes:
    • Plugin will use a socket based system to negotiate a connection with the control server. (Previously used solely MYSQL, which is a security risk if public access is required)
    • Plugin will require authentication to the control server through an API key
    • A server running the plugin will be rejected unless it is quickplay compliant (Minus the restrictions on custom maps)
  • Web Changes:
    • Entirely new web panel, written on the Kohana Framework and using an entirely new backend database (with old data imported)
    • Polished design, less repetition of elements and more significantly defined parts of the UI.
    • Groundwork for additional features in future milestones.
Milestone 2 (20th July):
  • Introduction of “Battlelog”-like Features:
  • Data will be tracked on a massive scale, on a per round basis:
    • Kills/Deaths
    • Player positions (at 5 second intervals)
    • Weapon Firings
    • Player “Actions” (Ubercharges, Buffs, Sentry events, etc)
    • Objective events (Point contests, flag captures)
    • Scoreboards and roles
  • The plugin will be updated to support the above list.
  • The plugin will be publicly released, and API keys will be available from the web panel.
  • Web panel updates:
    • New statistics section on the map details page, to display aggregate data from all rounds.
    • New ‘rounds’ pages for viewing information and statistics related to a particular round, Feedback will also be tied to rounds as well as the map.
    • New ‘servers’ section to display servers that support the feedback plugin
    • Map pages will have download links to the maps, the files will be pulled from servers that run the map (Stored locally, we will not be leeching bandwidth)
Milestone 3 (3rd August):
  • Introduction of TF2 Heatmaps.
  • Web panel updates:
    • A heatmaps section will be added to all rounds and map pages.
    • A user will be able to build their own heatmaps using the section provided, they will be built on the client-side and sent back to the server if possible.
    • Initially available heatmaps will include:
      • Kills/Deaths, restrictable to certain types of weapons, or even singular weapons.
      • Player locations. (Should identify regularly trafficked areas, etc)
      • Player actions. (Ubercharges, sentry events, etc)
      • Weapon firings, again restrictable, should help to identify where particular weapons are overused or overpowered.
    • Introduction of the screenshot engine
      • All annotations will automatically have a screenshot made of them.
      • All maps will have all their info_observer_points screenshots uploaded.
      • All maps will have overviews made automatically for them.
Milestone 4 (20th August):
  • Servers that support the replay system will have their replays copied to the Web Panel and reconstructed into STV Demos and attached to the applicable map page.
  • Servers that support Source TV will have their replays copied to the Web Panel and attached to the applicable map page.
  • Extended Details:
    • Replays will always be favored over Source TV demos if available on the server, if both systems are enabled, only the replays will be downloaded.
    • Map authors will have to opt in to have their demos fetched, an 'Opt-In' is only applicable for a maximum of 72 days after it is created (User selected length for below that) and demos will be deleted 28 days after their creation, or at author or server owner request (dual ownership)
    • Anyone will be able to download demos, however, they must be logged in to do so.
    • Events will have demos recorded automatically for any maps in them, regardless of opt-in status.
    • This option will only be available if the server owner has provided FTP details direct to their server, or they can be harvested using the readily available replay download link - It may also be possible to send them over a socket from the game plugin, however this may not be viable due to performance issues.
The Future (The future):
  • Expansion to other games, if possible.
  • Open source our data.
  • Que Sera Sera.

This is a very ambitious project, and it’s likely that some parts detailed above may never see the light of day, but for now they make a suitable goal, and one I’ll strive to achieve. If there is anything else you’d like to see, please mention it in this thread, and I’ll be sure to let you know what I think.

Thanks for reading this behemoth of a post! :p
 
Last edited:

tyler

aa
Sep 11, 2013
5,100
4,621
Awesome, I am glad you are returning to this to improve it! I have always loved this even with its flaws.

And... holy shit, I posted a lot of feedback.

You can all thank me now.
 

Seba

DR. BIG FUCKER, PHD
aa
Jun 9, 2009
2,364
2,728
I'm glad we're getting an update to this, even if most of my problems with it were due to the people using it, not the plugin itself. Keep up the good work!
 

grazr

Old Man Mutant Ninja Turtle
aa
Mar 4, 2008
5,441
3,814
encourages thoughtless comments on matters of polish, rather than core gameplay.

Pretty much this, but this isn't really a flaw of the system, only the people using it and the fact it's impossible to moderate without having admins playing babysitters all the time.

There will always be that one "i like ponies" annotation in every map.
 

Harribo

aa
Nov 1, 2009
871
851
A server running the plugin will be rejected unless it is quickplay compliant
I not sure I understand the reason behind this, doesn't make much sense to me.

Also I think I great feature could be letting people drop off stv or p-rec demos on a map's feedback page. Not all the servers using this will want to enable stv and if any lobbies want to competitively test it they're useually one person running p-rec, perhaps the plugin could recognise if the server is in tournament mode and if so pop a note up in game chat saying something like 'If you have recorded a demo of this scrim/playtest (or whatever) please upload it to feedback.tf2maps.net/demos', this idea is also one of the reasons I think forcing servers to enable quickplay would be bad.

Also just so a couple points I made in chat aren't forgotten, please make the event creation UI nicer to work with, like making the time of an event not an arbitrary timezone but the timezone of the user creating the event, oh and not use a popup window for the UI.

I also wanted to thank for not only making the last version of the plugin but coming back to this and really refining it, good luck.

Oh and if we are going to let other server's use this let people look at comments by server if they want
 

Geit

💜 I probably broke it 💜
aa
May 28, 2009
598
1,161
Also just so a couple points I made in chat aren't forgotten, please make the event creation UI nicer to work with, like making the time of an event not an arbitrary timezone but the timezone of the user creating the event, oh and not use a popup window for the UI.

Perhaps my choice of wording was wrong, what I mean by 'Quickplay Compliant' is that the server meets the requirements to become a Quickplay server, it does not necessarily have to be one, a further extension on this is that only the features relevant to the "BattleLog" will be blocked, users on those servers will still be able to leave feedback.

Maybe I won't end up with a system exactly like Quickplay (Because it blocks things I don't agree with, i.e. nocrits), but there will be restrictions, a fast-respawn, 100% crits server is hardly going to do any good to a map's statistics. - Again, I can always make this on a author defined per-map basis if you feel that would be better.
 
Mar 23, 2010
1,874
1,699
!gf something in the map

ex:
!gf there's a rock!
!gf this is a good sentry spot
!gf i died here, make it less hard for me to die here
!gf blu won, too easy for blu
 

DJive

Cake or Death?
aa
Dec 20, 2007
1,465
741
I was thinking, maybe there should be a character minimum on the fb, like, "needs to be at least 5 characters" or something.


... so we don't get !gf bad or !gf rock

I see possibly 2 issues with that. "!gf rock10chars" and lets say X user decides he wants to leave feedback and types in the issue(lesss than limit) gives him an error saying he is under limit. So instead of reporting again, annoyed he just moves on.
 

LeSwordfish

semi-trained quasi-professional
aa
Aug 8, 2010
4,101
6,597
I'd also like to not have the problem where you can't post a feedback because there's already one at that point. Gets annoying when you type a big thing and it turns out there's already a !fb clip nearby

Also, i dont want a minimum character limit. We want to incentivise people to try and leave feedback during gameplay, surely?

Which reminds me. Is it possible to get something to show when people are typing feedback in-game? so you dont get killed mid-feedback.
 

Geit

💜 I probably broke it 💜
aa
May 28, 2009
598
1,161
I'd also like to not have the problem where you can't post a feedback because there's already one at that point. Gets annoying when you type a big thing and it turns out there's already a !fb clip nearby

Also, i dont want a minimum character limit. We want to incentivise people to try and leave feedback during gameplay, surely?

Which reminds me. Is it possible to get something to show when people are typing feedback in-game? so you dont get killed mid-feedback.

The original intent behind the distance check on annotations was to prevent them from overlapping when viewed in-game with !toggleannotations, but as that functionality has been horribly broken by Valve, I may as well remove it entirely.

As for the difference between !fb and !gf is going to be narrowed, in that they'll both have locations logged, but they will still both exist as distinct commands with slightly differing functionalities in some respects.

And finally, no it isn't, the client doesn't even notify the server that it has opened the chat dialog and typing is taking place, and the content is only sent the moment you press enter. However, if I'm going to be asking Valve to implement anything, I'll remember to stick it in as a footnote for the billionth time.
 

LeSwordfish

semi-trained quasi-professional
aa
Aug 8, 2010
4,101
6,597
Thanks for clarification! I'll politely recommend the removal of viewing annotations- i've seen that used, ooh, twice? And if you can link the locations of annotations to the heatmaps, it becomes unnecessary, since you can either check the heatmaps or download the .vmf.

(That last function is bloody brilliant by the way. Havent built a map version without it.)

Okay, a new suggestion, since i'm already asking the world. !df. posts feedback at the location you were looking at when you last died.
 
May 2, 2009
320
306
And finally, no it isn't, the client doesn't even notify the server that it has opened the chat dialog and typing is taking place, and the content is only sent the moment you press enter. However, if I'm going to be asking Valve to implement anything, I'll remember to stick it in as a footnote for the billionth time.

Would it then be possible to have it show something above your head if you for ex. stop moving and double tapped reload and remove the icon after you move again or send feedback?
 

grazr

Old Man Mutant Ninja Turtle
aa
Mar 4, 2008
5,441
3,814
I feel i should remind you that sometimes it's unrealistic to ask or expect not to be killed when submitting a feedback as many pieces of feedback with the exception of signs or broken doors are left in highly contested areas such as choke points. It's unreasonable to ask the game to be paused for 30 seconds whilst one person writes an annotation.

But there is however nothing stopping them from revisiting or visiting the map prior to test sessions to avoid that dilemma.

As for the non-regulars who probably don't have that level of patience i should remind people that Geit did add in the functionality to view and leave annotations whilst in spectator. So instead of trying to unsuccessfully leave feedback during combat there's nothing stopping you from jumping into spectator the next time you die and flying around for a bit to assess and leave the relavent feedback.
 

Geit

💜 I probably broke it 💜
aa
May 28, 2009
598
1,161
Would it then be possible to have it show something above your head if you for ex. stop moving and double tapped reload and remove the icon after you move again or send feedback?

That'd be possible yes - but it's the type of thing that I'd consider a power user feature, that is, something that isn't particularly easy to use or remains undocumented. - I'd much rather see if Valve would be kind enough to finally add some events to signify that the player has started typing and display icons based on that. - I'll keep your solution in mind as a fallback though!

***

Also, on the note of "Objectives" for TF2, this is the information that I think is suitable to track, I'd be grateful if people could just check over it and contribute any other information they might think is useful. I also have to decide which events related to these entities to track, but that will come at a later time.
  • tf_objective_resource
    • Needs research
  • team_control_point
    • m_iszPrintName - The name of the CP to Print on the HUD
    • m_iCPGroup - The group that the Capture point is in
    • m_iDefaultOwner - The default team of the CP.
    • m_iPointIndex - The CP's unique index.
  • team_control_point_master
    • m_iszCapLayoutInHUD - HUD Layout, space delimited CP IDs, using comma for a new line.
    • m_iInvalidCapWinner - Team that is not allowed to win
  • team_control_point_round
    • m_iszCPNames - Space delimited list of Capture Points in the map
    • m_nPriority - The priority of the round, higher is selected first.
    • m_iInvalidCapWinner - Team that is not allowed to win
    • m_iszPrintName - The name of the round.
  • tf_gamerules
    • m_nHudType - The type of HUD to display
    • m_bOvertimeAllowedForCTF - Is overtime allowed when playing CTF?
  • tf_logic_arena
    • m_flTimeToEnableCapPoint - Time till the CP becomes active.
  • tf_logic_hybrid_ctf_cp
  • tf_logic_koth
    • m_nTimerInitialLength - How long the point has to be held for.
    • m_nTimeToUnlockPoint - Time till the CP becomes active
  • team_train_watcher
  • item_teamflag
    • m_nGameType
    • m_nReturnTime
    • m_nNeutralType
    • m_nScoringType

Also, you can find a list of all of the exact properties on these entities here.
 
Last edited: