Running Bug List

From Bitfighter
Revision as of 19:01, 9 April 2013 by Raptor (Talk | contribs)

This is list of our current high-priority bugs for Bitfighter.

Not all issues belong on this list -- only those that are a high priority for the next release. Other cases should be added to the Google Code bug tracker.

General Bugs

  1. Joining a game already running won't show your badges in the scoreboard until next level. Existing clients get info on the joiner, but joiner doesn't get the full 411 on the existing players. GameType::serverAddClient::s2cAddClient isn't sending proper badge info to joiner.
  2. Fix (or kill) /suspend command. Removed client-side by raptor Do we need to remove the server ability to suspend client?
  3. Figure out how to get ids working properly with walls/polywalls
  4. When teleporting on top of walls (layered walls?) sometimes a player gets stuck and cannot move or commit suicide. This may be hard to track down.
  5. One black screen of doom case left: Open two clients; don't move in one to let spawn delay kick in (30 seconds); go to a /next level, the first should now be spawn delayed; go to /next level again, the first cannot come back to game now
  6. Fix memory leak with robots/levelgen because of disabling every luaW_hold<T>(L, obj); --> use reference counting to delete proxy when appropriate, and reenable this line
  7. Disable fast regen when standing still trying to build something with engineer
  8. Public Lua API members for the 'Item' object should probably be moved somewhere more appropriate. See http://bitfighter.org/luadocs/class_item.html isOnShip() should not apply to EngineeredItem, etc.
  9. Clean-up master chat commands. Add consistency; /raptor -> /pm raptor etc.
  10. Lua API doc fixes:
  11. Lua event onShipSpawned isn't triggered when starting a level already connected to a server. the 'suppressEvents' part of EventManager::fireEvent(EventType eventType, Ship *ship) [EventManager.cpp:292] returns true in this case for some reason
  12. Bobdaduck's Lua API crashes:
    • create and delete a spybug each tick, then shoot the spybug. crash!
  13. Client-side crash dying with commander's map open: http://pastie.org/7063833
  14. If ship spawns in a zone, it should trigger the onShipEnteredZone event (bobdaduck reports it does not)
  15. Improve screen for loading levels in editor -- perhaps general keyword search, or options for picking by author/title/file, or perhaps navigating a folder tree
  16. Graphically indicate if turrets/FFPs are regenerative. bobdaduck suggests filling in the semicircle and triangle (turrent and FFP respectively)
  17. /addbots 6, crash! Due to this revision?: https://code.google.com/p/bitfighter/source/detail?r=d68cf36095763f5d9c928f7d03cb98ff2265fa41
  18. FF/Turret snapping in the editor needs serious work. See http://pastie.org/pastes/7303300/text for a simple example (load in 'host-game' first to see what it should look like). Also rotation of things in the editor messes up snapping as well.
    • The test behaves as the code intends. It's more of a bug that you can put FFs there in the first place. Maybe we should add an INI option to disable engineered item resnapping when loading in the editor.
    • What about arbitrarily moving/rotating/resizing?
  19. Make INI option 'GlobalLevelScript' take multiple scripts. Probably just use comma-delimited list like so: GlobalLevelScript=logger,adminutils,killraptor
  20. Remove access to dangerous Lua libraries (esp. os and io) See http://lua-users.org/wiki/SandBoxes for ideas.
  21. If an editor plugin crashes (in Lua) the game will crash with a segfault. Should be resilient.
  22. Move Lua loadout changes to Ship, from Robot
  23. Editor plugins need to use the new API (via addItem, etc.) instead of :addLevelLine()
  24. Bot balancing bug: 3 people join on two teams, balance to 6 players. then all humans go on the same team. Result: bots's don't rebalance and you're left with 4 on 2.
  25. Sneaking suspicion that if one client is spawnDelayed, the server is delayed too
  26. missing levelgen:findObjects() method to search for in-game objects of whatever type
  27. Font Textures lost when change to/from fullscreen
  28. New sliding loadout indicator acts oddly: when hosting a game, it'll slide if *another* player enters a loadout zone

Things to test after next lua rewrite

  1. Levelgen: Having addItem() in main() may randomly fail on repeated ctrl+R in editor or repeated level restart, showing message "***LEVELGEN ERROR*** Error encountered while attempting to run script's main() function: ***.levelgen:44: attempt to call missing or unknown method 'addItem' (a nil value). Aborting script."
    -- for bug #33 from sam686
    function main()
      for x = 0, 20 do
        for y = 0, 20 do
          item2 = ResourceItem.new()
          item2:setGeom(x * 100, y * 100)
          levelgen:addItem(item2)
          textitem = TextItem.new()
          textitem:setText(x .. "," .. y)
          textitem:setGeom(x * 100, y * 100, x * 100 + 100, y * 100)
          levelgen:addItem(textitem)
        end
      end
    end