PDA

Ver la versión completa : ayuda con fenix



gpfan
21/02/2005, 19:12
hola me estoy iniciando en fenix y de verdad q soy una ameba en el tema
pero ya voy aprendiendo algo ,y esta claro k nadie nace sabiendo :D
bueno al grano,tengo un problemilla no puedo probar los juegos en firebird , por q me da unjh error:libreria c:/scrollfenix/coche.fpg no encontrada.
en el ejemplo de un scroll k me baje y asi siempre nunca ejecuta nada
y claro eso fastidia xd
tampoco se k son las paletas de colores
tampoco me iria mal k me pusieran un link o algo para aprender el idioma de los codigos fenix. con un poco de ayuda y esfuerzo por mi parte pronto veremos un juego made in gpfan gracias xd :brindis:

gpfan
21/02/2005, 19:28
tambien creo k me servira mucho como base los ejemplos con txt k puso oscar braindead por k le doy al post y no sale el .zip solo salen los comentarios .asi k si alguien los puede subir se lo agradeceria mucho gracias

Jhonnystorm
21/02/2005, 19:58
a ver, lo de el programa scroll tienes que poner el archivo coche.fpg en la carpeta del scrollfenix, sin ese archivo el programa no funcionara.
en cuanto a la paleta de colores es sencillo, es un conjunto de colores necesarios para representar lo graficos y en fenix puede ser de 8 o 16 bits, a mas bits mayor calidad y cantidad de colores pero menor rendimiento del juego. Ah lista de comandos la tienes en el firebird/ayuda/funciones del lenguaje, y paciencia que nadie nace enseñado, yo comence a programar con el spectrum (1984) y hasta ahora lo habia dejado, pero ya tengo un jueguecillo empezado y si dios quiere en una semana o asi tendre un beta, ale, a ver si vemos pronto un trabajo tuyo que se vea el espiritu gepero.
:brindis:

gpfan
21/02/2005, 20:43
di k si ¡¡¡¡ :brindis:
y animo con el juego

LTK666
21/02/2005, 20:52
Aqui http://www.gp32spain.com/foros/showthread.php?t=17380 preguntabas por lo mismo (creo recordar) evita duplicar hilos por favr.

un saludo

gpfan
21/02/2005, 22:42
gracias ya lo e arreglao ya funcionan los ejemplos. no pongo el foro de gp32x por k no entiendo ni papa,pero gracias de todos modos ya estoy preparando los sprites y el fondohaber si mañana bajo el screenshoot,ya de paso recomendadme alguno. gracias
con lo de los ejemplos se ma keao todo mucho mas claro
voy a decir de k mas omenos va a ir el juego,
como es una prueba , va a ser sin ninguna imaginacion importante.
el juego va de k guias a una rata con una ametralladora :ametra: . lo k no se ve por ningun ejemplo es lo de poner un jefe al final de la pantalla ¿es esto posible?
por k molaria tela con jefe de final de nivel :canon2: :arriba:
tambien me gustaria saber ,para cuando este hecho,como lo subo a la web para descargar en la zona de juegos

gracias :abeber:

chipan
21/02/2005, 23:03
no hay diferencia entre un enemigo normal y un jefe final, lo unico que debes de hacer es pensar lo que quieres que haga y programarlo... Mira los tutoriales que hay por el foro, en especial mi minitutorial sobre estados, eso ayuda a hacer enemigos complejos.

LTK666
21/02/2005, 23:13
La diferencia ha de radicar en el numero de disparos necesarios para derrocarle, o el lugar optimo de daño. no sabria traducirlo a lenguaje Fenix

gpfan
22/02/2005, 10:11
ya tengo el jefe final es un jefe de metal slug 3 el cdangrejo ese raro .necesito el ejemplo del jefe por k no lo llego a dominar del todo ,ah otra cosa ,el jefe puede estar animado no ? haber si lo consigo terminar y veras k guapo va a kedar .lo de la paleta no lo entiendo por k kiero hacerlo a 8 bits, y solo me deja a 16 por k a 8 tengo k cargar la paleta de 8 y no se ,ni donde esta,ni si la tengo,si la tengo k bajar,necesito un pokito de mucha ayuda para arrancar en esto d el fenix ,por k menos mal k todavia kedamos fieles a la gp k si no.con esto de psp y ds la gp mas de uno la va a dejar tira. y menosmal k yo no sere uno de esos.ya estoy pensando en una blu+.
bueno al tema tambien hay algo en el firebird k no entiendo y es eso del escritorio,por k dice k no hay escritorio cargado,bueno pero eso no me da problemas.tambien kiero felizitar a nazca por el tuto ke bien k se la currao y por el nazc a dreams k es la bomba,nazca no lo dejes ,ke eres uno de los grandes :brindis: venga tu sigue asi k estoy deseando probar tu rpg :arriba:
y chipan haber si puedes poner un link o algo pa el tutorial

Jhonnystorm
22/02/2005, 14:10
gpfun, lo que te pasa con la paleta de colores es que el cagrejo que has "cogido", seguramente esta en una profundidad de 16 bits, concretando, solo puedes tener cargada una paleta de colores, u 8 o 16 bits, cuando cargas una imagen automaticamente se carga la paleta de colores necesaria para dicha imagen, si cargas otro grafico con otra paleta lo que sucede es que los colores de los otros graficos pasan a ser los mas parecidos dentro de la ultima paleta cargada, no se si me explico..... :loco:, si el primer grafico estaba a 8 bits y cargas otro a 16 bits, automaticamente se pasan todos a 16 bits.....
vamos que tienes que utilizar la misma paleta para todos los graficos que uses, para ello necesitas un programa, yo uso el photo paint pero hay muchos para eso :teacher:

Jhonnystorm
22/02/2005, 14:17
ah, lo del escritorio de firebird es simplemente para configurar tu entorno de trabajo (carga ventanas de aplicaciones, herramientas, etc), no influye para nada en la programacion.

gpfan
22/02/2005, 20:19
gracias jonnistorm ,tengo otro problema con el juego al intentar ejecutarlo me da error, es este: error in file c:\archivos de programa\msn gaming zone\gp32\juego\ratz.prg at line 3: "j" expected ("GLOBAL")
sabeis k puede ser?

chipan
22/02/2005, 20:23
Principalmente que de momento no sabes programar en fenix, pero animo, que a mi me salían miles de errores al principio hasta que me fuí aprendiendo la sintaxis.

gpfan
22/02/2005, 20:36
muchas gracias por el animo chipan :chupete: pero necesito la solucion y ademas ya k lo dices no se ni papa.pero lo hago todo a base de ejemplos
pero para uno o dos meses me desentendre con el fenix ,pero con practica y ayuda al fin lo conseguire.
por k eso es lo k dicen los matematicos :escribiendo se aprende mas k estudiando
tambien necesito un link con ejemplos para descargar


digo yo.......... :abeber:

Jhonnystorm
22/02/2005, 21:35
lo del error de "j" is expected es posiblemente por que no has declarado bien la variable global o simplemente por que no has puesto ";" despues de declarala, ejemplo:

program popetin;
global
j=1234;
begin
end

de todas maneras con estos errores lo mejor es que envies el texto para que lo podamos ver ya que con un simple signo mal puesto te dara error. :rolleyes:

chipan
22/02/2005, 22:49
no te lo tomes a mal gpfan ;)
Es que me puse un poco melancolico al ver ese error, eso me hace recordar mis primeros juegos en lenguaje DIV (el padre del fenix); pero bueno, como bien te han dicho, es que no has declarado la variable, o que estas intentando acceder a ella desde un proceso que no tiene acceso a ella y por eso te pide que la declares como global.

gpfan
23/02/2005, 18:43
trankilo, chipan no pasa nada aki pongo el texto para ver si lo soluciono

Jhonnystorm
23/02/2005, 19:47
haber, te escribo los problemas que veo:

program pantallas; (tienes que poner le punto y coma)
graph=100; (tienes que poner el punto y coma)

en cuanto al proceso movil() yo lo haria asi:

loop
If (key(_down) AND (y<460)) y=y+3; End
If (key(_up) AND (y>20)) y=y-3; End
If (key(_right) AND (x<620)) x=x+3; End
If (key(_left) AND (x>20)) x=x-3; End
Frame;
End

este bucle realiza el movimiento en las cuatro direcciones sin salirse de la pantalla de 640x480, es simple pero funcional.
no se que pone el resto de programa pero imagino que sera para mover la pantalla, para eso existe una funcion que es start_scroll...
start_scroll(0, 0, 0, 0, 0, 0);
scroll.camera=id;
ctype=c_scroll;
con estas ordenes haces que la pantalla siga al personaje que pongas antes (el start_scroll necesita varias cosas, leelo en el tutorial del firebird), con esto el proceso quedaria asi:

process movil()
begin
x=tal; y=tal; graph=tal;
start_scroll(0, 0, 0, 0, 0, 0);
scroll.camera=id;
ctype=c_scroll
loop
If (key(_down) AND (y<460)) y=y+3; End
If (key(_up) AND (y>20)) y=y-3; End
If (key(_right) AND (x<620)) x=x+3; End
If (key(_left) AND (x>20)) x=x-3; End
Frame;
End
end

bueno de momento tienes para entretenerte, ale y sigue que ya te saldra algo
:brindis:

gpfan
23/02/2005, 21:34
muchas gracias, jonnystorm, voy haber si reptifico el error y ya te cuento :babea:

chipan
23/02/2005, 21:42
gpfan, te recomiendo que utilices el flamebird 2 en lugar del firebird, es infinitamente mejor.

gpfan
23/02/2005, 22:22
oye esto ke voy a decir no viene al tema,pero sabeis como funciona el bor
por k a mi no me funciona:meto el bor beta 6 en gpmm ,la carpeta bordata en gpmm,el mod de los simpsom en la carpeta bordata y tambien el mod del ghouls´goblin enciendo la gp ejecuto el bor y me sale esto:
beast of rage
gp32 port by squidge @ gp32x.com
__________________________________________________ _______________
updattes by the juggler @ gp32x.com
__________________________________________________ _______________


select pack file:
(b skips, a selects)

beats of rage


loading...
gp\gpmm\bordata\bor.pak

*** BAD FREE (double\addr\underflow) ->

teneis idea de k puede ser?

gpfan
23/02/2005, 22:27
chipan esk utilizo el firebird por k es como lo pone nazca en su tutorial, pero de todas formas me podrias decir las ventajas de flamebird?
gracias :loco:

joanvr
23/02/2005, 22:55
Weno... ahora he leido todo el post y me gustaria comentar algunas cosas que he leido.

- Con 16 bits de profundidad de color no se puede cargar paleta, ya que los colores no ocupan una posicion dentro de ninguna paleta, si no que contienen los valores de color RGB para cada punto.

- Si intentas cargar un mapa a 16 bits con modo 8 bits, simplemente dara error. Vaya... o eso me parece recordar...

- Las pruebas que he hecho con la funcion "start_scroll" de fenix, en la gp32 parpadeaban :S A lo mejor hacia algo mal, pero yo prefiero usar mi propio metodo de scroll al scroll de fenix.

- Para copiar codigo fuente, no es necesario que hagas una captura de pantalla, copia el texto y pegalo aqui entre las etiquetas [ CODE ] [ /CODE ]

- A mi personalmente me gusta más el firebird, yo no le veo tanta "infinidad" de mejoras al flamebird... A lo mejor es que empece usando el firebird y le pille cariño... xD Quien sabe :P

- Weno, gpfan, un consejo que te daria es que antes de intentar hacer cualquier juego realices ejemplos y cosas sencillas. Ya he visto otras tres personas que siguieron el mismo camino que tu y se rajaron antes de conseguir nada... Fenix es fácil, si, pero tambien requiere aprender su sintáxis. Y si empiezas con una idea en mente y vas metiendo codigo copiado y pegado directamente de otros ejemplos no vas a conseguir nada.


1 saludo,

joanvr

chipan
23/02/2005, 23:31
EL flamebird, tiene mas opciones, no da el problema de "Archivo fpg no encontrado" tiene un completo manual de ayuda en español y ayuda sensible al contexto (F1 sobre una funcion abre la página de ayuda sobre esa función), deja escoger diferentes versiones del fenix para compilar, estan implementadas las nuevas funciones, con solo poner una o dos letras aparece un listado de las variables, procesos y funciones que corresponden (es decir, pones "lo" y te lista "load_fpg", "load_wav"...) a parte de alguna que otra mejora interna...
No en vano, el flamebird es la 2ª version del firebird, pero han tenido que cambiar el nombre por problemas de copyright. No ¡obstante el firebird esta bastante bien...

joanvr
23/02/2005, 23:39
tienes razon chipian en todo lo que has dicho, pero algunas de estas funciones yo no las uso y las otras me saturan. Tanta info en pantalla me dava dolor de cabeza xDD Y quedaba muy poco espacio para el codigo en si :S

Supongo que si empiezas directamente con el Flamebird luego el Firebird se ve más malo... no se... para gustos los colores...

chipan
24/02/2005, 00:59
Yo empecé a programar en DIV (Que el fenix es una copia ligeramente modificada para bien de lenguaje div) con DIV 1 (original, mil duretes); luego con DIV 2 (original también, otros mil duretes); luego Dark Basic (Original tambien, otros mil duretes, y encima es una put* mierd*); luego con fenix+firebird ("de grati") y finalmente con fenix+flamebird ("Tambié de grati"). Con los que mejor me he encontrado hasta ahora son con DIV 2 y con el flamebird, al firebird le tengo un poco de tirria por el maldito error de "No se encuentra FPG" que aparece porque sí. El editor grafico de Div2 era una maravilla para hacer sprites... y no digamos su gestor de fpgs, era de 8 bits, pero iba perfecto, solo superado por las ultimas versiones del fpg edit, que evitan el rollo de usar el map.exe y compañía.

gpfan
24/02/2005, 21:11
gracias por la info pero,tengo hecho un follon k me estoy liando, asi k lo voy a hacer todo de nuevo,pero antes de empezar ya t5engo otro problema ke no se lo k tengo k poner primero:si los fpg,el scroll,el fondo en fin los problemas del principio de programar (me pasaba lo mismo al empezar co game maker) y eso con lo sencillo k es

chipan
24/02/2005, 21:39
Minitutorial de como empezar un programa by yomismo (chipan)
1º.- Poner la cabecera del programa

Program garruchifo; //buscaos otro nombre menos estupido


2º.- Declaracion de variables globales, locales y privadas (estas últimas sólo en el caso de que se vayan a utilizar en el bucle de inicialización; algo muy poco común)

global
int puntos;
int vector[5];
byte numfase;
byte fichero1;
byte fichero2;
local
byte estado;
int contador1;


3º.- Begin, modo gráfico y cargar los ficheros de recursos necesarios

Begin
set_mode(320,240,8);
fichero1=load_fpg("fpg\nave.fpg");
fichero2=load_fpg("fpg\enemigos.fpg");

4º.- Comenzar con lo que es el juego, como las llamadas a procesos y el scroll

Start_Scroll..........
nave(100,150);
loop
if(rand(0,100)<30) enemigos(......
frame;
end
end

5º.- Hacer los procesos en sí; "la míga del programa"

etc, etc...



Espero haber sido de ayuda.

gpfan
24/02/2005, 22:08
de verdad k te doy las gracias chipan ,por k me estas ayudando infinitamente :arriba:

chipan
24/02/2005, 23:05
Yo comparto mis conocimientos, ahora les toca a otros compartir la riqueza XDXDXDXD, una cosa, lo de igualar un variable a la función de carga de un fichero sirve para saber que identificacion tiene el fichero cargado en memoria.
A ver, si hacemos dos procesos iguales pero que quieres que tengan garficos diferentes puedes hacer lo siguiente:

program...
global
byte fichero1;
byte fichero2;
...
...
...
...
begin
fichero1=load_fpg("bichorojo.fpg");
fichero2=load_fpg("bichoazul.fpg");
...
...
...
...
end

process bicho(file); //file es la variable local que usa el sistema para determinar el fichero de graficos que utiliza el proceso
begin
...
...
...
end

entonces para hacer 2 enemigos que se comporten igual pero con distinto aspecto los llamas de la siiguiente manera;

bicho(fichero1); //y te sale un bicho rojo
bicho(fichero2); //y te sale un bicho azul

venga, a ver te curras un juego chulo.

gpfan
24/02/2005, 23:31
gracias tio, yo tambien espero lo mismo,estas hecho un makina en el fenix

chipan
25/02/2005, 14:48
Una máquina no, ni mucho menos, pero los años que llevo me han hecho tenerlo bastante dominado.

gpfan
25/02/2005, 19:27
lo k usted diga, señor profesor :brindis:
bueno ponme otro de tus minitutoriales k me bienen de perlas