Bahro Avatars

Discussions About MOSS (Myst Online Server Software)

Moderators: a'moaca', rarified

Post Reply
gerda
Member
Posts: 10
Joined: Sat Apr 09, 2011 9:21 pm

Bahro Avatars

Post by gerda »

Hello!

I successfully set up an MOSS Server, and compiled the Client. I wanted to try out a few fun things next, so i thought "hey, let's play as a bahro!" :) That did'nt work quite as i planned..
I noticed the "gender" table in the Database, and tried a few variations (Like "Bahro", "bahro", "Bahro1", "bahro1") but none of them worked. May i ask how this is possible?

gerda
a'moaca'
Member
Posts: 163
Joined: Sat Dec 13, 2008 11:22 pm

Re: Bahro Avatars

Post by a'moaca' »

You did it exactly right. Use "Bahro1" (lower-case works too, I believe).

The *client* has special code that makes you Male if your avatar is not in GlobalAvatars. This was added in the MOULa era, presumably to address the issues they had there.

I generated the following code change for a perceived use case of other custom avatars for Marten's documentary film project.

Code: Select all

diff -r 5416f15d37e4 MOULOpenSourceClientPlugin/Plasma20/Sources/Plasma/PubUtilLib/plAvatar/plAvatarMgr.cpp
--- a/MOULOpenSourceClientPlugin/Plasma20/Sources/Plasma/PubUtilLib/plAvatar/plAvatarMgr.cpp	Tue Mar 29 17:08:04 2011 -0500
+++ b/MOULOpenSourceClientPlugin/Plasma20/Sources/Plasma/PubUtilLib/plAvatar/plAvatarMgr.cpp	Mon Apr 11 17:37:53 2011 -0700
@@ -179,11 +179,10 @@
 		const plLocation& custLoc = plKeyFinder::Instance().FindLocation("CustomAvatars", name);
 
 		// Silliness to make the compiler happy with const references.
-		// and don't allow players to use custom avatars
-		const plLocation& loc = (globalLoc.IsValid() ? globalLoc : isPlayer ? maleLoc : custLoc);
+		const plLocation& loc = (globalLoc.IsValid() ? globalLoc : custLoc.IsValid() ? custLoc : maleLoc);
 
 		const char* theName = name;
-		if ( isPlayer && !globalLoc.IsValid() )
+		if ( !custLoc.IsValid() && !globalLoc.IsValid() )
 			theName = "Male";
 
 		if (loc.IsValid())
You may find it easiest to apply the patch by hand because of line endings and tabs.

Please note, you will crash if you try to do much. See, for example, https://foundry.openuru.org/jira/browse/CWE-15. It's actually more fun to play a human. I mean, after the novelty wears off, of course. :)

- a'moaca'
gerda
Member
Posts: 10
Joined: Sat Apr 09, 2011 9:21 pm

Re: Bahro Avatars

Post by gerda »

it worked! thank you so much! :)
you guys are the best :D
User avatar
Marten
Member
Posts: 180
Joined: Fri Dec 26, 2008 1:19 am

Re: Bahro Avatars

Post by Marten »

So there's the patch I'd heard about. :)

Now I have questions, because this is a client patch and I was originally thinking a'm meant a server patch (though as I think back now, I recall she did say 'CWE').

The user MOUL(a) Plasma client is perfectly capable of operating custom avatars, so long as the avatar is configured correctly in the server. If CWE is an open sourcing of the same client, why is it necessary to patch it to operate custom avatars now?

Or is the patch meant only to resolve an edge case where a formerly female avatar is converted to a custom avatar?
The music is reversible, but time is not.
a'moaca'
Member
Posts: 163
Joined: Sat Dec 13, 2008 11:22 pm

Re: Bahro Avatars

Post by a'moaca' »

The "grey hats" presumably do in assembler what this patch does in C++.

Or, they flip the isPlayer bit off. In any case, the MOUL client worked. MOULa won't, without them changing something.
User avatar
Marten
Member
Posts: 180
Joined: Fri Dec 26, 2008 1:19 am

Re: Bahro Avatars

Post by Marten »

a'moaca' wrote:In any case, the MOUL client worked. MOULa won't
That is very interesting. I wasn't aware that Cyan changed much, if anything, in the client between the shutdown of MOUL and the opening of MOULa.
The music is reversible, but time is not.
Post Reply

Return to “MOSS”