تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 8 از 8

نام تاپيک: متغیرهای ضدهَک!!

  1. #1
    اگه نباشه جاش خالی می مونه عادل سلیمی 20's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    داخل CPU
    پست ها
    359

    9 متغیرهای ضدهَک!!

    سلام به همه دوستان
    امیدوارم که دنیای بازیسازیتون پررونق باشه
    من یه مجموعه کد نوشتم توی گیم میکر که متغیر هایی رو باهاشون میشه ساخت که نشه هَکشون کرد
    یعنی مثلا اونا رو تغییر بدین به 999999 و ....(دوستان بهتر از من میدونن)
    از هَکرهای عزیز تقاضا میشه بیان یه کم با این ور برن ببینم میشه هَکش کرد یا نه(چون من خودم هَکر نیستم)
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    توی این فایل روی صفحه دوتا عدد میبینین که یکیشون رو با بالا و پایین و اون یکی رو با چپ رو راست میتونین تغییر بدین
    Last edited by عادل سلیمی 20; 29-05-2012 at 12:30.

  2. #2
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    این تصویر برای گزینه اول:


    گزینه دوم:

    از 3 متغییر از نوع float 32 بیتی استفاده شده.
    Last edited by god of war 2; 29-05-2012 at 12:15.

  3. 2 کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده اند


  4. #3
    اگه نباشه جاش خالی می مونه عادل سلیمی 20's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    داخل CPU
    پست ها
    359

    پيش فرض

    از 3 متغییر از نوع float 32 بیتی استفاده شده.
    چه باحال نیومده هَک شد
    اصل کارکرد این متغیر ها اینجوریه که اسمشون و جاشون ثابت نیست مرتبا تغییر میکنه.من موندم چه جوری متغیره رو پیدا کردی
    چون تا بخوای پیداش کنی باید جاش عوض شده باشه
    چه جوری هکش کردی؟
    با چی هکش کردی ؟
    هیچ مشکلی در بین هَک کردن پیش نیومد؟!
    و این که بعد از تغییر عدد وقتی چپ و راست و میزدی عدد تغییر میکرد؟
    (البته این هنوز نسخه ی اولیشه میخوام سوراخاشو کم کم بگیرم)
    Last edited by عادل سلیمی 20; 29-05-2012 at 13:15.

  5. #4
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    صل کارکرد این متغیر ها اینجوریه که اسمشون و جاشون ثابت نیست مرتبا تغییر میکنه.من موندم چه جوری متغیره رو پیدا کردی
    چون تا بخوای پیداش کنی باید جاش عوض شده باشه
    چه جوری هکش کردی؟
    من تغییر مسیری مشاهده نکردم! و تغییر اسم هم میشه گفت هیچ تاثیری نداره چون متغییر فقط از آدرسی که در حافظه داره مشخص میشه و اصلا اسم در سطح حافظه هیچ معنایی نداره.
    با چی هکش کردی ؟
    ArtMony
    هیچ مشکلی در بین هَک کردن پیش نیومد؟!
    1 بار وقتی داشتم مقادیر متغییر هارو تغییر میدادم با یک پیغام از قبل طراحی شده مواجه شدم و برنامه بعد از اون بسته شد.دفعات بعد هر سه متغییر رو همزمان تغییر دادم و هیچ مشکلی پیش نیامد.
    و این که بعد از تغییر عدد وقتی چپ و راست و میزدی عدد تغییر میکرد؟
    بله

  6. 2 کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده اند


  7. #5
    اگه نباشه جاش خالی می مونه عادل سلیمی 20's Avatar
    تاريخ عضويت
    Jul 2008
    محل سكونت
    داخل CPU
    پست ها
    359

    پيش فرض

    من تغییر مسیری مشاهده نکردم! و تغییر اسم هم میشه گفت هیچ تاثیری نداره چون متغییر فقط از آدرسی که در حافظه داره مشخص میشه و اصلا اسم در سطح حافظه هیچ معنایی نداره.
    پس تغییر نام باعث نمیشه که متغیر از دست رس خارج شه
    باید جاش داخل حافظه عوض شه
    چه جوری میشه آدرس متغیر رو عوض کرد؟ من توی همین برنامه گذاشتم که جای متغیر پی در پی از روی یه آبجکت به یه آبجکت دیگه میره و مرتبا اسمش عوض میشه با این حال باید آدرسش عوض شه
    ---------
    با این اوصاف میشه براش ترینر زد؟ یا هر دفعه باید دوباره با نرمافزاری که گفتین آدرس رو پیدا کنین؟
    (ممنون که همکاری کردین)

  8. این کاربر از عادل سلیمی 20 بخاطر این مطلب مفید تشکر کرده است


  9. #6
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    چه جوری میشه آدرس متغیر رو عوض کرد؟ من توی همین برنامه گذاشتم که جای متغیر پی در پی از روی یه آبجکت به یه آبجکت دیگه میره و مرتبا اسمش عوض میشه با این حال باید آدرسش عوض شه
    در رابطه با Game Maker هیچ ایده و نظری ندارم.اما مثلا در زبانی مثل ++C ساده ترین راهی که الان به ذهنم میرسه اینه که از یک اشارگر استفاده کنید. مثلا تابعی در حلقه اصلی قرار بدید که بعد از هر فریم (یا در یک زمام معین) اجرا بشه و متغییری که اشارگر به آن اشاره میکنه رو در متغییر جدیدی کپی کنه, آدرس متغییر جدید به اشارگر داده بشه و متغییر قبلی پاک بشه.البته این کار اصلا توصیه نمیشه چون فوق العاده روی کارایی برنامه تاثیر منفی میزاره و باعث افت سرعت و افت کارایی و ... میشه.
    کد زیر یک نمونه در ساده ترین حالت:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    هنوز شرکت های بزرگ بازیسازی هم در این زمینه به نتیجه خوبی نرسیدند.البته روش های زیادی هست ولی ضررش نسبت به سودش خیلی بیشتره.

    با این اوصاف میشه براش ترینر زد؟ یا هر دفعه باید دوباره با نرمافزاری که گفتین آدرس رو پیدا کنین؟
    الان دیگه هر کسی که حداقل دو بار با نرم افزار های -- بازی کار کرده باشه میتونه براحتی یک بازی رو -- کنه و اصلا نیازی به ترینر نیست.
    و به احتما زیاد میشه براش ترینر ساخت البته من هیچوقت برای هیچ برنامه ایی ترینر نساخته ام.
    Last edited by god of war 2; 30-05-2012 at 14:24. دليل: اضافه کردن نمونه کد

  10. 3 کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده اند


  11. #7
    داره خودمونی میشه
    تاريخ عضويت
    Dec 2008
    پست ها
    122

    پيش فرض

    در رابطه با Game Maker هیچ ایده و نظری ندارم.اما مثلا در زبانی مثل ++C ساده ترین راهی که الان به ذهنم میرسه اینه که از یک اشارگر استفاده کنید. مثلا تابعی در حلقه اصلی قرار بدید که بعد از هر فریم (یا در یک زمام معین) اجرا بشه و متغییری که اشارگر به آن اشاره میکنه رو در متغییر جدیدی کپی کنه, آدرس متغییر جدید به اشارگر داده بشه و متغییر قبلی پاک بشه.البته این کار اصلا توصیه نمیشه چون فوق العاده روی کارایی برنامه تاثیر منفی میزاره و باعث افت سرعت و افت کارایی و ... میشه.
    این کار اصلا فایده ای نداره چون موقع debug کردن یا اصلا جای متغییر عوض نمیشه ( debuger خیلی راحت اون تیکه از برنامه رو اجرا نمیکنه ) یا اینکه اگر هم عوض بشه debuger میبینه که عوض شده. ( شاید کلا دو سه دقیقه تو کار -- کردن واسه یه اماتور تاخیر بندازه! )

  12. 2 کاربر از Armin060 بخاطر این مطلب مفید تشکر کرده اند


  13. #8
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    این کار اصلا فایده ای نداره چون موقع debug کردن یا اصلا جای متغییر عوض نمیشه ( debuger خیلی راحت اون تیکه از برنامه رو اجرا نمیکنه ) یا اینکه اگر هم عوض بشه debuger میبینه که عوض شده. ( شاید کلا دو سه دقیقه تو کار -- کردن واسه یه اماتور تاخیر بندازه! )
    درسته.البته هیچوقت کد بالا کاربرد نداره و فقط در حد یک مثال ساده هست.

  14. 2 کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده اند


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •