Build Your Own Arcade Controls Forum
Main => Software Forum => Topic started by: mmalficia on July 12, 2008, 03:43:08 pm
-
with all the new FE development going on i thought it might be of some use to hear some opinions from someone not so deeply rooted in the community about the best aspects off the FE's Ive tried over the course of a first time build.
please bear in mind these are just my opinions and observations, i don't mean it as a best FE or to step on any ones toes.
Just in my line of work Ive come to appreciate opinions from people not so emotionally attached, or with vested interest in projects helps keep things in perspective and give new insights .. And I'm only going to comment on the FE's ,Jukes Ive tried. If its of use it be cool for others to share their experiences to ..
FE"S
Mala :
while lacking in the "bling" department its hands down the easiest to get up and running in no time flat . i love the tracking of how many times a game is played and having a top 20 list :> as well as user fav lists. all the plugin support .. just wish it was a bit more accessible to develop for (least for me I'm in IT and hobby/sideline in raytraceing (the math part not the ART part :> not really well versed in C or Delphi but i use auto-hotkey scripting allot). All the support for emu based pre/post command cues they are intuitive and very easy to work with .. my only fault here is their emu based and not rom based (tall order i know but that would be perfection for non Mame setups)
AtomicFE :
while it has a rather steep learning curve if you want to use your own layouts /setups there is a virtual army of presupplied configs/layouts waiting to be tweaked at your disposal. not to mention after playing with the layout editor you can pull off some really impressive effects with minimal performance hits if you think it threw and take your time.. and now a feature Ive only seen in Atomic that i wish every FE type app had :
for every rom/emu/what haveyou you can define a txt file %ROM%+var.txt and tie it to a window this window can display that text in static , scroll, loop ,wrap to window, Fonts, hand done bitmap fonts its so damn easy and useful to work with for non Mame setups were you want to show game info history control high scores, smacktalk what have you its down right sinful :>
Not to mention i think Youki is probably the most enthusiastic FE developer Ive seen on the boards (even if he catches flack for it sometimes ).
Khameleon:
Ive only played with the public beta some, so i don't have a wealth of exp with this one .. But
i can really appreciate what hes trying to do here .. in the hobby as a whole when i first started looking at front ends i was torn by well this one can do this, but that one has purdy pics , oh the bling on that one but it doesn't run this or do that .. come on admit it it be damn cool to have a FE that could load any layout from any FE as long as the backend is somewhat robust .. (with compatibility issues ide guess some functionality is going to need to be abstracted but THATS MY GUESS NOT A FACT or anything )
Mamewah:
While the layouts are simplistic and its not very idiot friendly after working with its insides if you want to spend time with all the cfg's ini's and misc files (bat, etc) you can pretty much pull of anything from simple to complex :>
Jukes :
I'm going to clarify this a bit I'm still working on getting a juke setup i like in my cab Ive played with 3 so far and waiting on 1 to get outa beta /feature lock before i invest in it. and I'm rather limited in scope since the juke needs to support both custom skin and hopefully credits (using modded coin mechs to accept anythin as a keypress )
Freebox :
OK pure config heaven and a DB powerhouse' not to mention its the most orientated to full re skins moving buttons etc etc. but alas i was having serious focus issues with it (mind you NOT THEIR fault ) i was using it in a way that isn't officially supported, and getting the credit feature is a tad pricey for a non professional use setup.
pcjuke touchtrax:
OK I'm still waiting on this and hopeing like all hell it will support minimising by key, and full app transparency when its done. but pc juke was really easy to set up, but it was a pain to try n use any form of custom graphic.
Virtuosa:
OK i relented here and actually bought this one .. I'm going to say this up front if you were going to use this in a dedicated touchscreen juke its beautiful but in a multi config enviorment i had serious issues with this one crashing or just not doing what i needed out of it. (also gives you an idea what I'm trying to do with my juke set up )
last but not least :
MultiFE:
i have NOT used it in its new rebirth but i did try it as a juke its clean simple and easy to use .. but isn't for my set up (no complete reskin its a theme based cab/media center) as a FE i really can see this one becoming the defacto standard for those folks using a multi monitor touch screen setup if its handled right (FE on the smaller touchscreen all playing and juke on the main screen)
once again these are just my opinions and experiences since embarking on my first build but figured it my be at least informative on what features a first time builder found most useful /wanted and where i had to make hard decisions about things ... I Truly admire and appreciate everyones hard work and helpfulness in this community/hobby and am very glad a decided to take the plunge over the last year to build my ultimate toy :> (no worries you ll see pics when its complete. but back when i started i didn't know all the woodworking aspect was a "must photo " element lol so ill be chastised for that :<
Mmal :notworthy:
-
You didn't review GameEx! :hissy:
-
Sorry Headkaze..
Ive never actually used GameEX so i didn't want to make any statements without having some first hand experience with anyones apps. I figure if this winds up being of some intrest some other semilurker might pop out and post some experiences with everyones software. Just wanted to error on the side of caution and not start any fires :cheers:
-
He he, I do not actually planning for multi touchscreen support, since it really designed for single touchscreen and all these classic controllers.
I havent ever think about dual touchscreen, and I not even have a touchscreen myself, but I do allready created a touchscreen GUI for juke, and I just "ported" that over to use with the FE part as well. It's a really cool idea, but the code is not designed to that yet.
I do might add a new GUI with skinning support (pretty much same way and style like Mamewah and Arcade Music Box), I do rather fix and add the missing features first that is on the todo list. But I wanted let MultiFE run in all possible resoulutions and rotations.
But thanks for the nice little review :).
-
I think you should rename your topic to something a bit more descriptive. How about "Some of my reviews of software" or something.
-
for every rom/emu/what haveyou you can define a txt file %ROM%+var.txt and tie it to a window this window can display that text in static , scroll, loop ,wrap to window, Fonts, hand done bitmap fonts its so damn easy and useful to work with for non Mame setups were you want to show game info history control high scores, smacktalk what have you its down right sinful :>
wow!!...i'm impressed how deep you explored the layout editor. I had never talk or documented (in fact i have never documented the entire layout editor yet :() this feature!
I thought nobody would use that!!!
I hope you will have time to review Atomic 0.20 when it will be released! :D
-
I also think a better typic would been much better (just rename that), and also moving this thread to reviews forum? But nice reviews anyway.
-
Mala :
just wish it was a bit more accessible to develop for (least for me I'm in IT and hobby/sideline in raytraceing (the math part not the ART part :> not really well versed in C or Delphi but i use auto-hotkey scripting allot). All the support for emu based pre/post command cues they are intuitive and very easy to work with
Please elaborate what you would like in the plug-in interface in future
.. my only fault here is their emu based and not rom based (tall order i know but that would be perfection for non Mame setups)
Am looking at ways to mix and match, there are some 'hack' workarounds if you are keen for now.
-
Please elaborate what you would like in the plug-in interface in future
I think he means having scripting support and not so much plugins which need C/Delphi programming skill to compile into a dll.
It's quite easy to implement scripting, like Lua for example, is a popular scripting language.
I code in C# and you can actually execute C# script at runtime and even allow it access to internal objects as well as access to the huge library of .NET namespaces all from a script. This can add heaps of flexibility to an application like my new engine which has C# scripting capabilities ;) So for C# this is pretty much built in but for a Delphi app like MaLa there would be libraries that would allow you to do this. Do a search on Google for "lua script delphi".
I believe AtomicFE has some sort of scripting available but the thing is, very few people will actually take the time to learn it unless it's a familiar or easy to learn language like C/VB/Lua rather than some propietry language. I don't know what scripting language Atomic uses but apart from Youki I doubt there would be alot of people using it; correct me if I'm wrong here Youki. And I don't really expect many people to be using scripting in my engine either, but having the capability there is always nice. If it's alot of work to implement in Delphi it might not be worth the effort, but I don't know how popular it would be. Sometimes the biggest problem is writing the documentation on how it works which is what I think was Youki's main problem with scripting in Atomic. People can't script when they have no idea how it works or how to implement it (ie. No documentation).
And now we can expect Khameleon to have this feature soon after Cake reads this :) I have to remember to release my engine before I give away too many of it's cool features :P
-
well to be honest i didn't title the post with reviews cause i felt a bit shameful doing that if i was going to give a full tilt review of everyone it would of only been fair to hit the WIKI one by one n spend a few days with each FE. I Really dint want to influence any end users one way or another each FE has its use and high points really .. this was more aimed at the authors for what features a newbie found most helpful /cool and were i had issues. BUT given the suggestion for topic change and everything ide agree this should be moved but i dint think that's something i can do here is it ? :>
loadman: i was in no way dissing Mala's plugin language more my lack of devotion to learning C or Delphi .. most of the stuff i needed to do i could write auto-hotkey scripts for but that's just a cheap hack to myself personally. But Headkaze is right i was just personally noteing that some form of scripting language is way more accessible to allot of people including myself. but that was just a personal wish not a judgment or anything i can perfectly understand using a plugin language the app is written in.
But i think Headkaze is also right in the fact that very few people would use it anyways i have some background in that kind of stuff so i feel a bit more comfortable with it ..ie in my setup theres allot of actual PC software running most of the time there needs to be special keys or keystrokes (media remote) way more than the ipac without shift could handle in one set so i wrote some tools that would work to load cfgs based on ROM passed from mala to the ipac ) i actually looked at writing a plugin but after spending a week trying to wrap my head around Delphi i realised i just could of scripted the damn thing already ...
wow!!...i'm impressed how deep you explored the layout editor. I had never talk or documented (in fact i have never documented the entire layout editor yet :() this feature!
I thought nobody would use that!!!
I hope you will have time to review Atomic 0.20 when it will be released! :D
well its a really elegant and simple solution that I'm surprised more people haven't found yet , i Realize 99% of the folks i read about are primarily interested in running Mame and leave it at that. But in a scenario were Mame isn't the priority that is pure heaven since there is no set standard info to use ..
Ive committed myself to finishing this build and Mala was what i stuck with BUT i have to admit folks went lying about the fact its like some twisted disease I'm not even done yet and I'm already thinking about "if i only done this different" or man wouldn't it be cool to do that... eesh
so odds are ill be looking around again in the near future long as i can talk the Lass into maybe "cough" converting the sun room :>
Mmal
-
I believe AtomicFE has some sort of scripting available but the thing is, very few people will actually take the time to learn it unless it's a familiar or easy to learn language like C/VB/Lua rather than some propietry language. I don't know what scripting language Atomic uses but apart from Youki I doubt there would be alot of people using it; correct me if I'm wrong here Youki. And I don't really expect many people to be using scripting in my engine either, but having the capability there is always nice. If it's alot of work to implement in Delphi it might not be worth the effort, but I don't know how popular it would be. Sometimes the biggest problem is writing the documentation on how it works which is what I think was Youki's main problem with scripting in Atomic. People can't script when they have no idea how it works or how to implement it (ie. No documentation).
My Script Engine don't use a proprietary language. It is based VBScript , it is very well documented by Microsoft. ;) I have just added a bunch of functions to VBScript to interract with Atomic.
But you're right the main problem with my scripting is the documentation , i didn't wrote documentation on my "added" API yey. But i wrote lof of samples. And as my plugins are "open source" you just need the notepad to read the code and modify it. They are very easy to customise.
But where you are wrong is when you say :
but apart from Youki I doubt there would be alot of people using it
I know at least 15 persons that have developped they own plug'ins. Ok it is not a lot, if you consider the number of Atomic users , but that's no so bad ,more that i expected. I don't know how much people is developping Mala Plug'ins?. I have already a bunch of about 40 plug'ins available for Atomic.
the big advantage i found in a script based plug'ins it is you don't need a development tool to make it , and mainly , the biggest advantages is that a user can freely modify it!.
The problem i saw with plugin in general , is that most of user are not developper , and don't want to be! ;) There is few exception of course. ;)
-
I know at least 15 persons that have developped they own plug'ins. Ok it is not a lot, if you consider the number of Atomic users , but that's no so bad ,more that i expected. I don't know how much people is developping Mala Plug'ins?. I have already a bunch of about 40 plug'ins available for Atomic.
the big advantage i found in a script based plug'ins it is you don't need a development tool to make it , and mainly , the biggest advantages is that a user can freely modify it!.
The problem i saw with plugin in general , is that most of user are not developper , and don't want to be! ;) There is few exception of course. ;)
I didn't realise your scripting engine was part of your plugin system. For some reason I thought of it being somewhat different to plugins (like having random events in a layout for example). I will probably be supporting dll plugins as well scripting though as I think they both have their own benefits. Personally, and this is probably because I'm a developer, I would prefer to write a C#/C++ dll than to write VB script.
-
In fact, my first scripting engine was dedicated to layout. But later i enhanced it and used it for the plug'in system.
-
In fact, my first scripting engine was dedicated to layout. But later i enhanced it and used it for the plug'in system.
What sort of plugins have people written in VB script for Atomic? I'd be interested to know what would be possible by a scripting language for a plugin system.
-
I have plug'ins :
To control volume
To list clone and run it
To display control of the game on screen
To display all info of mame game on screen in shape of icones
To shuffle Mp3
To filter list
To speech game name
To display control panel , marquee, docs etc , on demande
To scroll history of the game on screen.
To switch Mame Artwork.
There is also Arzoo's plugins for LEDWIZ.
Few others are very specific to users. Like recently a user is doing a Gauge to indicate how much freespace left on his SD Card where roms are located.
In addition as with my plug'ins system you can interract with the layout. You can do what you want graphically.
-
Some impressive things that VB script can do then. More than I expected, like I didn't think it could control global volume. That is even relatively complex in C++. But I think it has access to the COM interface so it can probably do quite alot. Probably can access Win32 API too.
I don't think the LEDWiz plugin would be possible with just VB script though as it needs to communicate to a dll or ocx. So in that respect I think that is where scripting is limited. When it comes to interopping with dll's or accessing hardware through USB it probably not possible. Arzoo's plugin runs as an executable in the taskbar (I know this because it uses several dll's I've written) so I don't think it is categorised as a VB script type plugin.
Seems strange you haven't added support for dll plugins via LoadLibrary() as it's very easy to write a plugin system in C++. Much easier than adding scripting support, so I don't understand why you didn't do that as well as scripting?
-
double post
-
You can not do all this thing with standard VBScript , i have enhanced it with a bunch of function (written in c++) , to control things in Atomic.
Like displays sprite for instance , ScrollText , Fill Atomic Game Lists ..etc..
Look that video, if a WIP of a plugin done by a Atomic user who already made lot of plug'ins.
http://www.dailymotion.com/video/x3kok5_control-info-wip2_videogames
It is not yet nice, but you can see, what is possible.
I didn't added DLL support nativly yet , just because i wanted to do something different , and something where you don't need a development tool. (except the notepad!).
That's also a way for me to better support user. When they ask for something not in standard, i can quickly do a plugin or at least the base , and give it to him, then he can customise as he want , without the need of development tool or being a "hardcore" developper.
I thought , at one moment, to support Mala plug'in nativly. But, i have more a "moral" problem, is it fair play? Create my own dll based plug'ins system not compatible with mala, what is really the interrest? If a guy is able to make a dll plugin he is able to make vbscript plug'ins.
I don't know. Sure, if i had lot of time, it will be already here i think, but i have not really lot of free time , so i prefer be concentrate on other parts.
-
loadman: i was in no way dissing Mala's plugin language more my lack of devotion to learning C or Delphi .. most of the stuff i needed to do i could write auto-hotkey scripts for but that's just a cheap hack to myself personally. But Headkaze is right i was just personally noteing that some form of scripting language is way more accessible to allot of people including myself. but that was just a personal wish not a judgment or anything i can perfectly understand using a plugin language the app is written in.
That's cool.
My view at the moment if the plug-in needs to do a simple task I am happy to start the code for them as a 'proof of concept' then leave it with them to expand if they want. I have done this for a couple of users so far.