OpenRCT2/src/openrct2/Version.h

88 lines
2.3 KiB
C
Raw Normal View History

/*****************************************************************************
* Copyright (c) 2014-2023 OpenRCT2 developers
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
*****************************************************************************/
#pragma once
#include "common.h"
#include <string>
2018-06-22 23:25:16 +02:00
#define OPENRCT2_NAME "OpenRCT2"
Release v0.4.6 - Feature: [#15660] Ability to show window buttons on the left. - Feature: [#20680] New title sequences (https://github.com/OpenRCT2/title-sequences/releases/tag/v0.4.6). - Feature: [OpenMusic#41] Official Title Theme by Allister Brimble. - Improved: [#20119, #20243] Add new colour presets to several roller coasters (using the new colours). - Improved: [#20393, #20410] Add Cyrillic characters Ґґ, Ѕѕ, Єє, Іі, Її, and Јј to the sprite font. - Change: [#19785] OpenMusic is now selected by default when opening SC4/SC6 - or creating new - scenarios. - Change: [#20110] Fix a few RCT1 build height parity discrepancies. - Change: [#20550] Change SEK conversion rate from 1 GBP to 0.1 GBP. - Fix: [#6152] Camera and UI are no longer locked at 40 Hz, providing a smoother experience. - Fix: [#9534] Screams no longer cut-off on steep diagonal drops. - Fix: [#17666] Using the mountain tool near the edge of the map with clearance checks disabled causes visual glitches. - Fix: [#19450] The correct element is now auto-suggested when building a Medium Half Loop backwards. - Fix: [#19735] Server unable to advertise to master server after a connection loss. - Fix: [#19822] Tile inspector does not deep copy banners. - Fix: [#19823] Parkobj: disallow overriding objects of different object types. - Fix: [#19878] Unresearched scenery can be placed via prebuilt rides. - Fix: [#20083] Cannot use terrain surfaces with ID > 32 and terrain edges with ID > 16. - Fix: [#20089] Potential crash when a window is closed from another window. - Fix: [#20103] [Plugin] Crash when custom plugin actions fail due to immutable state. - Fix: [#20111] All coaster types can access the new diagonal slope pieces. - Fix: [#20155] Fairground organ style 2 shows up as regular music, rather than for the merry-go-round. - Fix: [#20260] Ride locks up when inspecting/fixing staff member is fired. - Fix: [#20262] Title screen music missing when “random” title music is selected and RCT1 is no longer linked. - Fix: [#20310] Map animations are not created on the title screen. - Fix: [#20342] Large Half Loop (left) now only appears once in the special elements dropdown. - Fix: [#20361] Crash when using random map generation. - Fix: [#20364] Adding too much money with cheats causes an overflow. - Fix: [#20365] Money cheat input does not support negative values. - Fix: [#20389] Reversed vehicles are now correctly banked on diagonal slopes. - Fix: [#20413] Crash when attempting to navigate an empty console history. - Fix: [#20417] Plugin/custom windows are missing the left border in the title bar. - Fix: [#20429] Error window tooltip not closing after 8 seconds. - Fix: [#20456] Downward large half loops on flying coasters (fly-to-lie) are now correctly named. - Fix: [#20484] Console caret not properly updated when using command history. - Fix: [#20496] Ride rating requirements for compact inverted coasters is no longer relaxed. - Fix: [#20543] Crash using show segments height from debug paint options. - Fix: [#20607] Infinite loop when renaming rides with default names longer than 32 bytes. - Fix: [#20642] Track list is sometimes empty due to uninitialized data for the filter string. - Fix: [#20659] Phantom rides remain when closing construction window while paused. - Fix: [#20672] Maze ghost elements incorrectly displayed. - Fix: [#20684] Footpath additions getting removed by Miniature railway ghost elements. - Fix: [#20693] Incorrect information shown when hovering over station when another station before it was removed. - Fix: [#20739] Build version info on title screen leaving stray pixels when the camera is moved.
2023-09-03 17:13:15 +02:00
#define OPENRCT2_VERSION "0.4.6"
2016-08-19 01:18:09 +02:00
2016-08-28 16:54:38 +02:00
#if defined(__amd64__) || defined(_M_AMD64)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "x86-64"
2016-08-28 16:54:38 +02:00
#elif defined(__i386__) || defined(_M_IX86)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "x86"
2019-10-15 06:47:49 +02:00
#elif defined(__aarch64__) || defined(_M_ARM64)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "AArch64"
2016-08-28 16:54:38 +02:00
#elif defined(__arm__) || defined(_M_ARM)
2018-07-21 16:17:06 +02:00
# if defined(__ARM_ARCH_7A__)
# define OPENRCT2_ARCHITECTURE "arm-v7a"
# else
# define OPENRCT2_ARCHITECTURE "arm"
# endif
#elif defined(__powerpc__) || defined(_M_PPC)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "PowerPC"
2017-06-15 14:22:15 +02:00
#elif defined(__mips64)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "mips64"
2017-06-15 14:22:15 +02:00
#elif defined(__mips__)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "mips"
#elif defined(__riscv)
# define OPENRCT2_ARCHITECTURE "RISC-V"
2016-08-28 16:54:38 +02:00
#endif
#ifdef __EMSCRIPTEN__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_ARCHITECTURE "Emscripten"
#endif
2016-08-28 16:54:38 +02:00
#ifndef OPENRCT2_ARCHITECTURE
2018-07-21 16:17:06 +02:00
# error "OPENRCT2_ARCHITECTURE is undefined. Please add identification."
2016-08-19 01:18:09 +02:00
#endif
// Platform
2017-06-12 19:00:15 +02:00
#ifdef _WIN32
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Windows"
#endif
2017-06-15 14:22:15 +02:00
#if defined(__linux__) && !defined(__ANDROID__)
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Linux"
#endif
2017-06-12 19:00:15 +02:00
#if (defined(__APPLE__) && defined(__MACH__))
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "macOS"
#endif
2017-06-12 19:00:15 +02:00
#ifdef __FreeBSD__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "FreeBSD"
#endif
#ifdef __NetBSD__
# define OPENRCT2_PLATFORM "NetBSD"
#endif
2017-06-15 14:22:15 +02:00
#ifdef __ANDROID__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Android"
2017-06-15 14:22:15 +02:00
#endif
2017-06-25 21:25:55 +02:00
#ifdef __OpenBSD__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "OpenBSD"
2017-06-25 21:25:55 +02:00
#endif
#ifdef __EMSCRIPTEN__
2018-07-21 16:17:06 +02:00
# define OPENRCT2_PLATFORM "Emscripten"
#endif
#ifndef OPENRCT2_PLATFORM
2018-07-21 16:17:06 +02:00
# error Unknown platform!
#endif
2018-02-01 18:49:14 +01:00
extern const char gVersionInfoFull[];
extern const char gVersionInfoTag[];
struct NewVersionInfo
{
std::string tag;
std::string name;
std::string changelog;
std::string url;
};
NewVersionInfo GetLatestVersion();