Proyecto a elegir y Organización

Aquí encontrará diversas conversaciones sobre el rumbo del proyecto y tareas que se planifican a corto plazo.

Cual Desarrollamos

La encuesta terminó el Mié Abr 02, 2008 9:17 pm

PONG
1
13%
TETRIS
5
63%
Naves (Scrolling vertical)
2
25%
 
Votos totales : 8

Notapor Alex_13_estu » Lun Abr 21, 2008 3:17 pm

¡Hola! Paso por aqui básicamente por dos razones. La primera y más simple es que estos días desarrollaré algo del juego, pero no creo que hasta el fin de semana me pueda poner a tope con él. Si hay algo nuevo, os avisaré. Lo que si, contad conmigo para responder dudillas aquí y en SF. Y lo segundo, responder a dvd.

Bien, la decisión de registrarse en SF.net es tuya y yo no te voy a decir nada sobre ello. Partimos de esa base. Ahora voy a dar mi opinión y argumentos. Para leer el código y acceder a nuestro programa no es necesario estar registrado, por lo tanto, en ese aspecto no te ofrece ninguna ventaja hacerlo. Ahora bien, me parece interesante que te registres por varias razones:

1.- Registrarse es gatis y no cuesta nada más que unos minutos.
2.- Por ahora los dos mensajes que puse en el foro de SF.net los he pegado aquí, e intentaré seguir haciéndolo, pero a lo mejor las noticias llegan con algo de retraso a este foro. Sobre tu duda de si tenemos conversaciones privadas allí, por ahora no, así que no te pierdes nada.
3.- Si quieres participar más activamente en próximos proyectos, SourceForge es una de las mejores opciones para compartir el código y, por lo tanto, estar registrado te evitaría tener que hacerlo más tarde.

Por supuesto, eso es sólo mi opinión. Si no tienes mucho tiempo, a lo mejor te conviene no registrate... No sé, eso, como ya dije, es cosa tuya. Cuando decidas, háznoslo saber tanto si lo haces como si no para tener una idea de cuanta gente falta por estar en SF.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor endaramiz » Mar Abr 22, 2008 2:00 pm

Hola, ya me hice la cuenta (dvd-prog ), ahora el problema es: ¿como me uno al proyecto? Estuve leyendo la ayuda y creo que tenéis que agregarme vosotros o algo así (es triste, pero no se me da muy bien el ingles ).

Saludos.
Avatar de Usuario
endaramiz
 
Mensajes: 283
Registrado: Vie Ago 31, 2007 9:25 am
Ubicación: Barcelona

Notapor Alex_13_estu » Mar Abr 22, 2008 4:09 pm

¡Hola! Me encanta tu decisión dvd, pero ya sabes que soy poco imparcial... Y sí, como tú dices te tiene que añadir uno de nosotros al proyecto, así que te voy a añadir como administrador en calidad de "Developer", ¿OK? Bien, eso por una parte, ahora voy a exponer aquí algo que dijo dokan en nuestra Sala de Jabberes.org y que me parece muy correcto. Resumo y lo pongo como normas clave para desarrollar los parches en Darcs:

1.- No es necesario incluír la fecha del parche en el nombre, ya que Darcs lo muestra de por sí. O sea: no poner fecha al nombre del parche.
2.- No hace falta poner el autor del parche porque Darcs, como ya os supondréis, pone el mail del autor. O sea: no poner autor al nombre del parche.

Bien, esos son los dos puntos básicos. Ahora viene la parte difícil. La propuesta de Dokan en el chat fue la siguiente, que copio exactamente igual:

<dokan> estoy viendo los «changes» y me doy cuenta de que hay que ser más descriptivos con los nombres de los parches,
además de que no es necesario poner la fecha, ya la recuerda darcs, aunque dependerá de la hora local configurada en el pc y por tanto de si vivimos en España, en Argentina o en Mexico, supongo que esto tampoco debería ser un gran problema
<dokan> por ejemplo, viendo los «changes» debería ser capaz de saber que modificaciones hizo el parche que Alex añadió el domingo día 20/04/08 sobre la versión inicial,
y debería poder ver que traía la versión inicial, etc.
<dokan> un ejemplo, acabo de modificar un archivo, si hubiera puesto patch_dokan_fecha quien quiera saber lo que he hecho debe abrir todo, y si recuerda como estaba antes puede que dé con la modificación, sin embargo, ahora sólo haz «darcs pull» y «darcs changes», y enseguida sabrás qué es lo que he modificado.
<dokan> me parece más apropiada la siguiente nomenclatura:
<dokan> FicheroModificado.cpp descripción corta de la modificación
<dokan> no es necesario hacer constar el autor de la modificación puesto que darcs recuerda el mail de quien aplicó ese parche, a no ser que el parche sea de otra persona...
<dokan> por cierto, estoy teniendo muchisimos problemas con el pc, va y viene como un moribundo a punto de cruzar las puertas del cielo
<dokan> si veis que tardo mucho en volver por aquí no os asusteis, estaré buscando un sustituto, pero hasta que falte definitivamente me resisto a cambiar, soy muy fiel :D
<dokan> rectifico «El nombre y dirección de email que está en _darcs/prefs/author es la que figurará como autor en nuestros parches, o sea, nuestro nombre y la dirección»
darcs recuerda el mail de quien creó el parche, no de quien lo aplicó


Perdón por tener que poner eso así, pero no tengo tiempo para editarlo. Mi problema es el siguiente:

¿Y si alguien genera un parche que se le aplique a más de un archivo?

Me explico: cuando estás programando sobre un proyecto de varios archivos, es muy probable que tengas que modificar una cosa en uno pero, a la vez, tengas que hacer un pequeño cambio en otro archivo para adaptarlo al primero. Lo cual nos llevaría a tener que generar dos parches para una tontería de cambio. Es por eso que yo hago un resumen de los cambios que aplico en cada parche. Además de que Darcs no deja poner una descripción extensa en el nombre del parche.. Entonces, mi duda para la que cuento con vuestra ayuda es: ¿cómo resolvemos eso? ¿Creamos un parche para cada mini-modificación que hagamos? ¿O simplemente trabajamos y luego generamos un parche que traifa todos los cambios, para resumir luego su contenido en el foro como hago yo?

Espero que aportéis ideas, porque esoty en blanco y no veo una solución que sea muy buena a este problema. Espero vuestra ayuda. Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Mar Abr 22, 2008 10:57 pm

Tampoco creo que sea imprescindible hacer un parche por archivo modificado o por modificación específica, aunque estaría muy bien para poder volver atrás cuando se termine el proyecto.
Para mi la solución es simple, si cabe se nombran los archivos afectados y qué se hizo, si no cabe se especifica al máximo qué cambios se han hecho.
Os recuerdo que no es necesario utilizar la orden «darcs send -o nombre_del_archivo» con cada parche que creamos, al final de la sesión se pueden aplicar en el mismo archivo todos los parches.
Otra cosa distinta es que no se deberían hacer cambios demasiado grandes, ¿Recordais aquello de «guarda por si se va la luz»? Pues eso, de vez en cuando, a juicio del que está programando los cambios, se guarda, se crea un parche y fuera.
De todos modos, según vayamos avanzando nos vamos a ir dando cuenta de cual es la mejor manera de seguir avanzando.
Por cierto, pasaros de vez en cuando por el canal LosersJuegos de jabberes.org, seguro que os sorprende.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

saludos, con problemas

Notapor drincast » Mié Abr 23, 2008 5:23 pm

Bueno, por aqui de nuevo, gracias Alex_13_estu por crear el proyecto, respecto a lo de la pagina pues como no estoy colaborando mucho en cuanto al código (no tengo el tiempo suficiente), pues creo que puedo ir haciendo la pagina pero eso si deben tener paciencia por que no tengo mucho tiempo.

Tambien quiero avisarles que no puedo estar revisando mucho el post y el proyecto en sourceforge ya que el equipo se le ha dañado la tarjeta de red (eso parece), pero el miedo es que creo que me han bloqueado es la mac de la tarjeta en el router, bueno voy a ver como arreglo el problema.

Creo que por el momento no es mas estoy en un equipo ajeno así que ….

Saludos
drincast
 
Mensajes: 34
Registrado: Mié Mar 12, 2008 4:23 pm
Ubicación: Colombia

Notapor lucesita » Jue Abr 24, 2008 1:47 pm

Por aqui de nuevo :D

Hola a todos vengo a comentar que no desapareci, solo me ausente 2 semanitas.

Mientras me ponia al tanto, super entusiasmado por que podria bajarme el repo sobre cual trabajar, leyendo donde hostearon, como hacer para bajarlo, y finalmente di la dichosa orden a mi PC

Código: Seleccionar todo
Darcs Get http://linecube.sourceforge.net/LineCube


cual fue mi desilucion?

Darcs No reconoce un repositorio, necesitas WGET o CURL

WGET??? CURL??? que coño es esto?

al parecer son 2 programitas "gestores de descargas atravez de L CODE" que usa darcs.

en resumen, ya Me baje el repo :D :D :D :D :D :D
solo tuve que bajarme los programitas estos dichosos.

WGET y CURL

me lo buscan por google y si no lo encuentran me avisan que yo paso links.

(ando medio corto de tiempo, despues si me acuerdo edito y meto links)

proximo paso registrarme en SF
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Alex_13_estu » Jue Abr 24, 2008 3:00 pm

¡Hola! ¡Menuda noticia! Ya pensaba que Lucas se nos había "rajado" o algo así... :D . Menos mal que estás por aquí de nuevo, nos vas a ser de mucha ayuda. En cuanto estés registrado en SF.net te agrego al proyecto. Tendrás que darme tu nick para que pueda hacerlo. Además, me alegra que hayas solucionado lo de WGet y Curl, no tenía ni idea de que pudiese haber esos problemas, pero si a alguien le pasa ya sabe lo que hacer (¡qué raro que te pasara eso, ¿no?!. Creía haber probado contigo Darcs, pero me parece que no habíamos cogido ningún repo de internet, a lo mejor fue eso). Y a drincast, no creo que tengamos prisa por la página, pero, como ya te dije, estaría encantado de que alguien con algo de idea sobre eso nos ayudase, así que si te quieres dedicar a ello, ¡yo encantado! Por último, a Dokan, me parece que la solución para nuestros problemas de nomencaltura de parches no es simple, pero creo que hemos dado con una buena solución y debemos utilizarla, así que haremos lo que propones. ¡Gracias!

Al grano. No tengo mucho que hablar del proyecto, más que nada porque llevo un par de días medio sabáticos en éste tema (digo en este tema porque lo que es trabajo he estado hasta arriba, lo que propició que programase menos). Por lo tanto no he actualizado nada y no tengo nada interesante desarrollado que no sepáis ya. Pero, visto lo visto y debido a la vuelta de Lucas, creo que es el momento idóneo para comenzar con el método de Juan Carlos. Por lo tanto, le pido a Lucas que si no leyó ya el mensaje en el que explicaba en que consistía, lo haga cuanto antes, porque es básico para poder desarrollar el proyecto conjuntamente. Muchos os preguntaréis por qué comienzo ahora... Bueno, la razón es muy simple y espero que no os sintáis ofendidos por ello: hasta ahora, pensaba que sólo estaba programando el juego yo, por lo que no necesitaba dejar cosas a medio hacer para que las acabara otra persona. No lo digo por mal ni por criticar a nadie por falta de dedicación (aquí estamos por placer y es un hobby, no un trabajo obligatorio del que dependemos), simplemente lo creía por las siguientes razones: Dokan, por lo que pude hablar con él en la sala de "Jabberes", no tiene mucha experiencia en programación con C++ y por lo tanto, según dijo, no podía ayudar mucho. drincast ya manifestó su falta de tiempo, y dvd dijo que estaría más bien en calidad de observador. Perdonad si me olvido de alguien de los que pasáis por aquí con asiduidad, pero no estoy muy lúcido ahora mismo... ¿Por qué hace Lucas entonces que cambie de parecer? Muy simple, hace un tiempo me mandó unos pequeños códigos de un pseudopong que él escribió en C++ en los que se notaba su experiencia y que sabía lo que se traía entre manos, así que, a partir de ahora y si él participa un poco, será él también uno de los principales programadores. De esta forma, el trabajo principal de programación lo llevaremos 2 personas, por supuesto sin excluír a nadie que lo quiera realizar también, y, por lo tanto, hay que repartir el trabajo. Espero que después de este sermón Lucas trabaje duramente para no hacerme quedar mal... :D .

Creo que no me queda nada que añadir. Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor drincast » Jue Abr 24, 2008 7:56 pm

Hola, tengo problemas al descargar el repositorio:

Descargué el wget y lo copie en el directorio de darcs pero al ejecutar el comando de copiar el repositorio este se queda un rato y después lanza este error

darcs failed: Not a repository: http://linecube.sourceforge.net/LineCube (failed to fetch: http://linecube.sourceforge.net/LineCub ... /inventory ExitFailure 1).

No se Si hay que utilizar tanto wget como curl el problema es que el curl no es un ejecutable (bueno el que descargue y no se como utilizarlo).

Realmente te agradecería Lucas, si posteas los links y si no es mucho pedir explicar donde deben ir los programas.

Saludos
drincast
 
Mensajes: 34
Registrado: Mié Mar 12, 2008 4:23 pm
Ubicación: Colombia

Notapor lucesita » Jue Abr 24, 2008 8:03 pm

MIra alex, ya me registre, mi nick es lucesita

como hago para subir un parhce :P me quedo la pequeña duda.
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Alex_13_estu » Vie Abr 25, 2008 7:33 pm

¡Hola! Me paso muy rápidamente para contestar a los dos últimos mensajes:

drincast: siento no poder ser más claro, pero, no tengo ni idea de cuál es el problema... Yo acabo de hacer ese mismo comando "darcs get http://linecube.sourceforge.net/LineCube" y me ha funcionado sin problemas...

Lucas: Es muy simple, te descargas (ojo, te descargas con un cliente SSH o algo así, no haces "darcs get") el repositorio original desde SF.net. Creas un parche desde tu copia del repositorio donde trabajas (con el comando "darcs send -o NOMBRE_DEL_PARCHE") y lo copias a esa carpeta donde te descargaste el repo original. Luego vas a esa carpeta y haces "darcs apply NOMBRE_DEL_PARCHE" para aplicar el parche. Ahora ya tienes la carpeta con el repo original actualizada. Lo úncio que te queda ahora es subir de nuevo la carpeta del repo original a SF.net. Espero haberme explicado bien, pero tengo algo de prisa.


Por último, decir un par de cosas a los que se acaban de registrar en SF.net : no puedo añadir al proyecto ni a Roberto ni a lucesita. Necesito vuestro USER NAME, no vuestro nick. Se supone que si tú pones en la dirección : https://sourceforge.net/users/USERNAME te debería llevar a la página del usuario. Lo que pasa es que si yo pongo:

https://sourceforge.net/users/lucesita
https://sourceforge.net/users/Roberto

Me va en el primer caso a la página de alguien que lleva registrado desde 2006 (por lo que supongo que no es Lucas) y en el segundo caso llego al perfil de un desarrollador que está registrado desde el 2000 (por lo tanto supongo que tampoco es Roberto). Espero que me podáis dar vuestros USERNAME cuanto antes porque si no no os puedo añadir al proyecto.

Nada más. Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor lucesita » Vie Abr 25, 2008 10:03 pm

si... yo estoy registrado desde esa fecha, apoarte como bien dice
mi nick es lucesita yel nick para mostrar reypala... ese mismo soy yo

y con respecto a lo de subir el parche... no entiendo bien, en realidad si, lo que propones es que suba el REPOSITORIO COMPLETO, a lo que a mi parecer por el momento no es problema, pero no se deberia poder hacer un
"darcs push http://linecube.sourceforge.net/LineCube"

por el momento lo dejo en suspenso jejeje me pondre a hacer pruebas :P

por que si no, me parece mucho mas facil de repente, que 1 solo se haga cargo del repo, veamoslo asi, tu recibes los patch por mail y los pones al repo, de manera que para tener la actualizacion solo baste con hacer:

"darcs pull http://linecube.sourceforge.net/LineCube"

de esta manera me parece que no solo nos ahorramos de subir e repo entero, si no que tambien nos ahorramos de bajar 2 repos, igual estoy medio mareado con este tema.

lo que supongo que sourceforge o darcs no se quien, no pueda trabajar con los push, es por eso el lio que nos hacemos.

ahora bien yo se que costo mucho conseguir que SF hostee nuestro proyecto, pero me parece que hay quienes hostean y soporta darcs y creo que uno de ellos es HomeLinux... ahora me pongo a buscar inf.

EDIT: soñar no cuesta nada. efectivamente no se puede hacer eso que queria yo, ya me ire consiguiendo un FTP o algo por el estilo
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Roberto » Sab Abr 26, 2008 1:00 am

hola a todos,perdonar por mi tardanza pero ultimamente estoy bastante liado en el trabajo,espero tener pronto más tiempo libre para atender al proyecto como se merece,por cierto mi username en sourceforge es "afenor",sin las comillas.un saludo.
Roberto
 
Mensajes: 3
Registrado: Vie Abr 11, 2008 3:25 pm

Notapor lucesita » Sab Abr 26, 2008 6:30 am

roberto ya te agregue al grupo.

señores tenemos un problema.

EL REPOSITORIO ESTA DAÑADO

jajajja bueno es lo que me dice a mi cuando intento aplicar el patch.

como hago esto:
1) me consegui el WinSPC, me conecto por SFTP a sourceforge.
2) me copio tal cual el repositorio a mi rigido llamemoslo ROA (repositorio original A).
c:\linecube

3) desde otro directorio realizo un darcs get ROA
ej: C:\proyectos\linecubeget> darcs get C:\linecube

3b) variante: desde el dir de ROA realizo un darcs put
c:\linecube> darcs put c:\proyectos\linecubeput

4)una vez en la Copia de ROA hago cambios.
ya sea desde "C:\proyectos\linecubeget\linecube\" o "c:\proyectos\linecubeput\linecube"

5)desde la Copia de ROA doy un "darcs record"
6)desde la copia de ROA ejecuto "darcs send -o UNPARCHE"
7) Copio el parche y lo pego en ROA "C:\linecube" el repo copiado talcual desde el sftp

8) y como es de esperar corro el comando "darcs apply UNPARCHE"
y cual es mi sorpresa... El repositorio esta dañando :S:S:S:S
es lo mismo que me aparecia cuando haciamos las pruebas por mail alex, no se si recuerdas.


Diganme cual es la solucionnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn me estoy partiendo la cabezaaaaaa.

Saludos Lucesita


EDIT: creo haberlo solucionado... pero ya son las 4 AM asi que me voy a dormir mañana hago nuevas pruebas :D
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor lucesita » Sab Abr 26, 2008 6:35 pm

para no hacer edit sobre edit :P

bueno creo tenerlo resuelto, pero no estoy seguro.

la cosa va asi.

la unica manera en que me deja aplicar el patch es
hacer un "darcs get http://linecube.sourceforge.net/LineCube"
en... cualquier directorio.
ej: C:\LINECUBE>darcs get http://linecube.sourceforge.net/LineCube

desde otro directorio hacer otro "darcs get http://linecube.sourceforge.net/LineCube"
ej: C:\proyectos> darcs get http://linecube.sourceforge.net/LineCube

bien ya tengo 2 repos, trabajo sobre 1
ej: Modifico al de C:\proyectos el archivo principal.cpp

hago un record y un send -o, copio el archivo que esta en proyectos\lineube y lo mando a c:\linecube\linecube

y desde C:\LineCube\LineCube ejecuto apply

ej: C:\LineCube\LineCube> darcs apply NOMBRE_DE_PARCHE

y rula perfecto.

pero ahora el probelma radica en (siempre un problema :x ) que quiero subir la modificacion a source forge.

bueno me conecto atravez del WinSCP y llego hasta el directorio
/home/groups/l/li/linecube/htdocs
una vez ahi intento copiar el directorio C:\LineCube\LineCube (que es el que le meti apply Patch

y me dice PERMISO DENEGADO!!!!!!!!!!!!!

mi sorpresa esta en que si yo quiero crear un archivo en el directorio este, LO PUEDO HACER SIN PROBLEMAS!!!!!
tambien puedo eliminar archivos SIN PROBLEMAS
asi que lo del permiso denegado es hasta cierto punto.

bien, esto me lleva a pensar que no te deja el shell sobreescribir el archivo.

pero tampoco quiero eliminar el repo actualmente alojado en SForge, para despues subir nuevamente el repo que le aplique el patch.

no se si se entiende... pero AYUDA!!!!!


Saludos Lucesita
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Dokan » Sab Abr 26, 2008 11:01 pm

Me pasa lo mismo que a Lucas.
Creo que el único que tiene permisos para modificar la carpeta LineCube y todo lo que contiene es Alex.
Lo digo porque tanto Lucas como yo, hemos podido copiar cosas y borrarlas en la carpeta htdocs, pero de la carpeta htdocs/LineCube no se nos permite modificar nada.
La solución es sencilla (esto va por Alex), modificar los permisos de la carpeta LineCube y todo su contenido a rwx (lectura/escritura/ejecución) para todo el grupo.
Normalmente no es difícil, pero depende del programa de ftp que utilices, si tienes alguna duda avisa.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor Alex_13_estu » Dom Abr 27, 2008 8:06 am

¡Hola! Perdonad mi ausencia en el día de ayer, me surgieron unos problemas (muchos de ellos culpa de mi ordenador, por suerte ya solucionados) y no pude pasarme por aquí. Así que ahora, a ponerme al día.

Primero, en cuanto añadir a los que faltaban al proyecto, parece ser que ya se ha hecho. Es que es una cosa menos que hacer, así que gracias a los que habéis hecho esto, siempre ayuda tener algo de ayuda (valga la redundancia).

Si alguien sabe algo de cómo poder utilizar el comando "darcs push", encantado, lo he intentado de mil maneras diferentes, pero parece que SF.net no nos deja... Si averigua alguien algo (por ejemplo, Lucas con lo de HomeLinux), por favor que lo comparta.

Por último, y probablemente más importante, lo relativo al repositorio. No sé por qué os da tantos problemas, ni recuerdo haber modificado los permisos de esa carpeta, pero bueno, tendré que repasarlo... ¡Ah, pues sí! Estoy conectado a SF.net y veo que yo (o sea, el propietario) tengo permisos de R-W-X, pero vosotros, los del grupo, sólo tenéis R-X. Ahora lo cambio y os pongo todos los permisos, a ver si os funciona. Si no os va, avisad, que lo miro de nuevo. De todos modos tengo otro problema: estoy intentando aplicar un parche y me da miles de problemas, así que voy a ver si lo soluciono de la mejor manera posible para no perder mucha información. Por último, esplicar cómo hacéis para actualizar con parches el repo original:

1.- Poned en la carpeta "htdocs" de SF.net un archivo que se llame ACTUALIZANDO o algo así para que nadie más se ponga a actualizar en ese momento.
2.- Copiad el directorio "LineCube" mediante, por ejemplo, el WinSCP en vuestro PC, por ejemplo, en "C:\LineCube".
3. Generad un archivo de parche con el comando "darcs send -o" en vuestra copia del repositorio, que, digamos, está en "C:\Copia\LineCube".
4.- Copiad ese archivo de parche y llevadlo de la carpeta "C:\Copia\LineCube" a "C:\LineCube" (o sea, el repo original).
5.- En "C:\LineCube", ejecutad "darcs apply NOMBRE_PARCHE" para actualizar el repo original que tenéis en vuestro ordenador.
6.- Por último, volved a "htdocs" y sobreescribid la carpeta "LineCube" que está allí or la que tenéis vosotros actualizada en "C:\LineCube".
7.- ¡Se me olvidaba! Borrad el archivo "ACTUALIZANDO" al finalizar.

Eso es todo, espero haberme explicado bien y que lo hayáis entendido.

Un saludo.

EDITO:

OK, cambios en el repositorio. Ahora los parches tienen por nombre la mini-descripción que propuso Dokan, pero, sobre todo, espero que no vuelva a dar problemas. No sé por qué pero cuando intentaba eliminar del repositorio el archivo "gpl.txt" (más que nada por que lo había cambiado de sitio para organizar todo en carpetas) y luego generaba un parche, al aplicarlo darcs me daba problemas, así que tuve que solucionarlo como pude (creando un nuevo repositorio original). Por lo tanto, es muy importante que de nuevo utilicéis el comando "darcs get http://linecube.sourceforge.net" y no el "darcs pull", debido a que el repositorio es nuevo. Os resumo los cambios respecto a la última actualización que tiene el repositorio:

1.- Organización en directorios: Ahora los archivos se organizan en directorios, y no están sueltos por ahí como antes. Hay dos directorios básicos: "recursos" y "docs". En "recursos" van los archivos que utiliza el programa ddurente la ejecución: por ejemplo, hay una carpeta que se llama "img" donde va la imagen del bloque. Otra carpeta se llama "maps_figures" y contiene los archivos de texto donde van los mapas de las figuras. En "docs" van los documentos de texto: la licencia GPL, los miembros del grupo (este archivo, "losersdevelopers.txt", lo tenéis que ir cubriendo vosotros) y en su día irá un "léeme", por ejemplo.

2.- Inicio del GameLoop en "principal.cpp": Éste es el otro cambio, el único a nivel de programación. Simplemente comencé a estructurar el archivo "principal.cpp" con algunas funciones nuevas para que pudiésemos comenzar a desarrollar el loop principal del juego. Por ahora no desarrollé para nada la parte del juego activo, digamos que sólo hice la "introducción" del loop. A ver si Lucas pone ya ese controlador de FPS que dijo que había hecho y entre todos comenzamos ya en serio con la parte principal del juego.

Bueno, espero que a partir de ahora os funcione el tema de poder leer y modificar el directorio del repo para comenzar ya a programar en serio. Si no, avisadme.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Dom Abr 27, 2008 2:30 pm

Si se actualiza hay que volver a cambiar los permisos, quiero decir que cada vez que se sube la carpeta LineCube al repositorio después de haberle aplicado un parche hay que darle permisos 660 (-rw-rw----), o si acaso 664 (-rw-rw-r--), o por lo menos comprobar que están bien, esto va por todos, no sólo Alex.
Digo esto porque en la carpeta LineCube todavía no tiene los permisos de escritura para el grupo, puedo imaginar que al actualizar Alex se volvieran a quedar los permisos igual que antes.
Por cierto, hay un ACTUALIZANDO en htdocs desde las nueve de esta mañana (hora española), creado por Alex, ¿Estás actualizando todavía?
Acabo de comprobar que van ocho horas de diferencia entre la hora que marca el servidor en los archivos que se suben a sourceforge y la hora universal coordinada (UTC). ¿Es cosa de configuración? ¿Alguien sabe si se puede poner en UTC?
¡Saludos!
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor Alex_13_estu » Lun Abr 28, 2008 3:52 pm

¡Hola! Perdonad por lo del archivo "ACTUALIZANDO", me lo dejé ahí porque estuve muchísimo tiempo para arreglar el problema que me daba y al salir olvidé eliminarlo... Pero lo de los permisos... ¡juraría que actualicé los permisos después de reponer el repositorio orginial! Voy a mirar ahora que pasa y os comento.

-----

Efectivamente, acabo de mirar la carpeta "LineCube" que está en htdocs y tiene los siguientes permisos: "rwxrwxr-x", así que no veo por qué narices falla. ¿Será que SF.net no os está considerando como "del grupo"? Decidme cuanto antes si ahora sois capaces de acceder a esa carpeta o no, porque me está volviendo loco ésto de los permisos. Si no sois capaces, será porque no os considera "Grupo", si no que os considera "Otros", y en ese caso debería darle los permisos de escritura a todos... Avisadme si sigue fallando y ya hablamos.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Lun Abr 28, 2008 10:57 pm

Tanto Lucas como yo seguimos teniendo problemas con el repositorio.
Desde esta mañana (según Lucas, por tanto por la mañana en argentina) no se puede hacer «darcs get ....», hace diez minutos a mi tampoco me lo permitía, me daba el siguiente error:
Invalid repository: http://linecube.sourceforge.net/LineCube

darcs failed: Failed to download URL http://linecube.sourceforge.net/Linecub ... /inventory
libcurl: HTTP error (404?)

Por otro lado, todavía hay archivos que no tienen los permisos 664, intentando solucionar el problema anterior (borrar todo el repo y pegar el que teníamos en el pc) nos hemos dado de bruces con que hay archivos que todavía no podemos manejar, los que han quedado y no hemos podido borrar.
Espero que haya por ahí copia de seguridad... :P
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor Alex_13_estu » Mar Abr 29, 2008 8:35 am

Efectivamente, parece que el repositorio tiene algún fallo, porque no deja hacer el "darcs get". El problema es que he visto que Lucas ha subido un par de archivos "timer.h", "timer.cpp", "caption.h" y "caption.cpp" y si borro el repositorio esos cambios se van a perder. Además, por lo que he visto en el directorio "_darcs" del repositorio, Lucas no añadió esos archivos al repo de Darcs, por lo que lo único que puedo hacer para confiar en que no perdamos esos archivos es que Lucas los tenga en su PC. Así que ahí voy; a borrar el repo y subirlo de nuevo. Con un poco de suerte, éste será el último problema que nos dé Darcs.

-----------

Bien, repositorio transferido, permisos configurados a "rwxrwxr--" para los archivos y "rwxrwxr-x" para los directorios. Espero que ahora os funcione, porque ya no sé qué más hacer. Por cierto, también he probado los comandos "darcs get" y "darcs pull" para ver si funcionaban y van sin ningún problema. Si tenéis algún problema, comentadlo y miramos a ver cómo solucionarlo.

Por lo tanto, creo que lo único que queda es encontrar la raíz al problema, para saber qué ocurrió y que fue lo que hicimos mal. Cuando yo subí el repositorio, me funcionó sin ningún problema y no recuerdo tener problema con el "darcs get". Entonces, me veo obligado a preguntar: ¿cuándo dio el problema el repositorio? ¿Antes o después de que Lucas subiera sus archivos? Porque, si mi vista no me engañó, Lucas subió de nuevo todo el repo menos la carpeta _darcs, que se mantenía igual a como la dejé yo. Es decir, que todos los archivos eran propedad de Lucas menos los datos del repositorio Darcs, que eran míos (eso fue lo que me imagino que generaría el conflicto en Darcs). De ésto se deduce que Lucas hizo cambios en los archivos del proyecto (no sé si sólo añadió archivos o si modificó alguno) y que, o bien no guardó esos cambios en Darcs con "darcs record", o bien no subió completo el repo. Por lo tanto, sólo se me ocurre una manera de que ésto no ocurra de nuevo. A partir de ahora, para actualizar el proyecto hay que borrar la carpeta antigua del servidor y subir la nueva que tenemos en nuestro ordenador", porque si no se pueden repetir estos problemas por tratar de sobreescribir archivos.

Espero vuestra opinión, porque es lo único que se me ocurre que pudo suceder.

Un saludo.

EDITO:

Acabo de subir el repositorio y le he hecho una actualización muy muy simplona, para comenzar ya con el game loop del juego. Resumo:

Creación de una figura: Simplemente he añadido que, con el juego activo, se cree una figura y que ésta se desplaze hacia abajo por la pantalla. No he implementado choques ni nada, así que, si la figura se sale de la pantalla, seguirá bajando. A partir de ahora hay que pulir los detalles de éste tema y comenzar con otras cosas, como los controles del juego

Temporizador: Para que la figura no bajase a toda leche, hice un temporizador simplísimo sólo usando la librería "time.h" que espera un segundo antes de continuar con el loop. Creo que alguien (me parece que éste trabajo ya lo tenía hecho Lucas) debería implementar un contador usando las funciones de tiempo de SDL para poder controlar en milisegundos. Así que no dudéis en borrar a tontería que hice yo y poner vuestro contador.

Eso es todo. Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor lucesita » Mar Abr 29, 2008 4:21 pm

El problema que no me dejo hacer el GET me surgio el dia lunes, apenas llegue a casa, intente darle al get y nda no funcionaba, mismo error que describio mas arriba dokan.

bueno, que se me ocurrio, agarre el WinSCP y me copie el directorio sin problemas a mi rigido, yo contento empiezo a hacer una tontas modificaciones y como era de esperar no podia generar el parche, ya que no tiene repo contra cual comparar.

elimino todo, vuelvo a probar el darcs get y nada.

me vuelvo a bajar el repo de SF con WinSCP y que hago??
como os imaginarais hago un DARCS GET pero en vez de a SF se lo hago al dir donde baje el repo y salio andando, modifique hice 6 parches :D y me decido a subirlo, mientras lo subia vi un archivo ACTUALIZANDO.txt, que decia los pasos que habia que hacer para actualizar, a lo que supuse que era solo una guia, pero no era el que creo docan para actualizar ajjaja

bueno pruebo Modificar la carpeta copiando solo los archivos nuevos y updateados algunos fueron bien pero otros FATAL, me denegaba permisos!!!

que va.... agarro y elimino el repo de SF total yo tenia aca el mio.
y empieza a eliminar hasta que llega a la carpeta darcs y quiere eliminar lospatch propiamente dichos y me denego el permiso :S no podia de ninguna manera eliminar la carpeta darcs, entonces hablamos con dokan y decidimos esperar a alex.

que por cierto ahora si me deja hacer gets.
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor lucesita » Mar Abr 29, 2008 5:19 pm

vamos al grano, lo bonito, la programacion :D

hasta el momento esta asi, el menor tiempo que dio alex al programa es de 1 fps

a lo que lo voy a llevar a 50 FPS (esto es discutible, lo minimo que acepto son 20 FPS) ya que pienso poner animaciones en un futuro.

asi que ponemos un Timer para que nos de los FPS y otro Timer para que nos de el tiempo que deban moverse los blocks, que creo que cada 700 mS para una dificultad facil y 100 mS para una dificultad Dificil estariamos bien, obvio esto se puede ajustar.

como segundo punto, lo que planteo es la resolucion del juego, creo que debemos achicar los blokes, en vez de 32 lo ponemos a 16 manteniedo el 10 x 20 del area de juego y la pantalla por asi decirlo lo ponemos a 800 x 600 asi nos queda algo mas estandar y tenemos lugar para poner los scores y esas cosas.

otro tema que no tengo claro por ahora, si bien lo implemente en otros juegos, me parece no es del todo la mejor manera es el de poner texto en la pantalla pero bueno eso lo dejamos para mas adelante.

mi pregunta puntual es: Como hago para agregar y remover archivos de darcs QUE SE ENCUENTREN EN UN DIRECTORIO
es decir, yo tengo hecha 1 imagen de "presentacion", obviamente, en el directroio recursos/img/ bueno quiero añadirala al repo

como hago???
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor lucesita » Mar Abr 29, 2008 6:41 pm

ya publique un pseudo parche con las siguientos mods.

agregados
archivos: timer.h, timer.cpp
recursos: BackGroundT.png

los archivos timer, no es nada del otro mundo solo la implementacion de la funcion SDL_GetTicks(); en una clase para que podamos definir de manera rapida y comoda varios timers.

Modificacion:
principal.cpp: cambie SDL_LoadBitMap por IMG_Load para cuando cambiemos el BMP por un PNG.

y algo mas hice que no recuerdo....

ahhh implemente el timer de FPS que de momento esta con una linea agregada de SDL_Delay(2000); para ver como baja la fichita... en breve agrego otro timer que indique cuando debe moverse la ficha.


otro tema, hay que adapatar el mapa de colisiones al png que use de fondo :P

sisi... estoy viendo como hacerlo, pero tengo que estudiarme bien como trabaja... jajaja

ahhh y ya tengo indexadas todas las figuras, (hasta ahora use solo las estandars, mas adelante vemos si agregamos).

espero no alla quedado nada en el tintero :P

ahora quiero remarcar un punto, yo acabo de hacer algo que trasciende la logico del juego, modifique la resolucion y esas cosas.

creo que eso deberiamos hablarlo.

donde y cuando nos juntamos a hablar eso? ami me quedarian comodos de lunes a viernes de 23:00 a 03:00 pero en españa seria de 4:00 a 8:00

otro horario que podria hacerlo es de 12:00 a 17:00 pero estaria yo en el trabajo, que calculo no habria problemas!

Saludos Lucas
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Alex_13_estu » Mié Abr 30, 2008 2:39 pm

¡Hola! ¡Menuda actividad, Lucas! :lol: . Me gusta que nos entreguemos de esta manera, seguro que así nos irá bien. Al grano. Lucas preguntó cómo añadir archivos (aunque ya vi que después lo consiguió) que esttén en directorios. Muy sencillo:

Código: Seleccionar todo
darcs add "Directorio/[Otros_directorios]archivo


Por ejemplo, si tenemos una imagen que sea "img.png" en la carpeta "img" que a su vez está dentro de la carpeta "recursos", pues haríamos:

Código: Seleccionar todo
darcs add recursos/img/img.png


¿Simple, no?

Bien, después de ver cómo se está poniendo la cosa, creo que lo mejor es que nos sentemos un día media hora a discutir algunos temas del juego, por ejemplo, en el foro de Jabberes o en el MSN. A mí me vendría bien a partir de las 16:00h. españolas, más o menos hasta las 19:00h. españolas, pero podría ampliar este horario lunes, jueves y fines de semana. Por eso creo que lo mejor es fijar una hora para mañana (jueves) y así sentarnos a discutir lo de la resolución y algunas cosas más que me preguntó Lucas por mail. Si lo hacemos mañana, yo estaré disponible casi todo el día, así que espero respuesta. Principalmente necesito que esté Lucas, ya que es el que más se dedica a programación. A los demás os podríamos resumir lo que decidimos, pero es imprescindible que esté él para discutir algunos temas, así que espero, principalmente, su respuesta. En cuanto tenga al respuesta, confirmaré la asistencia. Por lo tanto, considero que sería bueno NO DESARROLLAR NADA NUEVO hasta que hablemos, para poder llevar el código bien estudiado a esa "reunión" todos y tener las cosas más claras al debatir.

Espero vuestra respuesta.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor lucesita » Mié Abr 30, 2008 4:15 pm

bueno, el jueves no creo poder estar a la hora que me dices, yo podria estar desde las 19:00 en adelante hora Argentina. que serian masomenos las 24:00 en españa, lo mejor creo que seria dejarlo apra el dia LUNES, que calculo poder estar de las 12:00 a las 24:00 (hora argentina), que eso seria 17:00 a 05:00 hora ESP.

con respecto a jabbers no me llevo ni un poquito, desde el PC de mi casa puedo entrar, pero desde el trabajo no y no es que tenga FW o algo que me impida, solo que no se le da por entrar, me bajare el pidgin o algun mensajero que soporte jabbers haber que es lo que pasa.

de ultima lo discutimos en el foro :P
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Alex_13_estu » Jue May 01, 2008 9:02 am

Finalmente queda cancelada la reunión del lunes, a no ser que alguno de vosotros tenga mucho interés en saber qué se discutió, porque... ¡pudimos hablar ayer en el chat de Jabberes! Aparte de Lucas y yo, estuvo dvd, pero se le complicaba la cosa y decidió dejarnos sólos con nuestros "desvaríos programables". Por lo tanto, hasta que se nos plantee otro problema que sea irresoluble si no estamos todos, creo que no hay necesidad de más reuniones, con lo del foro vamos de sobra. Así que hoy por la mañana acabo de hacer los cambios que habíamos pactado ayer (al menos de los que me acordé) y estoy subiendo el repo. Os resumo los cambios (mejor dicho "el" cambio):

- Archivos principal.cpp, figuras.h y figuras.cpp: Simplemente se añaden unas constantes del desfase del área de juego sobre las coordenadas totales de la pantalla, para poder dibujar las figuras en su área pero que a la vez nos sea más fácil trabajar con sus coordenadas.

No hay más cambios que ése. Ayer Lucas y yo (esto va más que nada para él) hablamos de eliminar algunos métodos que no nos sirven y modificar otros, pero eso hay que ir haciéndolo poco a poco en próximos parches. La pregunta es: ¿actualicé todo lo que habíamos dicho? ¿O se me pasa algo aparte de lo de eliminar algunos métodos y modificar otros? Creo que no, pero si ves algo, avisa.

Un saludo.

P.D.: Recordad que ahora para actualizar el repo con "darcs pull" llega, no hay que hacer "darcs get".

P.D. 2 : ¡Nooooooooo! ¡No me deja aplicarle el parche a los malditos archivos el Darcs! ¡¿Qué narices pasa?! Me pone que le generan conflictos todos los archivos que trrato de añadir... ¡Y no entiendo por qué! Por lo tanto, tengo que hacer algunas pruebas, así que voy a eliminar del darcs los archivos que no son imprescindibles: "LineCube.dev" (mi archivo de proyecto), "makefile.win" (lo genera al compilar) y "LineCube.layout" (que creo que tambén es de mi compilador). Ojo, esos archivos se borrarán de la carpeta "_darcs", pero seguirán yendo en la carpeta "LineCube". Lo que pasa es que ahora Darcs no guardará sus cambios porque no los considera del repositorio.

P.D. 3: ¡No! Ni así funciona.... ¡Me estoy volviendo loco! Creo que va a haber que volver a hacer lo mismo que antes: borrar repositorio y hacer uno nuevo. Por lo tanto, si tengo tiempo, dentro de un rato lo hago... Dejo el archivo "ACTUALIZANDO" para que nadie intente actualizar y así no perder cambios. Lo siento, pero va a haber que volver a empezar con los repositorios. Por suerte, esperemos que ahora no se pierda ningún dato.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Jue May 01, 2008 11:12 am

Estoy teniendo problemas para subir el repositorio a la web, pero no es por el repo ni por la web (o si), es que a veces no me deja conectar con el nautilus (lo más práctico que tengo a mano para actualizar), y con sftp no sé como se borra recursivamente para luego subir la carpeta actualizada, y con scp no me deja sobreescribirla. Ahora me ha dejado conectar con nautilus y lo he solucionado, pero anoche no podía...
Acabo de actualizar el repositorio, he añadido mi mail a developers.txt, comprovad si todo es correcto y avisad. Por cierto, me acabo de dar cuenta de que hay archivos nuevos, y por tanto tengo que darles permisos para que todos podamos manejarlos, ¿es normal?
Por otro lado, avisad cuando os reunais en jabberes, aunque no puedo aportar mucho si quisiera estar presente o por lo menos si estoy trabajando dejar el pc conectado para leer luego la conversación y saber que estais tramando ;)

edit

¡¡¡Alex!!! acabo de leer tu último mensaje en el foro, el caso es que anoche tuve los problemas que he comentado, y ahora si que me dejaba conectar y he actualizado, ¡¡ creo que la he cagado!!
confirmaló, por favor.
estoy a punt ode irme a trabajar, esta noche a eso de las once y media estaré por aquí de vuelta, espero no haber estropeado el repo...
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor Alex_13_estu » Jue May 01, 2008 12:20 pm

¡Hola Dokan! Acabo de mirar el archivo losersdevelopers, he visto tu actualización y... es muy probable que ahí esté el problema. Más que problema, voy a decir que eso fue lo que me llevó a confusiones, pero a ver si he conseguido arreglarlo... ¿Tienes todavía a mano el repositorio original que te bajaste para actualizar? ¿O ya lo has tirado? Si lo tienes a mano, por favor, envíamelo por correo en formato .zip por si acaso lo necesito para revisarlo. Mientras tanto, voy a pediros una cosa:

Acabo de subir de nuevo el repo y todo eso, he dejado todavía el archivo "ACTUALIZANDO" porque no quiero que subáis actualizaciones mientras no comprobemos una cosa. Por favor, haced lo que os voy a pedir y me comentáis los resultados:

1.- Colocaos en un directorio cualquiera y haced "darcs get http://linecube.sourceforge.net/LineCube".

A mi me ha funcionado, pero hasta hace un momento me daba un error rarísimo al aplicar el parche 6 de 6. Si lo prueba alguien y le funciona, borraré el archivo "ACTUALIZANDO" y todos felices, Dokan no hizo nada mal y ya está. Si vuelve a fallar... ¡Otra vez a comerse a Darcs y a pelear contra él!

Un saludo y contestad en cuanto podáis.

P.D.: Aunque tengáis un repositorio ya bajado, es probable que tengáis que hacer de nuevo el "darcs get" y que no os llegue sólo con el "pull", de todas formas, probadlo también.

EDITO:

Después de varias pruebas, parece que el repositorio vuelve a funcionar con normalidad, así que he quitado el archivo "ACTUALIZANDO" del servidor para que podáis actualizar ya como queráis. ¿La causa del problema? No la sé, pero puedo hacer alguna conjetura:

Es muy probable que Dokan y yo estuviésemos actualizando a la vez, y la copia del repositorio original que tenía en mi PC estaba actualizada, al contrario que la de Dokan. Entonces yo subí mi repositorio y, cuando Dokan subió el repositorio de nuevo, no se dio cuenta de que era el mío actualizado porque lo habíamos hecho a la vez (fue fallo de los 2, principalmente mío por no fijarme en el archivo de Dokan que estaba actualizando) y lo sobreescribió. ¿Resultado de ésto? Que mi copia del repositorio estaba actualizada con algo que no tenía la original y la original estaba con algo que no tenía yo. Pero al sobreescribir, Darcs perdió las modificaciones, sí, pero los archivos seguían teniendo los cambios hechos.

En definitiva, que al final, en vez de cagarla como él decía... ¡Dokan fue nuestro salvador! Y la culpa fue mía ésta vez por no ver el archivo de aviso que él había puesto... Pero bueno, al final todo se arregló, el repositorio está salvado con todos su parches y ya podemos de nuevo hacer actualizaciones.

Perdón por el fallo y un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Jue May 01, 2008 10:23 pm

De perdón nada hombre, son cosas que nos pasan y nos pasarán a todos.
De hecho creo que parte de culpa también es mia por dos motivos; uno, el brickindance, que no... , el primero es que anoche me dejé el archivo ACTUALIZANDO en el server porque se me hicieron las tantas intentando borrar las carpetas del server y subir las mias, a veces me falla y no conecta. Segundo es que esta mañana cuando me he acordado de que anoche no había borrado dicho archivo, y viendo que me dejaba conectar y borrar las carpetas, automáticamente puse mi repositorio sobreescribiendo el que había sin miramiento, suponiendo que nadie habría tocado nada. Debí mirar en el foro o haber dejado un tiempo antes de sobreescribir el directorio LineCube.

Acabo de probar un «darcs get ...» y un «darcs pull» sobre el repo que ya tenía y funciona todo bien, no se como lo habrás conseguido, enhorabuena.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor lucesita » Vie May 02, 2008 4:45 am

espero no me mateis, hace mas de 24 hs hay un archivo ACTUALIZANDO creado por alex despues d eeliminar el repo para subir el mio lo vi.

jejeje espero no interfiera en el trabajo que allas hecho :P

basicamente lo que hice, como de costumbre es nada, solo modifique el metodo Mover que ahora se le envia como parametro el movimiento en X
y la funcion que cumplia antes el metodo Mover la pase al metodo BAJAR

como habiamos hablado, pero como no recuerdo bien que problema tendriamos con las cordenadas logicas y las absolutas, en el metodo MOVER multiplique el parametro RECIBIDO por 25 asi que si le pasamos -1 al metodo Mover

por ejemplo
Figura_Actual->Mover(-1); movera un casillero a la izquierda
Figura_Actual->Mover(1); movera un casillero a la derecha

pero bueno eso despues lo modificas tu lex y me comentas por que no se podi hacer de este modo ya que yo me lo eh olvidado :oops:

agregue un nuevo timer y lo configure a 200 mS para el movimiento descendiente de la figura

este mov debe ser independiente al movimiento en X ya que es el que representa la gravedad.

mmmm ahora quedaria por verse que es lo que me interesa como adaptamos el mapa de colisiones, que metodos faltarian de la clase y creo que nada mas.


otra cosa que note, estamos haciendo primero el Dibujado de la figura y despues el movimiento

creo que esto deberia hacerse lrevez, primero Movemos y despues dibujamos!

hay que hacer otra reunion por jabberes. ya que la ultima me molo :D


Saludos
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Alex_13_estu » Vie May 02, 2008 8:16 am

¡Hola! Veo que seguimos dándole vueltas al fallo del otro día... Para dejarlo en empate digamos que fue un "fallo compartido" y así todos contentos, ¿OK, Dokan? Bueno, ahora mismo el repositorio va como la seda así que no hay que darle muchas más vueltas. Además incluso funcionó el "darcs pull"... ¿Cómo lo hice? Pues sólo tuve que borrar algunos parches (concretamente el último que había aplicado yo) directamente desde el repositorio original y volverlos a aplicar, así ya no dio más errores... Simple, pero al final funcionó.

Bueno, al grano. Dejando el problema del repo de lado, es hora (de nuevo) de discutir sobre programación. Primero, decir que ya borré el archivo "ACTUALIZANDO" (no me di cuenta de hacerlo antes). Gracias Lucas por avisar. En cuanto a tus actualizaciones:

- Contador: Me encanta el nuevo, se nota que eres un experto en estas cosas. Lo que pasa es que ahora el movimiento de bajada no es fluido... :( . Eso habría que discutirlo, si queremos una bajada continua o "a saltitos". A lo mejor modificando un poco la velocidad de caída de la figura (en vez de 5 píxeles 1) y reduciendo un poco el tiempo de espera (en lugar de 200 ms., algo menos de 100ms.) conseguimos que sea más fluído. No sé, habría que probar. Además, en ésto de la caída tendríamos que añadir todavía una opción más que es la de acelerarla con una tecla. Todavía hay que pensar cómo hacerlo.

-Nuemos métodos de "figuras": También de acuerdo con éstos, los modificaste bien y no tengo nada que decir aparte de "¡buen trabajo!". Yo estaba de acuerdo con multiplicar por 25 el desplazamiento en el eje X. El problema venía en la caída, con el eje Y, porque las coordenadas tenían que ser múltiplos de 25 para poder pasarlas correctamente a la "Cuadrícula " de colisiones. A ver si hoy implemento añgo de ésto y lo subo para que lo puedas ver.

Y en cuanto a lo de una reunión en Jabberes... ¡ya sabéis que yo encantado, me apunto a todo! La única prioridad que pongo en cuanto a horarios es que sea por la tarde en España (entre las 15:30 h. y las 18:00h., por ejemplo) o incluso lagunos días más tarde, por ahí a las 20:00h. Vosotros proponed y ya os comentaré si puedo o no.

Un saludo.


EDITO:

Nuevos cambios añadidos al repositorio, algunos a medio hacer. Os resumo:

- La figura baja a saltos de 25 píxeles en 25 píxeles cada 800 ms., mientras no seamos capaces de hacerla bajar de una forma continuada y a una velocidad aceptable, de forma que pase por los múltiplios de 25 (lo que nos da muy pocas posibilidades, porque o bien baja de 5 en 5, de 1 en 1 o de 25 en 25, no hay más posibilidades).
- En el método Mover de la clase figuras se comprueba que no se salga del mapa, mediante una comprobación del ancho y alto de la figura que se hace en el método Iniciar y se guarda en dos variables nuevas, "w" y "h".
- Se detectan las pulsaciones de las flechas del teclado en la función "CompruebaEventos()" para mover la figura a los lados
- Elimino la variable "ciclos" porque es innecesaria con los nuevos contadores
- Modifico la imagen inicial para que tenga "800*600" y porque ahora el juego sólo inicia al pulsar "Enter".
- Nuevo método en la clase "Cuadrícula" para comprobar si una figura colisiona con otra. Está todavía sin acabar y, por ahora, sólo comprueba si hay un choque en la parte baja de la figura o si ésta llega al "suelo". De esta forma la figura se frena al llegar abajo.

Probadlo, echad un vistazo al código (sobre todo Lucas que tenía dudas con la clase "Cuadrícula") y criticad y tratad de corregir, porque tengo muy poco tiempo y lo que hice fue en media hora y, como iba justo de tiempo, seguro que se me colaron cosas. Y si el repo no funciona.. ¡no me lo digáis, no lo quiero saber! :D . No, es broma, si pasa algo, avisad.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Vie May 02, 2008 6:01 pm

¡Que difícil se hace actualizar el repositorio a base de comandos!
He añadido un nuevo archivo Leeme.txt, con instrucciones sobre las librerías necesarias para compilar el juego. De momento a mi me da error al compilar en linux, así que supongo que no está completo y no se puede ejecutar.
Hablando de otra cosa, creo que nos falta un guión a seguir. Sé que el proyecto no es muy complicado para los que ya sabeis programar, pero para los que no sabemos e intentamos aprender, si no hay una referencia o un guión para saber por donde ir y lo que otros están haciendo... en fin, creo que ya sabeis lo que quiero decir.

EDITO
A propuesta de Lucas voy a intentar explicarme un poco más.
Lo que quería decir es que tenía entendido que cuando empiezas un proyecto, lo primero que se hace es definir un guión, una base del mismo sobre la que después ir trabajando. Por poner un ejemplo, como el guión de una película. Una reflexión sobre lo que ha de hacerse, el objetivo, unas reglas de juego, un menú, etcétera, para después poco a poco distribuir un orden de acción lógico.
Puedo suponer que como sabeis programar teneis las ideas bastante claras en la cabeza sobre lo que hay que ir haciendo, o lo que quereis que sea este juego una vez terminado. Ocupar diez minutos en transmitir esas ideas en un archivo de texto no es ninguna pérdida de tiempo, puesto que luego ir ampliando según se nos vayan ocurriendo nuevas funcionalidades o nuevos retos no cuesta nada.
Espero haberme explicado mejor.

EDITO
Al final, gracias a la ayuda de Lucas he conseguido compilar y ejecutar el juego en linux, sin embargo parece que hay diferencias en la ejecución del juego en linux. Conforme va cayendo el cuadrado no se va redibujando el fondo, de modo que en vez de una figura de tetris cayendo parece el juego de la serpiente. Poco a poco.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor lucesita » Sab May 03, 2008 3:18 am

Sera el post mas popular, bueno masomenos va asi.

Subi una nueva version.

Modificaciones, pocas como de costumbre.

Ahora el movimiento horizontal se lee directamente del teclado, cuando pulsas la flecha abajo, aumenta la velocidad en el descenso de la figura.

creo ue realize modificaciones menores en la clase figura, el metodo SetVelocity


Tendre que modificar mas cosas, ya que tengo interes, de ver las colisiones desde el fichero principal.cpp y no desde la clase figuras.

asi que si me puedes echar un cable alex te lo agradeceria.

masomenos en como implementaste las colisiones, ya que me interesa crear una nueva figura.

y hoy hablando con DOKAN, logro compilar el LineCube para linux
pero hay un problema, No borra el cuadradito, dice que se ve como el juego de la serpiente, y es raro ya que en Windows eso no pasa :S.


Saludos
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

Notapor Alex_13_estu » Sab May 03, 2008 9:12 am

¡Hola! Acabo de leer los mensajes, y trataré como buenamente pueda de explicarle a Dokan un poco lo que pidió. Y a Lucas... pues nada, como siempre agradecer el buen trabajo que ha hecho. Voy a dar mi opinión sobre los cambios primero y luego respondo a Dokan:

1.- Añadir archivo Léeme: Me parece geniall y además lo has estructurado muy bien. El único problema... es que Wondows no debe trabajar con el mismo sistema de caracteres que Debian o lo que tú uses (no recuerdo qué fue lo que dijiste), porque en vez de saltos de línea me salen los cuadrados que se ponen cuando no reconoce un caracter. Así que yo he puesto a mi bloc de notas el sistema ANSI a ver si así, cuando suba el próximo cambio, eres capaz tú de ver los saltos de línea, porque si no el archivo se vuelve un lío tremendo. Lo mismo pasaba con "losersdevelopers.txt", pero también lo he modificado, a ver cómo queda ahora (ojo, los cambios no se verán hasta que no actualice el repo, ya os avisaré cuando lo haga).

2.- Modificaciones de Lucas: Voy a ir comentando según repaso los archivos. Lo primero de todo: eres un aficionado de los timers, :D . Se nota que se te dan genial, y has solucionado con una facilidad pasmosa lo que yo pretendía hacer en breve, que era controlar el movimiento de la figura con un "Uint8 *keys" y comprobando su estado. Simplemente genial. En cuanto a lo de la bajada de la figura... pues también espectacular. Sé que no era muy complejo, pero de nuevo había que manejar timers y no es mi especialidad (parece que la tuya sí), así que, de nuevo, una pasada. Y creo que no me dejo nada, ¿o sí? ¿Has hecho algún otro cambio que no haya visto? Creo que no, así que paso a contestarte lo de las colisiones. No entiendo a qué te refieres con lo de "ver las colisiones desde el fichero principal.cpp y no desde la clase figuras", pero bueno, trataré de explicarte un poco cómo va el sistema y luego ya modificarás tú como veas. Partimos de que las figuras no tiene unas dimensiones de 4*4, si no que depende. 4*4 son las dimensiones de su mapa, pero tienen zonas a "0" en las que no tienen cuadros. Por lo tanto, la figura del cuadro tiene unas dimensiones de 2*2, la del palo de 1*4... Esas son sus dimensiones reales, y son las que calculo en el método iniciar de la clase "figures". Pues simplemente, el método Colision comprueba que la coordenada Y de la figura + el alto de esa figura no se salgan de la pantalla. y si se salen, lo avisa. También comprueba que la coordenada Y de la figura + el alto de esa figura no llegue a un punto que sea "1", es decir, que esté ocupado por otra figura. Por ahora sólo hace eso, ya que sólo comprueba las colisiones en vertical y hacia abajo. El problema se me ocurrió hace un rato pensando "¿Y las figuras irregulares?". Es decir, la típica "T", que no tiene el mismo alto en todos los puntos y tampoco el mismo ancho (si la giras). Ahí se nos plantea un problema. Por lo tanto, creo que tengo que reconstruír nuevamente toda la parte de colisiones, por lo que no te preocupes por entender completamente este "viejo" sistema.


3.- Fallo de ejecución en Linux: Pues de ésto sí que no tengo ni idea... No tengo Linux instalado en ninguna de sus variedades en casa, pero a lo mejor podría acceder a un Ubuntu para probarlo... Me mosque bastante, porque se supone que SDL es totalmente portable y que sólo hay que compilarlo sobre Linux para que tire como en Windows, así que no sé qué hacer. ¿Se te imprime el background de Lucas en pantalla aunque sólo sea la primera vez? O sea, ¿la figura cae sobre el fondo gris del área de juego de Lucas? Es que sería un poco sospechoso que se imprimiese la primera vez, y luego las demás se "olvidase" (porque es un loop y la primera vez es exactamente igual que la última). Si no se te imprimiese la primera vez, podría ser que el fallo estuviese en la función:

Código: Seleccionar todo
SDL_BlitSurface(sur_bggame, NULL, pantalla, NULL); //Pintamos el background


Porque no se le pasa un cuarto argumento que le diga donde pintar, pero no sé... Prueba a cambiar eso por esto (es una prueba temporal):

Código: Seleccionar todo
SDL_BlitSurface(sur_bggame, NULL, pantalla, &rectangulo_menu_principal); //Pintamos el background


No creo que solucione nada, pero por probar... No sé, no se me ocurre nada más que pueda dar lugar al fallo ese, a si que a ver si alguien está por aquí más lúcido que yo.

---

Bien. Ahora, por último, voy a tratar de responder un poco a Dokan:

Creo que ya había planteado hace un tiempo (concretamente en el último mensaje de la página 3 de este tema) los objetivos para la primera versión y un poco las reglas del juego. Cambiaron algunas cosa (como las dimensiones de las figuras, ahora son de 25*25), pero en esencia sigue siendo igual.

En cuanto a un guión de programación... No sé si Lucas tiene algo, pero yo para esto soy poco planificador y voy desarrollando según surja la cosa, siempre con las bases de qué quiero lograr en la cabeza. Más que nada, porque aunque tuviera un guión, me desviaría muchísimo de él. TIenes que ir adaptándote un poco a lo que surja y a las necesidades de ese momento del desarrollo del juego. ¿Necesito un método para comprobar colisiones? Me centro en desarrollarlo. ¿Ahora pensaba implementar la aceleración de la ficha, pero para ello necesito implementar nuevos contadores y no contaba con ellos? Pues pasos a paso, empiezo por los contadores y luego ya se verá si surjen más problemas. No creo que sea capaz nunca de seguir un guión...

Por último, voy a tratar de explicar un poco lo de ejcutar y compilar. Que yo sepa, para ejecutar los programas hechos con SDL sólo hacen falta algunas .dll para que funcione correctamente. Las que necesites, depende de las librerías que usaras. Hasta ahora sólo necesitamos "SDL" y "SDL_Image", pero es probable que en un futuro usemos también "SDL_Mixer" y "SDL_TTF", así que, con la versión ejecutable, habría que proporcionar las .dll siguientes: SDL.dll, SDL_image.dll, SDL_mixer.dll, SDL_ttf.dll, libfreetype-6.dll, zlib1.dll, jpeg.dll, libpng13.dll . Creo que esas son las .dll necesarias para ejecutar bajo Windows. En otros sistemas operativos, ni idea, pero echad un vistado a la página de SDL (http://www.libsdl.org).

Y para compilar, pues obviamente se necesitan también esas .dll, además de los archivos ".h" que se pueden descargar de la página de SDL (son las versiones de desarrollo o "delevel") y que son un montón por lo que no los voy a nombrar. Esos archivos ".h" vienen dentro de una carpeta llamada "include". Para que funcione nuestro programa, tienes que ir al directorio del compilador, ir a la carpeta "include" (o similar) y crear una nueva carpeta que sea "SDL". Ahí pegas todos los archivos que traía y ya está. ¡Ojo! Hay una versión de desarrollo por cada extensión de SDL: SDL_Image, SDL_Mixer... Además, las versiones de desarrollo que descargues te traerán también una carpeta "lib" con archios ".a" y similar. Pues esos archivos los copias a la carpeta "lib" del compilador (esta vez no tienes que crear la carpeta "SDL") y ya está todo el proceso de copiar-pegar. Por último, hay que añadir estas librerías al "linker" del compilador. Y ésto, tenéis que perdonar, pero no sé muy bien como hacerlo. No sé si en todos los sistemas será igual, y lo que es seguro es que no va a ser igual en todos los compiladores, pero tenéis que ir a algo así como "Opciones del compilador" u "Opciones del linker" y en un campo de texto en el que os permitan escribir y que sea algo así como "Añadir estos comandos a la linea del linker", escribís dejando un espacio y a continuación de lo último que hay:

Código: Seleccionar todo
-lSDLmain -lSDL -lSDL_image -lSDL_mixer -lSDL_ttf


Así añadirés los archivos de la carpeta "lib".

Creo que he exlicado todo lo que sé, así que espero que os sirva.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Sab May 03, 2008 3:44 pm

No te puedes imaginar las horas que perdí ayer intentando compilarlo. Lástima que no estuvieras ayer. Aunque al final conseguimos hacerlo.
No es por lo de instalar SDL y las otras librerías sdl, con linux un simple comando «aptitude install libSDL1.2debian libSDL1.2-mixer ....» lo hace todo, descarga los paquetes y los instala en su sitio. El problema era que no sabía que había que linkar las librerías cuando se compilaba, y cuando lo supe, no encontraba la manera correcta de hacerlo.
En cuanto a un guión de programación... No sé si Lucas tiene algo, pero yo para esto soy poco planificador y voy desarrollando según surja la cosa, siempre con las bases de qué quiero lograr en la cabeza. Más que nada, porque aunque tuviera un guión, me desviaría muchísimo de él. TIenes que ir adaptándote un poco a lo que surja y a las necesidades de ese momento del desarrollo del juego. ¿Necesito un método para comprobar colisiones? Me centro en desarrollarlo. ¿Ahora pensaba implementar la aceleración de la ficha, pero para ello necesito implementar nuevos contadores y no contaba con ellos? Pues pasos a paso, empiezo por los contadores y luego ya se verá si surjen más problemas. No creo que sea capaz nunca de seguir un guión...

La verdad es que siendo sólo dos los que programais tampoco hace falta, si te encargas de tenerlo todo organizado en la cabeza irá bien. Pero si se quiere unir al grupo más gente con conocimientos de programación creo que hubiera sido interesante que con sólo echar un vistazo a un archivo pudiera saber qué está pendiente de terminar, qué no se ha empezado, etcétera. El foro está bien para eso, pero con 84 mensajes en este tema hasta ahora creo que más de uno se echaría para atrás si tuviera que ponerse al día, además darcs parece una herramienta perfecta para esto mismo.
De todos modos hacer un esbozo de todo lo que necesitas para hacer cualquier cosa y aprender a organizarse puede venir bien para todo en la vida, no es mal momento para aprender. ¡Lo digo con la mejor de las intenciones!
Cuando actualices echo un vistazo a ver si los txt se ven bien. De todas formas buscaré información para ver por qué pasa eso. Utilizo codificación Utf-8 (¿pq utf-8?), supongo que será por eso, pero no debería verse mal.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor drincast » Sab May 03, 2008 8:34 pm

Saludos, de nuevo por aquí reportándome, bueno voy al grano pues e terminado el esqueleto de la pagina, hoy por fin pero por fin me he conectado al SF (claro que me toco ir a una sala de internet jajaja), puede subir los archivos de la pagina, básicamente son un archivo index.html y 3 carpetas (secciones, css, images).

Bueno quiero que le echen un vistazo, las únicas secciones que están disponibles por el momento son las de noticias de acerca de

Noticias: breve descripción del juego
Acerca de: descripción del grupo

Estas secciones no se han programado:
Screen shots: pues las fotos cuando tengamos una versión estable del proyecto.
Links: aquí voy a añadir los links de losersjuegos y SDL, pero si alguien tiene una pagina personal o bloc y desea que se visualice ahí pues solamente mándame la dirección del web.
Contactos: pues no se, aquí es para colocar los correos de nosotros pero no se si ustedes estén de acuerdo.

Bueno esta es una versión de prueba la idea es que la estructure un poco mas y adicione una función muy básica de AJAX para cargar las paginas dinámicamente y depender de una sola pagina que tenga todo lo visual, para que sea mas fácil modificar las secciones

Baje el repo con WinSCP, por fin voy a poder correr el programa, pues he leído el post constantemente y realmente han estado trabajando mucho ustedes, tengo un poco de envidia por que están trabando sobre la parte mas divertida, pues voy a empezar a revisar a ver en que puedo colaborar en cuanto a código, pero como que ya van bien avanzados.

Bueno no siendo mas me despido, no se olviden de echarle un ojo a la pagina.

Saludos.
drincast
 
Mensajes: 34
Registrado: Mié Mar 12, 2008 4:23 pm
Ubicación: Colombia

Notapor Juan Carlos » Dom May 04, 2008 3:30 am

Hola, bueno recien me acabo de bajar el codigo :) Le he dado un vistazo y le he encontrado un par de errores.

En el archivo "bloques.cpp", en la funcion "Cargar_IMG" hay una sentencia como esta:
Código: Seleccionar todo
img=SDL_DisplayFormat(img)

Esto produce un memory leak, o una fuga de memoria y (si no me equivoco) provoca un segmentation fault en linux (ubuntu).

Por otro lado debo aclararles lo siguiente. Suponga que ustedes crean un objeto, llamemosle A. Y digamos que luego, en algun punto del codigo llaman a una funcion y le pasan por valor dicho objeto A.
Esto es MUY peligroso ya que al pasarse por valor, el compilador crea OTRO objeto, usando el "constructor por copia". Digamos que este nuevo objeto copiado se llama B. Cual es el problema? Si dentro de la funcion se modifica algun valor del objeto, el objeto modificado sera B y no A.
Otro grave inconveniente es el siguiente. Supongan que A maneja memoria dinamica (y su destructor la libera). Al llamarse al "constructor por copia", el objeto copiado B tambien tendra memoria dinamica pero ademas apuntara a la MISMA memoria que apuntaba A. Eso es malo? Sip, ya que al finalizar la funcion, el objeto B es destruido y por lo tanto se llama al destructor que liberar memoria; pero B apuntaba a la memoria de A!!! y cuando el destructor libere memoria, habra liberado la memoria de A!!!!.
La solucion mas simple es que pasen los objetos por referencia.

No pude probar el codigo ya que estoy bastante atareado con la facu, pero prometo que en dos semanas (cuando terminen los parciales) me pondre a explorar y a codificar.

Saludos y sigan asi.
Juan Carlos
 
Mensajes: 97
Registrado: Sab Jul 07, 2007 1:05 pm

Notapor Alex_13_estu » Dom May 04, 2008 7:50 am

¡Hola! Bueno, antes de nada, tengo que decir una cosa a drincast... La página no me gustó mucho... ¡Me gustó muchísimo! :D . Es una pasada, ahí con el logo de "LosersDevelopers" a la derecha y, sobre todo, con el logo del juego en la parte superior. Sinceramente, me encanta. Es muy intuitiva, las descripciones que has puesto son muy buenas... Definitivamente, un trabajo perfecto. Ojalá podamos decir pronto lo mismo de la programación del juego... Simplemente decirte que, si ahora te vas a dedicar más a lo de programación, pues yo encantado de tener a alguien más de ayuda. En cuanto a lo de los links... Pues no, no tengo página personal ni nada, así que creo que con añadir las de SDL, LosersJuegos y alguna cosilla más que se nos ocurra, llegará para empezar. Luego si alguien quiere añadir la suya, perfecto. Tampoco tengo ningún problema con lo del contacto, puedes añadir mi mail sin problemas. Por último, decirte que se me han ocurrido algunas secciones, iguales a éstas, que se podrían añadir en el futuro. Una, claro está, sería una sección de "Descargas", para acceder al código del juego, así como a su versión ejecutable. Y otras podrían ser un FAQ sobre el juego o cualquier cosa que se nos ocurra. Estas serían menos importantes, pero si hacen falta se podrían poner... Bueno, lo principal es acabar la primera versión del juego y permitir que se descarge su ejecutable.

Ahora voy a temas más de programación, más que nada a lo que dijo Juan Carlos. En cuanto a lo de "SDL_DisplyFormat()", es cierto, acabo de mirar la documentación y provoca un "memory leak", así que ahora mismo corrijo el código. Parece ser que no puedes asignar el valor de retorno a la misma variable que pasas como parámetro, si no que se lo debes asignar a una nueva superficie y luego borrar la que pasaste como parámetro. Ahora lo soluciono.

Y en cuanto a lo de los objetos por valor o por referencia... ¡no tenía ni idea de lo de la memoria dinñamica! Sï que sabía un poco lo de que se creaba un nuevo objeto en la función y que no se guardaban los cambios, pero de lo otro, no sabía nada. Aunque nuestros objetos no tienen destructores y creo que muy pocos usan memoria dinámica (creo que sólo el del mapa de colisiones), por si acaso voy a modificar las funciones para que los parámetros objetos se pasen por referencia y no por valor. A ver si dentro de poco puedo subir ya los cambios...

Gracias a los dos y un saludo.

EDITO:

Bueno, acabo de actualizar y soy incapaz de guardar en darcs los cambios del LÉEME. A cambio modifiqué las colisiones, se crean figuras cuando se posa la que estamos controlando y arreglé lo que dijo Juan Carlos. Pero, increíblemente, soy incapaz de arreglar lo del LÉEME. Es decir, yo le hice los cambios, pero cuando quiero hacerle el "darcs record" y aplicarle el parche al repo original no me deja... Así que a ver si alguien de vosotros modifica algo y lo consigue. Más tarde lo intentaré de nuevo, a ver si así podemos hacer la prueba de por qué no se me ven bien todos los caracteres en mi ordenador, pero, por ahora, no he conseguido nada. Si consigo algo o hago más cambios, os aviso. No tengo mucho más tiempo, así que echadle un ojo y me comentáis las dudas. SI eso después hagio un análisis mejor de los cambios, si me queda tiempo.

Un saludo.

P.D.: Probablemente, por culpa de lo del LÉEME, tengáis que hacer nuevamente el "darcs get" y no el "darcs pull".
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Como actualizo el repo de SF

Notapor drincast » Dom May 04, 2008 9:06 pm

Hola, bueno como les comente, me puede bajar el repositorio (salio algo caro pero valió la pena jajajaja), contento me fui a la casa a analizarlo, realice unas modificaciones que pienso subir, pero como se que les ha dado problemas el repositorio anteriormente y parece que ya lo han arreglado, pues no quiero que cuando actualice mis cambios al repo original se generen nuevos problemas, quiero (eso si, si no es mucha molestia que me echen una mano para actualizar el repo en SF, para que no la vaya a cagar), les explico como realice la modificación

1) me baje el repositorio original con WinSCP, lo copie al disco
2) realice un darcs get así darcs get LineCube LineCubemod
3) en LineCubemod realice las modificaciones, cree tres parches
4) los tres parches los copie en LineCube y los aplique
5) y listo tengo el repo original en mi disco con mis modificaciones

Ahora van mis preguntas

-Al momento de actualizar el repo original en SF, donde debo colocar el archivo ACTUALIZANDO, en httdoc o en LineCube?

-Borro el repositorio que esta en SF y copio todos los archivos incluyendo la carpeta _darcs del repositorio modificado que esta en disco?
-Hay dos archivos en el repo original (en mi disco), que al dar el comando darcs whatsnew –l aparecen como cambios, uno se lo que es pero el otro ni idea
- ./recursos/img/Thumbs.db: este el archivo de index de Windows para images, etc, se debe adicionar como todos los archivos nuevos, o no se debe tomar en cuenta?
- ./tecla, este archivo no se para que es, trae como una descripción de cambios o de los parches, lo adicionó al repositorio o lo dejo por fuera, que hago con el?

- Yo voy a actualizar pero veo que el repo de SF lo han actualizado, y la copia que yo tengo no tiene esas modificaciones, como actualizo?, debo copiar el nuevo repo y aplicarle los parches y ahora si subir de nuevo el repo?.

- Y lo mas importante que pasa si se daña el repositorio, basta con remplazarlo con el repo original al que no le se ha aplicado las modificaciones.

Las actualizaciones son en la figura sale de diferentes colores, añadí las lozas de otros colores para formar las figuras, modifique principal.cpp para que reproduzca música, y otros menos importantes, otra cosa tengo los archivos de parche y mi SO es Windows bueno el de la sala.

hoy iva a actualizarlo pero no quise por que habian realizado modificaciones y seguro que dañaba algo, Pues nada hombre gracias por prestar atención al mensaje y por sus respuestas anticipadamente

Saludos.
drincast
 
Mensajes: 34
Registrado: Mié Mar 12, 2008 4:23 pm
Ubicación: Colombia

Notapor Dokan » Lun May 05, 2008 9:54 am

¡Me encanta la web! Con lo cutres que me quedan a mi... en fin.
Voy a intentar contestar a las dudas de drincast:
- Cuando vayas a aplicar algún parche debes hacerlo sobre el repositorio original, no sobre uno que hayas obtenido mediante el comando «darcs get...», por tanto debes copiarlo desde sf.net, aplicar el/los parches y volverlo a subir borrando el que había o sobreescribiendo sobre el que había. Asegúrate después de subirlo de que los permisos son apropiados en todos los archivos nuevos (y viejos) para que todos podamos realizar modificaciones, 664 es suficiente (-rw-rw-r--), aunque 777 también estará bien (-rwxrwxrwx), si tienes alguna duda en cuanto a permisos pregunta a google o a wikipedia. Concretamente cuando se aplica un parche se crean archivos nuevos en una de las subcarpetas de _darcs, no recuerdo cual.
- El archivo ACTUALIZANDO lo deberías copiar en la carpeta raiz, «htdocs».
- Alguien ha actualizado el repo de sf.net mientras hacías parches en tu propio repo. Para descargar los nuevos cambios sólo utiliza el comando «darcs pull» (revisa el manual de Alex).
Que me corrijan si me equivoco, pero creo que los cambios descargados no afectan a las modificaciones que tú hayas hecho. Cuando haces «darcs pull» te pide confirmación para aplicar cada parche, viendo la descripción deberías saber si puede suceder algún problema. Si crees que algún parche va a crear conflictos con lo que has modificado (puede que los dos hayais metido mano a la misma funcion del juego) simplemente no lo apliques.
Por otro lado, puedes aplicar tus modificaciones al repo original sin ningún problema aunque no tengas todos los parches de éste en tu repositorio, esto no debería crear conflicto salvo lo dicho de que dos personas modifiquen la misma función en un archivo o cosas así.
- No debería dañarse el repositorio. Si sucede simplemente no borres el original en sf.net ni lo sobreescribas. Puedes probar si funciona con el comando «darcs get ...» sobre el repo original que tienes en tu pc despues de haber aplicado las modificaciones y justo antes de subirlo. Desde una nueva carpeta, por supuesto. Si todo va bien se sube y ya está.

Espero haberte ayudado.

Ahora voy con lo mio. Desde la última modificación se compila bien pero no me deja ejecutar, me da el siguiente error:
«$./linecube
Violación de segmento
»
Como bien sabeis no se como se puede resolver, a ver Juan Carlos que tiene Linux Ubuntu nos dice si le sucede igual.
En cuanto al archivo LEEME; ¿A alguien más le sucede como a Alex? Alex, intenta copiar el texto (creo que más o menos está bastante completo), pegaló en un nuevo archivo de texto, guarda y aplicaló al repo, supongo que así si se solucionará el problema.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Abuuu... ( O.o )?

Notapor Carlos Guevara Moscol » Lun May 05, 2008 1:25 pm

:( :( :( antes q nada, perdonen x mi ausencia.. pero es q al parecer tengo problemas con la pagina..:( :( :( x alguna extraña razon ya no me envia notificaciones cuando alhuien postea algo nuevo..:S:S asi q esta es la 3ra vez q entro x propia voluntad y me topo con un cerro de nuevos post y se me hace dificil leer tantos de golpe..:P 8) 8) x eso he decidido imprimirlo todo desde la ultima vez q yo he posteado para asi tener a la mano todo lo q se ha dicho desde entonces :twisted:

:evil: :evil: espero q no hayan hablado de mas..U.U ni se hayan explayado mucho para decir cosas poco relevantes (u.u como hago yo :P)
ta XVR el mIRC, ya conecte :D, ahora q hago
??:S
Carlos Guevara Moscol
 
Mensajes: 26
Registrado: Vie Feb 29, 2008 10:32 pm
Ubicación: Perú

me quedo grande

Notapor drincast » Lun May 05, 2008 5:20 pm

Buenas, gracias a Alex y Dokan por los comentarios de la pagina, las nuevas secciones sobre las que opino Alex las añadiré mas adelante, pues hoy he intentado actualizar el repo con mis simples modificaciones, gracias a las recomendaciones de Dokan, pero paila no se pudo.

Primero realice el darcs pull en mi repositorio, y decía que no hay modificaciones, luego me baje el repo original de SF, cree el parche para aplicárselo pero no deja, dice que hay errores en algunos archivos este es el error.

darcs failed: Error applying patch to recorded!
Running 'darcs repair' on the target repository may help.
user error (Error applying hunk to file ./docs/losersdevelopers.txt)

bueno lo borre (claro en el disco no en SF), y lo copie de nuevo, entre en el
y mire si habia algun cambio y claro aparece:

M ./docs/LEEME.txt -17 +29
M ./recursos/img/Thumbs.db

No se si es por eso que no deja aplicar parches ya que no se han guardado los cambios para darcs, realice varias veces la misma operación pero “paila to palia”, nada me quede con las ganas (con tanto entusiasmo que tenia para actualizar).

Eso si no realice ninguna modificación en el repo de SF

Creo que ese archivo Thumbs.db que genera Windows no lo debemos incluir, mejor hay que eliminarlo del repo, y decirle a darcs que lo tome como un tipo de archivo aburrido

Estoy que sumo mis modificaciones pero ni modo, tocara esperar ya que esta semana no puedo ir a la sala de internet (me ahorro algo de plata) por que me toca estar en la U, y ahí si que no se deja ni conectar al SF.

Otra cosa, alos que no han visto la pagina, échenle una miradita y opinen a ver que se le agrega que se le quita en fin.

Hasta la próxima
:)
drincast
 
Mensajes: 34
Registrado: Mié Mar 12, 2008 4:23 pm
Ubicación: Colombia

Notapor drincast » Lun May 05, 2008 5:31 pm

Casi se me olvida Dokan me mensiono algo de los permisos, como hago para cambiar los permisos en SF, o se debe realizar esto en el equipo.

ya que al subir un archivo casi siempre queda rw-r--r- y no el completo.
drincast
 
Mensajes: 34
Registrado: Mié Mar 12, 2008 4:23 pm
Ubicación: Colombia

Notapor drincast » Lun May 05, 2008 5:33 pm

no, no ya pille como, disculpad por la pregunta tan pendeja (jajajaj)
drincast
 
Mensajes: 34
Registrado: Mié Mar 12, 2008 4:23 pm
Ubicación: Colombia

Notapor Dokan » Mar May 06, 2008 9:50 am

Buenas a todos.
He estado buscando información sobre el error que me tira al ejecutar LineCube en Linux Debian Etch. (Wikipedia)
El problema según he podido comprobar en varias listas de correo resulta ser que Windows no hace comprobaciones al escribir en porciones de memoria no reservada, sin embargo Linux, coherente él, te tira un error «Violación de segmento» o «Segmentation fault». Por lo tanto el error tiene que estar en alguna variable (según he podido leer aquí) que no tiene la memoria reservada.
Voy a buscar por si pudiera encontrar el error en el código.
EDIT
He estado mirando a ver si encontraba algún error, pero mi desconocimiento de C++ se une a que no puedo saber cuales han sido los archivos modificados en la última actualización.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor Juan Carlos » Mar May 06, 2008 11:39 am

Hola, les recomiendo que sigan con el proyecto. Muchas veces he visto grupos de programadores que empiezan, se traban con un bug, y mueren ahi. Piensen que este es el primer programa que hacen, y es mas, es la PRIMER version del programa. Es totalmente entendible la aparicion de bugs. Lo importante es terminar el juego para luego, en una segunda version, arreglarle los bugs y , por que no, agregarle nuevas funciones. Tal vez esto lo haya repetido varias veces pero prefiero ser una persona "pesada" en pos de ayudarlos a ustedes.

Si lo desean, una persona puede dedicarse a leer el codigo en busca de errores MIENTRAS el resto continua trabajando en nuevas lineas de codigo. Esto es lo que sucede en grandes proyectos donde un un pequeño grupo se separa del grupo principal para formar un "equipo de anti-bug" (se que tiene un nombre mejor pero no me acuerdo), mientras el resto de los programadores siguen programando.

Saludos
Juan Carlos
 
Mensajes: 97
Registrado: Sab Jul 07, 2007 1:05 pm

Notapor Alex_13_estu » Mar May 06, 2008 3:44 pm

¡Hola! Siento no haberme pasado por aquí ayer, pero estuve fuera de casa y no tenía posibilidad de conectarme a Internet... Así que a ver si hoy me pongo al día y contesto todo lo que pueda.

Primero de todo, decir que sigo siendo incapaz de actualizar el LÉEME: ni borrando el parche en el que Dokan lo añadía... A ver si dentro de poco me siento con más tiempo a mirarlo detenidamente y lo consigo arreglar. Si logro algo, os aviso. En cuanto a modificaciones, nada más. No he desarrollado nada nuevo, a ver si entre hoy y mañana saco algo nuevo (eliminación de líneas completas o algo así).

Respondo ahora al mensaje de drincast de cómo actualizar (Dokan ya había comentado algunas cosas). Ya ha dicho que "ACTUALIZANDO" debería ir en "htdocs", así que lo único que tienes que hacer es borrar el directorio <<LineCube>> que hay en SF.net y subir el tuyo original actualizado. Pero yo te recomendaría que antes de eliminar ese directorio le hicieses una copia de seguridad, por si al subir tu directorio original falla. Si diera algún problema, simplemente borrarías el directorio original y subirías de nuevo el viejo al que le hiciste la copia de seguridad. Para probar si funciona puedes intentar hacerle el <<darcs get...>> en un directorio cualquiera. En cuanto a los archivos que te aparecen con <<darcs whatsnew -l>>... El de "Thumbs.db" no lo añadas, al menos yo no lo hago. Y el de "tecla"... Pues yo diría que es el archivo de parche que creó Lucas para actualizar al última vez y se olvidó de borrarlo... xD, así que tampoco lo añadas. ¡Ah! Y cuando actualices el repo, NO debes guardar las modificaciones que hay en los archivos "LÉEME.txt" y "losersdevelopers.txt". Cuando te pregunte si quieres actualizarlos, dile que no. Eso es lo que genera el error y eso es lo que me está volviendo loco para actualizar el LÉEME, así que, cuando te pregunte sobre actualizar esos archivos, pulsa "n". Por último, para actualizar la copia de tu repositorio simplemente utiliza el comando <<darcs pull>>. Pero para que funcione, el <<darcs get>> con el que creaste la copia del repo original no lo puedes hacer desde un directorio local, si no que debes hacer "darcs get http://linecube.sourceforge.net CopiaLocal". Para terminar, decir que no contesto a lo de los permisos porque no voy muy sobrado de tiempo y parece que ya lo solucionaste...

En respuesta al error de Dokan... No tengo Linux y por ello no puedo ayudar, pero prueba a ejecutar el comando <<darcs unrecord>> y elimina el último parche mío, el de "Correción de errores de sintaxis" o algo así y mira a ver qué pasa... Si después te funciona, avisa, porque tengo una ligera idea de dónde puede estar el fallo. Si sigue sin funcionar, sigue borrando parches hasta que logres que corra como antes y coméntanos qué fue lo que tuviste que borrar.

Por último, voy a dar contestación a los mensajes de Carlos y de Juan Carlos. A Carlos, decirle de nuevo bienvenido y que lo esperamos con los brazos abiertos. Y a Juan Carlos... Decirle que yo, al menos por mi parte, sigo con la ilusión del primer día (si no más) por poder terminar el proyecto. Y no descansaré hasta lograrlo, xD. En cuanto a lo del equipo "anti-bugs"... No sé, hasta ahora hemos programado sólo dos personas y no creo que sea muy eficiente (además de que supongo que habria gente a la que no le gustaría formar parte de ese equipo, yo entre ellos). Por lo tanto, no lo considero importante para este proyecto. Pero hay que mirar un poco al futuro y es una buena cosa que plantearse, la corrección de bugs... Aunque mejor cosa que plantearse es acabar primero el juego para que pueda dar los problemas, porque si pensamos en los bugs antes de acabar la programación del juego, mal vamos. Al menos esa es mi opinión.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor Dokan » Mar May 06, 2008 9:26 pm

Gracias Alex, no sabía que se pudiera hacer unrecord sobre mi propio repositorio.
El caso es que he ido quitando como me has dicho y después de haber quitado 11 parches seguía dando el error, así que supongo que el error estará en mi pc, aunque no entiendo por qué antes iba y ahora no.
En cuanto al equipo anti-bug que propone Juan Carlos, opino que hay que seguir para adelante mientras funcione, después ya depuraremos. Esta vez parece que sólo es mi pc.

EDITO
He añadido a la carpeta LineCube de la web un archivo comprimido (LineCube.tar.gz, archivo comprimido de linux) con el repositorio completo para poder enlazarlo desde el foro para que me puedan echar un cable fácilmente los que tengan linux a ver por qué me da error.
Una propuesta.
Acabo de pensar que podríamos dejar en la web de sf.net una copia estable del repo (ahora o si acaso cuando vaya siendo algo completo) y en vez de descargar todo el repo, aplicar el parche y subir otra vez todo el repositorio, sólo ir subiendo los parches y que cada uno se encargue de ir aplicándoselos en su pc y comentando las consecuencias. Así cuando haya consenso se actualiza el repositorio original.
Puede que sea una tontería, pero por lo menos nos ahorramos descargar y subir el repositorio completo cada vez que queremos aplicar un parche, solo hay que subir el parche. Eso sí, hay que estar atento de nuevos parches para descargarlos y aplicarlos. Esto no es ningún problema porque como podeis ver en este enlace se mantienen ordenados por fecha de modificación.
Avatar de Usuario
Dokan
 
Mensajes: 143
Registrado: Lun Dic 03, 2007 10:40 pm

Notapor Alex_13_estu » Jue May 08, 2008 2:33 pm

¡Hola! Bueno, voy a pedir perdón a Dokan porque hay un problema con el que no contaba al hacer el "unrecord". El comando "unrecord" elimina las actualizaciones de Darcs. Darcs guarda una copia de todos los archivos en el directorio "_darcs/pristine". Por lo tanto, cuando eliminas un parche, esos cambios se eliminanan de esa carpeta "pristine" pero no de los archivos de la carpeta principal del repositorio. Al menos eso es lo que me pasa a mí. Por lo tanto, siento decirte que lo de los "unrecord" es muy probable que no sirviera de nada. Por lo tanto, para poder arreglarlo, sería interesante que me proporcionaras más datos del error (por ejemplo, cuándo te lo da, si al comienzo de la ejecución o en algún momento concreto). Como no has dicho nada, supongo que el juego ni siquiera arranca, por lo que voy a dejarte unas instrucciones y me comentas cuál es el resultado:

- En el archivo bloques.cpp cambia estas líneas:

Código: Seleccionar todo
//Carga la imagen
void Block::Cargar_IMG(const char *path)
{
    SDL_Surface *sur_auxiliar;//Superficie auxiliar para cargar la imagen
   
    sur_auxiliar = IMG_Load(path);//Carga la imagen
    img = SDL_DisplayFormat(sur_auxiliar);//Convierte el formato de la imagen al de pantalla para acelerar el blitting
    SDL_FreeSurface(sur_auxiliar);//Libera la superficie auxilar
}


Por éstas:

Código: Seleccionar todo
//Carga la imagen
void Block::Cargar_IMG(const char *path)
{
    img = IMG_Load(path);//Carga la imagen
}


- En el archivo figuras.h cambia esta línea:

Código: Seleccionar todo
int Bajar(Cuadricula *mapa_colisiones);//Suma las velocidades a la posición


Por esta otra:

Código: Seleccionar todo
int Bajar(Cuadricula mapa_colisiones);//Suma las velocidades a la posición


- En el archivo figuras.cpp cambia estas líneas:

Código: Seleccionar todo
//Mueve la figura en el eje Y hacia ajo continuamente
int Figures::Bajar(Cuadricula *mapa_colisiones)
{
    int **copy_mapa;//Mapa de la cuadrícula
    int posx, posy;//Posiciones de la figura en las dimensiones de la cuadrículaç
    int k, n;//Contadores
   
    if(mapa_colisiones->Colision(x, y, mapa, ABAJO) == COLISION)//Si choca la figura
    {
        dy = 0;//Si choca la figura, la frena
        copy_mapa = mapa_colisiones->GetCuadricula();//Obtiene la dirección de memoria del primer elemento del mapa.
       
        posx = (int)x/LADO_BLOQUE;//Calcula la coordenada x
        posy = (int)y/LADO_BLOQUE;//Calcula la coordenada y
     
        for(k = 0; k < LADO_FIGURA; k++)//Recorre el primer índice del mapa
        {
             for(n = 0; n < LADO_FIGURA; n++)//Recorre el segundo índice
             {
                 if(mapa[k][n] != 0 && posy + k < mapa_colisiones->GetH()
                    && posx + n < mapa_colisiones->GetW())//Si no se sale de la cuadrícula y es distinta de 0 la celda
                     copy_mapa[posy+k][posx+n] = mapa[k][n];//Copia en la cuadrícula la forma de la figura
             }
        }
       
        return -1;//Devuelve -1 (parado)
    }
   
    y += dy;//Mueve la figura hacia abajo
   
    return 0;//Devuelve 0 por defecto
}


Por estas otras:

Código: Seleccionar todo
//Mueve la figura en el eje Y hacia ajo continuamente
int Figures::Bajar(Cuadricula mapa_colisiones)
{
    int **copy_mapa;//Mapa de la cuadrícula
    int posx, posy;//Posiciones de la figura en las dimensiones de la cuadrículaç
    int k, n;//Contadores
   
    if(mapa_colisiones.Colision(x, y, mapa, ABAJO) == COLISION)//Si choca la figura
    {
        dy = 0;//Si choca la figura, la frena
        copy_mapa = mapa_colisiones.GetCuadricula();//Obtiene la dirección de memoria del primer elemento del mapa.
       
        posx = (int)x/LADO_BLOQUE;//Calcula la coordenada x
        posy = (int)y/LADO_BLOQUE;//Calcula la coordenada y
     
        for(k = 0; k < LADO_FIGURA; k++)//Recorre el primer índice del mapa
        {
             for(n = 0; n < LADO_FIGURA; n++)//Recorre el segundo índice
             {
                 if(mapa[k][n] != 0 && posy + k < mapa_colisiones.GetH()
                    && posx + n < mapa_colisiones.GetW())//Si no se sale de la cuadrícula y es distinta de 0 la celda
                     copy_mapa[posy+k][posx+n] = mapa[k][n];//Copia en la cuadrícula la forma de la figura
             }
        }
       
        return -1;//Devuelve -1 (parado)
    }
   
    y += dy;//Mueve la figura hacia abajo
   
    return 0;//Devuelve 0 por defecto
}


- Por último, en principal.cpp cambia esto:

Código: Seleccionar todo
if (figmove_tim.GetCurrentTime() > fig_delay)
                {
                    parada = figura_actual->Bajar(&mapa);//PRUEBA DE MOVIMIENTO
                    figmove_tim.ResetTime();
                }


Por esto otro:

Código: Seleccionar todo
if (figmove_tim.GetCurrentTime() > fig_delay)
                {
                    parada = figura_actual->Bajar(mapa);//PRUEBA DE MOVIMIENTO
                    figmove_tim.ResetTime();
                }


-----

Creo que esos son todos los cambios que realicé el otro día en cuanto a mejoras de código recomendadas por Juan Carlos, por lo que debería quedar el código como estaba. Si sigue sin funcionar, avisa y lo analizaré más a fondo. Si, en cambio, funciona, prueba tan sólo a modificar algunas de las partes que te dije para saber en cual está el error (ojo, las modificaciones de los archivos "principal.cpp", "figuras.h" y "figuras.cpp" van juntas, no modifiques unos archivos sí y otros no porque no compilará). O sea, modifica sólo el archivo "bloques.cpp" o modifica sólo todo lo otro.
Puede ser que ocurran errores de compilación, porque yo he hecho los cambios pero no los he probado y compilado. Si los diera, avisa y trato de solucionarlos. Debo pedir perdón también por poner los cachos de código tan largos, pero es porque así le será más fácil a Dokan copiar y pegar que si hubiera puesto líneas sueltas.

----

Por último, acabar diciendo que estoy desarrollando el sistema de eliminación de filas completas. Ya he conseguido que se eliminen "gráficamente", o sea, que se eliminan de la pantalla, pero todavía no he logrado que se eliminen del mapa de colisiones, Espero poder subir actualizaciones en breve.

Un saludo.

EDITO:

Se me había olvidado contestar a lo que dijo Dokan de los parches. Primero, decir que no hay problema con lo del archivo comprimido que subiste, ya leí el tema que pusiste y decidí no contestar porque ya lo hice aquí. Y en cuanto a lo de subir sólo los parches... tiene varios problemas. Coy a tratar de abreviar. Lo primero, decir que sí que sería mucho más cómodo, porque sólo habría que subir los archivos de parche. Pero no todo es tan bonito. Hay que decir que no se pueden aplicar parches sobre las copias de repositorio que es lo que tiene cada uno en su ordenador mediante "darcs get". Para poder aplicar parches deberíamos tener todos un repositorio original exactamente igual al de SF en el ordenador. Bien, podrás decir que eso se puede conseguir. Pero, al crear parches, todos tendrían el mismo nombre, porque el repo original sólo puede llevar un nombre. ¿Que eso también se puede arreglar? Lo sé, pero aún hay más. Para generar archivos de parche, Darcs comprueba el repositorio original. Pero, si el repositorio original es el que va a generar el parche, ¿qué hace? ¡Pues que no deja! ¡No se pueden generar parches desde un repo original! Por lo tanto, deberíamos tener en nuestro PC un repo original en el que aplicar los parches y otra copia (derivada del anterior original) en la que se generan los parches. Pero como no podemos tener nuestro repo original actualizado al segundo (porque hay que hacerlo manualmente descargando los parches), muchos de los archivos de parche que generemos provocarán conflicos por aplicarse sobre un repo original que no fue el que comprobó.

No sé si lo habréis entendido, pero, por si no os dierais cuenta, mi opinión es que sería muy muy difícil de hacer y poco práctico. Así que, por mi parte, seguimos como estamos. Si alguien opina otra cosa, que lo diga y lo disccutiremos.

Un saludo.
Alex_13_estu
 
Mensajes: 75
Registrado: Jue Mar 27, 2008 5:22 pm

Notapor lucesita » Jue May 08, 2008 5:54 pm

Sepan disculparme todos, pero como tuvimos los problemas con linux,, decidi bajarme un ubuntu, logre instalarlo conectar a internet y esas cosas :D

pero todavia no pillo bien como instalar cosas, ya sean las SDL como el PIDGin si bien ya tengo ambos instalados todavoa no pillo biwen la onda.

es por eso que esta semana no aporte nada, hoy voy a ponerme al dia con lo que se hablo en el foro.

Saludos Lucas.
lucesita
 
Mensajes: 57
Registrado: Mié Mar 12, 2008 2:49 pm

AnteriorSiguiente

Volver a Planificación y eventos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado