MK2 Game - Harbinger (128k)
Publicado: Mié, 12 Ago 2015, 22:33
Pues mi siguiente juego sera un plataformas de perspectiva lateral de ciencia ficción, lo estaba haciendo al mismo tiempo que el godkiller 2 y al final me decidí a hacerlo con MK2
128k, 1 nivel de 40 pantallas, 48 tiles.
al hacer los cambios para pasarlo a 128 usando los fuentes del espadewr me peta por todos sitios
Los cambios a prioir serían ? :
1º )el make.bat habria que cambiarlo añadiendo las ordenes para el reubica ?
2º )añadir librarian.exe y los recursos del list.txt en bin ?
3º ) las directivas del config
4º ) activar el 128k en el .c
y alguna cosa mas seguro
Imploro la sabiduría de los dioses mojonos ( prometo no mandar al Godkiller a asesinarlos )
$this->bbcode_second_pass_code('', '
------------------------------------------------------------------------------
BUILDING harbinger
------------------------------------------------------------------------------
### GENERANDO BINARIOS ###
* Building reubica
* Building RAM3 AND RAM4 AND RAM6
THE LIBRARIAN
Processing list.txt
+ File title.bin
+ File marco.bin
+ File ending.bin
+ File
El sistema no puede encontrar el archivo especificado.
1 archivo(s) copiado(s).
### MAKING MAPS ###
map2bin 1.1 - Hanna edition
usage
$ map2bin mapa.map map_w map_h lock map.bin bolts.bin [connections.txt] [force]
where:
* mapa.map is your map from mappy .map
* map_w, map_h are map dimmensions in screens
* lock is 15 to autodetect lock, 99 otherwise
* map.bin is the output map, bin file.
* bolts.bin is the output bolts, bin file.
* connections.txt - include custom connections.
* force - forces packed, extra tiles are output an map.bin.spt file.
packed/unpacked auto-detected
El sistema no puede encontrar el archivo especificado.
### MAKING ENEMS ###
reading enems file
enems filename = ..\enems\enems.ene
reading 54 enemies
written 54 enemies
648 bytes written.
reading 18 hotspots
54 bytes written.
### MAKING TILESET ###
reading font
font filename = ..\gfx\font.png
converted 64 chars
reading 16x16 tiles
tileset filename = ..\gfx\work.png
converted 192 chars
writing tileset
2304 bytes written
### MAKING SPRITESET ###
** WARNING **
SprCnv convierte los sprites en un PNG en formato churrera
c¾digo C usable directamente en el juego.
CutreCode Disclaimer: este programa es cutrecode, esto significa
que si el PNG de entrada no tiene el formato churrera especificado
en la documentaci¾n, cosas divertidas pueden ocurrir.
íTodo correcto!
### MAKING SCRIPT ###
Parsing harbinger.spt
Scripts for 0 levels read and compiled into scripts.bin
Generating parser
DONE!
1 archivo(s) copiado(s).
1 archivo(s) copiado(s).
1 archivo(s) copiado(s).
### MAKING FIXED ###
Reading input png
input filename = ..\gfx\title.png
Reading colour pairs
Examining and reordering bitmap
Adding attribute file
Writing output
output filename = ..\gfx\title.scr
6912 bytes written
===============================================================================
aPLib example Copyright (c) 1998-2004 by Joergen Ibsen / Jibz
All Rights Reserved
http://www.ibsensoftware.com/
===============================================================================
compressed 6912 -> 3610 bytes (52%) in 0.01 seconds
Reading input png
input filename = ..\gfx\ending.png
Reading colour pairs
Examining and reordering bitmap
Adding attribute file
Writing output
output filename = ..\gfx\ending.scr
6912 bytes written
===============================================================================
aPLib example Copyright (c) 1998-2004 by Joergen Ibsen / Jibz
All Rights Reserved
http://www.ibsensoftware.com/
===============================================================================
compressed 6912 -> 1950 bytes (28%) in 0.00 seconds
### MAKING LOADING
Reading input png
input filename = ..\gfx\loading.png
Reading colour pairs
Examining and reordering bitmap
Adding attribute file
Writing output
output filename = loading.bin
6912 bytes written
### COMPILING ###
1 archivo(s) copiado(s).
1 archivo(s) copiado(s).
sccz80:"librarian.h" L:18 Warning:#2:Too many arguments in function call
sccz80:"./engine/enemsinit.h" L:42 Error:#42:Unknown symbol: level_data
sccz80:"./engine/enemsinit.h" L:42 Error:#36:Can't take member
Compilation aborted
### MAKING TAPS ###
BAS2TAP v2.5 by Martijn van der Heide of ThunderWare Research Center
Creating output file loader.tap
Done! Listing contains 1 line.
Input file open failed!
Input file open failed!
Input file open failed!
loader.tap
loading.tap
1 archivo(s) copiado(s).
### LIMPIANDO ###
No se pudo encontrar C:\harbinger\dev\main.tap
No se pudo encontrar C:\harbinger\dev\harbinger.bin
### DONE ###
')
MAKE
$this->bbcode_second_pass_code('', '
@echo off
rem set here the game name (used in filenames)
SET game=harbinger
echo ------------------------------------------------------------------------------
echo BUILDING %game%
echo ------------------------------------------------------------------------------
echo ### GENERANDO BINARIOS ###
echo * Building reubica
..\utils\pasmo reubica.asm reubica.bin
echo * Building RAM3 AND RAM4 AND RAM6
cd ..\bin
librarian.exe
copy RAM3.bin ..\dev\ram3.bin
copy librarian.h ..\dev
rem ###########################################################################
rem ## LEVELS
rem ###########################################################################
rem we will delegate on makelevels.bat - if your game supports several levels,etc
rem echo ### BUILDING LEVELS
rem cd ..\levels
rem call makelevels.bat
rem but for 48K/single level games...
echo ### MAKING MAPS ###
rem the "Force" parameter is to force 16 tiles maps even if the actual map data
rem has more tan 16 tiles. Extra tiles are written to extra.spt. Me have to move
rem that file to the script folder.
..\utils\map2bin.exe ..\map\mapa.map 8 5 15 map.bin
move map.bin.spt ..\script
echo ### MAKING ENEMS ###
..\utils\ene2bin.exe 3 6 1 ..\enems\enems.ene enems.bin hotspots.bin
echo ### MAKING TILESET ###
..\utils\ts2bin.exe ..\gfx\font.png ..\gfx\work.png ts.bin
echo ### MAKING SPRITESET ###
..\utils\sprcnv.exe ..\gfx\sprites.png sprites.h
rem If you use arrows and/or drops this will make the sprites binary:
rem ..\utils\spg2bin.exe ..\gfx\drop.png spdrop.bin
rem ..\utils\spg2bin.exe ..\gfx\arrow.png sparrow.bin
rem ###########################################################################
rem ## GAME TEXT
rem ###########################################################################
rem Each line in text.txt contains a text string for the game.
rem textstuffer.exe will compress and pack all text strings in
rem a binary file called texts.bin. The parameter "24" define how
rem many chars per line. Word wrapping is automatic.
rem echo ### MAKING TEXTS ###
rem cd ..\texts
rem ..\utils\textstuffer.exe texts.txt texts.bin 24
rem copy texts.bin ..\dev
rem ###########################################################################
rem ## GAME SCRIPT
rem ###########################################################################
rem The game script is compiled by msc3.exe. For 128K games use "rampage" at
rem the end so the script compiler generates code to stuff everything in
rem extra pages; the second parameter is the # of screens in your game.
rem i.e. "msc3.exe ninjajar.spt 21 rampage
echo ### MAKING SCRIPT ###
cd ..\script
..\utils\msc3.exe %game%.spt 40 rampage
rem If scripts and texts are going to share the same RAM page, use this line
rem (for 128K games)
rem This calculates an offset for the scripts binary automaticly.
rem ..\utils\sizeof.exe ..\bin\texts.bin 49152 "#define SCRIPT_INIT" >> msc-config.h
copy msc.h ..\dev
copy msc-config.h ..\dev
copy scripts.bin ..\dev
cd ..\dev
rem For 128K games with text + script sharing the same page, use this to
rem bundle both binaries...
rem echo ### BUNDLING TEXT + SCRIPT ###
rem copy /b ..\texts\texts.bin + ..\script\script.bin ..\bin\preload4.bin
rem ###########################################################################
rem ## FIXED SCREENS
rem ###########################################################################
echo ### MAKING FIXED ###
..\utils\png2scr.exe ..\gfx\title.png ..\gfx\title.scr
..\utils\apack.exe ..\gfx\title.scr title.bin
..\utils\png2scr.exe ..\gfx\ending.png ..\gfx\ending.scr
..\utils\apack.exe ..\gfx\ending.scr ending.bin
del ..\gfx\*.scr
echo ### MAKING LOADING
..\utils\png2scr.exe ..\gfx\loading.png loading.bin
rem ###########################################################################
rem ## COMPILATION AND TAPE BUILDING
rem ###########################################################################
echo ### COMPILING ###
zcc +zx -vn %game%.c -o %game%.bin -lsplib2 -zorg=24200
echo ### MAKING TAPS ###
..\utils\bas2tap -a10 -sHARBIN loader.bas loader.tap
..\utils\bin2tap -o reubica.tap -a 25000 reubica.bin
..\utils\bin2tap -o ram1.tap -a 32768 ram1.bin
..\utils\bin2tap -o ram3.tap -a 32768 ram3.bin
..\utils\bin2tap -o loading.tap -a 16384 loading.bin
..\utils\bin2tap -o main.tap -a 24200 %game%.bin
copy /b loader.tap + loading.tap + main.tap %game%.tap
echo ### LIMPIANDO ###
del loader.tap
del main.tap
del loading.tap
del %game%.bin
echo ### DONE ###
')
128k, 1 nivel de 40 pantallas, 48 tiles.
al hacer los cambios para pasarlo a 128 usando los fuentes del espadewr me peta por todos sitios
Los cambios a prioir serían ? :
1º )el make.bat habria que cambiarlo añadiendo las ordenes para el reubica ?
2º )añadir librarian.exe y los recursos del list.txt en bin ?
3º ) las directivas del config
4º ) activar el 128k en el .c
y alguna cosa mas seguro
Imploro la sabiduría de los dioses mojonos ( prometo no mandar al Godkiller a asesinarlos )
$this->bbcode_second_pass_code('', '
------------------------------------------------------------------------------
BUILDING harbinger
------------------------------------------------------------------------------
### GENERANDO BINARIOS ###
* Building reubica
* Building RAM3 AND RAM4 AND RAM6
THE LIBRARIAN
Processing list.txt
+ File title.bin
+ File marco.bin
+ File ending.bin
+ File
El sistema no puede encontrar el archivo especificado.
1 archivo(s) copiado(s).
### MAKING MAPS ###
map2bin 1.1 - Hanna edition
usage
$ map2bin mapa.map map_w map_h lock map.bin bolts.bin [connections.txt] [force]
where:
* mapa.map is your map from mappy .map
* map_w, map_h are map dimmensions in screens
* lock is 15 to autodetect lock, 99 otherwise
* map.bin is the output map, bin file.
* bolts.bin is the output bolts, bin file.
* connections.txt - include custom connections.
* force - forces packed, extra tiles are output an map.bin.spt file.
packed/unpacked auto-detected
El sistema no puede encontrar el archivo especificado.
### MAKING ENEMS ###
reading enems file
enems filename = ..\enems\enems.ene
reading 54 enemies
written 54 enemies
648 bytes written.
reading 18 hotspots
54 bytes written.
### MAKING TILESET ###
reading font
font filename = ..\gfx\font.png
converted 64 chars
reading 16x16 tiles
tileset filename = ..\gfx\work.png
converted 192 chars
writing tileset
2304 bytes written
### MAKING SPRITESET ###
** WARNING **
SprCnv convierte los sprites en un PNG en formato churrera
c¾digo C usable directamente en el juego.
CutreCode Disclaimer: este programa es cutrecode, esto significa
que si el PNG de entrada no tiene el formato churrera especificado
en la documentaci¾n, cosas divertidas pueden ocurrir.
íTodo correcto!
### MAKING SCRIPT ###
Parsing harbinger.spt
Scripts for 0 levels read and compiled into scripts.bin
Generating parser
DONE!
1 archivo(s) copiado(s).
1 archivo(s) copiado(s).
1 archivo(s) copiado(s).
### MAKING FIXED ###
Reading input png
input filename = ..\gfx\title.png
Reading colour pairs
Examining and reordering bitmap
Adding attribute file
Writing output
output filename = ..\gfx\title.scr
6912 bytes written
===============================================================================
aPLib example Copyright (c) 1998-2004 by Joergen Ibsen / Jibz
All Rights Reserved
http://www.ibsensoftware.com/
===============================================================================
compressed 6912 -> 3610 bytes (52%) in 0.01 seconds
Reading input png
input filename = ..\gfx\ending.png
Reading colour pairs
Examining and reordering bitmap
Adding attribute file
Writing output
output filename = ..\gfx\ending.scr
6912 bytes written
===============================================================================
aPLib example Copyright (c) 1998-2004 by Joergen Ibsen / Jibz
All Rights Reserved
http://www.ibsensoftware.com/
===============================================================================
compressed 6912 -> 1950 bytes (28%) in 0.00 seconds
### MAKING LOADING
Reading input png
input filename = ..\gfx\loading.png
Reading colour pairs
Examining and reordering bitmap
Adding attribute file
Writing output
output filename = loading.bin
6912 bytes written
### COMPILING ###
1 archivo(s) copiado(s).
1 archivo(s) copiado(s).
sccz80:"librarian.h" L:18 Warning:#2:Too many arguments in function call
sccz80:"./engine/enemsinit.h" L:42 Error:#42:Unknown symbol: level_data
sccz80:"./engine/enemsinit.h" L:42 Error:#36:Can't take member
Compilation aborted
### MAKING TAPS ###
BAS2TAP v2.5 by Martijn van der Heide of ThunderWare Research Center
Creating output file loader.tap
Done! Listing contains 1 line.
Input file open failed!
Input file open failed!
Input file open failed!
loader.tap
loading.tap
1 archivo(s) copiado(s).
### LIMPIANDO ###
No se pudo encontrar C:\harbinger\dev\main.tap
No se pudo encontrar C:\harbinger\dev\harbinger.bin
### DONE ###
')
MAKE
$this->bbcode_second_pass_code('', '
@echo off
rem set here the game name (used in filenames)
SET game=harbinger
echo ------------------------------------------------------------------------------
echo BUILDING %game%
echo ------------------------------------------------------------------------------
echo ### GENERANDO BINARIOS ###
echo * Building reubica
..\utils\pasmo reubica.asm reubica.bin
echo * Building RAM3 AND RAM4 AND RAM6
cd ..\bin
librarian.exe
copy RAM3.bin ..\dev\ram3.bin
copy librarian.h ..\dev
rem ###########################################################################
rem ## LEVELS
rem ###########################################################################
rem we will delegate on makelevels.bat - if your game supports several levels,etc
rem echo ### BUILDING LEVELS
rem cd ..\levels
rem call makelevels.bat
rem but for 48K/single level games...
echo ### MAKING MAPS ###
rem the "Force" parameter is to force 16 tiles maps even if the actual map data
rem has more tan 16 tiles. Extra tiles are written to extra.spt. Me have to move
rem that file to the script folder.
..\utils\map2bin.exe ..\map\mapa.map 8 5 15 map.bin
move map.bin.spt ..\script
echo ### MAKING ENEMS ###
..\utils\ene2bin.exe 3 6 1 ..\enems\enems.ene enems.bin hotspots.bin
echo ### MAKING TILESET ###
..\utils\ts2bin.exe ..\gfx\font.png ..\gfx\work.png ts.bin
echo ### MAKING SPRITESET ###
..\utils\sprcnv.exe ..\gfx\sprites.png sprites.h
rem If you use arrows and/or drops this will make the sprites binary:
rem ..\utils\spg2bin.exe ..\gfx\drop.png spdrop.bin
rem ..\utils\spg2bin.exe ..\gfx\arrow.png sparrow.bin
rem ###########################################################################
rem ## GAME TEXT
rem ###########################################################################
rem Each line in text.txt contains a text string for the game.
rem textstuffer.exe will compress and pack all text strings in
rem a binary file called texts.bin. The parameter "24" define how
rem many chars per line. Word wrapping is automatic.
rem echo ### MAKING TEXTS ###
rem cd ..\texts
rem ..\utils\textstuffer.exe texts.txt texts.bin 24
rem copy texts.bin ..\dev
rem ###########################################################################
rem ## GAME SCRIPT
rem ###########################################################################
rem The game script is compiled by msc3.exe. For 128K games use "rampage" at
rem the end so the script compiler generates code to stuff everything in
rem extra pages; the second parameter is the # of screens in your game.
rem i.e. "msc3.exe ninjajar.spt 21 rampage
echo ### MAKING SCRIPT ###
cd ..\script
..\utils\msc3.exe %game%.spt 40 rampage
rem If scripts and texts are going to share the same RAM page, use this line
rem (for 128K games)
rem This calculates an offset for the scripts binary automaticly.
rem ..\utils\sizeof.exe ..\bin\texts.bin 49152 "#define SCRIPT_INIT" >> msc-config.h
copy msc.h ..\dev
copy msc-config.h ..\dev
copy scripts.bin ..\dev
cd ..\dev
rem For 128K games with text + script sharing the same page, use this to
rem bundle both binaries...
rem echo ### BUNDLING TEXT + SCRIPT ###
rem copy /b ..\texts\texts.bin + ..\script\script.bin ..\bin\preload4.bin
rem ###########################################################################
rem ## FIXED SCREENS
rem ###########################################################################
echo ### MAKING FIXED ###
..\utils\png2scr.exe ..\gfx\title.png ..\gfx\title.scr
..\utils\apack.exe ..\gfx\title.scr title.bin
..\utils\png2scr.exe ..\gfx\ending.png ..\gfx\ending.scr
..\utils\apack.exe ..\gfx\ending.scr ending.bin
del ..\gfx\*.scr
echo ### MAKING LOADING
..\utils\png2scr.exe ..\gfx\loading.png loading.bin
rem ###########################################################################
rem ## COMPILATION AND TAPE BUILDING
rem ###########################################################################
echo ### COMPILING ###
zcc +zx -vn %game%.c -o %game%.bin -lsplib2 -zorg=24200
echo ### MAKING TAPS ###
..\utils\bas2tap -a10 -sHARBIN loader.bas loader.tap
..\utils\bin2tap -o reubica.tap -a 25000 reubica.bin
..\utils\bin2tap -o ram1.tap -a 32768 ram1.bin
..\utils\bin2tap -o ram3.tap -a 32768 ram3.bin
..\utils\bin2tap -o loading.tap -a 16384 loading.bin
..\utils\bin2tap -o main.tap -a 24200 %game%.bin
copy /b loader.tap + loading.tap + main.tap %game%.tap
echo ### LIMPIANDO ###
del loader.tap
del main.tap
del loading.tap
del %game%.bin
echo ### DONE ###
')