Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix for "Cave Revamp" update #91

Closed
wants to merge 15 commits into from
Closed

Fix for "Cave Revamp" update #91

wants to merge 15 commits into from

Conversation

developer9998
Copy link
Contributor

  • Fix object paths for computer locations and scene renderers
  • Added more error notices during initalizing for easier bug fixing
  • Made StartZone not be set right away to prevent computers from not spawning correctly
  • Fix PhotonNetworkController references in BaseGameInterface
  • Other minimal changes when initalizing CustomScreenInfo (Parenting done so you can't see monitors through other maps)

- Fix object paths for computer locations and scene renderers
- Added more error notices during initalizing for easier bug fixing
- Made StartZone not be set right away to prevent computers from not spawning correctly
- Fix PhotonNetworkController references in BaseGameInterface
- Other minimal changes when initalizing CustomScreenInfo (Parenting done so you can't see monitors through other maps)
@developer9998
Copy link
Contributor Author

  • Disable the Reflection Probe built into the computer asset as they're now being used in the base game and they were causing objects near computers to display weirdly due to the Probe's settings

@brodog1000
Copy link

can it release yet?

@developer9998
Copy link
Contributor Author

no

@brodog1000
Copy link

Why?

@ghost
Copy link

ghost commented Jul 30, 2023

Why?

The Person who made computer interface Has to merge it.

This is mainly done to fix the execution time for disabling mods disabled by CI, without these changes on initialized all mods would be visible no matter if they were disabled or not
@developer9998
Copy link
Contributor Author

For those trying to "fix" these mods:

  • These fixes aren't verified, and could cause game breaking issues
  • Please don't spread your "methods" and sketchy files
  • Please don't download any sketchy files which should "fix the mod"

I recommend you to just wait until a verified fix gets released for each mod, including this one.

@developer9998
Copy link
Contributor Author

Phew that's been bugging me for a bit

@ghost
Copy link

ghost commented Aug 29, 2023

Hopefully this gets merged

- Applied zone data for finding the combinedScene object
- Fixed non-treehouse keys not loading due to some of them lacking a material
- Switch back to older model, most people think it's way better anyway
- Switched some references of "IComputerView" to "ComputerView" because I thought it would fix and error but turns out the error was caused by something else but whatever
- Updated position and such for monitor
- Fixed removing monitor for Stump
@developer9998
Copy link
Contributor Author

TODO:

  • Fix installation of the CommandRegistrar as for me atleast a Zenject error would occur

Minor Tweaks:
- Activated commands and cleaned up the CommandRegistrar class
- Updated setting voice chat state and instrument volume
- For commands pressing the Up arrow will return your previous command after execution, based off of the custom computer that was on Quest, feature shown off here: https://youtu.be/DoUaos80V_M?si=nKWxfddkME_9fp66&t=455
- Renamed Computer Display Settings to Computer Settings
- Adjusted Group join info
- Adjusted Item settings info

Major Tweaks:
- Added different monitors
- There are two monitors, one slim "Classic" and another bulky "Modern"
- Monitors can be changed at any time in the Computer Settings tab or using BepInEx configuration
-  Rebuilt AssetBundle for the mod to include both monitors, more optimizations, and fix for shaders since the game uses URP now
@developer9998
Copy link
Contributor Author

For those trying to "fix" these mods:

  • These fixes aren't verified, and could cause game breaking issues
  • Please don't spread your "methods" and sketchy files
  • Please don't download any sketchy files which should "fix the mod"

I recommend you to just wait until a verified fix gets released for each mod, including this one.

@Fall3n5lay3r
Copy link

So is computer interface been fixed?

@ghost
Copy link

ghost commented Sep 12, 2023

So is computer interface been fixed?

Use at your own risk

@Fall3n5lay3r
Copy link

great

@Fall3n5lay3r
Copy link

btw i just tested it and there is still a couple things wrong with it. the normal computer which is normally behind it is not there anymore.when you go on to a mod channel like "monke map loader" it freezes entirely.

@developer9998
Copy link
Contributor Author

The "normal computer" is supposed to go away, I also fixed that. MonkeMapLoader is currently broken, so wait for the mod to be fixed.

@Fall3n5lay3r
Copy link

ok

@Fall3n5lay3r
Copy link

the freezing thing happens on all mod option pages.Is that normal?

@developer9998
Copy link
Contributor Author

freezing? please be more specific

@Fall3n5lay3r
Copy link

i will dm you a vid of what happens
my user is Fall3nVR

@developer9998
Copy link
Contributor Author

  • Improved commands (Outputs, and ComputerViews)


  • Updated monitor location names to better fit their location
  • Made the monitor handling more simple and optimized
  • Updated details view


  • Other minor tweaks

@developer9998
Copy link
Contributor Author

"Mod fixes"

  • Fixed custom views not ready for the update not displaying any text
  • Updated ModList and Mod views to be better organized and provide more information (e.g. instructions, toggleable mods, viiew names)

"Hotfix !!"

  • Fixed issue with mod page where text displaying "This mod doesn't support toggling between Enabled/Disabled states." would be a dark green instead of a dark red, whoops

- Added a warning view to display whenever the game is outdated or the system isn't connected to internet
- Other things, I dunno
@developer9998
Copy link
Contributor Author

Last commit most definitely needs some polish

Comment on lines 91 to 111
if (_material == null)
{
_originalColor = buttonColor;

var baseRenderer = GetComponent<Renderer>();
if (baseRenderer.material == null)
{
_material = new Material(Shader.Find("Legacy Shaders/Diffuse"))
{
color = buttonColor
};
goto PrepareColour;
}
baseRenderer.material.color = buttonColor;
goto PrepareColour;
}

_material.color = buttonColor;
_originalColor = buttonColor;

PrepareColour:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This logic doesn't make sense, why is _originalColor always set to the new color? Also, GOTO considered harmfull, you should almost never use it

Comment on lines +38 to +89
internal interface IWarning
{
String getWarningMessage();
}

public class GeneralWarning : IWarning
{
private String message;

public GeneralWarning(String message)
{
this.message = message;
}

public String getWarningMessage() => message;
}

public class OutdatedWarning : IWarning
{
public String getWarningMessage() => "You aren't on the latest version of Gorilla Tag, please update your game to continue playing with others.";
}

public class NoInternetWarning : IWarning
{
public String getWarningMessage() => "You aren't connected to an internet connection, please connect to a valid connection to continue playing with others.";
}

public class TemporaryBanWarning : IWarning
{
private String reason;
private int hoursRemaining;

public TemporaryBanWarning(String reason, int hoursRemaining)
{
this.reason = reason;
this.hoursRemaining = hoursRemaining;
}

public String getWarningMessage() => $"You have been temporarily banned. You will not be able to play with others until the ban expires.\nReason: {reason}\nHours remaining: {hoursRemaining}";
}

public class PermanentBanWarning : IWarning
{
private String reason;

public PermanentBanWarning(String reason)
{
this.reason = reason;
}

public String getWarningMessage() => $"You have been permanently banned.\nReason: {reason}";
}
Copy link
Collaborator

@Graicc Graicc Oct 6, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doing this makes invalid states unrepresentable. We never have to worry about object[] warnParams having the wrong number of params, or params of the wrong types, and every warning will always have a message associated with it (if there was a new warning type, it would be easy to forget to update the switch to handle it)

@lunakittyyy
Copy link

should we provide the source unity project for the monitor assets somewhere? maybe inside the resources folder alongside the assetbundle? it could make contributions easier in the future if others don't have to rip the resources and potentially break them along the way

@SawyerISnotepic
Copy link

how do i install this?

@ghost
Copy link

ghost commented Jan 11, 2024

Does this fix still work?

@ghost
Copy link

ghost commented Jan 11, 2024

It doesn't load in Forest

@lunakittyyy
Copy link

the zone indexes changed recently so it only works in certain maps, its very easy to fix but it looks like that hasnt been done to this PR yet

@ghost
Copy link

ghost commented Jan 11, 2024

Ah okay

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.

6 participants