Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
GlowStick
Throw glowing sticks with real physics, pick them up and re-throw. Each stick has its own light. 8 hex-editable colors, fixed-color mode, stock HUD, zh/en config that switches live. Multiplayer: others with this mod see your sticks and can grab them.
By Yanyan_mod
CHANGELOG
更新日志 / Changelog
1.1.1 — 别人的棒子能捡了 / Pick up other players' sticks
中文
- 别人扔的荧光棒现在能捡、能再扔。以前远端棒是纯视觉的(没有碰撞体),准星打不到、也抓不起来;这一版给它加了一个 trigger 碰撞体 —— 只挂在触发层,不参与物理求解,所以它照样不会推走你的箱子、不会把你卡在门框上。
- 捡起来等于过户:抓到手的那一刻,棒子在你这边变成真正的本地刚体(重量、摩擦、弹跳全都照原版),同时发一条认领消息告诉其他人。别人屏幕上原来那根影子会同时消失、换成你手里的这根,不会出现"两根、闪一下、旧的还在"。
- 不再有"看得见摸不着":以前追着一根别人的棒子按 E 按到烦,现在跟自己的棒子手感一致。
English
- You can now pick up and re-throw other players' sticks. Remote sticks used to be pure visuals with no collider at all, so the crosshair could not hit them and nothing could grab them. They now carry a trigger collider: it is on the trigger layer and never enters the physics solve, so it still cannot shove your crates around or wedge you in a doorway.
- Picking one up transfers ownership. The instant it lands in your hand it becomes a real local rigidbody (mass, friction and bounce exactly like your own), and a claim packet goes out to everyone else. The old ghost on their screens disappears and is replaced by yours in the same step — no duplicates, no flicker, no stale copy left behind.
- No more "see it but can't touch it".
1.1.0 — 联网同步 / Multiplayer sync
中文
- 装了模组的人之间能互相看见荧光棒。你扔、他看得见;他扔、你也看得见。位置、姿态、颜色都对得上。
- 没装的人看不见,也不会因此出问题:同步走的是 Photon 自定义事件(独立事件号),未装本模组的客户端收到不认识的事件码会直接丢掉,不报错、不卡。
- 带宽很省:飞行中每根约每秒 11 次位置包;停下就发一次"落定"然后彻底不发了。一根棒整段寿命的流量比一句聊天还小。
- 别人扔的你捡不起来:远端棒刻意不建刚体、不建碰撞体 —— 这样它们绝不会推走你的本地物体、也不会把你卡住。你自己扔的照常能捡能再扔。
- 离开关卡 / 换场景时,远端棒会自动清空,不会残留到下一局。
English
- Sticks are now shared between players who both have the mod. You throw it, they see it — position, rotation and color all match.
- Players without the mod see nothing and nothing breaks. Sync uses a Photon custom event with its own event code; unmodded clients drop unknown codes silently.
- Cheap on bandwidth. About 11 position updates per second per airborne stick, then a single "settled" packet and silence. A stick's whole lifetime costs less than one chat line.
- You cannot pick up someone else's stick. Remote sticks are intentionally spawned with no Rigidbody and no Collider, so they can never push your props around or trap you. Your own sticks still pick up and re-throw as usual.
- Remote sticks are cleared on level change / scene unload.
1.0.0 — 首次发布 / First release
中文
这是第一个正式版本,之前 1.2.x 那些编号都是内部试打,没有对外发过。
- 扔:默认按
X,从身前约半米、胸口高度抛出,带一点上抛弧度。 - 真实物理:每根都是真刚体(0.55kg、胶囊碰撞体、自定义摩擦材质、插值 + 连续碰撞检测),会飞会弹会滚,撞墙轻轻弹一下,扔再快也不穿墙。
- 拾取 / 再扔:准星对着 3.5 米内的荧光棒,准星右边浮出一行描边小字提示;按住
E拽到身前,左键甩出去,松开E放下。提示是纯描边的,没有底板,不挡视野。 - 每根自带光:一盏点光源(默认 14 米、强度 6.5),跟光晕一起以微弱呼吸节奏明暗颤动,不是死板常亮。为了吃得住性能,只点亮离你最近的 16 根。
- 八色循环:黄 → 红 → 绿 → 蓝 → 白 → 橙 → 紫 → 粉,每扔一根换下一个。
- 颜色可配:八个颜色都能改成任意
#RRGGBB;「颜色模式」填 0 是循环,填 1~8 就固定只用那一个颜色。改完一秒内生效。 - 库存:最多 10 根,扔一根等 5 秒,每 30 秒补回 1 根。
- HUD:左侧偏下一排竖条,亮的是还剩几根,冷却那格会闪,底部一条黄条是冷却进度,右边是
剩余/上限,下一格底下青色细线是补货倒计时。只在关卡里画,主菜单 / 大厅不出现(撤离结算那几秒还会留在屏幕上)。 - 外壳:直接用游戏里现成的投掷物预制体(眩晕手榴弹优先),不是自制圆柱;手榴弹的引爆逻辑全掐掉,扔出去不会炸,爆炸类 / 绊雷 / 活人手雷一律排除。
- 中英双语:配置菜单最上面
0.Language选「中文 / English」,段名、键名、说明当场全换,不用重启游戏、不用退出菜单。切语言只改显示,存的值不会丢。 - 清理:场上同时最多 120 根,超了删最老的;掉出世界(y < -200)的自动销毁。
说明 / 已知限制
- 只在真正进入关卡后生效,主菜单、商店、结算界面按键不会误触。
- 纯本地生成:荧光棒只在你自己屏幕上存在,队友看不见。定位是"给自己做标记",不是同步道具。
English
First public release. The 1.2.x numbers before this were internal test builds and were never published.
- Throw: default
X. Spawns about half a meter in front of you at chest height with a slight upward arc. - Real physics: every stick is a genuine rigidbody (0.55 kg, capsule collider, custom friction material, interpolation + continuous collision detection). It flies, bounces and rolls, gives a small bounce off walls, and never tunnels through geometry.
- Pick up / throw again: aim at a stick within 3.5 m and an outlined line of text floats up right of the crosshair. Hold
Eto reel it in, left click to hurl it, releaseEto drop it. The hint is outlined text only — no backing plate, so it does not cover what you are looking at. - Its own light: each stick carries a point light (14 m, intensity 6.5 by default) that breathes gently with the halo instead of sitting dead flat. Only the nearest 16 are lit at a time to keep it cheap.
- Eight colors: yellow → red → green → blue → white → orange → purple → pink, one per throw.
- Colors configurable: all eight slots accept any
#RRGGBB; setColor modeto 0 to cycle, or 1-8 to lock one colour. Applies within a second. - Stock: up to 10, 5 s cooldown per throw, +1 every 30 s.
- HUD: a bar of ticks on the left, slightly below centre. Bright ticks are what you have left, the cooling tick blinks, a yellow bar underneath is the cooldown,
current/maxsits to its right, and a cyan line under the next empty slot is the refill countdown. Drawn inside a level only — the main menu and lobby stay clean (it lingers a few seconds into the extraction outro). - Shell: uses the game's own throwable prefabs (stun grenade first) rather than a hand-built cylinder. All detonation logic is stripped, so it never explodes; explosive / mine / human-grenade variants are blacklisted.
- Bilingual config: pick
中文orEnglishin0.Languageat the top of the config menu and sections, key names and descriptions all switch on the spot — no restart, no need to reopen the page. Switching language only changes the display; stored values are untouched. - Cleanup: hard cap of 120 live sticks, oldest removed past that; anything below y = -200 is destroyed.
Notes / known limits
- Only active inside a real level; no accidental throws in the main menu, shop or results screen.
- Local only: sticks exist on your screen only, teammates cannot see them. This is a personal marker tool, not a synced prop.