项目作者: bensuperpc

项目描述 :
Find alternative cheat code in Grand Theft Auto San Andreas (2004) by bruteforce
高级语言: C++
项目地址: git://github.com/bensuperpc/GTA_SA_cheat_finder.git
创建时间: 2021-06-14T20:32:01Z
项目社区:https://github.com/bensuperpc/GTA_SA_cheat_finder

开源协议:MIT License

下载


GTA_SA_cheat_finder

Find alternate cheat codes in Grand Theft Auto San Andreas by hash collision

Continuous Integration Dockcross CI tagged-release linux

GitHub top language GitHub GitHub all releases GitHub Release Date GitHub release (latest by date) codecov

Twitter Youtube

New Features

  • Multi-plateform build: AMD64, I386, ARM64, ARMv7, ARMv7a, ARMv6, ARMv5, RISC-V 32/64, PPC64le, Mips, Windows 32/64, Android (Exec only), m68k… Thanks dockcross and crosstool-ng
  • Add Qt GUI (Qt 6.6.0 and Qt Quick)
  • Add CUDA support (tested with NVIDIA RTX 2070 and 3070)

Usage (GUI)

  1. ./GTA_SA_cheat_finder

Usage (CLI)

  1. ./GTA_SA_cheat_finder --min 0 --max 60000000 # (Searches codes from index 0 to 60000000, from A to: BYKYLXA alphabetic sequence)
  1. ./GTA_SA_cheat_finder --min 50 --max 58800000 # (Searches codes from index 50 to 58800000, from XA to: LFLQXD Alphabetic sequence)
  1. ./GTA_SA_cheat_finder -h # Get help (or with --help)

Example

  1. ./GTA_SA_cheat_finder --min 0 --max 600000000

You should get this result:

  1. Number of calculations: 600000000
  2. From: A to: BYKYLXA Alphabetic sequence
  3. Iter. N° Code JAMCRC value
  4. 20810792 ASNAEB 0x555fc201
  5. 75396850 FHYSTV 0x44b34866
  6. 147491485 LJSPQK 0xfeda77f7
  7. 181355281 OFVIAC 0x6c0fa650
  8. 181961057 OHDUDE 0xe958788a
  9. 198489210 PRIEBJ 0xf2aa0c1d
  10. 241414872 THGLOJ 0xcaec94ee
  11. 289334426 XICWMD 0x1a9aa3d6
  12. 299376767 YECGAA 0x40cf761
  13. 311365503 ZEIIVG 0x74d4fcb1
  14. 370535590 AEDUWNV 0x9a629401
  15. 380229391 AEZAKMI 0xe1b33eb9
  16. 535721682 ASBHGRB 0xa7613f99
  17. Time: 1.19597 sec
  18. This program execute: 501.684973 MOps/sec

Benchmark

CPU

On AMD R7 5800H (clang 16)

  1. 5429503678976 = ~4h
  2. 208827064576 = ~8 min
  3. 8031810176 = ~20 min
  4. 1544578880 = ~3 sec
  5. 308915776 = 0.6 sec

GPU

On NVIDIA RTX 3070 (clang 16 and CUDA 11.3)

  1. 5429503678976 = ~45min
  2. 208827064576 = ~1 min
  3. 8031810176 = ~2 sec
  4. 1544578880 = ~0.3 sec
  5. 308915776 = 0.06 sec

How does it work ?

  • The algorithm will generate sequences of characters (A, B, C… AA, AB, AC…)
  • It will then calculate hash (JAMCRC) from series of characters
  • It will compare hashes, if they are equal to one of the hashes of one of the official cheat codes, this will save the sequence of characters
  • When it is finished it displays the results and each code found can work as a alternative cheat code for GTA SA

More information on this video:

GTA SA - Alternative Cheats - Feat. Badger Goodger

Building and installing

See the BUILDING document.

Contributing

See the CONTRIBUTING document.

Open source projects used

Licensing

MIT License