Difference between revisions of "Activities/Pilas"

From Sugar Labs
Jump to: navigation, search
(Running Pilas from Pippy)
Line 1: Line 1:
 
<noinclude>{{Translations | [[Activities/Turtle Art|english]] &#124; [[Activities/Turtle Art/lang-es|español]] &#124;}}
 
<noinclude>{{Translations | [[Activities/Turtle Art|english]] &#124; [[Activities/Turtle Art/lang-es|español]] &#124;}}
 
[[Category:Activities|Turtle Art]]</noinclude>
 
[[Category:Activities|Turtle Art]]</noinclude>
Sorry, this page translated from the original Spanish. Your help improving this translation will be very welcome :)
+
This page is based on documents translated from Spanish. Your help improving the translation would be very welcome :)
  
 
[[Activities/Pilas/lang-es|Go to Pilas Activity page in Spanish]].
 
[[Activities/Pilas/lang-es|Go to Pilas Activity page in Spanish]].
  
==Pilas.xo Project==
+
==About the Pilas.xo Project==
This brings the pilas-engine game development engine to Sugar, adapting it to the needs of the Sugar platform and adding elements to your learning curve.
+
Pilas is an engine for making videogames in an easy way. It's oriented to people that are learning to code videogames and that want to achive interesting and fun result very quickly.
  
We seek to facilitate a teaching tool for Python and game development.
+
This project brings the Pilas game development engine to Sugar, adapting it to the needs of the Sugar platform and adding elements to your learning curve. We seek to facilitate a teaching tool for Python and game development.
 +
 
 +
This project was developed during [[Sugar Day Junin 2011]]
  
This project was developed during the 2011 Sugar Junin Day [[Sugar Day Junin 2011]]
 
 
==Links to the project==
 
==Links to the project==
  
 
* Pilas: [http://www.pilas-engine.com.ar/]
 
* Pilas: [http://www.pilas-engine.com.ar/]
* Activity. .XO [http://activities.sugarlabs.org/sugar/addon/4484]
+
* Activity.xo [http://activities.sugarlabs.org/sugar/addon/4484]
 
* Code [https://bitbucket.org/hugoruscitti/pilas]
 
* Code [https://bitbucket.org/hugoruscitti/pilas]
 
* Issues tracker [https://bitbucket.org/hugoruscitti/pilas/issues]
 
* Issues tracker [https://bitbucket.org/hugoruscitti/pilas/issues]
Line 22: Line 23:
 
  cd pilas/  
 
  cd pilas/  
 
  hg update pilasqt
 
  hg update pilasqt
 +
 +
==Getting Started==
 +
The Activity starts with the game engine initialised and a monkey (mono) preloaded. The monkey is displayed in the upper pane and the lower pane executes Python code in immediate mode
 +
 +
[[File:Pilas xo.png|center|300px]]
 +
 +
The following commands can be entered (from the Spanish documentation [http://readthedocs.org/docs/pilas/en/latest/empezando.html])
 +
 +
mono.sonreir()                  //monkey smile
 +
mono.gritar()                  //monkey shout
 +
mono.decir("Hello World!") 
 +
mono.x = 100
 +
mono.y = 100
 +
mono.escala = 2                //set scale
 +
mono.rotacion = 40              //rotate 40 degrees
 +
mono.rotacion = [360]          // the [] means animate
 +
mono.x = [-200, 200]            //animate horizontally
 +
mono.x = [-200, 200] * 5        //go side to side 5 times
 +
mono.x = [-200, 200], 10        //animate over 10 seconds
 +
help(mono)
 +
pilas.ver(mono)                //view source
 +
mono.eliminar()                //delete monkey
 +
mono = pilas.actores.Mono()    //create a monkey instance
 +
pilas.iniciar()                //initialise the game engine
 +
pilas.iniciar(gravedad=(0, 0))  //initialise and set gravity
 +
 +
 +
There is much more, read the Spanish. [http://www.pilas-engine.com.ar/]
  
 
==Status==
 
==Status==
Line 64: Line 93:
 
* Add interactive options on objects (such as in eToys [http://activities.sugarlabs.org/es-ES/sugar/addon/4030] )
 
* Add interactive options on objects (such as in eToys [http://activities.sugarlabs.org/es-ES/sugar/addon/4030] )
  
 
==Getting Started==
 
The Activity starts with the game engine initialised and a monkey (mono) preloaded. The monkey is displayed in the upper pane and the lower pane executes Python code in immediate mode
 
 
[[File:Pilas xo.png|center|300px]]
 
 
The following commands can be entered (from the Spanish documentation [http://readthedocs.org/docs/pilas/en/latest/empezando.html])
 
 
mono.sonreir()                  //monkey smile
 
mono.gritar()                  //monkey shout
 
mono.decir("Hello World!") 
 
mono.x = 100
 
mono.y = 100
 
mono.escala = 2                //set scale
 
mono.rotacion = 40              //rotate 40 degrees
 
mono.rotacion = [360]          // the [] means animate
 
mono.x = [-200, 200]            //animate horizontally
 
mono.x = [-200, 200] * 5        //go side to side 5 times
 
mono.x = [-200, 200], 10        //animate over 10 seconds
 
help(mono)
 
pilas.ver(mono)                //view source
 
mono.eliminar()                //delete monkey
 
mono = pilas.actores.Mono()    //create a monkey instance
 
pilas.iniciar()                //initialise the game engine
 
pilas.iniciar(gravedad=(0, 0))  //initialise and set gravity
 
 
 
There is much more, read the Spanish. [http://www.pilas-engine.com.ar/]
 
  
 
==Running Pilas from Pippy or Terminal==
 
==Running Pilas from Pippy or Terminal==

Revision as of 00:26, 11 April 2012

english | español | HowTo [ID# 77239] 

This page is based on documents translated from Spanish. Your help improving the translation would be very welcome :)

Go to Pilas Activity page in Spanish.

About the Pilas.xo Project

Pilas is an engine for making videogames in an easy way. It's oriented to people that are learning to code videogames and that want to achive interesting and fun result very quickly.

This project brings the Pilas game development engine to Sugar, adapting it to the needs of the Sugar platform and adding elements to your learning curve. We seek to facilitate a teaching tool for Python and game development.

This project was developed during Sugar Day Junin 2011

Links to the project

  • Pilas: [1]
  • Activity.xo [2]
  • Code [3]
  • Issues tracker [4]
  • Name of branch 'pilasqt'. Command to take to the branch:
hg clone https://hugoruscitti@bitbucket.org/hugoruscitti/pilas 
cd pilas/ 
hg update pilasqt

Getting Started

The Activity starts with the game engine initialised and a monkey (mono) preloaded. The monkey is displayed in the upper pane and the lower pane executes Python code in immediate mode

Pilas xo.png

The following commands can be entered (from the Spanish documentation [5])

mono.sonreir()                  //monkey smile
mono.gritar()                   //monkey shout
mono.decir("Hello World!")  
mono.x = 100
mono.y = 100
mono.escala = 2                 //set scale
mono.rotacion = 40              //rotate 40 degrees
mono.rotacion = [360]           // the [] means animate
mono.x = [-200, 200]            //animate horizontally
mono.x = [-200, 200] * 5        //go side to side 5 times
mono.x = [-200, 200], 10        //animate over 10 seconds
help(mono)
pilas.ver(mono)                 //view source
mono.eliminar()                 //delete monkey
mono = pilas.actores.Mono()     //create a monkey instance
pilas.iniciar()                 //initialise the game engine
pilas.iniciar(gravedad=(0, 0))  //initialise and set gravity


There is much more, read the Spanish. [6]

Status

What has been done:

  • Packaging the pilas-engine [7] to run on Sugar.
  • Incorporation of PyQt libraries [8] into the activity
  • Adding widget ninja-ide [9] , to have the interactive shell on the same screen.
  • Generation of file dependencies needed for the project with PyInstaller [10]
  • Creating the pilas.xo activity

To-do immediately:

  • Bug: resize widgets
  • Bug: set focus
  • Documentation of how it is packaged with Qt activity [11] for Sugar
  • define user guidelines and make mockups
  • typical Pippy examples [12]
  • interpreter and code editor tabs
  • option to run in fullscreen or box
  • list of Pilas actions and behaviors
  • help tab
  • persistent options
  • Document examples / startup guide

Future Work

We must turn this into a roadmap ...

To-do:

  • Trim list of dependencies created PyInstaller, to include only what is needed
  • Incorporating autocomplete and inline help for the ninja-ide
  • Use dbus [13] to communicate with the menu of others
  • Incorporate Sugar persistence [persistence options or code to be developed]
  • Integrate code for the pilas-engine [14] and pilas.xo

Wish list

  • Refactoring to PyCairo [15]
  • Incorporate into the activity the possibility of Sugar sharing
  • Add interactive options on objects (such as in eToys [16] )


Running Pilas from Pippy or Terminal

This is not working, help please!

Pippy:

import sys
sys.path.append('/home/olpc/Activities/Pilas.activity')
import pilas
pilas.iniciar()

Terminal:

Create a file myprogram.py in ~/Pilas.activity containing

import pilas
pilas.iniciar()

In Terminal type

python myprogram.py