You can help CodeWalrus stay online by donating here. | New CodeWalrus | Old (dark mode) | Old (light) | Discord server

Alien Breed 5 Episode III: Impact

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

0
b/Calculator Development publicado por u/JamesV December 21, 2015, 01:37:37 PM
Since 3.5 years ago when I decided to do Alien Breed 5, I've had a rough plan in my head for it to be a 3-part game, ie. the first main release, followed by two additional campaigns with new features to be added later. I've recently started working on the 3rd and (most likely) final part. It's still very early days, but I've already gotten a few cool things done.

As usual, there will be a new campaign, although it will be different in structure to Episodes I & II. There will also be new gameplay elements, some new enemies, more achievements and potentially some slight graphics tweaks in the form of more tile animations.

So far, I've reworked the level file format to allow for some of the additional gameplay elements, which will allow for more things to happen in levels. The level editor pretty much had to be rebuilt from scratch, as well as making a simple program to convert the existing Episode I & II data to the new format. I'm now halfway through implementing the calculator-side changes to all of this, so that the game correctly interprets the new level format and starts incorporating the new elements.

Additionally, whilst this will still include the standard TI-83+/84+ flash application release, over the last 36 hours I've been doing some tests to see how viable it would be to include a build for the TI-84+CE!

I've drawn inspiration from MateoConLechuga's Mono2Color project for the TI-84+CSE, and after a few experiments determined that I'll most likely have to stick with monochrome tiles & sprites so that I can run the LCD in 1bpp mode, otherwise the frame rate gets way too slow. Below you can view a demonstration showing the game in 3 different zoom levels (x1, x2 & x3). As you'll see, x1 moves super quick, x2 moves roughly the same speed as the TI-83+/84+ monochrome version (within 1fps), and x3 is a bit slower again (around 7-8fps slower). Of course this demo only includes the scrolling background, no player/enemy/gunfire sprites. However, all the tile drawing & sprite rendering is done on a 768 byte buffer, the part that slows things down is scaling this 96x64 resolution buffer up to either 192x128 (x2) or 288x192 (x3). I'm confident that drawing the sprites over the tilemap will have minimal effect with the CPU speed of the TI-84+CE (but this will be my next few experiments).

The 768 video buffer -> vram drawing/scaling routines were written fairly quickly, so I might be able to optimise them a little. I'll continue playing around and see how I can improve it. At the very least, I'd like to have a TI-84+CE version with a play screen of 192x128.

Last Edit: December 23, 2015, 12:44:08 PM by JamesV
Inicia sesión o crea una cuenta para dejar un comentario
u/alexgt December 21, 2015, 02:19:49 PM
Sounds Great! I will definitely play it when you get a demo out ;)
u/JamesV December 21, 2015, 10:09:09 PM
Thanks!

After sleeping on it, I came up with a different method this morning for copying & scaling the video buffer more efficiently. I only had a chance to test it on the 3x zoom (288x192 resolution) and it was running at pretty much the same frame rate as the 83+/84+ non CE version. I'll try it later on 2x zoom as well and see how fast it gets, but at a rough calculation it should be about 30% faster than the 83+/84+ non CE frame rate.

Either way, it's certainly workable :)
u/alexgt December 21, 2015, 10:31:42 PM
Nice! can't wait to see more, but sadly I don't have a CE only a 84+ <_< still best of luck
u/Snektron December 21, 2015, 10:43:36 PM
Well, you should be able to play it on the js wrapper with the file loader i made :)
Cool project btw :)
u/alexgt December 21, 2015, 10:45:08 PM
where could I find that?
u/JamesV December 21, 2015, 11:09:56 PM
Quote from: alexgt on December 21, 2015, 10:31:42 PM
Nice! can't wait to see more, but sadly I don't have a CE only a 84+ <_< still best of luck
It will be released on the non-colour TI-83+/84+ calculators as well (in flash app form). In the meantime, feel free to download and try v2.1.0 :)
u/Unicorn December 22, 2015, 12:13:55 AM
Sounds like a bit of work! I wish you luck, and I hope I get a CE soon to play this...
u/alexgt December 22, 2015, 12:29:44 AM
Quote from: Cumred_Snektron on December 21, 2015, 10:50:49 PM
https://github.com/RobinDeWalvis/ti_jsemu_wrapper
Thanks ;)
Quote from: JamesV on December 21, 2015, 11:09:56 PM
Quote from: alexgt on December 21, 2015, 10:31:42 PM
Nice! can't wait to see more, but sadly I don't have a CE only a 84+ <_< still best of luck
It will be released on the non-colour TI-83+/84+ calculators as well (in flash app form). In the meantime, feel free to download and try v2.1.0 :)
Awesome! can't wait to test it :)
u/JamesV December 23, 2015, 12:44:29 PM
Today I've finished off (for the time being) the new level event scripting that will feature in Episode III: Impact (and Episodes I & II will be patched to the new format as well). The new format gives me more power to add multiple triggers & events during a level. In the below screenshot there are a few examples:

1. After a certain amount of time passes, an in-level text block is displayed, and the darkness filter is enabled.
2. When the player walks up to the computer, another text is displayed and the darkness filter is disabled.
3. Bosses are no longer triggered by a single tile - an area is set (can be any rectangular shape up to 32x32 tiles in size) that triggers a boss (technically there could be multiple bosses in a level now), and in this case also modifies two tiles in the level to seal off the room (previously this was locked to modify one tile when a boss fight started, and one more tile when a boss fight finished).
4. When the boss is killed, multiple tiles are modified to open various paths out of the room, the countdown sequence is triggered, and the level is flagged as being ready for completion.

Triggers & commands can be used in various combinations to create various events so that I can add more depth to the new levels.



Now that this is done, I'm going to attempt to start adapting the code and applying the new LCD routines to make it compatible with the TI-84+CE :)
u/alexgt December 23, 2015, 02:20:07 PM
Nice! I will definitely try it out it looks like a great game ;)! When will you have a download out?
u/123outerme December 23, 2015, 08:12:47 PM
With the CE compatibility be extended to the CSE as well?
u/Dream of Omnimaga December 24, 2015, 03:57:00 AM
Woah that looks great and I'm glad that you are considering porting the game to the CE. The CSE is discontinued and slow so I could understand if you don't make a version for it, but a CE version would still be great, as new games have been lacking on it lately. Some colors, even if primitive, would be cool. For example, tiles could remain 2 colors, but for each tile they could be something else than monochrome calculators.
u/JamesV December 24, 2015, 08:24:34 AM
Quote from: alexgt on December 23, 2015, 02:20:07 PM
Nice! I will definitely try it out it looks like a great game ;)! When will you have a download out?
Thanks! Not for a while yet, sorry. I've only started work on it in the last few weeks, and I have a lot of work still ahead of me. But I'll continue to post about progress here as I get more done, and eventually there will be a beta out for people that want to test it :)

Quote from: 123outerme on December 23, 2015, 08:12:47 PM
With the CE compatibility be extended to the CSE as well?
It's not out of the question, but it's not high on my list given that the CSE has essentially been replaced by the CE. Once I get further along with the project I'll see how I feel about it.

Quote from: DJ Omnimaga on December 24, 2015, 03:57:00 AM
Woah that looks great and I'm glad that you are considering porting the game to the CE. The CSE is discontinued and slow so I could understand if you don't make a version for it, but a CE version would still be great, as new games have been lacking on it lately. Some colors, even if primitive, would be cool. For example, tiles could remain 2 colors, but for each tile they could be something else than monochrome calculators.
Thanks DJ_O! At the moment I'm running the LCD in 1bpp mode, so I literally can only have 2 colours on screen at once. I could run the LCD at 2bpp (allowing 4 colours on screen at once), but that would increase the amount of processing required for background scrolling, copying & scaling the buffer to the LCD, etc. Even running in 1bpp mode, I have to write 6912 bytes to the LCD every frame. If I go to 2bpp, this doubles to 13824 bytes written to the LCD per frame, as well as extra work required in scrolling the buffer. At an estimate, the game would run at around 12 fps :(

Edit: One thing I have considered doing (which is what you may have been suggesting?) is that each level could have it's own "white" colour to give different levels a different feel. The original Alien Breed games did some palette swapping between levels to achieve this, which I could (and quite possibly will) do :)
Last Edit: December 24, 2015, 08:56:21 AM by JamesV
Start a Discussion

b/Calculator Development

Showcase your newest TI, Casio, HP, Numworks or Sharp calculator projects here, discuss programming and share or browse user tutorials!

320
Topics
Explore Board
Website statistics


MyCalcs | Ticalc.org | Cemetech | Omnimaga | TI-Basic Developer | MaxCoderz | TI-Story | Casiocalc.org | Casiopeia | The Museum of HP Calculators | HPCalc.org | CnCalc.org | Music 2000 Community | TI Education | Casio Education | HP Calcs | NumWorks | SwissMicros | Sharp Calculators
Powered by EzPortal