LunaLua Wishlist

If there is a function that is not implemented in LunaLua then you might want to add it to this wishlist. The LunaLua development team can look up this page when implementing new features.

Please also write your username, so the development team can contact you for further information if necessary. To do so please use " --~ " (without the quotes), which adds your signature.

LunaLua Core

 * Moving Data-Class to SQLite --Kevsoft (talk) 23:33, 6 November 2015 (GMT-3)
 * Add better lua data serialization (maybe JSON) for Data-Class --Kevsoft (talk) 21:51, 10 November 2015 (GMT-3)
 * Add something like onLateUpdate or onCameraUpdate to query the right coordinates for the camera. --Kevsoft (talk) 19:14, 7 November 2015 (GMT-3) DONE!
 * Add local wrapper for global objects like NPC so that events (for example, NPC:onKill) can be created and defined in multiple code files without issue. This structure will allow better organisation for events rather than having them clutter the global namespace. --Hoeloe (talk) 21:35, 11 November 2015 (GMT-3)
 * Make __eq of LunaLua objects capable to check other userdata (not from the same type). --Kevsoft (talk) 18:55, 15 November 2015 (GMT-3)
 * Make it possible to change Link's randomiser related to rupees (rupees appearing from enemies or from blocks)--Enjl (talk) 21:20, 16 November 2015 (GMT+1) DONE!
 * Make NPC:kill work for NPCs on hidden layers (currently it doesn't work, and here seems to be no way to kill hidden NPCs) --Hoeloe (talk) 05:55, 18 November 2015 (GMT-3) DONE!
 * Add the function given here: http://talkhaus.raocow.com/viewtopic.php?f=36&t=14980&p=334588#p334588 (registerCustomEvent) to mainV2.lua --Hoeloe (talk) 05:57, 18 November 2015 (GMT-3) DONE!
 * Add HTTP Network Support (HTTP POST/HTTP GET). (Original requested by docopoper) --Kevsoft (talk) 23:59, 29 November 2015 (GMT-3) DONE! (BUT WITH LIMITATIONS)
 * Make layer-objects/layer-names assignable (remove read-only, requires to update hidden flag on those objects) --Kevsoft (talk) 20:33, 14 May 2016 (MSK)
 * Add an ID argument for getIntersecting functions --Sambo 7 June 2016
 * Add a parameter to onMessageBox for the corresponding NPC/event reference --Rockythechao (talk) 01:44, 26 June 2016 (MSK)
 * Add a Misc.loadLevel function that works from both levels and the overworld --Rockythechao (talk) 05:26, 6 August 2016 (MSK)
 * Add a get####OnScreen function that gets objects (i.e. blocks) that are on the screen --Sambo 7 June 2016
 * Add Text.showDialog(message) to show a dialog window with selectable text and scrollbars, as a cleaner version of windowDebug. Preferably with richtext support. --Hoeloe (talk) 14:09, 14 July 2016 (MSK) DONE!
 * Make a function that "locks" memory addresses in SMBX. Explanation: http://www.supermariobrosx.org/forums/viewtopic.php?f=87&t=16995 --Sambo (talk) 25 Oct. 2016
 * Make the isHidden fields (all classes) writeable. I did a very simple test and confirmed that this field is independent of whether the object's layer is hidden. Try hiding a layer and then placing something on it in the SMBX editor if you don't believe me. --Sambo (talk)
 * Allow All define codes such as "Defines.gravity", "Defines.jumpheight", and "Defines.jumpheight_bounce" and other Defines to be defined for both player's separately. Ideally a "Defines2.gravity" and a "Defines1.gravity" so it can be set independently. (Would be useful for making the new characters compatible in 2player mode as well.) (Not sure if LunaLua Core or SMBX Related) (Requested by MECHDRAGON777) --~

API Module System

 * Refactor the API Module System --Kevsoft (talk) 23:10, 6 November 2015 (GMT-3)

Graphics

 * Menu API --Romajiquadhash (talk) 23:25, 6 November 2015 (GMT-3)
 * Load images from bitstream --Hoeloe (talk) 23:52, 6 November 2015 (GMT-3)
 * Expanded OpenGL to allow projection, depth buffering and other render targets --Hoeloe (talk) 23:52, 6 November 2015 (GMT-3)
 * Shaders supplied to OpenGL, as well as allowing them on the screen back buffer (pre-HUD) --Hoeloe (talk) 23:52, 6 November 2015 (GMT-3)
 * Add Text.print-function which takes scene-coordinates. (Original requested by Hoeloe) --Kevsoft (talk) 18:29, 8 November 2015 (GMT-3)
 * Add Graphics.draw which should take named arguments as table (i.e. Graphics.draw {type = RENDER_LUAIMAGE, x = 10, y = 20, target = theResourceObject} ) --Kevsoft (talk) 20:03, 9 November 2015 (GMT-3) DONE!
 * Add onDraw function that is called just before onHUDDraw - useful for organising code as it can guarantee things like camera coordinates. Probably a better naming convention than onHUDDraw, to be honest. --Hoeloe (talk) 19:22, 11 November 2015 (GMT-3) DONE!
 * (HIGH PRIORITY FOR A2XT) Ability to disable specific parts of the HUD, so that custom HUDs can be made that still behave correctly when a lua file hides the HUD, and elements such as the item box can be kept. -Hoeloe (talk) 04:09, 30 November 2015 (GMT-3)
 * Ability to draw SMBXMaskedImage objects using Graphics.draw functions --Sambo 7 June 2016
 * Incorporate the ability to remove certain objects from the HUD without removing the whole HUD. This could take the form of Graphics.hideElement(int or table of int) with the possible values being 1-lives, 2-stars, 3-score, 4-item box, etc. For example, Graphics.hideElement(1) would remove the lives icon as well the life counter. To reverse these effects, it would be good to have Graphics.showElement as well. --Pixelpest (talk) 06:21, 17 November 2016 (MSK)
 * Text.printToScene and Text.printToSceneWP --Pixelpest (talk) 00:42, 20 November 2016 (MSK)

Audio

 * Refactor audio system to use a more robust engine that SDL_Mixer. This would allow more complete support for things such as multiple concurrent streaming music tracks, 3D positioning, reverb zones, runtime pitch alteration and audio filters. OpenAL has been suggested. -Hoeloe (talk) 00:48, 1 December 2015 (GMT-3)

SMBX Related

 * an onPauseMenu event --Rockythechao (talk) 22:38, 16 April 2016 (GMT-3)
 * Extended Camera class including one or more of the following: making the coordinates writable, x/y speed fields, x/y offset fields, a tracking target field that defaults to the player but can be set to nil or a table of objects --Rockythechao (talk) 02:51, 7 November 2015 (GMT-3) DONE
 * Some way to toggle/override collision between individual Player objects --Rockythechao (talk) 03:38, 16 November 2015 (GMT-3)
 * Query the mouse cursor for debugging? --Kevsoft (talk) 23:16, 15 November 2015 (GMT-3)
 * World map path and level classes (specifically: being able to check for paths near the player/detect if he's on one, and change the destination level filename/name of a world map level object) --Enjl (talk) 20:13, 25 November 2015 (GMT+1)
 * Allow starting of playing a level in the SMBX from command line or starting SMBX Editor with pre-opened level. That I wish to use to extend SMBX Integration features in the PGE Editor with ability to run test directly in the SMBX Engine which wasn't started before --Wohlstand (talk) 22:13, 11 December 2015 (GMT-3)
 * Possible to change the size of items (blocks, bgos, ...) (Original requested by Xirix) --Kevsoft (talk) 01:10, 13 December 2015 (GMT-3)
 * SMBX BUG: Dropping (not throwing) a veggie into lava causes SMBX to crash. Related to Mushroom in Lava glitch? (Elaboration and example: http://pastebin.com/V8wTdY4b ) --Enjl (talk) 15:05, 20 December 2015 (GMT+1) DONE [FIXED]!
 * onKeyDown/Up for world maps (Original requested by MECHDRAGON777) --Enjl (talk) 10:33, 12 May 2016 (GMT+1)
 * A Layer:move function with arguments "speedX" and "SpeedY" --Sambo 19 Aug 2016
 * A function to start a level, with the filename of the level as an argument. This would end the current level and start a new one if called in a level, or it would just start the level if called on the worldmap. --Sambo 19 Aug 2016
 * Priority on Worldmap. Graphics.drawImageWP stuff specifically. --Mechdragon777 (talk) 07:33, 18 October 2016 (MSK)
 * A BGO.spawn function, and a BGO.remove function. --Sambo (talk)
 * Allow spawn functions to accept a table of coordinate pairs. (Could be NPC.spawn(1, {{3, 4}, {2, 2}, {9, 4}}, 0), NPC.spawn(1, {3, 2, 9}, {4, 2, 4}, 0), or NPC.spawn(1, {3, 4, 2, 2, 9, 4}, 0).) --Pixelpest (talk) 06:12, 17 November 2016 (MSK)
 * an event for the on-screen or on-section appearance of a specific NPC --Professor Moriarty ([User talk:Professor moriarty|talk]) 10:49, 4th Dec 2016 (GMT)
 * Delete queue for blocks, which will be removed at the end of the tick (Original requested by Hoeloe) --Kevsoft (talk) 15:51, 1 January 2017 (MSK)
 * Get the current animation frame of an overworld object via member field (i.e .animationFrame) --Kevsoft (talk) 21:59, 12 February 2017 (MSK)