tools
Thread Id: 11215
Thread Name: [Completo, estable y con GUI] pyFSF
#0
cosarara97 12296
Hola!
Traigo mi segunda herramienta! :awesome:

Que es pyFSF:
Bueno, es py de python, porque el programa está escrito en python
FSF es FreeSpaceFinder
Por lo que nos queda un pythonFreeSpaceFinder, que es un nombre demasiado largo, así que pyFSF está perfecto.


¿Por qué lo he hecho?
Mira, es que sinceramente, a mi, el FSF nunca me ha gustado. No se porque será, pero no me gusta. Y como no me gustaba, he decidido intentar crear un equivalente que si lo hiciera :D


Como usar la versión CLI (command-line):

python pyFSF.py --rom nombredelrom.gba --offset 1 --lenght 2donde nombredelrom.gba es el nombre del rom, 1 es el offset en el que empezar a buscar (en hex, pero sin 0x) y 2 el numero de bytes a buscar (en hex, también sin 0x)
ejemplo:
python pyFSF.py --rom Ruby.gba --offset 800000 --lenght 20Bo
python pyFSF.py -r Ruby.gba -o 800000 -l 20B
Como usar la versión GUI (Graphical-user-interface):

(I know, I know there's a typo)
Primero abrid un ROM en File -> Open
Luego:
En lenght va la longitud de bytes a buscar en decimal o hex (se elige en los botones que hay a la derecha), y en start offset va el offset en hex, no le pongáis el 0x al principio, fijaros que está escrito a la izquierda... Ah, si, y para buscar le dais al botón grande que pone Search, ok?

Para hacer:
- Crear una versión con funciones avanzadas
- Encontrar posibles bugs en las versiones actuales
- Icono
- Ejecutables windows

Descarga
http://code.google.com/p/python-free-space-finder/
Links viejos y rotos:
v1.1 versión CLI:
v1.2 versión CLI:
(Alpha) v1.0 versión GUI:
(Beta) v1.1 versión GUI:
(Estable) v1.1 versión GUI:
v1.99: http://wahackforo.com/t-Completo-estable-y-con-GUI-pyFSF?pid=94942#pid94942

Info. tecnica
Licencia: GPL v3
Lenguaje de programación: python
Libs necesarias: pyqt4
Autor: Yo (cosarara97)


Aclaración:
Este programa se puede usar en windows, solo hay que instalar python (y pyqt4 para la versión con gui)

Próximas versiones GUI:
v2: [porcentaje]99[/porcentaje]
Estable 1: [porcentaje]100[/porcentaje] ^ Es la beta 1, que no tenia bugs, pero con el texto seleccionable
Beta 1: [porcentaje]100[/porcentaje] ^ Sin bugs conocidos, completa
Alpha 1: [porcentaje]100[/porcentaje] ^ Sin bugs conocidos, incompleta

ATENCIÓN!!!!
La primera versión CLI (v1.0) tenia un bug gordo, porque el start offset tenia que ser multiplicado por 2 y el programa no lo hacia (en un byte hay dos caracteres, ejemplo: "FF"), por lo que daba resultados erróneos.
La versión sin el bug está en las descargas...
#1
RogellParadox~ 13353
Muchas gracias, tio.
Espero que no apres de crear estes programas simples, todavía essenciales.
#2
Sephiroth 13677
Bueno, yo nunca usé el FSF en general, más que nada uso el #DYNAMIC para que se encargue de ver si hay espacio libre en un offset.
Pero bueno, claro está, no voy a probarlo porque uso Windows pero si es un Free Space Finder para Linux esta bien.

Pero no entiendo algo, el offset debe estar permutado o los bytes separados? De todas maneras, ya vi el ejemplo con el offset 0x800000, asi que nada, por lo visto debe estar tal cual pero sin el 0x.

Un saludo.
#3
Kal!ser 17506
Felicidades, cosarara97. Otra herramienta más para Linux! Añadida al Índice de Herramientas.
#4
cosarara97 12296
Vuelvo a decirlo:
Esta herramienta es multiplataforma. Puede funcionar incluso dentro de una DS, solo necesita tener python instalado.

Así que si usáis windows también podéis usarla, solo tenéis que instalar python, porque no uso ningún modulo raro.

Para instalar python (python 2.7) hay que descargarlo de aquí:

http://python.org/download/releases/2.7.2/


_________________________________________________


La primera versión tenia un bug gordo, porque el start offset tenia que ser multiplicado por 2 y el programa no lo hacia (en un byte hay dos caracteres, ejemplo: "FF"), por lo que daba resultados erróneos.
Por suerte lo he visto mientras testeaba la alpha de la versión con GUI, y aquí traigo el bugfix (v1.1):


NOTA: Como se me pasó algo tan tonto?


EDIT: Recordad que la v1.1 también es beta, puede contener errores. Mi intención es que el programa, en sus 2 versiones (cli y gui) funcione perfectamente antes del lunes 24[hr]
Ya tenemos versión GUI alpha 1!!! (sin errores, incompleta)
Ahora tengo prisa, así que, directo al grano:
http://wahackforo.com/attachment.php?aid=1478


____________________________________________

Que trabajador que estoy, no? :awesome:

Bueno, he hecho la versión 1.2 de pyFSF CLI. Esta es la primera versión estable, lo que significa que teóricamente no tiene errores. La descarga está en el post principal.


_________________________________________________

ACTUALIZACIÓN 4/11/2011
A la beta 1 se le ha añadido la posibilidad de seleccionar el offset resultante y se ha convertido en estable :D
#5
cosarara97 12296
Perdón por el doble post, pero si no nadie se entera, y me parece suficientemente importante.

Bueno, pues que ya he hecho lo que queríais (nunca lo decís, pero yo lo se), ejecutables windows!
Si! Un practico y simple *.exe que todo usuario de windows debe saber usar.
El ejecutable es para la versión GUI v1.1, así que lo tenéis todo actualizado, sin contar lo que aún no ha salido de mi PC.

Y hay una especie de error:
No permite que el ROM esté en una carpeta el nombre de la cual tenga acentos ni caracteres raros, siendo la siguiente ruta incorrecta:
C:\asdf\àéï?çû\aaa\ROM.gba
Y la siguiente correcta:
C:\asdf\aeiou\aaa\ROM.gba
Tengo planeado corregirlo en la próxima versión, pero no creo que sea muy importante.

El resto de cosas va perfectamente...

Descargas:
http://www.mediafire.com/?0g4szega15ylx9y - zip
#6
Gender 14521
Grácias por la herramienta, con razón no podia
habrír mi juego por los acentos, y en fín me gusta mas FSF pero veamos
probare con tu herramienta aver que tal.
#7
cosarara97 12296
Bueno, he estado limpiando el codigo, corrigiendo errores ortograficos, etc. y he creado una pagina en google code para el proyecto. Es esta:
http://code.google.com/p/python-free-space-finder/
La versión más reciente siempre estará en el repositorio git, al que podeis acceder con este comando (desde linux):
git clone https://code.google.com/p/python-free-space-finder/

O con este programa (desde windows, no probado)
http://downloadsvn.codeplex.com/
Usando esta url:
https://code.google.com/p/python-free-space-finder/
Y poniendo "GIT" en la pestaña "type"

Seguiré sacando versiones normales, pero con poca frequencia, porque crear ejecutables para windows es un rollo, y en linux es muy facil usar git xD (tranquilos, cuando haya cambios importantes que afecten a los usuarios liberaré versiones)

La versión avanzada (la que llevará infinitas funciones no aptas para novatos) aún la estoy empezando a crear, pero podeis encontrar lo que llevo hecho en "git/branch/advanced version".

Bye!
#8
Cheve_X 15014
Bueno, muchas gracias por seguir mejorando la herramienta cada vez más...

Antes quizá no lo hacía, pero se agradece mucho que hagas herramientas compatibles con Linux...

Ahora lo aprecio más porque en mi portatil Windows dejó de funcionar... Pero Linux sigue en Pié... (Y wine no me Funciona)

Bueno, esperaré más novedades sobre la herramienta. Me has dejado "picando el bichito de la curiosidad" con lo de "que llevará infinitas funciones no aptas para novatos" :awesome:

Salu2! ^^
#9
cosarara97 12296
Bueno, ya he empezado a agregar funciones a la versión avanzada (Se encuentra en fase prealpha inestable), de momento llevo estas:
- Margen
Algo que yo siempre hago manualmente, que es dejar unos cuantos bytes libres entre lo que hay antes del espacio libre y donde empiezo a escribir. Ejemplo:


- Next - Desgraciadamente aún no aplica el margen. Lo explicaré con un mini-ejempo:
Queremos buscar x bytes libres a partir de y
Pulsamos Search
Nos los encuentra en z.
(Next se activa)
Pulsamos next.
Nos busca x bytes a partir de y+x

Nos sirve si queremos insertar 5 sprites del mismo tamaño y queremos buscar todos los offsets antes de empezar a insertar.

- Conversor dec <-> hex - Si queremos convertir de dec a hex pondremos un numero decimal, si queremos convertir de hex a dec pondremos un numero hex con 0x al principio.
Sí, cierra ya esa horrible calculadora de winbugs :D Si tienes la de gnome (linux) usa esa, que es super-pro xD

Repuntear offsets - Bueno, pues eso xD, de momento hay 3 casillas, hay que poner 1 byte en cada una, posteriormente lo sustituiré por una sola casilla.


Captura:



Lo podéis descargar del repositorio git.


Por cierto, para seguir con la herramienta (y las próximas que haga) me gustaria tener ayudantes :D
Necesito:
- Alguien que haga iconos (presentad un posible icono para el programa que me guste y tendréis el puesto)
- Betatester(s)

- Alguien que me dé ideas (Hay que ser alguien simpático :D)
- Alguien que me corrija las faltas de ortografía (en inglés) xD
#10
Stupidest Kiwi Ever 15154
Tema reabierto.
#11
cosarara97 12296
Hola! @RogellParadox me pidió mis herramientas para ponerlas en su pack, así que fui a buscar la versión más nueva que había en el repositorio git. Lo que pasa es que me encontré que tenía la versión avanzada a medio hacer, así que decidí acabarla, mejorarla, y convertirla en la segunda versión de pyFSF.
Y eso os traigo, pyFSF v1.99 :) ¿Por qué v1.99 y no v2? Básicamente porque solo ha sido probada por mi, y puede que haya algún retoque o bugfix antes de la v2.0
Esta versión es la que viene incluida en el HackTools 4.0, así que si ya habéis descargado ese pack, no hace falta volver a descargarla ahora.
Ok, basta de tanta charla, es así:


ERRORES: Dice repuntear cuando sería permutar... [EDIT: Arreglado en la ultima versión del git]

Link de descarga:
http://dl.dropbox.com/u/57504822/tools/pyFSF-win32.zip
En el zip vienen tanto los ejecutables para windows como el código fuente en python (en la carpeta src).
#12
Cheve_X 15014
¡Nueva Versión! ¡Genial!

Antes quizás no apreciaba tanto el hecho de que hagas herramientas para Linux... Pero ahora si xD

¿Why? Porque usé Linux, y es desesperantemente difícil instalar Wine si no sabes nada del SO, así que si las herramientas son compatibles con Linux no necesitas usar nada raro, solo lo abres y ya.


Muchas gracias y cuando tenga tiempo me fijo si encuentro algún error xD

Salu2!
#13
Kal!ser 17506
Bueno, ahora que estoy planteando pasarme a linux, creo que debería ir viendo qué herramientas puedo usar, y ya me voy alegrando de ver unas pocas, y la mayoría tuyas ^^. Buenas mejoras, sigue sacando tools para linux, que a muchos les hará falta =P