EST_CS2 - SCRIPT CONTROL

● ARCHIVED · READ-ONLY
Started by estriole 12 posts View original ↗
  1. EST_CS2 - SCRIPT CONTROL

    Author  : Estriole & caitsith2
    Version : 2.0

      this script written based (also take some code) from:

       TDS - SCRIPT DISABLER
       Author  : TDS
       Version : 1.0 

     ■ Changelog        ╒═════════════════════════════════════════════════════════╛

    Spoiler
     v1.0 2014.06.14     >     Initial Release

     v1.1 2014.06.16     >     add simple dumb encryption so the rvdata2 cannot read easily
     v1.2 2014.06.18     >     improve the dumb encryption with reverse method.
                         >     add REAL encryption using cypher method.
                         >     make the encryption and decryption as method.
                         >     add support for having crypt key hidden inside the hidden script
                               so it's harder to crack. double encryption
     v1.3 2014.06.27     >     Fix script folder cannot be changed. thx to caitsith2 for pointing it out.
                         >     Add temp_key encryption to your hidden key. harder to crack

     v1.4 2014.06.30     >     Add Triple encryption using caitsith2 code.                    
     v1.5 2014.07.04     >     Add Protection from write to file method. expert coder
                               might still able to crack it. but it will be difficult.
                               and if they can crack it... by logic. they're have the ability
                               to create scripts better than what they want to steal anyway...
     v1.6 2014.07.05     >     Removed the dumb encryption and reverse method. because there's
                               potential it can ruin the scripts if it have trailing tokens.
                               thanks to killozapit to point it out. this script already
                               have better encryption anyway (cypher + scramble)

     v1.7 2014.07.06     >     Improve the write to file prevention method by LOTS!
                         >     Added protecion from script modification. so when this script changed after people decrypt the project...
                               it will fail the decryption.
                               coder that CAN crack this update only mean to test his/her skill not thinking on stealing your scripts biggrin.png
                               if anyone can crack this. share with me please so i can find a way to prevent that.
     v1.8 - v1.9         >     Never released because can be cracked immediately
                               after i add extra security... but i still left the code
                               in 2.0 to make extra steps that thief have to do before
                               they can crack this script...
     v.2.0               >     Since any prevention method (in v.1.8 / v.1.9) can be
                               undone by the thief (not easily. but doable)... by
                               modifying the script control scripts...
                               i decide to use dll (thanks to tsukihime for her tutorial...
                               this script can't use dll without her tutorial)
     

     ■ License        ╒═════════════════════════════════════════════════════════╛

     Free to use in all project (except the one containing pornography)
     as long as i credited (ESTRIOLE).
     
     I started writing this script. but then caitsith2 helps me a lot in improving
     this script. so i think this script already become collaboration between me and
     him. so the second person need to credited is catsith2 !
     
     EDIT: policy change... game containing pornography ALLOWED to use this script.
     because i think it would be better so no more people can steal their scripts
     and create ANOTHER pornography game. this exception is valid ONLY for this script
     and EST - ENCRYPTER script.
     
     This script written based (also take some code) from TDS SCRIPT DISABLER script.
     so you need to credit TDS too if you use this script.

     From v2.0 > this script use dll. using knowledge learned from tsukihime's tutorial
     about using dll in RPG MAKER VX ACE... so Added Tsukihime in the credit list...
     
     so in summary this is all people that you need to credit when using this script:
     1) Estriole
     2) caitsith2
     3) TDS
     4) Tsukihime
     
     ■ Introduction     ╒════════════════════════════════════════════════════════╛

        This script created to give better control to the script. we can disable
     a single script, disable a group of scripts and import script from external files
     replacing marked script editor entry. the external scripts CAN be encrypted too.
     read the how to use on how to encrypt it.
     

     ■ Feature     ╒═════════════════════════════════════════════════════════╛

     - v.2.0 >>> NOW use dll to avoid thief modification !!!
     - 99% guarantee to make script thief's head dizzy.

     - Great combo with EST - ENCRYPTER

    - Disable single script
     - Disable group script
     - Import script from external .txt files
     - Encrypt your external script.
     - Hide your personal script from the decrypter program. they can access your
     project but cannot read the script easily. (yes... perhaps expert coder can
     reverse the code and make it .txt but it will give them hell at least).
     - from v 1.2 > added real encryption and add double encryption support.
     - from v 1.4 > added triple encryption. OMG... this really mean bussiness.
     - from v 1.5 > added write to file protection
     - from v 1.7 > added script modification protection. so if people modify
                    the script after decrypting your project. it will fail the decryption.
                    people that can crack this protection only do that for testing
                    their skill. i'm 100% sure they don't need your script because
                    they can script better. tongue.png.
     - from v 1.9 > add sc check that make thief harder to edit scripts.
     

     ■ Requirement     ╒═════════════════════════════════════════════════════════╛
       Just RPG MAKER VX ACE program biggrin.png
     - RPG MAKER VX ACE program biggrin.png
     - EST_CS2_SCRIPT_CONTROL.dll can be downloaded either from demo or from script page...
     put that dll file INSIDE your project folder.

     ■ Compatibility     ╒═════════════════════════════════════════════════════════╛

      1) MUST BE PLACED ABOVE ALL SCRIPTS you want disabled/imported
      2) TXT Files must use UTF-8 Encoding
      3) this script name MUST be: EST_CS2 - SCRIPT CONTROL for better security.
         you can have other name. but it won't as secure then.

     ■ Screenshot     ╒═════════════════════════════════════════════════════════╛

     howtouse.jpg

    (this one is old screenshot. will update it later with new one)

    (don't use EST - SCRIPT CONTROL as script name)

    (use EST_CS2 - SCRIPT CONTROL as script name from v2.0)

     ■ How to use    ╒═════════════════════════════════════════════════════════╛

    you can look at script header or:

    Spoiler
     0) DOWNLOAD EST_CS2_SCRIPT_CONTROL.dll either from demo or from script page...
     put that dll file INSIDE your project folder. (see demo for more info).
     
     1) Disable single script
      add # at start of script name in script editor to disable single script
      example: #Victor Basic Module
     
      External script can also disabled using this feature
      example: #&Victor Basic Module
       
     2) Disable group scripts
      To disable a group of scripts make 2 new blank scripts and in their name
      add this:

      <Disabled_Scripts>

      </Disabled_Scripts>

      Any scripts put between these 2 new scripts will be disabled at the start
      of the game.

      External script can also disabled using this feature
      example:
      <Disabled_Scripts>
      &Victor Basic Module
      &Yanfly Ace Battle Engine
      </Disabled_Scripts>
     
     3) Importing external script.
      - First create "Scripts" folder inside your project folder
      (if no folder named "Script" this script will throw error print in console)
      - create/copy the txt files that contain your scripts.
      (some scripters use strange character to make the scripts look neater. me included: ■ biggrin.png)
      so... MAKE SURE the txt files saved using UTF-8 Encoding. if you got error about unicode
      character. then your txt files not UTF-8 Encoding. just save as and choose the correct
      Encoding.
     
      - then add & at the start of the txt files name. (REQUIRED)
      example: &Victor Basic Module.txt
               &Yanfly Battle Engine.txt
               
      - open up your script editor. make new blank scripts in the position where you
      want the imported script placed. you can move it later too when you need to
      reorder your script list. rename the scripts name to the txt files name (without .txt).
      example according above:
               &Victor Basic Module
               &Yanfly Battle Engine
      then the blank script with that name will automatically replaced with the external script.
     
      NOTE: do not use &cypher_key as script name for your script.
            because it's reserved to use in double encryption...
            use it only for scripts containing your hidden key and recrypt process.
     
     4) Encrypting your game with the external scripts imported.
     just use step 5. it's safer.
     
     5) Encrypting your scripts. with the crypt key INSIDE the imported scripts.
     (double encryption)
     - finish your game first.
     
     - DOWNLOAD &cypher_key.txt from the topic page / GRAB it from demo Scripts folder.
     
     open the txt file and change mykey variable in CONFIGURATION section:
     
     ##################################################
     #                                                #
     #             CONFIGURATION                      #
     #                                                #
     ##################################################

     mykey = x
     
     change x any TEXT you want... (not unique array like v.1.9 or below)
     
     example:
     
     ##################################################
     #                                                #
     #             CONFIGURATION                      #
     #                                                #
     ##################################################
     
     mykey = "don't steal my script please... i'll buy you some candy... what flavour you like"
     
     some tips. you can cut and paste from the array to reorder your key.
     it save time.
     
     NOTE: Do not change anything else beside the config. to make sure your
     scripts protected.
     
     - SAVE the changes
     
     - open up your script editor. make new blank scripts directly BELOW this script.
       name it &cypher_key
     - play test with DO_CONVERSION_TO_RVDATA = true
     - after that change DO_CONVERSION_TO_RVDATA = false (OPTIONAL)
     - delete your Scripts folder. encrypt the game using editor normally.
     
     WARNING: DO NOT PLAYTEST AGAIN WITH DO_CONVERSION_TO_RVDATA = true
     after you DELETE the SCRIPTS FOLDER !!! it will re-encrypt your project
     with no external SCRIPTS!!!
     
     EXTRA WARNING: IT WOULD BE WISE TO BACKUP YOUR SCRIPTS FOLDER SOMEWHERE
     IN CASE YOU WANT TO EDIT THE GAME AGAIN biggrin.png.
     ■ Script   ╒═════════════════════════════════════════════════════════╛

    Script:

    http://pastebin.com/cu6F4PuC

    &cypher_key.txt:

    pastebin version

    dropbox version

    (version 2.0)

    EST_CS2_SCRIPT_CONTROL.dll:

    https://www.dropbox.com/s/iw1lyro9s7hchua/EST_CS2_SCRIPT_CONTROL.dll

    place it inside your project folder along with your Game.exe biggrin.png.

     ■ Demo   ╒═════════════════════════════════════════════════════════╛

    Latest Demo

    https://www.dropbox.com/s/759lj0tmyrnaxkq/EST_CS2_SCRIPT_CONTROL.rar

    Demo example already encrypted (to test the script still working even in encrypted files)

    https://www.dropbox.com/s/ph4binwnnq9pycj/EST_CS2_SCRIPT_CONTROL%20-%20Encrypted.exe

    (this one not updated yet)

     ■ Credit and thanks   ╒══════════════════════════════════════════════════╛

    - Estriole

    - caitsith2

    - TDS for Script disabler

    - Tsukihime for her tutorial about using dll

    Author's Notes

    Please give feedback... since it's a long time. maybe i'm rusty and miss some bugs.

    suggestion to improve this script also welcomed

    Please Vote as your heart tells you biggrin.png.
  2. updated the script to v1.3

     v1.3 2014.06.27     >     Fix script folder cannot be changed. thx to caitsith2 for pointing it out.
                         >     Add temp_key encryption to your hidden key. harder to crack
     
  3. updated the script to v.1.4:

     v1.4 2014.06.30     >     Add Triple encryption using caitsith2 code.                     
     

    if you use this script you also need to credit caitsith2.

    WARNING: if you're upgrading from previous version. there's some change on how to create the hidden key.


     5) Encrypting your scripts. with the crypt key INSIDE the imported scripts.
     (double encryption)
     - finish your game first.
     - then create a txt files named &cypher_key.txt
     
     then in that text put this code:
     
     mykey = x
     mykey = prepare_scramble_key(mykey)     ##<<<< this line new from v1.4 (required)
     recrypt_script(mykey)
     mykey = nil
     
     change x to array of shuffled characters to map the A-Z, a-z, 0-9, and ' ' (spaces)
     total of UNIQUE (2x31)+1 = 63 characters. UNIQUE means you must not have duplicate value
     
     example:
     
     mykey = ["3", "y", "v", "I", "6", "u", "K", "D", "w", "X", "H", "e", "1", "S", "B", "g", "a", "W", "C", "0", "9", "b", "z", "T", "A", "q", "U", "4", "O", "o", "E", "N", "r", "n", "m", "d", "k", "x", "P", "t", "R", "s", "J", "L", "f", "h", "Z", "j", "Y", "5", "7", "l", "p", "c", "2", "8", "M", "V", "G", "i", " ", "Q", "F"]
     mykey = prepare_scramble_key(mykey)     
     recrypt_script(mykey)
     mykey = nil
     
     - open up your script editor. make new blank scripts directly BELOW this script.
       name it &cypher_key
       
     - play test with DO_CONVERSION_TO_RVDATA = true
     - after that change DO_CONVERSION_TO_RVDATA = false
     - delete your Scripts folder. encrypt the game using editor normally.

  4. Double update!

     v1.5 2014.07.04     >     Add Protection from write to file method. expert coder
                               might still able to crack it. but it will be difficult.
                               and if they can crack it... by logic. they're have the ability
                               to create scripts better than what they want to steal anyway...
     v1.6 2014.07.05     >     Removed the dumb encryption and reverse method. because there's
                               potential it can ruin the scripts if it have trailing tokens.
                               thanks to killozapit to point it out. this script already
                               have better encryption anyway (cypher + scramble)
     
  5. Nice! How did I miss this?


    Okay for commercial use too?
  6. thanks :) I will.
  7.  EDIT: policy change... game containing pornography ALLOWED to use this script.
     because i think it would be better so no more people can steal their resources
     and create ANOTHER pornography game. this exception is valid ONLY for this script

     and EST - ENCRYPTER
  8. HUGE UPDATE !!!

    FEEL THE DIFFERENCE !!!

    First of all I change the scripts name to EST_CS2 - SCRIPT CONTROL

    this script becomes collaboration script between Estriole and caitsith2. we struggle together to take this script to next level... and we DID !!!

    Update content:

     v1.7 2014.07.06     >     Improve the write to file prevention method by LOTS   !!!!!!!!!!
                         >     Added protecion from script modification. so when this

                               script changed after people decrypt the project...  it will fail the decryption.

                               i think coder that CAN really crack this update only mean to test his/her skill not thinking on

                               stealing your scripts :p .

                               if anyone can crack this. share with me please so i can find a way to prevent that.
     

                               we also put some protection against some advanced attack method which i won't list here to not

                               giving the thief an early start :D .

          99% guarantee to make script thief's head dizzy.
     

               (our head is already dizzy making this scripts LOL... so they will surely dizzy too...)

         PLEASE VOTE and tell me what you really think about this scripts. :D
  9. UPDATED script to v.2.0

    added extra protection (sc check) (i won't tell what is sc check :p )

    now use DLL... to avoid people tempering with the scripts. :D .
  10. UPDATED THE SCRIPTS

     v.2.1               >     when not having dll installed... this script can still work to
                               control the script (disable scripts). the one that don't
                               work is only the encryption part... set puts as warning
                               instead of msgbox. so it don't disturb the playtest.
                         >     added auto recrypt thief written file setting in &cypher_key.txt
                               if it's set to ON. any files written "before" the &cypher_key.txt
                               will be "recrypted" :p . if it's set to ON. put this script
                               and &cypher_key ABOVE any custom scripts that write files. such as
                               Tsukihime Data Backup. etc... i set default to false.
                               so only turn it on if you want extra security.
     

    make sure to redownload &cypher_key.txt to new version
  11. REDOWNLOAD EST_CS2_SCRIPT_CONTROL.DLL !!! (the dll files)

    the previous one have some problem with computer that didn't install Microsoft visual C++ redistributable.

    i search google and learn that i need to compile it with Multi-threaded (/MT) at the Runtime Library settings...

    the new one is 39kb (old one is 20kb). and i already test it in computer without Microsoft visual C++ redistributable and it works...

    replace your dll to avoid error on your customer PC biggrin.png.