From 2c381b6cefc15692f06aa1e6d533f7a8082a9a91 Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:54:17 +0000 Subject: [PATCH 01/12] Add both server and launcher pages --- frontend/src/pages/downloads.module.css | 419 ++++++++++++++++++++++ frontend/src/pages/downloads/common.tsx | 296 +++++++++++++++ frontend/src/pages/downloads/constants.ts | 2 + frontend/src/pages/downloads/launcher.tsx | 107 ++++++ frontend/src/pages/downloads/server.tsx | 107 ++++++ 5 files changed, 931 insertions(+) create mode 100644 frontend/src/pages/downloads.module.css create mode 100644 frontend/src/pages/downloads/common.tsx create mode 100644 frontend/src/pages/downloads/constants.ts create mode 100644 frontend/src/pages/downloads/launcher.tsx create mode 100644 frontend/src/pages/downloads/server.tsx diff --git a/frontend/src/pages/downloads.module.css b/frontend/src/pages/downloads.module.css new file mode 100644 index 00000000000..9f0fa214531 --- /dev/null +++ b/frontend/src/pages/downloads.module.css @@ -0,0 +1,419 @@ +.pageContainer { + padding: 5rem 1.5rem 0; + max-width: 900px; + margin: 0 auto 100px; + width: 100%; + display: flex; + flex-direction: column; + align-items: center; +} + +.pageTitle { + text-align: center; + color: #9083d2; + font-size: 4rem; + font-weight: 800; + line-height: 1.1; + letter-spacing: -0.5px; + margin-bottom: 1rem; + animation: fadeIn 1s ease-out; +} + +.pageSubtitle { + text-align: center; + font-size: 1.5rem; + line-height: 1.6; + color: var(--ifm-color-emphasis-800); + margin-bottom: 3rem; + animation: fadeIn 1s ease-out 0.2s both; +} + +.productSection { + max-width: 900px; + width: 100%; + border-radius: 12px; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + padding: 2.5rem; + margin-bottom: 2.5rem; + animation: fadeIn 1s ease-out 0.4s both; + background: var(--ifm-background-surface-color); +} + +.productSection:last-child { + margin-bottom: 0; +} + +.topAdmonition { + max-width: 900px; + width: 100%; + margin-bottom: 2.5rem; +} + +.topAdmonition :global(.admonition) { + margin-bottom: 0; + border-radius: 10px; +} + +.trustSection { + display: flex; + flex-direction: column; + gap: 1rem; +} + +.trustText { + margin: 0; + font-size: 1.05rem; + color: var(--ifm-color-emphasis-700); + line-height: 1.75; + text-align: center; +} + +.trustActions { + display: flex; + align-items: center; + justify-content: flex-start; +} + +.productTitle { + font-size: 2rem; + font-weight: 700; + margin-bottom: 0.25rem; + color: var(--ifm-heading-color); + display: flex; + align-items: center; + gap: 0.75rem; +} + +.versionInfo { + font-size: 1rem; + color: var(--ifm-color-emphasis-600); + margin-bottom: 2rem; +} + +.newBadge { + display: inline-block; + background: var(--ifm-color-primary); + color: #fff; + font-size: 0.7rem; + font-weight: 700; + padding: 0.15rem 0.5rem; + border-radius: 4px; + letter-spacing: 0.5px; + text-transform: uppercase; +} + +.downloadRow { + display: flex; + align-items: stretch; + flex-wrap: wrap; + gap: 0.75rem; + margin-bottom: 0.5rem; +} + +.dynSslNote { + font-size: 0.85rem; + color: var(--ifm-color-emphasis-600); + margin: 0 0 1.5rem; + font-style: italic; +} + +.downloadButton { + flex: 1; + font-weight: 600; + border-radius: 8px; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12); + transition: all 0.3s ease; + text-align: center; + padding: 1rem 1.5rem; + font-size: 1.1rem; +} + +.downloadButton:hover { + transform: translateY(-3px); + box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15); +} + +.buttonSize { + font-weight: 400; + opacity: 0.85; + margin-left: 0.5rem; + font-size: 0.85em; +} + +.githubLink { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 0.3rem; + padding: 0.75rem 1rem; + border-radius: 8px; + background: var(--ifm-color-secondary-button-background); + color: var(--ifm-color-emphasis-700) !important; + font-size: 0.7rem; + font-weight: 600; + text-decoration: none; + transition: all 0.3s ease; + min-width: 80px; + text-align: center; +} + +.githubLink:hover { + transform: translateY(-3px); + color: var(--ifm-color-primary) !important; + text-decoration: none; +} + +.keyFeatures { + margin-bottom: 1.25rem; +} + +.keyFeaturesTitle { + margin: 0 0 0.6rem; + font-size: 1.05rem; + font-weight: 700; + color: var(--ifm-heading-color); +} + +.keyFeaturesList { + margin: 0; + padding-left: 1.25rem; +} + +.keyFeaturesList li { + margin-bottom: 0.35rem; + color: var(--ifm-color-emphasis-800); + line-height: 1.5; +} + +.changelogDetails { + border-radius: 12px; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + overflow: hidden; + margin-bottom: 1.25rem; +} + +.changelogSummary { + padding: 1rem 1.25rem; + font-weight: 600; + font-size: 1rem; + cursor: pointer; + color: var(--ifm-font-color-base); + list-style: none; + display: flex; + align-items: center; + gap: 0.6rem; + transition: background 0.2s ease; + user-select: none; +} + +.changelogSummary::-webkit-details-marker { + display: none; +} + +.changelogSummary::before { + content: "\25B6"; + font-size: 0.65rem; + transition: transform 0.2s ease; + display: inline-block; + color: var(--ifm-color-primary); +} + +.changelogDetails[open] .changelogSummary::before { + transform: rotate(90deg); +} + +.changelogSummary:hover { + background: var(--ifm-color-emphasis-100); +} + +.changelogContent { + padding: 1.25rem 1.5rem; + border-top: 1px solid var(--ifm-color-emphasis-200); + font-size: 0.9rem; + line-height: 1.7; + max-height: 500px; + overflow-y: auto; +} + +.changelogContent h1, +.changelogContent h2, +.changelogContent h3 { + font-size: 1.1rem; + margin-top: 1.25rem; + margin-bottom: 0.5rem; + color: var(--ifm-heading-color); +} + +.changelogContent h1:first-child, +.changelogContent h2:first-child, +.changelogContent h3:first-child { + margin-top: 0; +} + +.changelogContent ul { + padding-left: 1.25rem; + margin: 0.5rem 0; +} + +.changelogContent li { + margin-bottom: 0.25rem; +} + +.changelogContent p { + margin: 0.5rem 0; +} + +.changelogContent a { + color: var(--ifm-color-primary); + text-decoration: underline; +} + +.changelogContent code { + background: var(--ifm-color-emphasis-100); + padding: 0.15rem 0.4rem; + border-radius: 4px; + font-size: 0.85em; +} + +.releaseAdmonition { + margin-bottom: 1.25rem; +} + +.releaseAdmonition :global(.admonition) { + margin-bottom: 0; + border-radius: 10px; +} + +.showMoreWrapper { + display: flex; + justify-content: center; + width: 100%; + max-width: 900px; + margin-bottom: 2.5rem; + position: relative; + animation: fadeIn 1s ease-out 0.5s both; +} + + +.showMoreButton { + position: relative; + background: var(--ifm-background-color); + border: 1px solid var(--ifm-color-emphasis-200); + border-radius: 8px; + padding: 0.6rem 1.75rem; + font-size: 0.9rem; + font-weight: 600; + color: var(--ifm-color-emphasis-600); + cursor: pointer; + transition: all 0.25s ease; + display: inline-flex; + align-items: center; + gap: 0.5rem; + width: auto; +} + +.showMoreButton::after { + content: "\25BC"; + font-size: 0.6rem; + transition: transform 0.25s ease; +} + +.showMoreButton:hover { + border-color: var(--ifm-color-primary); + color: var(--ifm-color-primary); + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); + transform: translateY(-1px); +} + +.showMoreButton:hover::after { + transform: translateY(2px); +} + +.footerTrust { + max-width: 900px; + width: 100%; + border-radius: 12px; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + padding: 2.5rem; + animation: fadeIn 1s ease-out 0.4s both; + background: var(--ifm-background-surface-color); +} + +@keyframes fadeIn { + from { + opacity: 0; + transform: translateY(20px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +@media screen and (max-width: 996px) { + .pageContainer { + padding: 4rem 1.5rem 0; + margin-bottom: 80px; + } + + .pageTitle { + font-size: 3rem; + } +} + +@media screen and (max-width: 768px) { + .pageContainer { + padding: 3rem 1rem 0; + margin-bottom: 60px; + } + + .pageTitle { + font-size: 2.5rem; + } + + .pageSubtitle { + font-size: 1.25rem; + margin-bottom: 2rem; + } + + .productSection { + padding: 1.5rem; + margin-bottom: 1.5rem; + } + + .trustText { + font-size: 1rem; + line-height: 1.65; + } + + .productTitle { + font-size: 1.5rem; + } + + .downloadRow { + flex-wrap: wrap; + } + + .downloadButton { + flex: 1 1 100%; + font-size: 1rem; + padding: 0.85rem 1.25rem; + } + + .githubLink { + flex: 1 1 100%; + flex-direction: row; + gap: 0.5rem; + padding: 0.65rem 1rem; + font-size: 0.8rem; + } + + .footerTrust { + padding: 1.5rem; + } + + .showMoreWrapper { + margin-bottom: 1.5rem; + } +} diff --git a/frontend/src/pages/downloads/common.tsx b/frontend/src/pages/downloads/common.tsx new file mode 100644 index 00000000000..9cacc1a3103 --- /dev/null +++ b/frontend/src/pages/downloads/common.tsx @@ -0,0 +1,296 @@ +import Link from "@docusaurus/Link"; +import Translate from "@docusaurus/Translate"; +import Heading from "@theme/Heading"; +import Layout from "@theme/Layout"; +import React, { useState } from "react"; + +import Admonition from "../../components/Admonition"; +import { INITIAL_VISIBLE_RELEASES } from "./constants"; +import styles from "../downloads.module.css"; + +export interface Release { + tag: string; + publishedAt: string; + htmlUrl: string; + body: string | React.ComponentType; + highlights?: string[]; + admonition?: { + type: "tip" | "info" | "warning" | "danger" | "note"; + title: React.ReactNode; + body: React.ReactNode; + }; + assets: { label: string; url: string; size: string }[]; +} + +export interface ProductConfig { + pageTitle: React.ReactNode; + pageSubtitle: React.ReactNode; + releasesUrl: string; + releases: Release[]; + announcement?: { + type: "tip" | "info" | "warning" | "danger" | "note"; + title: React.ReactNode; + body: React.ReactNode; + }; +} + +function formatDate(iso: string): string { + try { + return new Intl.DateTimeFormat(undefined, { + year: "numeric", + month: "long", + day: "numeric", + }).format(new Date(iso)); + } catch { + return iso.split("T")[0]; + } +} + +function renderMarkdown(md: string): React.ReactNode { + const lines = md.split("\n"); + const elements: React.ReactNode[] = []; + let listItems: React.ReactNode[] = []; + let key = 0; + + const flushList = () => { + if (listItems.length > 0) { + elements.push(); + listItems = []; + } + }; + + const inlineFormat = (text: string): React.ReactNode => { + const parts: React.ReactNode[] = []; + const regex = /(\*\*(.+?)\*\*)|(`(.+?)`)|(\[([^\]]+)\]\(([^)]+)\))/g; + let lastIndex = 0; + let match: RegExpExecArray | null; + + while ((match = regex.exec(text)) !== null) { + if (match.index > lastIndex) { + parts.push(text.slice(lastIndex, match.index)); + } + if (match[1]) { + parts.push({match[2]}); + } else if (match[3]) { + parts.push({match[4]}); + } else if (match[5]) { + parts.push( + + {match[6]} + + ); + } + lastIndex = regex.lastIndex; + } + if (lastIndex < text.length) { + parts.push(text.slice(lastIndex)); + } + return parts.length === 1 ? parts[0] : parts; + }; + + for (const line of lines) { + const trimmed = line.trimEnd(); + + const headerMatch = trimmed.match(/^(#{1,3})\s+(.+)/); + if (headerMatch) { + flushList(); + const level = headerMatch[1].length; + const Tag = (`h${level}` as "h1" | "h2" | "h3"); + elements.push({inlineFormat(headerMatch[2])}); + continue; + } + + const listMatch = trimmed.match(/^[-*]\s+(.+)/); + if (listMatch) { + listItems.push(
  • {inlineFormat(listMatch[1])}
  • ); + continue; + } + + if (trimmed === "") { + flushList(); + continue; + } + + flushList(); + elements.push(

    {inlineFormat(trimmed)}

    ); + } + + flushList(); + return elements; +} + +interface ReleaseListPageProps { + config: ProductConfig; +} + +export function ReleaseListPage({ config }: ReleaseListPageProps): React.ReactElement { + const [showAll, setShowAll] = useState(false); + + const releases = config.releases; + const visibleReleases = showAll ? releases : releases.slice(0, INITIAL_VISIBLE_RELEASES); + const hasMore = releases.length > INITIAL_VISIBLE_RELEASES; + + return ( + +
    + + {config.pageTitle} + +

    {config.pageSubtitle}

    + + {config.announcement && ( +
    + + {config.announcement.body} + +
    + )} + + {visibleReleases.map((release, index) => { + const assets = release.assets; + return ( +
    + + {release.tag} + {index === 0 && ( + + + LATEST + + + )} + + +

    + + {"Released {date}"} + +

    + + {release.admonition && ( +
    + + {release.admonition.body} + +
    + )} + + {release.highlights && release.highlights.length > 0 && ( +
    +

    + + Highlights + +

    +
      + {release.highlights.map((feature) => ( +
    • {feature}
    • + ))} +
    +
    + )} + + {release.body && ( +
    + + + View full changelog + + +
    + {typeof release.body === "string" ? renderMarkdown(release.body) : React.createElement(release.body)} +
    +
    + )} + +
    + {assets.length > 0 ? ( + assets.map((asset) => ( + + {asset.label}{/dynssl/i.test(asset.label) && " *"} + ({asset.size}) + + )) + ) : ( + + + View release on GitHub + + + )} + + + + + + + + GitHub + + + +
    + + {assets.some((a) => /dynssl/i.test(a.label)) && ( +

    + + * The DynSSL version requires libssl to be installed on your Linux distribution. + +

    + )} +
    + ); + })} + + {hasMore && ( +
    + +
    + )} + +
    +
    +

    + + Every release is open source. Build from source, or download directly from GitHub. + +

    +
    + + + Download from GitHub + + +
    +
    +
    +
    +
    + ); +} diff --git a/frontend/src/pages/downloads/constants.ts b/frontend/src/pages/downloads/constants.ts new file mode 100644 index 00000000000..a345008c196 --- /dev/null +++ b/frontend/src/pages/downloads/constants.ts @@ -0,0 +1,2 @@ +/** Number of releases shown before the "See older releases" button. */ +export const INITIAL_VISIBLE_RELEASES = 2; diff --git a/frontend/src/pages/downloads/launcher.tsx b/frontend/src/pages/downloads/launcher.tsx new file mode 100644 index 00000000000..6caba0b1e2b --- /dev/null +++ b/frontend/src/pages/downloads/launcher.tsx @@ -0,0 +1,107 @@ +import Translate from "@docusaurus/Translate"; +import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; +import React from "react"; + +import { Release, ReleaseListPage } from "./common"; + +type ReleaseModule = { + default: React.ComponentType; + frontMatter?: { + tag?: string; + publishedAt?: string; + htmlUrl?: string; + highlights?: string[]; + admonition?: { + type?: "tip" | "info" | "warning" | "danger" | "note"; + title?: string; + body?: string; + }; + assets?: { label?: string; url?: string; size?: string }[]; + }; +}; + +type RequireWithContext = typeof require & { + context: (path: string, deep?: boolean, filter?: RegExp) => { + keys: () => string[]; + (id: string): T; + }; +}; + +const baseCtx = (require as RequireWithContext).context("@site/content/releases/launcher", false, /\.md$/); +const i18nCtx = (require as RequireWithContext).context("../../../i18n", true, /content\/releases\/launcher\/.*\.md$/); + +function toRelease(key: string, mod: ReleaseModule): Release { + const fm = mod.frontMatter ?? {}; + return { + tag: fm.tag ?? key.replace(/^\.\//, "").replace(/\.md$/, ""), + publishedAt: fm.publishedAt ?? "", + htmlUrl: fm.htmlUrl ?? "", + body: mod.default, + highlights: (fm.highlights ?? []).filter((feature): feature is string => typeof feature === "string"), + admonition: + fm.admonition?.type && fm.admonition?.title && fm.admonition?.body + ? { + type: fm.admonition.type, + title: fm.admonition.title, + body: fm.admonition.body, + } + : undefined, + assets: (fm.assets ?? []) + .filter((a) => a?.label && a?.url && a?.size) + .map((a) => ({ + label: a.label as string, + url: a.url as string, + size: a.size as string, + })), + }; +} + +function fileNameFromKey(key: string): string { + const parts = key.split("/"); + return parts[parts.length - 1] ?? key; +} + +export default function LauncherDownloadsPage(): React.ReactElement { + const { + i18n: { currentLocale, defaultLocale }, + } = useDocusaurusContext(); + + const releases: Release[] = React.useMemo(() => { + const modulesByFile = new Map(); + + for (const key of baseCtx.keys()) { + modulesByFile.set(fileNameFromKey(key), { key, mod: baseCtx(key) as ReleaseModule }); + } + + if (currentLocale !== defaultLocale) { + const localePrefix = `./${currentLocale}/content/releases/launcher/`; + for (const key of i18nCtx.keys()) { + if (!key.startsWith(localePrefix)) continue; + modulesByFile.set(fileNameFromKey(key), { key, mod: i18nCtx(key) as ReleaseModule }); + } + } + + return Array.from(modulesByFile.values()) + .map(({ key, mod }) => toRelease(key, mod)) + .sort((a, b) => new Date(b.publishedAt).getTime() - new Date(a.publishedAt).getTime()); + }, [currentLocale, defaultLocale]); + + return ( + + open.mp Launcher + + ), + pageSubtitle: ( + + Play GTA San Andreas multiplayer in open.mp and SA-MP servers. + + ), + releasesUrl: "https://github.com/openmultiplayer/launcher/releases", + releases, + }} + /> + ); +} diff --git a/frontend/src/pages/downloads/server.tsx b/frontend/src/pages/downloads/server.tsx new file mode 100644 index 00000000000..aa78ed3d424 --- /dev/null +++ b/frontend/src/pages/downloads/server.tsx @@ -0,0 +1,107 @@ +import Translate from "@docusaurus/Translate"; +import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; +import React from "react"; + +import { Release, ReleaseListPage } from "./common"; + +type ReleaseModule = { + default: React.ComponentType; + frontMatter?: { + tag?: string; + publishedAt?: string; + htmlUrl?: string; + highlights?: string[]; + admonition?: { + type?: "tip" | "info" | "warning" | "danger" | "note"; + title?: string; + body?: string; + }; + assets?: { label?: string; url?: string; size?: string }[]; + }; +}; + +type RequireWithContext = typeof require & { + context: (path: string, deep?: boolean, filter?: RegExp) => { + keys: () => string[]; + (id: string): T; + }; +}; + +const baseCtx = (require as RequireWithContext).context("@site/content/releases/server", false, /\.md$/); +const i18nCtx = (require as RequireWithContext).context("../../../i18n", true, /content\/releases\/server\/.*\.md$/); + +function toRelease(key: string, mod: ReleaseModule): Release { + const fm = mod.frontMatter ?? {}; + return { + tag: fm.tag ?? key.replace(/^\.\//, "").replace(/\.md$/, ""), + publishedAt: fm.publishedAt ?? "", + htmlUrl: fm.htmlUrl ?? "", + body: mod.default, + highlights: (fm.highlights ?? []).filter((feature): feature is string => typeof feature === "string"), + admonition: + fm.admonition?.type && fm.admonition?.title && fm.admonition?.body + ? { + type: fm.admonition.type, + title: fm.admonition.title, + body: fm.admonition.body, + } + : undefined, + assets: (fm.assets ?? []) + .filter((a) => a?.label && a?.url && a?.size) + .map((a) => ({ + label: a.label as string, + url: a.url as string, + size: a.size as string, + })), + }; +} + +function fileNameFromKey(key: string): string { + const parts = key.split("/"); + return parts[parts.length - 1] ?? key; +} + +export default function ServerDownloadsPage(): React.ReactElement { + const { + i18n: { currentLocale, defaultLocale }, + } = useDocusaurusContext(); + + const releases: Release[] = React.useMemo(() => { + const modulesByFile = new Map(); + + for (const key of baseCtx.keys()) { + modulesByFile.set(fileNameFromKey(key), { key, mod: baseCtx(key) as ReleaseModule }); + } + + if (currentLocale !== defaultLocale) { + const localePrefix = `./${currentLocale}/content/releases/server/`; + for (const key of i18nCtx.keys()) { + if (!key.startsWith(localePrefix)) continue; + modulesByFile.set(fileNameFromKey(key), { key, mod: i18nCtx(key) as ReleaseModule }); + } + } + + return Array.from(modulesByFile.values()) + .map(({ key, mod }) => toRelease(key, mod)) + .sort((a, b) => new Date(b.publishedAt).getTime() - new Date(a.publishedAt).getTime()); + }, [currentLocale, defaultLocale]); + + return ( + + open.mp Server + + ), + pageSubtitle: ( + + Host your own GTA San Andreas multiplayer server. + + ), + releasesUrl: "https://github.com/openmultiplayer/open.mp/releases", + releases, + }} + /> + ); +} From 3a617a1bc4e4c880efa89898fdde01869c71d98b Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:55:04 +0000 Subject: [PATCH 02/12] Change index links for the download pages --- frontend/src/pages/index.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/frontend/src/pages/index.tsx b/frontend/src/pages/index.tsx index 144849966f5..a85ad399795 100644 --- a/frontend/src/pages/index.tsx +++ b/frontend/src/pages/index.tsx @@ -113,7 +113,7 @@ const HomepageHeader = () => { Changelog |{" "} Download @@ -122,7 +122,7 @@ const HomepageHeader = () => {
    The launcher also got an update!{" "} See what's new @@ -170,7 +170,7 @@ const HomepageHeader = () => { Download Launcher 🎮 @@ -178,7 +178,7 @@ const HomepageHeader = () => { Download Server 🖥️ From 48872ac764e6998d033c07775a29f0b34b6b5f7d Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:55:42 +0000 Subject: [PATCH 03/12] fix some bugs that were reported in animations page and give it some improvements (also cleanup) --- frontend/src/pages/animations.module.css | 249 +++++++---------------- frontend/src/pages/animations.tsx | 31 ++- 2 files changed, 84 insertions(+), 196 deletions(-) diff --git a/frontend/src/pages/animations.module.css b/frontend/src/pages/animations.module.css index 0d5fcd39a31..b91d5378a6f 100644 --- a/frontend/src/pages/animations.module.css +++ b/frontend/src/pages/animations.module.css @@ -1,48 +1,29 @@ -.description { - text-align: center; - margin-bottom: 1rem; - max-width: 700px; - margin-left: auto; - margin-right: auto; -} - -.notes { - margin-top: 1rem; - padding: 1rem; - background-color: var(--ifm-color-info-contrast-background); - border-radius: 8px; - border-left: 4px solid var(--ifm-color-info); - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); +.pageContainer { + padding: 5rem 1.5rem 0; + margin-bottom: 100px; + display: flex; + flex-direction: column; + align-items: center; } -.notes strong { - color: var(--ifm-color-info-dark); - font-weight: 600; - display: block; - margin-bottom: 0.75rem; - font-size: 0.95rem; +.pageTitle { + text-align: center; + color: #9083d2; + font-size: 4rem; + font-weight: 800; + line-height: 1.1; + letter-spacing: -0.5px; + margin-bottom: 1rem; + animation: fadeIn 1s ease-out; } -.notes ul { - margin: 0; - padding-left: 0; - list-style: none; +.pageSubtitle { + text-align: center; + font-size: 1.5rem; line-height: 1.6; -} - -.notes li { - margin-bottom: 0.75rem; - color: var(--ifm-color-emphasis-700); - font-size: 0.9rem; -} - -.notes code { - background: none; - padding: 0; - border-radius: 0; - font-size: inherit; - color: inherit; - font-weight: inherit; + color: var(--ifm-color-emphasis-800); + margin-bottom: 3rem; + animation: fadeIn 1s ease-out 0.2s both; } .controls { @@ -52,10 +33,10 @@ margin-bottom: 1.5rem; justify-content: center; padding: 1.25rem; - background-color: var(--ifm-card-background-color); - border-radius: 8px; - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); - transition: transform 0.3s ease, box-shadow 0.3s ease; + background: var(--ifm-background-surface-color); + border-radius: 12px; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); + animation: fadeIn 1s ease-out 0.3s both; } .controls:not(.animationDisplay .controls) { @@ -104,17 +85,18 @@ display: flex; flex-direction: column; gap: 1.25rem; - margin-top: 1rem; + margin-top: 0; padding: 1.5rem; - background-color: var(--ifm-card-background-color); - border-radius: 8px; - box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); + background: var(--ifm-background-surface-color); + border-radius: 12px; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); max-width: 1100px; + width: 100%; margin-left: auto; margin-right: auto; overflow: visible; box-sizing: border-box; - transition: box-shadow 0.3s ease; + animation: fadeIn 1s ease-out 0.4s both; } .animationInfo { @@ -126,14 +108,6 @@ min-width: 0; } -.animationTitle { - color: var(--ifm-color-primary); - margin-bottom: 0.5rem; - font-size: 1.5rem; - font-weight: 600; - text-align: center; -} - .animationDetails { display: flex; flex-direction: column; @@ -168,45 +142,6 @@ border-bottom: none; } -.generalNotes { - margin-top: 1rem; - padding: 1rem; - background-color: var(--ifm-color-info-contrast-background); - border-radius: 8px; - border-left: 4px solid var(--ifm-color-info); - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); -} - -.generalNotes strong { - color: var(--ifm-color-info-dark); - font-weight: 600; - display: block; - margin-bottom: 0.75rem; - font-size: 0.95rem; -} - -.generalNotes ul { - margin: 0; - padding-left: 0; - list-style: none; - line-height: 1.6; -} - -.generalNotes li { - margin-bottom: 0.5rem; - color: var(--ifm-color-emphasis-700); - font-size: 0.9rem; -} - -.generalNotes code { - background: none; - padding: 0; - border-radius: 0; - font-size: inherit; - color: inherit; - font-weight: inherit; -} - .detailItem strong { color: var(--ifm-color-primary); font-weight: 600; @@ -380,27 +315,6 @@ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); } -.credits { - margin-top: 0.75rem; - text-align: center; -} - -.credits p { - margin: 0; - font-size: 0.85rem; - color: var(--ifm-color-emphasis-600); -} - -.credits a { - color: var(--ifm-color-primary); - text-decoration: none; - font-weight: 500; -} - -.credits a:hover { - text-decoration: underline; -} - .errorMessage { color: var(--ifm-color-danger); font-style: italic; @@ -408,21 +322,51 @@ padding: 2rem; } -.placeholder { +.hint { text-align: center; - padding: 3rem; color: var(--ifm-color-emphasis-600); font-style: italic; - background-color: var(--ifm-color-emphasis-100); - border-radius: 8px; - margin-top: 2rem; - max-width: 600px; - margin-left: auto; - margin-right: auto; + font-size: 1rem; + margin: 1rem 0 0; +} + +@keyframes fadeIn { + from { + opacity: 0; + transform: translateY(20px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +@media (max-width: 996px) { + .pageContainer { + padding: 4rem 1.5rem 0; + margin-bottom: 80px; + } + + .pageTitle { + font-size: 3rem; + } } -/* Responsive styles */ @media (max-width: 768px) { + .pageContainer { + padding: 3rem 1rem 0; + margin-bottom: 60px; + } + + .pageTitle { + font-size: 2.5rem; + } + + .pageSubtitle { + font-size: 1.25rem; + margin-bottom: 2rem; + } + .controls { flex-direction: column; gap: 1.5rem; @@ -446,11 +390,6 @@ margin-bottom: 1.5rem; } - .placeholder { - margin-left: 1rem; - margin-right: 1rem; - } - .videoWrapper { max-width: 100%; } @@ -460,24 +399,6 @@ } } -[data-theme='dark'] .notes { - background-color: var(--ifm-color-info-contrast-background); - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); -} - -[data-theme='dark'] .notes strong { - color: var(--ifm-color-info-light); -} - -[data-theme='dark'] .notes li { - color: var(--ifm-color-emphasis-600); -} - -[data-theme='dark'] .notes code { - background: none; - color: inherit; -} - [data-theme='dark'] .animationDisplay { background-color: var(--ifm-color-emphasis-200); } @@ -499,33 +420,3 @@ background-color: var(--ifm-color-emphasis-100); } -[data-theme='dark'] .placeholder { - background-color: var(--ifm-color-emphasis-200); -} - -[data-theme='dark'] .generalNotes { - background-color: var(--ifm-color-info-contrast-background); - box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); -} - -[data-theme='dark'] .generalNotes strong { - color: var(--ifm-color-info-light); -} - -[data-theme='dark'] .generalNotes li { - color: var(--ifm-color-emphasis-600); -} - -[data-theme='dark'] .generalNotes code { - background: none; - color: inherit; -} - -.controls:hover { - transform: translateY(-2px); - box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); -} - -.animationDisplay:hover { - box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); -} \ No newline at end of file diff --git a/frontend/src/pages/animations.tsx b/frontend/src/pages/animations.tsx index c952a01e4e6..576b3b8ce6e 100644 --- a/frontend/src/pages/animations.tsx +++ b/frontend/src/pages/animations.tsx @@ -55,7 +55,7 @@ const AnimationsPage = () => { url.searchParams.delete("library"); url.searchParams.delete("animation"); } - window.history.pushState({}, "", url); + window.history.replaceState({}, "", url); } }; @@ -71,7 +71,7 @@ const AnimationsPage = () => { } else { url.searchParams.delete("animation"); } - window.history.pushState({}, "", url); + window.history.replaceState({}, "", url); } }; @@ -80,14 +80,17 @@ const AnimationsPage = () => { title="Animations" description="Interactive open.mp (SA-MP) animations viewer with video previews" > -
    -
    -
    - +
    + - open.mp Animations Viewer + Animations Viewer +

    + + Browse and preview all available open.mp animations. + +

    @@ -201,10 +204,10 @@ const AnimationsPage = () => {
                           
                             {`// For players
    -ApplyAnimation(playerid, "${currentAnimation.library}", "${currentAnimation.name}", 4.1, false, false, false, false, 0);
    +ApplyAnimation(playerid, "${currentAnimation.library}", "${currentAnimation.name}", 4.1, false, false, false, false, SYNC_ALL);
     
     // For actors
    -ApplyActorAnimation(actorid, "${currentAnimation.library}", "${currentAnimation.name}", 4.1, false, false, false, false, 0);`}
    +ApplyActorAnimation(actorid, "${currentAnimation.library}", "${currentAnimation.name}", 4.1, false, false, false, false, SYNC_ALL);`}
                           
                         
    @@ -212,18 +215,15 @@ ApplyActorAnimation(actorid, "${currentAnimation.library}", "${currentAnimation. )} {selectedLibrary && !selectedAnimation && ( -
    -

    +

    Select an animation from the dropdown above to see the preview.

    -
    )} {!selectedLibrary && ( -
    -

    +

    Browse and preview all available animations. @@ -232,11 +232,8 @@ ApplyActorAnimation(actorid, "${currentAnimation.library}", "${currentAnimation. These are used by ApplyAnimation/ApplyActorAnimation functions.

    -
    )}
    -
    -
    ); From d7d96581f1fab46863bd1410004b87d3010e3c34 Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:56:06 +0000 Subject: [PATCH 04/12] Launcher releases .md --- frontend/content/releases/launcher/v0.0.1.md | 17 +++ frontend/content/releases/launcher/v1.0.0.md | 33 ++++++ frontend/content/releases/launcher/v1.4.0.md | 43 ++++++++ frontend/content/releases/launcher/v1.5.2.md | 76 +++++++++++++ frontend/content/releases/launcher/v1.6.1.md | 109 +++++++++++++++++++ 5 files changed, 278 insertions(+) create mode 100644 frontend/content/releases/launcher/v0.0.1.md create mode 100644 frontend/content/releases/launcher/v1.0.0.md create mode 100644 frontend/content/releases/launcher/v1.4.0.md create mode 100644 frontend/content/releases/launcher/v1.5.2.md create mode 100644 frontend/content/releases/launcher/v1.6.1.md diff --git a/frontend/content/releases/launcher/v0.0.1.md b/frontend/content/releases/launcher/v0.0.1.md new file mode 100644 index 00000000000..fcbee856cf3 --- /dev/null +++ b/frontend/content/releases/launcher/v0.0.1.md @@ -0,0 +1,17 @@ +--- +tag: v0.0.1 +publishedAt: "2023-11-10T10:19:44Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v0.0.1 +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v0.0.1/omp-launcher_0.0.1_x64-setup.exe + size: "3.6 MB" +--- + +## First release of open.mp launcher +Please note you still need samp installed to play, you can install samp from https://sa-mp.mp/downloads/ and then open open.mp launcher to enjoy a live, reliable, and populated server list to find any server you want to play on! + +Many more features will be available in future and directly built into the launcher in future versions + +## Installation +You can choose whether you want the portable versions or install it normally like any other application, in your desired path. For portable version, you can just download **omp-launcher.exe**, the other two are installers, you choose whatever you want. diff --git a/frontend/content/releases/launcher/v1.0.0.md b/frontend/content/releases/launcher/v1.0.0.md new file mode 100644 index 00000000000..6b72465d1e9 --- /dev/null +++ b/frontend/content/releases/launcher/v1.0.0.md @@ -0,0 +1,33 @@ +--- +tag: v1.0.0 +publishedAt: "2024-01-29T00:29:08Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.0.0 +highlights: + - Full launcher UI redesign + - Built-in SA-MP installation/version selection workflow + - Server banner and Discord link support in the browser + - Performance/resource usage improvements with many new languages +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.0.0/omp-launcher-setup.exe + size: "3.9 MB" +--- + +## Installation +Just run `omp-launcher.exe` +### Note: +For users using old Windows 10, Windows 8(.1), or Windows 7, if you do not have WebView2 installed (comes preinstalled in newer Windows 10 and 11 setups, and comes with Microsoft Edge), You must install this launcher using setup file in releases section. + +## What's Changed +A new version of launcher is out, **v1.0.0**, and in this version, the entire UI is reworked (Special thanks to @continue2048 for his participations and helps). There are numerous changes to improve performance and resource usage to bring the best experience while using this launcher to browse servers and join your favorite one. +Here are list of new changes in latest version of open.mp launcher: +- **New design** +- **SA-MP Installation:** No need to download SA-MP separately anymore, you can choose from versions list or keep using the one installed in your game's directory! +- **Banners and Discord links:** Show open.mp server banners and discord invite link if available +- Ability to toggle Discord status in settings +- Performance and resource usage improvements +- Tens of new languages + +**Full Changelog**: https://github.com/openmultiplayer/launcher/compare/v0.0.1...v1.0.0 + +Special thanks to @continue98 for his contributions for UI design mockups diff --git a/frontend/content/releases/launcher/v1.4.0.md b/frontend/content/releases/launcher/v1.4.0.md new file mode 100644 index 00000000000..0f61701f309 --- /dev/null +++ b/frontend/content/releases/launcher/v1.4.0.md @@ -0,0 +1,43 @@ +--- +tag: v1.4.0 +publishedAt: "2024-08-18T09:04:32Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.4.0 +highlights: + - Broad stability and performance improvements + - CLI support and deep-link URI handling (`omp://` and `samp://`) + - First open.mp client integration with improved version selection + - x86-only packaging with lower false-positive antivirus risk +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.4.0/omp-launcher-setup.exe + size: "3.1 MB" +--- + +## What's Changed +* More locales added/fixed. +* A lot of performance fixes +* CLI support with arguments, use `--help` for more info +* Server profile in join prompt by showing logo and banner +* Discord status now uses server logos +* Potentially fixed samp.dll injection for everyone +* open.mp client (first variation) has been added +* Better samp version selection +* Add deep linking and URI scheme `omp://ip:port` and take over `samp://` +* Handle URI scheme +* Add discord status buttons to download launcher and play with your friends +* Fully move to x86 (32bits) so we don't have to distribute multiple releases for different people +* No more using UPX for less false-positive malware detection +* Fix password issue when a server was previously locked and a password is stored + +## New Contributors +* @Ykpauneu made their first contribution in https://github.com/openmultiplayer/launcher/pull/94 +* @midosvt made their first contribution in https://github.com/openmultiplayer/launcher/pull/97 +* @coool9 made their first contribution in https://github.com/openmultiplayer/launcher/pull/111 +* @tnz1992 made their first contribution in https://github.com/openmultiplayer/launcher/pull/114 +* @aujiz11 made their first contribution in https://github.com/openmultiplayer/launcher/pull/115 +* @lahaine42 made their first contribution in https://github.com/openmultiplayer/launcher/pull/117 +* @karthigenius made their first contribution in https://github.com/openmultiplayer/launcher/pull/159 +* @ulasbayraktar made their first contribution in https://github.com/openmultiplayer/launcher/pull/133 +* @Tornamic made their first contribution in https://github.com/openmultiplayer/launcher/pull/176 + +**Full Changelog**: https://github.com/openmultiplayer/launcher/compare/v1.0.0...v1.4.0 diff --git a/frontend/content/releases/launcher/v1.5.2.md b/frontend/content/releases/launcher/v1.5.2.md new file mode 100644 index 00000000000..43fb8c9897c --- /dev/null +++ b/frontend/content/releases/launcher/v1.5.2.md @@ -0,0 +1,76 @@ +--- +tag: v1.5.2 +publishedAt: "2025-01-10T02:42:10Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.5.2 +highlights: + - Encrypted client–server communication for open.mp servers + - Major stability and crash fixes across the client + - Improved compatibility with CLEO scripts and other mods + - Better Windows support and removal of legacy dependencies +admonition: +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.5.2/omp-launcher-setup.exe + size: "3.9 MB" +--- + +## What's Changed +### Launcher changes +* Inject samp sooner if possible +* Fix encoding for polish texts in server data +* Fixed omp server check when version string is modified +* Remove manual run as admin launch, just use a GIF file for those who can't understand +* Move data storage back to `localStorage` to fix the problem with data resetting once in a while +* Remove discord status implementation, let native mod handle it +* Remove UPX usage +* Better deep linking +* Copy to clipboard to add server modal's textinput +* Fix the problem with d3dx9_25.dll missing +* Proper shortcut names now + +### Client mod changes +* Add server to client encryption (open.mp servers only) to securely communicate with server and stay safe against malicious packets. +* Re-implement client check types 69 and 5, for all samp versions (it means 0.3.7 R1 players have it as well). +* Fix animation loading, no more animation preloading on server side, playing it works at first attempt now. +* Fix RemoveBuildingForPlayer crash and remove the limit. +* Fix smoking animation when smoke special action is used and player presses LMB. +* Remove LV and LS stadiums map icons and useless checkpoints. +* Fix vehicle horn playing for others when player is pressing H while having hydraulics component. +* Increase screenshot limit from 1000 to 1,000,000. +* Implement discord status natively and built into client mod. +* 1.0 EU support. +* Fix mouse issues when the game is running on newer Windows versions. +* Remove DirectPlay dependency. +* A small heap corruption fix. +* Fix crash issues happening at 0x0040FB80 and 0x006F5636 (Disable loading of data/Paths/tracks2.dat and data\Paths\tracks4.dat). +* Completely change the way this mod hooks into functions. +* Fix compatibility issues with some CLEO4 scripts and CLEO5 & CLEO Redux. +* Fix compatibility issues with various mods. +* Properly fix animation issues with buffer overflow in names. + +### Contributions by others +* A tiny correction in RU localization by @NexiusTailer in https://github.com/openmultiplayer/launcher/pull/195 +* Translation Update zh-TW.ts by @XiaoNiaoa in https://github.com/openmultiplayer/launcher/pull/198 +* Update Arabic localization by @RouatbiH in https://github.com/openmultiplayer/launcher/pull/192 +* Translation Update zh-CN.ts by @XiaoNiaoa in https://github.com/openmultiplayer/launcher/pull/197 +* Implement Serbian Translation by @Trysha-rbrn in https://github.com/openmultiplayer/launcher/pull/213 +* Update Italian translation by @ReshiramZekrom1 in https://github.com/openmultiplayer/launcher/pull/214 +* update Vietnamese translation by @aujiz11 in https://github.com/openmultiplayer/launcher/pull/217 +* Added Georgian language by @Lasho4 in https://github.com/openmultiplayer/launcher/pull/236 +* Update Portuguese (Brazil) Translation File Format and Keys by @itsneufox in https://github.com/openmultiplayer/launcher/pull/234 +* update polish translation by @mpudliszewski in https://github.com/openmultiplayer/launcher/pull/237 +* fix encoding for polish strings by @mpudliszewski in https://github.com/openmultiplayer/launcher/pull/238 +* Check for `allowed_clients` rule instead of `allow_DL` to determine if server is open.mp by @xunder-matth in https://github.com/openmultiplayer/launcher/pull/253 +* Fixed missing password option in cli by @znemoe in https://github.com/openmultiplayer/launcher/pull/267 +* Add settings_advanced_discord_status_requires_restart key to PT translation by @itsneufox in https://github.com/openmultiplayer/launcher/pull/272 + +## New Contributors +* @XiaoNiaoa made their first contribution in https://github.com/openmultiplayer/launcher/pull/198 +* @Trysha-rbrn made their first contribution in https://github.com/openmultiplayer/launcher/pull/213 +* @Lasho4 made their first contribution in https://github.com/openmultiplayer/launcher/pull/236 +* @itsneufox made their first contribution in https://github.com/openmultiplayer/launcher/pull/234 +* @mpudliszewski made their first contribution in https://github.com/openmultiplayer/launcher/pull/237 +* @xunder-matth made their first contribution in https://github.com/openmultiplayer/launcher/pull/253 +* @znemoe made their first contribution in https://github.com/openmultiplayer/launcher/pull/267 + +**Full Changelog**: https://github.com/openmultiplayer/launcher/compare/v1.4.0...v1.5.2 diff --git a/frontend/content/releases/launcher/v1.6.1.md b/frontend/content/releases/launcher/v1.6.1.md new file mode 100644 index 00000000000..7f79c02c823 --- /dev/null +++ b/frontend/content/releases/launcher/v1.6.1.md @@ -0,0 +1,109 @@ +--- +tag: v1.6.1 +publishedAt: "2025-12-17T10:12:15Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.6.1 +highlights: + - In-game server browser (F9) to browse, switch, and rejoin servers without leaving the game + - Import and export your favourite servers, with drag-and-drop reordering + - Support for custom game executable names + - Automatic client version selection, with per-server client version control +admonition: + type: warning + title: Antivirus False Positive + body: "Some antivirus software may flag the open.mp Launcher as a virus. This is a false positive. The launcher is open source and safe to use. If affected, add your open.mp launcher installation folder as an exclusion in your antivirus software." +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.6.1/omp-launcher-setup.exe + size: "5.1 MB" +--- + +## What's Changed + +### In-Game & Client Features +- Added an **in-game server browser** (press **F9**), allowing you to browse the server list and switch or rejoin servers **without leaving the game**. +- Added **custom splash screens**. +- Added **open.mp settings** directly to the in-game pause menu. +- Added options in open.mp settings to **toggle Discord status** (and other status indicators). +- Improved Discord status handling and fixed incorrect IP reporting. +- Fixed multiple issues related to **reconnection logic and the open.mp protocol**. +- Fixed several **SA-MP crash scenarios**, improving overall stability. + +### Launcher Improvements +- **Massively improved stability and performance** across the entire launcher. +- Major **codebase refactor** on both the Rust and TypeScript sides for long-term maintainability. +- Significantly improved the **server query mechanism** for better efficiency and spam prevention. +- Added **drag & drop reordering** for favorite servers. +- Improved **Windows 7 compatibility**. +- Installer now ships with the **WebView2 installer bundled**, simplifying setup. +- Removed Discord status settings from the Advanced tab. +- Added support for **custom game executable names** in the Advanced settings. +- Added the ability to **import and export favorite server lists**. +- Automatically selects the **appropriate client version** if SA-MP is not already installed. +- Added **per-server client version selection**. +- Added extensive and meaningful **log messages** to improve diagnostics and support. +- Added a **join prompt** for password-protected servers when using quick connect. +- Added **API timeouts** for most APIs to improve responsiveness and reliability. + +### Bug Fixes & UX Improvements +- Fixed issues with file copying when files are missing (notably font files). +- Fixed server data being cached even after relaunching the application. +- Fixed theme switching glitches. +- Fixed per-server nickname input glitches. +- Fixed inverted sorting arrows. +- Fixed search input not including gamemode text. +- Improved server hostname resolution. +- Improved permission handling and user-facing messages. +- Fixed web URL validation issues. +- Fixed settings tab titles not updating after language changes. +- Added rate-limiting for server query requests to prevent spam. +- Updated and expanded localization files across multiple languages. + +### Documentation & Community +- Main website: + https://open.mp/ +- Documentation: + https://open.mp/docs +- Join the community on Discord: + https://discord.gg/samp +- Support development via OpenCollective: + https://opencollective.com/openmultiplayer + +## Change log by merged pull requests +* Update Italian translation by @ReshiramZekrom1 in https://github.com/openmultiplayer/launcher/pull/286 +* Edited sr.ts by @Trysha-rbrn in https://github.com/openmultiplayer/launcher/pull/287 +* Add translations for Indonesian by @flxzor in https://github.com/openmultiplayer/launcher/pull/294 +* Polish translation update by @Slideinn in https://github.com/openmultiplayer/launcher/pull/293 +* Turkish translation update by @ulasbayraktar in https://github.com/openmultiplayer/launcher/pull/295 +* Georgian translation update by @Lasho4 in https://github.com/openmultiplayer/launcher/pull/288 +* Update Lithuanian translation by @tnz1992 in https://github.com/openmultiplayer/launcher/pull/216 +* Fix Discord Update status Binding by @brunorrr in https://github.com/openmultiplayer/launcher/pull/300 +* This fixes the sort arrow direction, it was inverted by @Bios-Marcel in https://github.com/openmultiplayer/launcher/pull/301 +* Fixes #233 by @Bios-Marcel in https://github.com/openmultiplayer/launcher/pull/302 +* The appearances tab in settings now has a radiobutton by @Bios-Marcel in https://github.com/openmultiplayer/launcher/pull/303 +* update Vietnamese locale by @aujiz11 in https://github.com/openmultiplayer/launcher/pull/305 +* add Finnish (Suomi) language support by @weltschmerzie in https://github.com/openmultiplayer/launcher/pull/304 +* Implementation of import/export functionality for favourite servers list by @itsneufox in https://github.com/openmultiplayer/launcher/pull/307 +* update Chinese translation by @dockfries in https://github.com/openmultiplayer/launcher/pull/312 +* Update Italian Translation (Import/Export feature) by @ReshiramZekrom1 in https://github.com/openmultiplayer/launcher/pull/315 +* feat: Added missing entries for french translation file by @MichaelAceAnderson in https://github.com/openmultiplayer/launcher/pull/321 +* Ability to reorder servers in the favourites tab by dragging them around by @itsneufox in https://github.com/openmultiplayer/launcher/pull/320 +* Update sr.ts by @Trysha-rbrn in https://github.com/openmultiplayer/launcher/pull/323 +* Ditch PanResolver in favour of dnd-kit by @itsneufox in https://github.com/openmultiplayer/launcher/pull/324 +* update georgian translation & advanced search for georgian servers by @Lasho4 in https://github.com/openmultiplayer/launcher/pull/326 +* add dutch (nederlands) translations by @DignitySAMP in https://github.com/openmultiplayer/launcher/pull/329 +* Update Hungarian translations with minor fixes and new strings by @Cappsyhun in https://github.com/openmultiplayer/launcher/pull/331 +* Small update ru.ts with proposed corrections by @NexiusTailer in https://github.com/openmultiplayer/launcher/pull/337 +* Update ru localization with latest additions by @NexiusTailer in https://github.com/openmultiplayer/launcher/pull/338 +* add pt strings by @itsneufox in https://github.com/openmultiplayer/launcher/pull/339 + +## New Contributors +* @flxzor made their first contribution in https://github.com/openmultiplayer/launcher/pull/294 +* @Slideinn made their first contribution in https://github.com/openmultiplayer/launcher/pull/293 +* @brunorrr made their first contribution in https://github.com/openmultiplayer/launcher/pull/300 +* @weltschmerzie made their first contribution in https://github.com/openmultiplayer/launcher/pull/304 +* @dockfries made their first contribution in https://github.com/openmultiplayer/launcher/pull/312 +* @MichaelAceAnderson made their first contribution in https://github.com/openmultiplayer/launcher/pull/321 +* @DignitySAMP made their first contribution in https://github.com/openmultiplayer/launcher/pull/329 +* @Cappsyhun made their first contribution in https://github.com/openmultiplayer/launcher/pull/331 + +**Full Changelog**: https://github.com/openmultiplayer/launcher/compare/v1.5.2...v1.6.1 From 80756dd573d28e50479bdc7093c41d36e10d7e79 Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:56:20 +0000 Subject: [PATCH 05/12] Server releases .md --- .../releases/server/Beta v0.0.11.2331.md | 17 +++ frontend/content/releases/server/v1-RC1.md | 36 ++++++ frontend/content/releases/server/v1-RC2.md | 31 +++++ .../content/releases/server/v1.1.0.2612.md | 111 +++++++++++++++++ .../content/releases/server/v1.2.0.2670.md | 61 ++++++++++ .../content/releases/server/v1.3.1.2748.md | 79 ++++++++++++ .../content/releases/server/v1.4.0.2779.md | 62 ++++++++++ .../content/releases/server/v1.5.8.3079.md | 114 ++++++++++++++++++ 8 files changed, 511 insertions(+) create mode 100644 frontend/content/releases/server/Beta v0.0.11.2331.md create mode 100644 frontend/content/releases/server/v1-RC1.md create mode 100644 frontend/content/releases/server/v1-RC2.md create mode 100644 frontend/content/releases/server/v1.1.0.2612.md create mode 100644 frontend/content/releases/server/v1.2.0.2670.md create mode 100644 frontend/content/releases/server/v1.3.1.2748.md create mode 100644 frontend/content/releases/server/v1.4.0.2779.md create mode 100644 frontend/content/releases/server/v1.5.8.3079.md diff --git a/frontend/content/releases/server/Beta v0.0.11.2331.md b/frontend/content/releases/server/Beta v0.0.11.2331.md new file mode 100644 index 00000000000..cf0860b427e --- /dev/null +++ b/frontend/content/releases/server/Beta v0.0.11.2331.md @@ -0,0 +1,17 @@ +--- +tag: v0.0.11.2331 +publishedAt: "2022-12-24T22:19:34Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v0.0.11.2331 +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v0.0.11.2331/open.mp-win-x86.zip + size: "31.4 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v0.0.11.2331/open.mp-linux-x86.tar.xz + size: "15.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v0.0.11.2331/open.mp-linux-x86-dynssl.tar.xz + size: "12.6 MB" +--- + +Details will be available in https://github.com/openmultiplayer/server-beta/releases diff --git a/frontend/content/releases/server/v1-RC1.md b/frontend/content/releases/server/v1-RC1.md new file mode 100644 index 00000000000..5062c499600 --- /dev/null +++ b/frontend/content/releases/server/v1-RC1.md @@ -0,0 +1,36 @@ +--- +tag: v1-RC1 +publishedAt: "2023-01-05T21:22:44Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1-RC1 +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC1/open.mp-win-x86.zip + size: "31.4 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC1/open.mp-linux-x86.tar.xz + size: "15.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC1/open.mp-linux-x86-dynssl.tar.xz + size: "12.6 MB" +--- + +## What's Changed +* Memory reduction. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/550 +* Use `Span<>`, don't expose `vector<>`. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/548 +* Fix `funcidx` in the streamer plugin. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/552 +* In memory db by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/553 +* Component load pr by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/554 +* Append `.so` to plugin names. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/555 +* CMake changes and m1/macos support by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/551 +* Use the correct string search function. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/557 +* command text sanity check by checking cmd length by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/556 +* Actually ignore missing `main`, like the comment says. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/560 +* Deprecate `str_buf_addr` from PawnPlus. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/558 +* Special-case NPCs (and localhost in general) in connection code. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/559 +* Log SQLite queries. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/561 +* Keep a local copy of the loaded defaults and revert to them on GMX. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/562 +* TD crash fix. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/563 +* Configurable http threads count. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/564 +* Fix GDK hooks by @Cheaterman in https://github.com/openmultiplayer/open.mp/pull/566 +* Player attached objects. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/565 +* Check supported major version when loading components. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/568 diff --git a/frontend/content/releases/server/v1-RC2.md b/frontend/content/releases/server/v1-RC2.md new file mode 100644 index 00000000000..362b8950b90 --- /dev/null +++ b/frontend/content/releases/server/v1-RC2.md @@ -0,0 +1,31 @@ +--- +tag: v1-RC2 +publishedAt: "2023-01-09T21:41:26Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1-RC2 +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC2/open.mp-win-x86.zip + size: "43.0 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC2/open.mp-linux-x86.tar.gz + size: "23.6 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC2/open.mp-linux-x86-dynssl.tar.gz + size: "20.1 MB" +--- + +What's Changed +------------------- + +* **Server**: Fix `.so` being required on Linux legacy plugins. +* **Server**: `reloadfs` reuses its slot to preserve filterscript order. +* **Server**: Attached objects are correctly shown to other players. +* **Server**: Fix a crash when loading invalid pawn memory. +* **Pawn**: Added `GetPlayerMarkerForPlayer`. +* **Pawn**: Added `a_???` file wrappers. +* **Upgrader**: Supports multiple codepages. +* **Upgrader**: Exclude files. +* **Upgrader**: Full replacements report. + + +**Full Changelog**: https://github.com/openmultiplayer/open.mp/compare/v1-RC1...v1-RC2 diff --git a/frontend/content/releases/server/v1.1.0.2612.md b/frontend/content/releases/server/v1.1.0.2612.md new file mode 100644 index 00000000000..a53ea2c5a9f --- /dev/null +++ b/frontend/content/releases/server/v1.1.0.2612.md @@ -0,0 +1,111 @@ +--- +tag: v1.1.0.2612 +publishedAt: "2023-11-10T14:39:37Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.1.0.2612 +highlights: + - open.mp officially moved out of RC into stable releases + - First open.mp launcher release introduced to players + - Large bug-fix wave and behavior-compatibility improvements + - Better component/plugin compatibility and runtime safety +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.1.0.2612/open.mp-win-x86.zip + size: "43.2 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.1.0.2612/open.mp-linux-x86.tar.gz + size: "24.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.1.0.2612/open.mp-linux-x86-dynssl.tar.gz + size: "20.9 MB" +--- + +## Out of RC +open.mp is now out of RC phase, and we are happy to announce we are finally stable enough to go down the consistent development road. with v1.1.0.2612, we fixed a lot of bugs and issues, and resolved so many behavior differences. so make sure you update to latest builds and run your server smoothly. + +## Launcher, first step towards client. +open.mp launcher is finally out, you can now reliably browse servers, select a server you want to play on, and join it! +Bringing a lot of new features into it, you're going to have a much better experience compared to old experience you always had to have with samp launcher. +It can be found at https://github.com/openmultiplayer/launcher + +There are so many fixes and additions, for those who don't know, they can read below and go to each PR for more details. + +## What's Changed +* Memory reduction. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/550 +* Use `Span<>`, don't expose `vector<>`. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/548 +* Fix `funcidx` in the streamer plugin. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/552 +* In memory db by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/553 +* Component load pr by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/554 +* Append `.so` to plugin names. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/555 +* CMake changes and m1/macos support by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/551 +* Use the correct string search function. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/557 +* command text sanity check by checking cmd length by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/556 +* Actually ignore missing `main`, like the comment says. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/560 +* Deprecate `str_buf_addr` from PawnPlus. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/558 +* Special-case NPCs (and localhost in general) in connection code. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/559 +* Log SQLite queries. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/561 +* Keep a local copy of the loaded defaults and revert to them on GMX. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/562 +* TD crash fix. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/563 +* Configurable http threads count. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/564 +* Fix GDK hooks by @Cheaterman in https://github.com/openmultiplayer/open.mp/pull/566 +* Player attached objects. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/565 +* Check supported major version when loading components. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/568 +* Add checks to `amx_GetAddr` all over. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/570 +* Reloadfs pr by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/569 +* Implement GetPlayerMarkerForPlayer by @AGraber in https://github.com/openmultiplayer/open.mp/pull/571 +* Fix `.so` being appended, again. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/572 +* Fix attached objects by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/573 +* Attempt to fix CI. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/596 +* Fix animation library name by @dimmyi in https://github.com/openmultiplayer/open.mp/pull/594 +* Fix abi-check CI by @Hual in https://github.com/openmultiplayer/open.mp/pull/605 +* Fix typos in Get(Player)NetworkStats. by @mrreus in https://github.com/openmultiplayer/open.mp/pull/606 +* Fix `GetVehicleLastDriver` returning 0 when invalid `vehicleid` is passed by @xunder-matth in https://github.com/openmultiplayer/open.mp/pull/615 +* Fix submodules URLs by @r4nx in https://github.com/openmultiplayer/open.mp/pull/604 +* Tiny message corrections by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/603 +* Validate `roll` in unoccupied sync by @xunder-matth in https://github.com/openmultiplayer/open.mp/pull/624 +* x64 by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/499 +* Use per-player color on player stream in by @AGraber in https://github.com/openmultiplayer/open.mp/pull/629 +* Add natives for calling public functions by index by @AGraber in https://github.com/openmultiplayer/open.mp/pull/630 +* Constant instead of magic numbers by @ALF-ONE in https://github.com/openmultiplayer/open.mp/pull/633 +* Amir/changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/648 +* Add more relevant items to BrokenPlugins list by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/644 +* Fixed incorrect locale saving in Core::vlogLnInternal(). by @dev-karpov0 in https://github.com/openmultiplayer/open.mp/pull/656 +* Fix MoveObject & MovePlayerObject return type. Fix ping packet spam. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/659 +* Ported several functions missed out from fixes.inc. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/663 +* Max seats correction and more comments by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/668 +* Fix HTTP calls and AnnounceHTTPResponseHandler by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/676 +* Bunch of improvements, bug fixes and additions by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/671 +* Fixed possibility to load the same script more than once. by @dev-karpov0 in https://github.com/openmultiplayer/open.mp/pull/660 +* Two minor fixes by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/680 +* Trailer improvements by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/681 +* Various ports to open.mp by @Hual in https://github.com/openmultiplayer/open.mp/pull/683 +* Some proper pawn native param casts by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/684 +* Better legacy announce message by @Hual in https://github.com/openmultiplayer/open.mp/pull/686 +* Some build documentation clarifications. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/662 +* Update pawn. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/711 +* add checks in multiple places for queryExtension results by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/719 +* more queryExtension return value checks, update cmake-conan by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/725 +* Clear components in a separate pass to avoid cross-component invalid access by @Hual in https://github.com/openmultiplayer/open.mp/pull/724 +* Fix object data initialization and event priority conflict with pawn by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/731 +* fix obj crash, deleted objects being delayed processed by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/734 +* Add boundary to TD font setter, fix spectating when spectated disconnects, add webserver binding by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/737 +* Properly handle spectating when a player disconnects by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/740 +* Fix issue with atcprintf not incrementing output length when adding - in trailing zero mode by @Hual in https://github.com/openmultiplayer/open.mp/pull/744 +* remove extra sanity check in setSpectating by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/745 +* Correctly retrieve `modelid` and material colors in `GetObjectMaterial(Text)` by @xunder-matth in https://github.com/openmultiplayer/open.mp/pull/747 +* add a note about downgrading conan using pip by @Zorono in https://github.com/openmultiplayer/open.mp/pull/752 +* Fix move object rotation when optional args are not set by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/753 +* Update actors_main.cpp by @ReshiramZekrom1 in https://github.com/openmultiplayer/open.mp/pull/762 +* Some small changes before new release by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/763 + +## New Contributors +* @dimmyi made their first contribution in https://github.com/openmultiplayer/open.mp/pull/594 +* @mrreus made their first contribution in https://github.com/openmultiplayer/open.mp/pull/606 +* @xunder-matth made their first contribution in https://github.com/openmultiplayer/open.mp/pull/615 +* @r4nx made their first contribution in https://github.com/openmultiplayer/open.mp/pull/604 +* @NexiusTailer made their first contribution in https://github.com/openmultiplayer/open.mp/pull/603 +* @ALF-ONE made their first contribution in https://github.com/openmultiplayer/open.mp/pull/633 +* @dev-karpov0 made their first contribution in https://github.com/openmultiplayer/open.mp/pull/656 +* @Zorono made their first contribution in https://github.com/openmultiplayer/open.mp/pull/752 +* @ReshiramZekrom1 made their first contribution in https://github.com/openmultiplayer/open.mp/pull/762 + +**Full Changelog**: https://github.com/openmultiplayer/open.mp/compare/v0.0.11.2331...v1.1.0 diff --git a/frontend/content/releases/server/v1.2.0.2670.md b/frontend/content/releases/server/v1.2.0.2670.md new file mode 100644 index 00000000000..406cc925ab1 --- /dev/null +++ b/frontend/content/releases/server/v1.2.0.2670.md @@ -0,0 +1,61 @@ +--- +tag: v1.2.0.2670 +publishedAt: "2024-01-29T03:17:22Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.2.0.2670 +highlights: + - Critical security fixes and measurable performance gains + - New launcher-facing server banner and Discord query settings + - IPv4-first announce handling with improved HTTP behavior + - RakNet crash fixes plus stronger gameplay data validation +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.2.0.2670/open.mp-win-x86.zip + size: "44.0 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.2.0.2670/open.mp-linux-x86.tar.gz + size: "24.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.2.0.2670/open.mp-linux-x86-dynssl.tar.gz + size: "20.9 MB" +--- + +## Information +**PLEASE READ:** We encourage every open.mp server to update to this version. There has been not only noticeable performance improvements, but also **critical security fixes** + +## Changes: +- A few security fixes +- Noticeable performance improvements, specially regarding how pawn natives work now. +- Add new config variables to set banners and discord invite link to be shown in new [open.mp launcher](https://github.com/openmultiplayer/launcher/releases/latest) +- Announcer system now uses IPv4 by default, instead of using IPv6 when it's available. +- Fix `Get(Player)ObjectMaterial(Text)` returning colors in the wrong format and modelid. +- Fix server crash when you are allocating memory more than reserved space, by giving a warning about details. +- Fix random RakNet crashes on packet deallocation +- Validate damage reasons (weapons) in various places +- Fix `Get(Player)Gravity` +- New config variables for join messages and animation validation +- Synchronize bans so multiple players are banned at once if needed +- Fix WSL issues. + +## Follow changes through pull requests: +* Synchronize bans so multiple players are banned at once by @Hual in https://github.com/openmultiplayer/open.mp/pull/776 +* Support LFS by @Hual in https://github.com/openmultiplayer/open.mp/pull/777 +* Add core->requestHTTP4. Force IPV4 requests for announce. Use bind address if provided by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/786 +* Add config options to disable animation validation and join messages by @Hual in https://github.com/openmultiplayer/open.mp/pull/792 +* Retrieve player objects material colors in a ARGB format by @mrreus in https://github.com/openmultiplayer/open.mp/pull/795 +* Add a static openssl warning by @Hual in https://github.com/openmultiplayer/open.mp/pull/793 +* New way of handling ParamCast errors instead of throwing exceptions. by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/798 +* return modelid in GetPlayerObjectMaterial by @adib-yg in https://github.com/openmultiplayer/open.mp/pull/805 +* Return 0.0 if floatstr fails and throws an exception by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/812 +* Weapon validity check in foot, passenger, and vehicle sync, and Give/TakeDamage events by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/804 +* Fix amx_Allot trying to access invalid memory when data size is higher than amx STK size by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/819 +* Remove preconnect packet handler by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/820 +* 52 IS a valid damage reason. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/825 +* Change gravity type to float by @vedran77 in https://github.com/openmultiplayer/open.mp/pull/832 +* Add a note about mac compilation with brew. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/828 +* Add banners & discord configs and send through query by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/831 + +## New Contributors +* @adib-yg made their first contribution in https://github.com/openmultiplayer/open.mp/pull/805 +* @vedran77 made their first contribution in https://github.com/openmultiplayer/open.mp/pull/832 + +**Full Changelog**: https://github.com/openmultiplayer/open.mp/compare/v1.1.0.2612...v1.2.0.2670 diff --git a/frontend/content/releases/server/v1.3.1.2748.md b/frontend/content/releases/server/v1.3.1.2748.md new file mode 100644 index 00000000000..e13eb30aff9 --- /dev/null +++ b/frontend/content/releases/server/v1.3.1.2748.md @@ -0,0 +1,79 @@ +--- +tag: v1.3.1.2748 +publishedAt: "2024-08-18T09:47:11Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.3.1.2748 +highlights: + - Major RakNet stability and performance improvements + - Better RPC ordering and reliability across core sync paths + - Expanded validation checks for dialogs, menus, and network data + - New server logo support for launcher and Discord presence +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.3.1.2748/open.mp-win-x86.zip + size: "29.8 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.3.1.2748/open.mp-linux-x86.tar.gz + size: "23.7 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.3.1.2748/open.mp-linux-x86-dynssl.tar.gz + size: "20.1 MB" +--- + +## What's Changed +* Fix string not shown in rare cases of using format +* Remove unnecessary `OnPlayerConnect` and `OnPlayerDisconnect` when a side script (filterscript) is (un)loaded. Instead introduced OnScript(Un)LoadPlayer callbacks. +* Fix the problem with crashdetect not being able to find file name and line number when more than one script was loaded +* Fix a lot of RPC ordering channels and reliablities +* Improve network thread (RakNet) performance +* Fix a lot of RakNet crashes and safer internal memory management +* Fix several connection issues and proper internal player pool cleanups +* Fix `GetGameText` +* Check CDN URL validity +* New `InternalPacketPool` implementation in RakNet +* Add more data validity checks for dialog responses +* Add validity checks for menu rows +* Human readable HTTP errors +* Stop spectator sync being broadcasted +* Fix open.mp windows version not loading when user's windows is set to a language with non-ascii names +* Remove bunch of pawn native deprecation from runtime warnings +* Default values for health and armor +* Improve performance for responding to ScoresAndPings RPC (scoreboard) +* Add server logo to be used in launcher and discord status +* Fix the infamous RakNet crash we have had since beginning + +## Change log by merged pull requests +* fix atcprintf failure message not showing fmt string by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/860 +* change invalid weapon slot to -1 by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/862 +* Call OnScript(Un)LoadForPlayer on script (un)load by @Andosius in https://github.com/openmultiplayer/open.mp/pull/878 +* Revert "Revert `OnPlayerConnect` vandalism." by @Hual in https://github.com/openmultiplayer/open.mp/pull/887 +* Handle queries when logging is enabled by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/889 +* Revert "Support LFS" by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/890 +* Fix OnPlayerConnect regression after gmx. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/891 +* RakNet crash fixes, performance improvements, fix ordering channels for some RPCs by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/883 +* Fixed: several connection logic issues by @uifdev in https://github.com/openmultiplayer/open.mp/pull/906 +* Fix GetGameText native giving incorrect/corrupt values by @Sreyas-Sreelal in https://github.com/openmultiplayer/open.mp/pull/915 +* Fix test component by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/913 +* sync raknet, fix InternalPacketPool::ClearPool crash by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/911 +* Validate CDN URL by @myudev in https://github.com/openmultiplayer/open.mp/pull/919 +* improved dialog response checking by @atomlin-git in https://github.com/openmultiplayer/open.mp/pull/902 +* added check for possible menu row values by @atomlin-git in https://github.com/openmultiplayer/open.mp/pull/922 +* Add server logo feature, human readable httplib errors, and bunch of fixes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/928 +* Remove conan from SDK, Disable unicode component by default, Bump version by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/933 +* SDK and Network as submodules by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/937 +* Stop broadcasting spectators sync data. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/939 +* Fix locale switch for names with non-ascii characters by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/945 +* Remove runtime pawn native deprecations for mixed spellings by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/952 +* Tiny correction in TestComponent by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/956 +* Network fixes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/957 +* Update broken plugins list by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/961 +* default values for hp and armor in Player::reset and constructor by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/960 +* cache generated BS for a short period of time for scoreboard rpc by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/962 + +## New Contributors +* @Andosius made their first contribution in https://github.com/openmultiplayer/open.mp/pull/878 +* @uifdev made their first contribution in https://github.com/openmultiplayer/open.mp/pull/906 +* @Sreyas-Sreelal made their first contribution in https://github.com/openmultiplayer/open.mp/pull/915 +* @myudev made their first contribution in https://github.com/openmultiplayer/open.mp/pull/919 +* @atomlin-git made their first contribution in https://github.com/openmultiplayer/open.mp/pull/902 + +**Full Changelog**: https://github.com/openmultiplayer/open.mp/compare/v1.2.0.2670...v1.3.1.2744 diff --git a/frontend/content/releases/server/v1.4.0.2779.md b/frontend/content/releases/server/v1.4.0.2779.md new file mode 100644 index 00000000000..8b309a69bbf --- /dev/null +++ b/frontend/content/releases/server/v1.4.0.2779.md @@ -0,0 +1,62 @@ +--- +tag: v1.4.0.2779 +publishedAt: "2025-01-12T19:56:45Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.4.0.2779 +highlights: + - Optional open.mp protocol encryption for supported clients + - Recursive component loading with improved Linux linker behavior + - Multiple crash and sync fixes across vehicles and objects + - New `IsPlayerUsingOmp` native for open.mp client detection +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.4.0.2779/open.mp-win-x86.zip + size: "29.3 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.4.0.2779/open.mp-linux-x86.tar.gz + size: "23.7 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.4.0.2779/open.mp-linux-x86-dynssl.tar.gz + size: "20.1 MB" +--- + +## What's Changed +* Implement open.mp encryption to be used with open.mp launcher. Must be enabled in config.json first ( `network.use_omp_encryption` ) +* Fix a small issue for SetPlayerSkin in mobile clients +* Camera mode validity check +* Fix GetTickCount return value for windows +* Fix crash when destroying a vehicle in some events and pawn callbacks +* Disable dynamic DLL Loading for AMX runtime, specially when user has default pawn installed from compuphase website +* Fix inverted return value in GetVehicleLandingGearState +* Fix players randomly staying in player list in launchers even if they leave the server +* More validity checks for trailers and trailer sync +* Recursively load components in folders +* Load components starting with $ sooner than others and load them with `RTLD_GLOBAL` on Linux +* Fix crash related to moving objects +* Fix player vehicle data resetting before OnPlayerDeath is called +* open.mp player detection using `IsPlayerUsingOmp` native + +## Change log by merged pull requests +* Fix SetPlayerSkin (add custom skin without DL client) for mobile clients by @f0Re3t in https://github.com/openmultiplayer/open.mp/pull/978 +* Validate camera modes better by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/975 +* fix vehicle release in events called in driver sync by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/983 +* GetTickCount on Windows to return tick count of server instead of system by @Hual in https://github.com/openmultiplayer/open.mp/pull/987 +* Disable dynamic DLL loading for AMX runtime by @Hual in https://github.com/openmultiplayer/open.mp/pull/988 +* Main script config fixes by @Hual in https://github.com/openmultiplayer/open.mp/pull/989 +* Fix inverted GetVehicleLandingGearState value by @Hual in https://github.com/openmultiplayer/open.mp/pull/990 +* Fix issues with reallocating bitstreams in sendRPC/sendPacket by @Hual in https://github.com/openmultiplayer/open.mp/pull/997 +* More validity checks for vehicles (mainly trailers) by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/985 +* Fix player teleport natives and query player list by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1003 +* Recursively load components by @myudev in https://github.com/openmultiplayer/open.mp/pull/920 +* Fix moving player objects crash due to out-of-order destruction by @Hual in https://github.com/openmultiplayer/open.mp/pull/1016 +* load comps starting with `$` sooner and with RTLD_GLOBAL on linux by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1020 +* call state change event after death event, to prevent unwanted cleanups by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1035 +* omp user detection & server to client encryption for omp users by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1026 +* remove rivershell from main repository and move it to a separate one by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1038 +* revert state change, dont handle in vehicle's event, use death event ... by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1037 +* all my homies hate linux (not the kernel btw, the ecosystem btw) (btw) by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1040 +* bump version by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1041 + +## New Contributors +* @f0Re3t made their first contribution in https://github.com/openmultiplayer/open.mp/pull/978 + +**Full Changelog**: https://github.com/openmultiplayer/open.mp/compare/v1.3.1.2744...v1.4.0.2779 diff --git a/frontend/content/releases/server/v1.5.8.3079.md b/frontend/content/releases/server/v1.5.8.3079.md new file mode 100644 index 00000000000..b603c5d9af8 --- /dev/null +++ b/frontend/content/releases/server/v1.5.8.3079.md @@ -0,0 +1,114 @@ +--- +tag: v1.5.8.3079 +publishedAt: "2025-12-17T10:12:28Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.5.8.3079 +highlights: + - Built-in server side fully controllable NPC + - New C API / C API SDK and improved Pawn-to-SDK interoperability + - Major network performance improvements with stronger sync validation checks + - OpenSSL 3.0.13 upgrade +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.8.3079/open.mp-win-x86.zip + size: "34.9 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.8.3079/open.mp-linux-x86.tar.gz + size: "30.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.8.3079/open.mp-linux-x86-dynssl.tar.gz + size: "25.5 MB" +--- + +## What's changed + +### Major Features +- Introdued **fully controllable NPCs as a built-in server feature**, removing the need for external NPC plugins and enabling deeper server-side AI and automation. +- Added a **C API and C API SDK**, allowing developers to integrate open.mp directly with native code and external tooling. +- Added the ability to **call Pawn natives from the open.mp C++ SDK**, significantly improving interoperability between scripting and native modules. + +### Networking & Performance +- Significant **network performance improvements**, resulting in faster synchronization and more responsive gameplay. +- Added multiple **sync validation checks** to prevent invalid data, spoofed states, and malformed packets. +- MTU values are now **validated against the maximum allowed per client version**, preventing misconfiguration and instability. + +### Platform & Compatibility +- Upgraded **OpenSSL from 1.1.1 to 3.0.13**, officially deprecating legacy Linux distributions and ensuring proper support for modern systems. +- Added **environment variable support for `config.json`**, making containerized, CI/CD, and production deployments easier and more flexible. + +### NPC & Gameplay Improvements +- NPC IDs now allocate from **highest to lowest**, preventing conflicts and improving predictability. +- Deprecated `ConnectNPC` in favor of the new built-in NPC system. +- Forced train creation to always use **4 consecutive IDs**, fixing long-standing inconsistencies. +- Fixed train passenger synchronization issues. + +### Stability & Bug Fixes +- Fixed an infamous issue with spawn data +- Fixed kick delay issues. +- Fixed crashes related to gangzones in the checking list during server restarts. +- Fixed random occurrences of player state being set to `None` after spectating. +- Fixed stdin lock on Linux during server shutdown. +- Fixed `chatlogging` not affecting death messages. +- Removed the legacy **Fixes** component due to instability, redundancy, and its functionality being superseded by newer systems. +- Numerous small Pawn native fixes for improved correctness and usability. + +### Documentation & Community +- New and updated **NPC scripting API (Pawn natives)** are available in the official documentation: + https://open.mp/docs +- Join the community and get support on Discord: + https://discord.gg/samp +- Support development via OpenCollective: + https://opencollective.com/openmultiplayer +- Main website: + https://open.mp/ + +## Change log by merged pull requests: +* Fix for non-bullet guns returned as 0 in weapon data by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1046 +* Update gitignore for CLion && macOS by @povargek in https://github.com/openmultiplayer/open.mp/pull/1049 +* fix ci by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1054 +* Fix apple silicon build by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1062 +* Fixes for a couple of issues by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/999 +* Fixed: legacy config variable 'chatlogging' does not control death logging by @uifdev in https://github.com/openmultiplayer/open.mp/pull/1057 +* Pack Vehicle and StreamInVehicle more tightly by @PTemuri in https://github.com/openmultiplayer/open.mp/pull/1091 +* Fixed: train passenger sync by @uifdev in https://github.com/openmultiplayer/open.mp/pull/1100 +* Fixed `logging.log_connection_messages` option check by @Northn in https://github.com/openmultiplayer/open.mp/pull/1094 +* Fixed "reverse search for NPC id in player pool" by @NoPressF in https://github.com/openmultiplayer/open.mp/pull/1088 +* Return string length for some natives by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1098 +* Check provided mtu value against max allowed per client version by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/1111 +* Reverse search for NPC id in player pool by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/1075 +* add NPC_HasPathPointInRadius by @NoPressF in https://github.com/openmultiplayer/open.mp/pull/1115 +* One big beautiful pull request by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1113 +* Create FUNDING.yml by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1121 +* Store natives globally & ability to call them from using SDK by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1128 +* fix sdtin lock from getline when shutting down by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1131 +* NPC Component by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/916 +* Update FCNPC deprecation message by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1132 +* add capi component and submodule by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1125 +* Some fixes and changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1133 +* upgrade openssl version from 1.1.1 to 3.0.13 by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1096 +* Some NPC fixes and changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1135 +* Add trams where they are missed by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1140 +* Force train to be 4 consecutive ids by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1139 +* Fix event handling by @0x617374726F in https://github.com/openmultiplayer/open.mp/pull/1144 +* Use entry create for dialog data creation by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1145 +* Add environment variable support in config.json by @itsneufox in https://github.com/openmultiplayer/open.mp/pull/1142 +* network, npcs, and docker script changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1148 +* fix TextDraw_SetProportional by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1149 +* fix slot reserving for players outside of raknet by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1150 +* Fix Kick Issue by @Tiaansu in https://github.com/openmultiplayer/open.mp/pull/1151 +* fix: clear checkingList when component is reseted by @nidi21 in https://github.com/openmultiplayer/open.mp/pull/1152 +* bump version by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1153 +* update sdk module to the right ref by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1154 +* Couple of fixes for NPC component by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1156 +* Fix for random occurrence of player state none by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1146 + +## New Contributors +* @povargek made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1049 +* @PTemuri made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1091 +* @Northn made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1094 +* @NoPressF made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1088 +* @0x617374726F made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1144 +* @itsneufox made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1142 +* @Tiaansu made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1151 +* @nidi21 made their first contribution in https://github.com/openmultiplayer/open.mp/pull/1152 + +**Full Changelog**: https://github.com/openmultiplayer/open.mp/compare/v1.4.0.2779...v1.5.8.3077 From 53ccf2e64ed3065af2bc88ab104a487014775400 Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:56:51 +0000 Subject: [PATCH 06/12] .md file explaining how to do a release properly --- frontend/content/releases/README.md | 90 +++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 frontend/content/releases/README.md diff --git a/frontend/content/releases/README.md b/frontend/content/releases/README.md new file mode 100644 index 00000000000..6f91dffd72d --- /dev/null +++ b/frontend/content/releases/README.md @@ -0,0 +1,90 @@ +This folder works like blog content, one markdown file per release. +Sorting is automatic by `publishedAt` (newest first) and if `assets` is empty, the block falls back to a single GitHub release button. + +Usage: + +- `frontend/content/releases/server/` for server releases +- `frontend/content/releases/launcher/` for launcher releases + +Name files by tag (for example `v1.6.2.md`). + +## How to add a release + +1. Copy an existing release file in the right folder. +2. Update the frontmatter (`tag`, `publishedAt`, `htmlUrl`, `assets`). +3. Optional: add `highlights` and/or `admonition`. +4. Paste the full changelog in the markdown body. + +That is it :) + +## Locale support + +If you want to translate the release text, mirror the same file names in: + +- `frontend/i18n//content/releases/server/` +- `frontend/i18n//content/releases/launcher/` + +## Frontmatter reference + +Required: + +- `tag` +- `publishedAt` (ISO format, example: `"2026-02-14T12:00:00Z"`) +- `htmlUrl` +- `assets` (download buttons) + +Optional: + +- `highlights` (shown above "View full changelog") +- `admonition` (small warning/info box) + +## Server example + +```md +--- +tag: v1.5.9.0000 +publishedAt: "2026-02-14T12:00:00Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.5.9.0000 +highlights: + - Built-in NPC improvements + - Better networking and sync checks +admonition: + type: warning + title: Linux note + body: "Example warning text." +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.9.0000/open.mp-win-x86.zip + size: "35.0 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.9.0000/open.mp-linux-x86.tar.gz + size: "30.0 MB" +--- + +## What's Changed +... +``` + +## Launcher example + +```md +--- +tag: v1.6.2 +publishedAt: "2026-02-14T12:00:00Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.6.2 +highlights: + - Better stability + - Better favorites management +admonition: + type: warning + title: Antivirus false positive + body: "Example warning text." +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.6.2/omp-launcher-setup.exe + size: "5.2 MB" +--- + +## What's Changed +... +``` From 8822cf0aa81b822a0185cd370b930212b85da32a Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:57:31 +0000 Subject: [PATCH 07/12] translations for pt-br --- frontend/i18n/pt-BR/code.json | 45 +++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/frontend/i18n/pt-BR/code.json b/frontend/i18n/pt-BR/code.json index b0ae37bc48a..6edc06d9439 100644 --- a/frontend/i18n/pt-BR/code.json +++ b/frontend/i18n/pt-BR/code.json @@ -268,6 +268,51 @@ "serverInfo.lastUpdated": { "message": "Atualizado há {time}" }, + "downloads.server.pageTitle": { + "message": "Servidor open.mp" + }, + "downloads.server.pageSubtitle": { + "message": "Hospede seu próprio servidor multiplayer de GTA San Andreas." + }, + "downloads.launcher.pageTitle": { + "message": "Launcher open.mp" + }, + "downloads.launcher.pageSubtitle": { + "message": "Jogue GTA San Andreas multiplayer em servidores open.mp e SA-MP." + }, + "downloads.latestBadge": { + "message": "MAIS RECENTE" + }, + "downloads.releaseDate": { + "message": "Lançado em {date}" + }, + "downloads.release.highlights": { + "message": "Destaques" + }, + "downloads.release.viewChangelog": { + "message": "Ver changelog completo" + }, + "downloads.release.viewOnGitHub": { + "message": "Ver release no GitHub" + }, + "downloads.release.github": { + "message": "GitHub" + }, + "downloads.showOlderReleases": { + "message": "Ver {count} releases antigos" + }, + "downloads.hideOlderReleases": { + "message": "Ocultar releases antigos" + }, + "downloads.opensourceTrust": { + "message": "Todas as releases são open source. Compile do código-fonte ou baixe diretamente do GitHub." + }, + "downloads.downloadFromGithub": { + "message": "Baixar do GitHub" + }, + "downloads.release.dynSslNote": { + "message": "* A versão DynSSL requer que o libssl esteja instalado na sua distribuição Linux." + }, "theme.footer.title.Documentations": { "message": "Documentação" }, From 410932594fbac6d1085ba92a9f0a6b6815314c66 Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 08:57:49 +0000 Subject: [PATCH 08/12] blog post about AV issues --- .../2025-02-12-launcher-false-positive.md | 37 +++++++++++++++++++ frontend/blog/authors.yml | 3 ++ 2 files changed, 40 insertions(+) create mode 100644 frontend/blog/2025-02-12-launcher-false-positive.md diff --git a/frontend/blog/2025-02-12-launcher-false-positive.md b/frontend/blog/2025-02-12-launcher-false-positive.md new file mode 100644 index 00000000000..fbe0b033e81 --- /dev/null +++ b/frontend/blog/2025-02-12-launcher-false-positive.md @@ -0,0 +1,37 @@ +--- +slug: launcher-false-positive +title: Windows Defender False Positive on Launcher +authors: itsneufox +--- + +Some users have reported that **Windows Defender is flagging the open.mp Launcher as a Trojan/virus**. This is a **false positive**, the launcher is completely safe to use. + +The launcher is **fully open source** and you can review or build it yourself: +[https://github.com/openmultiplayer/launcher](https://github.com/openmultiplayer/launcher) + +We're **already working on fixing this** so future builds won't be flagged. + + + +## What to do for now + +Until Microsoft updates their detection signatures, add the launcher folder as an exclusion in Windows Defender: + +1. Open **Windows Security** (search for it in Start) +2. Go to **Virus & threat protection** +3. Under **Virus & threat protection settings**, click **Manage settings** +4. Scroll down to **Exclusions** and click **Add or remove exclusions** +5. Click **Add an exclusion** → **Folder** +6. Select your **open.mp launcher installation folder** and confirm +7. Close and re-open the launcher + +### Notes + +- Exclude the **entire launcher folder**, not individual files because file hashes change between updates. +- If Defender still warns you after adding the exclusion, fully close the launcher, double-check the exclusion path, and try again. + +## Why does this happen? + +False positives are common with game-related software. Antivirus heuristics can flag legitimate programs that interact with game processes. We're working with Microsoft to get the launcher properly whitelisted. + +Still have questions? Reach out on our [Discord](https://discord.gg/samp). diff --git a/frontend/blog/authors.yml b/frontend/blog/authors.yml index f991604b71e..84ad351b828 100644 --- a/frontend/blog/authors.yml +++ b/frontend/blog/authors.yml @@ -12,3 +12,6 @@ southclaws: y_less: name: Y_Less + +itsneufox: + name: itsneufox From ed3318419d7d6c48f16fd0198a1b05ba27a0dc9d Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 09:03:19 +0000 Subject: [PATCH 09/12] docussaurus stop crying thx --- frontend/src/{pages => lib}/downloads/common.tsx | 2 +- frontend/src/{pages => lib}/downloads/constants.ts | 0 frontend/src/pages/downloads/launcher.tsx | 2 +- frontend/src/pages/downloads/server.tsx | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename frontend/src/{pages => lib}/downloads/common.tsx (99%) rename frontend/src/{pages => lib}/downloads/constants.ts (100%) diff --git a/frontend/src/pages/downloads/common.tsx b/frontend/src/lib/downloads/common.tsx similarity index 99% rename from frontend/src/pages/downloads/common.tsx rename to frontend/src/lib/downloads/common.tsx index 9cacc1a3103..81b2dba4598 100644 --- a/frontend/src/pages/downloads/common.tsx +++ b/frontend/src/lib/downloads/common.tsx @@ -6,7 +6,7 @@ import React, { useState } from "react"; import Admonition from "../../components/Admonition"; import { INITIAL_VISIBLE_RELEASES } from "./constants"; -import styles from "../downloads.module.css"; +import styles from "../../pages/downloads.module.css"; export interface Release { tag: string; diff --git a/frontend/src/pages/downloads/constants.ts b/frontend/src/lib/downloads/constants.ts similarity index 100% rename from frontend/src/pages/downloads/constants.ts rename to frontend/src/lib/downloads/constants.ts diff --git a/frontend/src/pages/downloads/launcher.tsx b/frontend/src/pages/downloads/launcher.tsx index 6caba0b1e2b..86d164ea358 100644 --- a/frontend/src/pages/downloads/launcher.tsx +++ b/frontend/src/pages/downloads/launcher.tsx @@ -2,7 +2,7 @@ import Translate from "@docusaurus/Translate"; import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; import React from "react"; -import { Release, ReleaseListPage } from "./common"; +import { Release, ReleaseListPage } from "../../lib/downloads/common"; type ReleaseModule = { default: React.ComponentType; diff --git a/frontend/src/pages/downloads/server.tsx b/frontend/src/pages/downloads/server.tsx index aa78ed3d424..cfa3e965456 100644 --- a/frontend/src/pages/downloads/server.tsx +++ b/frontend/src/pages/downloads/server.tsx @@ -2,7 +2,7 @@ import Translate from "@docusaurus/Translate"; import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; import React from "react"; -import { Release, ReleaseListPage } from "./common"; +import { Release, ReleaseListPage } from "../../lib/downloads/common"; type ReleaseModule = { default: React.ComponentType; From 3813b827f8729db1fd00e84a035938964fc4e353 Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 09:34:52 +0000 Subject: [PATCH 10/12] translate all releases to pt-br and add missing key --- frontend/i18n/pt-BR/code.json | 3 + .../pt-BR/content/releases/launcher/v0.0.1.md | 17 +++ .../pt-BR/content/releases/launcher/v1.0.0.md | 33 +++++ .../pt-BR/content/releases/launcher/v1.4.0.md | 43 +++++++ .../pt-BR/content/releases/launcher/v1.5.2.md | 76 ++++++++++++ .../pt-BR/content/releases/launcher/v1.6.1.md | 109 +++++++++++++++++ .../releases/server/Beta v0.0.11.2331.md | 17 +++ .../pt-BR/content/releases/server/v1-RC1.md | 36 ++++++ .../pt-BR/content/releases/server/v1-RC2.md | 31 +++++ .../content/releases/server/v1.1.0.2612.md | 111 +++++++++++++++++ .../content/releases/server/v1.2.0.2670.md | 61 ++++++++++ .../content/releases/server/v1.3.1.2748.md | 79 ++++++++++++ .../content/releases/server/v1.4.0.2779.md | 62 ++++++++++ .../content/releases/server/v1.5.8.3079.md | 114 ++++++++++++++++++ 14 files changed, 792 insertions(+) create mode 100644 frontend/i18n/pt-BR/content/releases/launcher/v0.0.1.md create mode 100644 frontend/i18n/pt-BR/content/releases/launcher/v1.0.0.md create mode 100644 frontend/i18n/pt-BR/content/releases/launcher/v1.4.0.md create mode 100644 frontend/i18n/pt-BR/content/releases/launcher/v1.5.2.md create mode 100644 frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/Beta v0.0.11.2331.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/v1-RC1.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/v1-RC2.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/v1.1.0.2612.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/v1.2.0.2670.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/v1.3.1.2748.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/v1.4.0.2779.md create mode 100644 frontend/i18n/pt-BR/content/releases/server/v1.5.8.3079.md diff --git a/frontend/i18n/pt-BR/code.json b/frontend/i18n/pt-BR/code.json index 6edc06d9439..b091557e0eb 100644 --- a/frontend/i18n/pt-BR/code.json +++ b/frontend/i18n/pt-BR/code.json @@ -178,6 +178,9 @@ "animations.title": { "message": "Visualizador de Animações open.mp" }, + "animations.subtitle": { + "message": "Navegue e pré-visualize todas as animações disponíveis no open.mp." + }, "animations.library": { "message": "Biblioteca:" }, diff --git a/frontend/i18n/pt-BR/content/releases/launcher/v0.0.1.md b/frontend/i18n/pt-BR/content/releases/launcher/v0.0.1.md new file mode 100644 index 00000000000..21252a0810a --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/launcher/v0.0.1.md @@ -0,0 +1,17 @@ +--- +tag: v0.0.1 +publishedAt: "2023-11-10T10:19:44Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v0.0.1 +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v0.0.1/omp-launcher_0.0.1_x64-setup.exe + size: "3.6 MB" +--- + +## Primeiro lançamento do launcher open.mp +Por favor, note que você ainda precisa ter o SA-MP instalado para jogar, você pode instalar o SA-MP em https://sa-mp.mp/downloads/ e então abrir o launcher open.mp para aproveitar uma lista de servidores ativa, confiável e populada para encontrar qualquer servidor que você queira jogar! + +Muitos mais recursos estarão disponíveis no futuro e serão integrados diretamente ao launcher em versões futuras + +## Instalação +Você pode escolher se deseja a versão portátil ou instalá-lo normalmente como qualquer outro aplicativo, no caminho desejado. Para a versão portátil, basta baixar **omp-launcher.exe**, os outros dois são instaladores, você escolhe o que preferir. diff --git a/frontend/i18n/pt-BR/content/releases/launcher/v1.0.0.md b/frontend/i18n/pt-BR/content/releases/launcher/v1.0.0.md new file mode 100644 index 00000000000..4eae8283e3a --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/launcher/v1.0.0.md @@ -0,0 +1,33 @@ +--- +tag: v1.0.0 +publishedAt: "2024-01-29T00:29:08Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.0.0 +highlights: + - Redesign completo da interface do launcher + - Fluxo de instalação/seleção de versão do SA-MP integrado + - Suporte a banners de servidor e links do Discord no navegador + - Melhorias de desempenho/uso de recursos com muitos novos idiomas +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.0.0/omp-launcher-setup.exe + size: "3.9 MB" +--- + +## Instalação +Basta executar `omp-launcher.exe` +### Nota: +Para usuários que utilizam Windows 10 antigo, Windows 8(.1) ou Windows 7, se você não tiver o WebView2 instalado (vem pré-instalado em versões mais recentes do Windows 10 e 11, e acompanha o Microsoft Edge), você deve instalar este launcher usando o arquivo de instalação na seção de releases. + +## O que mudou +Uma nova versão do launcher foi lançada, **v1.0.0**, e nesta versão, toda a interface foi reformulada (Agradecimentos especiais a @continue2048 por suas participações e ajudas). Há inúmeras mudanças para melhorar o desempenho e o uso de recursos para trazer a melhor experiência ao usar este launcher para navegar pelos servidores e entrar no seu favorito. +Aqui está a lista de novas mudanças na versão mais recente do launcher open.mp: +- **Novo design** +- **Instalação do SA-MP:** Não é mais necessário baixar o SA-MP separadamente, você pode escolher na lista de versões ou continuar usando o que está instalado no diretório do seu jogo! +- **Banners e links do Discord:** Exibe banners de servidores open.mp e link de convite do Discord, se disponível +- Possibilidade de alternar o status do Discord nas configurações +- Melhorias de desempenho e uso de recursos +- Dezenas de novos idiomas + +**Changelog completo**: https://github.com/openmultiplayer/launcher/compare/v0.0.1...v1.0.0 + +Agradecimentos especiais a @continue98 por suas contribuições nos mockups de design da interface diff --git a/frontend/i18n/pt-BR/content/releases/launcher/v1.4.0.md b/frontend/i18n/pt-BR/content/releases/launcher/v1.4.0.md new file mode 100644 index 00000000000..bfb06a9cc60 --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/launcher/v1.4.0.md @@ -0,0 +1,43 @@ +--- +tag: v1.4.0 +publishedAt: "2024-08-18T09:04:32Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.4.0 +highlights: + - Amplas melhorias de estabilidade e desempenho + - Suporte a CLI e tratamento de URI com deep-link (`omp://` e `samp://`) + - Primeira integração do cliente open.mp com seleção de versão aprimorada + - Empacotamento exclusivo x86 com menor risco de falso positivo de antivírus +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.4.0/omp-launcher-setup.exe + size: "3.1 MB" +--- + +## O que mudou +* Mais idiomas adicionados/corrigidos. +* Muitas correções de desempenho +* Suporte a CLI com argumentos, use `--help` para mais informações +* Perfil do servidor no prompt de entrada mostrando logo e banner +* O status do Discord agora usa logos dos servidores +* Potencialmente corrigida a injeção do samp.dll para todos +* Cliente open.mp (primeira variação) foi adicionado +* Melhor seleção de versão do SA-MP +* Adicionado deep linking e esquema de URI `omp://ip:port` e substituição do `samp://` +* Tratamento de esquema de URI +* Adicionados botões de status do Discord para baixar o launcher e jogar com seus amigos +* Migração completa para x86 (32 bits) para não precisar distribuir múltiplas versões para diferentes pessoas +* Remoção do uso de UPX para menos detecções de falso positivo de malware +* Correção do problema de senha quando um servidor estava previamente bloqueado e uma senha está armazenada + +## Novos Colaboradores +* @Ykpauneu fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/94 +* @midosvt fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/97 +* @coool9 fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/111 +* @tnz1992 fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/114 +* @aujiz11 fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/115 +* @lahaine42 fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/117 +* @karthigenius fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/159 +* @ulasbayraktar fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/133 +* @Tornamic fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/176 + +**Changelog completo**: https://github.com/openmultiplayer/launcher/compare/v1.0.0...v1.4.0 diff --git a/frontend/i18n/pt-BR/content/releases/launcher/v1.5.2.md b/frontend/i18n/pt-BR/content/releases/launcher/v1.5.2.md new file mode 100644 index 00000000000..86f4378683d --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/launcher/v1.5.2.md @@ -0,0 +1,76 @@ +--- +tag: v1.5.2 +publishedAt: "2025-01-10T02:42:10Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.5.2 +highlights: + - Comunicação criptografada entre cliente e servidor para servidores open.mp + - Principais correções de estabilidade e travamentos no cliente + - Compatibilidade aprimorada com scripts CLEO e outros mods + - Melhor suporte ao Windows e remoção de dependências legadas +admonition: +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.5.2/omp-launcher-setup.exe + size: "3.9 MB" +--- + +## O que mudou +### Mudanças no Launcher +* Injetar o SA-MP mais cedo, se possível +* Correção de codificação para textos em polonês nos dados do servidor +* Corrigida verificação de servidor omp quando a string de versão é modificada +* Remoção da execução manual como administrador, basta usar um arquivo GIF para quem não consegue entender +* Armazenamento de dados movido de volta para `localStorage` para corrigir o problema de dados sendo redefinidos de vez em quando +* Remoção da implementação de status do Discord, deixando o mod nativo cuidar disso +* Remoção do uso de UPX +* Melhor deep linking +* Copiar para área de transferência no campo de texto do modal de adicionar servidor +* Correção do problema com d3dx9_25.dll ausente +* Nomes de atalho adequados agora + +### Mudanças no mod do cliente +* Adicionada criptografia do servidor para o cliente (apenas servidores open.mp) para comunicação segura com o servidor e proteção contra pacotes maliciosos. +* Reimplementação dos tipos de verificação de cliente 69 e 5, para todas as versões do SA-MP (isso significa que jogadores da 0.3.7 R1 também possuem isso). +* Correção do carregamento de animações, sem necessidade de pré-carregamento de animações no lado do servidor, funciona na primeira tentativa agora. +* Correção do travamento do RemoveBuildingForPlayer e remoção do limite. +* Correção da animação de fumar quando a ação especial de fumar é usada e o jogador pressiona LMB. +* Remoção dos ícones de mapa dos estádios de LV e LS e checkpoints inúteis. +* Correção da buzina do veículo tocando para outros quando o jogador pressiona H enquanto tem o componente de hidráulica. +* Aumento do limite de capturas de tela de 1000 para 1.000.000. +* Implementação do status do Discord nativamente e integrado ao mod do cliente. +* Suporte a 1.0 EU. +* Correção de problemas com o mouse quando o jogo está rodando em versões mais recentes do Windows. +* Remoção da dependência do DirectPlay. +* Uma pequena correção de corrupção de heap. +* Correção de problemas de travamento em 0x0040FB80 e 0x006F5636 (Desativação do carregamento de data/Paths/tracks2.dat e data\Paths\tracks4.dat). +* Mudança completa na forma como este mod faz hooks em funções. +* Correção de problemas de compatibilidade com alguns scripts CLEO4 e CLEO5 & CLEO Redux. +* Correção de problemas de compatibilidade com diversos mods. +* Correção adequada de problemas de animação com buffer overflow em nomes. + +### Contribuições de outros +* A tiny correction in RU localization by @NexiusTailer in https://github.com/openmultiplayer/launcher/pull/195 +* Translation Update zh-TW.ts by @XiaoNiaoa in https://github.com/openmultiplayer/launcher/pull/198 +* Update Arabic localization by @RouatbiH in https://github.com/openmultiplayer/launcher/pull/192 +* Translation Update zh-CN.ts by @XiaoNiaoa in https://github.com/openmultiplayer/launcher/pull/197 +* Implement Serbian Translation by @Trysha-rbrn in https://github.com/openmultiplayer/launcher/pull/213 +* Update Italian translation by @ReshiramZekrom1 in https://github.com/openmultiplayer/launcher/pull/214 +* update Vietnamese translation by @aujiz11 in https://github.com/openmultiplayer/launcher/pull/217 +* Added Georgian language by @Lasho4 in https://github.com/openmultiplayer/launcher/pull/236 +* Update Portuguese (Brazil) Translation File Format and Keys by @itsneufox in https://github.com/openmultiplayer/launcher/pull/234 +* update polish translation by @mpudliszewski in https://github.com/openmultiplayer/launcher/pull/237 +* fix encoding for polish strings by @mpudliszewski in https://github.com/openmultiplayer/launcher/pull/238 +* Check for `allowed_clients` rule instead of `allow_DL` to determine if server is open.mp by @xunder-matth in https://github.com/openmultiplayer/launcher/pull/253 +* Fixed missing password option in cli by @znemoe in https://github.com/openmultiplayer/launcher/pull/267 +* Add settings_advanced_discord_status_requires_restart key to PT translation by @itsneufox in https://github.com/openmultiplayer/launcher/pull/272 + +## Novos Colaboradores +* @XiaoNiaoa fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/198 +* @Trysha-rbrn fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/213 +* @Lasho4 fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/236 +* @itsneufox fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/234 +* @mpudliszewski fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/237 +* @xunder-matth fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/253 +* @znemoe fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/267 + +**Changelog completo**: https://github.com/openmultiplayer/launcher/compare/v1.4.0...v1.5.2 diff --git a/frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md b/frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md new file mode 100644 index 00000000000..d92a346f5b7 --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md @@ -0,0 +1,109 @@ +--- +tag: v1.6.1 +publishedAt: "2025-12-17T10:12:15Z" +htmlUrl: https://github.com/openmultiplayer/launcher/releases/tag/v1.6.1 +highlights: + - Navegador de servidores no jogo (F9) para navegar, trocar e reconectar a servidores sem sair do jogo + - Importar e exportar seus servidores favoritos, com reordenação por arrastar e soltar + - Suporte a nomes personalizados de executável do jogo + - Seleção automática de versão do cliente, com controle de versão do cliente por servidor +admonition: + type: warning + title: Antivirus False Positive + body: "Some antivirus software may flag the open.mp Launcher as a virus. This is a false positive. The launcher is open source and safe to use. If affected, add your open.mp launcher installation folder as an exclusion in your antivirus software." +assets: + - label: "Download Launcher (.exe)" + url: https://github.com/openmultiplayer/launcher/releases/download/v1.6.1/omp-launcher-setup.exe + size: "5.1 MB" +--- + +## O que mudou + +### Recursos no Jogo e do Cliente +- Adicionado um **navegador de servidores no jogo** (pressione **F9**), permitindo navegar pela lista de servidores e trocar ou reconectar a servidores **sem sair do jogo**. +- Adicionadas **telas de splash personalizadas**. +- Adicionadas **configurações do open.mp** diretamente ao menu de pausa no jogo. +- Adicionadas opções nas configurações do open.mp para **alternar o status do Discord** (e outros indicadores de status). +- Melhorado o tratamento do status do Discord e corrigido o reporte incorreto de IP. +- Corrigidos múltiplos problemas relacionados à **lógica de reconexão e o protocolo open.mp**. +- Corrigidos vários **cenários de travamento do SA-MP**, melhorando a estabilidade geral. + +### Melhorias no Launcher +- **Estabilidade e desempenho massivamente aprimorados** em todo o launcher. +- Grande **refatoração do código** nos lados Rust e TypeScript para manutenibilidade a longo prazo. +- Melhoria significativa no **mecanismo de consulta de servidores** para maior eficiência e prevenção de spam. +- Adicionada **reordenação por arrastar e soltar** para servidores favoritos. +- Melhorada a **compatibilidade com Windows 7**. +- O instalador agora inclui o **instalador do WebView2 embutido**, simplificando a configuração. +- Removidas as configurações de status do Discord da aba Avançado. +- Adicionado suporte a **nomes personalizados de executável do jogo** nas configurações Avançadas. +- Adicionada a capacidade de **importar e exportar listas de servidores favoritos**. +- Seleciona automaticamente a **versão apropriada do cliente** se o SA-MP ainda não estiver instalado. +- Adicionada **seleção de versão do cliente por servidor**. +- Adicionadas **mensagens de log** extensas e significativas para melhorar diagnósticos e suporte. +- Adicionado um **prompt de entrada** para servidores protegidos por senha ao usar conexão rápida. +- Adicionados **timeouts de API** para a maioria das APIs para melhorar a responsividade e confiabilidade. + +### Correções de Bugs e Melhorias de UX +- Corrigidos problemas com cópia de arquivos quando arquivos estão ausentes (notavelmente arquivos de fonte). +- Corrigido o cache de dados do servidor mesmo após reiniciar o aplicativo. +- Corrigidos problemas de troca de tema. +- Corrigidos problemas no campo de apelido por servidor. +- Corrigidas setas de ordenação invertidas. +- Corrigido o campo de busca não incluindo o texto do modo de jogo. +- Melhorada a resolução de hostname do servidor. +- Melhorado o tratamento de permissões e mensagens voltadas ao usuário. +- Corrigidos problemas de validação de URL web. +- Corrigidos os títulos das abas de configurações não sendo atualizados após mudança de idioma. +- Adicionada limitação de taxa para requisições de consulta de servidores para prevenir spam. +- Atualizados e expandidos arquivos de localização em múltiplos idiomas. + +### Documentação e Comunidade +- Site principal: + https://open.mp/ +- Documentação: + https://open.mp/docs +- Junte-se à comunidade no Discord: + https://discord.gg/samp +- Apoie o desenvolvimento via OpenCollective: + https://opencollective.com/openmultiplayer + +## Log de alterações por pull requests mergeados +* Update Italian translation by @ReshiramZekrom1 in https://github.com/openmultiplayer/launcher/pull/286 +* Edited sr.ts by @Trysha-rbrn in https://github.com/openmultiplayer/launcher/pull/287 +* Add translations for Indonesian by @flxzor in https://github.com/openmultiplayer/launcher/pull/294 +* Polish translation update by @Slideinn in https://github.com/openmultiplayer/launcher/pull/293 +* Turkish translation update by @ulasbayraktar in https://github.com/openmultiplayer/launcher/pull/295 +* Georgian translation update by @Lasho4 in https://github.com/openmultiplayer/launcher/pull/288 +* Update Lithuanian translation by @tnz1992 in https://github.com/openmultiplayer/launcher/pull/216 +* Fix Discord Update status Binding by @brunorrr in https://github.com/openmultiplayer/launcher/pull/300 +* This fixes the sort arrow direction, it was inverted by @Bios-Marcel in https://github.com/openmultiplayer/launcher/pull/301 +* Fixes #233 by @Bios-Marcel in https://github.com/openmultiplayer/launcher/pull/302 +* The appearances tab in settings now has a radiobutton by @Bios-Marcel in https://github.com/openmultiplayer/launcher/pull/303 +* update Vietnamese locale by @aujiz11 in https://github.com/openmultiplayer/launcher/pull/305 +* add Finnish (Suomi) language support by @weltschmerzie in https://github.com/openmultiplayer/launcher/pull/304 +* Implementation of import/export functionality for favourite servers list by @itsneufox in https://github.com/openmultiplayer/launcher/pull/307 +* update Chinese translation by @dockfries in https://github.com/openmultiplayer/launcher/pull/312 +* Update Italian Translation (Import/Export feature) by @ReshiramZekrom1 in https://github.com/openmultiplayer/launcher/pull/315 +* feat: Added missing entries for french translation file by @MichaelAceAnderson in https://github.com/openmultiplayer/launcher/pull/321 +* Ability to reorder servers in the favourites tab by dragging them around by @itsneufox in https://github.com/openmultiplayer/launcher/pull/320 +* Update sr.ts by @Trysha-rbrn in https://github.com/openmultiplayer/launcher/pull/323 +* Ditch PanResolver in favour of dnd-kit by @itsneufox in https://github.com/openmultiplayer/launcher/pull/324 +* update georgian translation & advanced search for georgian servers by @Lasho4 in https://github.com/openmultiplayer/launcher/pull/326 +* add dutch (nederlands) translations by @DignitySAMP in https://github.com/openmultiplayer/launcher/pull/329 +* Update Hungarian translations with minor fixes and new strings by @Cappsyhun in https://github.com/openmultiplayer/launcher/pull/331 +* Small update ru.ts with proposed corrections by @NexiusTailer in https://github.com/openmultiplayer/launcher/pull/337 +* Update ru localization with latest additions by @NexiusTailer in https://github.com/openmultiplayer/launcher/pull/338 +* add pt strings by @itsneufox in https://github.com/openmultiplayer/launcher/pull/339 + +## Novos Colaboradores +* @flxzor fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/294 +* @Slideinn fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/293 +* @brunorrr fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/300 +* @weltschmerzie fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/304 +* @dockfries fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/312 +* @MichaelAceAnderson fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/321 +* @DignitySAMP fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/329 +* @Cappsyhun fez sua primeira contribuição em https://github.com/openmultiplayer/launcher/pull/331 + +**Changelog completo**: https://github.com/openmultiplayer/launcher/compare/v1.5.2...v1.6.1 diff --git a/frontend/i18n/pt-BR/content/releases/server/Beta v0.0.11.2331.md b/frontend/i18n/pt-BR/content/releases/server/Beta v0.0.11.2331.md new file mode 100644 index 00000000000..f7c95e51640 --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/Beta v0.0.11.2331.md @@ -0,0 +1,17 @@ +--- +tag: v0.0.11.2331 +publishedAt: "2022-12-24T22:19:34Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v0.0.11.2331 +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v0.0.11.2331/open.mp-win-x86.zip + size: "31.4 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v0.0.11.2331/open.mp-linux-x86.tar.xz + size: "15.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v0.0.11.2331/open.mp-linux-x86-dynssl.tar.xz + size: "12.6 MB" +--- + +Os detalhes estarão disponíveis em https://github.com/openmultiplayer/server-beta/releases diff --git a/frontend/i18n/pt-BR/content/releases/server/v1-RC1.md b/frontend/i18n/pt-BR/content/releases/server/v1-RC1.md new file mode 100644 index 00000000000..6a6e7bbadba --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/v1-RC1.md @@ -0,0 +1,36 @@ +--- +tag: v1-RC1 +publishedAt: "2023-01-05T21:22:44Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1-RC1 +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC1/open.mp-win-x86.zip + size: "31.4 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC1/open.mp-linux-x86.tar.xz + size: "15.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC1/open.mp-linux-x86-dynssl.tar.xz + size: "12.6 MB" +--- + +## O que mudou +* Memory reduction. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/550 +* Use `Span<>`, don't expose `vector<>`. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/548 +* Fix `funcidx` in the streamer plugin. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/552 +* In memory db by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/553 +* Component load pr by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/554 +* Append `.so` to plugin names. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/555 +* CMake changes and m1/macos support by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/551 +* Use the correct string search function. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/557 +* command text sanity check by checking cmd length by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/556 +* Actually ignore missing `main`, like the comment says. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/560 +* Deprecate `str_buf_addr` from PawnPlus. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/558 +* Special-case NPCs (and localhost in general) in connection code. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/559 +* Log SQLite queries. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/561 +* Keep a local copy of the loaded defaults and revert to them on GMX. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/562 +* TD crash fix. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/563 +* Configurable http threads count. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/564 +* Fix GDK hooks by @Cheaterman in https://github.com/openmultiplayer/open.mp/pull/566 +* Player attached objects. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/565 +* Check supported major version when loading components. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/568 diff --git a/frontend/i18n/pt-BR/content/releases/server/v1-RC2.md b/frontend/i18n/pt-BR/content/releases/server/v1-RC2.md new file mode 100644 index 00000000000..ada378c2709 --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/v1-RC2.md @@ -0,0 +1,31 @@ +--- +tag: v1-RC2 +publishedAt: "2023-01-09T21:41:26Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1-RC2 +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC2/open.mp-win-x86.zip + size: "43.0 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC2/open.mp-linux-x86.tar.gz + size: "23.6 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1-RC2/open.mp-linux-x86-dynssl.tar.gz + size: "20.1 MB" +--- + +O que mudou +------------------- + +* **Server**: Corrigido `.so` sendo exigido em plugins legados no Linux. +* **Server**: `reloadfs` reutiliza seu slot para preservar a ordem dos filterscripts. +* **Server**: Objetos anexados agora são exibidos corretamente para outros jogadores. +* **Server**: Corrigido um crash ao carregar memória pawn inválida. +* **Pawn**: Adicionado `GetPlayerMarkerForPlayer`. +* **Pawn**: Adicionados wrappers de arquivos `a_???`. +* **Upgrader**: Suporte a múltiplas codepages. +* **Upgrader**: Exclusão de arquivos. +* **Upgrader**: Relatório completo de substituições. + + +**Changelog completo**: https://github.com/openmultiplayer/open.mp/compare/v1-RC1...v1-RC2 diff --git a/frontend/i18n/pt-BR/content/releases/server/v1.1.0.2612.md b/frontend/i18n/pt-BR/content/releases/server/v1.1.0.2612.md new file mode 100644 index 00000000000..d2f669dc088 --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/v1.1.0.2612.md @@ -0,0 +1,111 @@ +--- +tag: v1.1.0.2612 +publishedAt: "2023-11-10T14:39:37Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.1.0.2612 +highlights: + - open.mp saiu oficialmente da fase RC para versões estáveis + - Primeiro lançamento do launcher open.mp para jogadores + - Grande onda de correções de bugs e melhorias de compatibilidade + - Melhor compatibilidade de componentes/plugins e segurança em tempo de execução +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.1.0.2612/open.mp-win-x86.zip + size: "43.2 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.1.0.2612/open.mp-linux-x86.tar.gz + size: "24.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.1.0.2612/open.mp-linux-x86-dynssl.tar.gz + size: "20.9 MB" +--- + +## Saiu do RC +O open.mp agora saiu da fase RC, e temos o prazer de anunciar que finalmente estamos estáveis o suficiente para seguir o caminho de desenvolvimento consistente. Com a v1.1.0.2612, corrigimos muitos bugs e problemas, e resolvemos diversas diferenças de comportamento. Então certifique-se de atualizar para as versões mais recentes e rodar seu servidor sem problemas. + +## Launcher, primeiro passo rumo ao cliente. +O launcher do open.mp finalmente foi lançado, agora você pode navegar pelos servidores de forma confiável, selecionar um servidor em que deseja jogar e entrar nele! +Trazendo muitas funcionalidades novas, você terá uma experiência muito melhor em comparação com a experiência antiga que sempre teve com o launcher do SA-MP. +Ele pode ser encontrado em https://github.com/openmultiplayer/launcher + +Há muitas correções e adições, para aqueles que não sabem, podem ler abaixo e acessar cada PR para mais detalhes. + +## O que mudou +* Memory reduction. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/550 +* Use `Span<>`, don't expose `vector<>`. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/548 +* Fix `funcidx` in the streamer plugin. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/552 +* In memory db by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/553 +* Component load pr by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/554 +* Append `.so` to plugin names. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/555 +* CMake changes and m1/macos support by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/551 +* Use the correct string search function. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/557 +* command text sanity check by checking cmd length by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/556 +* Actually ignore missing `main`, like the comment says. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/560 +* Deprecate `str_buf_addr` from PawnPlus. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/558 +* Special-case NPCs (and localhost in general) in connection code. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/559 +* Log SQLite queries. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/561 +* Keep a local copy of the loaded defaults and revert to them on GMX. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/562 +* TD crash fix. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/563 +* Configurable http threads count. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/564 +* Fix GDK hooks by @Cheaterman in https://github.com/openmultiplayer/open.mp/pull/566 +* Player attached objects. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/565 +* Check supported major version when loading components. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/568 +* Add checks to `amx_GetAddr` all over. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/570 +* Reloadfs pr by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/569 +* Implement GetPlayerMarkerForPlayer by @AGraber in https://github.com/openmultiplayer/open.mp/pull/571 +* Fix `.so` being appended, again. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/572 +* Fix attached objects by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/573 +* Attempt to fix CI. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/596 +* Fix animation library name by @dimmyi in https://github.com/openmultiplayer/open.mp/pull/594 +* Fix abi-check CI by @Hual in https://github.com/openmultiplayer/open.mp/pull/605 +* Fix typos in Get(Player)NetworkStats. by @mrreus in https://github.com/openmultiplayer/open.mp/pull/606 +* Fix `GetVehicleLastDriver` returning 0 when invalid `vehicleid` is passed by @xunder-matth in https://github.com/openmultiplayer/open.mp/pull/615 +* Fix submodules URLs by @r4nx in https://github.com/openmultiplayer/open.mp/pull/604 +* Tiny message corrections by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/603 +* Validate `roll` in unoccupied sync by @xunder-matth in https://github.com/openmultiplayer/open.mp/pull/624 +* x64 by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/499 +* Use per-player color on player stream in by @AGraber in https://github.com/openmultiplayer/open.mp/pull/629 +* Add natives for calling public functions by index by @AGraber in https://github.com/openmultiplayer/open.mp/pull/630 +* Constant instead of magic numbers by @ALF-ONE in https://github.com/openmultiplayer/open.mp/pull/633 +* Amir/changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/648 +* Add more relevant items to BrokenPlugins list by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/644 +* Fixed incorrect locale saving in Core::vlogLnInternal(). by @dev-karpov0 in https://github.com/openmultiplayer/open.mp/pull/656 +* Fix MoveObject & MovePlayerObject return type. Fix ping packet spam. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/659 +* Ported several functions missed out from fixes.inc. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/663 +* Max seats correction and more comments by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/668 +* Fix HTTP calls and AnnounceHTTPResponseHandler by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/676 +* Bunch of improvements, bug fixes and additions by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/671 +* Fixed possibility to load the same script more than once. by @dev-karpov0 in https://github.com/openmultiplayer/open.mp/pull/660 +* Two minor fixes by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/680 +* Trailer improvements by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/681 +* Various ports to open.mp by @Hual in https://github.com/openmultiplayer/open.mp/pull/683 +* Some proper pawn native param casts by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/684 +* Better legacy announce message by @Hual in https://github.com/openmultiplayer/open.mp/pull/686 +* Some build documentation clarifications. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/662 +* Update pawn. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/711 +* add checks in multiple places for queryExtension results by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/719 +* more queryExtension return value checks, update cmake-conan by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/725 +* Clear components in a separate pass to avoid cross-component invalid access by @Hual in https://github.com/openmultiplayer/open.mp/pull/724 +* Fix object data initialization and event priority conflict with pawn by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/731 +* fix obj crash, deleted objects being delayed processed by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/734 +* Add boundary to TD font setter, fix spectating when spectated disconnects, add webserver binding by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/737 +* Properly handle spectating when a player disconnects by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/740 +* Fix issue with atcprintf not incrementing output length when adding - in trailing zero mode by @Hual in https://github.com/openmultiplayer/open.mp/pull/744 +* remove extra sanity check in setSpectating by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/745 +* Correctly retrieve `modelid` and material colors in `GetObjectMaterial(Text)` by @xunder-matth in https://github.com/openmultiplayer/open.mp/pull/747 +* add a note about downgrading conan using pip by @Zorono in https://github.com/openmultiplayer/open.mp/pull/752 +* Fix move object rotation when optional args are not set by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/753 +* Update actors_main.cpp by @ReshiramZekrom1 in https://github.com/openmultiplayer/open.mp/pull/762 +* Some small changes before new release by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/763 + +## Novos Colaboradores +* @dimmyi fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/594 +* @mrreus fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/606 +* @xunder-matth fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/615 +* @r4nx fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/604 +* @NexiusTailer fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/603 +* @ALF-ONE fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/633 +* @dev-karpov0 fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/656 +* @Zorono fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/752 +* @ReshiramZekrom1 fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/762 + +**Changelog completo**: https://github.com/openmultiplayer/open.mp/compare/v0.0.11.2331...v1.1.0 diff --git a/frontend/i18n/pt-BR/content/releases/server/v1.2.0.2670.md b/frontend/i18n/pt-BR/content/releases/server/v1.2.0.2670.md new file mode 100644 index 00000000000..ab787e64f6f --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/v1.2.0.2670.md @@ -0,0 +1,61 @@ +--- +tag: v1.2.0.2670 +publishedAt: "2024-01-29T03:17:22Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.2.0.2670 +highlights: + - Correções críticas de segurança e ganhos mensuráveis de desempenho + - Novo banner de servidor para o launcher e configurações de consulta do Discord + - Tratamento de anúncio com prioridade IPv4 e comportamento HTTP melhorado + - Correções de crash do RakNet e validação mais forte de dados de gameplay +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.2.0.2670/open.mp-win-x86.zip + size: "44.0 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.2.0.2670/open.mp-linux-x86.tar.gz + size: "24.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.2.0.2670/open.mp-linux-x86-dynssl.tar.gz + size: "20.9 MB" +--- + +## Informações +**POR FAVOR LEIA:** Encorajamos todos os servidores open.mp a atualizarem para esta versão. Houve não apenas melhorias notáveis de desempenho, mas também **correções críticas de segurança** + +## Mudanças: +- Algumas correções de segurança +- Melhorias notáveis de desempenho, especialmente em relação ao funcionamento das natives do pawn agora. +- Adicionadas novas variáveis de configuração para definir banners e link de convite do Discord a serem exibidos no novo [launcher do open.mp](https://github.com/openmultiplayer/launcher/releases/latest) +- O sistema de anúncio agora usa IPv4 por padrão, em vez de usar IPv6 quando disponível. +- Corrigido `Get(Player)ObjectMaterial(Text)` retornando cores no formato errado e modelid. +- Corrigido crash do servidor quando você está alocando memória além do espaço reservado, exibindo um aviso com detalhes. +- Corrigidos crashes aleatórios do RakNet na desalocação de pacotes +- Validação de razões de dano (armas) em vários lugares +- Corrigido `Get(Player)Gravity` +- Novas variáveis de configuração para mensagens de entrada e validação de animação +- Sincronização de bans para que múltiplos jogadores sejam banidos de uma vez, se necessário +- Corrigidos problemas com WSL. + +## Acompanhe as mudanças pelos pull requests: +* Synchronize bans so multiple players are banned at once by @Hual in https://github.com/openmultiplayer/open.mp/pull/776 +* Support LFS by @Hual in https://github.com/openmultiplayer/open.mp/pull/777 +* Add core->requestHTTP4. Force IPV4 requests for announce. Use bind address if provided by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/786 +* Add config options to disable animation validation and join messages by @Hual in https://github.com/openmultiplayer/open.mp/pull/792 +* Retrieve player objects material colors in a ARGB format by @mrreus in https://github.com/openmultiplayer/open.mp/pull/795 +* Add a static openssl warning by @Hual in https://github.com/openmultiplayer/open.mp/pull/793 +* New way of handling ParamCast errors instead of throwing exceptions. by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/798 +* return modelid in GetPlayerObjectMaterial by @adib-yg in https://github.com/openmultiplayer/open.mp/pull/805 +* Return 0.0 if floatstr fails and throws an exception by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/812 +* Weapon validity check in foot, passenger, and vehicle sync, and Give/TakeDamage events by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/804 +* Fix amx_Allot trying to access invalid memory when data size is higher than amx STK size by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/819 +* Remove preconnect packet handler by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/820 +* 52 IS a valid damage reason. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/825 +* Change gravity type to float by @vedran77 in https://github.com/openmultiplayer/open.mp/pull/832 +* Add a note about mac compilation with brew. by @Y-Less in https://github.com/openmultiplayer/open.mp/pull/828 +* Add banners & discord configs and send through query by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/831 + +## Novos Colaboradores +* @adib-yg fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/805 +* @vedran77 fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/832 + +**Changelog completo**: https://github.com/openmultiplayer/open.mp/compare/v1.1.0.2612...v1.2.0.2670 diff --git a/frontend/i18n/pt-BR/content/releases/server/v1.3.1.2748.md b/frontend/i18n/pt-BR/content/releases/server/v1.3.1.2748.md new file mode 100644 index 00000000000..37ef78197de --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/v1.3.1.2748.md @@ -0,0 +1,79 @@ +--- +tag: v1.3.1.2748 +publishedAt: "2024-08-18T09:47:11Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.3.1.2748 +highlights: + - Grandes melhorias de estabilidade e desempenho do RakNet + - Melhor ordenação e confiabilidade de RPCs nos caminhos principais de sincronização + - Verificações de validação expandidas para diálogos, menus e dados de rede + - Novo suporte a logo do servidor para o launcher e presença no Discord +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.3.1.2748/open.mp-win-x86.zip + size: "29.8 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.3.1.2748/open.mp-linux-x86.tar.gz + size: "23.7 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.3.1.2748/open.mp-linux-x86-dynssl.tar.gz + size: "20.1 MB" +--- + +## O que mudou +* Corrigido texto não sendo exibido em casos raros ao usar format +* Removidos `OnPlayerConnect` e `OnPlayerDisconnect` desnecessários quando um script secundário (filterscript) é (des)carregado. Em vez disso, foram introduzidos os callbacks OnScript(Un)LoadPlayer. +* Corrigido o problema do crashdetect não conseguir encontrar o nome do arquivo e número da linha quando mais de um script estava carregado +* Corrigidos muitos canais de ordenação de RPCs e confiabilidades +* Melhorado o desempenho da thread de rede (RakNet) +* Corrigidos muitos crashes do RakNet e gerenciamento de memória interna mais seguro +* Corrigidos vários problemas de conexão e limpezas adequadas do pool interno de jogadores +* Corrigido `GetGameText` +* Verificação de validade da URL do CDN +* Nova implementação de `InternalPacketPool` no RakNet +* Adicionadas mais verificações de validade de dados para respostas de diálogos +* Adicionadas verificações de validade para linhas de menus +* Erros HTTP legíveis por humanos +* Interrompida a transmissão de sincronização de espectadores +* Corrigida a versão Windows do open.mp não carregando quando o Windows do usuário está configurado para um idioma com nomes não-ASCII +* Removido um conjunto de avisos de depreciação de natives pawn em tempo de execução +* Valores padrão para vida e colete +* Melhorado o desempenho para responder ao RPC de ScoresAndPings (placar) +* Adicionado logo do servidor para ser usado no launcher e status do Discord +* Corrigido o infame crash do RakNet que tínhamos desde o início + +## Registro de mudanças por pull requests mesclados +* fix atcprintf failure message not showing fmt string by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/860 +* change invalid weapon slot to -1 by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/862 +* Call OnScript(Un)LoadForPlayer on script (un)load by @Andosius in https://github.com/openmultiplayer/open.mp/pull/878 +* Revert "Revert `OnPlayerConnect` vandalism." by @Hual in https://github.com/openmultiplayer/open.mp/pull/887 +* Handle queries when logging is enabled by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/889 +* Revert "Support LFS" by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/890 +* Fix OnPlayerConnect regression after gmx. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/891 +* RakNet crash fixes, performance improvements, fix ordering channels for some RPCs by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/883 +* Fixed: several connection logic issues by @uifdev in https://github.com/openmultiplayer/open.mp/pull/906 +* Fix GetGameText native giving incorrect/corrupt values by @Sreyas-Sreelal in https://github.com/openmultiplayer/open.mp/pull/915 +* Fix test component by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/913 +* sync raknet, fix InternalPacketPool::ClearPool crash by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/911 +* Validate CDN URL by @myudev in https://github.com/openmultiplayer/open.mp/pull/919 +* improved dialog response checking by @atomlin-git in https://github.com/openmultiplayer/open.mp/pull/902 +* added check for possible menu row values by @atomlin-git in https://github.com/openmultiplayer/open.mp/pull/922 +* Add server logo feature, human readable httplib errors, and bunch of fixes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/928 +* Remove conan from SDK, Disable unicode component by default, Bump version by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/933 +* SDK and Network as submodules by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/937 +* Stop broadcasting spectators sync data. by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/939 +* Fix locale switch for names with non-ascii characters by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/945 +* Remove runtime pawn native deprecations for mixed spellings by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/952 +* Tiny correction in TestComponent by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/956 +* Network fixes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/957 +* Update broken plugins list by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/961 +* default values for hp and armor in Player::reset and constructor by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/960 +* cache generated BS for a short period of time for scoreboard rpc by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/962 + +## Novos Colaboradores +* @Andosius fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/878 +* @uifdev fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/906 +* @Sreyas-Sreelal fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/915 +* @myudev fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/919 +* @atomlin-git fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/902 + +**Changelog completo**: https://github.com/openmultiplayer/open.mp/compare/v1.2.0.2670...v1.3.1.2744 diff --git a/frontend/i18n/pt-BR/content/releases/server/v1.4.0.2779.md b/frontend/i18n/pt-BR/content/releases/server/v1.4.0.2779.md new file mode 100644 index 00000000000..55750c488e4 --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/v1.4.0.2779.md @@ -0,0 +1,62 @@ +--- +tag: v1.4.0.2779 +publishedAt: "2025-01-12T19:56:45Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.4.0.2779 +highlights: + - Criptografia opcional do protocolo open.mp para clientes compatíveis + - Carregamento recursivo de componentes com comportamento melhorado do linker no Linux + - Múltiplas correções de crash e sincronização em veículos e objetos + - Nova native `IsPlayerUsingOmp` para detecção do cliente open.mp +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.4.0.2779/open.mp-win-x86.zip + size: "29.3 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.4.0.2779/open.mp-linux-x86.tar.gz + size: "23.7 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.4.0.2779/open.mp-linux-x86-dynssl.tar.gz + size: "20.1 MB" +--- + +## O que mudou +* Implementada criptografia open.mp para uso com o launcher do open.mp. Deve ser habilitada no config.json primeiro ( `network.use_omp_encryption` ) +* Corrigido um pequeno problema com SetPlayerSkin em clientes mobile +* Verificação de validade do modo de câmera +* Corrigido o valor de retorno de GetTickCount para Windows +* Corrigido crash ao destruir um veículo em alguns eventos e callbacks pawn +* Desabilitado carregamento dinâmico de DLL para o runtime AMX, especialmente quando o usuário tem o pawn padrão instalado do site da compuphase +* Corrigido valor de retorno invertido em GetVehicleLandingGearState +* Corrigido jogadores permanecendo aleatoriamente na lista de jogadores nos launchers mesmo após saírem do servidor +* Mais verificações de validade para trailers e sincronização de trailers +* Carregamento recursivo de componentes em pastas +* Carregamento de componentes começando com $ antes dos outros e com `RTLD_GLOBAL` no Linux +* Corrigido crash relacionado a objetos em movimento +* Corrigido dados de veículo do jogador sendo resetados antes de OnPlayerDeath ser chamado +* Detecção de jogador open.mp usando a native `IsPlayerUsingOmp` + +## Registro de mudanças por pull requests mesclados +* Fix SetPlayerSkin (add custom skin without DL client) for mobile clients by @f0Re3t in https://github.com/openmultiplayer/open.mp/pull/978 +* Validate camera modes better by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/975 +* fix vehicle release in events called in driver sync by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/983 +* GetTickCount on Windows to return tick count of server instead of system by @Hual in https://github.com/openmultiplayer/open.mp/pull/987 +* Disable dynamic DLL loading for AMX runtime by @Hual in https://github.com/openmultiplayer/open.mp/pull/988 +* Main script config fixes by @Hual in https://github.com/openmultiplayer/open.mp/pull/989 +* Fix inverted GetVehicleLandingGearState value by @Hual in https://github.com/openmultiplayer/open.mp/pull/990 +* Fix issues with reallocating bitstreams in sendRPC/sendPacket by @Hual in https://github.com/openmultiplayer/open.mp/pull/997 +* More validity checks for vehicles (mainly trailers) by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/985 +* Fix player teleport natives and query player list by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1003 +* Recursively load components by @myudev in https://github.com/openmultiplayer/open.mp/pull/920 +* Fix moving player objects crash due to out-of-order destruction by @Hual in https://github.com/openmultiplayer/open.mp/pull/1016 +* load comps starting with `$` sooner and with RTLD_GLOBAL on linux by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1020 +* call state change event after death event, to prevent unwanted cleanups by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1035 +* omp user detection & server to client encryption for omp users by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1026 +* remove rivershell from main repository and move it to a separate one by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1038 +* revert state change, dont handle in vehicle's event, use death event ... by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1037 +* all my homies hate linux (not the kernel btw, the ecosystem btw) (btw) by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1040 +* bump version by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1041 + +## Novos Colaboradores +* @f0Re3t fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/978 + +**Changelog completo**: https://github.com/openmultiplayer/open.mp/compare/v1.3.1.2744...v1.4.0.2779 diff --git a/frontend/i18n/pt-BR/content/releases/server/v1.5.8.3079.md b/frontend/i18n/pt-BR/content/releases/server/v1.5.8.3079.md new file mode 100644 index 00000000000..539335c0ace --- /dev/null +++ b/frontend/i18n/pt-BR/content/releases/server/v1.5.8.3079.md @@ -0,0 +1,114 @@ +--- +tag: v1.5.8.3079 +publishedAt: "2025-12-17T10:12:28Z" +htmlUrl: https://github.com/openmultiplayer/open.mp/releases/tag/v1.5.8.3079 +highlights: + - NPC totalmente controlável integrado ao servidor + - Nova C API / C API SDK e melhor interoperabilidade entre Pawn e SDK + - Grandes melhorias de desempenho de rede com verificações de validação de sincronização mais fortes + - Atualização do OpenSSL 3.0.13 +assets: + - label: Windows + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.8.3079/open.mp-win-x86.zip + size: "34.9 MB" + - label: Linux + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.8.3079/open.mp-linux-x86.tar.gz + size: "30.5 MB" + - label: Linux (DynSSL) + url: https://github.com/openmultiplayer/open.mp/releases/download/v1.5.8.3079/open.mp-linux-x86-dynssl.tar.gz + size: "25.5 MB" +--- + +## O que mudou + +### Funcionalidades Principais +- Introduzidos **NPCs totalmente controláveis como funcionalidade integrada do servidor**, removendo a necessidade de plugins externos de NPC e permitindo IA e automação mais profundas no lado do servidor. +- Adicionada uma **C API e C API SDK**, permitindo que desenvolvedores integrem o open.mp diretamente com código nativo e ferramentas externas. +- Adicionada a capacidade de **chamar natives Pawn a partir do SDK C++ do open.mp**, melhorando significativamente a interoperabilidade entre scripting e módulos nativos. + +### Rede e Desempenho +- Melhorias significativas no **desempenho de rede**, resultando em sincronização mais rápida e gameplay mais responsivo. +- Adicionadas múltiplas **verificações de validação de sincronização** para prevenir dados inválidos, estados falsificados e pacotes malformados. +- Os valores de MTU agora são **validados contra o máximo permitido por versão do cliente**, prevenindo configuração incorreta e instabilidade. + +### Plataforma e Compatibilidade +- Atualizado **OpenSSL de 1.1.1 para 3.0.13**, depreciando oficialmente distribuições Linux legadas e garantindo suporte adequado para sistemas modernos. +- Adicionado **suporte a variáveis de ambiente para `config.json`**, tornando implantações em containers, CI/CD e produção mais fáceis e flexíveis. + +### Melhorias de NPC e Gameplay +- IDs de NPC agora são alocados do **mais alto para o mais baixo**, prevenindo conflitos e melhorando a previsibilidade. +- Depreciado `ConnectNPC` em favor do novo sistema de NPC integrado. +- Forçada a criação de trens a sempre usar **4 IDs consecutivos**, corrigindo inconsistências de longa data. +- Corrigidos problemas de sincronização de passageiros em trens. + +### Estabilidade e Correções de Bugs +- Corrigido um problema infame com dados de spawn +- Corrigidos problemas de delay no kick. +- Corrigidos crashes relacionados a gangzones na lista de verificação durante reinicializações do servidor. +- Corrigidas ocorrências aleatórias do estado do jogador sendo definido como `None` após espectatar. +- Corrigido travamento de stdin no Linux durante o desligamento do servidor. +- Corrigido `chatlogging` não afetando mensagens de morte. +- Removido o componente legado **Fixes** devido à instabilidade, redundância, e sua funcionalidade ter sido substituída por sistemas mais novos. +- Diversas pequenas correções de natives Pawn para melhor correção e usabilidade. + +### Documentação e Comunidade +- A nova e atualizada **API de scripting NPC (natives Pawn)** está disponível na documentação oficial: + https://open.mp/docs +- Junte-se à comunidade e obtenha suporte no Discord: + https://discord.gg/samp +- Apoie o desenvolvimento via OpenCollective: + https://opencollective.com/openmultiplayer +- Site principal: + https://open.mp/ + +## Registro de mudanças por pull requests mesclados: +* Fix for non-bullet guns returned as 0 in weapon data by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1046 +* Update gitignore for CLion && macOS by @povargek in https://github.com/openmultiplayer/open.mp/pull/1049 +* fix ci by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1054 +* Fix apple silicon build by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1062 +* Fixes for a couple of issues by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/999 +* Fixed: legacy config variable 'chatlogging' does not control death logging by @uifdev in https://github.com/openmultiplayer/open.mp/pull/1057 +* Pack Vehicle and StreamInVehicle more tightly by @PTemuri in https://github.com/openmultiplayer/open.mp/pull/1091 +* Fixed: train passenger sync by @uifdev in https://github.com/openmultiplayer/open.mp/pull/1100 +* Fixed `logging.log_connection_messages` option check by @Northn in https://github.com/openmultiplayer/open.mp/pull/1094 +* Fixed "reverse search for NPC id in player pool" by @NoPressF in https://github.com/openmultiplayer/open.mp/pull/1088 +* Return string length for some natives by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1098 +* Check provided mtu value against max allowed per client version by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/1111 +* Reverse search for NPC id in player pool by @ksenonadv in https://github.com/openmultiplayer/open.mp/pull/1075 +* add NPC_HasPathPointInRadius by @NoPressF in https://github.com/openmultiplayer/open.mp/pull/1115 +* One big beautiful pull request by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1113 +* Create FUNDING.yml by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1121 +* Store natives globally & ability to call them from using SDK by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1128 +* fix sdtin lock from getline when shutting down by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1131 +* NPC Component by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/916 +* Update FCNPC deprecation message by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1132 +* add capi component and submodule by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1125 +* Some fixes and changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1133 +* upgrade openssl version from 1.1.1 to 3.0.13 by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1096 +* Some NPC fixes and changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1135 +* Add trams where they are missed by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1140 +* Force train to be 4 consecutive ids by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1139 +* Fix event handling by @0x617374726F in https://github.com/openmultiplayer/open.mp/pull/1144 +* Use entry create for dialog data creation by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1145 +* Add environment variable support in config.json by @itsneufox in https://github.com/openmultiplayer/open.mp/pull/1142 +* network, npcs, and docker script changes by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1148 +* fix TextDraw_SetProportional by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1149 +* fix slot reserving for players outside of raknet by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1150 +* Fix Kick Issue by @Tiaansu in https://github.com/openmultiplayer/open.mp/pull/1151 +* fix: clear checkingList when component is reseted by @nidi21 in https://github.com/openmultiplayer/open.mp/pull/1152 +* bump version by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1153 +* update sdk module to the right ref by @AmyrAhmady in https://github.com/openmultiplayer/open.mp/pull/1154 +* Couple of fixes for NPC component by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1156 +* Fix for random occurrence of player state none by @NexiusTailer in https://github.com/openmultiplayer/open.mp/pull/1146 + +## Novos Colaboradores +* @povargek fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1049 +* @PTemuri fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1091 +* @Northn fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1094 +* @NoPressF fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1088 +* @0x617374726F fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1144 +* @itsneufox fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1142 +* @Tiaansu fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1151 +* @nidi21 fez sua primeira contribuição em https://github.com/openmultiplayer/open.mp/pull/1152 + +**Changelog completo**: https://github.com/openmultiplayer/open.mp/compare/v1.4.0.2779...v1.5.8.3077 From 143fa0e848b4f18d75ae94aff4ede67a3811e099 Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 10:07:52 +0000 Subject: [PATCH 11/12] add missing admonition translation --- frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md b/frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md index d92a346f5b7..15d22ad4d5d 100644 --- a/frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md +++ b/frontend/i18n/pt-BR/content/releases/launcher/v1.6.1.md @@ -9,8 +9,8 @@ highlights: - Seleção automática de versão do cliente, com controle de versão do cliente por servidor admonition: type: warning - title: Antivirus False Positive - body: "Some antivirus software may flag the open.mp Launcher as a virus. This is a false positive. The launcher is open source and safe to use. If affected, add your open.mp launcher installation folder as an exclusion in your antivirus software." + title: Falso Positivo de Antivírus + body: "Alguns antivírus podem sinalizar o Launcher do open.mp como vírus. Isso é um falso positivo. O launcher é open source e seguro de usar. Se for afetado, adicione a pasta de instalação do launcher do open.mp como exceção no seu antivírus." assets: - label: "Download Launcher (.exe)" url: https://github.com/openmultiplayer/launcher/releases/download/v1.6.1/omp-launcher-setup.exe From ba53ede912436027d8b3aea44ab0eded0354abdd Mon Sep 17 00:00:00 2001 From: itsneufox <156133096+itsneufox@users.noreply.github.com> Date: Sat, 14 Feb 2026 10:12:38 +0000 Subject: [PATCH 12/12] Fix text on animations --- frontend/src/pages/animations.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/pages/animations.tsx b/frontend/src/pages/animations.tsx index 576b3b8ce6e..8c87591b279 100644 --- a/frontend/src/pages/animations.tsx +++ b/frontend/src/pages/animations.tsx @@ -83,7 +83,7 @@ const AnimationsPage = () => {
    - Animations Viewer + open.mp Animations Viewer