PDA

View Full Version : سوال: سوکت نویسی در VB.net و ....



feri_sharp
سه شنبه 07 تیر 1390, 18:20 عصر
سلام دوستان.
من یک راهنمایی از شما می خوام و یک سوال هم دارم.
فرض کنید من می خوام که یک شطرنج با VB.net بنویسم. اما یه شطرنج آنلاین که فقط online میشه اون رو بازی کرد. مثل بازی World of warcraft تحت ویندوز run میشه ، و با username , password که کاربر داره بازی به سرورش وصل میشه. من فکر کردم که شاید برای این نوع ارتباط بین کاربر و سرور با چند کاربر دیگه باید ، از ارتباط P2P استفاده کنم. خوب حالا دوستان نظر شما چیه ؟
یه سوال هم دارم اونم این هستش که چه جوری با VB.net میشه به یک پیاگاه داده SQL که نوشته شده ، دسترسی پیدا کرد.
خوب این شطرنجی که من دارم می نویسم برای ورود به بازی از کاربر User و pass می خواد می خوام بدونم از کجا باید بره این User , pass رو روی اینترنت توی پایگاه داده ی مخصوصش search کنه؟
ممنون
موفق باشید

bnnoor
سه شنبه 07 تیر 1390, 20:06 عصر
برای مسئله اول دو راه دارید اول اینکه بازی رو توی یک سایت قرار بدید و برنامه کلاینت بسازید که به سرور شما ارسال کنه هر حرکت به سرور تو کلاینت ها نمایش داده بشه یا اینکه راه دوم اینه که برنامه شما به همراه بازی ارائه بشه ( شیوه آنلاین بازی کردن بازی های حجیم ) هر حرکت به برنامه تمام کلاینت ها ارسال بشه و عکس العمل توی تمام کلاینت ها نشون داده بشه . راه حل بهتره همون روش دومه که اکثرا همین کارو میکنن ولی یکم پیچیدست و پیشنهاد میکنم برای شروع با کتاب Apress.Practical.dot.NET.2.0.Networking.Projects.J an.2007 شروع کنید که آقای WEI_MENG LEE به انگلیسی روان کاملا اتصالات رو توضیح دادن ( اسم کتاب رو سرچ کنید لینک دانلودشو پیدا می کنید )
در رابطه با سوال دومتون زیاد بحث شده بهتره یه سر به تاپیک " مشکل در ارتباط با دیتابیس های اینترنتی " بزنید که موضوع اونجا کاملا بحث شده و به جواب رسیده .

feri_sharp
سه شنبه 07 تیر 1390, 21:48 عصر
ممنون از جوابتون.
یه سوال توی بازی مثل بازی WoW از روش دوم استفاده میشه. ولی خوب توی یک بازی مثل شطرنج نیازی نیست به غیر از دو کلاینتی که مقابل هم قرار می گیرند، دستورات به سایر کلاینت ها هم ارسال بشه درسته ؟ اگر درست منظور رو گرفته باشم. و من این جمله ی شما رو متوجه نشدم که گفتین : برنامه شما به همراه بازی ارائه بشه
چه برنامه ای همراه بازی ارایه بشه ؟ خوب من سوکت رو داخل خود بازی برای ارتباط تعریف می کنم.

bnnoor
سه شنبه 07 تیر 1390, 22:06 عصر
ممنون از جوابتون.
یه سوال توی بازی مثل بازی WoW از روش دوم استفاده میشه. ولی خوب توی یک بازی مثل شطرنج نیازی نیست به غیر از دو کلاینتی که مقابل هم قرار می گیرند، دستورات به سایر کلاینت ها هم ارسال بشه درسته ؟ اگر درست منظور رو گرفته باشم. و من این جمله ی شما رو متوجه نشدم که گفتین : برنامه شما به همراه بازی ارائه بشه
چه برنامه ای همراه بازی ارایه بشه ؟ خوب من سوکت رو داخل خود بازی برای ارتباط تعریف می کنم.


اون رو در حالتی گفتم که بازی رو خودتون ننوشته باشید . بله بازیهای دو نفره احتیاجی نداره دو کلاینت به بقیه ارسال بشه

feri_sharp
سه شنبه 07 تیر 1390, 22:22 عصر
پس فقط کافیه که یک ارتباط Peer to peer بین دو تا Client بر قرار بشه. خوب برای این ارتباط باید IP Adress دو طرف موجود باشه. یعنی میشه هر کاربری که به سرور وصل میشه ، IP اون کاربر توی دیتابیس ذخیره بشه تا کاربر مقابل IP رو برای ارتباط فراخونی کنه. خوب حالا ایکنه چجوری بره IP رو پیدا کنه باید برم SQL server بخونم کامل. ممنون از راهنمایی هاتون

bnnoor
سه شنبه 07 تیر 1390, 22:54 عصر
پس فقط کافیه که یک ارتباط Peer to peer بین دو تا Client بر قرار بشه. خوب برای این ارتباط باید IP Adress دو طرف موجود باشه. یعنی میشه هر کاربری که به سرور وصل میشه ، IP اون کاربر توی دیتابیس ذخیره بشه تا کاربر مقابل IP رو برای ارتباط فراخونی کنه. خوب حالا ایکنه چجوری بره IP رو پیدا کنه باید برم SQL server بخونم کامل. ممنون از راهنمایی هاتون

شما باید اول یه دیتابیس توی اینترنت بسازید و برنامه رو تنظیک کنید به محض اتصال آی پی رو توی دیتابیس همراه با نامش ذخیره کنه و از توی دیتابیس بقیه ی اسمها رو لود کنه اینطوری میتونی حتی انتخاب کنی که با چه اسمی بازی رو شروع کنی