Developing Ramblings

Here you can talk about anything (that isn't related to the other forums).

Moderator: Crew

jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

I appear to be relaxing into April.
Had two positives on the Word Games plan, and no negatives so far, so I think I'm going to go with that.
One "game", five different word games within.
One new one gets added each week.

Feels like it oughta work out, and has taken the load off, somewhat, since I now need only make a word game each week. .. Which is a lot easier to achieve once you've already got a working WordList!!

I'm able to take my time, now, and will get the time to focus on some much needed background stuff, like wrangling with GooglePlay, and all of its nastyness.. Grrr!!

Stringy Things part one will appear tomorrow.
Tonight, I'm taking a break!
Nanite, all!!!
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

All New Stringy Things! for Windows, Android and HTML5

The first of five releases. Expect to see this game over and over again, throughout April, with each new release bringing an all new word game into the mix.
The first is probably going to be the best, and it's the game that gives the collection it's name.
"Strings" sees you hunting for words in the grid of letters.
Run your finger (or your mouse!) over the words to pop them and score points.
Words can snake around vertically, horizontally or diagonally.

Let me know how it feels on your particular Android device, and if things get a wee bit "too" small and cramped on tiny devices. I've tried to keep things big and bold, but you never know..
User avatar
Tormuse
Warhero
Posts: 326
Joined: Sat Jun 17, 2006 21:30
Location: Toronto, Canada

Re: Developing Ramblings

Post by Tormuse »

I just downloaded it and I'll give it a try soon. :)

Also, I thought you might like to know that I played a round of Platdude Slots earlier today and racked up a huge score of 5625, (almost 4 times my previous high score of 1460) by having him go up a ladder directly between two pillars with one space between them. He sort of danced, rapidly turning from side to side between the pillars, getting 5 points each time he turned around and each turn around occurring instantaneously. He did this over a thousand times in a matter of seconds and allowed me to claim first place easily! :D
[size=84]"A Canadian is someone who knows how to make love in a canoe."
Pierre Burton[/size]
User avatar
Pater Alf
The Steel Spine of GameHunters
Posts: 7649
Joined: Thu Apr 13, 2006 23:09

Re: Developing Ramblings

Post by Pater Alf »

One question about "All New Stringy Things": Are only English words allowed? Because sometimes it accepts some strange short words that are not really English (like "et").
[quote="eMTe"]I dont think trying to pass the screen in computer game once per 500 tries makes you a geek. Rather a dangerous psychopath.[/quote]
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

The game uses the "TWL06" word list. Anything in that list (up to 12 letters) is acceptable to the game.
et is one of those quirky two-letter "Great for Scrabble" words, of which there are many, and they're awesome for getting rid of the fiddly tiles you end up with towards the end of a game.
There's a whole page of them, here. Gotta Catch 'em All!!

.. and if anyone's interested, my Words With Friends username is Jayenkai! ;)

As for the super-epic-bonus-bit, we'll just call that "Hitting the Jackpot!"
Random things bring silly events!
User avatar
Tormuse
Warhero
Posts: 326
Joined: Sat Jun 17, 2006 21:30
Location: Toronto, Canada

Re: Developing Ramblings

Post by Tormuse »

Woo! I hit the jackpot! :D I guess rapidly spinning around is Platdude's victory dance! :D

I tried Stringy Things last night and either it's buggy or I am once again misunderstanding the rules. :| The first thing I did when I started the game (in 10 mode) was spell the word "azure." I thought I was pretty clever for getting that word, but the game didn't accept it. :( (The word I entered appeared at the bottom of the screen, but the tiles didn't disappear) At first, I thought maybe the game just didn't have a terribly extensive dictionary, but then I found that it wasn't accepting simple words like "note" and "cram." Sometimes, it accepts words and sometimes it doesn't and I haven't figured out the pattern. (The words are definitely in the TWL06 list you posted, as is the word "axiom" which it also didn't accept and I also thought I was pretty clever to spell) :P
[size=84]"A Canadian is someone who knows how to make love in a canoe."
Pierre Burton[/size]
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

It might be an issue with your phone.. It's possible that its misinterpreting the data as its reading it.
Some guy on my forum's having similar data loading quirks with a similar generation of phone. I'm looking into it. Hold tight :)
User avatar
Tormuse
Warhero
Posts: 326
Joined: Sat Jun 17, 2006 21:30
Location: Toronto, Canada

Re: Developing Ramblings

Post by Tormuse »

A couple of additional suggestions for Stringy Things:

When I'm spelling words, I think I'd prefer the letters in the word I'm spelling to appear at the top of the screen, rather than the bottom. I'm right-handed, and when I'm holding my hand up in front of the screen to enter the letters, it neatly obscures the bottom-right portion of the screen. This forces me to hold my hand in an awkward position to see what letters I'm entering.

Some more letter entry methods would be appreciated too. Because of the size of my screen, sometimes it's awkward to accurately slide my finger from letter to letter, especially on the diagonals! I'll be trying to move my finger diagonally up and right and having it hit the letter above or to the right instead and since there's no way to backspace, I just have to start the word over again. My suggestion for alternate input is to be able to touch and release each letter once and then, when I've spelled the word I want, push an "enter" button at the bottom of the screen. (Maybe you could include a backspace button too, but I don't know if that would clutter things up too much)

In any case, it looks like a really promising game that's sure to entertain for hours! :D I hope you can work the quirks out of it. :)
[size=84]"A Canadian is someone who knows how to make love in a canoe."
Pierre Burton[/size]
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

Version two's out. It has a simple "rack" game, but I've annoyingly already been told that I haven't managed to fix the dictionary issue.
Grrr! Needs more work!

Good call on the score stuff being at the bottom. I really need to keep these things in mind!! I'm deving on Windows, and playing in the browser with a mouse, so all these "hand in the way" issues aren't popping up when I'm playtesting!
I do test on the android device, but only in so much as I check its working at all!!
I'll shuffle things around.

I also REALLY need to fix up the main menu. It's currently horrible, and yet I have to integrate all these different elements into it, all at once, on all these different resolutions and ratios.. (Try playing in landscape! .. It *should* work!!)

Cramming a busy menu system into that isn't an easy task!

Hopefully by next week I'll have fixed it up a bit, into something a little more presentable..

Now, onto the control scheme..
All I can say is ... Wow!!!
The original Stringy Things 1 & 2 for Windows did exactly that!! You'd click the tiles, and then click enter to enter them!
As soon as I came to do the DS one, where you have a lovely little stylus for pixel perfectly plucking the tiles, and could play on OMG A Touchscreen!!! I switched to the new "drag" method. It seemed to work much better that way.
At no point have I ever considered going back to the old method, but.. Damn, that makes sense!!
I'm sure I can implement a multi-method way to do it. Watch this space! And thanks for the prod in that direction :)
User avatar
Tormuse
Warhero
Posts: 326
Joined: Sat Jun 17, 2006 21:30
Location: Toronto, Canada

Re: Developing Ramblings

Post by Tormuse »

Rack game looks good. It works well both in portrait and in landscape. (Aside from the dictionary issues, of course) I expect I'll mostly be playing that one in landscape mode, since the rack fills the screen more nicely that way. :) One very minor issue: If I switch orientations in the middle of the game, it takes several seconds to adjust. I don't know if that's just because my phone is slow or what, but I imagine it would be more trouble than its worth to tighten up the code, so I wouldn't worry about it.

If I can make one suggestion: For the rack game, I think I would prefer to just touch the letters once and have them jump to the appropriate space on the rack, rather than touching and dragging them. It would be simpler and faster and really, there's no particular reason to need the player to drag the letters to a specific location, because they are probably going to spell the letters out in order anyway.
[size=84]"A Canadian is someone who knows how to make love in a canoe."
Pierre Burton[/size]
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

In the previous edition, there WAS a purpose for putting certain letters into certain positions, and I've drawn the bits and pieces to add them into this edition, too, but just didn't get around to it... I was far too busy trying to get the menu to look half decent, but getting constantly irritated that I couldn't!

Image

There's what the last edition of Racks looked like..

So, I guess I ask which you'd prefer, then?
Would you prefer "premium tiles", or would you prefer "tap to spell"?

Your choice!

Next up, the dictionary issue.
Grrr!
There's something wrong with my method of loading data from images, and it's all down to the quality of low-resolution devices. What I do is rather simple. I store the data in tiles of images, draw them to the screen, read the data back from the screen, then access that data.
It works on Windows, it works in a browser, it works on iOS, and for the most part it works on Android devices..
Except for some!
Certain devices seem to be mangling the data.
I've tested the maths, so I know it's not that.
Instead, it's either the image loader messing up the colours as its loading the images, to save memory space, or it's the low-screen-resolution which is "tweaking" as it's drawing.

One or the other, not sure which.
I'm going to have to delve deep into the methods of Android to figure out exactly what's going on.
Hopefully I can solve it soon, but it'll probably mean having to redo a lot of the WordList functionality before it works properly.
Grrr!

But at least I'm narrowing down the issue, so it'll be solved sooner, rather than later!
User avatar
Tormuse
Warhero
Posts: 326
Joined: Sat Jun 17, 2006 21:30
Location: Toronto, Canada

Re: Developing Ramblings

Post by Tormuse »

jayenkai wrote:So, I guess I ask which you'd prefer, then?
Would you prefer "premium tiles", or would you prefer "tap to spell"?

Your choice!
Hmm... Tricky question... One is more like Scrabble and the other is more like Text Twist... Both have their own appeal, and you really could go either way, but I suppose for the purpose of a portable game, one that is meant to be a quick diversion while you're waiting for a bus or something, the tap to spell option might be better for the speed and ease of use, especially for the timed mode of play.

That's just my opinion of course; in any case, maybe you could make it another play mode, selected at the beginning of the game. :)

As for the dictionary stuff... That's weird... :| It doesn't make any sense. From what you're saying, it sounds like it's trying to read the tiles on the screen and using that as its basis for comparing to the dictionary, but somehow misinterpreting the tiles because of screen size or colour or something, but that can't be it, can it? When I enter a word, it appears as I selected it at the bottom of the screen, which suggests that the game is, on some level, correctly interpreting my input. And what you said doesn't explain why sometimes it works and sometimes it doesn't. I had a game where it wouldn't accept the word "see," but when I entered "seen" using the same first three letters, it did accept it. That means that it is reading the first three letters of the word correctly.
[size=84]"A Canadian is someone who knows how to make love in a canoe."
Pierre Burton[/size]
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

Grrr... had to rewrite due to iPad closing tab. Dangit, I'd written a load, too!!

A slight misunderstanding, probably due to me being vague!
Ok, here's how it works.
That big old WordList is actually encoded into a gigantic 800kb .png image.
When you load the game up, the game does a nice simple background loading thing.
It draws a small chunk of the picture onto the screen, and reads the data from it.
Each pixel has a red, green and blue value, (0-255) each of which is divided by 8, to give a 0-31 value, where 0 is nothing, 1 is A, 2 is B and so on.
So, every pixel is three letters, and every fourth pixel is a new word (to keep things simple)
It reads these in at a tremendous rate, loading the whole list into memory by frame #84, or about 1.5 seconds from clicking the icon, to it being fully loaded into memory.
It does it behind the scenes, too, so the WordList is still actually loading while the menu's showing up.

Somewhere along the lines, certain devices are "fiddling" with these colours, meaning that as its reading the data, it's occasionally getting the wrong information from the device, which in turn is leading to an incorrect database of words.
I'm working with a fellow dev, who has a phone with this issue, and together were hoping to figure out exactly how to repair this problem. .. So far we haven't figured it out! D'oh!

The whole point isn't just this game and it's WordList, though.
Being able to strip data from a png image has a multitude of other purposes.
Karl's Tiny Adventure, for example, is built with a lot of image data.
All the music is stored in .png files, as are all the levels.
In a future game, I'd like to be able to create a type of level editor, which stores as a picture, uploads to a server, then lets you browse pictures to find new levels.
... But with all these quirks, it's proving difficult.

Anyway, this week's StringyThings release might not actually feature a new game. I've yet to get around to it.
Truth be told, I've actually been slightly preoccupied with something else, this week.
Fowl things have been happening on the interwebs, and I've been slap bang in the middle of it all.
Erk!!
User avatar
eMTe
Cyberflaneur
Posts: 6990
Joined: Wed Mar 08, 2006 23:08
Location: Cracow

Re: Developing Ramblings

Post by eMTe »

Development poetry.

8)
"As you have noticed over the years, we are not angry people." (itebygur)
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

That's a bit of a rubbish poem, even if I do say so myself.

... *sigh* oh, alright then...

The style of the word list is simple.
The letters from words stored in pixels.
They all line up real neat,
The result is a treat.
But some android devices aren't nimble.

There's some complex mathematics in there,
and some image based reading is dared.
I'm not quite sure why
But it all goes awry.
and my word list is broken and bare.
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

Developer Woes..

I can't figure out how to fix this issue.
I've now worked out exactly what the problem is.
Not all Android devices are the same. Some of them use 16-bit colour screens instead of 24/32-bit colour ones.
You tell it "Draw colour 255,255,255", and depending on the device it'll either draw "255,255,255", or "247,251,247" or "250,251,250".. Or, at least, that's what three different test devices are feeding me back.
I originally thought that simply dividing this result by 8 would give me a nice "average" figure, which would always be the expected value, so instead of having 256 values (0-255) I'd have 32 values (0-31), and all would be happy.
This, unfortunately, has not turned out to be the case.
I've been wracking my brain over this thing for the past couple of days, trying all manner of mathematical jiggery pokery, trying to find a "nice" method to get approximately the correct numbers back from the image, but it's all gone a bit nasty. I could go the "lookup" route, instead, but given that three different devices are giving me three different sets of results, and I have NO way to tell which set of results a particular device will give me, it's all a bit messed up.

I'm not sure where to go, from here.

Stringy Things is currently on hold.

The big April project is officially busted.
I think, for next week, I'm going to try something different to cheer myself up a bit.

:(
User avatar
Tormuse
Warhero
Posts: 326
Joined: Sat Jun 17, 2006 21:30
Location: Toronto, Canada

Re: Developing Ramblings

Post by Tormuse »

Sorry to hear that; that's kind of bizarre. :| I have to imagine that you're not the first person to come across this problem and there must be some workaround for it, but maybe you're right and it's just time to focus on another project. :)
[size=84]"A Canadian is someone who knows how to make love in a canoe."
Pierre Burton[/size]
User avatar
Zyx
Pretender to the throne
Posts: 1907
Joined: Wed Mar 29, 2006 20:48
Location: Helsinki
Contact:

Re: Developing Ramblings

Post by Zyx »

I don't think there are many people who try to encode data in a png image and read the data off the screen pixel color values...
Do you has what it takes to join the Homestarmy? The guts? The determination? The five bucks? Join today!
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

Yeah, in a perfect world, Monkey would let me access the raw image's colour data. I'm not sure why it doesn't. It also currently isn't 100% at file access on all targets, either, which is one of the reasons I initially went down the image-access route in the first place.
Grrr!!!
jayenkai
CWF's God of Freeware
Posts: 639
Joined: Wed Feb 27, 2008 18:17
Location: Bolton, England
Contact:

Re: Developing Ramblings

Post by jayenkai »

Taking things in a different direction..
I've been battling with this stupid colour issue for the better half of a week. I've tried all sorts of solutions and nothing's fixing it.
Very very frustrating.

So, forget that for now, let's move on.
In the world of AGameAWeek, there's always something else to be getting on with, so that's what I'll do.
It's a shame that "The Big April Project" has fallen flat on its face, but that's the way things go, sometimes.
For what it's worth, I'll probably finish up the thing at a later date, once I can figure out a better way to store the WordList, but .. For now, I'm taking my mind off it.

So, this morning, I found myself wondering what I should tackle for next week's project.
I know, I thought, I could remake that great game that I used to play on the Amiga, Atoms, where you had a grid, placed atoms, and tried to obliterate your opponent.
It's a nice and simple idea, and I've tackled it one or two times in the past, but never really done anything PC with it, properly.

So, I dug out my old sprites, updated them slightly, and got a basic engine up and running fairly quickly.
...
Then I realised it's Monday, and that "Next Week's AGameAWeek" wasn't next week..
AGameAWeek is Tuesdays..
That's tomorrow!!!

What followed can only be described as the most frantic coding you've never seen, as I not only got the entire game up and running, but also made a nice menu for it, and even spent a bit of time making a haphazard AI to play against.

Blimey, that was a lot of coding for one day!!

It's done, and will be posted tomorrow.

Rest assured : There are no colour based loading issues with this one!
Post Reply