به نظر می رسد که شما عضو سایت نیستید و یا وارد نشده اید, امکان ارسال مطلب و دانلود فایل و همچنین دسترسی به انجمن هایی که فقط اعضا ثبت نام شده امکان دسترسی به آن را دارند از امتیازات ثبت نام در سایت میباشد.

لطفا از طریق این لینک برای ثبت نام اقدام نمایید.

    
You have (1) Unread PM; Click The Icon To Read It You have a new PM
جدیدترین موضوعات انجمنها


بازگشت   متارو > شبيه سازي Simulation > شبيه سازي دوبعدي فوتبال

کمک

شبيه سازي دوبعدي فوتبال

پاسخ
 
LinkBack ابزارهای موضوع نحوه نمایش
قدیمی 09-15-2009, 07:19 PM   #11
Wink پاسخ : کمک

دوست عزیز چرا این سوال رو توی یک موضوع جدید مطرح نکردی ؟
اگه برای سوال ها موضوع مناسب انتخاب کنی و سوال هایی که به هم مربوط نیستند رو توی موضوعات جدا بنویسی ، سریع تر و بیشتر از اعضای سایت کمک می گیری !
حالا جواب شما. فکر کنم منظور شما از agent بازیکنی باشه که توپ دستشه !!!
به طور کلی کلمه ی agent یعنی عامل و به همه ی این بازیکن ها می گن یک agent .
احتمالا بیس شما ترایلرن است. تابع de_meer5 برای همه ی بازیکن ها به غیر از دروازه بان اجرا میشه.
شما دوتا کار می تونین بکنین که نقش های بازیکن ها رو جدا کنین.
1- برای هر کدوم از بازیکن ها یک تابع مثل de_meer5 تعریف کنین که درخت تصمیم بازیکن ها کاملا از هم جدا بشه.بعد توی main loop ، برای هر بازیکن درخت تصمیم مربوط به خودشو صدا کنین.
2- ساده ترین راه اینه که توی de_meer5 نقش ها رو جدا کنی. شماره ی بازیکن رو می تونی از world model بگیری . اینجوری :
int myNum = WM-> getPlayerNumber()
بعد توی قسمت های مختلف de_meer5 ، هر جا خواستی نقش ها فرق بکنه ، با چند تا if ... else مشکل حل میشه. که حالا اگه شماره ی من اینه این کار رو بکن وگرنه فلان کار رو بکن و ... .

این که گفتی یک کد نوشتی که فقط برای صاحب توپ اجرا میشه یک مسئله ی دیگه است. احتمالا یه چیزایی رو جابجا نوشتی
فایل playerTeams.cpp رو آپلود کن ( اگه می ترسی من کد ها تو بردارم قسمت های مهم رو پاک کن ! ). من اگه وقت کردم یه نگاهی بهش می اندازم و مشکل رو همینجا برات جواب میدم.

موفق باشی !
Negahbani آنلاین نیست.   پاسخ با نقل قول
3 کاربر از Negahbani به خاطر این مطلب مفید تشکر کرده اند
قدیمی 09-16-2009, 01:15 AM   #12
پیش فرض پاسخ : کمک

نوشته اصلی توسط masood نمایش پست ها
حالا یه چیز دیگه:
من چه طوری می تونم به هر نفر به صورت جداگونه بگه چیکار بکنه (غیر از agent)
من از دستور getplayerTypeInformation یا یه همچین چیز استفاده کردم که تو کلاس فرمیشن بود ولی عمل نکرد بعد از دستور getAgentIndex()+1 استفاده کردم ولی مشکلی که داشت این بود که برای بازیکنانی که توپ دستشون نبود عمل نمی کرد( یعنی فقط برای agent)

من چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟
اونجا که گفتی:
نوشته اصلی توسط masood نمایش پست ها
ولی مشکلی که داشت این بود که برای بازیکنانی که توپ دستشون نبود عمل نمی کرد( یعنی فقط برای agent)
خوب احتمالا" این کدتو در شرط
کد:
if (  WM->isBallKickable )
نوشتی. به خاطر همین برای بقیه ی بازیکنا که توپ دستشون نیست، اجرا نمی شه
sandbad آنلاین نیست.   پاسخ با نقل قول
اين کاربران از sandbad به خاطر این مطلب مفید تشکر کرده اند
قدیمی 09-16-2009, 02:22 PM   #13
پیش فرض پاسخ : کمک

فکر کنم منظور شما از agent کسی است که توپ دستشه! ولی به طور کلی agent یعنی عامل و به همه ی این بازیکن ها و میگن یک agent .
فکر کنم بیس شما ترایلرن است.
با همون index + 1 هم شماره ی بازیکن بدست میاد ولی با WM-> getPlayerNumber هم میتونین بدست بیارین.
اینکه گفتین فقط برای صاحب توپ اجرا میشه یعنی شما چند تا چیز رو جابجا نوشتین !
اگه بخواین می تونین playerTeams.cpp رو اینجا آپلود کنین تا من مشکلشو بهتون بگم.
قسمت های مهمش هم پاک کنین که ما زیادی مستفیض نشیم !!!!
Negahbani آنلاین نیست.   پاسخ با نقل قول
3 کاربر از Negahbani به خاطر این مطلب مفید تشکر کرده اند
قدیمی 10-01-2009, 04:27 PM   #14
پیش فرض پاسخ : کمک

با سلام دوباره من سورس را دانلود کردم حالا سرور 13.2.2 rcssbase ندارد چی کار کنم ؟؟؟؟؟!!!!!!!!!!!!!!!!!
masood آنلاین نیست.   پاسخ با نقل قول
قدیمی 10-01-2009, 06:25 PM   #15
پیش فرض پاسخ : کمک

نوشته اصلی توسط masood نمایش پست ها
با سلام دوباره من سورس را دانلود کردم حالا سرور 13.2.2 rcssbase ندارد چی کار کنم ؟؟؟؟؟!!!!!!!!!!!!!!!!!
سرور 13 اصلا rcsbase نداره !!
شما همون rcsserver رو نصب کن، بعدشم rcsmonitor.
sandbad آنلاین نیست.   پاسخ با نقل قول
اين کاربران از sandbad به خاطر این مطلب مفید تشکر کرده اند
قدیمی 10-20-2009, 08:51 PM   #16
پیش فرض پاسخ : کمک

يعني الان كار حله با ترايلن3.5 كار درست مشه!!!!!!!!!
masood آنلاین نیست.   پاسخ با نقل قول
قدیمی 10-22-2009, 07:15 PM   #17
پیش فرض پاسخ : کمک

نوشته اصلی توسط masood نمایش پست ها
يعني الان كار حله با ترايلن3.5 كار درست مشه!!!!!!!!!
منظورتون رو کامل متوجه نشدم ، اگه منظورتون اینه که ترایلرن 3.5 روی سرور 13 مشکلی نداره، باید بگم بله
sandbad آنلاین نیست.   پاسخ با نقل قول
اين کاربران از sandbad به خاطر این مطلب مفید تشکر کرده اند
پاسخ

علاقه مندی ها (Bookmarks)

« موضوع قبلی | موضوع بعدی »
ابزارهای موضوع
نحوه نمایش

انتخاب سریع یک انجمن


اکنون ساعت 06:05 AM برپایه ساعت جهانی (GMT - گرینویچ) +4.5 می باشد.


تمامي حقوق مادي و معنوي اين مجموعه متعلق به شركت ربات گستران آپادانا مي‌باشد Persian Skin By : Vbskin