Question

Hello!

I have a problem and I have no idea how to solve it.

I want to increase the area where main chat captures conversations.

The way it is here it just picks up conversations from players next to each other, I want them to capture every conversation on the map the player is on, regardless of which position is on the map.

Does anyone have any idea how to do this?

PS: I believe that the modification will be in source, if not I ask that they move to the correct area.

Share this post


Link to post
Share on other sites

9 answers to this question

  • 1

you can set a custom chat_area_size in battle_configuration

you should find it in conf/map/battle/client.conf

 

if you want to allow everyone on the map to talk to everyone from anywhere I would advise you to use the #map channel instead of increasing the chat area size

Share this post


Link to post
Share on other sites
  • 0

Posted (edited)

30 minutes ago, meko said:

you can set a custom chat_area_size in battle_configuration

you should find it in conf/map/battle/client.conf

 

if you want to allow everyone on the map to talk to everyone from anywhere I would advise you to use the #map channel instead of increasing the chat area size

I tried the second one that you say, but something bothered me, it keeps appearing, [#channel] name: <message>, and needed to type #channel in the PM Text Box.

 

Regarding the first thing you said, chat_area_size, could you give an example of what it would look like?

 

Edit: Sorry, I did not see you placed a link xD

Edited by jonathan

Share this post


Link to post
Share on other sites
  • 0

chat_area_size refers to the distance in cells in which you can see the public chat of other players.
It must be equal or lesser than area_size, which specifies how many cells away can you see players.

E.g.
chat_area_size = 9
Player A is at prontera 100 100 -> Can see chat from Player B, not C.
Player B is at prontera 100 109 -> Can see chat from Player A and B.

Player C is at prontera 100 110 -> Can not see chat from Player A, can see Player B.

#channel system is something else.
 

Share this post


Link to post
Share on other sites
  • 0
10 hours ago, Myriad said:

chat_area_size refers to the distance in cells in which you can see the public chat of other players.
It must be equal or lesser than area_size, which specifies how many cells away can you see players.

E.g.
chat_area_size = 9
Player A is at prontera 100 100 -> Can see chat from Player B, not C.
Player B is at prontera 100 109 -> Can see chat from Player A and B.

Player C is at prontera 100 110 -> Can not see chat from Player A, can see Player B.

#channel system is something else.
 

@Myriad That's what I want, I want to cover the whole area of the map, or at least a good part.

As soon as I get home I will be testing everything and ask for the closing of the topic if there is no doubt.

1 hour ago, AnnieRuru said:

if you want player A to type something that player B can hear from any place in the map
its #map channel

https://drive.google.com/file/d/14DhRqCfxY4assgenwnoZ4dIBud8zQlfj/view?usp=sharing

I think its better to leave the normal chat to chat_area_size, it have its own purpose

It's not what I'm looking for, I even have an NPC that players trade items through.

What I want is exactly what @Myriad said above.

 

Share this post


Link to post
Share on other sites
  • 0
	{
		// send message to others
		void *buf = aMalloc(8 + outlen);
		WBUFW(buf, 0) = 0x8d;
		WBUFW(buf, 2) = 8 + outlen;
		WBUFL(buf, 4) = sd->bl.id;
		if (is_fakename)
			safesnprintf(WBUFP(buf, 8), outlen, "%s : %s", sd->fakename, message);
		else
			safestrncpy(WBUFP(buf, 8), full_message, outlen);
		//FIXME: chat has range of 9 only
		clif->send(buf, WBUFW(buf, 2), &sd->bl, sd->chat_id != 0 ? CHAT_WOS : AREA_CHAT_WOC);
		aFree(buf);
	}

change the clif->send line .... the trigger range from AREA_CHAT_WOC into ALL_SAMEMAP I guess ?

Share this post


Link to post
Share on other sites
  • 0

Posted (edited)

On 07/06/2018 at 0:39 PM, AnnieRuru said:
	{
		// send message to others
		void *buf = aMalloc(8 + outlen);
		WBUFW(buf, 0) = 0x8d;
		WBUFW(buf, 2) = 8 + outlen;
		WBUFL(buf, 4) = sd->bl.id;
		if (is_fakename)
			safesnprintf(WBUFP(buf, 8), outlen, "%s : %s", sd->fakename, message);
		else
			safestrncpy(WBUFP(buf, 8), full_message, outlen);
		//FIXME: chat has range of 9 only
		clif->send(buf, WBUFW(buf, 2), &sd->bl, sd->chat_id != 0 ? CHAT_WOS : AREA_CHAT_WOC);
		aFree(buf);
	}

change the clif->send line .... the trigger range from AREA_CHAT_WOC into ALL_SAMEMAP I guess ?

The message is going the way I want however it is being duplicated in the Chat of whoever sends it, would you know how to withdraw?

Edit: It would basically hide the first message that appears in the Chat and leave the Global visible, and show above the character head.

PS: Sorry for the delay in answering.

Edited by jonathan

Share this post


Link to post
Share on other sites
  • 0

Posted (edited)

then do like meko said just change chat_area_size ? I changed to 999

testing see what's the consequences ...
1. this one will also affect unittalk and npctalk ... etc
2. pet said something during its max intimacy, will also spam the whole map
3. defpattern will trigger whole map ...

so only *unittalk affected, 2 and 3 doesn't

Edited by AnnieRuru

Share this post


Link to post
Share on other sites
  • 0
29 minutes ago, AnnieRuru said:

then do like meko said just change chat_area_size ? I changed to 999

testing see what's the consequences ...
1. this one will also affect unittalk and npctalk ... etc
2. pet said something during its max intimacy, will also spam the whole map
3. defpattern will trigger whole map ...

so only *unittalk affected, 2 and 3 doesn't

So I tested everything, I left as @meko had quoted above. I complied and left the server ON. I felt a bit of LAG but I believe it was from VPS.

 

After I tested what you say about ALL_SAMEMAP I also tested, hence came the doubt whether it was possible to do what I quoted above.

 

Thanks to all who have given a help, I believe they can close, Resolved.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now