* WalrusIRC

You need to have 5 posts and not be part of restricted usergroups in order to use the WalrusIRC embedded shoutbox. However, you can also access our IRC channel called #CodeWalrus via EFnet.

Author Topic: Hinawa Battle Engine  (Read 8647 times)

0 Members and 1 Guest are viewing this topic.

Offline Duke "Tape" Eiyeron

  • Urist McEiyolobster
  • Super User
  • Join Date: Nov 2014
  • Location: (V)(-_(//));(V)
  • Posts: 1636
  • Post Rating Ratio: +11/-2
  • Fanciest Walrus of the oceans.
    • @@Eiyeron
    • Eiyeron
    • /u/Eiyeron
    • Eiyeron
    • View Profile
    • Rétro-Actif : Rétro/Prog/Blog
  • Gender: Male
Hinawa Battle Engine
« on: November 25, 2014, 07:51:15 pm »
Hello everyone. I won't introduce again this project I have. Yes? You still want? Okay.
My projects are most of the time remakes or reproducing mechanisms of games I loved. I started programming (on calcs and on Casio) by trying to port Pokémon Gen I battle engine To Casio AFX2.0/Graph100+. I got through some projects in the same branch, but another one (almost finished) stood up : Bust-a-Move. All of them are past. Now, I'd like to program something. A project way more complicated but that could open (at least to me) to new games. I'd like to reproduce for starters the battle engine of Mother 3 and Earthbound.

This battle engine is a semi turn based classic RPG battle engine. You ahve your party, the enemy's. each one decide its actions for the turn and the turn is going on its way. THat could be just a simple project, but here's the tweak in three(four if you count & as one) words : Modularity & Open Source.

Modularity

Modularity means that the engine should be an independant part of bigger projects. Only some functions will be needed to set up the engine and run it. I'm still planning a lot of the structure and having many design difficulties (shmibs will talk of exeprience after reading the first version's C code...) but I want it to be most clear possible to be hackable by everyone who has some good C/Axe programming skills.

Modularity means too OCP (Open/Closes Principe). I' like it to support a event system and scripted IA which could add a deeper experience to the battles. I'd like at least to be able to reproduce all the quirky events of said games (like self-exploding trees at their death, the textbox in [REDACTED]'s battle, etc...) but that's not really a critical feature.

In the end, modularity means grouping the code in modules to be able to swap them. The most important instances of this meaning here are graphism and I/O (and audio? I dreamt of a thing months ago, but that's still a dream T_T). Graphism and I/O code should be engine independant. I'd like to run the engine on computer as well as calculators. For that, lots of think are being spent on how to  split the graphic data from the engine's. that's not an easy task, i.e. Casio FX-9860 are using 2-bits sprites where Black are 1 and 0 White. If someone were to use directly these functions in, lets' say SDL, that won't certainly work unless big ugly hacks are done. So graphism should too be a independant part to be free of using whatever is needed by the target. Same for file I/O or input management. That also brings a problem : where to put the UI? Graphism module? Input Module? Battle Engine?

Open Source.

Before talking about open source, there should at least be source code. The project started on calc with Axe Parser as I only had that at my hand. The code became quickly as unreadable as ancient dwarf arcanes. Forget about reading it, it has little sens to begin with. I ported the knowledge I had on HBE to C and tried to make a clean basis with Casio Fx-9860 in mind. Second failure, I got cold scoled by Shmibs and I realized that if there were more sense to my eyes, it wouldn't be the same for the others.

So now, I'm clampled to wonder and ponder. Ponder the open source from beginning, wonder how the source code should be structured. Ponder the feasability of the project, wonder if I should ask for help as I already tried in vain. I don't want it to be just lost time into a unborn project. I'd like to have better feedback from anyone with enough experience to tell me how parts of the project could be done without being taken as an inexperimented programmer. I'd like to see who are interested into this heavy project and how much they are. I'd like in the end to see one of my game project plan to be achieved with this engine and maybe other people using it.

So at this moment, I store a repository in a GitLab repo. If anyone wants to mess with the few headers I have at the moment, feel free to poke me and I'll make the repo public or allow you to mess around.


So yeah, so much for a simple calculator project. Something that everyone could do, but I want to do it in a way that lot of peoples would be able to help or improve. That's the real meaning behind this project. (That and the fact I'm more and more thinking about a real calc -or not- game behind that.) Thanks for reading it.

At the demand, here is the last prototype version screenshot to date :
** the link was brocen and redirected to NSFW ads. Removed it**
Let's hope that I (or we?)'ll get to something better than that.

edit: p2 removed NSFW link
« Last Edit: November 29, 2016, 12:20:35 pm by p2 »


  • Calculators owned: A lot.

Online DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18179
  • Post Rating Ratio: +91/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #1 on: November 25, 2014, 09:48:41 pm »
I remember seeing this on Omni and Twitter and I'm glad it's still alive. A Mother clone would be nice on calcs. :) Also you should put some screenshots in here. :P
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Duke "Tape" Eiyeron

  • Urist McEiyolobster
  • Super User
  • Join Date: Nov 2014
  • Location: (V)(-_(//));(V)
  • Posts: 1636
  • Post Rating Ratio: +11/-2
  • Fanciest Walrus of the oceans.
    • @@Eiyeron
    • Eiyeron
    • /u/Eiyeron
    • Eiyeron
    • View Profile
    • Rétro-Actif : Rétro/Prog/Blog
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #2 on: November 25, 2014, 10:05:04 pm »
Here is a screenshot of the project. As you can see, it's the only thing I made from the refactor. I can't get to something better yet...
Actually, the project even has a document generator set for later. It'll help watching or learning the structure and force me into making documentation as I like docs.
  • Calculators owned: A lot.

Online DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18179
  • Post Rating Ratio: +91/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #3 on: November 26, 2014, 03:20:09 am »
Oh I meant the old calculator screenshots :P (with the awesome animated battle backgrounds :D)
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Duke "Tape" Eiyeron

  • Urist McEiyolobster
  • Super User
  • Join Date: Nov 2014
  • Location: (V)(-_(//));(V)
  • Posts: 1636
  • Post Rating Ratio: +11/-2
  • Fanciest Walrus of the oceans.
    • @@Eiyeron
    • Eiyeron
    • /u/Eiyeron
    • Eiyeron
    • View Profile
    • Rétro-Actif : Rétro/Prog/Blog
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #4 on: November 26, 2014, 06:12:32 am »
Oh well if you want so I could still add them back but they could fool other people as the result is obviously not the same anymore.

EDIT : Added a TI screenshot.
« Last Edit: November 26, 2014, 09:53:19 pm by Eiyeron »
  • Calculators owned: A lot.

Online DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18179
  • Post Rating Ratio: +91/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #5 on: November 26, 2014, 10:13:24 pm »
Until your edit, after reading your post I got worried you meant that you dropped the TI version >.<. I hope it remains alive. Btw C is possible on the 84+, using SDCC. AHelper0 uses it.
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Duke "Tape" Eiyeron

  • Urist McEiyolobster
  • Super User
  • Join Date: Nov 2014
  • Location: (V)(-_(//));(V)
  • Posts: 1636
  • Post Rating Ratio: +11/-2
  • Fanciest Walrus of the oceans.
    • @@Eiyeron
    • Eiyeron
    • /u/Eiyeron
    • Eiyeron
    • View Profile
    • Rétro-Actif : Rétro/Prog/Blog
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #6 on: November 26, 2014, 10:18:39 pm »
Yeah, but how much memory does a C TI program have? 20 KB? I don't even know if that'll be squeezable in a TI. At least i'll do a ligt version for TI, like no events management, with dynamic loading or something in these ideas to got around the 6KB file limit. At this time, the Casio addin weights already 3KB (if I don't count the ~1KB header)... And I just had some sprite blitting routine test.
  • Calculators owned: A lot.

Online DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18179
  • Post Rating Ratio: +91/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #7 on: November 26, 2014, 10:31:56 pm »
I don't remember how much, but AHelper0 was working on an entire TI-OS using C. If he can do a full OS in C then you can probably circumvent memory limits (maybe a Flash APP?).

C isn't ideal for Z80 processors, though, so I'm unsure if it would be as optimized as in Axe.

Also the file limit in ASM was 8 KB not 6 and ZStart gets rid of it.
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Duke "Tape" Eiyeron

  • Urist McEiyolobster
  • Super User
  • Join Date: Nov 2014
  • Location: (V)(-_(//));(V)
  • Posts: 1636
  • Post Rating Ratio: +11/-2
  • Fanciest Walrus of the oceans.
    • @@Eiyeron
    • Eiyeron
    • /u/Eiyeron
    • Eiyeron
    • View Profile
    • Rétro-Actif : Rétro/Prog/Blog
  • Gender: Male
Oh well, it's been a hard day so
« Reply #8 on: December 01, 2014, 04:56:42 pm »
Unfortunately, the accident I had with Manjaro and my portable hard drive made me had to migrate to a x86_64 Manjaro with my laptop's drive. So I have to recompile GCC again.... That's pretty lame but well... So, I wonder if I continue on calc or if I try with a graphical lib like SDML or SFML. In the end, input managment and graphics will be out of the engine, so...

100 posts :w00t:
  • Calculators owned: A lot.

Online DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18179
  • Post Rating Ratio: +91/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #9 on: December 02, 2014, 08:34:21 am »
Sorry to hear. At first I was scared you lost all your projects or something when I started reading, and I'm glad it's not the case. Good luck with whatever you decide. :)
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Duke "Tape" Eiyeron

  • Urist McEiyolobster
  • Super User
  • Join Date: Nov 2014
  • Location: (V)(-_(//));(V)
  • Posts: 1636
  • Post Rating Ratio: +11/-2
  • Fanciest Walrus of the oceans.
    • @@Eiyeron
    • Eiyeron
    • /u/Eiyeron
    • Eiyeron
    • View Profile
    • Rétro-Actif : Rétro/Prog/Blog
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #10 on: December 02, 2014, 03:55:11 pm »
My love for Git saved me! :p Remember kiddos, backup & versionning will save you one day or another, it worth the pain of learning how to do them!
  • Calculators owned: A lot.

Online DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18179
  • Post Rating Ratio: +91/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #11 on: December 02, 2014, 10:55:12 pm »
Indeed. I don't use Git because during my programming days I was "raised" without it and I am not fond of changes, so I stuck to my old ways of backing my stuff up myself. I also remember some people who lost progress about 10 times on calc projects in the past, yet never learned from their mistakes. >.<
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Duke "Tape" Eiyeron

  • Urist McEiyolobster
  • Super User
  • Join Date: Nov 2014
  • Location: (V)(-_(//));(V)
  • Posts: 1636
  • Post Rating Ratio: +11/-2
  • Fanciest Walrus of the oceans.
    • @@Eiyeron
    • Eiyeron
    • /u/Eiyeron
    • Eiyeron
    • View Profile
    • Rétro-Actif : Rétro/Prog/Blog
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #12 on: December 03, 2014, 06:58:01 am »
Or just plainly lose the game itself (the two meanings are intended).  ;)
  • Calculators owned: A lot.

Online DJ Omnimaga

  • Omni founder & CW co-founder
  • CodeWalrus Staff
  • Super User
  • Forum Maintenance
  • Original 5
  • CodeWalrus Supporter
  • *
  • Topic Management
  • Join Date: Nov 2014
  • Location: Quebec, Canada
  • Posts: 18179
  • Post Rating Ratio: +91/-4
    • dj_omnimaga
    • DJOmnimaga.music
    • @DJOmnimaga
    • dj_omnimaga
    • @DJOmnimaga
    • /u/DJ_Omnimaga
    • DJOmnimaga
    • 112/11286
    • @djomnimaga
    • @DJOmnimaga
    • View Profile
    • DJ Omnimaga music store
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #13 on: December 03, 2014, 07:25:37 am »
Yeah that's what I meant (not the other meaning that just made me lose, though <_<). I once lost an entire RPG project (with hundreds of hours from work) due to lack of backups but back then I had no way to back my files up, so it was out of my control.
  • Calculators owned: TI-73, TI-80 (broken), TI-81, TI-82, TI-83, TI-83+ (broken), TI-83+ (broken), TI-83+SE (broken), TI-84+, TI-84+CSE, TI-84+CE, TI-85, TI-86, TI-89T, TI-92, TI-Nspire, TI-Nspire CX (semi-broken), HP 39gII, HP Prime, Casio fx-7000G, fx-7400G+, fx-7700GE, fx-9750G+, fx-9750GII, fx-9860G, cfx-9850G, FX-1.0+, fx-CG10, fx-CP400
  • Consoles, mobile devices and vintage computers owned: Samsung i5510, Nexus 5, Atari 2600, Lynx, SMS, Game Gear, Genesis, Dreamcast, NES, SNES, N64, GCN, Wii, Wii U, GBA, DS, 3DS, PS2, PS3, PS4, PSP, PSVita, XBox 360, XBOne

Bandcamp|Reverbnation|Facebook|Youtube|Twitter
Retired Omnimaga admin (2001-11) and editor (2012-14)
??? ??? ??? ???

Offline Streetwalrus

  • Professional slacker
  • CodeWalrus Staff
  • Super User
  • Server Maintenance
  • Original 5
  • Join Date: Nov 2014
  • Location: Israel
  • Posts: 2854
  • Post Rating Ratio: +20/-0
  • ƎW∀⅁ ƎH⊥
    • View Profile
  • Gender: Male
Re: Hinawa Battle Engine
« Reply #14 on: December 03, 2014, 10:59:34 pm »
Awww that sucks DJ. :c
  • Calculators owned: TI-80, HP 40G, TI-84 Plus rev G (yay 128k RAM), TI-83 Plus Silver Edition (broken LCD), TI-82 Stats.fr (black), TI-Nspire CX rev C (yay Nlaunchy), TI-83+ SE ViewScreen



 


You can also use the following HTML or bulletin board code to share it on your page or forum signature!


Also do not forget to check our affiliates below.
Planet Casio TI-Planet Calc.news BroniesQC BosaikNet Velocity Games