Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: Hot_Dog on November 29, 2012, 09:36:52 pm

Title: Slova -- A language-learning game
Post by: Hot_Dog on November 29, 2012, 09:36:52 pm
I always enjoyed the game Word Rescue when I was a kid, and it inspired me to make a game that will help me learn Russian -- or that will help other people learn Spanish, French, you name it!

Slova (the Russian word for "word") is a game that helps you learn vocabulary in a language of your choice.  It will be completely open source to make this possible.

Story:

Spoiler For Spoiler:
It has been 15 years since the events in Word Rescue, when the gruzzles stole words from books to keep people from reading..  You are now a fully grown adult, and the gruzzles have other plans -- world domination!  They figure that the best way is to do this is doing what they're best at -- stealing words.  If they can steal words from language books, nobody will learn how to communicate with each other, and within 10 years the gruzzles plan to take over Earth.  The gruzzles are cloaked, and no one has any idea what's happening.


Benny Bookworm, your friend from Word Rescue, is retired in Hawaii, and nowadays he doesn't give a hoot about what the grizzles are planning to do.  So you have to take matters into your own hands.  Putting on a suit with a prototype cloak-detector, and arming yourself with nuclear weapons to kill those tough-armored gruzzles, you set out to save Earth from this newest threat...


In the game, you need to match English words to the words in the other language -- in this case you match English words to their Russian words.  When you match 7 pairs you can go to the next level.

Every time you collect a question mark you will receive a word in English.  Search for a "smiley face" with the Russian word that you think is correct.  If you find the correct word, you will score some points, and you will be one step closer to finishing the level.  If you find the incorrect word a gruzzle will appear.

For bonus points and more nukes, collect letters to form a "mystery word," as well as collecting all of the Kindle (c) book readers.



The game engine is finished.  I will continue to work on this game until I get bored of creating levels (or until I've created enough), after which I'll put in the finishing touches.
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on November 30, 2012, 07:18:43 am
Wow, Hot_Dog, this is great! I saw the post you made a while ago when you were thinking about this program and I am glad you have it done. We don't have many educational games in the TI community and I have not found any that look this fun. Well done, Hot_Dog :)

When you finish, let us know! I am sure there are people here who would like to port the game for other languages.
Title: Re: Slova -- A language-learning game
Post by: Juju on November 30, 2012, 08:06:27 am
Yay educational games! As Xeda said, there's pretty much nothing that exists other than what is made by TI themselves.

Also would it work with other languages? As in, I dunno a Japanese version where you try to match kanji?
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on November 30, 2012, 08:39:56 am
Yay educational games! As Xeda said, there's pretty much nothing that exists other than what is made by TI themselves.

Also would it work with other languages? As in, I dunno a Japanese version where you try to match kanji?

Do you mean matching English words to kanji equivalents?  I'm not 100% sure because I'm not familiar with the idea behind Japanese words.  However, I will say this:  This game works on the basis of custom fonts.  If kanji can be made into a font, it will work :D  Unless there's more than 150 characters :D
Title: Re: Slova -- A language-learning game
Post by: Juju on November 30, 2012, 10:53:07 am
Yay educational games! As Xeda said, there's pretty much nothing that exists other than what is made by TI themselves.

Also would it work with other languages? As in, I dunno a Japanese version where you try to match kanji?

Do you mean matching English words to kanji equivalents?  I'm not 100% sure because I'm not familiar with the idea behind Japanese words.  However, I will say this:  This game works on the basis of custom fonts.  If kanji can be made into a font, it will work :D  Unless there's more than 150 characters :D
Japanese uses something like 4 different alphabets, katagana, hiragana (46 characters for the two together, 71 with diacritics), latin (26 characters, mostly for stuff directly borrowed from English) and kanji (borrowed from China, tons of characters). For learning Japanese, you can easily stick to katagana and hiragana only since all words that use kanji can also be spelled using either alphabet. Then either you match English syllables with their Japanese equivalent (all Japanese characters can easily be mapped to an English consonant+vowel syllable) or you match full words with their English or Japanese-written-in-Latin equivalents.
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on November 30, 2012, 11:08:43 am
Ah, I see...well the idea is your font starts at ASCII 97 (lowercase A).  The Japanese characters would be mapped to these letters and special symbols in ASCII.  That would take a lot of work to create Japanese words, since you'd be stuck with lowercase letters and special characters.  (Though someone could modify the game so that a pair of English letters could create an equivalent Japanese character)
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 06, 2012, 03:52:55 pm
New screenshot!

In addition to the new tiles and new words, here's what I added/changed:

* Support for accent marks
* Gruzzles are slower.  On the other side of the coin, you start with fewer nukes.  So you have to get books and bonus words to be able to kill more gruzzles, and you have to pick and choose which ones to kill immediately.  (By the way, when you see the character lift his hands in the air, he's saying "I don't have any nukes!")
* If you select an incorrect word (the wrong Russian word for an English word, for example), a gruzzle will appear.

I do need to work on jumps.  On this map, gaps that you have to jump over are too big.  I need to make them smaller so that a player knows when and where to jump.  It's harder on a low-resolution screen :D
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 07, 2012, 01:58:28 am
* BUMP *
Title: Re: Slova -- A language-learning game
Post by: aeTIos on December 07, 2012, 03:51:10 am
Looks cool :D Though I can't test since my USB is broken D:
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on December 07, 2012, 07:44:15 am
Haha, that looks so nice o.o I am going to be trying to write a scrolling map engine if I get time this weekend, so I hope it looks nearly as good as that o.o
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 07, 2012, 07:53:18 am
Haha, that looks so nice o.o I am going to be trying to write a scrolling map engine if I get time this weekend, so I hope it looks nearly as good as that o.o

Actually I used Chickendudes.  (Thank you chickendude! :))
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on December 07, 2012, 07:56:40 am
Hmm, that might be useful for OmniRPG >.> I have to make it work with grayscale 16x16 sprites.
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 11, 2012, 01:59:08 pm
In answer to your question, ChickenDude, there's no program that creates a language pack, but it's not hard to make your own.  

The main font, 5x7, can be made using an omnicalc font editor (like http://www.ticalc.org/archives/files/fileinfo/267/26798.html) or by creating a bitmap and stacking font characters together.  Below is an example, Cyrillic Font.z80.  To display your custom font your strings need to start with lowercase 'a'.  (For example, for the Russian word "ATOM", I would need to type in 'atom'.

For bonus letters found in bonus words, your font needs to be 16x16, because it's part of the tileset.  My unfinished tileset is below to give you an example.  I don't know yet if Japanese, etc. characters will be supported for bonus words.

EDIT: I'll tell you later how to add the accent mark.  That's something I still have to "de-hard-code."

Here's an example of creating word sets, but I can give more details later.



HeadEnglish:

.db "HEAD",0

HeadRussian:

.db "golova",0

FootEnglish:

.db "LEG",0

FootRussian:

.db "noga",0

NoseEnglish:

.db "NOSE",0

NoseRussian:

.db "noc",0
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on December 11, 2012, 03:37:57 pm
Wow, that font looks great o.o (the 16x16 chars). Thanks for the info!
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 11, 2012, 10:29:55 pm
Wow, that font looks great o.o (the 16x16 chars). Thanks for the info!

Thanks!  I used Microsoft paint and typed in the characters.  Then I did a little bit of pixel editing :)
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 14, 2012, 02:08:47 pm
Another screenshot :)

Here's some notes on accent marks, chickendude -- in your word list, you will need to use @ for an accent mark.  For example,

.db "n@oc" = .db "n'oc"

 But for the 16x16 tiles the accent mark can be in any blank tile you want.
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on December 15, 2012, 07:35:02 am
Wow, when it is on "Spoon", is it showing a picture of a spoon o.o If so, that is awesome!
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 15, 2012, 07:55:58 am
Wow, when it is on "Spoon", is it showing a picture of a spoon o.o If so, that is awesome!

Hmmm, I'm not seeing a picture of a spoon...
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on December 15, 2012, 08:37:06 am
Oh, haha, now I see XD Still, it looked kind of like a spoon XD
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 20, 2012, 05:13:44 am
More progress!
--------------------

* If you jump at a smiley face with the correct Russian word, you can no longer wait 2 seconds and collect the question mark that reappears.  Because now a question mark will not appear!  You will have to find another question mark.  I did this so that the player will have to keep going all over the map to complete all 7 questions, just like in the original Word Rescue.
* Fixed a couple of bugs
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 24, 2012, 12:28:11 am
New screenshot!  This is mostly bug fixes.  For debugging purposes I made it so I couldn't die :)

That's 14 levels done!  My goal for a release is 30.
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 25, 2012, 03:44:28 pm
Good news!  Japanese, Chinese, etc. characters will be 100% supported, including for bonus words.  However, if you want that many characters to be supported, you will need a 3rd application page (right now Slova uses 2 pages)

I've finished the drafts of all 30 levels, so now I need to work on polishing them.  Some of you may be pleased to know that level 29 will have a boss -- the buildup to Level 30 was so epic, I couldn't resist adding a boss!
Title: Re: Slova -- A language-learning game
Post by: annoyingcalc on December 25, 2012, 03:56:16 pm
Nice! I cant wait untill japanese characters are added
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 25, 2012, 04:04:23 pm
Nice! I cant wait untill japanese characters are added


Btw, jus in case you didn't know, I'm just adding support for Japanese characters.  Someone else would need to create the font :D
Title: Re: Slova -- A language-learning game
Post by: Sorunome on December 25, 2012, 05:18:05 pm
I still don't really get how you learn a language (programming?) while playing this...
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 26, 2012, 01:03:37 am
I still don't really get how you learn a language (programming?) while playing this...

This is for learning vocabulary from other 'spoken' languages, such as Spanish and French.  Sure, you don't learn grammer, but some people (like myself) have trouble remembering vocabulary.  Check out the first post :D
Title: Re: Slova -- A language-learning game
Post by: Sorunome on December 26, 2012, 01:05:34 am
Oh, now i get it >.>
Thanks a lot ^^
Title: Re: Slova -- A language-learning game
Post by: annoyingcalc on December 28, 2012, 05:42:31 pm
I could defenitally help with a hiragana font, I already have an 8x8 one, but if I can get a biggerr resolution that would be great
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on December 30, 2012, 06:36:46 am
Because Slova is supposed to be an educational game -- a fun one, but an educational one nonetheless -- I'm adding "shields" to the game.  You can hit gruzzles up to 4 times without dying in a level.

Title: Re: Slova -- A language-learning game
Post by: Sorunome on December 31, 2012, 01:30:17 am
I'm still amazed at the graphics.....
Awesome work :D
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on January 01, 2013, 06:44:10 pm
Because Slova is supposed to be an educational game -- a fun one, but an educational one nonetheless -- I'm adding "shields" to the game.  You can hit gruzzles up to 4 times without dying in a level.
I think that is a good idea, since the main challenge of the game should be memorizing the words as opposed to defeating or escaping from monsters.
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on January 03, 2013, 02:21:50 pm
My goal is to have this done in two weeks.  Here's what I have left to do.

1. Polish the last 10 levels
2. Program the boss
3. Comment my source code a lot more to make the game easy to modify (personally, I won't mind if people create new levels and/or improve the game)
4. Include instructions on how to customize the game for different languages
5. Make it possible to save games
Title: Re: Re: Slova -- A language-learning game
Post by: Nick on January 03, 2013, 04:10:57 pm
How do you save the language lists now? When you would make them an appvar, adding a language would be as easy as making a simple list, and converting it to a standarised appvar structure. That way one could easily add languages.
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on January 03, 2013, 04:33:24 pm
How do you save the language lists now? When you would make them an appvar, adding a language would be as easy as making a simple list, and converting it to a standarised appvar structure. That way one could easily add languages.

Actually you modify the application.  Source code is included :)  Since one would need to change both the language font and the words to include, I really don't want to mess with appvars.

EDIT:  I take that back for now.  I'll look into the possibility
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on January 04, 2013, 01:44:16 pm
I'm done with the boss!  I don't want to give any spoilers, but hopefully I didn't make it too easy or too hard.
Title: Re: Slova -- A language-learning game
Post by: chickendude on January 06, 2013, 03:55:34 pm
When will we get to test this out? :)
Title: Re: Slova -- A language-learning game
Post by: Deep Toaster on January 06, 2013, 08:38:10 pm
Wow, that looks amazing!

Don't know if you're still working on it, but you mentioned on the first page you needed to fix jumping distances. Any chance you might make jumping parametric while you're at it? It's just a nit-picking suggestion, but I personally wince a bit at games with really great graphics but small stuff like that.

And on a side note, finally an excuse to pull out our calculators in foreign-language classes, eh?
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on January 07, 2013, 01:51:27 am
When will we get to test this out? :)

Very soon!  I have a couple of minor tweaks to make, and then I need to add instructions for creating language packs.  There are also a couple more instructions manuals I need to make, but those can wait until a "general release" of the game :)

Don't know if you're still working on it, but you mentioned on the first page you needed to fix jumping distances. Any chance you might make jumping parametric while you're at it? It's just a nit-picking suggestion, but I personally wince a bit at games with really great graphics but small stuff like that.

I actually have no idea what parametric jumping is
Title: Re: Slova -- A language-learning game
Post by: Deep Toaster on January 07, 2013, 02:24:16 pm
*parabolic, whoops :| As in accelerating.
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on January 07, 2013, 02:45:03 pm
*parabolic, whoops :| As in accelerating.

Sorry to bust your bubble...I'm trying to keep it simple and like the original word rescue, so a jump is a jump is a jump.  Although you can control the height of your jump, of course
Title: Re: Slova -- A language-learning game
Post by: Hot_Dog on January 13, 2013, 12:39:03 pm
Nothing new to report since the game is being tested.

Yes, I myself am using the game to learn Russian!  I'm using Excel to create the word lists -- Excel can be quite effective if you know what you're doing :D
Title: Re: Slova -- A language-learning game
Post by: Xeda112358 on January 13, 2013, 12:49:30 pm
I'm glad I'm not the only one who uses spreadsheets to help coding o.o I remember I originally used spreadsheets in BatLib to keep track of all of the subroutines and calculate the sizes of routines. I cannot wait until this comes out, one of my goals for next year is to start learning Russian. For now I am working on Spanish, French, German, and occasionally Mandarin. I found when I was in 10th and 11th grade that making programs to help people learn French helped me quite a bit to learn the vocabulary (since I had to learn the vocab to program it in).