Visitar URL original
Start raids from their gate and draw the raid team panel and board by erwan-joly · Pull Request #3194 · NosCoreIO/NosCore · GitHub
Skip to content

Start raids from their gate and draw the raid team panel and board - #3194

Open
erwan-joly wants to merge 1 commit into
masterfrom
claude/project-thread-hp9y3w-raid-window
Open

erwan-joly wants to merge 1 commit into
masterfrom
claude/project-thread-hp9y3w-raid-window

Conversation

@erwan-joly

Copy link
Copy Markdown
Collaborator

Requested by Erwan · project thread

Follow-up to #3166. Fixes #2779.

Starting a raid from the client

The client never sends mkraid by itself (the word is not in the executable), so #3166 could only be started by a headless leader. A raid now starts from its gate, as the client's own texts describe:

  • Every raid row of ScriptedInstance that has a script puts a raid portal (gp type 8) on its map. Mother Cuby's is at the top of Jelly Entrance (2510, 20,5). Rows without a script show nothing.
  • Stepping on it (preq) answers:
    • no raid team: "A team must first be created for the raid." (881)
    • a team opened for another raid: "The raid does not match the seal." (883)
    • a member who is not the leader: "Team leader must lead the raid." (882)
    • the leader: qnai "Do you want to create the raid map?" (884), whose Confirm sends mkraid.
  • mkraid is refused unless the leader is standing on the raid's gate.

Raid team panel and raid board (NosCore.Packets 38.1.0)

  • rdlst is sent to every member when the team opens, someone joins, leaves or is kicked, and when a member falls, so the client's "Raid team" panel lists the members (leader first) with their falls.
  • rl answers the raid board: rl 0 shows the listed teams (and whether the asker leads a listed team, leads an unlisted one or is a member), rl 1 lists the team, rl 2 unlists it ("Removed from the raid list.", or "Only the leader who registered the raid can delete it."), rl 3 <leader> joins a listed team without an invitation. A started or dissolved team leaves the board.

Testing

  • RaidServiceTests: 11 new tests for the panel (members, falls), the board (listed, unlisted, join from it, refused when unlisted, gone once started) and the gate (question to the leader, refusals for members and players without a team, no start away from the gate). Full dotnet test run before pushing.
  • Client run with Tester in the client and four headless characters on Jelly Entrance, screenshots below: the gate at the top of the path, "A team must first be created" without a team, the "Raid team" panel growing to 05/15 as members join, the question on the gate, Confirm starting the raid with the 40 minute clock, and a fall counted in the panel.
  • The raid board: no menu that opens it was found in this client (it opens on the server's rl), so it was checked on the wire with two headless characters: rl 1 → rl 1 0.30.49.Buddy.40.-1.1.1.1.0, rl 3 Buddy joins and both get the new rdlst, rl 2 → rl 2 plus msgi 1648, and the board comes back empty.

Manual test plan: the Raids section now starts the raid from the gate and has checks for the gate, the panel and the board; the "raid party window" entry is gone from "Not verifiable yet".



Generated by Claude Code

The client never sends mkraid on its own, so a raid now starts from its gate:
each raid row with a script puts a raid portal on its map, and the team
leader stepping on it is asked whether to create the raid map, the answer
sending mkraid. A player without a team, a member who is not the leader or a
team for another raid is told why instead, and the start is refused away
from the gate.

Every member's Raid team panel (rdlst) is redrawn when the team opens,
grows, shrinks or a member falls, and the raid board (rl) lets the leader
list and unlist the team and anyone join a listed team without an
invitation.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014gSmkWPEaCpLnkJyftjok6
@coderabbitai

coderabbitai Bot commented Nov 14, 2026

Copy link
Copy Markdown

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 49 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used all 2 included reviews currently available.

Learn how review limits work.

Review configuration:

Run configuration

Commits

Reviewing files that changed from the base of the PR and between 8d3e347 and 0f176cc.

Files selected for processing: 11

  • Directory.Packages.props
  • documentation/manual-test-plan.md
  • src/NosCore.GameObject/Services/GroupService/Group.cs
  • src/NosCore.GameObject/Services/MapChangeService/MapChangeService.cs
  • src/NosCore.GameObject/Services/RaidService/IRaidService.cs
  • src/NosCore.GameObject/Services/RaidService/RaidService.cs
  • src/NosCore.GameObject/Services/ScriptedInstanceService/IScriptedInstanceService.cs
  • src/NosCore.GameObject/Services/ScriptedInstanceService/ScriptedInstanceService.cs
  • src/NosCore.PacketHandlers/Movement/PreqPacketHandler.cs
  • src/NosCore.PacketHandlers/Raid/RlPacketHandler.cs
  • test/NosCore.GameObject.Tests/Services/RaidService/RaidServiceTests.cs
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@erwan-joly

Copy link
Copy Markdown
Collaborator Author

Client test: starting a raid from its gate

Tester in the client and four headless characters at level 40 on Jelly Entrance, on the raid-window branch.

  1. Jelly Entrance: the Mother Cuby raid gate stands at the top of the path.

01-gate

  1. Tester steps on the gate without a team: A team must first be created for the raid.

02-no-team

  1. After the seal and four invitations, the Raid team panel lists all five members, 05/15, leader first.

03-team-window

  1. The leader steps back on the gate: Do you want to create the raid map?

04-ask

  1. After Confirm, all five are in the raid, with the raid clock and the team list.

05-started

  1. Tester falls: the revive message, and the marker on Tester's line in the Raid team panel changes.

06-fall-counted


Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Raid list board and raid party window are missing

2 participants