Giter Club home page Giter Club logo

vivecraft_117's Introduction

Vivecraft for Minecraft 1.17

This readme is intended for developers. For downloads and gameplay instructions please see the official website

Localization

Vivecraft supports localization of its plethora of options and other strings. If you are multilingual and would like to help the project out, you can translate Vivecraft into your language of choice over on Transifex. If your target language is not on the list, you can put in a request for it to be added. Note that we can only support languages that Minecraft itself supports, which you can find a list of on the Minecraft wiki.

When translating tooltips (these are indicated by having .tooltip at the end of the translation key) bear in mind that the tooltip box in-game has a fixed size and a limit of 8 lines, so if you write too much text it may be truncated. It can be difficult to judge where the limit is though since it depends on character width, so just guess and don't worry about it too much. There's a lot of extra space in most tooltips so it will likely be fine. Also, for tooltips that have a listing of what the option values do, the values on the left side of the colon should match what will appear on the button.

Some option names may appear to be vague and missing context. This is because context is provided by the category they are in. The names of these categories are found under the vivecraft.options.screen keys.

If you see a § in the text, that and the character immediately after it make a format code. Minecraft uses these to color or stylize text, you can read about them on the Minecraft wiki to understand the intent. Feel free to insert format codes to stylize text as you see fit.

If you're not sure about a particular translation, feel free to join our Discord server and ask about it.

Using this Repository (Note this is a little outdated for 1.17, some directory names have changed, will be updated soon)

Vivecraft uses patches to avoid distributing Minecraft code. The build scripts are in Python 2.X.

  • Fork, checkout or download the repo using your Git method of choice.
  • Install Java JDK 16. The Java JRE will NOT work.
  • Set the JAVA_HOME environment variable to the JDK directory
  • Add %JAVA_HOME%\bin to your PATH environment variable
  • Install Python 2.7.x (NOT 3.x). Be sure to tick the 'add python to your PATH' option during install. Download from python.org
  • Open a command prompt and navigate to the repo directory
  • Run install.bat

The install process (install.py) does a number of things:

  • It downloads MCP (Minecraft coder's pack) and extracts it to the \mcp9xx\ directory.
  • It downloads a ton of dependencies.
  • It merges Optifine into vanilla minecraft jar.
  • It decompiles and deobfuscates the combined minecraft/optifine into \mcp9xx\src.minecraft_orig_nofix\
  • It applies any patches found in \mcppatches\ and copies the result to\mcp9xx\src.minecraft_orig\
  • It applies all the patches found in \patches\ and copies the result to \mcp9xx\src\minecraft.
  • It copies all code files found in \src\ to \mcp9xx\src\minecraft.
  • It copies all files found in \assets\ to \mcp9xx\src\assets. This directory is now the full 'Vivecraft' codebase.

If you use Eclipse you can open the workspace found in \mcp9xx\eclipse. You will have to correct the libraries (except jsr305) and JRE verssion, all of these can be found in the root /lib folder. To run the game from eclipse you also have to attach natives to the lwjgl jar (from lib/natives).

Make all changes to the game in the \mcp9xx\src\minecraft directory.

To update code to Github:

  • run getchanges.bat. This compares mcp9xx\src\minecraft to mcp9xx\src\minecraft_orig. patches are generated for modified files and copied to \patches. Whole new files are copied to \src.
  • Push to Github.

To build an installer:

  • run build.bat. This runs getchanges, build, and then create_install. Basically it takes the new files and patches and creates a jar. And then it uses the code and jsons found in \installer\ to make an installer.exe.

To update changes from github

  • After pulling changes from github run applychanges.bat. This backs up mcp9xx\src\minecraft to mcp9xx\src\minecraft_bak, and starts over by applying all patches in \patches\ to mcp9xx\src\minecraft_orig, and copies the result o mcp9xx\src\minecraft

vivecraft_117's People

Contributors

jrbudda avatar techjar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

vivecraft_117's Issues

Is a 1.18 version in the works?

Sorry if this gets asked a lot, but I am really excited to hear about the progress of the 1.18 mod. Been checking the website daily since it launched.

Broken Contextual Interact, Right Click Delay Broken & Not Present

Blocks that normally support contextual interact no longer seem to. Now it's only entities like item frames & animals.

Also, the option for right click delay is no longer present in controller options, and editing it through the files doesn't seem to work. This sucks because I constantly find myself placing blocks or casting a fishing rod twice on one input.

lag ;(

I'm unsure if this is an issue with my pc, me using oculus quest 2 or Mojang.
whenever I try to load it up I experience a great amount of lag and my screen will try to catch up, in the process shaking a lot.
I am quite unsure if they is anything I can do, am I able to wait it out, or should I for now try an older version?

it shows note pad

when i open the installer it shows me the installer note pad so i cant play vr

Movement is disabled when hands are in a block/flowing water

Vivecraft 1.17.1 Beta - When player hand is in a block, the movement/turning controls stop working. Like when Left hand is sunk into a block - cant move, when right - cannot turn. Have to pull hands back to enable controls. Also happens when being submerged or moved by flowing water. Very gamebreaking. The problem with solid blocks and right hand happen not all the time(or not with any settings - as i tried to change settings and it disappeared for now). But having right hand in flowing water completely disables all right controller except for its position tracking, untill the hand is out of water. Left hand is working without issues in flowing water. Using : Play Mode - Standing, Free-Move Type:Controller, Weapon Collisions:Auto, Roomscale Jumping and Climbing :ON.

Installer not downloading as a program

When i download the file it downloads not as a program but as something you can open with winrar or whatever it means i cant actually launch the program. I tried to change it to anything i could for it to open but it simply doesnt work how do i fix this issue?

Installer doesn't work with Launcher from Xbox Game Pass

I launched Vivecraft for the first time with the Launcher from Xbox Game Pass app on Windows 10. The installer runs, but the profiles never appear in the launcher.

I poked around a bit and after trying to install 1.16 with "Forge" i realized that the launcher profile file being written to by Vivecraft installers is not the one being used by the launcher from Xbox app. The installer targets:

launcher_profiles.json

the launcher targets:
launcher_profiles_microsoft_store.json

I was able to get the integration working by [killing the launcher] and copying
launcher_profiles_microsoft_store.json to launcher_profiles.json, running the installer, then copying launcher_profiles.json back to launcher_profiles_microsoft_store.json

Cannot install on Mac with MultiMC

It is impossible to select the MultiMC "directory" within the installer. On a Mac, MultiMC (and all it's subfolders, instances, etc) are located in the MultiMC.app file. The contents can be viewed via terminal, however navigating within the installer to the directory where the MultiMC.app file is located shows nothing.

Symlinks also do not seem to fix the issue.

Oculus Quest 2 controllers not working

Hi!

Today the Quest 2 controllers got an software update and when trying playing vivecraft eveything works fine as before except that the controllers don't show up in the game. Can't start and play the game.

Is this due to the OQ2 controller update? Anyone experiencing similar issue?

It worked just fine this other day. Running 1.17.x with virtual desktop on OQ2 and Windows with SteamVR.

Thanks for a nice piece of software anyhow.

[FR] option to disable "eat me"-pie ect.

I'd like to disable the spawning of the "eat me"-pie, "drink me"-water and other similar Items (if any) in my inventory.
I was unable to find such an option.

VR Issue

When I Launch Vivecraft It Lags Out My PC Like HELL. Also When Vivecaft Actually Loads Im Stuck In The Dirt Cube And Cannot Move My VR Hands. JrJubudda Could You Fix This Please?

"Reverse Hands" option needs work

This is a follow on to an issue in one of the older vivecraft repos jrbudda/Vivecraft_110#105

Expected Behavior:

  1. The "main hand" tool appears on the same side in both VR and non-VR play
  2. A third-person observer sees the same main-hand side and orientation as the VR player does.
  3. There should be just one setting for the "main hand" leftiness.

Actual Behavior:

  1. In some cases, the "main hand" tool appears on different sides of the body in VR vs. non-VR play. The two play modes should be consistent.
  2. In some cases, the "main hand" tool or pose appearance differs between first-person and third-person views. The hands should appear consistently when viewed by one's self, and by other players.
  3. There are two Options: Skin Customization->Main Hand: [Right, Left] and VR Settings->Controller Settings->Reverse Hands: [OFF, ON]. The main tool hand should be set in just one place.

Test Conditions:

  • Minecraft Java edition 1.18.2
  • Minecraft paper 1.18.2 server using Vivecraft_Spigot_Extension.jar posted on on Vivecraft discord 16 March 2022
  • Clients are using vivecraft-1.18.2-jrbudda-[VR,NONVR]-2-a3-installer.jar posted 27 March 2022
  • First-person player is using original HTC Vive headset and wand controllers
  • Third-person observer is using non-VR vivecraft-1.18.2-jrbudda-NONVR-2-a3-installer.jar client, while the first-person player is in VR.
  • First-person player is using either the VR or non-VR client (see below)

Test Results:

Skin Customization VR Settings 1st person VR 1st person non-VR 3rd person
Main Hand: Right Reverse Hands: OFF vr_first_right ✔️ nonvr_first_right ✔️ third_right_off ✔️
Main Hand: Right Reverse Hands: ON vr_first_right_on nonvr_first_right ✔️ third_right_on
Main Hand: Left Reverse Hands: OFF vr_first_left nonvr_first_left ✔️ third_left_off
Main Hand: Left Reverse Hands: ON vr_first_left_on nonvr_first_left ✔️ third_left_on

What is working correctly:

  • The hotbar is oriented correctly on the side of the off-hand arm in VR (at least after menus have been visited at least once)

What is not working correctly:

  • When Reverse Hands is ON, the off-hand held shield is located between my arm and my body. This is wrong. So the held-item pose is not correct in this case. This problem is apparent in both the first-person and third-person views.
  • When Skin Customization->Main Hand:LEFT is selected, the First and Third person views disagree about which item is held in which hand.
  • Vivecraft should respect the main tool hand specified in the Skin Customization options.

There are interesting changes in the arm textures in the various cases, but I have not yet studied carefully enough to decide if any are incorrect.

Not letting install

Hi I tried to download it and I have java and I opened it with it but it says unable to install java and the commands are invalid any fixes?

Opting to make a separate, more advanced version of Vivecraft that doesn't include Forge or Optifine.

Now, I know, this sounds a bit bizarre, and I don't know a lot about how Vivecraft is structured, but would it be possible to create something like that?
The standard versions would still follow, and this is really only something personal that I would need for the 1.17 version specifically, so you can play around with it a bit. Again, I don't exactly know how dependent Vivecraft is on Forge and the likes, but a version like described could be used for clever testing.

Minecraft crashed: exit code 0

  • Version for 1.16 works flawlessly
  • Oculus Quest 2
  • Windows 10 x64
  • java Runtime 1.8.0_251
    When trying to start 1.17.1 Vivecraft, minecraft crashes with error code 0 (which is pretty weird, because 0 is code for proper exit)
    No crash logs (empty)

Crashing after only a few seconds

Vivecraft 1.16.5 works great, but 1.17.1 only shows the title screen for a few seconds, then it crashes with this crash report:

A fatal error has been detected by the Java Runtime Environment:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ff9e0175b00, pid=23976, tid=30788

JRE version: OpenJDK Runtime Environment Microsoft-22300 (16.0.1+9) (build 16.0.1+9)
Java VM: OpenJDK 64-Bit Server VM Microsoft-22300 (16.0.1+9, mixed mode, tiered, compressed oops, compressed class ptrs, parallel gc, windows-amd64)
Problematic frame:
C [nvoglv64.dll+0xea5b00]

No core dump will be written. Minidumps are not enabled by default on client versions of Windows

I'm using a 10900k, a gtx 1080, and for my headset, a Quest 2. I'm on Windows 11, if that matters. I made sure to update my Game Ready Drivers, and the problem still persists.

On linux, doesn't work

First it couldn't download OptiFine or almost anything else from running the installer. Then, when I ran the profile created in Java edition it took a while before saying to check and make sure that my drivers were up to date. I'm on Linux. Help!

[FR] vivecraft in the multimc launcher?

I'd love to see support for the MultiMC launcher. It's much more lightweight, so it's a good choice for systems that need an extra boost to hit the mark of "VR ready".

Vivecraft 1.17.1 v2 (VR) Crashed on Startup

I downloaded and installed Vivecraft 1.17.1 v2 (VR) on a plain Minecraft 1.17.1.
After several seconds the game crashed. The window didn't show up.
I'm using JDK 17.0.1, Windows 10, and a Oculus Quest 2.
Vivecraft 1.12.2 run perfectly under the same condition. I haven't tried 1.16.X.

Here is the full crash report.

---- Minecraft Crash Report ----
// My bad.

Time: 2021/12/30 下午3:35
Description: Initializing game

java.lang.NoSuchFieldError: ForgeHooksClient_invalidateLog4jThreadCache
at dvp.(Minecraft.java:520)
at net.minecraft.client.main.Main.main(Main.java:194)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:159)
at net.minecraft.launchwrapper.Launch.main(Launch.java:30)

A detailed walkthrough of the error, its code path and all known details is as follows:

-- Head --
Thread: Render thread
Stacktrace:
at dvp.(Minecraft.java:520)

-- Initialization --
Details:
Stacktrace:
at net.minecraft.client.main.Main.main(Main.java:194)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at net.minecraft.launchwrapper.Launch.launch(Launch.java:159)
at net.minecraft.launchwrapper.Launch.main(Launch.java:30)

-- System Details --
Details:
Minecraft Version: 1.17.1
Minecraft Version ID: 1.17.1
Operating System: Windows 10 (amd64) version 10.0
Java Version: 17.0.1, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation
Memory: 3628303960 bytes (3460 MiB) / 3858759680 bytes (3680 MiB) up to 4160749568 bytes (3968 MiB)
CPUs: 16
Processor Vendor: AuthenticAMD
Processor Name: AMD Ryzen 7 4800H with Radeon Graphics
Identifier: AuthenticAMD Family 23 Model 96 Stepping 1
Microarchitecture: unknown
Frequency (GHz): 2.89
Number of physical packages: 1
Number of physical CPUs: 8
Number of logical CPUs: 16
Graphics card #0 name: NVIDIA GeForce GTX 1650 Ti
Graphics card #0 vendor: NVIDIA (0x10de)
Graphics card #0 VRAM (MB): 4095.00
Graphics card #0 deviceId: 0x1f95
Graphics card #0 versionInfo: DriverVersion=27.21.14.5749
Memory slot #0 capacity (MB): 8192.00
Memory slot #0 clockSpeed (GHz): 3.20
Memory slot #0 type: DDR4
Memory slot #1 capacity (MB): 8192.00
Memory slot #1 clockSpeed (GHz): 3.20
Memory slot #1 type: DDR4
Virtual memory max (MB): 29064.60
Virtual memory used (MB): 25333.57
Swap memory total (MB): 13323.29
Swap memory used (MB): 380.16
JVM Flags: 11 total; -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=16M -XX:-UseAdaptiveSizePolicy -XX:-OmitStackTraceInFastThrow -Xmn128m -Xmx3968m -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump
Launched Version: HMCL 3.3.188
Backend library: LWJGL version 3.2.2 build 10
Backend API: NO CONTEXT
Window size:
GL Caps: Using framebuffer using OpenGL 3.2
GL debug messages:
Using VBOs: Yes
Is Modded: Definitely; Client brand changed to 'vivecraft'
Type: Client (map_client.txt)
CPU:
OptiFine Version: OptiFine_1.17.1_HD_U_H2_pre1
OptiFine Build: 20211104-233441
Shaders: null
OpenGlVersion: null
OpenGlRenderer: null
OpenGlVendor: null
CpuCount: 0

I viewed the code and found the exception is probably caused here:

Vivecraft_117/patches/VR/net/minecraft/client/Minecraft.java.patch

  •    Reflector.call(Reflector.ForgeHooksClient_invalidateLog4jThreadCache);
    

I wonder if I've done something wrong or there is a bug.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.