Hace unos días instalé el Bennu Pack y tengo el problema de que cada vez que trato de ejecutar un programa con F6 me salta este error. ¿Alguien sabe a qué puede deberse? Me tiene bastante desesperado.
http://oi62.tinypic.com/2vvwah0.jpg
Gracias de antemano.
Holas, bienvenido! :)
Prueba a instalar Bennu en una ruta sin espacios, tipo:
c:\bennu
No entiendo ¿espacios? ¿Cuáles? ¿Los de pulsar la tecla space o que no esté dentro de varias carpetas? ¿A qué se debe ese error? ¿Por qué pasa?
Sino me equivoco, tienes instalado el Bennu pack en "c:\movidas\bennu pack", ¿verdad?
El problema sería el espacio entre "bennu" y "pack"
No lo entiendo. En el error pone Bennu a secas ¿no? No pone nada de pack. Yo lo instalé en la misma carpeta que el pack pero no le cambié el nombre ni nada.
Pues ni idea xD Era una suposición. A ver si otro saber ayudarte mejor.
Un saludo!
¿Nadie sabe nada? Estoy estancado en Bennu por eso, hasta me estoy planteando buscar otra herramienta porque no puedo ejecutar programas.
Ayuda, por favor.
Al parecer despues de instalar el bennu pack cambiaste el nombre de las carpetas o lo cambiaste de lugar...
Bájate el setup del 2.6 de aquí
Instala y desinstalar a ver
http://code.google.com/p/colombiandevelopers/downloads/list
¿No se pueden poner las carpetas en el lugar que uno quiera? ¿Tiene que ser forzosamente en C:\Bennu?
una vez que lo instalas, se registran paths en variables de sistema, para que puedas acceder a los ejecutables desde cualquier directorio, si lo cambias de carpeta no puedes acceder mas.
Lo he reinstalado en C:/ de nuevo y funciona, era eso. Yo pensaba que se podía cambiar la carpeta donde se instalaba y la había cambiado.
Ahora estoy teniendo mi batalla para recordar como iba esto, no logro sacar nada en pantalla, ni copiando el programa del manual de Osk. No sé qué estoy haciendo mal.
Import "mod_text";
Process Main()
Private
int mivar1;
End
Begin
mivar1=10;
while(mivar1<320)
delete_text(0);
mivar1=mivar1+2;
write(0,mivar1,100,1,"¡Hola mundo!");
frame;
end
end
Yo me he reenganchado hace poco y eso también lo sufrí, por lo visto el main() ya no se usa, quítalo y el proceso general empezará con el primer begin que tienes. Los import tampoco se si se pueden poner así, creo que me dieron algún problema y terminé poniendolos en un archivo aparte con extensión .imp
Alguien te lo podrá explicar mejor, pero puedes empezar con eso y ver si te funciona.
DESCARGATE LOS BASIC EXAMPLES
DE AQUI
https://code.google.com/p/colombiandevelopers/downloads/list
Yo es que desde que programaba en DIV2 hace ya más de 10 años no he vuelto a programar nada y no me acuerdo bien. Estoy empezando con cosas simples, como que muestre un texto en pantalla, pero no sale nada. ¿Con esto no debería salir un texto en una pantalla negra? ¿Qué estoy haciendo mal?
Program prueba;
import "mod_debug"
import "mod_draw"
import "mod_file"
import "mod_key"
import "mod_joy"
import "mod_grproc"
import "mod_map"
import "mod_math"
import "mod_rand"
import "mod_screen"
import "mod_scroll"
import "mod_sound"
import "mod_string"
import "mod_timers"
import "mod_text"
import "mod_blendop" // blendop
import "mod_video" // set_mode, set_fps
import "mod_wm" // window_status, set_icon, set_title
import "mod_proc" // s_kill, s_freeze, etcetc
import "mod_say" // debug
begin
set_fps(60,0);
set_mode(640,480,16);
full_screen=false;
write(0,320,240,4,"Prueba");
frame;
end
Los imports los he copiado del Total Devastation 2, que sé que tendrá todo lo que yo voy a necesitar. ¿Están mal así?
l1nk3rn3l, tengo todo el Bennu pack descargado de ahí, precisamente.
Por cierto, en la página oficial de Bennu GD no funciona el link al tutorial de Windgate. Lo he encontrado aquí. Lo estoy leyendo para repasar porque tenía muchas cosas olvidadas.
Podríais enlazarlo desde aquí. Me ha costado mucho encontrarlo. No sé si estará en otro sitio por ahí.
http://es.scribd.com/doc/143028809/Windgate-s-BennuGD-Tutorial#scribd
Aún no sale nada con mis programas, no sé qué estoy haciendo mal.
En el último código que has puesto te falta un bucle que mantenga el programa en ejecución, así está entrando y saliendo sin pararse.
prueba con:
begin
set_fps(60,0);
set_mode(640,480,16);
full_screen=false;
loop
write(0,320,240,4,"Prueba");
frame;
if(key(_esc))
exit();
end
end
end
Lo he puesto así porque si no escribiría el texto infinitas veces ¿no?
begin
set_fps(60,0);
set_mode(800,600,16,MODE_WINDOW);
write(0,320,240,4,"Prueba");
loop
frame;
end
end
Aún así, la pantalla da un parpadeo y desaparece. ¿A qué se debe esto?
Editado: Ahora sí, es que no estaba guardando los cambios. Pensaba que los cogía sin necesidad de guardar.
Mucho ha corrido desde que yo hacía juegos en 320 x 240 en mi ordenador antiguo. He observado que con esa resolución en los monitores modernos la ventana se ve minúscula. Puedo darle una resolución de, por ejemplo, 1280 x 960 y se ve bien pero en ese caso se verán los textos y los gráficos muy pequeños. ¿Hay que andar escalándolo todo manualmente o hay alguna forma de que todo se adapte a una resolución concreta? Recuerdo que antes, cuando yo y mis amigos hacíamos juegos con DIV2, si cambiábamos la resolución ya nada era igual, todos los cálculos variaban y el resultado era desastroso.
¿Hay alguna manera de hacer un juego de forma que el jugador pueda cambiar la resolución de entre varias en un menú y que se respeten todos los cálculos? ¿Con alguna operación metamática o algo? Si decido al final hacer un juego en serio no me gustaría que salga demasiado pequeño o grande en algunas pantallas sin que el jugador pueda cambiarlo. Me he encontrado con ese problema en muchos de los juegos de ejemplo que he ejecutado. Salen muy pequeños a veces y no hay posibilidad de variarlo.
Creo que voy a cambiar el título del hilo porque me parece que voy a tener muchas más preguntas sobre Bennu y no quiero abrir un tema por cada una, si os parece bien.
He encontrado esto, pero no sé bien cómo funciona.
http://wiki.bennugd.org/index.php?title=Scale_resolution
Tengo el programa así, pero sigue mostrando la ventana a 320 x 240. ¿Qué estoy haciendo mal?
begin
set_fps(60,0);
set_mode(320,240,32,MODE_WINDOW);
scale_resolution=10240768;
write(0,320,240,4,"Texto de prueba");
loop
frame;
end
end
Tienes que poner el scale_resolution antes que set mode.
Yo también estoy usando el scale_resolution y no me trastoca nada, solo tienes que usar (para posiciones y demás) las medidas originales.
Lo del texto tenías razón, faltaba un delete_text (antes del write) dentro del bucle para que no escriba encima.
Si, era eso, muchas gracias, ha funcionado correctamente.