Важно: ваша версия Windows устарела и больше не поддерживается.
Из соображений безопасности перед загрузкой ПО Avira мы рекомендуем перейти на Windows 10/11.
Обновить Windows вы можете здесь.
Our Avira Phantom VPN is no longer available for use within India as a result of governmental regulations requiring the logging and saving of user data, but you can still use your subscription when traveling outside of India.
Skip to Main Content

Peroxide Script Info

// To commit the bleach back: enemy_health <-! preview // Stabilizes the change

let enemy_health = 100 let preview = !> enemy_health - 20 // Creates a bleached copy print(enemy_health) // 100 (unchanged) print(preview) // 80

This allows modders to simulate "what-if" scenarios (damage prediction, UI previews, network rollback) without cluttering the live game state. It’s like Git for game variables. Most scripting languages pause the world to clean up memory. Peroxide uses reactive reference counting with a twist: objects self-destruct when their last stable reference disappears. The Bleach Operator creates ephemeral references that vanish automatically after the current frame. Peroxide Script

archetype Player { health: f32, position: Vec3, inventory: List<Item> } system "damage_over_time" { query (mut health, @tag "burning") for each { health.current -= 5.0 * delta_time } }

Zero GC spikes. This is a game-changer for fighting games, rhythm games, or any title requiring sub-millisecond frame consistency. 3. Native Entity Component System (ECS) Integration Peroxide isn’t general-purpose—it’s built for ECS. The language has first-class support for Archetypes and Queries . // To commit the bleach back: enemy_health &lt;-

But as one modder put it on the forums: “Once you bleach, you never go back.” Author’s note: Peroxide Script is currently at version 0.9.2 (codename “Hydrogen Peroxide”). The 1.0 release is planned for Q4 2026.

For two decades, modding has been a war between accessibility and power. Lua is friendly but slow. C++ is fast but unforgiving. Peroxide Script, a new open-source embedded scripting language, claims to offer the best of both worlds—with a chemical twist. Most scripting languages pause the world to clean up memory

Developed by independent game studio (and later open-sourced in early 2025), Peroxide Script ( .ps or .h2o2 ) was designed to solve a specific pain point: safe, concurrent mutation of game state without garbage collection stutter.

But what makes it "peroxide"? The name hints at its core mechanism: . Let’s break it down. 1. The Bleach Operator: !> The headline feature of Peroxide is the Bleach Operator ( !> ). In traditional scripting, if you modify an object, all references see that change. In Peroxide, mutation is opt-in and temporary .

No locks. No deadlocks. Just data flowing one way. Because of the Bleach Operator, every script runs in a sandboxed revision . You can change a function, recompile the script, and the running game will automatically migrate live variables to the new version—as long as they’re stable.

Продлевается автоматически, если продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Продлевается автоматически, если продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о подписке приведены ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period# (скидка #cma_promo_saved_price# за первый #cma_period# от стоимости #cma_promo_standard_price#). Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period# (скидка #cma_promo_saved_price# за первый #cma_period# от стоимости #cma_promo_standard_price#). Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period# (скидка #cma_promo_saved_price# за первый #cma_period# от стоимости #cma_promo_standard_price#). Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Специальное предложение действует до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period# (скидка #cma_promo_saved_price# за первый #cma_period# от стоимости #cma_promo_standard_price#). Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Специальное предложение действует до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period# (скидка #cma_promo_saved_price# за первый #cma_period# от стоимости #cma_promo_standard_price#). Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Специальное предложение действует до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period# (скидка #cma_promo_saved_price# за первый #cma_period# от стоимости #cma_promo_standard_price#). Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Экономия рассчитывается исходя из стоимости продления. Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Экономия рассчитывается исходя из двукратной годовой стоимости продления #cma_promo_renewal_price# в год. Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Экономия рассчитывается исходя из стоимости продления. Подробные сведения о подписке приведены ниже.*
Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Экономия рассчитывается исходя из стоимости продления. Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Экономия рассчитывается исходя из стоимости продления. Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#: #cma_promo_price# — скидка #cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Экономия рассчитывается исходя из стоимости продления. Подробные сведения о подписке приведены ниже.*
Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Экономия рассчитывается исходя из стоимости продления. Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Специальное предложение действует до #cma_promo_end_date#. Автоматическое продление по цене #cma_promo_renewal_price# / #cma_renewal_period#, пока продление подписки не будет отменено. Подробные сведения о подписке приведены ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Предложение действует в течение первого #cma_period# до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# в #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Специальное предложение действует до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Специальное предложение действует до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. Специальное предложение действует до #cma_promo_end_date#. Когда срок действия пробной версии заканчивается, начинается действие платной подписки по цене #cma_promo_price# за первый #cma_period#. Подписка автоматически продлевается по цене #cma_promo_renewal_price# / #cma_renewal_period#, если продление не отменено. Подробные сведения о предложении см. ниже.*
Требуется указать способ оплаты. По окончании пробного доступа начнет действовать платная подписка, которая будет продлеваться автоматически, если продление подписки не будет отменено. Цена может быть изменена.
Подробные сведения о предложении см. ниже.*
#cma_promo_price# — скидка#cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Далее #cma_promo_renewal_price# в#cma_renewal_period#.
#cma_promo_price# — скидка#cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Далее #cma_promo_renewal_price# в#cma_renewal_period#.
#cma_promo_price# — скидка#cma_promo_saved_price# за первый #cma_period# от полной стоимости #cma_promo_standard_price#. Далее #cma_promo_renewal_price# в#cma_renewal_period#.
Стоимость оставшихся дней вашей текущей подписки будет конвертирована в дополнительные дни вашей новой подписки.
Big savings. Strong online security: 45% off Avira Prime >
Riesen Rabatt. Starke Online-Sicherheit: 45% auf Avira Prime >