EasyRPG Forums

Versión Completa: yo tambien estoy haciendo un editor rpg para linux(sin portal web aun)
Actualmente estas viendo una versión simplificada de nuestro contenido. Para ver la versión completa en el formato correcto, dale click aquí
quisiera saber esto:

1-si se pondra algun estandar de decir a la gente que tales normas, es decir, si se dejaran las normas a eleccion del usuario(me refiero a normas de conducta por si tiene database online easyrpg.)
o
2-se pondran un estandar algo asi tipo planeshift o the mana world que no dejan hacer otros servidores aunque digan que es codigo libre(hay diferencia?).

si es el tipo 1, estoy dispuesto a colaborar. conozco python(sobre clases tambien conozco algo), algo de qt, y aprendo rapido sdl. tambien conozco C pero sin clases. como he dicho en el titulo supongo que habeis supuesto que soy usuario de linux(es así)
si hay algun buen tutorial de c++ que podais recomendar para principiantes/usuarios con experiencia con otros lenguajes de programacion intentare hacer codigo para el proyecto(si es tipo 1)
Creo que la persona correcta para que te responda esto es el programador "en jefe" de EasyRpg... x'D. DelaPipol, así que ya envié un mensajito por MP.

Pues, nada, yo no puedo responderte, pero sí te querría preguntar como va tu editor rpg, o sea, sus recursos, su código etc. Curiosidad.

Nada más, nos vemos, suertes.

- It's all right now.-
Buenas, Negativo:

Pues el proyecto no es un MMORPG, así que creo que los dos puntos no son aplicables, pero aun así desgloso los detalles:

Pues directamente te digo que el 2 no es aplicable a este proyecto, porque the mana world y planeshift son MMORPG y este proyecto no lo es (en principio). Por ahora no hay planteada ninguna posibilidad de sistema de juego online porque el primer objetivo es conseguir la compatibilidad con el sistema RPG Maker y RPG Maker es para juegos RPG de consola clásicos de estilo 16 bit. De todas formas son un poco decepcionantes y absurdas esas reglas en los proyectos que comentas, no las conocía. Supongo que esos proyectos si tienen registrado el nombre cualquiera puede crear un fork y cambiar el nombre (como firefox->iceweasel), aunque es un poco desalentador para colaborar como bien dices, en mi opinión, aunque por la licencia (GPL) no te puedan obligar a hacer eso.
Y el tipo 1, aunque no hay online planteado por la naturaleza del proyecto, en caso de en un futuro añadir posibilidades de jugar online a un sistema de crear juegos a medida no tendría sentido limitar cómo tiene que funcionar cada juego, lo lógico es que cada cual pudiera tomar sus propias decisiones a la hora de montar un servidor para un juego concreto.

Sobre la parte de C++ (que las novedades más importantes son las clases y las plantillas) te sugiero comenzar por este capítulo de este popular curso: http://c.conclase.net/curso/index.php?cap=028
De ahí estaría bien ver los de namespaces, clases y herencia pero muy por encima. Te diría que vieras algo de teoría de las plantillas por encima pero es un poco complejo y lo interesante es saber para qué sirven para luego ver la biblioteca STL, que es algo que no he visto en ese tutorial. C estándar no tiene algunos aspectos útiles como tipos/plantillas cómodas para trabajar con vectores, pilas, colas, listas y otros tipos de estructuras dinámicas, así que te recomiendo saber lo básico sobre la clase std::string y saber que existen otras muchas plantillas útiles para estructuras dinámicas como vectores y deques (std::vector, std::deque), listas (std::list), pilas (std::stack), colas (std::queue), árboles (std::set, std::map) entre otras, que evitarán tener que picar un montón de código porque para eso están las bibliotecas estándar. La referencia de STL (en inglés): http://www.sgi.com/tech/stl/
También a partir de todas estas palabras clave sugiero hacer búsquedas generales en el buscador según lo que necesites ampliar y no entiendas del manual de turno, hay infinidad de manuales y ejemplos, sin olvidar ver código ya hecho.

De SDL lo llevarás bien porque es C puro y duro, así que la biblioteca son funciones sin más. Si quieres un buen manual, http://softwarelibre.uca.es/tutorialSDL.html donde tienes en formato pdf y en formato wiki (donde pone el enlace de "proyecto").

No sé si habrás visto que EasyRPG tiene varias partes, el editor (en wxWidgets), el intérprete (en SDL) y además un proyecto de implementar la lectura del formato de ficheros binario de RPG Maker 2000, el cual está bastante documentado. En EasyRPG se piensa en la portabilidad, por eso se decidieron usar ese par de bibliotecas, las más portables que se pudieron encontrar y a la vez eficientes en rendimiento.

wxWidgets es un toolkit de ventanas y aunque no es tan popular como GTK+ o Qt es maduro, bien documentnado y de los más portables y nativos en cada plataforma. En linux usa GTK+ (no conozco que hayan hecho un porte a Qt pero teniendo un gtk engine para Qt tampoco es muy necesario), en Mac usa Carbon sin necesidad de X server y en Windows también es nativo. La biblioteca no es tan pesada como arrastrar GTK y Qt estáticos en entornos donde no estén de serie (por ejemplo Windows y OS X, aunque OSX sí trae wxWidgets de serie como en muchos linux) y los widgets al ser nativos hacen que los controles de las ventanas se dibujen más rápidamente, por eso se eligió pero sobre todo por la portabilidad nativa. Algunos ejemplos de uso en la vida real son por ejemplo VLC Media Player, Audacity, aMule, Xara Extreme, poEdit, FileZilla 3, Bittorrent original hasta la v3.x (wxPython) etc. Es C++ ordenado en puras clases y es muy parecido a las MFC de Windows que se solían usar en Visual C++ 6.0, aunque afortunadamente nunca tuve que usar porque dejé de usar Windows hace añosTongue. Aparte incluye una serie de clases (wxBase) con un montón de métodos/funciones para trabajar con tipos de datos portables, trabajar con ficheros y rutas estándar de cada sistema operativo, etc. sin cambiar una sola línea de código (salvo alguna excepción muy puntual).

La idea es poder leer por una parte juegos de RPG Maker 2000 (y 2003) de forma nativa sin modificarlos (como haría ScummVM con los juegos de aventuras gráficas) y otra crear un editor 100% compatible para importar los juegos, pero tratando con un nuevo formato de archivo extensible y pensando en ampliar características. El intérprete soportaría tanto juegos del sistema original (formato RPG Maker 2000) como el nuevo formato propio, aunque en el editor solo se importarían los del sistema original y se guardarían únicamente en el nuevo formato (guardar en el antiguo sería muy complicado y podría ser muy difícil compatibilizar un guardado hacia un formato cerrado con 100% de seguridad.

Si finalmente te interesa el proyecto aunque no tenga que ver con los MMORPG anteriores y quieres acceso de escritura al repositorio SVN dime tu nombre de usuario unix en sourceforge.net (si no tienes solo hay que crearse una cuenta) y te añado a la lista.
Lo siento, quiero ayudar pero no estoy de acuerdo con el largo y restrictivo codigo de conducta y de presion legal de sourceforge, al haber visto su agreement para hacerme una cuenta. ahora se que tendre que licenciarlo a lo gpl de otro modo que no sea en sourceforge el que haga yo.

Suerte y ánimo con el proyecto que este esfuerzo dara sus buenos frutos, si se encuentra otra manera de que pueda echar mano de el codigo de easyrpg avisadme por favor
Si no te gusta sourceforge se podría trabajar en gna.org, es cierto que recientemente en sf.net han cambiado el EULA y tampoco me ha hecho mucha gracia, pero todavía no había planteado (más que nada por falta de tiempo en el momento en que cambió el contrato, pero si no me revocaban la cuenta enseguida) mover de sitio el repositorio a GNA! o a BerliOS, por poner un par de ejemplos. Si quieres tirar de fork o proponer otro servidor para trabajar con un SCM o sencillamente migrar el svn, no lo dudes. Tengo contratado un servidor dedicado para trabajar a medida por si se quisiera instalar un server svn allí pero todavía tengo que preparar el sistema de backups. En cuanto lo tenga podría ser otro candidato más, pero seguiría quedándose corto para en el futuro publicar releases, es un 100 mbps simétrico solamente.

Lo que consideres, si hace falta cambiar el repositorio a otro lado incluida la web, no hay problema. Esta web comunitaria no se forjó junto con el proyecto por ejemplo, fue una contribución y ahora es de facto parte principal del proyecto, aunque la web en sf.net siguiese estando en inglés.

Gracias a ti por el interés, por aquí estamos todos encantados de llevar a cabo el proyecto.
gracias por la comprension mostrada por vuestra parte, me alegra ver eso, intentare a nivel de codigo lo que pueda(sin limitarme a eso pero es lo que se me da mejor ahora mismo) :-)

cuando pueda empiedo con c++, que ya se que por tener python asignacion automatica de memoria y demas c++ puede ser mas complejo pero bueno, ya tengo la practica y se lo básico de clases. wxwidget lo confundi con winapi, supongo que se usaran muchas menos referencias y codigo repetido que en winapi. sdl es lo que veo mas facil y corto de aprender

animo que entre tod@s podemos!
Estoy a la espera de que evaluen y validen el alta del proyecto en Gna, me gustan las condiciones sencillas que tienen, son coherentes y sin tapujos. El sistema de acceso a la web es seguro, es más, para poder operar con el SVN y demás servicios es necesario utilizar clave SSH (en sourceforge solo era opcional), si quieres échale un vistazo a Gna, tienen una filosofía muy GNU y tienen una estructura de asociación con sus propios estatutos.

En cuanto sepa si el proyecto lo aceptan o no, avisaré por aquí en cuanto antes.
Acaban de aceptar el proyecto en gna.org

Esta semana migraré el proyecto allí.

https://gna.org/projects/easyrpg/

Para escribir en svn hace falta una clave RSA para SSH, así no necesitas enviar contraseñas, es fácil de generar si miras la receta de cómo en la cookbook .

Para comunicarnos de forma fiable estaría bien usar PGP para mandarnos correos o incluso para jabber.

Si tienes cualquier duda acerca de todas estas tecnologías no dudes en consultar.

¡Saludos!
URLs de Referencia