Join us on Discord!
You can help CodeWalrus stay online by donating here.

[TI-83+/84+] Hero Core

Started by Keoni29, November 22, 2014, 11:15:53 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Keoni29

Hero Core
TIMID - Compatible
By keoni29 (PC original by Daniel Remar)

About:
Daniel Remar, the creator of the PC original, said it was all right to port his game and he'd like to see it on a calculator.
That was back in 2011 and my Hero Core port is still not finished :-[ I recently started working on it again. This video shows what progress I have made.





To do:

- Health, injure & overheat (100%)
- Blade (cut away dirt and pipes that are in the way)(100%)
- New tile system (100%)
- TestWorld (25%)
- Enemies & AI (70%)
- Bosses (10%)
- Player controls (80%)
- Pause screen w/ map and settings (40%)
- Tile graphics (80%)
- World map (10%)
- Music  (music only for soundchip users)
- Soundeffects from the I/O port (60%)
- Events, doors etc. (0%)
- Map screen (50%)
- Save progress (0%)

Features for upcoming build:
+ Sound effects enabled (it was in the previous build, but they were not enabled)
+ New tile-system allowing for some optimizations and easier expansion of the tileset
+ New tiles including: Doors, Barriers
+ New animated tiles: Liquid metal cascade
+ Weapon and shield upgrade pickups
+ Collision checking for tiles in adjacent rooms prevents you from getting stuck in solid tiles that are in another room. It also allows for some pretty interesting level design. (e.g. one-way passageways with destructable tiles)
+ Larger test world to contain it all
* Fixed memory leak which was causing ram clears.
* Fixed animation bug

Download newest version
If you like my work, why not give me an internet?

pimathbrainiac

Nice as always. Do you think you are going to rewrite the code to TIMID now that arTICL is out?
Well, I'm bach here too!

Keoni29

I will not be using arTICL because I suspect it is a lot slower than the protocol TIMID uses. The calculator shifts out data via the linkport to the arduino and the arduino translates received bytes into sounds. I have not written a proper music player yet because I am focussing on getting the core engine done at the moment.
If you like my work, why not give me an internet?

pimathbrainiac

Ah okay. Good to know. I'll try to rebuild my TIMID when I have the chance to test stuff out.
Well, I'm bach here too!

Dream of Omnimaga

I was glad when I saw this was revived. It's really awesome and when I played it I was even more impressed, especially that stereo sound effect. The sounds reminds me a bit of Atari material, but they fits perfectly with the graphics you use.

Hopefully you can add music for 15 MHz calcs without requiring extra hardware. :)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

I might have stated this somewhere already: the whole game runs at 6MHz as of right now. I posted a topic on omni regarding interrupt-driven sound, but I have not got a single reply yet. I might ask calc84 about it.
If you like my work, why not give me an internet?

Dream of Omnimaga

Aah ok. Does the 6 MHz mode supports sound at all?
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

novenary

Hmmm I should totally build a TIMID too. There's an electronics store next to my place that carries Arduinos (though they're kind of expensive but here taxes on electronics are insane).

Nice to see some progress too. :)

Keoni29

This will work on an Arduino Nano as well. Those are dirt-cheap, but they often use fake Serial->Usb chips, so they might not always work as expected.
If you like my work, why not give me an internet?

novenary

Ah nice. I might even be able to port my GameCube modchip to that and free up my raspberry pi for other things lol (and not have stuff hanging outside the back of my GC :P).

Keoni29

#10
I am working on the new tiles system at the moment. I added a ton of new animated tiles. There's this annoying bug that breaks the animation: it does not display the right tiles and it only animates 1 frame. Once I have figured out why and fixed it I can move on to doing other stuff.

Next I want to implement doors that open when a room is cleared.

Edit: Tiles are animated correctly now :D Now I just have to modify some bits of code to make the cut ability work again.
If you like my work, why not give me an internet?

Dream of Omnimaga

Good luck! Btw how hard is it to only animated a part of a tilemap? I always wondered if the tileset needed the exact same amount of frames for each tile than the animated ones to avoid slowdowns?
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

With the old tile system all animated tiles had the same number of frames and all other tiles just had 1 tile. With the new system you can set the animation length of each tile in the set.

I draw the non-animated tiles once on the back buffer and I just copy that to the front buffer every frame. The animated tiles and sprites are drawn on top. This saves me a clrdraw and a lot of tile drawing.
If you like my work, why not give me an internet?

Dream of Omnimaga

Ah right I see now. With all tiles having the same number of frames this can waste a crapload of space for nothing. This is why I was always relunctant about using animated tiles in my games before. Does your new way slow things down though?

Also off-topic, but one image in your first post is broken. If I try accessing it it gives an error on Omni saying I am not allowed to access this section. Is it copied from a very old post with broken Omni ID links? SMF can be annoying with attachmeents sometimes when a topic gets moved or the ID changes.
Quote from: keoni29 on November 22, 2014, 11:15:53 PM
Hero Core

By keoni29 (PC original by Daniel Remar)
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

#14
I don't think it slows it down much since I only update animated tiles once every 8 frames and not all tiles are animated. It uses very few cycles compared to redrawing the entire room every frame.

Quote from: DJ Omnimaga on November 24, 2014, 06:08:27 PM

Also off-topic, but one image in your first post is broken. If I try accessing it it gives an error on Omni saying I am not allowed to access this section. Is it copied from a very old post with broken Omni ID links? SMF can be annoying with attachmeents sometimes when a topic gets moved or the ID changes.
Oh that must have been something to do with timid compatibility. I put text there instead. If we use images/links to omnimaga they can see codewalr.us in the access logs by the way :P
If you like my work, why not give me an internet?

Powered by EzPortal