BASIC Tenliners Contest 2016 (NOMAM)
Re: BASIC Tenliners Contest 2016 (NOMAM)
Alguien habra hecho el ahorcado en 10 lineas ?
Re: BASIC Tenliners Contest 2016 (NOMAM)
Dele! Qué espera?
Re: BASIC Tenliners Contest 2016 (NOMAM)
Estuve con algo de tiempo libre pero no conectado en el PC, y vi una respuesta en Tapatalk (después te respondo, AsCrNet), y de puro aburrido, me puse a leer mi propio código del puzzle, y vi un error, pero no lo pude probar para confirmar, e iba a preguntar para que me lo confirmaran, pero tampoco pude.
Ya con PC en mano, lo confirmé personalmente, y fue un problema que introduje cuando cambié el RUN al final para volver a jugar, por un loop WHILE con el fin de no perder las dimensiones seleccionadas. La solución era simple, y consistía sacar una línea de un IF (hacer un enroque de instrucciones que estaban en una misma línea), pero no era una solución elegante, pues se rompía la lógica de la programación estructurada.
La forma que correspondía era reiniciar una variable en el loop principal, pero no me quedaba espacio para esa instrucción. Así que comencé a depuarar el programa y a reemplazar constantes que se repiten por variables inicializadas una sola vez (aunque sólo una variable era candidata). También me di cuenta que podía simplificar una fórmula y ganar un par de bytes más.
Fue tanto lo que ahorré, que pude reestructurar el programa y dejar todo como corresponde, e incluso agregar una condición extra para prevenir otro posible problema (condición de borde que en emulador no pude provocar). Las DATA quedaron todas juntas, excepto por una.
Ahora el listado se ve así:
Compactado, queda así:
Va otra vez el preview adjunto. Espero que sea la última versión....
Ya con PC en mano, lo confirmé personalmente, y fue un problema que introduje cuando cambié el RUN al final para volver a jugar, por un loop WHILE con el fin de no perder las dimensiones seleccionadas. La solución era simple, y consistía sacar una línea de un IF (hacer un enroque de instrucciones que estaban en una misma línea), pero no era una solución elegante, pues se rompía la lógica de la programación estructurada.
La forma que correspondía era reiniciar una variable en el loop principal, pero no me quedaba espacio para esa instrucción. Así que comencé a depuarar el programa y a reemplazar constantes que se repiten por variables inicializadas una sola vez (aunque sólo una variable era candidata). También me di cuenta que podía simplificar una fórmula y ganar un par de bytes más.
Fue tanto lo que ahorré, que pude reestructurar el programa y dejar todo como corresponde, e incluso agregar una condición extra para prevenir otro posible problema (condición de borde que en emulador no pude provocar). Las DATA quedaron todas juntas, excepto por una.
Ahora el listado se ve así:
Código: Seleccionar todo
. M*N PUZZLE
. (c) 2016 Victor Parada
. http://www.vitoco.cl/atari/
graphics 18
? #6;" m\AAn \F0\F5\FA\FA\EC\E5"
r=120
dim a$(r),b$(r),d(3),j(15)
a$="."
a$(r)=a$
m=4
n=m
s=dpeek(88)+40
for i=0 to 3
read d,j
d(i)=d
j(j)=d
next i
while 1
data 20,14,1,11,-1,7,-20
repeat
move s, s+1, 199
p = s + 70 - 20*(n div 2) - m div 2
for i=0 to n*m-2
x=p+i+(i div m)*(20-m)
poke x, (33-42*(i>25)+i*65) mod 256
next i
pause 9
repeat
j=15-stick(0)
k=1-strig(0)
until j+k
if k=0
m=m+(j&8>0)*(m<6)-(j&4>0)*(m>2)
n=n+(j&2>0)*(n<6)-(j&1>0)*(n>2)
endif
until k
move s,adr(a$),r
c=n*m*8
x=x+1
z=x+1
while c
repeat
d=rand(4)
y=x+d(d)
q=peek(y)
data 13
until q and y<>z
sound 0,20+d*3,8,8
poke y,0
poke x,q
z=x
x=y
c=c-1
wend
sound
b$(2)=a$
repeat
repeat
j=stick(0)
y=x+j(j)
q=peek(y)
until q
poke 77,0
sound 0,20+j,8,8
poke y,0
poke x,q
pause 8
sound
c=c+1
x=y
position 9+(c<10),9
? #6;c
while stick(0)<15
wend
move s,adr(b$),r
until b$=a$
position 8,11
? #6; "done\01"
for i=0 to 9
sound 0,60-5*i,12,8
pause 4
next i
sound
while strig(0)
wend
wend
Va otra vez el preview adjunto. Espero que sea la última versión....
- Adjuntos
-
- MNPUZZLE-PREVIEW.zip
- (22.66 KiB) Descargado 118 veces
Re: BASIC Tenliners Contest 2016 (NOMAM)
Tal vez dependa de la categoría. La EXTREM-256 te da el doble de espacio que la PUR-120. Yo traté de dejar "Where's my cheese?" en 10 líneas PUR-120, pero no logré bajar de 12 líneas, así que lo cambié de categoría...AsCrNet escribió:ummm con joystick, mi idea que aparezca la pieza previa como el tetris, pero con un selector donde te puedas mover en el tablero para poner la pieza en cualquier lugar vacío. Ya con esto quedo fuera de concurso por pasar más de 10 líneas. Dejare la idea por si alguna vez me dan ganas de hacerla en tbxl con rutinas en asm o en action!.vitoco escribió:Yo creo que puede caber, pero no se me ocurre cómo sería la jugabilidad. ¿Con teclado? ¿Coordenadas? ¿Drag&Drop? Si fuera esto último, posiblemente requieraas más código... Mmmmm...
Ya me estoy imaginando cómo se viene el juego. ¿Has avanzado en la prueba de concepto?AsCrNet escribió:Quedo muy bueno tu juego de puzzle, me dieron ánimos de hacer la prueba de concepto del otro juego que tenía en mente llamado equilibrio es algo mucho más simple pero no lo he visto en la competencia. La idea es seguir el camino moviéndose hacia arriba y abajo, el avance es automático según el nivel. Una fotito de la prueba.
Re: BASIC Tenliners Contest 2016 (NOMAM)
Si se hizo yarenix escribió:Alguien habra hecho el ahorcado en 10 lineas ?
Demás, pero por el momento lo descarto para este concurso por el poco tiempo que tengo para darle a la ideavitoco escribió:Tal vez dependa de la categoría. La EXTREM-256 te da el doble de espacio que la PUR-120. Yo traté de dejar "Where's my cheese?" en 10 líneas PUR-120, pero no logré bajar de 12 líneas, así que lo cambié de categoría...
Si el sábado avance algo más mejor en la creación de la línea que hay que caminar.vitoco escribió:Ya me estoy imaginando cómo se viene el juego. ¿Has avanzado en la prueba de concepto?
Saludos
- Adjuntos
-
- equi.png (1.24 KiB) Visto 4713 veces
Re: BASIC Tenliners Contest 2016 (NOMAM)
¿En C=64?AsCrNet escribió:Si se hizo yarenix escribió:Alguien habra hecho el ahorcado en 10 lineas ?
¡Cónchale! Se viene güena la cosa...AsCrNet escribió:Si el sábado avance algo más mejor en la creación de la línea que hay que caminar.vitoco escribió:Ya me estoy imaginando cómo se viene el juego. ¿Has avanzado en la prueba de concepto?
Por mi lado, preparé una página con mis jueguitos. Ya hay un par que tienen la descripción completa de cómo fueron hechos y se puede bajar y jugar la respectiva versión final: BASIC 10-liners. Eso sí que están en mi chapurreado inglés. También hay videos con demos de los juegos. Se reciben comentarios para mejorar esas páginas y seguir con las otras.
Y no lo fue... El juego del puzzle es uno de los que puse en la página. El listado final es:vitoco escribió:Va otra vez el preview adjunto. Espero que sea la última versión....
Re: BASIC Tenliners Contest 2016 (NOMAM)
a no en atarivitoco escribió:¿En C=64?
Si, ya esta tomando forma de apoco Para vitoco por documentar sus juegos los revise a la rápida y no veo problemas.vitoco escribió:¡Cónchale! Se viene güena la cosa...
Qué bonito el listado de tu puzzle espero llegar a ese nivel jajajajajaaja
Saludos
Re: BASIC Tenliners Contest 2016 (NOMAM)
Ya renix, tienes el camino abierto para el ahorcadoAsCrNet escribió:a no en atarivitoco escribió:¿En C=64?
¿En qué se basa la dificultad? Es decir, imagino que hay que hacer el recorrido perfecto, ¿pero es en pantalla estática (una pantalla por nivel) y contra el tiempo o la pantalla se va deslizando y no hay que salirse de ella? ¿O algo totalmente distinto?AsCrNet escribió:Si, ya esta tomando forma de apoco
Veo que también hay equilibrio en el idioma... dice: SCORE y NIVEL en la misma línea de la pantalla
Gracias por el apoyo. Curiosamente, no había ni alcanzado a enviar el juego del puzzle al concurso, pero el organizador vio la página y lo incluyó en su lista de participantes.AsCrNet escribió: Para vitoco por documentar sus juegos los revise a la rápida y no veo problemas.
¿A cuál de los listados te refieres? ¿Al compacto con abreviaturas o al detallado en mi página?AsCrNet escribió: Qué bonito el listado de tu puzzle espero llegar a ese nivel jajajajajaaja
Respecto del formato compacto, te comento que el juego Fleas! (ex-AlphaNum) lo escribí directamente en ese formato, para ir viendo si realmente se podía hacer algo así de flexible en TurboBASIC. Escribía en el editor tipo notepad, copiaba y pegaba directo en el emulador.
Spoiler: MOSTRAR
Acabo de cachar que los polacos de AtariOnline publicaron un review de los juegos: parte 1 y parte 2 (traducidos 1 y 2).
Re: BASIC Tenliners Contest 2016 (NOMAM)
Si es una pantalla estática, lo primero que se hace es dibujar el camino a recorrer al azar en la pantalla después tienes que recorrer el camino moviéndote solo arriba y abajo, ya que avanzara automáticamente hacia adelante, cada nivel se restara la pausa que tienes para moverte hasta hacer que pierdas si o si jajaajajajaavitoco escribió:¿En qué se basa la dificultad? Es decir, imagino que hay que hacer el recorrido perfecto, ¿pero es en pantalla estática (una pantalla por nivel) y contra el tiempo o la pantalla se va deslizando y no hay que salirse de ella? ¿O algo totalmente distinto?
Tienes 3 vidas, y por cada paso en el camino te dará 5 puntos.
Te están vigilando así que cuidadito con lo que haga en el internet jaajajajajajvitoco escribió:Gracias por el apoyo. Curiosamente, no había ni alcanzado a enviar el juego del puzzle al concurso, pero el organizador vio la página y lo incluyó en su lista de participantes.
Me refería al del puzzle, yo estoy haciendo el mío como hiciste el Fleas jijijijij a puro notepad++vitoco escribió:¿A cuál de los listados te refieres? ¿Al compacto con abreviaturas o al detallado en mi página?
Aquí te dejo un poco del código que estoy haciendo
Spoiler: MOSTRAR
Re: BASIC Tenliners Contest 2016 (NOMAM)
Pegué tu código en Altirra y traté de jugar... 'Tas la custión difícil. No creo haber avanzado más de 6 o 7 posiciones. No sé si sea porque con joystick es otra cosa o simplemente soy ñurdo con la sincronización de eventos.
Algo que me llamó la atención fue que igual pasé de nivel... ¿o es que se te confundieron algunas variables?
Sí te hago algunas recomendaciones:
- Cambia el "underscore" por el "menos", ya que el "asterisco" se centra en este último.
- Si los niveles van aumentando en velocidad, deja que los primeros 5 pasos sean siempre en línea recta para tomarle el pulso. Tal vez como grado de dificultad puedas hacer eso más corto o más largo.
- Si es posible, vuelve a la rayita cuando el asterisco dé el siguiente paso.
Respecto del listado, lo procesé con el parser TBXL y generé el siguiente código compactado:
Puedes ver que llevas 5 líneas y unos pocos bytes más (suponiendo continuidad). El hecho que el PROC haya quedado aparte al final es porque a la larga el EXEC funciona como un GOSUB, y el nombre TT es una variable que toma el valor de la línea donde se define el PROC.
Y con todo el resto de espacio que te queda, ¡hasta en colores!
Algo que me llamó la atención fue que igual pasé de nivel... ¿o es que se te confundieron algunas variables?
Sí te hago algunas recomendaciones:
- Cambia el "underscore" por el "menos", ya que el "asterisco" se centra en este último.
- Si los niveles van aumentando en velocidad, deja que los primeros 5 pasos sean siempre en línea recta para tomarle el pulso. Tal vez como grado de dificultad puedas hacer eso más corto o más largo.
- Si es posible, vuelve a la rayita cuando el asterisco dé el siguiente paso.
Respecto del listado, lo procesé con el parser TBXL y generé el siguiente código compactado:
Puedes ver que llevas 5 líneas y unos pocos bytes más (suponiendo continuidad). El hecho que el PROC haya quedado aparte al final es porque a la larga el EXEC funciona como un GOSUB, y el nombre TT es una variable que toma el valor de la línea donde se define el PROC.
Y con todo el resto de espacio que te queda, ¡hasta en colores!
Re: BASIC Tenliners Contest 2016 (NOMAM)
jajaajajaj yo lo encuentro muy fácilvitoco escribió:Pegué tu código en Altirra y traté de jugar... 'Tas la custión difícil. No creo haber avanzado más de 6 o 7 posiciones. No sé si sea porque con joystick es otra cosa o simplemente soy ñurdo con la sincronización de eventos.
Puede ser... revisare con calma el fin de semanavitoco escribió:Algo que me llamó la atención fue que igual pasé de nivel... ¿o es que se te confundieron algunas variables?
pueder ser... veamos como queda ...vitoco escribió:Sí te hago algunas recomendaciones:
- Cambia el "underscore" por el "menos", ya que el "asterisco" se centra en este último.
- Si los niveles van aumentando en velocidad, deja que los primeros 5 pasos sean siempre en línea recta para tomarle el pulso. Tal vez como grado de dificultad puedas hacer eso más corto o más largo.
- Si es posible, vuelve a la rayita cuando el asterisco dé el siguiente paso.
wena quedo filete.... esta bueno tu parservitoco escribió: Puedes ver que llevas 5 líneas y unos pocos bytes más (suponiendo continuidad)
Viendo el resultado de tu parser y el espacio que sobra quizás me anime aplicar la técnica de colores en modo grafico 0, para eso tendría que redefinir al menos 2 o 3 caracteres para aplicar el Artifacting.vitoco escribió:Y con todo el resto de espacio que te queda, ¡hasta en colores!
Saludos
Re: BASIC Tenliners Contest 2016 (NOMAM)
Claramente soy malo jugando... incluso el polaco que publicó el review de mi juego con el teclado, llegó a la batalla 12!!!AsCrNet escribió:jajaajajaj yo lo encuentro muy fácilvitoco escribió:Pegué tu código en Altirra y traté de jugar... 'Tas la custión difícil. No creo haber avanzado más de 6 o 7 posiciones. No sé si sea porque con joystick es otra cosa o simplemente soy ñurdo con la sincronización de eventos.
Yo con suerte y muchísimo esfuerzo llegué a la batalla 7 después que relajé los tiempos en la versión final...
Una aclaración y una recomendación más:AsCrNet escribió:Viendo el resultado de tu parser y el espacio que sobra quizás me anime aplicar la técnica de colores en modo grafico 0, para eso tendría que redefinir al menos 2 o 3 caracteres para aplicar el Artifacting.
Aclaro que no es MI parser, sino que de Daniel Serpell... Yo también me hice utilitario que más que parser, sólo reconoce las palabras reservadas, las abrevia y aplica algunas reglas de formateo. El parser de Daniel hace eso y muchísimo más, por eso te lo recomiendo. Mi aporte sólo está en el servicio para mostrar el listado en ATASCII.
Y te recomiendo que en Altirra utilices emulación de video PAL, ya que la competencia se realiza en Alemania. El jurado utiliza ese sistema de video y varias cosas funcionan distintas que en NTSC, siendo la más relevante la velocidad del refresco de pantalla. Si pones cosas que dependan de la instrucción PAUSE o el PEEK(20), se te pueden poner casi un 20% más rápidas (a lo mejor por eso me fue mal en Equilibrium). Y lo otro es que el Artifacting también funciona distinto en PAL, y los colores que se obtienen no son los mismos que en NTSC. En todo caso podrían dar lo mismo los colores siendo que lo que se representa es pura fantasía
Re: BASIC Tenliners Contest 2016 (NOMAM)
wenavitoco escribió:incluso el polaco que publicó el review de mi juego con el teclado, llegó a la batalla 12!!!
ahh okvitoco escribió:Aclaro que no es MI parser, sino que de Daniel Serpell
Tenías toda la razón mijo, era imposible en PAL. Bueno ya solucione varios problemas y lo reajuste ahora anda bien.vitoco escribió:Y te recomiendo que en Altirra utilices emulación de video PAL, ya que la competencia se realiza en Alemania. El jurado utiliza ese sistema de video y varias cosas funcionan distintas que en NTSC, siendo la más relevante la velocidad del refresco de pantalla. Si pones cosas que dependan de la instrucción PAUSE o el PEEK(20), se te pueden poner casi un 20% más rápidas (a lo mejor por eso me fue mal en Equilibrium)
Spoiler: MOSTRAR
Re: BASIC Tenliners Contest 2016 (NOMAM)
Ahora sí pude jugar. Claro que por mirar el puntaje me distraje y caí como en la 3ra o 4ta pantalla. Es que dice "Nivel" en lugar de "Level".
Compacté tu código y quedó así:
Puedes ver que llevas prácticamente 6 líneas (hay que acomodar el título en la primera línea para que se ajuste todo hacia abajo). También revisé cortando en 80 y son 9 líneas, con la penúltima a la mitad.
Y siempre se aprende algo nuevo: No me había dado cuenta que TurboBASIC XL tiene DO-EXIT-LOOP. Al verlo en tu listado, pensé que con eso me podría haber ahorrado 1 caracter con DO y LOOP en vez de WHILE y WEND para los ciclos infinitos, pero no:
Sin embargo, imagino que el ciclo con DO debe ser más rápido porque no hay nada que evaluar, y por otro lado puede ser útil cuando estás en el límite del largo de línea y necesitas 1 byte que no puedes acomodar moviendo otras cosas
Lo que sí me llamó la atención es que usas el EXIT para salir del DO-LOOP en algo que no me hace sentido... ¿o lo usas para salir de otro de los ciclos? ¿Algo así como el POP en los FOR-NEXT y GOSUB?
Compacté tu código y quedó así:
Puedes ver que llevas prácticamente 6 líneas (hay que acomodar el título en la primera línea para que se ajuste todo hacia abajo). También revisé cortando en 80 y son 9 líneas, con la penúltima a la mitad.
Y siempre se aprende algo nuevo: No me había dado cuenta que TurboBASIC XL tiene DO-EXIT-LOOP. Al verlo en tu listado, pensé que con eso me podría haber ahorrado 1 caracter con DO y LOOP en vez de WHILE y WEND para los ciclos infinitos, pero no:
Código: Seleccionar todo
DO:LOO.
W.1:WE.
Lo que sí me llamó la atención es que usas el EXIT para salir del DO-LOOP en algo que no me hace sentido... ¿o lo usas para salir de otro de los ciclos? ¿Algo así como el POP en los FOR-NEXT y GOSUB?
Re: BASIC Tenliners Contest 2016 (NOMAM)
Qué bueno ya es jugable sabía que algo faltaba jajaajajajajaj.vitoco escribió:Ahora sí pude jugar. Claro que por mirar el puntaje me distraje y caí como en la 3ra o 4ta pantalla. Es que dice "Nivel" en lugar de "Level".
Perfecto aún hay espacio para hacer las letras grandes a los mensajesvitoco escribió:Puedes ver que llevas prácticamente 6 líneas (hay que acomodar el título en la primera línea para que se ajuste todo hacia abajo). También revisé cortando en 80 y son 9 líneas, con la penúltima a la mitad.
Por eso me gusta este concurso siempre hay algo que uno puede aprendervitoco escribió:Y siempre se aprende algo nuevo: No me había dado cuenta que TurboBASIC XL tiene DO-EXIT-LOOP. Al verlo en tu listado, pensé que con eso me podría haber ahorrado 1 caracter con DO y LOOP en vez de WHILE y WEND para los ciclos infinitos
Sipppvitoco escribió:Sin embargo, imagino que el ciclo con DO debe ser más rápido porque no hay nada que evaluar, y por otro lado puede ser útil cuando estás en el límite del largo de línea y necesitas 1 byte que no puedes acomodar moviendo otras cosas
No mijo es para salir del for del jugador cuando se equivoca ya que no tiene sentido seguir en el, sí perdió el paso.vitoco escribió:Lo que sí me llamó la atención es que usas el EXIT para salir del DO-LOOP en algo que no me hace sentido... ¿o lo usas para salir de otro de los ciclos? ¿Algo así como el POP en los FOR-NEXT y GOSUB?
Saludos
Re: BASIC Tenliners Contest 2016 (NOMAM)
Prueba de letras grandesAsCrNet escribió:aún hay espacio para hacer las letras grandes a los mensajes
Saludos
Re: BASIC Tenliners Contest 2016 (NOMAM)
Shaaaaa!AsCrNet escribió:Prueba de letras grandes
Re: BASIC Tenliners Contest 2016 (NOMAM)
Artifacting tenias toda la razón vitoco
NTSC PAL Saludos
NTSC PAL Saludos
Re: BASIC Tenliners Contest 2016 (NOMAM)
Ya van 59 juegos presentados en total para hartos equipos retro, incluyendo Vic-20, Atari 2600 y TRS-80 (ver lista).
@AsCrNet: ¿cómo va el juego número 60?
@AsCrNet: ¿cómo va el juego número 60?
Re: BASIC Tenliners Contest 2016 (NOMAM)
Bien, espero este fin de semana terminarlo y publicarlo.vitoco escribió:@AsCrNet: ¿cómo va el juego número 60?
Saludos