News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_betpet

Reverse engineering Laser Squad

Started by betpet, 12:16, 01 September 10

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

MacDeath

#25
this is basically the ancestor of X-COM : ennemy unknown.

Completely 2D and a bit  speccy ported.
they could have used better palettes to have more interesting variations in the colours, most palettes feel quite monocoloured on CPC.

Still graphic actually use the Amstrad Mode1 properly.
was it inspired by a CGA version ?

Does this game only use 64K ? as often this is quite the sort of game that may use 128k to get more extra contents or sprites variations.
A modern version could even stack even more RAM used I guess.

[attachimg=1]

good point is that the CPC version has a CPC sized screen... 320x200 and not the too often usual 256x192 Speccy thingy.

Was a nice alternative choice to Space Crusade I guess.



ouch, no CGA/EGA version, VGA only...



C64 version seems to basically be Spectrum graphics put on CPC/ST sized screen with C64 "non-colours".... quite less flashy than Speccy.

The little highlights of CPC sprites quite add some graphical deepth even if less colours.



What about rebelstar ?
rebelstar &copy firebird (1986)

are those two games related ?


Also :


So... they copied both Daleks and Warhammer 40k's space marines...



dragon

Yes is 64k, the map in the spectrum version is more large that the amstrad version. I think they cut for memory issues. Problably the sprites in amstrad take more memory.

Amstrad have 27y X 42x, and spectrum  have 49y X 79x


damm i want port the spectrums maps :(.

Not only rebelstar exist another game that drink of the two and early the good x-com.

lords of chaos &copy blade software (1990)

I think laser squad is a evolution of rebelstar. But i thinks the first version developed is the spectrum.

MacDeath

#27
May be quite interesting to compare both CPC and Speccy version of all those games.

They often had to both do ports and cut corners, and the R-type 128 project showed that it can be quite good AND interesting to also have a look at the Speccy version.

Speccy version would often feature more contents because all the graphics are less expensive in RAM and the screen RAM would also take a lot less space.
So you could often fit even more stuffs inside a speccy48 than in a CPC464.
Also perhaps more games would use the speccy128 specs instead of just plain 48k... while Amstrad games wouldn't even try at 128k.

speccy48 : perhaps 7k are used by screen... lets you about 40k
Graphics are somethings like 1bit per pixels.

CPC464 in 320x200x4 : screen uses 16k so it lets you with 48k... all graphic datas may weight twice if no trick is used...so 16k of graphics on speccy would become 32k on CPC... ouch.

But yeah according to world of spectrum, the game is 48k.
spectrum version may also have some level editor tools...


Laser Squad - World of Spectrum

http://maps.speccy.cz/maps/LaserSquad.png


ok after a quick check :

= font characters are in 1bit per pixels... so there are some conversion routines and colouring routines, may use the firmware perhaps...
= graphics are in non-compressed 2bpp aka true mode1, at least during game. This also means they could easily be modified

[attachimg=1]



according to CPCpowers, Rebelstar and Lords of chaos were done by same dude... found no info about the LaserSquad dude/coder (haven't searched a lot to be honnest).

and the game could really use some better palettes on CPC anyway...

as you can see on the exemple i posted, they use pastel red and pastel Magenta which are quite very close colours... you wouldn't get actually visible extra colours from the ditherings and miss some contrast.

dragon

O.k i made a error with the windows calculator. And I obtained wrong memory range in the spectrum

I have port the asasains 2 map sucefully from spectrum to the cpc only coping the matrix. So it share a lot of code with the cpc.

But in the screen in game that say is true,  the speccy need more scrolls per line to go from one side to another of the screen a lot more.

Anyway how is supossely  the hombrew levels work in spectrum, i can't play it in emulators the keyboard not respond wtf..

Mission Downloads | Laser Squad

Is impossible the game use firmware calls, i have ported it to the gx4000 because they use a custom call with the disk. And he load the levels from 636d to c36d killing the firmware ram range, inclusive the low ram in 0000 is used by the game.


About the colours, we can change it  easy as i know the call put it, whats the perfect combination?. :).

MacDeath

#29
QuoteBut in the screen in game that say is true,  the speccy need more scrolls per line to go from one side to another of the screen a lot more.
the CPC screen is larger so it displays more so you cover the map with less screens...

and yep, a lot of Z80 codes are somewhat the same because.. CPC and speccy can be qutie similar...
Perhaps a look at MSx version could also be fun.

For the "firmware" I was more thinking of some classic routines to convert the 1bpp fonts into somethings... a bit the way the basic could handle inks and letters from mode2 characters/letters into mode1 or 0...


For the colours... well... would need some mockup time.
Also may be even bester if some tiles can be modified as well.


So ok, mockup time... will see if I can do a few tries.
Basically the many palettes from Head Over Heels can be suitable for this sort of game...

dragon

I can port the speccy extra maps to the cpc +o- Some maps only change the maps. Other change the sprites in the spectrum,that the amstrad converted to the laser squad native sprites.(examplea a wall modified to normal wall or a un big tree in to three arbusts.

But the problem is the weapons i can view the russian guys change a pistol for example to a explosive. But i don't know how cpc knows is a explosive o a normal weapon. So explosive is in level 3 probably is in the game, but desactivated.

I can active a weapon in the list slot desactivated thats is empty.inclusive change the sprite associated to these slot, but not the weapon. its the only mistery to port the games perfect that resits me..

For example, This is a port of the spectrum level 20 return to moonbase. That not need modification, as he only change the map.

And the other is the 1 map called mafia,it lost the key sprite.(the cpc not have it, but the the text is  o.k cpc reload it to "none" sprite ). some sprites in door open. I can add the droid of  in the spectrum, but not the explosive.

In the example of mafia I activate all slots, you can buy a death body, but i want put a explosive jeje.




MacDeath

#31
ok fast first try...

Basically I tried a bit to add some dithered zones with both medium colours.

Also switch to quite different colours (Dark Cyan and Orange) into a quite classic Mode1 palette.

Pastel yellow can be switched to white too I guess or kept that way.

Not a lot of edition, it is a first try.

[attachimg=1]

I should redo the sprite/tiles sheet because as it is it is not quite just, but still it can show some potential with less monocoloured palettes and some slight touches of "extra dithered hues" for a few surfaces/details.



It is to notice that this is the exact sort of game that could quite benefit from a PLUS version in order to have a "Switchblade" type of use for the Hardsprites.

Also to use a display with info-zone on the right of the screen quite prevents the use of some rasters as used in Space Crusade.



Not that it would add a huge lot, but basically a CPC can tap into quite more exotic or even larger resolutions provided you are in turn-based gameplay and can get some 128k RAM specs.

some 256x256 or 320x240 or 320x256 or even 360x256 sized display could be great despite heavy.

But this would then be more ambitious than a simple mod of existing engine.

dragon

Exist somewhere a app that can import the spectrum sprites to amstrad sprite format?.

SRS


ComSoft6128


dragon

I have now the general structure of the levels. I'm in the way of make a crappy generic level creator for each amstrad  level.


A bunch of org xxx. That separate  the zones. That when compiled generated the amstrad original levels files.



I'm not know what all table indices do, but at least the general structure.


Regions, nodes, arm peligrosity, patrol routes. Regions peligrosity etc...


If anything like the game and want help decoding all the options that permit the levels files is welcome.


Can be good if anything dominate the spectrum. To make a spectrum general structure and  disect the differences with the amstrad to help to port the scenarios.




betpet

Wow!  Unfortunately, my life took a turn in a different direction and this fell by the wayside for me. I'm amazed there's still interest in this despite it all happening for me over 10 years ago. I still have the code I wrote for some of the tools I used. I'd love to get back into this and I have the core of the engine I was planning on using in place.  It's unfinished by a long way but it can process rules and allow the addition of many more quite easily.


I'd love to put this together in Unity and the code I have written is in C# so should just work in Unity as an added DLL.


I love some of the things you've done guys!  Kudos!
Old Amstrad CPC 6128 owner. New Amstrad CPC 464 and 6128 owner. Getting back the love!

Gryzor

Heh, indeed almost 10 years to the day, this must be the slowest-burning thread in here :D

betpet

I'll see you all in another 10 years.  I'm looking forward to what you've produced ;)
Old Amstrad CPC 6128 owner. New Amstrad CPC 464 and 6128 owner. Getting back the love!

MacDeath

Caught somewhere in time...

;D

AMSDOS

Quote from: Gryzor on 14:03, 14 July 20
Heh, indeed almost 10 years to the day, this must be the slowest-burning thread in here :D


Rats, so this is older than Silly Programming Ideas....


Time to talk to another Doctor, Who will listen to my problems!  :D
* Using the old Amstrad Languages :D   * with the Firmware :P
* I also like to problem solve code in BASIC :)   * And type-in Type-Ins! :D

Home Computing Weekly Programs
Popular Computing Weekly Programs
Your Computer Programs
Updated Other Program Links on Profile Page (Update April 16/15 phew!)
Programs for Turbo Pascal 3

Sokurah

Quote from: betpet on 14:05, 14 July 20
I'll see you all in another 10 years.  I'm looking forward to what you've produced ;)


Get started, Steve ... you have until Monday to finish it  :P


Too bad that the disassembly didn't progress further. I would've loved to use that as basis for a Spectrum Next version ;)
-----
Tardis Remakes => Mostly remakes of Arcade and Spectrum games - including Dingo for the Speccy.
Twitter => Sokurah
-----

crabfists

Interesting thread.  :)

I've been reverse engineering Laser Squad too. I've been using CPC Analyser, which is helping quite a bit. I'll try to make my disassembly public at some point. 

There is a very short video of me starting to reverse engineer it here. Hopefully it should give an idea of how the tool can help facilitate the reverse engineering process. 

Laser Squad starts 6 mins in.


betpet

Explore happy dance GIFs

I love how this game is nearly 40 years old and we are still showing it love! I really need to pull my finger out and get back to some of this!
Old Amstrad CPC 6128 owner. New Amstrad CPC 464 and 6128 owner. Getting back the love!

Powered by SMFPacks Menu Editor Mod