Mixer moves into the terminal's Web3 page as a sub-page
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
09a5cae69c
commit
be18078f69
4 files changed
+17
-8
No files matched your search
+1
-1
@@ -5,7 +5,7 @@
|
||||
### 第二阶段(进行中)
|
||||
|
||||
- 人脉网络里本 mod 单独一页"Web3":入口(400)和混币器(700,需先加入)都放在这页。
|
||||
- 混币器:终端多一页"混币器"(买了升级才出现)。选币种、数量、1–5 轮,存入后每轮扣 2% 手续费并降低污点(基准每轮 35%,存入越大清洗越差,匿名集 = 2 万信用点背景量 + 存入量),轮数即等待天数,到期提回同一个地址;提回后一周内出金审查按"来自混币器"加重。镇压事件开始时 50% 被制裁 5 天,期间提出的币地址被标记,并上报纸;每晚 0.4% 跑路。夜间日志写提回与污点变化。开发者模式 F9 有 `Tainted wallet (test)`。游戏内验证了解锁、页面、存入与污点带走;夜间提回只有单元测试(测试存档里无法正常过夜)。
|
||||
- 混币器:终端 Web3 页里多一个"混币器"子页(买了升级才出现,和"交易"并列)。选币种、数量、1–5 轮,存入后每轮扣 2% 手续费并降低污点(基准每轮 35%,存入越大清洗越差,匿名集 = 2 万信用点背景量 + 存入量),轮数即等待天数,到期提回同一个地址;提回后一周内出金审查按"来自混币器"加重。镇压事件开始时 50% 被制裁 5 天,期间提出的币地址被标记,并上报纸;每晚 0.4% 跑路。夜间日志写提回与污点变化。开发者模式 F9 有 `Tainted wallet (test)`。游戏内验证了解锁、页面、存入与污点带走;夜间提回只有单元测试(测试存档里无法正常过夜)。
|
||||
|
||||
- 用币付款的顾客:排队的买家里,上层付 CRC(12%)、黑市付 CRT(25%)、革命派付 CRA(25%)、下层付 PSC(10%)。成交时扣回信用点(现金不变),按当日币价换成币进热钱包,顾客当场说一句"成交,N CRT 已转入热钱包";赃物款项不记销赃,改成币带污点(货值 × 赃物热度%);夜间日志汇总当天用币结算的额度。开发者模式 F9 有测试入口(Coin buyer)。已在游戏里实测:成交后现金不变,四笔种子按币价记入 CRT,顾客对话显示。
|
||||
|
||||
|
||||
@@ -192,10 +192,11 @@ mixer.go,Deposit to mixer
|
||||
mixer.min,Deposits must be worth at least {0} credits.
|
||||
mixer.done,Deposited {0} {1}; back on day {2}.
|
||||
mixer.upgrade.title,Mixer
|
||||
mixer.upgrade.desc,"Unlocks the Mixer page in the terminal: deposit tainted coins, get them back days later with less taint. Cash-outs of freshly mixed coins are screened harder; during crackdowns the mixer may be sanctioned and coins withdrawn meanwhile are flagged."
|
||||
mixer.upgrade.desc,"Unlocks the mixer in the terminal's Web3 page: deposit tainted coins, get them back days later with less taint. Cash-outs of freshly mixed coins are screened harder; during crackdowns the mixer may be sanctioned and coins withdrawn meanwhile are flagged."
|
||||
news.sanction.title,Mixer put on sanctions list
|
||||
news.sanction.desc,"Security has sanctioned a batch of mixing services. Funds withdrawn from mixers in the next few days will be treated as suspicious."
|
||||
nightlog.mixer,Mixer returned {0} {1}; taint {2} -> {3}.
|
||||
nightlog.mixer_flag, (withdrawn during sanctions; address flagged)
|
||||
nightlog.mixer_rug,The mixer's operator ran off with it: {0} {1} never came back.
|
||||
tab.mixer,Mixer
|
||||
web3.sub.trade,Trade
|
||||
web3.sub.mixer,Mixer
|
||||
|
@@ -191,10 +191,11 @@ mixer.go,存入混币器
|
||||
mixer.min,存入价值不得低于 {0} 信用点。
|
||||
mixer.done,已存入 {0} {1},第 {2} 天提回。
|
||||
mixer.upgrade.title,混币器
|
||||
mixer.upgrade.desc,"解锁终端里的混币器页:把带污点的币存进去,几天后提回,污点降低。出金审查对刚从混币器出来的币更严格;镇压期间混币器可能被制裁,期间提出的币会被标记。"
|
||||
mixer.upgrade.desc,"解锁终端 Web3 页里的混币器:把带污点的币存进去,几天后提回,污点降低。出金审查对刚从混币器出来的币更严格;镇压期间混币器可能被制裁,期间提出的币会被标记。"
|
||||
news.sanction.title,混币器被列入制裁名单
|
||||
news.sanction.desc,"安保部门宣布制裁一批混币服务。此后几天从混币器提出的资金将被视为可疑。"
|
||||
nightlog.mixer,混币器提回 {0} {1},污点 {2} → {3}。
|
||||
nightlog.mixer_flag,(制裁期间提出,地址被标记)
|
||||
nightlog.mixer_rug,混币器的运营者卷款跑路了:{0} {1} 没有提回。
|
||||
tab.mixer,混币器
|
||||
web3.sub.trade,交易
|
||||
web3.sub.mixer,混币器
|
||||
|
@@ -13,7 +13,7 @@ namespace Decentralized
|
||||
public static class TerminalWindow
|
||||
{
|
||||
public const string Id = "pd_terminal";
|
||||
private enum Page { Home, Bank, Poinbase, Web3, Mixer, Report }
|
||||
private enum Page { Home, Bank, Poinbase, Web3, Report }
|
||||
|
||||
private static Page _page = Page.Home;
|
||||
private static string _amount = "";
|
||||
@@ -28,7 +28,6 @@ namespace Decentralized
|
||||
b.BeginRow();
|
||||
foreach (Page p in Enum.GetValues(typeof(Page)))
|
||||
{
|
||||
if (p == Page.Mixer && !Unlock.MixerUnlocked) continue;
|
||||
var page = p;
|
||||
string name = L.T("tab." + p.ToString().ToLowerInvariant());
|
||||
b.AddButton(page == _page ? $"[{name}]" : name, () => { _page = page; _message = null; Open(); });
|
||||
@@ -42,7 +41,6 @@ namespace Decentralized
|
||||
case Page.Bank: BankPage(b); break;
|
||||
case Page.Poinbase: ExchangePage(b, Venue.Exchange); break;
|
||||
case Page.Web3: Web3Page(b); break;
|
||||
case Page.Mixer: MixerPage(b); break;
|
||||
default: ReportPage(b); break;
|
||||
}
|
||||
b.End();
|
||||
@@ -237,6 +235,14 @@ namespace Decentralized
|
||||
private static void Web3Page(CustomUIBuilder b)
|
||||
{
|
||||
var w = Session.Data.Hot;
|
||||
if (Unlock.MixerUnlocked)
|
||||
{
|
||||
b.BeginRow();
|
||||
b.AddButton(_web3Mixer ? L.T("web3.sub.trade") : $"[{L.T("web3.sub.trade")}]", () => { _web3Mixer = false; _message = null; Open(); });
|
||||
b.AddButton(_web3Mixer ? $"[{L.T("web3.sub.mixer")}]" : L.T("web3.sub.mixer"), () => { _web3Mixer = true; _message = null; Open(); });
|
||||
b.End();
|
||||
if (_web3Mixer) { MixerPage(b); return; }
|
||||
}
|
||||
Columns(b, l =>
|
||||
{
|
||||
l.AddHeader(L.T("web3.wallet.h"));
|
||||
@@ -254,6 +260,7 @@ namespace Decentralized
|
||||
});
|
||||
}
|
||||
|
||||
private static bool _web3Mixer;
|
||||
private static string _mixAsset = Assets.PSC;
|
||||
private static int _mixRounds = 2;
|
||||
private static readonly float[] MixW = { 70f, 100f, 100f, 80f };
|
||||
|
||||
Reference in new issue
Block a user