View Full Version : سوال: ساختار game_save
vice_city
دوشنبه 02 خرداد 1390, 15:46 عصر
با سلام به همه
توی دایرکت اکس چجوری باید game save رو انجام داد. یعنی همه مشخصات بازی رو سیو کرد تا بشه بازی رو از اونجا لود کرد.
برای ذخیره طراحی بازی در لول ادیتور هم باید از روش معمولی سیو بازی استفاده کرد یا خیر؟
hi.alir
دوشنبه 02 خرداد 1390, 17:22 عصر
هر طوری دوست دارید میتونید درست کنید. بعضی ها فقط شماره مرحله رو سیو می کنند. مثل IGI. بعضی ها Check point دارند و اونا رو سیو می کنند + یک سری چیز میز دیگه. بازی هایی هم مثل Call of duty (اولیش که با F5 هر جایی میشه سیو زد) یه جورایی بازی رو hibernate می کنند. باید ببینید تو بازیتون چه چیز هایی دارید، چه چیز هایی باید سیو بشه تا بتونه بعدا لود بشه، بعد اونا رو دونه دونه از تو رم بریزید تو هارد. حالا این وسط می تونید اطلاعات رو compress کنید یا هر کار دیگه ای.
silsin
دوشنبه 02 خرداد 1390, 21:36 عصر
این سیو ها معمولا یا توی یه dll یا توی یه فایل جدا ذخیره میشه .این کار توی جاهای مختلف اسم های مختلف داره .
ببخش نمی تونم زیاد توضیح واست بدم چون باید برم
syntiberium
دوشنبه 02 خرداد 1390, 22:37 عصر
بازی red alert 3 رو برات مثال می زنم . توی این بازی یک سری اشیای ثابت وجود داره که هیچ بلایی نمی شه سرشون آورد مثل landscape و حتی وقتی بمب روش می اندازیم landscape چیزیش نمی شه و یکسری آبجکت با تکسچر جای انفجار بمب روش ظاهر می شه و یکسری آبجکت های ثابت دیگه هم وجود داره که اون ها رو هم نمی شه بلایی سرش آورد و کلا مشخصات این آبجکت های ثابت رو نباید save کرد چون مشخصاتشون قبلا توی بازی وجود داره . آبجکت هایی که کاربر داخل بازی اضافه کرده رو باید position و rotation و damage و میزان یخ زدگی و هر خاصیت دیگه ای که قابل تغییر باشه را باید ذخیره کرد . تمامی اطلاعاتی که هوش مصنوعی بدست آورده را باید ذخیره کرد مثل مناطقی که دشمنه هوش مصنوعی در آنجا ساختمان و unit دارد و مقادیر random ی که هوش مصنوعی برای انتخاب هایش و پیشبرد اهدافش تولید کرده و غیره . اتفاقاتی که افتاده که بعد از اتمام بازی باید به صورت نمودار نشان داده شود باید ذخیره شود . کلا تمامی اتفاقاتی که در بازی افتاده و مقادری که قابل تغییر هستند باید ذخیره شوند . اگر سوالی داشتی بپرس .
vice_city
سه شنبه 03 خرداد 1390, 00:36 صبح
ممنون از همه.
آیا برای سیو کردن توی دایرکت اکس تابعی هست؟یا باید خودمون برای انجین بنویسیم که چه چیزهایی رو ذخیره کنه. منظورم اینه که توی موتور A8 مینویسی
game_save("levelN",SV_ALL);و همه چیزهایی که گفتید با هم ذخیره میشن و هر موقع که خاستی میتولی سیو رو لود کنی.
hi.alir
سه شنبه 03 خرداد 1390, 10:40 صبح
گمون نکنم. اصلا یه همچین چیزی به directx ربطی نداره.
kochol
سه شنبه 03 خرداد 1390, 23:33 عصر
این کار ها ربطی به دایرکت ایکس نداره و خودت باید save o load رو بنویسی.
من خودم چندتا لایبری رو نگاه کردم ولی به نظر من بهترین کتابخانه boost serialize است.
http://www.boost.org/
http://www.boost.org/doc/libs/1_46_1/libs/serialization/doc/index.html
این ها هم یه سری دیگه کتابخانه برای serialize کردن هست.
http://s11n.net/
http://www.sweetsoftware.co.nz/
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.