Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: calc84maniac on November 04, 2013, 12:16:18 am

Title: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 04, 2013, 12:16:18 am
So, for a while now I've been working on a secret project (or perhaps not-so-secret if you've been on IRC at the right times). This is a clone/remake of the 8-bit sequel to the Steins;Gate anime/visual novel. Even though it's a non-canon spinoff, it does contain major spoilers for the original Steins;Gate story. It might not make sense unless you've watched/played Steins;Gate, which I highly recommend doing! (The anime is available for purchase or streaming online, and the visual novel is available for preorder here (http://steins-gate.us/)).

The game I'm cloning (http://vndb.org/v9887) is meant to emulate the environment of old 8-bit computers in an old-school text adventure, which includes the low color depth and legacy sound hardware. The original game allowed selection of 6 different computers to emulate, each with slightly different graphics and music arrangements, but this port I'm simply basing on the TI-84+CSE constraints. I've included vector graphics display with 8-bit color as well as sound output through the I/O link port, using one of the simpler arrangements from the original game (this can be enabled through the options menu).

The demo available here (http://www.omnimaga.org/index.php?action=downloads;sa=view;down=869) contains the entire first segment of the game up until the opening credits, which should be the length of the free demo of the PC version. This includes 9 background music tracks (out of 18 total) and 16 different CG images, as well as 3 different endings. Just send the app to your TI-84 Plus C Silver Edition, and off you go!

Spoiler For Controls:
Any time:
MODE: Open pause menu

Menu:
Up/Down: Move selection
2ND/ENTER: Select/change option

Command entry (this stuff should be intuitive, but it's here just in case):
ALPHA: Press to switch between letter and number entry
2ND: Hold to type capital letters or switch predefined commands
F1-F5: Paste a predefined command (as shown onscreen)
Letters/Numbers: Type characters
Left/Right: Move cursor
Up/Down: Recall previous entries
DEL: Delete a character
CLEAR: Delete all characters
ENTER: Submit command
Spoiler For Command tips:
Here are some tips when entering commands in the game, because it can be slightly confusing. I've tried to make this version a bit more lenient than the original game as to what commands you can enter, but it helps to have the text adventure mindset.

There are usually three rules that valid commands follow:
1) If you want to move in a direction, simply type the direction. (left, right, front, back, up, down, etc.)
2) If you want to perform an action, simply type the action. (look, talk, eat, etc.)
3) If you want to perform an action on a certain object, type the action then the object. (look poster, kick can, etc.)
Spoiler For Using audio output:
In order to listen to the music in the game, you will need either a 2.5mm male to 3.5mm female adapter to plug in headphones to the I/O port, or else a pair of headphones that has a 2.5mm jack.

You will also need to enable audio output through the in-game options menu. You can either enable music only or both music and text sound effects, depending on your preference.
Obligatory screenshots:
(http://otbp.tifreakware.net/images/sg000.png) (http://otbp.tifreakware.net/images/sg001.png)
(http://otbp.tifreakware.net/images/sg002.png) (http://otbp.tifreakware.net/images/sg003.png)

Edit: Uploaded demo to archives.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 04, 2013, 12:37:30 am
O.O

Looks like I'll be busy more playing CSE games than coding in the next day or so. Also I was shocked at how fast vectorials and flood filling was in the Youtube vid a while ago, despite some of these scenes being so detailed.. O.O

So yeah I know that the TI-84 Plus C Silver Edition is very limited in terms of speed (since it's a 15 MHz Z80 with a 16 bits 320x240 LCD display) and that if programmed correctly, games can still run at very fast speed, but now you truly pushed things 1000 times further. Not to mention the small game size despite the detailed graphics. If you used bitmaps for this, the game would have been several times larger.

On top of that, this is the only calculator game (other than the TI-Boy SE emulated games) to have sound quality similar to the 8 bit consoles. Every other calc game only had small beeps worse than the Atari 2600.

Here's a Youtube video of the demo (running on a real calc. I plugged a cable from the calc into my mic port for better sound quality):



Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Juju on November 04, 2013, 12:40:00 am
That looks really awesome for a TI calc game, especially considering the fact the 84+CSE is fairly new and it has music.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 04, 2013, 01:56:16 am
I just uploaded a video on Youtube now. See post above for it.

EDIT: Btw, for those with no 2.5mm adapter, there is also the good ol' AM radio trick (tune in a channel with just static and place the calc near the radio). The sound quality will be bad, though.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Keoni29 on November 04, 2013, 03:05:44 am
I haven't even heard music this good in regular 84+ games :o Great job! Are the sound routines compatible with the monochrome models?
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Sorunome on November 04, 2013, 07:58:27 am
Wow, that just looks awesome! O.O
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 04, 2013, 09:33:32 am
I haven't even heard music this good in regular 84+ games :o Great job! Are the sound routines compatible with the monochrome models?
Yeah, they should be (at least with the 15MHz models).

I just uploaded a video on Youtube now. See post above for it.
Thanks DJ, looks great!
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: JosJuice on November 04, 2013, 10:48:23 am
I think you just made me want a CSE. Oh well, I might be able to borrow one from a classmate a little :P

Seriously, the music just sounds... unreal. When watching DJ's video, I couldn't even recognize that that was supposed to be coming from a calc.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: tifreak on November 04, 2013, 11:07:08 am
Fantastic bit of work! Hope to see more soon :)
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: ElementCoder on November 04, 2013, 11:11:57 am
You got that out of a calculator o.o This is amazing :thumbsup: You're really pushing me to get a CSE now :3
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Sorunome on November 04, 2013, 11:35:30 am
You got that out of a calculator o.o This is amazing ;D(http://www.omnimaga.org/Themes/default/images/gpbp_arrow_up.gif) You're really pushing me to get a CSE now :3
You just have to win the contest :P
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 04, 2013, 11:44:48 am
I think you just made me want a CSE. Oh well, I might be able to borrow one from a classmate a little :P

Seriously, the music just sounds... unreal. When watching DJ's video, I couldn't even recognize that that was supposed to be coming from a calc.
Yeah I was shocked when i heard the music. Even Project M music quality wasn't even close to this good and TI-Boy SE music pitch just constantly changed due to the emulator slowing down.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: chickendude on November 04, 2013, 03:33:30 pm
I love the music, i could just listen to the game instead of my mp3 player ;)

This looks great, calc84maniac!
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Keoni29 on November 04, 2013, 03:38:23 pm
I haven't even heard music this good in regular 84+ games :o Great job! Are the sound routines compatible with the monochrome models?
Yeah, they should be (at least with the 15MHz models).

I just uploaded a video on Youtube now. See post above for it.
Thanks DJ, looks great!
Can you publish the source for that? Maybe make it into an axiom :D
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Juju on November 04, 2013, 03:51:31 pm
I haven't even heard music this good in regular 84+ games :o Great job! Are the sound routines compatible with the monochrome models?
Yeah, they should be (at least with the 15MHz models).

I just uploaded a video on Youtube now. See post above for it.
Thanks DJ, looks great!
Can you publish the source for that? Maybe make it into an axiom :D
That would be pretty cool if someone makes a tracker or something that can produce such music and an axiom that can take the output of said tracker.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Keoni29 on November 04, 2013, 03:54:09 pm
*whispers something about TRAXE*
TRAXE is a tracker I made a while ago. It is built around the freq( command, so it's monophonic right now. I could modify it to be polyphonic or just write a new tracker from scratch (probably easier)
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: AssemblyBandit on November 04, 2013, 05:23:01 pm
That vector drawing is pretty amazing!
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Hexatron on November 04, 2013, 05:31:22 pm
This is awesome. May I ask how you interpret strings (take, eat, etc.)?
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 04, 2013, 06:30:10 pm
This is awesome. May I ask how you interpret strings (take, eat, etc.)?
Well, it's pretty much a giant switch/case block (implemented in my scripting language). The "cases" are strings that will either match or not match, and it supports optional words and such. This is one way I've tried to improve on the original game, by adding more possibilities to type in, using the flexibility of the matching algorithm.

Here's a concrete example:
{go |walk }u{p}{{ {the }}stair{s}}
Phrases in brackets are optional, so this will match any of the following phrases (and many more):
go upstairs
go up the stairs
walk up stairs
walk up
upstairs
up
u
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Keoni29 on November 04, 2013, 06:48:41 pm
That is pretty cool. I thought you just tokenized the string.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 04, 2013, 07:39:14 pm
I wonder, calc84maniac, if you ever considered doing a TI-Nspire and HP Prime version of this at one point? Of course, I don't know if Lua and HP PPL would be fast enough for vector graphics, but maybe in C/ASM (assuming the HP Prime ever gets C/ASM support)? You could even have double buffering and introduce animations in each scenes where the camera moves around. :P
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 04, 2013, 07:43:09 pm
I wonder, calc84maniac, if you ever considered doing a TI-Nspire and HP Prime version of this at one point? Of course, I don't know if Lua and HP PPL would be fast enough for vector graphics, but maybe in C/ASM (assuming the HP Prime ever gets C/ASM support)? You could even have double buffering and introduce animations in each scenes where the camera moves around. :P
Nah, those systems aren't 8-bit enough to be worthy of a port :P
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 04, 2013, 08:00:44 pm
Lol, but still, it would be nice I guess. I get what you mean, though. :P
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: TIfanx1999 on November 05, 2013, 12:20:37 am
Wow, just wow... Calc84... I've come to expect great things from you, but this is fantastic! How did you manage such sound quality? How many channels does it support? O.O
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 05, 2013, 12:23:56 am
Yet this only gets 6 downloads on ticalc.org because it's not called Mario... <_<
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 05, 2013, 12:45:10 am
Wow, just wow... Calc84... I've come to expect great things from you, but this is fantastic! How did you manage such sound quality? How many channels does it support? O.O
I was able to get this sound quality by using a sample-based approach, along with buffered audio. I'm able to fairly efficiently buffer a segment of audio in advance while the other buffer is being played via interrupts, then use whatever CPU time is left over for the rest of the game's processing. I'm supporting 3 channels since that's what the music in this game requires and it keeps the CPU usage at a reasonable level. It can play either 3 square waves or 2 square waves + 1 white noise.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Keoni29 on November 05, 2013, 03:31:08 am
Yeah I was thinking about the double buffered approach once too, but in AXE interrupts are not fast enough to get high-pitched sound out of a calculator.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Sorunome on November 05, 2013, 05:29:49 am
Yet this only gets 6 downloads on ticalc.org because it's not called Mario... <_<
People just don't expect such awesome things on a calculator and thus don't search for it :P
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Phero on November 05, 2013, 07:11:08 pm
Yet this only gets 6 downloads on ticalc.org because it's not called Mario... <_<

Great art is seldom appreciated by the masses :)
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Juju on November 05, 2013, 08:01:56 pm
Maybe the Steins;gate fandom will appreciate it. I posted it on Tumblr and it got 12 notes (reblogs/likes), which is not bad for my blog.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 05, 2013, 11:01:38 pm
I guess it just needs to get attention on a popular site where anime-related games aren't too much of a niche.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Streetwalrus on November 08, 2013, 03:39:22 pm
OMG *.* This is freaking awesome. I see you pushed this calc to it's limits here. :D/me wants
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Keoni29 on November 08, 2013, 06:01:25 pm
With this engine so many visual novels could be made in the future. Assuming the story is not hardcoded...
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: mdr1 on November 10, 2013, 05:59:37 am
Wow, the result is really impressive! If we could have it on TI-Nspire... Unfortunately, there's no source.
PS: Maybe a TI-84+CSE emulator on TI-Nspire ? :p
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Hayleia on November 10, 2013, 12:18:30 pm
I don't think that the source would be of any use to you, since it was written by calc84maniac. It is surely not exactly readable due to mad optimizations and various hacks. But I'm sure that if you ask for the source he'll give it to you.

edit
PS: Maybe a TI-84+CSE emulator on TI-Nspire ? :p
Would be great indeed. But even monochrome z80 calcs didn't have a complete emulator (I don't know if Jacobly still works on calcemu in secret) so I wouldn't expect an emulator for the color model anytime soon.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: chickendude on November 10, 2013, 07:28:16 pm
I think the source is always useful, even if you don't understand everything. I think most of us learned how to program our calcs by playing with other's sources (and asking questions), even if we didn't quite understand what everything did. I'd really like to learn more about how vector graphics work. Besides, we'll never learn how those "mad optimizations" work if we never see them ;)

Btw, where are the music tracks from? Did you write them, calc84maniac? Or are they taken from the original game? They're super catchy...
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 11, 2013, 01:11:37 am
I think the source is always useful, even if you don't understand everything. I think most of us learned how to program our calcs by playing with other's sources (and asking questions), even if we didn't quite understand what everything did. I'd really like to learn more about how vector graphics work. Besides, we'll never learn how those "mad optimizations" work if we never see them ;)

Btw, where are the music tracks from? Did you write them, calc84maniac? Or are they taken from the original game? They're super catchy...
I may perhaps release the source code eventually. Though I'd probably do that for the audio engine first, if anything, splitting that into a separate project. And the music tracks are indeed from the original game.

On another note, I've now released Version 0.2! This adds the second scenario to the game, as well as savegame support (plus fixing a few things). I've also included a new build of the original demo scenario with the current engine. You can download it here (http://www.omnimaga.org/index.php?action=downloads;sa=view;down=869).
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Keoni29 on November 11, 2013, 03:12:05 am
I may perhaps release the source code eventually. Though I'd probably do that for the audio engine first, if anything, splitting that into a separate project. And the music tracks are indeed from the original game.
Cool :D I'd be happy to add music to my games using that engine. TIMID is a bit behind on schedule. Every time I pick up that project again something in the source is broken :P
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 11, 2013, 04:49:59 pm
404 not found D:

Remember that Omni download updates no longer work, so you now must attach your file in a post, then upload a link to it rather than the file itself in the upload form.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 11, 2013, 11:47:52 pm
404 not found D:

Remember that Omni download updates no longer work, so you now must attach your file in a post, then upload a link to it rather than the file itself in the upload form.
All right, now that ticalc's updated it I just sent the link there. It should work now.

Also, I made a new gameplay video (the text sound effects are noticeably better than in the last demo, I'd say):
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 12, 2013, 01:54:42 am
Nice, you should maybe add a link to this topic in the vid description, though, for people who want to discuss it. :P
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Sorunome on November 12, 2013, 05:42:38 am
Maybe a demo vid of this could be uploaded to omnimagatv? :3
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 12, 2013, 12:14:25 pm
Yeah it would be nice. What I wish, however, is that there was an emulator that supported both sound and 84+CSE graphics (currently, they are messed up in jsTIfied). I know that TilEm supports sound, but not the Windows version IIRC and I don't know how reliable 84+CSE emulation is.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 12, 2013, 01:29:58 pm
Yeah it would be nice. What I wish, however, is that there was an emulator that supported both sound and 84+CSE graphics (currently, they are messed up in jsTIfied). I know that TilEm supports sound, but not the Windows version IIRC and I don't know how reliable 84+CSE emulation is.
Well, currently this game at least looks fine in jsTIfied, because it doesn't use any fancy LCD features and simply runs at full resolution. Though, until just a moment ago I could never get it to run in jsTIfied because of a glitch in my app header. This glitch also apparently makes the application randomly self destruct because the OS suddenly decides it's not valid. I've just uploaded a fix (v0.21) which should hopefully go live soon. The app is identical in all other ways, so there's no immediate need to update unless you're running into the app self-deletion issue.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Sorunome on November 12, 2013, 04:31:24 pm
you should leave it in there for the lulz :P

Anyways, nice you could fix some issues :)
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on November 13, 2013, 03:48:25 pm
Speaking of fixing issues, I've now fixed a glitch where the calculator could randomly crash when entering in an invalid command. (Talk about harsh penalties! :P) The fix is now uploaded as Version 0.22, same bat-time, same bat-channel.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on November 13, 2013, 04:24:35 pm
Ah right, that might be the glitch I ran into sometimes. I remember the calc shutting down for no reason after trying some random commands, since I was stuck
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on December 18, 2013, 09:37:33 pm
Now I've released Version 0.30 (http://www.omnimaga.org/index.php?action=downloads;sa=view;down=869)! This version adds another scenario to the game, fixes some glitches and script errors, and improves the accuracy of the image conversion.

Screenshot from the new scenario:
(http://otbp.tifreakware.net/images/sg005.gif)

Graphical accuracy improvements (old -> new):
(http://otbp.tifreakware.net/images/sg002.png) (http://otbp.tifreakware.net/images/sg002.gif)
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: tr1p1ea on December 19, 2013, 03:34:47 pm
Yeah, thats what im talking about! :).

Nice work as always.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Hexatron on December 19, 2013, 04:58:36 pm
I love seeing the progress of this game! Good luck for the future!
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: pimathbrainiac on December 20, 2013, 08:01:56 pm
Could it be possible to make a scaled-down monochrome version of this? It looks interesting and I want to play it, but I don't have a CSE.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on December 21, 2013, 01:06:45 am
Could it be possible to make a scaled-down monochrome version of this? It looks interesting and I want to play it, but I don't have a CSE.
Technically, yeah it should be possible. Most sections of text displayed would have to be split up, though, since I really can't display as much on the screen at once. I could cut out the lower part of the image to make more room for text, though (which is actually what the original game did; the CSE version has the bonus of having the full image displayed along with the text).
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: fb39ca4 on December 21, 2013, 01:17:31 am
This is how it should be.  ;D
Could it be possible to make a scaled-down monochrome grayscale version of this? It looks interesting and I want to play it, but I don't have a CSE.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on December 21, 2013, 01:20:47 am
This is how it should be.  ;D
Could it be possible to make a scaled-down monochrome grayscale version of this? It looks interesting and I want to play it, but I don't have a CSE.
Heh, true enough. It would be interesting to see how well that would work along with sound output, though. On the other hand, the polygon rendering might lend itself well to dithering for "colors" in monochrome. I think there's a monochrome computer selectable in the original game that does just that, but of course it's much higher than 96x64 resolution.
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: calc84maniac on April 27, 2014, 02:53:23 pm
Now I've uploaded Version 0.40 (http://www.ticalc.org/archives/files/fileinfo/456/45667.html)! I've added the fourth scenario, and I believe this means I'm a little over halfway done.

Prepare for MayQueen+Nyan2:
(http://otbp.tifreakware.net/images/sg006.gif)

Also, as a PSA, the original Steins;Gate visual novel is now out in English for PC! More information is available at http://steins-gate.us/ (http://steins-gate.us/).

The limited edition is out of stock, but the download edition is available now for $39.95. Alternatively, the standard package edition is coming out within the next couple of weeks, and Rightstuf (http://www.rightstuf.com/rssite/action/store/item/Item?ItemName=sg001se) seems to have the best deal on it at $31.96. Also, the publisher is hoping to eventually publish the game on Steam; negotiations for that are in progress with the Japanese developers currently.

I got the Limited Edition about a month ago, and I can highly recommend it! It's a wild ride, and one of the best time travel adventures I've ever encountered. I've clocked in over 40 hours on it, and I still haven't reached all of the endings. I want this game to sell as well as possible so we can get more localized Science Adventures. ;)
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Sorunome on April 27, 2014, 02:55:50 pm
Ui, nice, a update! :D
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: DJ Omnimaga on April 27, 2014, 02:57:18 pm
Awesome and I always love those detailed pics O.O
Title: Re: Steins;Gate 8-Bit (TI-84+CSE)
Post by: Streetwalrus on April 29, 2014, 12:34:42 pm
Yay nice to see another update. :D