[Olpc-uruguay] Dbus y telepathy (no entendí nada)

Pablo Moleri pmoleri en gmail.com
Jue Feb 11 07:16:05 EST 2010


Por sockets podés pasar cualquier cosa que puedas serializar; o sea,
cualquier cosa que puedas convertir en una serie de bytes (o caracteres) y
entender desde el otro lado. Pero te empezás a enfrentar a otras cosas, como
por ejemplo:

1. Tenés que dejar un hilo esperando por conexiones de red o verificar cada
tanto a ver si llegó algo nuevo.

2. Tenés que manejar códigos para ver que es lo que está viniendo, por
ejemplo: primero llega un número que indica que tipo de comando viene
después.

3. Cuando empieza a llegar algo te tenés que quedar esperando a que termine
de llegar todo.

Capaz que hay alguna otra cosa, que usando Telepathy se solucionan de forma
moucho más simple, simplemente dejás un callback para cuando sucede tal
evento y chau. Claro que primero hay que entender Telepathy.

Saludos,
Pablo

2010/2/11 Flavio Danesse <fdanesse en gmail.com>

> si, pero con que funcione por la mesh alcanza y sobra :)
> A los efectos practicos es lo mismo la mesh que una lan, además podrían
> jugar xo y "no xo" sin diferenciarse y ya se me ocurren otras ideas para
> otras aplicaciones.
>
> Ahora, ¿ por sockets puedo pasar un objeto python ? ¿Puedo pasar cualquier
> cosa ?
>
>
>
>
>
>
> El 10 de febrero de 2010 23:53, Pablo Moleri <pmoleri en gmail.com> escribió:
>
> Por sockets tenés 2 problemas:
>>
>> 1: Precisás conocer las ip de tus amigos; videojam soluciona esto usando
>> collaboration.py solo para iniciar la actividad compartida, luego consigue
>> la ip y luego inicia un gstreamer a esa ip.
>>
>> 2: Se te complica bastante si los jugadores no están en la misma LAN.
>> Sugar/Telepathy te permiten interactuar desde cualquier lugar siempre y
>> cuando ambos se conecten al mismo servidor jabber, pero con socket puro esto
>> se empieza a complicar.
>>
>> Simplificar el tema de colaboración es algo que tenemos en el debe, sería
>> muy bueno hacer una buena biblioteca que permita implementar fácilmente
>> juegos en red.
>>
>>
>> Saludos,
>> Pablo
>>
>> 2010/2/10 Flavio Danesse <fdanesse en gmail.com>
>>
>>> paaa !!, se complicó la cosa.
>>>
>>> Acabo de probar hacerlo por sockets y lo hice en dos patadas, me voy a
>>> tener que poner a leer esto ahora.
>>>
>>>
>>>
>>>
>>>
>>> El 10 de febrero de 2010 22:53, Flavio Danesse <fdanesse en gmail.com>escribió:
>>>
>>> Es que no hay codigo para mirar, hice una simple prueba para entender la
>>>> logica de colaboracion y llevarla luego al war que es un juego por turnos.
>>>> En el war, ya tengo todo implementado para que cada jugador al terminar le
>>>> pase el turno al que sigue en la lista, pero en lugar de que el jugador sea
>>>> un robot, este debia estar asignado a un tubo en la red, de esa forma, los
>>>> jugadores se pasaban el control el uno al otro.
>>>>
>>>> El experimento que hice, consistía de una nave sobre un fondo que el
>>>> usuario movia por la pantalla, esto es pygame adaptado a sugar.
>>>> Ahora, todo esto esto, intenté adaptarlo a la red con el código de
>>>> ustedes, y la idea era que cuando un jugador entrara, tuviera su propia nave
>>>> para mover en la pantalla, pero ni cerca de lograrlo, me perdí entre los
>>>> errores que empezó a tirarme uno tras otro y como no entiendo los conceptos
>>>> detras de la implementacion de ustedes lo unico que puedo hacer es modificar
>>>> a ciegas, por lo cual podría estar el resto del año sin lograr nada.
>>>>
>>>> En el war, me quedan un par de clases para definir y luego solo quedaría
>>>> implementar el juego mismo, es decir la mecánica del juego, en cuanto
>>>> termine con estas clases que faltan, lo subo al repositorio, aunque primero
>>>> voy a tener que aprender a usarlo.
>>>>
>>>> Confirmo que en cuanto al desempeño de los gráficos en la xo, lo mejor
>>>> es cargar imágenes pequeñas y luego escalarlas a mayor tamaño, se nota la
>>>> diferencia de rendimiento.
>>>> Confirmo también que a pygame no le gustan los mp3, el mejor formato es
>>>> ogg.
>>>> Y tiene fallas, en teoría cualquier imagen se puede definir como una
>>>> superficie y se puede tanto imprimir imagenes, textos y dibujar sobre ellas,
>>>> pero falla bastante, por lo que siempre hay que dibujar sobre el fondo.
>>>>
>>>> Sobre el desarrollo de actividades, descubrí también que no se necesita
>>>> el paquete sugar para construirlas, pero claro, es mas engorroso y habría
>>>> que saber bastante más de lo que se para hacerlo, pero no deja de ser
>>>> interesante porque en el caso de pygame, la adaptacion a sugar seguramente
>>>> tiene un costo en rendimiento que se podría evitar.
>>>>
>>>> Ahora, volviendo a la red, seguramente se debe poder implementar sin
>>>> utilizar sugar, no me he querido meter en esto, pero ya lo haré.
>>>>
>>>> Experimenté tambien con Dbus directamente, con los servicios del
>>>> sistema, pero claro, no me deja acceder a dispositivos como la tarjeta de
>>>> red por temas de permisos.
>>>>
>>>> En fin, hay tanta cosa para aprender que si no te organizas no sabes por
>>>> donde empezar, así que mejor es ir despacio y en orden, en mi caso, para la
>>>> red, necesito un maestro, solo no creo que pueda, así que queda en suspenso.
>>>>
>>>> Sobre ideas de desarrollo, me sobran, todos los dias se me ocurre algo,
>>>> pero todo no se puede.
>>>>
>>>> Gracias por la ayuda, no tienen ni idea lo que significa para mi una
>>>> pequeña pista que me indique por donde ir, y un ejemplo de código de como
>>>> hacer algo es oro puro.
>>>>
>>>> Y acá, tendría que poner un [offtopic]
>>>>
>>>> Para mi, programar es una fascinación, podría estar todo el dia en esto,
>>>> pero claro, ser autodidacta tiene sus inconvenientes jajajaja
>>>> Seguramente ustedes estan repodridos de programar . . .
>>>>
>>>>
>>>>
>>>>
>>>> El 10 de febrero de 2010 21:57, Pablo Moleri <pmoleri en gmail.com>escribió:
>>>>
>>>> Flavio, si me pasás el código capaz le puedo mirar un poco; aunque lo
>>>>> ideal sería que lo subieras al git de sugarlabs<http://drupal.ceibaljam.org/?q=node/517>,
>>>>> ahí puede que yo o algún otro se cuelgue a ayudarte en el tema de la red.
>>>>> Pero no te voy a mentir es un tema complejo, difícil de probar y que a veces
>>>>> no justifica el costo/beneficio.
>>>>>
>>>>> De todos modos pienso que el war es un juego que está lindo para jugar
>>>>> de a varios juntos (no en red). También se podría poner la xo en modo
>>>>> lectura con varios alrededor y que se pueda jugar con los botones que están
>>>>> en el monitor.
>>>>>
>>>>> Saludos,
>>>>> Pablo
>>>>>
>>>>> 2010/2/10 Flavio Danesse <fdanesse en gmail.com>
>>>>>
>>>>>  Estuve probando lo que dijo Pablo, e intenté adaptar collaboration a
>>>>>> mi actividad, pero no funcionó, está muy complejo el tema, así que lo dejo
>>>>>> de lado, no quiero perder tiempo con esto.
>>>>>>
>>>>>> Quedo a la espera a que alguno de ustedes me enseñe a implementar la
>>>>>> red en una actividad, así que a ver si alguno se pone las pilas y prepara
>>>>>> una charlita sobre el tema para el proximo jam.
>>>>>>
>>>>>> Yo seguiré con el war para la xo, lástima que no se va a poder jugar
>>>>>> en red, así que le voy a tener que dedicar buen tiempo a la inteligencia
>>>>>> artificial para que no sea tan facil ganar.
>>>>>>
>>>>>> La verdad que la red me superó ampliamente, quedé recaliente.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> El 9 de febrero de 2010 11:19, Gabriel Eirea <geirea en gmail.com>escribió:
>>>>>>
>>>>>> > En Sugar en cambio, qué es como una
>>>>>>> > gran sala de chat, usamos ideantificadores basados en dominios, o
>>>>>>> sea si yo
>>>>>>> > se que desarrollé la Batalla-Naval en el contexto de ceibaljam.orgentonces
>>>>>>> > puedo asegurar que el identificador org.ceibaljam.batalla-naval es
>>>>>>> único.
>>>>>>>
>>>>>>> Un comentario: rainbow no permite guiones en los identificadores de
>>>>>>> la
>>>>>>> actividad. Este fue un bug en la versión 2 de Conozco Uruguay que
>>>>>>> sólo
>>>>>>> pude solucionar con la ayuda de Michael Stone porque no está
>>>>>>> documentado en ningún lado. Parece que es un requerimiento de dbus y
>>>>>>> rainbow sólo chequea que cumpla con el mismo, si encuentra un guión
>>>>>>> te
>>>>>>> da error.
>>>>>>>
>>>>>>> Así que recomiendo a todos sólo usar letras en el identificador de la
>>>>>>> actividad.
>>>>>>>
>>>>>>> Saludos,
>>>>>>>
>>>>>>> Gabriel
>>>>>>> _______________________________________________
>>>>>>> Olpc-uruguay mailing list
>>>>>>> Olpc-uruguay en lists.laptop.org
>>>>>>> http://lists.laptop.org/listinfo/olpc-uruguay
>>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Olpc-uruguay mailing list
>>>>>> Olpc-uruguay en lists.laptop.org
>>>>>> http://lists.laptop.org/listinfo/olpc-uruguay
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Olpc-uruguay mailing list
>>>>> Olpc-uruguay en lists.laptop.org
>>>>> http://lists.laptop.org/listinfo/olpc-uruguay
>>>>>
>>>>>
>>>>
>>>
>>> _______________________________________________
>>> Olpc-uruguay mailing list
>>> Olpc-uruguay en lists.laptop.org
>>> http://lists.laptop.org/listinfo/olpc-uruguay
>>>
>>>
>>
>> _______________________________________________
>> Olpc-uruguay mailing list
>> Olpc-uruguay en lists.laptop.org
>> http://lists.laptop.org/listinfo/olpc-uruguay
>>
>>
>
> _______________________________________________
> Olpc-uruguay mailing list
> Olpc-uruguay en lists.laptop.org
> http://lists.laptop.org/listinfo/olpc-uruguay
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://lists.laptop.org/pipermail/olpc-uruguay/attachments/20100211/e745b04b/attachment.htm 


More information about the Olpc-uruguay mailing list