The state of DraStic and its future
Hi everyone,
As many of you are aware, there's been a lot of uncertainty in what the current state of DraStic is (especially on Android) and what can be done. I think enough is clear on my side now that I can talk in more detail about where things currently stand.
The situation with Lordus
First some background, for those who aren't aware. I originally developed DraStic on my Linux desktop, then released it for the Linux-based Open Pandora handheld in Feburary 2013. I had long term plans to eventually release it for sale on Android, but I didn't have any experience with developing for Android. For that reason I asked my long time friend Lordus if he wanted to help with this, and he agreed. I feel like Lordus went well beyond my expectations in providing features and updates for DraStic's Android build.
I'm sad to say that I haven't heard from Lordus in a while. He became unresponsive starting around early October of last year. I did hear from him for two days in the middle of January. He expressed that he was having some personal issues, but I can't say much more than that, and while that gave some assurance that something severe and unrecoverable didn't happen to him I haven't heard from him since. All avenues of contact such as e-mail and phone numbers have been unfruitful. He lives in a different country from me, and while I have an address I don't know if he still lives there and I don't think it'd be a good idea to try to contact him this way. Honestly I'm just really worried about him and I hope he can still be reached some day, and that nothing truly awful has happened to him. If he feels burdened about contacting me because of his role with DraStic then I do hope that he reads this post one day and that it helps relieve him of that burden.
While I've maintained a repository for DraStic and ultimately had authorship/approval on Google Play, Lordus basically handled building and updating the Android versions from end to end. Lordus included all of the source code, assets, scripts, and directions for building on Android so I could take over in case he wasn't available. Unfortunately, there were pieces of the repository that were not kept up to date, so after a certain point I could no longer build new versions. As Lordus was committing things to other parts of the repository I wasn't aware that it was incomplete until it was too late. So, that means that there are some changes that have been made to the emulator that were lost and have to be reimplemented.
What this means is that source code to some parts of the updates made from around version 2.4.0.1 and onwards were lost. Raw assets were also lost, but these could be trivially recovered from the APK.
Ultimately this indicates some major mistakes on my part. I should have insisted on being able to build every official release identically before publishing them, and I should have maintained more avenues of contact and contingencies in place in the event that Lordus was no longer available. I can only apologize for these serious oversights.
What will happen in the near term
Fortunately, there is some good news. Recently I've been approached by xperia64, who told me that if Lordus's changes were in the APK's DEX classes (code that's been compiled from Java to Dalvik bytecode) he would be able to recover them. Initially I thought that Lordus's work was primarily in the app's NDK library (native compiled C code), but actually it looks like almost everything pertinent was in the Java code.
xperia64 has worked by manually decompiling Smali to reproduce Lordus's Java changes, and I've reviewed Lordus's NDK code to see where changes should be applicable. We've got things building and right now it looks like we have a build that at first glance appears to be about to the level of 2.5.0.3a again.
I intend to release this APK as an alpha in the next week or two, and hopefully it will undergo extensive testing to find any possible regressions or any other things that we've missed. When we feel that it's good enough we'll move it to beta, and after enough time we should be able to release more full updates again.
Longer term outlook
I'd like to get to a point where at the very least bug fixes, minor feature additions and optimizations can be resumed in the Android version.
There's also a very real possibility that the app will become open source in the future. For anyone interested in buying it (who hasn't yet) it may be worth waiting for this instead, since that would almost certainly mean it could be obtained for free later. But this isn't something I can really guarantee just yet. I will say that even if this happens the work done to get a complete building and stable/non-regressing source repository is an absolutely essential prerequisite.
I also intend to work on getting the Raspberry Pi version in a better state, and then I can most likely release more or less equivalent builds for Linux and Windows PCs (just x86 desktop, not Windows Phone)
I think that's everything. Please let me know if anyone has any questions, I will be happy to answer them in this thread.
As many of you are aware, there's been a lot of uncertainty in what the current state of DraStic is (especially on Android) and what can be done. I think enough is clear on my side now that I can talk in more detail about where things currently stand.
The situation with Lordus
First some background, for those who aren't aware. I originally developed DraStic on my Linux desktop, then released it for the Linux-based Open Pandora handheld in Feburary 2013. I had long term plans to eventually release it for sale on Android, but I didn't have any experience with developing for Android. For that reason I asked my long time friend Lordus if he wanted to help with this, and he agreed. I feel like Lordus went well beyond my expectations in providing features and updates for DraStic's Android build.
I'm sad to say that I haven't heard from Lordus in a while. He became unresponsive starting around early October of last year. I did hear from him for two days in the middle of January. He expressed that he was having some personal issues, but I can't say much more than that, and while that gave some assurance that something severe and unrecoverable didn't happen to him I haven't heard from him since. All avenues of contact such as e-mail and phone numbers have been unfruitful. He lives in a different country from me, and while I have an address I don't know if he still lives there and I don't think it'd be a good idea to try to contact him this way. Honestly I'm just really worried about him and I hope he can still be reached some day, and that nothing truly awful has happened to him. If he feels burdened about contacting me because of his role with DraStic then I do hope that he reads this post one day and that it helps relieve him of that burden.
While I've maintained a repository for DraStic and ultimately had authorship/approval on Google Play, Lordus basically handled building and updating the Android versions from end to end. Lordus included all of the source code, assets, scripts, and directions for building on Android so I could take over in case he wasn't available. Unfortunately, there were pieces of the repository that were not kept up to date, so after a certain point I could no longer build new versions. As Lordus was committing things to other parts of the repository I wasn't aware that it was incomplete until it was too late. So, that means that there are some changes that have been made to the emulator that were lost and have to be reimplemented.
What this means is that source code to some parts of the updates made from around version 2.4.0.1 and onwards were lost. Raw assets were also lost, but these could be trivially recovered from the APK.
Ultimately this indicates some major mistakes on my part. I should have insisted on being able to build every official release identically before publishing them, and I should have maintained more avenues of contact and contingencies in place in the event that Lordus was no longer available. I can only apologize for these serious oversights.
What will happen in the near term
Fortunately, there is some good news. Recently I've been approached by xperia64, who told me that if Lordus's changes were in the APK's DEX classes (code that's been compiled from Java to Dalvik bytecode) he would be able to recover them. Initially I thought that Lordus's work was primarily in the app's NDK library (native compiled C code), but actually it looks like almost everything pertinent was in the Java code.
xperia64 has worked by manually decompiling Smali to reproduce Lordus's Java changes, and I've reviewed Lordus's NDK code to see where changes should be applicable. We've got things building and right now it looks like we have a build that at first glance appears to be about to the level of 2.5.0.3a again.
I intend to release this APK as an alpha in the next week or two, and hopefully it will undergo extensive testing to find any possible regressions or any other things that we've missed. When we feel that it's good enough we'll move it to beta, and after enough time we should be able to release more full updates again.
Longer term outlook
I'd like to get to a point where at the very least bug fixes, minor feature additions and optimizations can be resumed in the Android version.
There's also a very real possibility that the app will become open source in the future. For anyone interested in buying it (who hasn't yet) it may be worth waiting for this instead, since that would almost certainly mean it could be obtained for free later. But this isn't something I can really guarantee just yet. I will say that even if this happens the work done to get a complete building and stable/non-regressing source repository is an absolutely essential prerequisite.
I also intend to work on getting the Raspberry Pi version in a better state, and then I can most likely release more or less equivalent builds for Linux and Windows PCs (just x86 desktop, not Windows Phone)
I think that's everything. Please let me know if anyone has any questions, I will be happy to answer them in this thread.
Re: The state of DraStic and its future
This is not a question.
I would still beta the app compatibility if they would still be uploaded on the drive repository. Basically, I only have my old tab to work with and unlike the g2 (which was sadly stolen), it does not like doing updates on the play channel (it being chinese) although it has a working playstore.
I am really sad that this is how it is moving forward but I guess if Lordus is not responding, we can just hope he is safe and would one day come back.
I would still beta the app compatibility if they would still be uploaded on the drive repository. Basically, I only have my old tab to work with and unlike the g2 (which was sadly stolen), it does not like doing updates on the play channel (it being chinese) although it has a working playstore.
I am really sad that this is how it is moving forward but I guess if Lordus is not responding, we can just hope he is safe and would one day come back.
Behold my mighty
Re: The state of DraStic and its future
Okay, I can upload alpha/beta APKs there too.Jay Haru wrote:This is not a question.
I would still beta the app compatibility if they would still be uploaded on the drive repository. Basically, I only have my old tab to work with and unlike the g2 (which was sadly stolen), it does not like doing updates on the play channel (it being chinese) although it has a working playstore.
I am really sad that this is how it is moving forward but I guess if Lordus is not responding, we can just hope he is safe and would one day come back.
- Steak_Typhoon
- Posts:38
- Joined:Mon Feb 06, 2017 3:46 pm
Re: The state of DraStic and its future
I'm interested in testing the alpha. I have an extensive library of DS ROMs I could test various known bugs on and I have some experience with running homebrew on an AceKard 2i. I really love Drastic and want to see it made better.Exophase wrote: I intend to release this APK as an alpha in the next week or two, and hopefully it will undergo extensive testing to find any possible regressions or any other things that we've missed. When we feel that it's good enough we'll move it to beta, and after enough time we should be able to release more full updates again.
My thoughts are with Lordus and I hope he's doing okay.
Steak Typhoon: The most delicious natural disaster.
Re: The state of DraStic and its future
First of all, I hope Lordus is okay, and I wish the best for him, Hopefully he is just having some IRL issues and will be able to pull through, this is often the fate for a lot of independent developers online albeit usually temporary.
I do have some questions, if you were to indeed Open Source Drastic DS, how you would you feel about several ad filled clones on the Play store with no features added? Would imposing a semi-permissive license that does not allow monetary gain be more effective, or not a good idea? It's often a dilemma of course but it depends what you want.
As for the alpha/beta test APKs, where do you plan to have the bugs ans regressions reported to? I know there is a Google Group for the Beta version but to my knowledge not everyone uses it.
I do have some questions, if you were to indeed Open Source Drastic DS, how you would you feel about several ad filled clones on the Play store with no features added? Would imposing a semi-permissive license that does not allow monetary gain be more effective, or not a good idea? It's often a dilemma of course but it depends what you want.
As for the alpha/beta test APKs, where do you plan to have the bugs ans regressions reported to? I know there is a Google Group for the Beta version but to my knowledge not everyone uses it.
Re: The state of DraStic and its future
Right now there are already cracked and modified APKs that are filled with ads, although they're based on old versions without hires 3D. If it was open source there probably wouldn't be much point in charging for it, so most likely the official release or some other trusted releases would eclipse anything with ads.kaikun97 wrote:I do have some questions, if you were to indeed Open Source Drastic DS, how you would you feel about several ad filled clones on the Play store with no features added? Would imposing a semi-permissive license that does not allow monetary gain be more effective, or not a good idea? It's often a dilemma of course but it depends what you want.
This forum, most likely.kaikun97 wrote:As for the alpha/beta test APKs, where do you plan to have the bugs ans regressions reported to? I know there is a Google Group for the Beta version but to my knowledge not everyone uses it.
- huckleberrypie
- Posts:441
- Joined:Sat May 31, 2014 4:21 am
- Contact:
Re: The state of DraStic and its future
My prayers and regards for Lordus, well since I am just as worried as you guys do over his well-being.
As for Drastic itself, 'tis sad that you guys have to go through the phase where part of the source is MIA and you basically have to crack your own app, as ironic as it sounds. Even if my friend and I paid for Drastic I wouldn't mind it being open-sourced as it would pave the way for future improvement. Sure, that does lead to unscrupulous vendors who's only after the kickback they get off running ads plastered on rehashed emulator code with nothing substantial thrown in other than a new coat of paint (wow that sure is a mouthful), but as Exo said adware emus using Drastic code do exist. That being said I think a non-commercial clause or something that should deter knockoffs should be in order, so as to keep Drastic-derived shovelware to a minimum. It's just the matter of having the initiative to file complaints I guess.
Also, will there be a github repo or some buildbot for nightlies?
As for Drastic itself, 'tis sad that you guys have to go through the phase where part of the source is MIA and you basically have to crack your own app, as ironic as it sounds. Even if my friend and I paid for Drastic I wouldn't mind it being open-sourced as it would pave the way for future improvement. Sure, that does lead to unscrupulous vendors who's only after the kickback they get off running ads plastered on rehashed emulator code with nothing substantial thrown in other than a new coat of paint (wow that sure is a mouthful), but as Exo said adware emus using Drastic code do exist. That being said I think a non-commercial clause or something that should deter knockoffs should be in order, so as to keep Drastic-derived shovelware to a minimum. It's just the matter of having the initiative to file complaints I guess.
Also, will there be a github repo or some buildbot for nightlies?
Re: The state of DraStic and its future
The future being open source is just a possibility right now, and not something that can happen any time particularly soon. So I'd rather not decide too much about how that would happen at this time.
Re: The state of DraStic and its future
I think its a good idea to make a seperate board for beta/alpha bug reports etc.Exophase wrote:Right now there are already cracked and modified APKs that are filled with ads, although they're based on old versions without hires 3D. If it was open source there probably wouldn't be much point in charging for it, so most likely the official release or some other trusted releases would eclipse anything with ads.kaikun97 wrote:I do have some questions, if you were to indeed Open Source Drastic DS, how you would you feel about several ad filled clones on the Play store with no features added? Would imposing a semi-permissive license that does not allow monetary gain be more effective, or not a good idea? It's often a dilemma of course but it depends what you want.
This forum, most likely.kaikun97 wrote:As for the alpha/beta test APKs, where do you plan to have the bugs ans regressions reported to? I know there is a Google Group for the Beta version but to my knowledge not everyone uses it.
Re: The state of DraStic and its future
An open beta would reach pretty far I guess, so if there's some tools like "the app crashed! send a log to abc@xyz." maybe it would ease out debugging. You could even add some tracking and make a nice graphic of how many logs are from Pokémon!
Also, licence hell aside, open sourcing it might allow you to reap the future advances on connectivity. I hope that the new efforts at DS emulation can be converged at least, since as of now each is paving it's own way.
Also, licence hell aside, open sourcing it might allow you to reap the future advances on connectivity. I hope that the new efforts at DS emulation can be converged at least, since as of now each is paving it's own way.
BE ATTITUDE FOR ENGRISH