FAQ  •  Register  •  Login

Bitfighter 013f To-Do List [Split]

Forum rules
This forum is for technical discussion only. If you are interested in gameplay or client-side issues, please post in Bitfighter Features.
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Mon Nov 15, 2010 10:46 am

Bitfighter 013f To-Do List [Split]

OK, here's what I'd love to get done for an official 013f release. Nothing on this list is critical, and I would be open to suggestions that we should just make the release we have 013f, and save these for 013g. If anyone wants to comment on this list, suggest priorities or features to defer, please post here. If anyone wants to tackle any of these items, please post here so we don't collide with one another. For the most part these are easy things.

If we can get #12 done, I'm inclined to release with whatever we have done by Friday, and defer the rest.

#4 can be deferred, and I should do that. Zoomber is going to take a swing at #2. I will also grab #9.

1. Cloaking -- make cloaked ships slightly visible to teammates
2. Remember connect-to-server password the way admin/levelchange passwords are now remembered
3. Add K's proposed levelgen additions
4. Document vectors & timers & geometry library, and make sure they all work in levelgens and in bot scripts (not sure timers need to work in levelgens just yet...)
5. Provide some sort of option for letting users test from the editor with a server password, so others can't connect in the middle of a testing session, or, better, provide an option to not have testing levels announced to the master server (but providing the option to do so to make it easy to show a friend your level)
6. Resolve the fact that you can have duplicate names in the game (the old .1, .2, ... system seems broken)
7. Fix the 10 key on K's joystick (to be fair, this seems affect other joysticks as well)
8. Disable Zoomer's secret weapon (sorry dude, it was a nice hack though!)
9. Provide a help page with some rudimentary help for consoles in both the editor and in the game (in both cases, add an additional page to the end)
10. Adjust location of scores in team-nexus to allow display of 4 or 5 digit scores. Currently, only 2.5 digits are shown
11. In games with no teams, show score of leading player and current player where team scores usually are (though long names may make this annoying enough to skip it.. maybe instead of names, labels like "Leader:" and "You:"?)
12. Get the Mac build into a DMG
<<

sam686

User avatar

Posts: 468

Joined: Fri Oct 15, 2010 8:53 pm

Location: United States, South Dakota

Post Mon Nov 15, 2010 2:25 pm

Re: Bitfighter 013f *windows & mac pre-release*

6. Same name, wrong team in scoreboard. (edit: I may have fixed with unable to change team for client side, and force everyone unique name for anyone having duplicate name for server side.) http://sourceforge.net/tracker/?func=de ... id=1026958
7. my "Logitech Dual Action " Button 10 fix, http://sourceforge.net/tracker/?func=de ... id=1026958

Some more bugs are in Source Forge, tracker, bugs.
<<

ZoombeR

Posts: 1036

Joined: Fri Jun 04, 2010 11:56 pm

Post Mon Nov 15, 2010 9:50 pm

Re: Bitfighter 013f *windows & mac pre-release*

1.
  Code:
static bool showCloakedTeammates = true;    // Set to true to allow players to see their cloaked teammates


Is one fixed already? All I had to do was search for this line and set the op from false to true.

2. Working on this one. Still a bit confused but I think I'll be able to handle it.

8. Huh? That was in my secretory build, I don't think I would have released that. Besides that, everything I turned on, is off in the svn by default.

10. I have some ideas on this, and I have gotten the scoreboard to move left a little, but it doesn't look pretty yet. It's not adjusting exactly how I wished it had, but I think it will play out fine.

12. I can do that. My last releases were with the .dmg format, I think the standalone package should work fine, not sure why it wouldn't.


~~editing for more checks~~

btw, once we get things done, and you have verified them and added them, could you slash them through? if there is that bb code function here? so we know which ones are done?
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Tue Nov 16, 2010 5:06 pm

Re: Bitfighter 013f *windows & mac pre-release*

Code:
static bool showCloakedTeammates = true; // Set to true to allow players to see their cloaked teammates



Is one fixed already? All I had to do was search for this line and set the op from false to true.


Looks like an easy fix... did you test that it worked?
<<

Cracatoa

User avatar

Posts: 292

Joined: Sun Apr 18, 2010 2:39 pm

Location: In your attic

Post Tue Nov 16, 2010 8:04 pm

Re: Bitfighter 013f *windows & mac pre-release*

watusimoto wrote:6. Resolve the fact that you can have duplicate names in the game (the old .1, .2, ... system seems broken)

Joy! My class has an annoying habit of impersonating me (they watch when I add passwords).
The bottom statement is false.
The top statement is true.
<<

ZoombeR

Posts: 1036

Joined: Fri Jun 04, 2010 11:56 pm

Post Tue Nov 16, 2010 8:52 pm

Re: Bitfighter 013f *windows & mac pre-release*

watusimoto wrote:
Code:
static bool showCloakedTeammates = true; // Set to true to allow players to see their cloaked teammates



Is one fixed already? All I had to do was search for this line and set the op from false to true.


Looks like an easy fix... did you test that it worked?


Yessir Yessir looks great


watusimoto wrote:6. Resolve the fact that you can have duplicate names in the game (the old .1, .2, ... system seems broken)


The system seems not to be there anymore?
Do you know the location of the old system?
Nothing of that nature appears in UiNameEntry.cpp
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Tue Nov 16, 2010 10:38 pm

Re: Bitfighter 013f *windows & mac pre-release*

It's not when you enter the name, but rather when you connect to the server. The function that does the uniquing is c. 984 in gameConnection.cpp...

  Code:
std::string GameConnection::makeUnique(string name)
<<

sam686

User avatar

Posts: 468

Joined: Fri Oct 15, 2010 8:53 pm

Location: United States, South Dakota

Post Wed Nov 17, 2010 12:29 am

Re: Bitfighter 013f *windows & mac pre-release*

watusimoto wrote:It's not when you enter the name, but rather when you connect to the server. The function that does the uniquing is c. 984 in gameConnection.cpp...
Unique name on server connect, server may rename a player. Is this what you want?
gameConnection.cpp . line 1056
  Code:
else // Runs on server
{
mClientName.set(makeUnique(mClientName.getString()).c_str());

The same link in my previous post, there is a comment on my code fix. http://sourceforge.net/tracker/?func=de ... id=1026958
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Wed Nov 17, 2010 1:49 am

Re: Bitfighter 013f *windows & mac pre-release*

OK, code for 1, 7, & 9 are in the new repository. As is a server-side fix for the xss issue, thanks to dbuck.
<<

ZoombeR

Posts: 1036

Joined: Fri Jun 04, 2010 11:56 pm

Post Wed Nov 17, 2010 8:34 am

Re: Bitfighter 013f *windows & mac pre-release*

We cant just fix the game connection file to fix names

For this you have to relate back to the original Zap game and how it worked.

Because there was no chatroom, all that was necessary, was putting a name.X variable which would increase if strangely enough more impostors joined.

So, we should move the name checker to uinameinput, since now, its mandatory everyone connects to the master server.

I dont know if you leave your connection to the master server when you join a game, but what If we keep a constant connection to the server?
This way, a script that says, if name X is already used, change to X.0 or however you want to name the impostor.
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Wed Nov 17, 2010 9:52 am

Re: Bitfighter 013f *windows & mac pre-release*

NOTE: This case has now been completed

@sam686 -- yes, names should be uniqued by the server upon connect

@zoomber --

You are always connected to the master server once you run Bitfighter. Unless, for some reason, you lose your connection to it, or are never able to join. You can play without the master.

Traditionally, the unique name was enforced at the server level, not at the master level. If it were done at the master level, we'd need to handle the following situations:

client starts BF, can't reach master (maybe offline for a minute)
client joins game on local network (don't need master for that)
client has duplicate name to other player on server.

or

client starts BF, can't reach master (maybe offline for a minute)
client joins game on local network (don't need master for that)
master comes online and finds two players with the same name
master changes client's name
now client, game server, and all other clients connected to game server need to be notified of name change

There's a lot of messaging required to do it this way. True, if the master is online, and everything runs smoothly, it will work great, but it is much less tidy when there is a glitch.

This is exactly the same problem I faced when implementing the forums username tie-in (debuting in next release 014), which is dependent on the master. When the master is offline, everything gets messy.
<<

ZoombeR

Posts: 1036

Joined: Fri Jun 04, 2010 11:56 pm

Post Wed Nov 17, 2010 5:28 pm

Re: Bitfighter 013f *windows & mac pre-release*

watusimoto wrote:NOTE: This case has now been completed

@sam686 -- yes, names should be uniqued by the server upon connect

@zoomber --

You are always connected to the master server once you run Bitfighter. Unless, for some reason, you lose your connection to it, or are never able to join. You can play without the master.

Traditionally, the unique name was enforced at the server level, not at the master level. If it were done at the master level, we'd need to handle the following situations:

client starts BF, can't reach master (maybe offline for a minute)
client joins game on local network (don't need master for that)
client has duplicate name to other player on server.

or

client starts BF, can't reach master (maybe offline for a minute)
client joins game on local network (don't need master for that)
master comes online and finds two players with the same name
master changes client's name
now client, game server, and all other clients connected to game server need to be notified of name change

There's a lot of messaging required to do it this way. True, if the master is online, and everything runs smoothly, it will work great, but it is much less tidy when there is a glitch.

This is exactly the same problem I faced when implementing the forums username tie-in (debuting in next release 014), which is dependent on the master. When the master is offline, everything gets messy.


The thing:
If you are playing locally, that shouldn't be the biggest of problems, since in 99.9% situations, you'll see the other player who is going online your game.

If they are using you as an impostor, well, its not the biggest of problems, since your right there.

As for problem 2, the fix is easy.
If they are in a game, and then connect to the master server, while the real person is also connected, there are a couple other options I have in mind.

I picture alerts for impostors to look like the "outdated game" alert.

1. Do nothing. Once they leave their game, alert them that someone is using the same name when they are back in the menus.
This would probably be the smoothest solution, but would still have some flaws and loopholes

2. Interrupt their game with a message. In it, first explain that their name is already in use. Under it, put two options, one enabled by a (hotkey)
:::::::
Continue Playing -> name will be changed to [name-varriable].[quantity-varriable]
///To the side of this, you could indicate Enter, is a hotkey to choose this option.
::Option two::
Choose a new name

Only clickable, the user can now take the time to choose a new name for himself/herself

This provides ease of access, even when in the middle of a game, and can not completely interrupt their gameplay.

3.
Do not broadcast their game on the master server list
Only until they leave the game and return to the menu to find their name is already used.

In the options menu, you can select "bring server online"
And when that happens, you'll be prompted to change your name.


Hope one of these may resolve the conflict.
I personally like option 2. At least until 014 gets out.
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Wed Nov 17, 2010 10:54 pm

Re: Bitfighter 013f To-Do List [Split]

014 will offer the ability to password protect your name (via your forums account), all this will be moot, perhaps as soon as early next week. If two unregistered players use the same nickname, it only really matters at the server level, so that is probably the proper place to resolve any conflict. If there are two ChumpChanges on two different servers, then there is no problem. If there are two on the same server, then one will get renamed to ChumpChange.0, and there is no problem.
<<

sam686

User avatar

Posts: 468

Joined: Fri Oct 15, 2010 8:53 pm

Location: United States, South Dakota

Post Wed Nov 17, 2010 11:53 pm

Re: Bitfighter 013f To-Do List [Split]

watusimoto wrote:014 will offer the ability to password protect your name (via your forums account), ...
Make sure default name "ChumpChange" is not registered, it should never need password. Don't want to see new players get angry with password, who did not change name.
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Sat Jan 08, 2011 9:41 am

Re: Bitfighter 013f To-Do List [Split]

Turns out you can add teams via levelgen...

  Code:
if(math.random(2) < 2) then
 teamName = "Green"
 Red = 0.0
 Green = 1.0
 Blue = 0.0
else
 teamName = "Red"
 Red = 1.0
 Green = 0.0
 Blue = 0.0
end
levelgen:addLevelLine("Team " .. teamName .. " " .. Red .. " " .. Green .. " " .. Blue)
 
<<

ZoombeR

Posts: 1036

Joined: Fri Jun 04, 2010 11:56 pm

Post Sun Jan 09, 2011 11:00 am

Re: Bitfighter 013f To-Do List [Split]

why not?
<<

watusimoto

Site Admin

Posts: 1558

Joined: Tue Feb 23, 2010 7:07 pm

Location: Quartz's mom's house

Post Sun Jan 09, 2011 3:04 pm

Re: Bitfighter 013f To-Do List [Split]

It was a feature request for 014

Return to Technical Discussion

Who is online

Users browsing this forum: No registered users and 6 guests