ট্রেন ফেরি ও বৃষ্টি
উৎস: pulsexlb/OpenTTD-patches
px-patch(২০২৬-১০ ব্যাচ,pxp-2610.1–pxp-2610.3), git merge-এর মাধ্যমে jrpm-এ যুক্ত।
এই ব্যাচে দুটি বড় নতুন বৈশিষ্ট্য এসেছে: ট্রেন ফেরি (জাহাজে পুরো ট্রেন নেওয়া) এবং বৃষ্টি ব্যবস্থা (বিশ্ব অন্ধকার হওয়া ও বৃষ্টির স্তরসহ)।
ট্রেন ফেরি
বিদ্যমান সড়ক যান পরিবহনের (RoRo) পাশাপাশি, যেখানে গাড়ি ট্রেন, জাহাজ ও বিমানে ওঠানো হয়, এখন জাহাজ পুরো ট্রেনও বহন করতে পারে।
RoRo-এর সঙ্গে সম্পর্ক
| সড়ক যান পরিবহন (VEHC) | ট্রেন পরিবহন (RAIL) | |
|---|---|---|
| বাহক | ট্রেন, জাহাজ, বিমান | জাহাজ |
| পরিবাহিত বস্তু | সড়ক যান | ট্রেন (লোকোমোটিভ ও কোচ দুটিই) |
| কার্গো লেবেল | VEHC | RAIL |
| কার্গো স্লট | NUM_CARGO - 1 | NUM_CARGO - 2 |
দুটি কার্গো স্লটই NewGRF-এর ৬৪টি স্লটের বাইরে, তাই তারা কখনো দ্বন্দ্ব করে না।
লোডিং
- জাহাজে হাতে রূপান্তর করে "যান (ট্রেন)" কার্গো বসালে সেটি পুরো ট্রেন বহন করতে পারে;
- কোচভিত্তিক লোডিং: একটি ট্রেন একাধিক কার্গো হোল্ডে ছড়িয়ে বোঝানো যায়, একটির মধ্যে আটকে থাকার বাধ্য নেই। এতে এক হোল্ডের ধারণক্ষমতা ছাড়িয়ে যাওয়া দীর্ঘ ট্রেনের সমস্যা দূর হয়;
- পরিবহন বিকল্পের সাইন নির্বাচক এখন ট্রেন ও যানের সাইন আলাদা করে দেয়, ফলে প্রতিটি পরিবহন ধরন নিজের গন্তব্য নিজে ঘোষণা করতে পারে;
- অবস্থা-বার আর বাহিত যানগুলোর বিস্তারিত তালিকা দেখায় না, ফলে চলাচলের গুরুত্বপূর্ণ তথ্যের জন্য জায়গা মেলে।
ধারণক্ষমতা প্রদর্শন
- জাহাজের তথ্য উইন্ডো প্রতিটি কার্গো হোল্ডের ওজন ধারণক্ষমতা দেখায়;
- ট্রেনের তথ্য উইন্ডো প্রতিটি কোচের ধারণক্ষমতা দেখায়।
সংশ্লিষ্ট সংশোধন
এই ব্যাচে লোডিং, আনলোডিং ও প্ল্যাটফর্ম সংরক্ষণ-সংক্রান্ত আরও কিছু ত্রুটি ঠিক করা হয়েছে:
- জাহাজ ট্রেন নামাতে সময় রেলের ধরনকে ভুলভাবে অসামঞ্জস্যযোগ্য মনে করত, ফলে ট্রেন নামতে পারত না;
- ট্রেন বোর্ড করার সময় প্ল্যাটফর্ম সংরক্ষণ মুছে যেত না, এবং নামার সময় কাঠামো ও সংরক্ষণে ত্রুটি হতো;
- পুরনো প্ল্যাটফর্ম সংরক্ষণ থেকে যাওয়ায় ট্রেন আর প্ল্যাটফর্মে নামতে পারত না;
- কিছু প্ল্যাটফর্ম অভিমুখে ট্রেন নামতে অস্বীকার করত;
- পরিবহনের জন্য রূপান্তরিত যানগুলোতে কোচ সংখ্যার সীমা কার্যকর হচ্ছিল না।
বৃষ্টি ব্যবস্থা
এটি সম্পূর্ণরূপে আলংকারিক আবহাওয়া সিমুলেশন — এটি কেবল চিত্রকে প্রভাবিত করে, খেলের যুক্তি বা অর্থনৈতিক মানকে স্পর্শ করে না।
আবহাওয়ার উপস্থাপন
- এলোমেলো বৃষ্টির সময়কাল: আবহাওয়ার অবস্থা একটি নির্ধারিত নিয়মিত-অবাস্তব সংখ্যা জেনারেটর দ্বারা চালিত, যা মানচিত্র তৈরির বীজ থেকে প্রারম্ভিত হয়, তাই প্রতিটি খেলোয়াড় ও সার্ভার হুবহু একই আবহাওয়া দেখেন;
- বিশ্ব ধীরে ধীরে অন্ধকার হয়: বৃষ্টি চলাকালীন বিশ্ব ধীরে অন্ধকার হয় এবং থামলে আবার ধীরে উজ্জ্বল হয়। অন্ধকারতা
RAIN_SHADE_LEVELSস্তরে এগিয়ে যায় এবং ভিউপোর্ট আঁকার সময় পড়া হয়; - বৃষ্টির স্তর: পূর্ণ পর্দার বৃষ্টির স্তর, যা জুমের সঙ্গে ছোট-বড় হয় এবং এতে এলোমেলো কাঁপন থাকে, ফলে বৃষ্টিগুলো স্থির টেক্সচারের মতো দেখায় না।
বিকল্প ও চিট
- কাঠিন্য বিকল্প
difficulty.rain: নতুন গেম শুরু করার সময় নির্ধারণ করে বৃষ্টির সময় বিশ্ব অন্ধকার হবে কি না; - স্যান্ডবক্স চিট 「আবহাওয়া」: তিনটি অবস্থার চক্র — স্বয়ংক্রিয় / জোর করে বৃষ্টি / জোর করে রোদ।
সেভগেম
আবহাওয়ার অবস্থা (এখন বৃষ্টি হচ্ছে কি না, জেনারেটরের বীজ, চলতি বৃষ্টির সময়কালের শুরু) এবং স্যান্ডবক্স আবহাওয়া চিট গেমের সঙ্গে সংরক্ষিত হয়; লোড করার পর অন্ধকারতা আবার ধীরে ধীরে আসার বদলে সরাসরি বর্তমান আবহাওয়ায় চলে যায়।
- চাঙ্ক:
WTHR; - বৈশিষ্ট্য ফ্ল্যাগ:
XSLFI_WEATHER; - কোড:
src/weather.cpp,src/weather.h,src/sl/weather_sl.cpp।
সংশ্লিষ্ট কোড
- ট্রেন ফেরি ও ধারণক্ষমতা:
src/roadveh_transport.cpp,src/cargo_type.h(CT_RAILVEHICLES),src/table/cargo_const.h - বৃষ্টির দৃশ্য ইফেক্ট:
src/weather.cpp,src/blitter/32bpp_anim.cpp,src/blitter/40bpp_anim.cpp,src/viewport.cpp - আবহাওয়া সেভগেম:
src/sl/weather_sl.cpp,src/sl/extended_ver_sl.cpp(XSLFI_WEATHER) - সেটিং ও চিট:
src/table/settings/difficulty_settings.ini(difficulty.rain),src/cheat_gui.cpp,src/cheat_type.h