RadKade (What's Up)

lamuelwms

New member
RL Member
Thoughts about RadKade

So, essentially I thought that I would just write a small post to further elaborate on what RadKade is going to be and the direction it is going to take down the road. I have written this to some degree, but never fully explained in detail what it was I was thinking when designing the system. So, if you feel like a little read about our future and what is in store down the road, or if you are just curious about the creation of a frontend then stay all the same. If you have any questions about the development process or anything please feel free to let me know.


The RadKade Model

Well, this is more a personal belief and not factual; but we feel that every aspect of a frontend should be open to the public and provided at no cost. One thing is certain, the creation of a frontend is not technically difficult; as a matter of fact it is quite simple (especially if you are using external libraries to lift most of the code for you.) RadKade will use external libraries to render its graphics (more specifically OpenGL 3.0 and SDL (depending upon what your system supports), DirectX will not be supported in this release or subsequent releases) as well as external database libraries. In order for a library to be included in RadKade IT MUST be open source and readily available to the public (also maintained). We at no time will use external proprietary encoding/decoding drivers to handle our payload, nor will we rely on any commercial library or device driver (as that goes against our core beliefs).

There are a lot of really nice frontends out there (RetroFE comes to mind) that are already open source and available to the public at zero cost and for that we are grateful and we applaud those authors. On the other side of the token there are commercial frontends (which in and of itself is fine), but it's the frontends with hidden costs that irratate us (you can download the app for free but to get the media (which they do not own by legal definition) easily you have to buy ("donate") to their services.) Our model is one of the public meaning that anybody who wants the application will be entitled to all content therein at no charge, and we completely operate within the confines of legal terms and respect all DCMA request promptly. Furthermore, we believe that the public should be entitled to the natural source code of the frontend to inspect and verify the integrity of the project and all of its components (as some aspects of our frontend will periodically submit information (not limited to) error reports, twitter/facebook integration methods, forum logins and other various network utilites.

The Core Programming

Trust us when we say we have experimented with various programming languages (fun fact: the first RadKade was developed in WPF) and methods to make our dream become a reality. At the end of many months of benchmarking, testing and development we have decided to use Java 1.8 as the backbone of the application. Our application will be built using the LibGDX libraries and methods. You might be asking yourself "why Java", and the answer to that is quite simple: human readability. We wanted anybody to be able to pick up our source code and understand it (without being a professional developer.) In an application such as an arcade frontend Java fits the bill quite well as it is portable, well documented/structured and easily accessible. Before I go much further allow me to clear up any ignorance regarding Java that may exist.

Java is slow
While this used to be 100% true it is absolutely false in this modern age of computing. Since Java 1.4 Java is actually almost on par with C++ and runs (typically) substantially faster than most non-c based languages. This is due to the fact that Javas JIT compiler being overhauled by Sun to make sure that code that operates frequently is highly optimized

Java is riddled with memory leaks
Once again this used to be accurate; but now Java has amongst some of the best garbage collection around.

At the end of the day (and I am sure an Java developer will agree with me here), it's not so much the framework that screws your program over, it's the programmer. If you program sloppy, don't clean up objects or other unused trash it will sit in memory and leak like a boat with a hole in its side. Please understand that I am not writing this article to defend why we are using Java, I am writing it to inform you of our choice to use Java. I have been a .NET developer (professionally) for going on ten years and every single time if given the choice between .NET and Java I would choose Java. Now, I am not saying .NET is bad or anything but I really just don't care for certain aspects of it (mainly being the fact I can't run the programs on my Linux machine (minus MONO built applications) but that is somewhat of a myth there too which we will touch on another day perhaps.)


Database Management

During your time with other frontends you have probably gotten used to the XML databases. While technically XML databases do serve a very good purpose and are totally feasible do not expect to see them make an appearance in RadKade whatsoever. RadKade is using SQL (adapters included) to handle its own private databases. Our backend system will allow users to browse through the entire database, edit information and access data on the fly with minimal lag. Essentially what this means is instead of holding one XML file in a memory object for each system we are going to have a master database that holds information for all systems therein. We have chosen this method because in our opinion it is easier for people to just setup and go if they don't have to worry about keeping external XML files up to date, or have to sift through thousands of lines (in most cases) of XML data to find something they are looking for; instead they can simply search by title, description, genre or manufacturer to find what they want.

Don't fret though our SQL database system is able to be packed and moved to various RadKade installations around globally. You will not need to worry about having the latest SQL drivers as they are prepackaged into RadKade directly (open source of course) so that from the moment you download, unzip and install RadKade you can start editing immediately.


Packaging

Love your RadKade setup and want it on another machine? No problem, we've got you covered as RadKade comes with a built in packer that will allow you to effortlessly move your RadKade installation (partial or whole) to another system via network (Internet/Lan) 256AES encryption, External media device.


Conclusion

So with everything here being said we are still very excited about the future of the RadKade project and expect big things to come from it. Our working philosophy is that if RadKade makes a small group of people happy then we have done our job right. We are also currently investigating other server options as GoDaddy seemed to bomb out (great for registering a domain) in terms of actual hosting. Probably be 2-14-2015 we will have made our final selection on server hosting (as it is in heavy talks at the moment) based on the server that can meat our global needs and the needs of the community. So, if you have any questions about RadKade in the meantime feel free to discuss them here with us on the space that DJVJ has so generously provided for us, and thanks for reading!
 

Potts43

New member
RL Member
On paper sounds extremely positive. I'm very interested in beta testing once it's at that stage.
 

lamuelwms

New member
RL Member
On paper sounds extremely positive. I'm very interested in beta testing once it's at that stage.

Yeah, I know the post was a little "wordy" but there is a lot that I want to convey about RadKade such as why its being made, what it is, etc. Plus when I write things like the above it gets me a little more motivated and actually gives me ideals lol. And sure thing about the beta testing!
 

rfancella

Super Moderator
Supporter
RL Member
Yeah, I know the post was a little "wordy" but there is a lot that I want to convey about RadKade such as why its being made, what it is, etc. Plus when I write things like the above it gets me a little more motivated and actually gives me ideals lol. And sure thing about the beta testing!

I also did some beta for you before. I'd be glad to help out again. :D

Thanks,
Ron
 

lamuelwms

New member
RL Member
Awesome! Sounds like a plan Ron! I should have the attract mode done today (I am creating scenes and coding like a mad man over here.) I'll post a video of it once it is done.
 

marxkemp

Moderator
Moderator
Like the last beta testing a few months ago im still in if you want more input. I did send you one long list of my findings and all were discussed!
 

lamuelwms

New member
RL Member
Add me to the beta testers again. Looking forward to it!

Hell, it wouldn't be RadKade without you in the mix old chap! I am having more fun than should be allowed programming the attract sequence. Hope you guys like what I will show you all later today!
 

lamuelwms

New member
RL Member
Well, as I stated earlier I have been working on RadKade the better part of the day fleshing out the menu artwork and so forth. I do think it is worth mentioning that all of the artwork (making up the core of RadKade) is sprite art and hand drawn. I'm not gonna show you all that just yet, but I will show you a preview of the attract mode (please note this attract mode is fully customizable.) Also, bear in mind that we are not just trying to program a frontend; the market is flooded with those things but rather we are trying to program something that actually feels like an arcade machine and I will not rest until I captured that feeling. Also note that this is only a few hours of progress; the final version will be substantially more fleshed out than this.

 

lamuelwms

New member
RL Member
Never was dead, I was only detained lol; I think bondy is the only one who knows the whole story; and he ain't talking lol. By the way guys, I need one of you that I can bounce ideals off of in private so if anybody wants to be involved with the project through and through just let me know (stares intently at bondy.) Oh my God I made a Boy George attract mode theme that was just to die for lol; I'll post a video of it shortly.

EDIT: Once again I cannot say this enough because I have already gotten messages from people (not on this site btw) who are not a fan of RadKade at all, they say it doesn't have enough "flash" enough "flare"; well to them I say balls. It's not that I don't care what people want, because trust me I do. However, RadKade is not about how much swf files you can cram under the hood, it's about connecting with our past and dare I say it's even more about fellowship more than the frontend. RadKade was originally started out as a need for a frontend to put on my personal arcade machine and I was not even going to distribute it to the public; I want a frontend that can actually make me smile when I walk by it and see something conky on the screen; so here's to my fellow 80s ADHD old bastards just like me, you're who I'm making it for! :D

Here I'll just leave this here too since I'm in such a frisky mood:

 
Last edited:

Potts43

New member
RL Member
Life has choices and so is your choice of fe.. If they don't like it then don't use it and move on...missing out on what might be great!
 

nosh

New member
RL Member
Never was dead, I was only detained lol; I think bondy is the only one who knows the whole story; and he ain't talking lol. By the way guys, I need one of you that I can bounce ideals off of in private so if anybody wants to be involved with the project through and through just let me know (stares intently at bondy.) Oh my God I made a Boy George attract mode theme that was just to die for lol; I'll post a video of it shortly.

EDIT: Once again I cannot say this enough because I have already gotten messages from people (not on this site btw) who are not a fan of RadKade at all, they say it doesn't have enough "flash" enough "flare"; well to them I say balls. It's not that I don't care what people want, because trust me I do. However, RadKade is not about how much swf files you can cram under the hood, it's about connecting with our past and dare I say it's even more about fellowship more than the frontend. RadKade was originally started out as a need for a frontend to put on my personal arcade machine and I was not even going to distribute it to the public; I want a frontend that can actually make me smile when I walk by it and see something conky on the screen; so here's to my fellow 80s ADHD old bastards just like me, you're who I'm making it for! :D

Here I'll just leave this here too since I'm in such a frisky mood:


I am personally a fan of of the flash, but at the end of the day what is the point if it doesn't predictably perform well. In HS I would be happy if there were no animation in themes at all I mean honestly there are only a select few themes that "feel" right, most of them just look animate like a powerpoint I made in highschool. I think a lot of the important stuff is subtle like smooth easing of the animation moving through systems/roms.

There is a lot about your plans that I like one big thing being the SQL approach which I agree should be much faster. I am assuming this will probably be somewhat similar to what is being developed for Retroarch where they are using RDB databases which also just require adapters and not a separate install.

I am personally a C# guy and have no experience with straight Java but the library you are planning to use looks promising. I understand the sort of feel your going for however I do hope to see some of the cool modern capabilities an OpenGL library has to offer like particle effects and such.

I am excited to see what comes out of this, seems like you guys have a good plan.
 

lamuelwms

New member
RL Member
Well, I can tell you get where I am coming from nosh. Yeah for me I am more about the data vs animations. I want our system to make the data primary feature. Let me clear one thing up right now, while we are using SQL for databases most people say (how will I get updated databases, etc)? RadKade has a built in bridge to our server where it can get values to populate its database (ie you can update your database to match the current server version.) I have a lot of big ideals and am really trying to get them all fleshed out; for me it's the little features that make a system fun, for instance the little trivia questions that appear in attract mode (kind of like they appear in movie theaters.)
 

lamuelwms

New member
RL Member
So, worked on the attract sequence this morning and here is one that I made for my system, and it fits my bill pretty nicely. Essentially it is your typical arcade attract mode that displays system name, along with some other slides and then this style displays random background snaps with their titles flying by. Now that I have this created it is time for me to really dig in and flesh out the main menu. Also, I want to add a slide in the system for HyperLaunch so if anyone has any clean (or pixel) artwork for HyperLaunch lets see it so I can add that in; I really do think HyperLaunch deserves a place in RadKades credits.


[EDIT] Crud, just realized that I didn't have background tweening on in that video so you're missing out on a nice effect that was implemented this afternoon. Will upload later today, but the above still gives the basic jist of what I'm talking about.
 
Last edited:

Boltzmann

New member
Supporter
RL Member
RadKade is looking better at every iteration. A serious contender to replace HyperSpin on my HTPC.
 

lamuelwms

New member
RL Member
For the TLDR peeps, this does not mean RadKade is browser based.

A Small Update

So, we have been busy as beavers over here on the RadKade team; also we have chosen a new domain provider and hope to have that up and running by the end of the month. I just thought I'd post a little bit as to what we have been up to.

First and foremost I would like to introduce you all to the new face of RadKade, a fully themeable, skinnable application complete with video support, tweens and particle effects. After much consideration and deliberation we have decided to develop RadKade RC in HTML5 as it seems to be one of the few future proof languages these days (save C++.) The core of RadKade is still heavily embedded in Java and we are happy about that because we love our Java!

RadKade RC is being built around the Chromium browser for integration purposes (iOS, Windows & Linux) complete with HTML5 integrated support. What does this mean for you the end user? Well, technically not a lot as RadKade will continue to do what it was designed to do which is run games, and look good doing it (albeit I am a horrible theme creator which is why we would like the community to help us out there with themes, and so forth.) The RadKade themes allow for you to implement a broad array of techniques such as image filters, advanced animation (pathing and static), and raster effects not found anywhere else.

One of the biggest changes with RadKade is the side load integration we are working on over here. Essentially what it will allow you to do is install RadKade on one PC and use that PC as RadServer and run that same install of RadKade across multiple PC's on LAN or across the ocean via TCP/IP. I won't get into specifics as to how it works except to say, what happens on PC B is you request to play a game, PC B sends PC A a encrypted signal and receives the game file, and launches it. But the integration doesn't stop there as everything can be streamed via RadServer, images, videos and more.

Right now, I am waist deep in theme integration to allow users to take full advantage of JavaScript theme designing. I predict another week or so before I have fully coded the RadTheme API that will allow users to create amazing themes with amazing effects. But for now, just to confuse you further here is RadKade, running in a web browser?!? :O

EDIT: Changed some of the wording as not cause confusion amongst the masses. Please take heart at our core we are still a desktop application and always will be. This post refers to RadKade RC only and does not in any way, shape or from reflect RadKade Desktop Application. Even though RadKade is programmed in Java it will allow for HTML5 translation in its themes, because HTML5 10x > Adobe Flash (which is a dying horse.)
 

Attachments

  • 1.jpg
    1.jpg
    189 KB · Views: 51
  • 2.jpg
    2.jpg
    196.9 KB · Views: 46
  • 3.jpg
    3.jpg
    173.1 KB · Views: 43
  • 4.png
    4.png
    390.8 KB · Views: 41
Last edited:
Top