Difference between revisions of "Running Bug List"

From Bitfighter
(General Bugs)
(General Bugs)
Line 42: Line 42:
 
# Remove access to dangerous Lua libraries (esp. os and io)  See http://lua-users.org/wiki/SandBoxes for ideas.
 
# Remove access to dangerous Lua libraries (esp. os and io)  See http://lua-users.org/wiki/SandBoxes for ideas.
 
# Editor plugin Lua crash will crash the game with a segfault
 
# Editor plugin Lua crash will crash the game with a segfault
 +
# Move Lua loadout changes to Ship, from Robot
  
 
====Things to test after next lua rewrite====
 
====Things to test after next lua rewrite====
 
# 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."
 
# 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."
 
#:<code>-- for bug #33 from sam686<br>function main()<br>&nbsp; for x = 0, 20 do<br>&nbsp; &nbsp; for y = 0, 20 do<br>&nbsp; &nbsp; &nbsp; item2 = ResourceItem.new()<br>&nbsp; &nbsp; &nbsp;  item2:setGeom(x * 100, y * 100)<br>&nbsp; &nbsp; &nbsp; levelgen:addItem(item2)<br>&nbsp; &nbsp; &nbsp; textitem = TextItem.new()<br>&nbsp; &nbsp; &nbsp; textitem:setText(x .. "," .. y)<br>&nbsp; &nbsp; &nbsp; textitem:setGeom(x * 100, y * 100, x * 100 + 100, y * 100)<br>&nbsp; &nbsp; &nbsp; levelgen:addItem(textitem)<br>&nbsp; &nbsp; end<br>&nbsp; end<br>end</code>
 
#:<code>-- for bug #33 from sam686<br>function main()<br>&nbsp; for x = 0, 20 do<br>&nbsp; &nbsp; for y = 0, 20 do<br>&nbsp; &nbsp; &nbsp; item2 = ResourceItem.new()<br>&nbsp; &nbsp; &nbsp;  item2:setGeom(x * 100, y * 100)<br>&nbsp; &nbsp; &nbsp; levelgen:addItem(item2)<br>&nbsp; &nbsp; &nbsp; textitem = TextItem.new()<br>&nbsp; &nbsp; &nbsp; textitem:setText(x .. "," .. y)<br>&nbsp; &nbsp; &nbsp; textitem:setGeom(x * 100, y * 100, x * 100 + 100, y * 100)<br>&nbsp; &nbsp; &nbsp; levelgen:addItem(textitem)<br>&nbsp; &nbsp; end<br>&nbsp; end<br>end</code>

Revision as of 07:20, 5 April 2013

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. When a script deletes a ff projector, bobdaduck reports the ff is not also removed. Also problematic: setTeams, setLoc, etc. Basically anything with FFPs don't appropriately update the attached FF
  8. /shuffle is broken...
  9. Disable fast regen when standing still trying to build something with engineer
  10. Ship is rendered behind repair items?
  11. 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.
  12. Clean-up master chat commands. Add consistency; /raptor -> /pm raptor etc.
  13. Lua API setHealth on Turrets/FFs not working
  14. health items set at no regen still regen at default rate
  15. Quartz' kaen test euthanasia:
    • Ghost ship hitting an energy item
    • Set teleporter entrance == exit; set Delay=0 (should we remove this?)
    • ghost (neutral) ship touching a levelgen'd zone (goalzone did the job)
  16. Lua API doc fixes:
  17. 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
  18. Bobdaduck's Lua API crashes:
    • create and delete a spybug each tick, then shoot the spybug. crash!
  19. Client-side crash sometimes when another ship moves into a slipzone. Looks like a memory corruption: http://pastie.org/7056652
  20. Client-side crash dying with commander's map open: http://pastie.org/7063833
  21. If ship spawns in a zone, it should trigger the onShipEnteredZone event (bobdaduck reports it does not)
  22. 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
  23. Graphically indicate if turrets/FFPs are regenerative. bobdaduck suggests filling in the semicircle and triangle (turrent and FFP respectively)
  24. /addbots 6, crash! Due to this revision?: https://code.google.com/p/bitfighter/source/detail?r=d68cf36095763f5d9c928f7d03cb98ff2265fa41
  25. 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.
  26. Make INI option 'GlobalLevelScript' take multiple scripts. Probably just use comma-delimited list like so: GlobalLevelScript=logger,adminutils,killraptor
  27. Remove access to dangerous Lua libraries (esp. os and io) See http://lua-users.org/wiki/SandBoxes for ideas.
  28. Editor plugin Lua crash will crash the game with a segfault
  29. Move Lua loadout changes to Ship, from Robot

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