PDA

View Full Version : درخواست راهنمایی و مشاوره ( ساخت بازی برای دل خودم :) )



AM-Team
پنج شنبه 01 تیر 1391, 09:17 صبح
سلام خدمت دوستان عزیز من دارم برای خودم یه بازی طراحی میکنم ، این بازی گرافیک نداره و فقط از چندین عکس استفاده شده .تقریبا داستان بازی رو کامل کردم و از نظر کد نویسی بجز در قسمت ارتباط با بانک اکسس و عملیات مختلف مربوط به اون مشکل آنچنانی دیگه ای ندارم . اما داستان بازی
نام انتخابی برای بازی : نبرد قهرمانان
خلاصه :
یک بازی استراتژیک تقریبا شبیه به بازی تراوین ، ایکاریم و ... با این تفاوت که این بازی به صورت آفلاین بازی میشه و بازیکن ها بین 2 تا 20 نفر می باشند . بازی به صورت نوبتی بوده و هر بازیکن پس از تمام شدن نوبتش منتظر می ماند تا بقیه بازیکنان نوبت خود را بازی کنند .
اساس اصلی بازی : در این بازی تنها یه مدل منابع وجود دارد و آن هم تجربه می باشد . برای بدست آوردن تجربه چندین راه وجدو دارد . 1. جواب دادن به سوالات 4 گزینه ای ، که این سوالات به سه دسته ، آسان ، متوسط و دشوار تقسیم میشود 2. شرکت در مبارزات تن به تن 3. حمله به بازیکنان دیگر .
سوالات چهار گزینه ای : معمولا سوالاتی در مورد زیر شاخه های کامپیوتر ( نرم افزار ، سخت افزار و .... ) می باشد. و بازیکنان بر اساس رسیدن به سطوح مختلف امتیازی قادر به اضافه کردن سوالاتی به بازی می باشند .
مبارزات تن به تن : هر 7 روز بعد از شروع شدن بازی مسابقه ای صورت خواهد گرفت که بازیکنان می توانند در آنها شرکت کنند و در صورت کسب مقامی ، تجربه بدست بیاورند . علاوه بر این تجربه بازیکنی که قهرمانش اول شود امکان بدست آورددن تجربه بیشتر و یا سلاحی را دارد .
حمله به بازیکنان دیگر : اگر مهاجم در جنگ پیروز شود مقداری تجربه کسب خواهد کرد .
و این داستان ادامه دارد .... خیلی نکات ریز و درشت داره که نوشتن زمان میبره .

AM-Team
پنج شنبه 01 تیر 1391, 09:28 صبح
دوستان من در یکی از جدول ها که مربوط به نقشه کلی بازی (WorldMap) میشه دو تا فیلد دارم که از قبل مقدار دهی شده (ID) که از 1 تا 20 مقدار داره و (PlayerID) که مقدار پیش فرضش 0 است . نقشه از (imagebox بیست ) تشکیل شده که محل قرار گرفتن دهکده بازیکنان می باشد و مقدار پیش فرض 0 اشاره به این داره که هیچ بازیکنی ثبت نام نکرده . من میخوام اینطوری کد بنویسم برای دکمه ( اضافه کردن بازیکن جدید ) ابتدا از داخل جدول WorldMap بگرده و تعداد id هایی رو که PlayerId برابر 0 هست بهم نشون بده . سپس اگه این مقدار0 بود پیغام بده بازیکن جدیدی قادر به ثبت نام نیست ! . اگه هم بیشتر از 0 بود 1 عدد تصادفی بین 1 تا اون عدد بده و این عدد در جدول ردیفی رو که ستون PlayerId مساوی با 0 هست رو تغییر بده به id جدول دیگه ای که مشخصات بازیکنان در آن ثبت میشه ((جدول بازیکنان Players) ستون ID که به صورت عدد متوالی خودش مقدار دهی میشه . )
اگه کسی از دوستان منو راهنمایی کنه ممنون میشم :قلب:

AM-Team
پنج شنبه 01 تیر 1391, 09:50 صبح
88546 این عکس اولی عکس نقشه کلی بازیه

این هم دو تا جدولی که فعلا به کارمون میاد
88547

AM-Team
پنج شنبه 01 تیر 1391, 10:51 صبح
از دوستان کسی منو راهنمایی نمیکنه ؟:متفکر:
توی vb6 راحت میتونم به بانک وصل بشم و اعمالی مثل count و... رو حساب کنم ولی توی vb2010 راهشو بلد نیستم

AM-Team
پنج شنبه 01 تیر 1391, 11:59 صبح
اینجا منظورمو واضح تر میگم ، اگه امکان داره راهنمایی کنید . ممنون :قلب:
توی توضیحات قسمت کلید اضافه کردن بازیکن این دستورات رو میخوام بنویسم .
توی چند کامنت فقط توضیحاتو نوشتم ، برای اینکه در موقع خوندن راحت باشه.
اتصال به بانک رو هم در یه ماژول تعریف کردم که توی تمام فروم ها بتونم ازش استفاده کنم .

Public Class FrmWorldMap

Private Sub BtnAddNewUser_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAddNewUser.Click
' اتصال به بانک

'خواندن تعداد رکوردی از جدول
'WorldMap
' که ستون
' ID
' برابر 0 باشد

'===================

' اگر تعداد count
' برابر با 0 بود پیغام دهد بازیکن دیگری نمیتواند ثبت نام کند
' در غیر اینصورت یک عدد تصادفی بین 1 تا count
' بدست آورده ، و از جدول WorldMap
' سطری را انتخاب کند که برابر با عدد تصادفی میباشد
' حال در جدول Players
' ابتدا اطلاعات کاربر جدید از داخل تکست باکس ها پرشده و شماره ای که به ستون ID
' او اختصاص داده شده در جدول WorldMap
' در ستون عدد تصادفی به جای مقدار0 پیش فرض قرار بگیرد


End Sub

End Class


اینم کدی که درون ماژون نوشتم

Imports System.Data.OleDb

Module Module1
Public cs As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + "\Database1.accdb"
Public my_con As New OleDbConnection(cs)
Public DA As New OleDbDataAdapter
End Module

h_a_m_i_d
پنج شنبه 01 تیر 1391, 13:39 عصر
دوست عزیز منم قبلا همچین پستی زده بودم و جواب هایی رو گرفتم
شما اگه جستجو کنید نتیجه هایی کسب میکنید چون در این تالار در این مورد زیاد بحث شده

AM-Team
شنبه 03 تیر 1391, 20:26 عصر
88660
دوستان مشکل قبلی حل شد الان میخوام به کمک دیتا گرید ویو یک جدول بسازم که مشخصات 2 تا ستون رو از جدول بگیره ، بعد اگه منابع به اندازه ستون دوم موجود بود در ستون سون یه دونه دکمه ظاهر بشه که با کلیک روی اون بشه این ساختمون رو ساخت :لبخندساده:
ممنون از راهنمایی تون

AM-Team
یک شنبه 04 تیر 1391, 09:52 صبح
دوست عزیز منم قبلا همچین پستی زده بودم و جواب هایی رو گرفتم
شما اگه جستجو کنید نتیجه هایی کسب میکنید چون در این تالار در این مورد زیاد بحث شده

من گشتم چیزی نیافتم اگه میشه لینکشو بذارین
ممنون

M.KH-SH
یک شنبه 04 تیر 1391, 10:08 صبح
دوست عزیز کدوم قسمت رو مشکل دارین؟
دیتا بیس ؟

چه بخشی از این دیتا رو مشکل دارین؟

M.KH-SH
یک شنبه 04 تیر 1391, 10:12 صبح
خوب دوست عزیز شما چند منبع دارین؟

آیا مثل بازی تراوین 4 تا؟
یعنی همون چوب خشت آهن و گندم(امان از این گندم بازی)

شما زمانی که دارین فرمول افزایش و یا ساخت رو مینویسد باید اون دیتا ها رو یک بار ذخیره کنین و چون تمام این دیتا ها 4تا هستن به راحتی میشه با استفاده از خود دیتاسورس اطلاعات رو خوند و منابع موجود در ده رو با اون دیتا مقایسه کرد و اگه اندازه بود بسازه اگه کم بود نسازه و بگه چی کمه و اگه بیشتر بود خوب بسازه و بقیه هم نگه داره

در کل میشه ::: یک مقایسه - یک پیغام - یک تفریق - یک ذخیره

AM-Team
یک شنبه 04 تیر 1391, 10:17 صبح
خوب دوست عزیز شما چند منبع دارین؟

آیا مثل بازی تراوین 4 تا؟
یعنی همون چوب خشت آهن و گندم(امان از این گندم بازی)

شما زمانی که دارین فرمول افزایش و یا ساخت رو مینویسد باید اون دیتا ها رو یک بار ذخیره کنین و چون تمام این دیتا ها 4تا هستن به راحتی میشه با استفاده از خود دیتاسورس اطلاعات رو خوند و منابع موجود در ده رو با اون دیتا مقایسه کرد و اگه اندازه بود بسازه اگه کم بود نسازه و بگه چی کمه و اگه بیشتر بود خوب بسازه و بقیه هم نگه داره

در کل میشه ::: یک مقایسه - یک پیغام - یک تفریق - یک ذخیره

تو این بازی تنها یک منبع وجود داره اون هم دانش هست که از راههای مختلفی کسب میشه ( جنگ ، مسابقات ، سوالات 4 جوابی ) اصل این بازی بر این اساس هست که کاربرانی که بازی رو انجام میدن کنارش بتونن چند مطلب یاد بگیرند ، همچنین قابلیت اضافه کردن سوال به وسیله کاربر در بازی وجود دارد . اگه میشه با نمونه کد راهنمایی تا درکش برای من راحت تر بشه
ممنون از لطفتون

M.KH-SH
یک شنبه 04 تیر 1391, 10:23 صبح
در بخش دیتانویسی و دیتا بیس چقدر کارکردین که من از اون به بعد رو براتون بنویسم

AM-Team
یک شنبه 04 تیر 1391, 10:29 صبح
در بخش دیتانویسی و دیتا بیس چقدر کارکردین که من از اون به بعد رو براتون بنویسم
من قبلا یک برنامه مشابه اینو با vb6 نوشتم ولی اونجا هم نتونستم اطلاعاتو توی دیتا گرید ویو نشون بدم و مجبور شدم خیلی مبتدی از چندین ایمیج باکس ، لیبل ، تکس باکس و ... استفاده کنم .
الان با مطالب خوبی که درون سایت پیدا کردم ، چهار عمل اصلی اضافه کردن ، پاک کردن ، بروز رسانی و انتخاب رو در vb.net2010 و بانک اکسس میتونم انجام بدم
الان من به این احتیاج دارم که توی یک دیتا گرید به ترتیب این مقادیر نمایش داده بشه
1. عکس ساختمان 2. مقدار دانش مورد نیاز برای ساخت ( تنها منبع موجود در بازی ) 3.و در صورتی که کاربر شرایط ساخت ( داشتن منبع ) رو داشت کلید ساخت نمایش داده بشه .
ممنون

AM-Team
یک شنبه 04 تیر 1391, 10:48 صبح
د
فکر کنم چون تازه ثبت نام کردم پیام خصوصی نمیتونم ارسال کنم

M.KH-SH
یک شنبه 04 تیر 1391, 11:24 صبح
نمایش یک دیتا سورس در یک دیتاگرید ویو به این صورت هست که بعد از پرکردن دیتاست شما مییای و این کدرو مینویسی:

datagridview1.datasource=ds.tables(0)

اطلاعات نمایش پیدا میکنه ولی اینو باید بگم که برای نمایش تصاویر از این دیتاگریدویو دچار پیغام خطا میشین

پس اگه میخواین این خطا رو نبینین بهتر هستش که از 2 تا دیتاست برای پر کردن استفاده کنین یکی برای اطلاعات اولیه و یکی هم برای تصاویر
حالا شما این اطلاعات رو نیاز دارین :: بر اساس چینش اطلاعات در دیتاست ها میتونین این اطلاعات رو بازیابی کنین :::

این کد میاد میگه که در تیبل شماره 0 خط 0 ایتم شماره 1 رو برام بیار
ds.tables(0).rows(0).item(1)


خوب بهتر هستش برای تصاویر یک فولدر درست کنی و تصاویر رو داخل اون بریزی و از اون طرف داخل بانک آدرس رو ذخیره کنی و بر اساس آدرس تصاویر رو در خانه های مربوز فراخوانی کنی دوست عزیز

AM-Team
یک شنبه 04 تیر 1391, 13:29 عصر
آدرس ساختمان ها ذخیره شد
حلا چطوری توی گرید ویو نمایش بدم ، الان داره آدرسو نشون میده به صورت متن ( خیلی برنامه نویسیم خوبه ! )
اون دکمه ساخت رو چطوری توی ستون 3 اضافه کنم
ممنون