Difference between revisions of "User:TsT"

(my noob how to page)
m (more readable)
Line 1: Line 1:
 +
== Introduction ==
 +
 
Start playing with löve in 2009 (v0.5.0)
 
Start playing with löve in 2009 (v0.5.0)
 
Is back in 2011 on löve 0.7.1.
 
Is back in 2011 on löve 0.7.1.
Line 8: Line 10:
  
 
* repair 2nd computer and run the [http://love2d.org/forums/viewtopic.php?f=3&t=2907 test] on windows and linux
 
* repair 2nd computer and run the [http://love2d.org/forums/viewtopic.php?f=3&t=2907 test] on windows and linux
 +
** Status : in progress
  
* DONE. script to package directory to .love file my [http://love2d.org/forums/viewtopic.php?p=30549#p30549 lovemake.sh]
+
* lovemake.sh
 
+
** Status : Done, released
from ruby to lua or bash version, see http://love2d.org/forums/viewtopic.php?p=26001#p26001
+
** Description: script to package directory to .love file my [http://love2d.org/forums/viewtopic.php?p=30549#p30549 lovemake.sh]
 +
** from ruby to lua or bash version, see http://love2d.org/forums/viewtopic.php?p=26001#p26001
  
 
* random lib
 
* random lib
 +
** Status : Done, not released yet
 +
** A simple random generator with safe (re-)initialization.
 +
** Inspired from http://love2d.org/forums/viewtopic.php?f=3&t=2748
 +
** Idea: Using a seed with current random try.
 +
** Sample: function init() math.randomseed(math.random()*os.time()) end
 +
** Goal: You will be able to re-init it without predictability problem.
 +
** Note: include it in the jail (and catch the randomseed to forbid re-init)
  
A simple random generator with safe (re-)initialization.
+
* luajail and lovejail
Inspired from http://love2d.org/forums/viewtopic.php?f=3&t=2748
+
** Status : in progress  
Idea: Using a seed with current random try.
+
** Goal: made a secure (jailed) environment for running löve's games.
Sample: function init() math.randomseed(math.random()*os.time()) end
+
** TODO: test the crack*.love attacks [http://love2d.org/forums/viewtopic.php?f=3&t=2541 see this thread]
Goal: You will be able to re-init it without predictability problem.
 
Note: include it in the jail (and catch the randomseed to forbid re-init)
 
 
 
* (in progress) luajail and lovejail
 
 
 
Goal: made a secure (jailed) environment for running löve's games.
 
 
 
TODO: test the crack*.love attacks [http://love2d.org/forums/viewtopic.php?f=3&t=2541 see this thread]
 
  
 
* love API patch
 
* love API patch
 
+
** - newFrameBuffer internaly catch error (return nil on error).
- newFrameBuffer internaly catch error (return nil on error).
+
** - add missing screen/graphics functions (getFsaa, getVsync, ...)
- add missing screen/graphics functions (getFsaa, getVsync, ...)
+
** - add missing filesystem functions (getIdentity)
- add missing filesystem functions (getIdentity)
+
** - and more ...
- and more ...
 
  
 
* AI project
 
* AI project
 
+
** Play with simple Artificial Intelligence, see [http://love2d.org/forums/viewtopic.php?p=30779#p30779 UnLöve: Zombie Survival]
Play with simple Artificial Intelligence, see [http://love2d.org/forums/viewtopic.php?p=30779#p30779 UnLöve: Zombie Survival]
 
 
 
  
 
* jailfunc (lib)
 
* jailfunc (lib)
 +
** Goal: be able to allow/deny access of library or function (like os, io, require ...)
  
Goal: be able to allow/deny access of library or function (like os, io, require ...)
+
* jailfs (lib)
 
+
** Status :
* jailfs (lib) / jailnet (lib)
+
** Goal: be able to filter that is allowed to read (and write) on file system access
 
+
** Feature: think about allow a way to load a case insensitive filename (usefull for stupid zip software that push upper case character... seen in some forum topics...)
Goal: be able to filter that is allowed to read (and write) on file system access, but maybe also over the network connection (filter the ip:port like simple firewall)
 
  
Feature: think about allow a way to load a case insensitive filename (usefull for stupid zip software that push upper case character... seen in some forum topics...)
+
* jailnet (lib)
 +
** Status : nothing done
 +
** Goal: like jailfs but with the network connections (filter the ip:port like simple firewall)
  
 
* gameconf (lib)
 
* gameconf (lib)
 
+
** Goal: having easy function to manage game settings
Goal: having easy function to manage game settings
+
** (FIXME: I don't remember what exactly but I have part of code about that...)
 
 
(FIXME: I don't remember what exactly but I have part of code about that...)
 
  
 
* LUSE : Löve user Settings Enforcer
 
* LUSE : Löve user Settings Enforcer
 
+
** Goal: always keep control! be able to choose and enforce my user settings, allow or deny change on resolution/input grabbing/window-or-full-screen mode/no sound/etc.
Goal: always keep control! be able to choose and enforce my user settings,
 
allow or deny change on resolution/input grabbing/window-or-full-screen mode/no sound/etc.
 
  
 
* input layout
 
* input layout
 
+
** Goal: be able to manage keyboard : French, English, ... also maybe manage mouse with more than 3 ou 5 buttons.
Goal: be able to manage keyboard : French, English, ...
 
also maybe manage mouse with more than 3 ou 5 buttons.
 
  
 
* love-master
 
* love-master
 
+
** Goal: have a magic key (or sequence) to pause the game and got back to a safe environnement (like the love console?) to be able do ... what you want.
Goal: have a magic key (or sequence) to pause the game and got back to a safe environnement (like the love console?) to be able do ... what you want.
+
** For example:
For exemple:
+
*** debugging (see memory usage, variable values, ...)
* debugging (see memory usage, variable values, ...)
+
*** profiling (see stats about most called function) [http://lua-users.org/wiki/ProfilingLuaCode see ProfilingLuaCode]
* profiling (see stats about most called function) [http://lua-users.org/wiki/ProfilingLuaCode see ProfilingLuaCode]
+
*** access to the safe menu to configure (simple-firewall, jailfs or others settings)
* access to the safe menu to configure (simple-firewall, jailfs or others settings)
+
**Part of this project is to catch and lock the love callbacks ...
Part of this project is to catch and lock the love callbacks ...
 
  
 
* launcher
 
* launcher
 
+
**Goal: be bale to run my local love (with love-master, settings enforcement, etc.) have a way to choose what game is available. Run one of them in jail environnement.
Goal: be bale to run my local love (with love-master, settings enforcement, etc.) have a way to choose what game is available. Run one of them in jail environnement.
 
  
 
* fakelove (see [http://love2d.org/forums/viewtopic.php?f=4&t=2883&p=30075#p30075 here])
 
* fakelove (see [http://love2d.org/forums/viewtopic.php?f=4&t=2883&p=30075#p30075 here])
  
Others idea projects :
+
=== Others idea projects ===
  
 
* multi-love (lib)
 
* multi-love (lib)
 
+
** Goal: be able to run multiple (windowed) love program and link them together.
Goal: be able to run multiple (windowed) love program and link them together.
+
** Goal: be able to link (over network/LUBE?) multiple love program and share actions.
Goal: be able to link (over network/LUBE?) multiple love program and share actions.
 
  
 
* input layer (lib)
 
* input layer (lib)
 +
** Goal: be able to virtualise inputs (to have more than one mouse, one keyboard) see multi-love.
  
Goal: be able to virtualise inputs (to have more than one mouse, one keyboard) see multi-love.
 
  
 
+
== Experimentation in Future ==
== Experimentation ==
 
  
 
* drawing with z index (see Snippers Skip list and Skip list Drawing Order)
 
* drawing with z index (see Snippers Skip list and Skip list Drawing Order)
Line 108: Line 100:
 
Currently done (not yet released) :
 
Currently done (not yet released) :
  
* stringimprove (lib) (released : [http://love2d.org/forums/viewtopic.php?f=4&t=2886 here]) finally prefer using the BlackBulletIV's [http://love2d.org/forums/viewtopic.php?f=5&t=2893 strong.lua lib]
+
* stringimprove (lib)
Goal: Like [http://love2d.org/wiki/String_exploding String_exploding string.explode()], be able to split string as separated arguments in table.  
+
** Status : Aborted, [FIXMEURL strong] is better.
Improved String exploding Snippet  see http://love2d.org/wiki/String_exploding .
+
** (released : [http://love2d.org/forums/viewtopic.php?f=4&t=2886 here]) finally prefer using the BlackBulletIV's [http://love2d.org/forums/viewtopic.php?f=5&t=2893 strong.lua lib]
New string.split and string.join functions
+
** Goal: Like [http://love2d.org/wiki/String_exploding String_exploding string.explode()], be able to split string as separated arguments in table.  
 
+
** Improved String exploding Snippet  see http://love2d.org/wiki/String_exploding .
Conflict: [String_exploding http://love2d.org/wiki/String_exploding String_exploding]
+
** New string.split and string.join functions
 
+
** Conflict: [String_exploding http://love2d.org/wiki/String_exploding String_exploding]
Compatible: [http://love2d.org/wiki/String_extensions String_extensions]
+
** Compatible: [http://love2d.org/wiki/String_extensions String_extensions]
  
 
* glob (lib)
 
* glob (lib)
 
+
** Goal: be able to support a string matching with glob pattern (like "*.txt").
Goal: be able to support a string matching with glob pattern (like "*.txt").
 
  
 
* tablesort (lib)
 
* tablesort (lib)
 
+
** Goal: be able to make a for loop with keys on arbitrary/custom order.
Goal: be able to make a for loop with keys on arbitrary/custom order.
 
  
 
* bench (lib)
 
* bench (lib)
 
+
** Goal: a simple way (in pur lua) to run n times the same function and calculate the average time elapsed per iteration. Usefull to compare performance of 2 differents versions of the same function.
Goal: a simple way (in pur lua) to run n times the same function and calculate the average time elapsed per iteration. Usefull to compare performance of 2 differents versions of the same function.
 
  
 
* chrono (lib)
 
* chrono (lib)
 
+
** Goal: run a start, some code, stop, see the time between the start and stop (in microseconds, milliseconds, seconds, ...)
Goal: run a start, some code, stop, see the time between the start and stop (in microseconds, milliseconds, seconds, ...)
 
 
 
 
 
  
  

Revision as of 18:30, 8 May 2011

Introduction

Start playing with löve in 2009 (v0.5.0) Is back in 2011 on löve 0.7.1.

Projects is to rewrite my "jail" project (see [love-master project (jail, ...)])


My Todo list

  • repair 2nd computer and run the test on windows and linux
    • Status : in progress
  • random lib
    • Status : Done, not released yet
    • A simple random generator with safe (re-)initialization.
    • Inspired from http://love2d.org/forums/viewtopic.php?f=3&t=2748
    • Idea: Using a seed with current random try.
    • Sample: function init() math.randomseed(math.random()*os.time()) end
    • Goal: You will be able to re-init it without predictability problem.
    • Note: include it in the jail (and catch the randomseed to forbid re-init)
  • luajail and lovejail
    • Status : in progress
    • Goal: made a secure (jailed) environment for running löve's games.
    • TODO: test the crack*.love attacks see this thread
  • love API patch
    • - newFrameBuffer internaly catch error (return nil on error).
    • - add missing screen/graphics functions (getFsaa, getVsync, ...)
    • - add missing filesystem functions (getIdentity)
    • - and more ...
  • jailfunc (lib)
    • Goal: be able to allow/deny access of library or function (like os, io, require ...)
  • jailfs (lib)
    • Status :
    • Goal: be able to filter that is allowed to read (and write) on file system access
    • Feature: think about allow a way to load a case insensitive filename (usefull for stupid zip software that push upper case character... seen in some forum topics...)
  • jailnet (lib)
    • Status : nothing done
    • Goal: like jailfs but with the network connections (filter the ip:port like simple firewall)
  • gameconf (lib)
    • Goal: having easy function to manage game settings
    • (FIXME: I don't remember what exactly but I have part of code about that...)
  • LUSE : Löve user Settings Enforcer
    • Goal: always keep control! be able to choose and enforce my user settings, allow or deny change on resolution/input grabbing/window-or-full-screen mode/no sound/etc.
  • input layout
    • Goal: be able to manage keyboard : French, English, ... also maybe manage mouse with more than 3 ou 5 buttons.
  • love-master
    • Goal: have a magic key (or sequence) to pause the game and got back to a safe environnement (like the love console?) to be able do ... what you want.
    • For example:
      • debugging (see memory usage, variable values, ...)
      • profiling (see stats about most called function) see ProfilingLuaCode
      • access to the safe menu to configure (simple-firewall, jailfs or others settings)
    • Part of this project is to catch and lock the love callbacks ...
  • launcher
    • Goal: be bale to run my local love (with love-master, settings enforcement, etc.) have a way to choose what game is available. Run one of them in jail environnement.

Others idea projects

  • multi-love (lib)
    • Goal: be able to run multiple (windowed) love program and link them together.
    • Goal: be able to link (over network/LUBE?) multiple love program and share actions.
  • input layer (lib)
    • Goal: be able to virtualise inputs (to have more than one mouse, one keyboard) see multi-love.


Experimentation in Future

  • drawing with z index (see Snippers Skip list and Skip list Drawing Order)
  • collision with circular zone
  • drawing only if in zone : defined a target zone, exclude outside objets from drawing process
  • proof of concept of webradio player


My work done

Currently done (not yet released) :

  • glob (lib)
    • Goal: be able to support a string matching with glob pattern (like "*.txt").
  • tablesort (lib)
    • Goal: be able to make a for loop with keys on arbitrary/custom order.
  • bench (lib)
    • Goal: a simple way (in pur lua) to run n times the same function and calculate the average time elapsed per iteration. Usefull to compare performance of 2 differents versions of the same function.
  • chrono (lib)
    • Goal: run a start, some code, stop, see the time between the start and stop (in microseconds, milliseconds, seconds, ...)


Others

  • english-french translation of documentation/tutorials/...

Forum

My threads

Bookmarks

wiki doc TODO list

My steps to learn lua and love