Hi Darrell, I deleted your original message with team selection question, so replying in this one. >Question 2: > >I’m having trouble with the “picking team” logic in my netrek client. > >The server sends an SP_MASK packet: >struct mask_spacket { /* SP_MASK py-struct "!bbxx" #19 */ > char type; > char mask; > char pad1; > char pad2; >}; >Here’s what the currently online servers send: >continuum.us.netrek.org <http://continuum.us.netrek.org/> sends mask = 15 >(fed + rom + kli + ori) >netrek.beesenterprises.com <http://netrek.beesenterprises.com/> sends >mask = 3 (fed + rom) >pickled.netrek.org <http://pickled.netrek.org/> sends mask = 2 (rom) > So this one is pretty simple, each server sends current allowed teams as bitmap. I can also confirm that I get same values (that's what I have as allowed teams in selection tiles) >Then the client sends a CP_OUTFIT packet: >struct outfit_cpacket { /* CP_OUTFIT py-struct "!bbbx" #9 */ > char type; > char team; > char ship; > char pad1; >}; >It looks like the “Team” has to be an integer between 0 and 3 inclusive: >netrek-server-vanilla/ntserv/getentry.c: > if (teamPick < 0 || teamPick > 3) { > new_warning(UNDEF,"Get real!"); > sendPickokPacket(0); > teamPick= -1; > continue; > } > So after reading netrekxpmod sources I can see that team selection is based on teams numerical order: 0 - FED 1 - ROM 2 - KLI 3 - ORI You send CP_OUTFIT that contains your desired team and ship type. In response you should expect SP_PICKOK packet with either 1 (approved) or 0 (rejected) >On beesenterprises.com <http://beesenterprises.com/>, when I send team = 0 >I end up rom. Anything else I am rejected. >On pickled.netrek.org <http://pickled.netrek.org/> when I send team = 0 I >end up rom. Anything else I am rejected. >On continuum.us.netrek.org <http://continuum.us.netrek.org/>, when I send >team = 0, I end up rom. Anything else I am rejected. > So here you'll have to expand on what do you mean by "I end up rom or get rejected". If you send 0 as team you're supposed to become federation player, not romulan Also I would suggest running your own vanilla server which will allow you enabling debugging and actually seeing what's wrong. That's the way I used to code the client >Is there a way to select teams? What does the team = 0 or 1 or 2 or 3 >mean in the CP_OUTFIT packet? > >I have a pulldown menu with the “preferred team”, but it doesn’t work the >way a player would expect. > >Darrell Hope this helps Stas On Fri, 29 Mar 2019, Darrell Root wrote: > Date: Fri, 29 Mar 2019 17:33:51 -0700 > From: Darrell Root <darrellroot at mac.com> > Reply-To: Netrek Development Mailing List <netrek-dev at us.netrek.org> > To: Netrek Development Mailing List <netrek-dev at us.netrek.org> > Subject: [netrek-dev] Mac Swift Netrek client v0.5 now available > > netrek-dev folks, > > I’m a week late, but my Mac Swift Netrek Client v0.5 is now available on https://networkmom.net/netrek/ <https://networkmom.net/netrek/> > Direct binary link: https://networkmom.net/download/netrek-v0.5.app.zip <https://networkmom.net/download/netrek-v0.5.app.zip> > This binary is scanned/notarized by Apple and my developer ID. > > Updates too numerous to list. > > My thanks to Andrew Sillers for his CP_Updates suggestion. Idle users don’t get Ghostbusted on continuum.us.netrek.org <http://continuum.us.netrek.org/> any more. > > I’m still stumped by team selection per my earlier email, and would appreciate any suggestions (preferably without implementing the “generic” packet type 32). > > I have support for “basic tips” (in green) and “advanced tips” (in red) which cycle every 5 seconds when not playing (and can be turned off in preferences). I’m happy to accept pointers to any “list of advanced tips” to further populate it. > > Bug reports appreciated, but to avoid too much spam consider sending them only to me if they are not of general interest. > > Darrell > darrellroot AT mac.com <http://mac.com/> > >