Jump to content

Enyby

Administrators
  • Posts

    8,811
  • Joined

  • Last visited

  • Days Won

    1,033

Everything posted by Enyby

  1. Enyby

    GameGuardian

    I still do not understand you. Try to stop writing in riddles. Describe everything completely and normally.
  2. Enyby

    GameGuardian

    What?
  3. No. Depends from game how stored strings.
  4. car_ids.txt
  5. Leave it as zero if you do not know for what it.
  6. @NoFear You can search pointer faster: long tap - pointer search - new search.
  7. Enyby

    GameGuardian

    The phone must not be rebooted. If it reboots, it's an Android bug and you can not use this function.
  8. Enyby

    GameGuardian

    Use second link for download: https://gameguardian.net/apk
  9. File must have extension .lua for avoid messing up users.
  10. Also you can reboot your device manually. It must help able run your game without reboot device.
  11. Enyby

    GameGuardian

    https://gameguardian.net/forum/topic/18482-android-reboots-after-use-prevent-protection/?do=findComment&comment=66004
  12. Enyby

    GameGuardian

    What's New in Version 8.43.1 Hotfix: Clean up bad settings that cause the device to reboot. Built with support for ARMv5.
  13. For prevent run protection we use android trick for preload libs. Unfortunately it is broken in many firmwares. It is lead to crash zygote before fork. It is cause reboot phone. It is bug: https://issuetracker.google.com/issues/62179655 https://android.googlesource.com/platform/frameworks/base.git/+/master/core/jni/com_android_internal_os_Zygote.cpp art/runtime/jni_internal.cc:492] JNI FatalError called: frameworks/base/core/jni/com_android_internal_os_Zygote.cpp:976: Unable to restat file descriptor table. // Utility routine to fork zygote and specialize the child process. static pid_t ForkAndSpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray javaGids, [...] // If this is the first fork for this zygote, create the open FD table. // If it isn't, we just need to check whether the list of open files has // changed (and it shouldn't in the normal case). std::vector<int> fds_to_ignore; FillFileDescriptorVector(env, fdsToIgnore, &fds_to_ignore); if (gOpenFdTable == NULL) { gOpenFdTable = FileDescriptorTable::Create(fds_to_ignore); if (gOpenFdTable == NULL) { RuntimeAbort(env, __LINE__, "Unable to construct file descriptor table."); } } else if (!gOpenFdTable->Restat(fds_to_ignore)) { // <------- restat failed RuntimeAbort(env, __LINE__, "Unable to restat file descriptor table."); // <------- abort here } pid_t pid = fork(); // <------- fork here so all above in parent process not in child if (pid == 0) { https://android.googlesource.com/platform/frameworks/base/+/master/core/jni/fd_utils.cpp Unsupported st_mode 4480 bool FileDescriptorTable::Restat(const std::vector<int>& fds_to_ignore) { [...] return RestatInternal(open_fds); } [...] bool FileDescriptorTable::RestatInternal(std::set<int>& open_fds) { [...] if (!same_file) { // The file descriptor refers to a different description. We must // update our entry in the table. delete it->second; it->second = FileDescriptorInfo::CreateFromFd(*element); // <------ return NULL here if (it->second == NULL) { // The descriptor no longer no longer refers to a whitelisted file. // We flag an error and remove it from the list of files we're // tracking. error = true; // <------ set error it = open_fd_map_.erase(it); [...] if (open_fds.size() > 0) { // The zygote has opened new file descriptors since our last inspection. // We warn about this condition and add them to our table. // // TODO(narayan): This will be an error in a future android release. // error = true; // ALOGW("Zygote opened %zd new file descriptor(s).", open_fds.size()); // TODO(narayan): This code will be removed in a future android release. std::set<int>::const_iterator it; for (it = open_fds.begin(); it != open_fds.end(); ++it) { const int fd = (*it); FileDescriptorInfo* info = FileDescriptorInfo::CreateFromFd(fd); // <------ return NULL here if (info == NULL) { // A newly opened file is not on the whitelist. Flag an error and // continue. error = true; // <------ set error [...] return !error; // <------ return error } [...] FileDescriptorInfo* FileDescriptorInfo::CreateFromFd(int fd) { [...] // We only handle whitelisted regular files and character devices. Whitelisted // character devices must provide a guarantee of sensible behaviour when // reopened. // // S_ISDIR : Not supported. (We could if we wanted to, but it's unused). // S_ISLINK : Not supported. // S_ISBLK : Not supported. // S_ISFIFO : Not supported. Note that the zygote uses pipes to communicate // with the child process across forks but those should have been closed // before we got to this point. if (!S_ISCHR(f_stat.st_mode) && !S_ISREG(f_stat.st_mode)) { // <------ f_stat.st_mode == 4480 here LOG(ERROR) << "Unsupported st_mode " << f_stat.st_mode; return NULL; // <------ return null } st_mode 4480 is 00010600, so is S_IFIFO | S_IRUSR | S_IWUSR, so is FIFO (pipe maybe) and cause abort. This code run before fork(), so it run in zygote process. It is mean crash zygote. If zygote crashed - phone immediately reboot. Look like before run check not all pipes closed. Solution: do not use 'prevent protection' mode in GG. If you used it and phone reboot on any call this app - install and run GG at least 8.43.1. On start daemon it clear all bad settings.
  14. Enyby

    LUA scripting

    If you need input more then allow internal keyboard then it switches to external. internal keyboard is small and contains only subset of chars. You need full keyboard for input name. But for input number for search it is enough. If you set type of field is text - then it be external keyboard. If - number - then internal kbd can be used. _______________________________________________ added 1 minute later For example you can see string search script. If you select type "text" - used external keyboard. For "hex" - internal. _______________________________________________ added 2 minutes later See param types: https://gameguardian.net/help/classgg.html#afe6c5b86ba0ae295899fd259232aac2b Run example.
  15. Enyby

    LUA scripting

    Use internal keyboard and you do not mess eye with next. We do not have plans for control GG UI via scripts. They intended to customize actions, not look and feel of UI.
  16. Enyby

    LUA scripting

    What you want achieve?
  17. Enyby

    GameGuardian

    Also you can use this test version. On every start it run clean automatically. So you only need run GG after failure with game and it clear all bad settings. GameGuardian.git_signed.apk _______________________________________________ added 0 minutes later You forget two single quote at end. Be more carefully.
  18. Enyby

    GameGuardian

    Run in terminal: su setprop wrap.com.maingames.android.SPEN '' All must work as before.
  19. Enyby

    GameGuardian

    Restart phone and run in terminal (install terminal from market): su getprop Show this output.
  20. https://gameguardian.net/forum/topic/7398-gathering-information-about-gg-errors/ Exactly.
  21. Compare: https://gameguardian.net/forum/gallery/image/354-implosion-never-lose-hope-hack-credits-hide-from-the-game-gameguardian/ and https://gameguardian.net/forum/gallery/image/360-implosion-never-lose-hope-hack-credits-restart-without-protection-gameguardian/
  22. Then do not use this option. It may not work on some firmwares or kernel.
  23. Enyby

    GameGuardian

    What's New in Version 8.43.0 Added restart of the game without protection. Added info about bypassing protection in the help. Improved detection avoidance. Improved interface. Improved speedhack. Fixed bugs. Updated translations. Built with support for ARMv5.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.