Jump to content

Recommended Posts

Posted

This is probably a bit odd of me to ask, but how would I change the display name of a player after the login to single player has completed? I try posting the NameFormat event to the EVENT_BUS but it always returns false. It doesn't post... Is there a proper way to do that? Any help is much appreciated because i've been researching and testing this for months.

Posted

This is probably a bit odd of me to ask, but how would I change the display name of a player after the login to single player has completed? I try posting the NameFormat event to the EVENT_BUS but it always returns false. It doesn't post... Is there a proper way to do that? Any help is much appreciated because i've been researching and testing this for months.

Posted

public void onNameFormat(NameFormat event)
{
	event.setDisplayname("something");
}

Call this to re-cache name. (It will call event for name).

EntityPlayer#refreshDisplayName()

  Quote

1.7.10 is no longer supported by forge, you are on your own.

Posted

public void onNameFormat(NameFormat event)
{
	event.setDisplayname("something");
}

Call this to re-cache name. (It will call event for name).

EntityPlayer#refreshDisplayName()

  Quote

1.7.10 is no longer supported by forge, you are on your own.

Posted

1. Wtf with your registering? Use MinecraftForge.EVENT_BUS only.

2. Is event called?

3. Does it reach you logging message?

4. Since you want client only mod (it seems) - use clientSideOnly = true in @Mod.

5. @SideOnly doesn't need to be everywhere when yo uare making Client side mod (read point 4). Also - you can apply it to classes, so no need to mark all methods in class.

6. I'd move registering events to preInit (i think it has no effect, I don't remember).

7. PlayerLoggedInEvent is server ONLY (server thread) event, it won't be called when e.g loggin onto dedicated server (but it will be called on SP - integrated one).

  Quote

1.7.10 is no longer supported by forge, you are on your own.

Posted

1. Wtf with your registering? Use MinecraftForge.EVENT_BUS only.

2. Is event called?

3. Does it reach you logging message?

4. Since you want client only mod (it seems) - use clientSideOnly = true in @Mod.

5. @SideOnly doesn't need to be everywhere when yo uare making Client side mod (read point 4). Also - you can apply it to classes, so no need to mark all methods in class.

6. I'd move registering events to preInit (i think it has no effect, I don't remember).

7. PlayerLoggedInEvent is server ONLY (server thread) event, it won't be called when e.g loggin onto dedicated server (but it will be called on SP - integrated one).

  Quote

1.7.10 is no longer supported by forge, you are on your own.

Posted

1. idk... just idk.. old tuts

2. player#refreshDisplayName is being called.. thats why I added the check for null passed parentscreens to prevent crashing

3. Yes, it logs that it changed the username yet nothing happens

4. Fixed

5. Fixed

 

I was just playing with different things to the playerloggedinevent isn't being used but thanx

 

Hopefully this info helps. Here is the log:

 

  Reveal hidden contents

 

Posted

1. idk... just idk.. old tuts

2. player#refreshDisplayName is being called.. thats why I added the check for null passed parentscreens to prevent crashing

3. Yes, it logs that it changed the username yet nothing happens

4. Fixed

5. Fixed

 

I was just playing with different things to the playerloggedinevent isn't being used but thanx

 

Hopefully this info helps. Here is the log:

 

  Reveal hidden contents

 

Posted

Going through all classes:

 

1. public static CommonProxy proxy;

Is not needed when mod is one-sided.

 

2. PlayerEvent.PlayerLoggedInEvent

Is server ONLY and should NOT be used in client only mods.

Doing so will result in:

* Firing on SP (intergrated server/lan)

* NOT firing on MP (dedicated server/lan)

 

General rule is to write either common or sided mods/code - never do both (in different words: mods should be universal, for client mods - acting same on both SP and MP, unless ofc - there is some special design in play).

 

3. Now big question:

* You say that prints (logs) are reached and they print expected name (I assume).

* Then you say it doesn't work.

 

Question is - HOW do you know it doesn't work?

 

My guess it does and you are checking it by typing in chat - which, spoiler alert - will not work as you would want it to.

 

When chat message is written in chat (client) and then sent - server receives it and converts it to "[playerWhoSentIt] + chatMessageReceived" which is then (in this format) sent to all other clients.

 

Logically - if you change the name on CLIENT only, the server one stays intact resulting in "playerWhoSentIt" being non-changed server one.

 

What you are doing there (event you do) only sets display name of client players, which gives you proper return when asking directly using that method. So for example - it will be correct when rendering name tag (should be). But anything that goes through server will most likely not.

 

As to how to deal with chat messages - use chat events to replace string with your own - ClientChatReceivedEvent.

  Quote

1.7.10 is no longer supported by forge, you are on your own.

Posted

Oh yeah.. those i've been using because I started with a template for my other universal mod. As for the loggedInEvent.. yeah i'm going to remove that. It's just there...

 

yes it was logging that it changed but when I'd try putting in chat messages it wouldn't change that part. At one time I thought it was but maybe I was dreaming... That makes sense though. I will have to use the chat listeners then.

Posted

Well, this is purely Java question and Regex is something I didn't use in a long time, so wait for sm1 else to show up (you probably messed up matcher/pattern).

 

Point of interest (this is totally random/unnecessary response):

 

  Reveal hidden contents

 

  Quote

1.7.10 is no longer supported by forge, you are on your own.

Posted

1. Read the javadoc for Matcher#find:

Attempts to find the next subsequence of the input sequence that matches the pattern. 

This method starts at the beginning of this matcher's region, or, if a previous invocation of the method was successful and the matcher has not since been reset, at the first character not matched by the previous match. 

If the match succeeds then more information can be obtained via the start, end, and group methods. 

So it gives next match, and since it does not have two match, the second find gives false.

2. Instead of Matcher#group(int), Matcher#group() will be fine.

3. It's better to store the pattern in a field. (It is common use of a Pattern)

EDIT) 4. Prefix/Suffix of the regex /.../g is generally not needed.

I. Stellarium for Minecraft: Configurable Universe for Minecraft! (WIP)

II. Stellar Sky, Better Star Rendering&Sky Utility mod, had separated from Stellarium.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Verified users can now unlock a $100 OFF Temu Coupon Code using the verified promo code [ALF401700]. This Temu $100 OFF code works for both new and existing customers and can be used to redeem up to 50% off your next order. Our exclusive Temu coupon code [ALF401700] delivers a flat $100 OFF on top of existing deals. First-time customers using code ALF401700 can save an extra 100% off select items. Returning users also qualify for an automatic $100 OFF discount just by applying this code at checkout. But wait—there’s more. With our Temu coupon codes for 2025, users can score up to 90% OFF on clearance items. Whether you’re shopping in the USA, Canada, UK, or elsewhere, Temu promo code ALF401700 unlocks extra discounts tailored to your account. Some users are saving 100% on items using this 2025 Temu promo code. 🔥 Temu Coupon Highlights Using Code [ALF401700]: Temu new user code – ALF401700: Save 50% off your first order + $100 OFF. Temu promo for existing customers – ALF401700: Enjoy flat $100 OFF instantly. Global availability: Works in the USA, UK, Canada, Germany, France, Japan, Chile, Colombia, Malaysia, Mexico, South Korea, Philippines, Saudi Arabia, Qatar, Pakistan, and more. Top 2025 Coupon Deal: Get $200 OFF plus 100% bonus discounts using code ALF401700. Top-Ranked Temu Deals for 2025 (Coupon Code: ALF401700): ✅ Temu $100 OFF Memorial Day Sale — Use ALF401700 ✅ Temu First Order Coupon — Use ALF401700 for 50% + $100 OFF ✅ Temu USA Coupon Code — Save $100 instantly with ALF401700 ✅ Temu Japan, Germany, Chile Codes — All support ALF401700 ✅ Temu Reddit Discount – $100 OFF: Valid for both new and old users ✅ Temu Coupon Bundle 2025 — $100 OFF + up to 50% slash ✅ 100% OFF Free Gift Code — Use ALF401700, no invite needed ✅ Temu Sign-Up Bonus Promo — Get a welcome $100 OFF instantly ✅ Free Temu Code for New Users — Use ALF401700, no referral required  Temu Clearance Codes 2025 — Use ALF401700 for 85–100% discounts Why ALF401700 is the Best Temu Code in 2025 Using Temu code ALF401700 is your ticket to massive savings, free shipping, first-order discounts, and stackable coupon bundles. Whether you're browsing electronics, fashion, home goods, or beauty products, this verified Temu discount code offers real savings—up to 90% OFF + $100 OFF on qualified orders. 💡 Pro Tip: Apply ALF401700 during checkout in the Temu app or website to activate your instant $100 discount, even if you’re not a new user. Temu $100 OFF Code by Country (All Use ALF401700): 🇺🇸 Temu USA – ALF401700 🇯🇵 Temu Japan – ALF401700 🇲🇽 Temu Mexico – ALF401700 🇨🇱 Temu Chile – ALF401700 🇨🇴 Temu Colombia – ALF401700 🇲🇾 Temu Malaysia – ALF401700 🇵🇭 Temu Philippines – ALF401700 🇰🇷 Temu Korea – ALF401700 🇵🇰 Temu Pakistan – ALF401700 🇫🇮 Temu Finland – ALF401700 🇸🇦 Temu Saudi Arabia – ALF401700 🇶🇦 Temu Qatar – ALF401700 🇫🇷 Temu France – ALF401700 🇩🇪 Temu Germany – ALF401700 🇮🇱 Temu Israel – ALF401700 Temu Coupon Code [ALF401700] Summary for SEO: Temu $100 OFF Code  Temu First Order Discount Code 2025  Temu Verified Promo Code ALF401700  Temu 50% OFF + $100 Bonus  Temu 100% OFF Code 2025  Temu App Promo ALF401700  Temu Working Discount Code 2025 
    • Hey there, nothing to do with the code, I am just suggesting you use Intelij IDEA. Trust me, it is the best.
    • Hey there, nothing to do with the code, I am just suggesting you use Intelij IDEA. Trust me, it is the best.
    • You can check the config of Geckolib and Mowzie's Mobs - maybe there is a way to disable some render features
    • You can use the .requires() function  the server also has a permission level of 4, which is the highest permission level.
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.