Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

AppGameKit/AppGameKit Studio Showcase / [beta][utility] HOTspot designer

Author
Message
Rich Dersheimer
AGK Developer
14
Years of Service
User Offline
Joined: 1st Jul 2009
Location: Inside the box
Posted: 17th Sep 2012 00:27
Announcing the HOTspot design utility!

What is HOTspot?
HOTspot is a utility program for AppGameKit that lets the coder create screen "hotspots", or places where the player can touch the screen and cause something to happen. It's not meant to replace bitmap font creators, atlas image generators, or placement editors, but can work alongside those type of programs. I wrote HOTspot because I wanted to design a custom keyboard and input routine for a game I'm writing. But HOTspot can be used for any kind of HUD or zone detection. Even for atlas images and bitmapped font images!

How does HOTspot work?
Well, HOTspot is still in beta, so this might change. The coder places a backdrop image in the HOTspot/media folder, and edits the HOTspot.cfg file to suit his needs. After adjusting the setup.agc file to match the screen size of the coders original project, HOTspot is run. The coder then adds and positions a HOTspot for every area that the player will touch. When all the needed HOTspots are defined, the position and size of each HOTspot is saved, and then can be used in the original project.

How is HOTspot data saved?
HOTspot data files (.hsd) are simply text files, and can be opened and edited in notepad or any other text editor. The format is the same as for atlas subimage files and custom font files, five pieces of data delimited by colons.

How much does HOTspot cost?
HOTspot is free to use. When I'm finished writing it, I'll release the code and users will be able to hack it, customize it, whatever.

So, this is a beta release and I'm looking for feedback. Is the program useful at all? What needs to be added/removed/changed? Any input would be appreciated!

Attachments

Login to view attachments
Rich Dersheimer
AGK Developer
14
Years of Service
User Offline
Joined: 1st Jul 2009
Location: Inside the box
Posted: 17th Sep 2012 00:59 Edited at: 17th Sep 2012 01:08
And here's a downloadable demo of using the data created by HOTspot designer to drive a custom keyboard.

And a screenshot!



Attachments

Login to view attachments
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 17th Sep 2012 02:18
AppSolutely Awesome... thats one project down for me

Do you think this can be ported over to DBPro?

JLMoondog
Moderator
15
Years of Service
User Offline
Joined: 18th Jan 2009
Location: Paradox
Posted: 17th Sep 2012 04:24
This is sweet, and cut's down on work Downloading to test it out.

Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 17th Sep 2012 15:48
This is great, thanks. Can we use that custom keyboard in our games?

Rich Dersheimer
AGK Developer
14
Years of Service
User Offline
Joined: 1st Jul 2009
Location: Inside the box
Posted: 17th Sep 2012 18:30
Quote: "Can we use that custom keyboard in our games?
"


Yes, go right ahead.

Matty H
15
Years of Service
User Offline
Joined: 7th Oct 2008
Location: England
Posted: 17th Sep 2012 21:44
Cool thanks

This is a very useful utility, HOTspot and the keyboard implementation.

A good idea might be to turn the keyboard into a plugin with one command: GetString()
The keyboard could then appear with an edit box and return the string when done. I may do this for my current project, it only means rearranging your example a little so everything is in a separate file, you have done all the hard work already

Thanks again Rich.

baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 18th Sep 2012 16:24
Excellent work Rich!


this.mess = abs(sin(times#))
Phaelax
DBPro Master
20
Years of Service
User Offline
Joined: 16th Apr 2003
Location: Metropia
Posted: 23rd Sep 2012 10:12
AGK doesn't have commands for using a native keyboard overlay on devices? And I thought AppGameKit already had hotspot commands?

"You're not going crazy. You're going sane in a crazy world!" ~Tick
Rich Dersheimer
AGK Developer
14
Years of Service
User Offline
Joined: 1st Jul 2009
Location: Inside the box
Posted: 23rd Sep 2012 13:16
@Phaelax - yep, AppGameKit has commands for calling up the keyboard on devices, with GetTextInput() and the edit box commands.

But the implementation of those commands on mobile devices really leaves a lot to be desired. The screen darkens, your device keyboard slides up, and you get a single line of input on the screen, that you do not control where or how it appears.

But I wanted more control over how the input happens, and I wanted my keyboard to match my game graphics, across all devices. The demo shows how you can input a name for a high score, without darkening the screen, put the name input anywhere, any font and color, and the app can still run in the background.

And AppGameKit has a GetSpriteHitTest() and GetSpriteInBox() or Circle.

All HOTspot designer does is make it a bit easier to setup hotspots, for keyboards, HUDs, and graphical interfaces.

It can also be used to mark atlas images and custom fonts, since it outputs the same format used by those files.

baxslash
Valued Member
Bronze Codemaster
17
Years of Service
User Offline
Joined: 26th Dec 2006
Location: Duffield
Posted: 25th Sep 2012 16:46
Quote: "But the implementation of those commands on mobile devices really leaves a lot to be desired. The screen darkens, your device keyboard slides up, and you get a single line of input on the screen, that you do not control where or how it appears."

I'm using a version of this that was altered for Squashies World. We will most likely make it an option to show the box or not. In SW when using editboxes the text is updated immediately in the editbox as you type.

Your hotspot designer is a far more flexible (and ready) solution to this though.


this.mess = abs(sin(times#))

Login to post a reply

Server time is: 2024-03-29 08:21:36
Your offset time is: 2024-03-29 08:21:36