Next feature?

108 views
Skip to first unread message

Michael Hartlef

unread,
Mar 30, 2013, 2:54:25 AM3/30/13
to fantom...@googlegroups.com
I would love to know which feature you would want to have the most in the upcoming versions of fantonEngine.

Eiloreen

unread,
Jun 8, 2013, 6:32:31 AM6/8/13
to fantom...@googlegroups.com
Hi Michel, and good job with your engine and your book.

New features can be:

  • The new Google Play services.
  • Best use of Admob and other Advertising systems (set the ad position, change the width height or orientation, methods to Show and Hide it, refresh time of the ads and stuff)
  • Integration with social networks (Facebook,twitter...) (see FacebookMonkey from MonkeyCoder)
  • Maybe it could be cool we can use fontmachine fonts format (Mojo font or BliztMax fonts), not only EZGUI.
  • The use of some 3d functions like minib3d (Blitz 3d style).
  • Network functions to simplify the network connection  (comparing scores global and friends, friend request, and stuff..)

Many of this things can be done using mojo and other monkey modules but it will be nice a good implementation.

This is a couple of things than could be useful.

Michael Hartlef

unread,
Jun 8, 2013, 6:45:25 AM6/8/13
to fantom...@googlegroups.com
Thanks Eiloreen,

for your suggestions. They are all good and definetly worth looking at them how to integrate them  into the methology of fantomEngine. I was already thinking about network functions too. :-)

Just out of curiousity, why would you want integrate something like Admob into fE? Is the BRL admob module not functional enough for you?


Message has been deleted

Eiloreen

unread,
Jun 8, 2013, 8:11:02 AM6/8/13
to fantom...@googlegroups.com
Admod works fine but actualy I think that only supports 320x50 banner ads, and don't have any form to control the refresh rate.

A link to Ads sizes and types -> https://developers.google.com/mobile-ads-sdk/docs/admob/smart-banners





Eiloreen

unread,
Jun 8, 2013, 9:02:53 AM6/8/13
to fantom...@googlegroups.com
Another interesting feature would be to be able to change the color palettes of indexed images.

There are formats that store the color information in ascii code. Then you could load the image and search in the original palette for the color index of every pixel and replace it with the color from the desired palette before draw it.

Michael Hartlef

unread,
Jun 9, 2013, 3:24:39 PM6/9/13
to fantom...@googlegroups.com
We have to see how this can implemented on all platforms. Which file formats are supporting this feature?

Eiloreen

unread,
Jun 9, 2013, 9:14:53 PM6/9/13
to fantom...@googlegroups.com
An example of these color palettes I mentioned before, are Gimp palettes.

These are stored in .gpl format, which are easy to read.
The colors are stored in different text lines that store the 3 RGB values​​.


GIMP Palette

Name: Borders

#

204 52 180

204 52 180

204 52 184

204 48 188

200 48 192

200 44 200

200 44 204
....


If you load the image before assigning it to a ftObject. We can make a readpixel and be able to locate the color of that pixel, then we can search in the file of the original color palette file, grab it's index (which would be its line number ), then search inside the desired palette using that index to obtain the RGB value and rewrite the image using a writepixel.

I have not observed the performance of the functions of monkey readpixel and writepixel. But I have done this using Blitz3D.


;Init graphics
Graphics 800,600,32,2

;Loading a image
Original_Img = LoadImage ("textimage.png")


;take the width and height of the image
img_Width
= ImageWidth(image)
img_Height
= ImageHeight(image)

;Create a empty image with the same size
Result_Img = CreateImage (img_Width,img_Heigh)


;Set the buffer to read pixels inside Original_Img
SetBuffer Original_Img



;Read de color of every pixel inside the Original Image
;and write it back with the new color inside the Result Image

For x=0 To img_Width
   
For y=0 To img_Height
       
       
       
GetColor (x,y)         ;Read de color of the pixel
       
Local R = ColorRed         ;Store the Red value
       
Local G = ColorGreen      ;Store the Green value
       
Local B = ColorBlue       ;Store the Blue value
       
       
Local index = SearchIndex ("Palete.gpl",R,G,B) ; Store the index of the values RGB
       
Local rgb = SearchColor ("Palete2.pgl",index) ;Search for color values of the index in the other palette
       
       
WritePixel(x,y,rgb,Result_Img)
   
Next
Next


;Now he have a copy of the Original Image with a new color palette


;**************************************************************************************************

Function SearchIndex(file$,cR%,cG%,cB%)
   
   
Local ind%=0 ;value to count lines
   
    filein
= ReadFile (file$) ;Open the file to read
   
   
While Not Eof(filein)
   
       
If ReadLine (filein) = cR + " " + cG + " " + cB Then
           
Return ind%    ;We have the index    
       
EndIf
        ind
% ++
   
Wend
   
CloseFile (filein) ;Close the file
End


Function SearchColor(file$,ind%)

   
Local rgb
    filein
= ReadFile(file$) ;Open the file to read
   
   
Local DataColor =""      ;A value to store the string located in the index
   
   
   
For n:=0 To ind%
       
DataColor = ReadLine(filein) ;A quick jump to the index line
        n
++
   
Next
   
   
;Now we have Datacolor with the 3 values R G B we need to tokenizer it to separate the values
   
;and here in Blitz3D the write pixels work in ARGB format stored in hexadecimal
   
;
   
;Example
   
;  ARGB = FF3AC252
   
; Alpha FF = 255
   
; Red   3A = 58
   
; Green C2 = 194
   
; Blue  52 = 82
   
    rbg
= DataToARGB(DataColor)
   
End

Function DataToARGB(datacol)

;Things like tokenizer to separate the String to 3 values
;and convert the single values in a new one with a 4th value for the alpha
;and last return the values in a Hexadecimal format

End




Eiloreen

unread,
Jun 9, 2013, 11:28:24 PM6/9/13
to fantom...@googlegroups.com
Graphics Gale also uses palettes easy to read this ones is in JASC-PAL format very similar to Gimp only the hearder differ.

JASC-PAL
0100
256
0 0 0
77 66 33
71 77 33
55 77 33
39 77 33
33 77 44
33 77 60
....
...


Apps something more, I see that some people have problems launching Hiero to create the fonts.
These ones can use TWL Theme Editor, it supports different sizes for the fontbitmap, glyph and Outline color, gradients, and allow to select the chars to export selecting it manualy or by type (Latin,Hebrew, Numeric, arrows, symbols, etc.)
 
The only thing to make it works with your engine is:

  1. Export the font in text format.
  2. Rename the font from .fnt to .txt
  3. Open the .txt and add the " around the file name.
Example:
Original file:
info face=#44 Font size=24 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=0 aa=1 padding=0,0,0,0 spacing=1,1
common lineHeight
=30 base=24 scaleW=256 scaleH=256 pages=1 packed=0
page id
=0 file=44font_s24_00.png
chars count
=218
char id=32 x=106 y=0 width=0 height=0 xoffset=0 yoffset=24 xadvance=7 page=0 chnl=0

Working file with the "" around file name:
info face=#44 Font size=24 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=0 aa=1 padding=0,0,0,0 spacing=1,1
common lineHeight
=30 base=24 scaleW=256 scaleH=256 pages=1 packed=0
page id
=0 file="44font_s24_00.png"
chars count
=218
char id=32 x=106 y=0 width=0 height=0 xoffset=0 yoffset=24 xadvance=7 page=0 chnl=0



Michael Hartlef

unread,
Jun 10, 2013, 4:14:10 PM6/10/13
to
Hey thanks for mentioning that font editor. I will add soem code so you don't need to alter the file name.

Edit: Done :-) To lines of extra code and will be released soon.

Eiloreen

unread,
Jun 10, 2013, 5:25:35 PM6/10/13
to fantom...@googlegroups.com
Hehehe I happy to be useful.

RobB

unread,
Sep 19, 2013, 5:26:03 PM9/19/13
to fantom...@googlegroups.com
Michael,

With the help of FE we have our app about ready for submission to Apple. With my limited programing skills, I'm not sure I comprehend exactly how to implement the new iOS inapp purchase features. Is a skeleton inapp purchase example code something you could work on? Just a basic skeleton on how to upgrade from a free limited feature app to a paid full feature app. This would involve proper access to necessary routines and internal memory within the app to remember if an upgrade has occured or not.

I would think this would be valuable to others beside myself, and perhaps an extra incentive for those considering use of FE.

Thanks.


Michael Hartlef

unread,
Sep 24, 2013, 12:17:29 AM9/24/13
to fantom...@googlegroups.com
Hi RobB,

I am glad to read, that fE helped you completing your app. Good luck in the store. Didn't the example (iaptest.monkey) from Mark didn't help? I have no Apple Dev account right now so I can't setup an example.

Michael

Michael Hartlef

unread,
Sep 24, 2013, 12:19:13 AM9/24/13
to fantom...@googlegroups.com
But then again, maybe the IAP solution works equally so I could do that for Android and you can see if that works in IOS.

About the next features:

- Better animation control
- Hopefully particles

Neuro

unread,
Oct 6, 2013, 3:37:11 AM10/6/13
to fantom...@googlegroups.com
Would like to see some examples of a platformer type game built from a map using Tiled.

Michael Hartlef

unread,
Oct 6, 2013, 11:50:13 AM10/6/13
to fantom...@googlegroups.com
Hi Neuro,

I need to finish some work for a HMTL5 sponsor (3-4 days) and then I can work on it. Is that ok for you?

Cheers
Michael

Neuro

unread,
Oct 6, 2013, 3:52:32 PM10/6/13
to fantom...@googlegroups.com
Absolutely, Michael. Looking forward to it.

Also in that example, can you demonstrate how to animate a sprite by using texturepacker also? It would be nice if fantomEngine also had some kind of animation system where, for each object, we can define an animation and what frames we want to go along with it. I really like how flixel handles it where we can create an animation, set the frames, speed, if it loops or not etc. Or maybe fantom already has it and i'm just not understanding it well enough yet.

Also, would be nice on the fantom engine page there can be a page that has demos/games that have been developed using fantom from other users.

thanks!

Michael Hartlef

unread,
Oct 6, 2013, 11:50:16 PM10/6/13
to fantom...@googlegroups.com
Funny that you ask about animation as I am enhancing thta part atm because I think it could be easy to handle. And cause I need it for a current project.
fE already has something build in for image strips. Just put your strip into a packed texture and load it from there with CreatAnimImage.
But I will add this to the examples.

Neuro

unread,
Feb 3, 2014, 12:50:50 AM2/3/14
to fantom...@googlegroups.com
Woah...been a while since i last checked this . Any updates coming soon?

Michael Hartlef

unread,
Feb 3, 2014, 12:31:48 PM2/3/14
to
Yes,

was working on a platformer tutorial, so you can see how I would use a tilemap level and do collision checks on it. Cost me some grey hairs I can tell you. I am documention the source code and then I want to get it out. To long since the last update. :-/

Neuro

unread,
Feb 5, 2014, 12:27:31 AM2/5/14
to fantom...@googlegroups.com
Wow...sorry for causing the grey hairs :).

Michael Hartlef

unread,
Feb 5, 2014, 1:41:54 PM2/5/14
to fantom...@googlegroups.com
LOL, nooo. You didn't cause that. Only my own studity.

Michael Hartlef

unread,
Feb 6, 2014, 6:23:37 AM2/6/14
to fantom...@googlegroups.com
Version v1.53 is coming tonight.
Reply all
Reply to author
Forward
0 new messages