Skip to content

Commit

Permalink
Merge pull request #7 from pyralix/Dev
Browse files Browse the repository at this point in the history
Minor bug fixes for the booster functionality and the balls
  • Loading branch information
pyralix authored Dec 5, 2021
2 parents 93c1a61 + 22cd07e commit e6efcbb
Show file tree
Hide file tree
Showing 21 changed files with 166 additions and 33 deletions.
10 changes: 5 additions & 5 deletions Pyralix/Skee-Ball/Ball.prefab
Original file line number Diff line number Diff line change
Expand Up @@ -142,8 +142,8 @@ MonoBehaviour:
pickupDropEventBroadcastType: 0
PickupEventName:
DropEventName:
ThrowVelocityBoostMinSpeed: 1.5
ThrowVelocityBoostScale: 1.5
ThrowVelocityBoostMinSpeed: 1.6
ThrowVelocityBoostScale: 1.6
currentlyHeldBy: {fileID: 0}
pickupable: 1
proximity: 2
Expand Down Expand Up @@ -180,7 +180,7 @@ MonoBehaviour:
AllowCollisionOwnershipTransfer: 0
Reliable: 0
_syncMethod: 1
serializedProgramAsset: {fileID: 11400000, guid: 3750533012f010b469f862fb8b040405,
serializedProgramAsset: {fileID: 11400000, guid: 9da316e25065fa741b6d9b52622ca25e,
type: 2}
programSource: {fileID: 11400000, guid: f54509b4f8664c14a8801b7b9d1e11fe, type: 2}
serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgIAAAAAAAAAAi8CAAAAAWMAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAVQBuAGkAdAB5AEUAbgBnAGkAbgBlAC4AQQB1AGQAaQBvAFMAbwB1AHIAYwBlACwAIABVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBBAHUAZABpAG8ATQBvAGQAdQBsAGUAXQBdACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgACAAAABgIAAAAAAAAAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4AUwB0AHIAaQBuAGcALAAgAG0AcwBjAG8AcgBsAGkAYgAnAQoAAABTAHkAbQBiAG8AbABOAGEAbQBlAAEWAAAAQgBhAGwAbABSAG8AbABsAGkAbgBnAFMAbwB1AG4AZABTAG8AdQByAGMAZQAnAQQAAAB0AHkAcABlAAEwAAAAVQBuAGkAdAB5AEUAbgBnAGkAbgBlAC4AQQB1AGQAaQBvAFMAbwB1AHIAYwBlACwAIABVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBBAHUAZABpAG8ATQBvAGQAdQBsAGUACwEFAAAAVgBhAGwAdQBlAAAAAAAHBQIwAgAAAAMAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAARgAAABCAGEAbABsAEMAbwBsAGwAaQBzAGkAbwBuAFMAbwB1AG4AZABTAG8AdQByAGMAZQAnAQQAAAB0AHkAcABlAAEwAAAAVQBuAGkAdAB5AEUAbgBnAGkAbgBlAC4AQQB1AGQAaQBvAFMAbwB1AHIAYwBlACwAIABVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBBAHUAZABpAG8ATQBvAGQAdQBsAGUACwEFAAAAVgBhAGwAdQBlAAEAAAAHBQcFBwU=
Expand All @@ -204,7 +204,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!4 &2691605245080297561
Transform:
m_ObjectHideFlags: 0
Expand Down Expand Up @@ -331,7 +331,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!4 &2691605246364500467
Transform:
m_ObjectHideFlags: 0
Expand Down
21 changes: 21 additions & 0 deletions Pyralix/Skee-Ball/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2021 pyralix

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
7 changes: 7 additions & 0 deletions Pyralix/Skee-Ball/LICENSE.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

38 changes: 38 additions & 0 deletions Pyralix/Skee-Ball/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# VRC Skee-Ball

<p align="center"><i>Many thanks to Theycallhimcake, Burnadette, and Coffepot for the inspiration to create in VRChat, to Varneon for their expertise refactoring and optimizing, and to the udon-questions channel for helping me fumble through learning Unity.</i></p>

![Header](https://raw.githubusercontent.com/pyralix/VRC-Skee-Ball/main/.github/images/skeeball.PNG)


This is the first prefab that I've made for VRChat, and I hope you find it as enjoyable to use and edit to your liking as I did creating it. It was largely a vehicle for learning Unity, Udon, and the VRC Networking functionalities. I appreciate positive and negative feedback alike and plan to improve it based on the feedback I receive!

This prefab is using object sync and manual udon sync exclusively in order to be as network efficient as I can make it with my current understanding.

Generally, you use the game like this:
1. Press start and the game lights turn on.
2. After 9 balls the game ends and the lights turn off.
3. If you have the highest score your name and score will be saved.
4. If you need help, turn the booster on and your ball will get a push at the end.
5. Use the reset button to return the machine to its starting state.
6. If in VR, try standing a bit further away from the machine (or go nuts and run up the ramp like you did irl that one time XD)

You can find me at Pyralix#3552 on Discord and of course on VRChat!

# Installation

Requirements:

1. Latest VRChat SDK3
2. Latest [UdonSharp](https://github.com/MerlinVR/UdonSharp)

# How to use:

1. [Download the latest unitypackage](https://github.com/pyralix/VRC-Skee-Ball/releases/download/v1.3/Skee-ball.v1.3.unitypackage).
2. Import Skee-ball v1.3.unitypackage into your project that already has the SDK and UdonSharp loaded.
3. Drag prefab in the Skee-Ball v#.# folder into your world or open the example scene.
4. Consider disabling the audio sources on the balls if you have more than 1 machine as they use up many audio slots due to being not well optimized yet.

# Crediting

I want to convert my time into enjoyment for others! To enrich the VR experience of others is my goal, so I'm providing my prefabs for free. I hope that you'll decide to leave my name on the prefab as a small way to provide credits. But hey, once you have it it's all yours to edit to your heart's content! If you'd like to support me you can at https://pyralix.booth.pm/
7 changes: 7 additions & 0 deletions Pyralix/Skee-Ball/README.md.meta

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

86 changes: 73 additions & 13 deletions Pyralix/Skee-Ball/Skee-Ball.prefab

Large diffs are not rendered by default.

File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: Ball
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 3750533012f010b469f862fb8b040405,
serializedUdonProgramAsset: {fileID: 11400000, guid: 9da316e25065fa741b6d9b52622ca25e,
type: 2}
udonAssembly:
assemblyError:
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/Buttons/BoosterButton.asset
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: BoosterButton
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 68c9d9b09553df3479534bbf21c292fa,
serializedUdonProgramAsset: {fileID: 11400000, guid: 0aff61923fffdac43af9c1874d70bd78,
type: 2}
udonAssembly:
assemblyError:
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/Buttons/ResetButton.asset
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: ResetButton
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 0bee6c13c5d64e64c942a66fd565b995,
serializedUdonProgramAsset: {fileID: 11400000, guid: 3d07e664819b4b440bfc2f62d5ebe60b,
type: 2}
udonAssembly:
assemblyError:
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/Buttons/StartResetButton.asset
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: StartResetButton
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: e36d98772a8d8a641bf870afe244503d,
serializedUdonProgramAsset: {fileID: 11400000, guid: d03f0e5ca39e50d4e9be524945a2f862,
type: 2}
udonAssembly:
assemblyError:
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/Misc/AddForce.asset
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: AddForce
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: f7feaa65bbabe0b448698ef9a4c6bcda,
serializedUdonProgramAsset: {fileID: 11400000, guid: 2cbf16f13601f0946b38598000af5da9,
type: 2}
udonAssembly:
assemblyError:
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/Misc/AddForce.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ private void OnTriggerEnter(Collider obj)
{
if (Utilities.IsValid(obj) && obj != null && obj.GetComponent<Ball>())
{
obj.gameObject.GetComponent<Rigidbody>().AddForce(Vector3.left * 450f);
obj.gameObject.GetComponent<Rigidbody>().AddForce(obj.gameObject.GetComponent<Rigidbody>().velocity.normalized * Time.deltaTime * 10000f);
}
}
}
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/Misc/BallBlockerReset.asset
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: BallBlockerReset
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 32cc902053429d740965a7cb75f65b51,
serializedUdonProgramAsset: {fileID: 11400000, guid: 408bf01940774de499db7bf4d125028c,
type: 2}
udonAssembly:
assemblyError:
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/Scoring/ScoreTrigger.asset
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: ScoreTrigger
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 8f41b7f1cd77afd4d9e73add4e5a5225,
serializedUdonProgramAsset: {fileID: 11400000, guid: 9b608baf9b8655444ad4a415b4c1487e,
type: 2}
udonAssembly:
assemblyError:
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/Udon/SkeeballMain.asset
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3}
m_Name: SkeeballMain
m_EditorClassIdentifier:
serializedUdonProgramAsset: {fileID: 11400000, guid: 3d5c90438293c2642b216d234c4349f6,
serializedUdonProgramAsset: {fileID: 11400000, guid: 05b6f866d473b6444b9fb45c3d3385dd,
type: 2}
udonAssembly:
assemblyError:
Expand Down
2 changes: 1 addition & 1 deletion Pyralix/Skee-Ball/version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v1.4.0
v1.4.1
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

This is the first prefab that I've made for VRChat, and I hope you find it as enjoyable to use and edit to your liking as I did creating it. It was largely a vehicle for learning Unity, Udon, and the VRC Networking functionalities. I appreciate positive and negative feedback alike and plan to improve it based on the feedback I receive!

This prefab is using object sync and manual udon sync exclusively in order to be as network efficient as I can make it with my current understanding.
This prefab is using object sync and manual udon sync exclusively in order to be as network efficient as I can make it with my current understanding.

Generally, you use the game like this:
1. Press start and the game lights turn on.
Expand All @@ -28,10 +28,10 @@ Requirements:

# How to use:

1. [Download the latest unitypackage](https://github.com/pyralix/VRC-Skee-Ball/releases/download/v1.3/Skee-ball.v1.3.unitypackage).
2. Import Skee-ball v1.3.unitypackage into your project that already has the SDK and UdonSharp loaded.
3. Drag prefab in the Skee-Ball v#.# folder into your world or open the example scene.
4. Consider disabling the audio sources on the balls if you have more than 1 machine as they use up many audio slots due to being not well optimized yet.
1. [Download the latest unitypackage](https://github.com/pyralix/VRC-Skee-Ball/releases/download/v1.3/Skee-ball.v1.4.1.unitypackage).
2. Import Skee-ball v#.#.unitypackage into your project that already has the SDK and UdonSharp loaded. Be sure to completely remove any old versions if you're upgrading.
3. Drag prefab in the Pyralix/Skee-Ball folder into your world or open the example scene.
4. Enable the audio sources on the balls if you don't have many machines or a lot of other audio sources, they use up many audio slots due to being not well optimized yet and may brick your world's audio.

# Crediting

Expand Down

0 comments on commit e6efcbb

Please sign in to comment.